Sunday, October 23, 2011

Adobe XMP and Metadata Working Group (MWG)

I just looked at Adobe XMP's web site again, and saw that there is a Metadata Working Group (MWG) that has been doing some highly relevant stuff over the last few years.

In particular, the MWG has apparently defined a standard for tagging regions in images, with 4 special "types" (Face, Pet, Barcode and (auto-)Focus). The Face type is of course the one that is exactly what I've been hoping for.

Their model for defining a region is to specify the center point, width and height of a rectangle using fractional coordinates (0..1). They specify what a compliant "changer" (i.e., an application that modifies the image) should do to keep from breaking the regions when doing rotate, scale, crop, etc. They require that the original coordinates also be stored with the image. It is also possible to use a point or a circle (by specifying the center point and the radius, where the fractional coordinate uses the smaller of the width or height).

Now that I've come across this spec, I'll have to do some experiments with Adobe Photoshop Elements 9 and see if it is an app that knows how to add such tags (especially when doing face tagging), and if it is aware enough to preserve such tags through various operations. If that works, I'd like to see what other apps can handle this, too.

I believe there is also a way to include additional information within the region, such as a URL to an external resource that represents the person whose face has been tagged (such as a person URL in FamilySearch; or some other identifier, or a list of them).

So the questions I have at the moment are:
  1. What programs or systems support face tagging using XMP MWG Face tags?
    • Photoshop
    • iPhoto
    • Picasa
    • Flickr
    • Facebook
    • GraphicConverter (ok, that's just because I happen to use it, not because it's as important as the others)
  2. How would one include URLs to uniquely identify which person is being tagged (beyond this simple name that appears in the "name" field or the "description" field)? That would make it so that the description doesn't have to keep describing who is in the picture ("James Gray, b. 1800 in Virginia, son of...")
  3. What needs to be done to make it so that person-tagging that happens in one system (like Facebook) can be used to share such tags into the others? The MWG specs also have some very interesting information on hierarchical tagging, which I plan to look into next.
You can see the PDF of the Metadata Working Group specs (starting at page 51) or Google for "XMP" and go from there.

No comments: