{{AvPicFaceXmpTagger_Main_Tagging.png?nolink}} ====== AvPicFaceXmpTagger ====== This program was written because of the new Google Picasa 3.5 face recognition feature. Due to the fact that Picasa 3.5 doesn't store the face recognition data inside JPEG pictures, this program fetches that data and stores it as XMP-MP meta tags inside the JPEG pictures. The Picasa 3.5 face recognition feature stores the face data inside the Picasa database. As a consequence this data is lost when you give away your pics and this data cannot be shared with other users or with other Picasa instances running on different computers. Lukily Picasa stores the face recognition data (persons & faces) in quite simple text files so reading that data is not a big clue. There is already a method available how to store face recognition data inside JPEG pictures. This method uses [[http://en.wikipedia.org/wiki/Extensible_Metadata_Platform|XMP tag system]] created by Adobe with the addition of Microsoft XMP namespace [[http://msdn.microsoft.com/en-us/library/ee719905%28VS.85%29.aspx|Microsoft Photo Region Schema]] and is used by [[http://download.live.com/photogallery|Windows Live Photo Gallery]]. Right at the start this program reads the Picasa text file holding the persons (contacs). Each person has assigned an unique person ID. For every file of for all files in a directory which is added to the list of files or directories the picasa.ini file is searched for face definition. If face definitions are found for a file, they are added as XMP tags. Optionally, the person names are also added as IPTC Keyword tags. The actual tagging of the JPEG files is done using [[http://www.sno.phy.queensu.ca/~phil/exiftool|ExifTool]] - a great and widely accepted/trusted tagging program which is known for its good makernotes handling (to leave them intact). **Feature list for AvPicFaceXmpTagger:** * Read Picasa 3.5 face definitions for a given list of pictures and write them as XMP metadata tags inside the picture files. * Optionally add the person names as XMP keywords, IPTC and XMP-LR (Lightroom) keywords * Uses and includes a hierarchical keyword manager compatible with Lightroom * Optionally add face name path and face name keyword cloud to tags using the hierarchical keyword manager * Several tagging options can be set per file type (file extension) * Supports XMP sidecar files * The tagging work is actually done using exiftool (so MakerNote tags will be preserved) * Show detailed information for a picture file: * Picasa and XMP defined faces * XMP and IPTC keywords * Complete XMP data tree with file export facility * Complete EXIF, IPTC, JPEG tag tree with XML file export facility ===== Forum ===== I've created a forum for discussion about errors, enhancements and general issues for my programs. Please check out the **[[http://www.anvo-it.de/forum|AnVoIt Software Forum]]** ===== System Requirements ===== * Windows: * [[http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D-8EDD-AAB15C5E04F5&displaylang=en|Microsoft .NET 2.0]] * The exiftool executable for tagging the pics is already built in. In case another version should be used you can download the [[http://www.sno.phy.queensu.ca/~phil/exiftool|ExifTool executable here]]. * Linux: (not tested yet FIXME) * MONO * [[http://www.sno.phy.queensu.ca/~phil/exiftool|ExifTool executable]] ===== Installation ===== This program doesn't need any installation. It's just plain .NET executable and can be even run from USB stick or CD/DVD. The Windows registry isn't used in any way. At program start the current directory is searched for the optional file AvPicFaceXmpTagger.ini which holds some program options. This file will be written/updated when the program terminates and if the current directory is writable. __Note about exiftool:__ The program comes with exiftool included in the executable. So you don't need to download exiftool yourself. But when you download and unpack exiftool you'll find an executable named "**exiftool(-k).exe**". You need then to rename this file to "**exiftool.exe**". ===== Command Line Arguments ===== **Usage:** AvPicFaceXmpTagger.exe [-c <inifile>] [-r|-R] [ <file> [<file> ...]] ^Option ^ Description ^ | -c <inifile> | Load the specified options file <inifile> at startup. | | -r | When scanning a directory for pic files, also scan all subdirectories too. | | -R | Don't scan subdirectories. | | <file> | One or more JPEG files. | ===== Program Manual ===== [[avpicfacexmptagger:manual|AvPicFaceXmpTagger User Manual with screenshots]] ===== Links ===== * After my first experiences with Picasa 3.5 and when I decided to find/program a workaround for the missing tagging feature, I found this article [[http://www.google.com/support/forum/p/Picasa/thread?tid=0727103717c22cd7&hl=en|How to Back up Name Tags and copy to an another computer]] in the Picasa Help forum which gave me the inspiration and the motivation to make my program available to the community. * This article [[http://msdn.microsoft.com/en-us/library/ee719905%28VS.85%29.aspx|People Tagging Overview]] at the Microsoft Developer Network site explains and defines XMP-MP (Microsoft Photo 1.2) schema. * Here is a list of [[http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/XMP.html|XMP Tags used by exiftool]] * A free tool provided by Microsoft named [[http://www.microsoft.com/downloadS/details.aspx?FamilyID=a6d6ec6a-e4f2-405e-842d-7c3bcb5b1390&displaylang=en|WICExplorer]] is able to show (not only) the XMP tags in a JPEG file. * The [[http://download.live.com/photogallery|Windows Live Photo Gallery]] which is part of the Microsoft Windows Live Essentials software suite uses and shows the XMP-MP face region tags. ===== Tips and Tricks ===== == ExifTool: some command line invocation examples == |Show value of IPTC:Keywords and XMP:Subject tag|<code>exiftool -s -iptc:keywords -xmp:subject file.jpg</code>| |Delete complete IPTC:Keywords tag|<code>exiftool -iptc:keywords= file.jpg</code>| |Copy all IPTC:Keywords to XMP:Subject|<code>exiftool "-xmp:subject<$iptc:keywords" file.jpg</code>| |Copy all XMP:Subject to IPTC:Keywords|<code>exiftool "-iptc:keywords<$xmp:subject" file.jpg</code>| |Show all XMP tags|<code>exiftool -b -s -xmp file.jpg</code>| |Copy EXIF GPS data to XMP GPS data|exiftool "-xmp:all<gps:all" \\ "-xmp:gpslatitude<gpslatitude" \\ "-xmp:gpslongitude<gpslongitude" \\ "-gpsdatetime" file.jpg| ===== Donations ===== I don't wanna charge for this program. On the other side, creating and maintaining this program took and takes time and donations are welcome. So if you use and like this software you might wanna consider a donation. Until now I've received 2 donations (thanks to the donators). If you wanna donate, 10€/15$ would be quite reasonable, that's about one visit at the movie theatre. Higher donations are welcome though. <html> <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> <input type="hidden" name="cmd" value="_s-xclick"> <input type="hidden" name="hosted_button_id" value="YPRG9D977N3B8"> <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!"> <img alt="" border="0" src="https://www.paypal.com/de_DE/i/scr/pixel.gif" width="1" height="1"> </form> </html> ===== Download ===== ==== Version 1.7 ==== * **Release Date:** 07.04.2010 * **Download:**\\ __Due to a small bug I've uploaded a corrected version. For the first 19 people who downloaded the previous version please download this version again.__\\ {{AvPicFaceXmpTagger_1.7.zip|AvPicFaceXmpTagger GUI Version 1.7}}\\ AvPicFaceXmpTagger Console Version 1.7 (not released yet) * **Note:**\\ I've tried hard to test as much as possible. Please, like always with a new version, test it with non-critical pictures or do a backup. And don't forget to report your experiences in the forum. * **Changes:** * This release contains a huge amount of changes and fixes. Please check out this version carefully and test it with data for which you have a backup. * The internal EXIFTOOL executable has been updated to version 8.16. * The options form now has an additional tab page where you can define various options for different file types. Some new options have been added. * It's now possible to specify if IPTC tags are written as UTF-8 or LATIN1. * It's now possible to specify if the file modification time is updated or not. * It's now possible to specify if XMP data should be created if it doesn't already exist. This applies to embedded XMP data in the picture file and to XMP sidecar files. * It's now possible to specify if existing EXIF GPS tags are to be copied to XMP. * The complete keyword handling has been changed. The program now uses hierarchical keywords represented as a keyword tree. The keywords are read from a keyword file in a way Lightroom and other programs are using it. * The keyword tab showing the hierarchical keyword tree offers editing capabilities. Categories, keywords and synonyms can be created or edited. Keyword files can be loaded, added and saved. * There is a new XMP extension called AnVoItFaceInfo with the elements FaceNames, HierarchicalFaceNames and FaceKeywords. These tags can be used just to get the face dependant values. The dc:subject and the other keyword tags are used for all kind of keywords, this is the reason why these tags have been created. Writing/deleting these tags is optional. * Due to the new hierarchical keyword feature, it's now possible to add the hierarchical face name path to the various keyword tags. Furthermore it's possible to add the face name keyword cloud. The face name keyword cloud consists of the face name path elements when walking up the tree including all direct synonyms for each path element. * It's now possible to specify the default keyword file in the options form. * A bug has been fixed which caused keyword duplicates in tags. * The handling of existing faces in a picture has been corrected. ==== Version 1.6 ==== * **Release Date:** 05.03.2010 * **Download:**\\ {{AvPicFaceXmpTagger_1.6.zip|AvPicFaceXmpTagger GUI Version 1.6}}\\ {{AvPicFaceXmpTaggerCmd_1.6.zip|AvPicFaceXmpTagger Console Version 1.6}} * **Note:**\\ I've tried hard to test as much as possible. Please, like always with a new version, test it with non-critical pictures or do a backup. And don't forget to report your experiences in the forum. * **Changes:** * Added support for XMP sidecar files. If the checkbox "Use XMP sidecar file" is checked, then all XMP tags are written to the XMP sidecar file (that's the basename of the picture file with the extension ".xmp" added) and the original picture file isn't touched at all. In this case all EXIF and IPTC tagging is unavailable. When reading XMP data, the data is taken from the sidecar file, if it exists. Otherwise the XMP data is taken from the picture file itself. * Optimized the tagging process so that exiftool will not be called for a picture file if no tagging is defined for that file. This will improve speed drastically for files without any faces and if no other tagging actions are selected. * Changed the tagging algorithm so it deals better with already defined faces in a picture and in update mode. The old behaviour was to delete all existing faces having the same face name as the to be added faces. The new behaviour now checks the overlapping percentage of two face rectangles having the same face name. There is a new configurable option in the option dialog specifying the percentage limit for two face rectangles. If two face rectangles overlap percentage is higher or equal this limit, then two faces definitions having the same face name are considered equivalent and the existing face definition will be overwritten. If the face names are equal and the overlap percentage is less than this limit, the existing face will remain and the new face will be added. In this case the overlap percentage value is added to the face name in the form " (x%)". In order to have the previous behaviour, set the limit value to 0 (zero) %. * Bug fix: fixed some problems which caused NULL pointer exceptions when showing the file properties for pictures which cannot be displayed by this program. * Enhancement: It's now possible to delete file or directory entries in the file/directory list view that is part of the main window by pressing the <DELETE> key. * New feature: added the possibility to add/delete XMP Lightroom Hierarchical Subject tags. ==== Version 1.5 ==== * **Release Date:** 24.02.2010 * **Download:**\\ {{AvPicFaceXmpTagger_1.5.zip|AvPicFaceXmpTagger GUI Version 1.5}}\\ {{AvPicFaceXmpTaggerCmd_1.5.zip|AvPicFaceXmpTagger Console Version 1.5}} * **Note:**\\ I've tried hard to test as much as possible. Please, like always with a new version, test it with non-critical pictures or do a backup. And don't forget to report your experiences in the forum. * **Changes:** * Changed internal exiftool executable to version 8.10 * Added -ignoreMinorErrors (-m) flag to exiftool invocation in order to ignore minor errors * Changed the default name for the options ini file from "AVPicFace2XMP.ini" to "AvPicFaceXmpTagger.ini". * Upon termination of the program, the default options ini file is only updated if it already exists. The default options ini file will not be created by default anymore. * Now all file extensions are considered which are basically writable by exiftool.\\ Namely these are:\\ "jpg", "jpeg", "dng", "cr2", "nef", "crw", "ciff", "cs1", "dcp", "erf", "exif",\\ "gif", "hdp", "wdp", "jp2", "jpx", "mef", "mie", "mrw", "nrw", "org", "pef",\\ "raf", "raw", "rw2", "rwl", "thm", "tiff", "tif", "xmp" * There is a new checkbox field ("Show all names on hover") in the picture information form which controls, if all face names are shown on hover a face or only the face name of that face. * A bug has been elimanated which caused a program crash when parsing XMP face metadata (NULL reference exception). * The option dialog shouldn't crash anymore on Linux. * It's now possible to specify a format string in the options form for the IPTC and XMP name tags. The string "{0}" will be replaced with the face name. BTW, the format string is used as the format string for the C# String.Format() method.\\ E.g. the format string "face/{0}" seems to be fortunate for use with MS Live Photo Gallery (WLPG), as only the name after the "/" character is displayed. * There is a new "Refresh" button for the file/folder list in the main window. Pressing this button will refresh the internal list of files to be processed and recalculate the statistic display. Use this refresh button when you moved/deleted one or more files in the filesystem. * I've created an additional XMP-AnVoItPicasa extension structure which holds the Picasa definitions for the contacts used in the picture (Name, Id, etc.). These values aren't used at the moment, but they could be used in the future to build up the Picasa contacts and ini files from scratch. Adding these tags is optional. The config definition can be saved to file or copied to the clipboard for further use with exiftool. * The tagging options in the main window for XMP-MP, IPTC-Keywords and XMP-Subject have been restructered. It's now possible to have a better control what tags are, deleted, updated or added. It's now possible to avoid tagging the XMP-MP face tags (e.g. to be able just to add IPTC keyword tags without anything else). * It's now possible to set/unset the 5-star picture rating tags in the EXIF, IPTC and XMP groups. * Bug fix: now files are not added to the File/Dir list if they are already part of a directory/subdirectory already in the file list. * It's now possible to search for error messages in the log file. * A new feature was added to define faces manually for later tagging. The faces can be defined in the picture info form by creating a with the left mouse button. * A command line version (console application) of AvPicFaceXmpTagger is now available too. ==== Version 1.4 ==== * Release Date: 14.10.2009 * Download: {{AvPicFaceXmpTagger_1.4.zip|AvPicFaceXmpTagger Version 1.4}} * Changes: * Starting with this version "exiftool" is included in the executable. When configured in the options to use the internal exiftool version, the internal exiftool is unpacked in the current directory or, if this is not possible, in the systems temp directory. Upon completion the executable will be deleted. * Bug fix: an error where an exception occured when a tag was found more than once. * Bug fix: the scrollbar in the contacts list is now shown. * Bug fix: the GPS latitude and longitude fields are now shown in full length. * It's now possible to start the tagging even though no face definitions are available for the pics in order to be able to just tag files with the additional keywords. * Bug fix: the additional keywords list dialog elements were not positioned correctly on resize. * Bug fix: the auto orientation handling for the pics has been corrected. * It's now possible to select multiple persons. All persons selected will be shown in a highlighted rectangle. All persons can be simply selected by pressing CTRL-A. * When the mouse hovers a face the name tags for all faces are shown. * Bug fix: XMP keywords are now written and read as UTF8. * Bug fix: IPTC keywords are now written and read as UTF8. * Now all JPEG files (with extension .jpg and .jpeg) are processed for tagging. Previously only files having a definition in picasa.ini were processed. Non JPEG files are silently ignored when trying to add them to the file selection list. * Added command line flag "-c <inifile>" with which the inifile can be specified. * Added command line flag "-r" which enables recursive subdir scanning when scanning for files in a directory. * Added command line flag "-R" which disables recursive subdir scanning. * All non-options (words not starting with a hyphen) are used as JPEG files or directories and will be added to the file selection list. With this option you can easily create a SendTo link in Windows. * You can now configure the Windows Explorer context menu in the options dialog box. Whenever you right-click on a JPEG file or a folder you can select AvPicFaceXmpTagger from the contect menu. This feature is disabled by default. ==== Version 1.3 ==== * Release Date: 12.10.2009 * Download: {{AvPicFaceXmpTagger_1.3.zip|AvPicFaceXmpTagger Version 1.3}} * Changes: * The picture information display dialog box is not modal for the main window anymore. The tagging process can be only started when no picture information dialog boxes are open though. * A new keyword list box holding additional keyword entries is available now. These keywords can be added to the IPTC/XMP keywords during the tagging process optionally. The keyword list can be saved to or read from a simple text file. * Now every EXIF meta data directory has a corresponding tab entry in the tab control (i.e. the GPS or the maker notes directories. * If the GPS location is available in the EXIF GPS directory, this location will be displayed on Google Maps. * Pictures are auto-rotated due tue the EXIF orientation tags (if available). ==== Version 1.2 ==== * Release Date: 10.10.2009 * Download: {{AvPicFaceXmpTagger_1.2.zip|AvPicFaceXmpTagger Version 1.2}} * Changes: * A new picture information display dialog box is available. This dialog box can be opened by either double-clicking on a picture filename in the file selection list or by selecting a file and then pressing the "File Props..." button. In this dialog box you can see the Picasa/XMP face definitions, all EXIF, IPTC, XMP and JPEG tags and you can export the XMP and all other tags as a XML file. ==== Version 1.1 ==== * Release Date: 7.10.2009 * Download: {{AvPicFaceXmpTagger_1.1.zip|AvPicFaceXmpTagger Version 1.1}} * Changes: * Added a Changelog dialog window showing the change history. The changelog window is available under "Help"->"Changelog...". * The situation where "alias" names are used in contacts.xml and picasa.ini files are handled now. The picasa.ini files might contain a "[Contacts]" section with alias names definitions and the contacts.xml file has a "<subject></subject>" entry then. * A new statistic counter showing the number of unknown faces was added. A unknown face is a face where its hash key couldn't be resolved to a person name. * There are now more possibilities to specify what to do with the IPTC and XMP Keyword tags: "Don't touch", "Delete all", "Delete persons" or "Add persons". ==== Version 1.0 ==== * Release Date: 5.10.2009 * Download: {{AvPicFaceXmpTagger_1.0.zip|AvPicFaceXmpTagger Version 1.0}} * Changes: * Initial version. ~~DISCUSSION:closed~~


Michael Hagedorn, 2009/10/06 02:21

Great work Andreas. It works fine in my initial test.

The only thing that I could find was that the IPTC keyword which should be the persons name is in my case the contact hash key.

The field in the xmp part RegionPersonDisplayName is the hash key as well. Is this how it should be?

How does the program behave when it is run twice on the same image? The log indicates it overwrites some xmp data, is that all the xmp or only the people tagging part?

Thanks a lot again for this fine work.

Cheers Mike

Andreas Vogel, 2009/10/06 10:23

Hi Mike,

Whenever a hash key is used instead of the persons name, this means the hash key couldn't be found in the Picasa contacts list. Dunno know why this is the case for you and how it happens. Any suggestion what to do in this case? I'm open to improve my program.

When this program is run twice on the same image (just multiple times) the following will be performed:

  1. All XMP-MP tags are deleted.
  2. All persons recognized by Picasa are added as XMP-MP tags.
  3. If this option is enabled, all person names are added as IPTC keyword tags. The program ensures that each person name appears only once as a keyword tag.
chaospir8, 2009/10/06 16:21

Hello Andreas,

you should mention in the installation description that the ExifTool should be renamed to exiftool.exe else it doesn't function (f.e. if it's file name is exiftool(-k).exe link in the actual ExifTool-download)

Andreas Vogel, 2009/10/06 17:34

Done! It's mentioned in the exiftool installation instructions. Anyway, I mention it here too with compliments. ;-)

Michael Hagedorn, 2009/10/06 21:20

Hi Andreas

That makes sense to use the hash key if it can't be found in picasas contacts file.

My contacts files hash keys seems to be different from the ones in the Picasa.ini file. This could be because I brought the photos and the Picasa.ini files from home and had picasa rescan everything at work. The names however show up correctly. Maybe there is different sets of hash keys, online and offline ones.

In my Picasa.ini file is a short [Contacts] section which seems to relate the hash keys to my google account contacts in my case:


And in my contacts.xml my entry is:

 <contact id="2a6a10dd98380ba9" name="Michael Hagedorn" display="Michael" modified_time="2009-09-23T07:45:04+13:00" sync_enabled="1" email0="bla@blabla.net.nz">
  <subject user="hagedorn.michael_lh" id="13"/>

As you can see <subject user> field relates to the correct name while the hash keys are different.

So I guess the lookup should be done by the <subject user> field if it exists. What do you think?

On a side note, is there any software that displays the XMP MP Tags in the image (box around the face and name)?

Again, thanks for the great program. Would you be willing to share the source code? I do a bit of .net myself and am always willing to learn something.

Thanks a lot Viele gruesse von den Antipoden Mike

Andreas Vogel, 2009/10/06 23:32

Hi Michael,

I haven't seen yet the scenario you describe so I need your input and help to get it solved. Let me summarize:

  • It is possible that the .picasa.ini or picasa.ini files contain a [Contacts] section with the data you already described. The format is: <hash key> ”=” <subject user> ”,” <id>
  • The contacts.xml file contact entry might contain <subject></subject> nodes which define some kind of alias names for the given contact.
  • The person hash keys in the .ini file might refer to one of the hash keys defined in the .ini file itself. In this case the real person name can be retrieved by searching the contacts.xml file using the <subject user> and the <id> field in the list of alias names defined in the contacts.xml file.

OK, I'll try to add this functionality (actually without the possibility to test it myself).

I've added two links at the link section meant as a answer for your question what software can show the XMP tags. Microsoft Windows Live Photo Gallery shows you the pics with the face rectangles and the names according to the XMP tags.

Michael Hagedorn, 2009/10/07 00:08

Hi Andreas

Yes, you have summed it up correctly. I think this type of behavior has to do with the online synchronization of the contacts. If you want I could create a small sample for you to test on. Otherwise I will test it as soon as you update it, or maybe you want to mail me that version first for testing.

For some odd reason I can't download the wictools_v1.0.exe from the mircosoft site at the moment (get a socket error).

Kind regards Mike

Michael Hagedorn, 2009/10/08 00:22

Hi Andreas

Your version 1.1 fixes the above problems I had. Great works thanks a lot.

Cheers Mike

Paul Wright, 2009/10/06 21:50

I've installed the program and ran it on a single folder of 12 pictures. Had some trouble getting it to run but it turned out the be the (-k) thing in exiftool. Thank you for noting that on your site. With that fixed it seems to run fine. One anomaly I found was that for a single picture in the group, Picasa had 3 faces identified but your program only created 2 names in keywords. Duplicate run created same result. The missing name is one where there is no entry in Contacts to relate it to. While this explains it, it is not a desirable loss. Picasa retains the name so I would want any data plan to do so also.

Wonderful program, though. Thank you.

Andreas Vogel, 2009/10/06 23:35

Hi Paul,

in order to understand and solve that problem I need your input or some more details. For the missing face the hash key for that person should have been written as XMP tag. Is this the case? Is it possible that your case is similar to Michaels case?

Paul Sims Wright, 2009/10/08 22:38

Had some difficulty finding a viewer to show me the XMP tags. Thank God for Xnview. Then I finally figured out the problem. My fault, not yours. I tested your program on a backup folder that apparently had been created before I manually identified the third person. When I ran it on the main folder, it properly labeled and coded all three.

Sorry for the confusion.


Michael Hagedorn, 2009/10/08 00:54


On a side note regarding exif tags. I like and use pisasa a lot, the face tagging feature is great. However when it comes to handling exif it fails. For example if you tag and image in picasa, this will add this tag to the IPTC keywords in the image metadata. This happens without a backup of the file being made. However this will as well remove the Nikon manufacturer exif information from the image file (I know this to be the case for at least the Nikon D200 and the Nikon D300s) which carries a lot of information I don't like to lose (for example lens used, focus point).

ExifTool does not corrupt the exif data in anyway (at least I have never seen it or heard about it). And it is the correct tool to use here. I don't know why picasa still has not address this issue, it has been raised long ago.

It would be great to have a program just like AvPicFaceXmpTagger were you can drag a selection of images from picasa onto it and then add IPTC keywords to these using the exifTool in the background. This would be a nice workaround for the picasa tagging feature which corrupts some exif metadata.

I guess this is a feature request or could be seen as a separate program. The drag and drop would make it very easy to use.

Let me know what you think

Cheers Mike

Geoff Coupe, 2009/10/08 19:22

@Michael Hagedorn - it sounds as though you're describing Microsoft's (free) Pro Photo Tools. Have you tried it? See http://www.microsoft.com/prophoto/downloads/tools.aspx

Michael Hagedorn, 2009/10/08 22:33

@Geoff Coupe

Hi Yes that does the trick. I have checked with exifTool and it seems to preserve all the exif data. Thanks for the link.

I would still like an ExifTool based tool. ExifTool if being maintained very actively.

Cheers Mike

Daniel Matos, 2009/10/09 13:10


What about the other way around? AvPicFaceXmpTagger helps adding Picasa's People info into XMP tags but I have a slightly different need: I have most of my photos already people tagged (using Windows Live Photo Gallery). I need to import that info into Picasa's contact structure.

Does anybody have an idea on how could this be possible?

Andreas Vogel, 2009/10/09 13:14

Hi Daniel,

as long as Picasa doesn't give us any API to access the database or any helper tools to add or retrieve information from it, we have no chance. Sorry for that and believe me, Googles attitude in this case makes me really upset.

Allan, 2009/12/24 19:51

To import images with face rectangles it should be possible to create a .picase.ini file from the tags in the images and the picasa contacts.xml file. I have done this manually and it seems to work fine. You do not need to include contact info in the .picasa.ini file. The folowing will import face rectangles for 2 people, no other info required in the .picas.ini file.

[S-0726.jpg] faces=rect64(70890d05b26d4bb),0000000000000001;rect64(89b28f82c364be34),0000000000000002 [S-0729.jpg] faces=rect64(4b3961a693949d5c),0000000000000002

The person ID's do not match contacts.xml so the will be marked as unknown and could be moved manually. To attribute to the correct person replace the dummy person IDs with the correct ID from contacts.xml

Process as I see it:

extract required tags from images (ImageName,RegionRectangle,RegionPersonDisplayName) for each unique Person assign a sequential ID provide a way for the user to cross-reference Person to contact.xml (maybe suggest matches) replace dummy person ID with matched value from contact.xml write the .picasa.ini file

Import the folder into Picasa complete with name tags

Michael Hagedorn, 2009/10/11 22:41

Hi Andreas

I have tested the 1.2 version on my system and it works perfect.

Great work.

Thanks a lot.

The new image display form at the moment locks the main form (it has to be closed ). This is just being picky though.

Maybe a field where you can add your own custom keywords (see exif corruption when tagging in picasa post above)?

Cheers Mike

Michael Hagedorn, 2009/10/11 22:55

Hi Andreas

Some minor notes:

The exif information doesn't show all the exif data (GPS, Maker notes etc). These are shown in the ALL TAGS AS XML (I think).

The image is not automatically rotated (I am aware that this might be difficult one since different makes and models have different tags for the orientation, I think).

Great program.

Would you be inclined to share the source code? I fully understand if you don't want to.

Cheers Mike

Andreas Vogel, 2009/10/12 23:06

Hi Mike,

I hope this 1.3 version now has everything you requested - even more. ;-)

At the moment I don't wanna share the source, mainly because it's quite quick and dirty, sorry.

Cheers, Andreas

anjo, 2010/04/06 21:24

Quick and dirty is how great projects always start - opening it up would allow others to contribute towards your efforts.

How about setting it up on google code as an open source project? I and others would love to contribute and perhaps we could see this grow as a tool to more generally interface Picasa's metadata with XMP.

Would also be slightly ironic to have Google hosting it until they can fix Picasa. =)

Vern Crawford, 2009/10/12 13:00

Hi Andreas,

Thanks for your ongoing work on this. Just reading this discussion has been very informative. I look forward to using your program just as soon as Picasa finishes tagging all my many faces, and I label them.

Cheers, Vern

Rolf, 2009/10/13 19:53

Hi Andreas,

I just found “the” thread and this page: it's just what I need! And shame on Google for not supplying the interfaces with their data base.

Unfortunately, although I read all I can not make AvPicFaceXmlTagger (V1.3) find exiftool.exe, no matter if I put it into the path or specify it (it's right in the same dir as the program itself.) Yes, I did rename it, still says 'Error: Exiftool executable doesn't exist in 'C:\Programme\exifTagTools” '. Using “program files” (the English version) does not work either. I am running Win7, and tried it as Administrator, and I removed special privileges. No luck.



Rolf, 2009/10/13 21:35

Hello again, There, I got some success on the matter of not finding the exif tool, and I have a very important suggestion concerning Umlauts.

I juggled a bit with the Path variable and added a .; to it instead of the explicit path. Now, the module exiftool.exe was found; so I thought: obviously it just can not handle the option “use this path for exiftool”.

Then I noticed what I thought was another bug: if you use the ”…” to specify that path, it browses files, not directories (or both).

AHA: the path you were talking about was the file specification, i.e. “c:\abc\exiftool.exe”. Well … I'm a DAU it seems. But maybe you can clarify this in the documentation.

Next: I don't only have jpg's, but also tif's and such. bmp's don't work, their file names are passed to exiftool which can't handle them (yet?). So either the choice of “add directory” does not work in such cases, or you should set a file mask to select only those pics that work. Unfortunately, your program then stops processing the other pictures.

And here's the trouble with Umlauts in some people's names. I get the following message: “warning: malformed UTF-8 character(s)”.

It took me a while to find out what was going on, because AvPicFaceXmlTagger only said “Error: exiftool command: ” (nothing followed this text)

This error message becomes visible only if you take the failing log entry from AvPicFaceXmlTagger and stick it into the command line of exiftool. In other words, the error/warning message is not passed on from exiftool to AvPicFaceXmlTagger.

I checked google on the IPTC/UTF-8 bug, and found this: “http://www.cpanforum.com/posts/5146” which got over 5000 (!!) responses, going back to year 2005. I have not had the time to read all responses. But I found this one:

Posted on Tue May 15 14:31:15 2007 by exiftool in response to 5135 Re: Warning: Malformed UTF-8 character(s) Yes, ExifTool now translates coded characters for IPTC. See FAQ #10 for details. You can use the -L option when writing IPTC if you want to disable translation of special characters.

WOW, the -L option works!

How about adding this into your call to ExifTool?

Thanks, Rolf

Andreas Vogel, 2009/10/14 02:43

Hi Rolf,

sorry, but I thought that it's obvious to specify the path to the exiftool executable itself. ;-)

The upcoming version will process all JPEG files but will silently ignore all other files.

And I have corrected that UTF8 issue. Now the XMP and IPTC tags are all written in UTF8, so the -L flag is not needed. The problem with the error message is that this message doesn't come on stderr but on stdout and that there is no error exit code.

Thanks for your suggestions and your error report.

Phil Harvey, 2009/11/04 16:24

Rolf wrote: ”I checked google on the IPTC/UTF-8 bug, and found this: “http://www.cpanforum.com/posts/5146” which got over 5000 (!!) responses, going back to year 2005.

Luckily, no. Only 10 total posts in this thread:


The 5000+ number was the total number of posts in the entire cpanforum site up to this point.

Patrick, 2009/10/14 18:49

Hi Andreas

Thanks a lot for the really nice work :-) Your tool is just the program I needed. Keep up the good work.

Greetings, Patrick

Michael Hagedorn, 2009/10/14 21:02

Hi Andreas

Great work. I have tested version 1.4 and couldn't find anything wrong with it.

Cheers Mike

Alejandro Ruiz, 2009/10/14 23:31

I Just wanted to say, Great Work!!! I've installed and tested version 1.4 and added face tags to more than 8000 pics without a problem. (well, It haven't finished yet, but its more than 50% done :) :) )

Thx for your work, google should implement this functionality.

Regards Alejandro

Mike D, 2009/10/16 14:08

THIS IS A GREAT TOOL! I would like to thank-you personally and on-behalf of all 'those' who have used the tool to their benefit but for whatever reason(s) were not or have not been able to Thanks personally.

Thanks Again!

Everyday Common-User!


John S, 2009/10/20 14:30

This just great - thank you so much for taking the time and effort to make it available.

When exiftool throws an error (“Multiple photoshop records” in my case) processing stops, as it should. If I then remove the offending file and restart, I get a “can't find file”. The only way to rebuild the file list seems to be to clear it from the list and re-navigate to it, which is tedious! Would it be possible to add a “refresh list lists” button or menu option? or at least add a “continue processing” button?

Thanks! JohnS

Andreas Vogel, 2009/10/20 15:31


you are right, this feature is missing or even more this is something that need to be fixed. I'll try to do this, but right now I'm away for the next 2-3 weeks. Sorry.


Thanks for thanking…. I read it and of course it gives me something back. ;-)


Gunar, 2009/10/20 23:16


Looks like you have a very cool and powerful program. You should check out the Guidelines for Handling Image Metadata specification and test files at http://www.metadataworkinggroup.com

I'd love to hear feedback - send me an email directly.


Todd, 2009/10/20 23:53

This is a fantastic tool; thank you!

Do you know of any way to do the same thing for non-jpeg files? Most of my files are in Adobe's .DNG format, and I'd love to write the face information into them, but I don't see a way to do that for files that aren't jpegs. Any ideas?



Andreas Vogel, 2009/10/21 11:56


how do you get the face information for your DNG files? Is Picasa capable to handle them? Or where is the face information stored and in what format?

Todd, 2009/10/22 21:57

Picasa is able to handle DNG files just fine, as they're just another image format.

In fact, your program works perfectly for me if you just change this line in mainform.cs:

          if (!extension.Equals(".jpg", StringComparison.InvariantCultureIgnoreCase) && !extension.Equals(".jpeg", StringComparison.InvariantCultureIgnoreCase))

to this line:

          if (!extension.Equals(".jpg", StringComparison.InvariantCultureIgnoreCase) && !extension.Equals(".jpeg", StringComparison.InvariantCultureIgnoreCase) && !extension.Equals(".dng", StringComparison.InvariantCultureIgnoreCase))

However, it'd probably be even better in the long-term if you checked for the types of images for which exiftool supports writing tags (http://www.sno.phy.queensu.ca/~phil/exiftool/#supported), at least for the files that Picasa also supports?

Again, thanks for writing such a fantastic tool. You've made my face tagging experience *so much better*.


Diego Pérez, 2009/12/26 22:13

Andreas, awesome job. You have also made my face tagging experience so much better!! I would like to double Todd´s request. You will see that many photographers keep their pictures in raw format (DNG, CR2, NEF in the case of Nikon, and also supported by exiftool) so it would be great if you can add support for those formats too.

Many thks!!


Andreas Vogel, 2010/01/04 00:34

Todd and Diego, I've added all extensions which are known to be writable by exiftool. So whatever is supported by exiftool and Picasa should be processable in the upcoming version.

Chris Wayg, 2010/01/09 10:05

Very nice, that you are adding support for DNG and other raw formats :-D

Could you give us an idea when the new version with raw format support might be available?

Michael, 2009/10/21 16:04

Great program! I am having one slight difficulty though. I noticed that some of my pictures are tagged to the appropriate person in my picasa name list. Yet, when I load the picture into your program to export the name into the metadata it only recognizes 1 of the 4 people. In addition, the same thing seems to occur for the GPS data. This error doesnt occur on every photo, which makes me wonder even more why some work and others dont. Great job though!

thanks a lot for all your efforts.

Andreas Vogel, 2010/01/04 00:32

Michael, it's hard to find a solution without beeing able to reproduce the problem. Can you provide me an example pic?

vinc, 2009/10/22 15:10

This program is great practice.

Just a note to the latest version (v1.4): I find it unfortunate to show all the names at the same time when you put the mouse on a face: the names can overlap …

Sorry for my bad English!

John, 2009/10/23 03:16

Exiftool suports more formats than just jpeg. Could you add support for PNGs as well.

Thank you.

Peter, 2009/10/26 12:20

Fantastic app, but of course you are now in Google's position. You've created a killer app, but people always want more!!

If I tag my files and move them, or move them to another computer I still lose all my tagging info within Picasa. Can you add the ability to update picasa.ini files from the tag info in the pics?


Andreas Vogel, 2009/10/27 12:30

Hi Peter,

no problem, I'll try to implement the proposals people give here. But right now I'm far away.

At the moment it's not possible to write face information into Picasa. I can write the picasa.ini file but that's not enough for Picasa. Eeven when I could write the contacts file it will not suffice.


Chris, 2009/10/28 01:57

Another person very excited .. patiently waiting for DNG support.

Andreas Vogel, 2010/01/04 00:31

Chris, will be available in the upcoming version. I don't have DNG pics, so I'm not able to test it in advance. Would be nice if someone could provide me some example pics in several raw formats.

Jacob Boles, 2009/10/29 01:32

I'd like to volunteer to test/support a linux/mac version. I'd like it to be commandline so it can be automated via scripts.

Please email me Andreas.


Bastien Jacquet, 2009/10/30 18:36

Hi Andreas,

I was exactly looking for this tool to be independent from google. Thank you very much for writing this !

Now, I've 2 ideas in order to export the faces information from xmp to picasa :

  • first, we could write the .picasa file, with an id based on the name (something like the md5 of it). So, for my 40k picture, when importing in picasa, I just have to put a name on those people, or to move all their faces to an already existing person
  • In order to export the 'face recognition data', could we export in one directory per people one new file per face (with xmp info). I mean the face cropped from the original image [at a lower resolution]. This will enable me to share face knowledge with my brother without sharing the pictures themselves (which he already have, untagged, with different names)


PS: I'm on linux, but because I use Picasa on a emulated windows (3.5 will not be available on linux) I'm not sure about utility on linux

john, 2009/11/03 19:14

AvPicFaceXMPTagger can't find Persons/Faces in the files.

Picasa is installed. I've scanned the files and found and tagged the faces. I've made sure the picasa.ini file is in each folder. I've made sure that the picasa.ini file contains the face information. I've run AcPic… and the program finds the contacts but not any faces in the faces.

I'm baffled…

john, 2009/11/03 20:15

More information:

The program finds the info if the pictures were tagged in Picasa on the computer hard drive but not if they were tagged on an external hard drive.

Furthermore AvPicFace… adds a ini to every folder if I use it through the shell extension.

danckel, 2010/01/12 23:18

I seem to have a similar problem. Any Workaround?

But apart from that this is a really excellent program - Thanks!


Ernst Wiedenmann, 2009/11/11 10:15

Great tool!

Peter, 2009/11/14 21:04

Following error occurs when clicking FILE PROPS in this tool version 1.4 after tagging a picture with this tool that has a person identified from Picasa (added IPTC tag and XMP) that was also identified earlier in Windows Live PhotoGalery Tool and when I opened it in Windows Live PhotoGalery Tool to tag further and then went back to this tool to see the tags. When I rerun the tool the info is displayed, so seems it is not correctly parsing info added by the Windows Live PhotoGalery Tool. (using Windows xp SP3)

See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.

System.NullReferenceException: Object reference not set to an instance of an object.
 at AvPicFaceXmpTagger.XMP.get_Faces()
 at AvPicFaceXmpTagger.ShowPicForm.ShowXmpEntry()
 at AvPicFaceXmpTagger.ShowPicForm.RefreshScreen()
 at AvPicFaceXmpTagger.ShowPicForm.set_Filename(String value)
 at AvPicFaceXmpTagger.MainForm.ShowPicInfoDialog(String picFilename)
 at AvPicFaceXmpTagger.MainForm.lvFiles_DoubleClick(Object sender, EventArgs e)
 at System.Windows.Forms.Control.OnDoubleClick(EventArgs e)
 at System.Windows.Forms.ListView.WndProc(Message& m)
 at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
 at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
 at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

[… deleted the rest of the dump … (Andreas Vogel)]

Andreas Vogel, 2010/01/04 00:28

Peter, I fixed the NULL pointer dereference in the upcoming version. So this exception will not come again. But I'm interested why I cannot read that XMP data. Can you provide me at least one example pic?

Ronald Orenstein, 2009/11/23 05:52

Hi Andras - I haven't tried your program yet. Should I wait until Picasa has finished all its scanning and I have assigned all tags, or can you run it repeatedly to update information if you make changes in Picasa? Thanks!

Andreas Vogel, 2010/01/04 00:26

Ronald, you can run my program repeatedly, the XMP and IPTC tags that would be created are deleted first.

Shawn, 2009/11/23 14:45

First of all Andras: you rock! this is a great idea and I wish Google were on board

Similar questions to above, can I use MSFT (Windows Live PhotoGalery Tool) or adobe tools (photoshop elements 8) that tag names in addition to this utility - can they coexist or will they overwrite the tags.

Andreas Vogel, 2010/01/04 00:25

Shawn, they don't coexist, they are just used by all of these programs. The XMP tags you create with AvPicFaceXmpTagger can be used and modified by all these other programs by any means.

Bruno, 2009/11/29 00:31


If nof sharing the code could you please just post the exiftool command line you're using in order to insert the metadata ?

Thanks !

grovel, 2009/12/02 11:35

Thanks a lot for this great tool.

I know that you cannot possibly answer this question, but I'll ask it nevertheless. How big are the chances for the big ones (i.e. Adobe Lightroom and Apple Aperture) to support this meta-data standard in the future? In other words, do you think that this meta-data will become official (esp. seeing that MS is using, supporting it) or do you think that eventually something altogether different will transpire?

Thanks, grovel

Andreas Vogel, 2010/01/04 00:22

Grovel, in my opinion the XMP tags have a good chance to become a widely accepted standard as these tags were introduced by Adobe and are used by Microsoft. These should be enough power to establish them as an widely accepted industry standard. Just my 2 cents.

grovel, 2010/01/05 20:16

Sorry, I realize I wasn't specific enough. Obviously XMP is already the standard for meta-data. I was wondering about the Microsoft Photo Region Schema. Thanks anyway, this is a great tool and it immensely reduces the risk of format lock-in.

Magnus Österlund, 2009/12/04 21:55

I have some corrupt images and each time AvPicFaceXmpTagger try to add Xmp to that image, it don't contunue. I want a option that it continue to update other images if it find a corrupt image.

Andreas Vogel, 2010/01/04 00:19

Magnus, in the upcoming version the program will silently ignore exiftool failures and continue operation for the remaining files. The errors are logged in the LOG windows though.

Glenda Hayes, 2009/12/17 17:51

Great tool!! I'd like to use the command-line tool (as part of an application workflow), but the commands that are listed above pull up the windows interface (or perhaps I'm missing something). Are there arguments for the command-line tool that execute without the UI? Many thanks and Happy Holidays! Glenda

Andreas Vogel, 2010/02/12 22:29

Hi Glenda, I tried to fix this but unfortunetaly the MS way to of having either a console app or a windows forms app makes it quite impossible at the moment to run my program as a console app without showing the window. I'll try to find a solution sometimes, though.

Thomas Hummel, 2009/12/19 18:12


great tool… I'd rather wanted to write it myself but I doubt it would have been that good.

I want to mention only three additional points: 1) the people tags in the IPTC are very nice and I didn't find any standad for it, but I tag persons in IPTC with “person/Thomas Hummel” or “face/Thomas Hummel” oder something like that. So I can kind of categorize my tags. And for example the WLPG supports this system and shows only the last part (e.g. Thomas Hummel) Would it be possible to include some kind of extended configuration where you can define how tags are written in the IPTC?

2) Is there any reverse direction of converting the XMP-MP-Data to a picasa.ini? This is the big thing that misses.

3) You probably followed the discussion about unique numbers or sharing photos with the same people but different ids (http://www.google.com/support/forum/p/Picasa/thread?tid=4408273cd09909dc#all) - do you plan to save somehow the picasa-id in the xmp-data as well?

4) At least - don't forget a donation button ;-)

Nice work! Go on… Thomas

Andreas Vogel, 2010/02/12 22:27

Hi Thomas, about your first point: I've added the possibility to specify a format string for the IPTC tags. Using this you can do what you requested. About the second point: as I wrote elsewhere, this is not easy and I need time to try to find a way. About the third point: I'll think about it, but it's not so easy to implement this quickly.

David Lewis, 2009/12/20 13:18

Great program! But I found that, for some of my pictures, the program stopped with an exiftool error that was actually only a warning or a minor error.

The solution for me was to rename the exiftool executable to be “exiftool(-q -m).exe” and tell AvPicFaceXmpTagger to use that exiftool instead of the built-in one. This works because exiftool cleverly uses options from its own executable filename, and -q means “quiet mode” and -m means “ignore minor errors”.

Hope this is useful for other people too!


Andreas Vogel, 2010/01/03 12:30

Dave, I've just added the ”-m” to the exiftool command line args. I'm not sure if I really need the ”-q” flag. BTW, I've upgraded the internal exiftool exe to version 8.03.

Anupam, 2009/12/23 05:01

I am getting an error while trying to parse a file that contains following (jpeg) comments: “Germany - Munich - Schloß Nymphenburg - Nymphenburg castle”. So, it has something to do with non-english characters. Unfortunately it aborts the process. The error message is “Error exiftool error: Warning [minor] Duplicate XMP property: dc:subject /rdf:Bag/rdf:li 11- P:/My Pictures/….”

Will be nice if we can make it ignore errors by default. I am now gonna try David Lewis' trick to try and work with other files

Andreas Vogel, 2010/01/03 19:26

Will be fixed/included in the upcoming version. I've added the ”-m” flag.

Theresa, 2009/12/23 14:33

Just wanted to say thank you for developing this amazing software! I have been searching for weeks to try to find a way to utilize Picasa's great facial recognition feature as I use Windows Live Photo Gallery and this was exactly what I was looking for! I happened to find it as I was doing research as I was considering writing a program to do this so you have just saved me hours of programming. I will be spreading the news, THANKS!!!

David Kandasamy, 2009/12/27 19:21

This may be a bit far afield, but while we're modigying the metadata…

I've been getting around Picasa's lack of a 5-star rating capability by adding the tags “1star”, “2star” etc. to the tags.

Would it be possible to modify your app to look for the tags and set the JPG star rating directly. Maybe vice versa too - in case we're importing to Picasa from iPhoto, Lightroom or any of the other photo organizers.

Thank you so much for writing your app. Even though you don't charge for it, you might want to have a link for leaving donations.

Andreas Vogel, 2010/01/03 19:24

David, it's not clear to me what you exactly mean. In Picasa you can only “star” pictures. Please give a small, more detailed example. Thanks.

Jeremy, 2010/01/08 04:51

Thanks for this software. Could you tell me what license you are distributing the software?

Andreas Vogel, 2010/01/08 11:12

Jeremy, this software is free for personal, non-commercial use.

Daniel Lennox, 2010/01/08 13:58

I have been using the tool and find it very useful, one question would be about high res TIFF support is planned for futue versions? If i drag a folder containing TIFF files it does not appear?

Thnak you so much for developing the software, its great.

Andreas Vogel, 2010/02/12 22:12

Hi Daniel, the upcoming version will support TIFF files.

Eric, 2010/01/10 19:10

Thanks, great soft. Now waiting for a version with png support!

eric, 2010/01/10 19:12

I meant dng, but png is good as well :)

Andreas Vogel, 2010/02/12 22:13

Hi Eric, DNG files should work in the upcoming version. PNG is not possible, due to PNG format restrictions.

Craig, 2010/01/11 19:14

This seems to be easily repeatable. The first image I tested crashed. The image had two of four faces identified in picasa. Ran avpicfacexmptagger to get picasa tags (worked fine). Then I face tagged a third in Windows Live Photo Gallery. Then attempted to go back to avpicfacexmptagger (clicked Properties button)–and the application crashed.

Andreas Vogel, 2010/02/12 22:13

Hi Craig, I think I found and solved this error. Stay tuned for the upcoming version.

Zéalynn, 2010/01/13 16:53

Thank you for this amazing tool! Brilliant!

greenup, 2010/01/27 02:09

Any progress on the improved version that ignores corrupted images? I am working through my images slowly, but I appear to have across time acquired about .1% corrupted images, which means every thousand images or so, it breaks, and I have to go find the broken image, move it out of the way, and restart from the beginning. I guess I should be trying smaller subdirectories at a time, but it would be a lot easier to let it run overnight. Especially since I have to do this periodically, as I wade through more names in picasa.

It is also too bad there is no way to move information (faces) the other way, INto picasa… I misnamed a bunch of images and will have to correct them someday (can't do it in picasa), but I don't relish redoing the faces for them. I know you don't have any power over google's closed proprietary db, but I keep hoping that they will see comments like this and do as one developer said they were going to: improve picasa to put the face data in the images.

Thank YOU so much for producing THIS useful tool, so we can take advantage of Picasa's good facial recognition, without being completely Locked In.

Andreas Vogel, 2010/02/12 22:16

Hi greenup, the upcoming version will silently ignore corrupt images. About the second issue, supporting the way back to Picasa writing its INI files, I need to do more investigation.

LóQuercynol, 2010/01/27 07:25

Hello, I've tested it under Linux (ubuntu karmic). A prerequisite is “libmono-winforms2.0-cil” library. Picasa 3.6 contacts file may not be automatically found at launch (quite normal, Picasa works on wine on Linux). Extra / Options menu causes crash (System.Security.SecurityException: No access to the given key …). So it's necessary, after first launch, to edit “AVPicFace2XMP.ini” file and to write the ”/path/to/picasa/contact.xml” location (something like ”/home/somebody/.wine/drive_c/windows/profiles/somebody/Local Settings/Application Data/Google/Picasa2/contacts/contacts.xml”… ouf !, or same thing under ”/opt/google/picasa/3.0/wine/…”) and ExifToolPath (usually ”<option Name=“ExifToolPath” Value=”/usr/bin/exiftool” />”. And then… it seems to work fine ! I will use it to see if everything works.

Andreas Vogel, 2010/02/12 22:17

Hi LóQuercynol, the upcoming version shouldn't raise an exception on Linux when opening the options dialog. Thanks for your feedback.

Frank, 2010/01/31 11:48

Great job in designing this software!

Only downside is that, right now, it is quite useless since I only shoot in RAW.

Still: thanks for the superb work!

Andreas Vogel, 2010/02/12 22:18

Hi Frank, the upcoming version will support writing all RAW files that can be written by exiftool. I don't have RAW files, so I cannot test it, unfortunately.

Guillaume, 2010/02/02 18:16

Hi Andreas,

sorry for my bad english : it's terrible, I'm french. ;)

Thank you for your software but I have a question.

1) I made a back up of the “names” attached at the photos and tranformed them to tags, thanks your softaware.

2) now I'm re-installing Picasa and I'm asking if it's possible to convert the tags (names of the people) of my photos to real names in Picasa?

It is exactly the opposite procedure of your software : “names to tags” and now “tags to names”

I hope you're understanding me…

Anyway, thank you for your time and sorry if I'm disturbing,


Andreas Vogel, 2010/02/12 22:21

Hi Guillaume, I know, the feature you request is missed by the whole Picasa world. There are some ideas for workarounds, but I need to find time to test them. But don't worry, I know exactly what you mean.

Eric, 2010/02/09 08:14

Hey Andreas,

Thanks for this great tool! I am wondering what the current status is on a DNG compatible version - near the middle of the comments you stated that you had added all formats that exiftool was capable of supporting, so I assume it works with DNG now?… in any case, you had mentioned that you were looking for some DNG's to test with. If you do need DNG files to test still let me know and I can email you some!

Thanks so much for this great tool!


Andreas Vogel, 2010/02/12 22:22

Hi Eric, I think I need a few days for the upcoming version. I think I can risk to release the new version without doing a test with DNG files. You can do it for me then ;-)

Andreas Vogel, 2010/02/13 14:25

Hi everybody, I've created a forum for discussion….

this way to write comments and discuss about things is really getting messy… so I've created a forum for this. Check it out here: AnVoIt Software Forum

Please, if possible use the forum for further discussions, requests and whatever you wanna tell ;-)

BTW, I've created a Donate Button (just above the download area, hope the button works), so feel free to use it.

kmd, 2010/02/21 21:23

I am seeing an interesting problem with this XMP-MP based face tagging. Not sure if this is specific to avpicfacexmptagger, exiftool or XMP-MP in general. Photos tagged this way (using avpicfacexmptagger) cannot be saved in photoshop (after say touchup or editing). Anyone else seeing this ?

Andreas Vogel, 2010/02/22 01:17

Hi kmd,

first, if possible, use the forum ;-)

second, what errors does photoshop give you? What do you mean by “cannot be saved”? Please, if possible, be more specific.


P.S. I've actually tried to edit a JPEG image previously tagged with AvPicFaceXmpTagger in Photoshop Elements 8.0 and there were no errors saving this file.

Denis Kh, 2010/03/18 14:09

I think that the program is just what I wanted. Before start using it I have just on question: Does the progrma preserve the creation and modify date of the photo?

Andreas Vogel, 2010/03/22 16:03

Hi Denis,

yes, it does. Please use the forum for further questions/discussions.


Markus Lauff, 2010/03/22 18:21


I would like to use the tool together with IDImager. Unfortunately IDImager doesn't recognize the changes because the last modified date is not changed.

Is there an option to switch of the “preserve” option for the exif tool?

Thanks for this great piece of software!

Warm regards,


Paul Catt, 2010/03/26 00:29

Hi Andreas

I tried going to the forum, but it said that it did not recognismy login (slick_rick) even after I had registered.

Great software - it purports to do exactly what I need!

I have tagged approx 15,000 photos in Picasa; they are in 100's of directories under My Pictures. I tried using v1.4 of your software but it crashed during the process (I'm not sure why, I assumed it was the volume of files).

I have just downloaded v1.6 and tried the same thing, but I immediately get the error message “Input String was not in the correct format”. Presumably it relates to one of the files - how do I fix the problem?

Many thanks


Paul Catt, 2010/03/26 00:38


I've just dragged the underlying files (actually only about 100) using Explorer into your program (I didn't know you could do that) and it is now up and running. I'll let it run overnight to see how it gets on.

There must have been a corrupt file in the My Pictures directory.

Thanks again for the amazing software - I will definitely be donating!


Andreas Vogel, 2010/04/01 23:18

Hi Paul,

first of all, it should be possible to login into the forum. Please try again.

If there is an error, please try to find the corresponding error message in the Log window and send it to me.

Please keep me updated how it goes.



Marcie, 2010/04/03 00:22

Thanks for putting this together. I had been using WLPG and had 47,000 photos that needed to be labled. I read up onface recognician and downloaded picasa. It worked way better than I expected and then I started hunting the data and discovered that it wasn't in the file and WLPG couldn't see the data.

Jeez what is it about programmers and standards that they didn't write. I am a programmer I have room to complain. When I started reading up I discovered the original thread, this came from and remembered why I love programmers.

Andreas Vogel, 2010/04/08 18:55

Thanks, Marcie…

Hope the new version 1.7 suits your needs even better :-)


anjo, 2010/04/07 17:39

Any recommendation on using XMP Subject vs. XMP Lightroom Subject tags?

Andreas Vogel, 2010/04/08 18:50


you can tag both, XMP:subject and XMP:Lightroom tags, just in case. But if you don't ever use Lightroom, it doesn't make sense to add this tag.


Michael Z, 2010/04/08 08:54

I really like your software - it makes Picasa more useful!

At the meoment im putting a Tag into all Pictures whre a person is shown (marking all pics i a people-album)

It would be nice to be able to select only pictures where the People-Names in Tags are missing and to write the Tags to those Files. (Not all files have to be updated when the Tags are already present…)

Andreas Vogel, 2010/04/08 18:54

Hi Michael,

what you request is not so easy to implement. It's not only possible to tag the face names, there are many other tagging options available too. In order to find out what files might be skipped it's needed to make a complete analysis for all the options that are set. So at the moment I see no way in doing this, sorry.


Michael Schatzlein, 2010/04/11 22:18

A great program. Does exactly what it says it will do. Fast, too. I donated gladly.

Anjo, 2010/04/16 18:58


But perhaps someone might have a clever way to accomplish and be willing to work on it. Can you consider opening the source for your fine program?

Thankful and respectfully, Anjo

Jia, 2010/05/19 12:38

Hi, This software is great, but I have one question that if it is possible to store the face rectangles into the exif?

Thanks, Jia

Andreas Vogel, 2010/05/19 19:29

Hi Jia,

no, there are no defined EXIF fields for face information.


Pedro, 2010/06/24 14:39

Hi Andreas,

I'm trying to get started with the software, but so far I am only getting the “Input string was not in a correct format.” error. The log window just says: ” Processing file 1 of 1:

Any idea what might be going wrong?

Thanks, Pedro

Wolfgang Wagner, 2010/07/07 15:12

First of all i have to say, that this is really a great programm

but there seems to be still an issue with “umlauts”

with unmodified options names with umlauts create TWO nametags in the picture

one correct and one with weird characters

when i set the options in the mainscreen to DELETE the facetags from the pictures (internal exif tool)

→ no name tags got deleted from the pictures (they are still visible on my jpegs in picasa)

a lot of tags on the exif commandline tags (log tab) look like …

mp:RegionPersonDisplayName=“Tina Strauß (100%)” -xmp-mp:RegionPersonDisplayName=“Tina Strauß (100%)”

i also tried external exif(-L).exe but this didn't help

i am using the current version 1.7



Mike , 2010/07/15 03:35


I am seeing a number of files with the extension .jpg_exiftool_tmp. The original seems to be missing. Can I recover these? Whats happening?

David Lewis, 2010/07/20 14:05

Now that Windows Live Photo Gallery (Wave 4 Beta) supports face recognition, I'm seriously considering moving away from Picasa (which doesn't properly support sharing photos across more than one PC).

Has anybody tried using Andreas's excellent program to migrate from Picasa to WLPG Wave 4? In particular, I'm interested to know how well the exported face tags are integrated with those faces recognised by WLPG; does it re-recognise them?

Also, having done a bit of experimentation with WLPG Wave 3, I have encountered the much-discussed problem with photo orientation. WLPG displays all photos as landscape, whereas Picasa uses the EXIF (I think) data to display photos with the correct orientation. So, in migrating from Picasa to WLPG it's necessary to rotate many photos, somehow automatically.

However, the only JPG rotation program I've found that correctly rotates the face tag rectangles data at the same time as the image data is WLPG's own “rotate” function! As one of the main uses (I imagine) of AvPicFaceXmpTagger is helping to migrate from Picasa to WLPG, it would be great if AvPicFaceXmpTagger had a “fix rotation” function built-in.

Are you looking for a new challenge Andreas ;-)

Dirk, 2010/09/11 21:21

Hi Andreas,

is there way to copy also the Picaasa tags in the xmp subject field (not only in the AnVoItPicasa fields):

<rdf:Description rdf:about=''

  <rdf:li>Picasa - face name</rdf:li>
  <rdf:li>Picasa - tags</rdf:li>


Regards from Berlin Dirk

Edgar, 2010/09/27 03:46

Thanks for the great program. Would you be willing to share the source code? I can help a little. Please. I'm very intersed in this project. Greatings.

Jose, 2010/11/03 01:22

Firstly thank you very much for its great program.

I have problem when click a file extension entry to change the file option “Write IPTC data using UTF-8…” the checkbok is automatic set true and can't change. When I use spanish characters in tag (áéíóúñ), IPTC keywords contains wrong characters, but XMP keywords are correct, I tested viewing the metadata with exiftool and import in LightRoom v3.2

Another problem is when two or more people have the same first name in different categories For example [Text in () is only illustrative, not is part of keywords file]:

		 Jane (Picasa 'display' tag)
			[Jane Croos] (Picasa 'name' tag)
			[Jane Robinson]

The program adds to XMP-Subject tag both categories (Friends, Family) for each picture in which one of the two people is present

Huge thanks!

air max shoes, 2010/11/15 04:18

Hiya, nice day.. Your article is extremely impressive. I never considered that it was feasible to accomplish something like that until after I looked over your post. You certainly gave a great perception on exactly how this whole process works. I will make sure to return for more advice. Thanks

Steve Rose, 2010/11/28 07:35

I've been testing this app on my backup pics and it seems to do exactly what I'm looking for. The only enhancement I'd like is to have an option to preserve all files dates when I run the application. I think the file creation date is being updated when I run the app. However sometimes I go back for reference to look at these dates when I have a problem.


Chris Kuster, 2011/01/05 08:43

Hi Andreas

After spending some days developing my own program doing the same task, I found your tool… :-)

As I have read in the forum, you don't have to much time for further work on this tool. As there are some minor improvments I would like to have (like an easier way to select a directory, not starting from “my computer”): how about to publish your code on a code sharing site like code.google.com? Not everybody needs write access but maybe there will be a small developer comunity for this project in future.

Regards Chris

Kristian André Gallis, 2011/01/14 20:27

In my Linux box, Fedora 13 (64 bit), the contacs.xml file is placed in this directory:

/home/USERNAME/.wine/drive_c/users/USERNAME/Local Settings/Application Data/Google/Picasa2/contacts/

I run the programme like this from the prompt:

[USERNAME@Fedora ~]$ mono AvPicFaceXmpTagger_1.7.exe

Paul Rigney, 2011/02/09 02:41

Hi Andreas,

This is a great utility you've written!

Does your utility allow you to go in the other direction.

Read the the face information off the jpg and have it written to the picasa database and .picasa.ini

I want share photos with friends that use picasa and this would be a useful feature.

Regards Paul

Andy, 2011/03/01 21:20


Would you please consider open sourcing the code and posting it sourceforge, github, etc.? It's been a while since the last release and there's a lot of features that are being asked for.

This could grow into a general purpose photo tagging program that could bridge the gap between programs like Picasa, Lightroom, etc.


Jeremy, 2011/03/04 18:12

As Andy & Kuster have both pointed out, this project could benefit the community by being open source. You've done a great job so far, let the community of us other developers help you continue it!

Thomas König, 2011/03/22 13:45

Hi Andreas,

do you still maintain the tool? If yes, would it be possible to include an option in order not to tag faces, which have been marked as 'ignore' in Picasa? If you ignore faces in Picasa the name is set to 'ffffffffffffffff' in the picasa.ini file.


Mike Ropeses, 2011/05/17 21:42

The only thing that I could find was that the IPTC keyword which should be the persons name is in my case the contact hash key.

The field in the xmp part RegionPersonDisplayName is the hash key as well. Is this how it should be? premium wordpress themes

avpicfacexmptagger/main.txt · Last modified: 2011/06/27 16:25 by administrator
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0