Saturday, December 12, 2009

Software Review: Picasa 3.6 Face Recognition

The face recognition can be think as PC evolution. It just like when PC still 2D to 3D. Till today people is still having a hard way searching something beside text in the computer. Although text is the oldest data form in computer, many other data has quite old. WAV is has been in 1980, MP3 1997, JPG 1994, and may others. Two the last one is still popular till now.  In near 2010 we still hardly able to search MP3 and JPEG. What I mean here is searching the data file not the tag, the internet, filename, etc. Example you record a song to mp3. Can you search the certain words in that mp3? Can you search picture something in your jpg?


Picasa is a free software from Google. Picasa is originally a software company like ACDSEE that has been bough by Google. Total review of a Picasa is beyond of this article. I only focus on face recognition part. Starting to Picasa 3.5, Google has been added Face Recognition ability that has been on the Picasa Online quite sometime. If shareware count then the first software for mass PC Face recognition was Cyberlink MediaShow 5. Picasa is second in PC, but first in FREE. Both of them is the second and third if Apple IPhoto 2009 include. Does the Picasa served the best? This article also not about comparing three mass software face recognition. So let’s begin.


First time Picasa is trying to search face of all of your picture. Than after that it is trying to match / group the faces that is found from your photo. The face recognition is quite good. The only two draw back in face recognition. First Picasa is unable to recognize the face on rotate photo. The photo must have a face that has 2 eyes on the top, a nose bellow, a mouth at bottom. If the photo is rotate like the eyes in the left, the nose is in the middle, and the mouth is on the right than it will ignore by Picasa. The second draw back is a bit irritating. It just like the first bug. But the first bug, the face rotate by pretty degree like 90, 180, 270. Unfortunate event a small degree of a face rotation will make Picasa failed to recognize a face. The example of those case are in the picture 1. In the picture 1, Hu Ge is just rotate his head few degree. This small rotation make Picasa failed to auto recognize the Hu Ge face.



Picture 1. The Picasa Unrecognized


The extreme case of Picasa is like this. You have 1.000 file of your model. Fortunately your model face is just normal straight forward (eyes in the top, mouth in the bottom). You are experimenting many style but the face is just normal. All you have to do is just create a new name of your model. Picasa will suggest 999 face of the same model. You just click confirm all. That’s it! Instead of the old time tagging 1000 file with a model name (perhaps there is a batch process to do so). The worst case one is you have to create a box that contain her / his face and name them. Do this for each file for 1.000 times. Normal case will be something like picture 2.


Picture 2. The Picasa Normal Case of Face Recognition.


Do you know back then why people are afraid to use a program? One of the cause is the computer program is not trustable in people mind (easy to forge data). The second biggest reason is support of the file format. What is the use of good program when your hard work can’t be save? Event more trapping is the file format for your hard work can’t be open in few years latter. These two main reasons is something to put in your mind where you use a new unknown program. This is also happen with the first time of Word Processor program like Word, Lotus, Wordstar, etc. Back to Picasa. If you have spend a few months tagging thousand photo (you have a life, you just tag photo one hour a day), how can you save your hard work in Picasa? I will give my tips in this article later.


In the making of this article there has been out Picasa 3.6 which as many new feature. On of them that I like most is now Picasa suggest people everywhere. Not just in the contact / people like in Picasa 3.5. Picasa 3.6 has been more like Picasa Online when we want to rename a face it will suggest a name. See picture 3, 4, and 5.


Picture 3. Picasa 3.6 Suggest name in the Folder Name.


Picture 4. Picasa suggest name in the Unnamed People.


Picture 5. Picasa 3.6 Suggest name in the Unnamed People.


The second new in Picasa 3.6 that like is the progress process. It appear in the Picture 5 in the middle top. It says 216 groups, 21100 faces, 2393 to scan, 00:47:32 time remaining. We now know that Picasa need 47 minutes to scan the remaining 2393 faces. Not like older Picasa where we just wait till it finish. There are also one feature that I suggest but unable to test if this feature has been implemented in this version of Picasa. It was the GPU usage. The Cyberlink MediaShow 5 has able to take advantaged of the GPU processing. I just can’t wait this feature implemented in Picasa to speed up the face scanning process.


Here is a tips for making Picasa more portable:

1. Share your picture in a network, example to \\COMPUTERNAME\PHOTO.

2. Map the number 1 to a drive, best is Z. So Z: is the map of \\\PHOTO. Use Windows Explorer, select from menu Tool – Map Network Drive.

3. Disable all folder that Picasa scan except for drive Z.

4. Wait the Picasa to scan the entire drive Z.

5. Tag the faces that Picasa found.

6. To survive the Windows Reinstall you must save the number 4 and 5 data. Go to C:\Users\YourUserName\AppData\Local or something similiar. Make sure you have done the number 4 and 5, if not there is nothing to save. Copy the Google folder to difference place in your harddrive, example D:\DATA\GOOGLE. Go to Z:. Find files picasa.ini. Use Winrar / Winzip / something similiar to archive them. Make sure you save the directory setting, because all file has the same filename Picasa.ini.

7. If you want to restore the picture to another computer or after reinstalling Windows than this is the way. Do number 1 – 2 above. Install latest Picasa. Copy the Google folder that you save in step 6 (the point is just reverse the step 6) to C:\Users\YourUserName\AppData\Local or something similiar. Do the step 3 and 4. Done. All just back to before.


This is a real case to me with Picasa. I have a Dell Latitude D630 with Intel Core 2 Duo T7250 and 4 GB memory with 80 GB HDD 7200 rpm. My main PC is Sempron 2800+ 1,6 Ghz with only 1,5 GB RAM. My photos is about 42,6 GB with about 27,000 files. I need a faster processor to make face recognition faster. If my laptop HDD is 160 / 250 / 320 / 500 GB than I just use the step 1 – 7 above. To make thing more complicated, I have been use the older build of Picasa in My PC. My mission here is to re-recognize (I don’t quite spending a lot of time with older Picasa, but I intend to do with this Picasa) faces in my Photo, back it up, and restore to my PC with the final data. In analogy with Microsoft Word, I just create delete my old document. Create it on a difference PC. And copy the .docx file.


So here is what you do. First copy the photos file from PC to Laptop. To make time more efficient, I delete the movie and the picture folder that I know doesn’t contain face. The example of it is the screenshot of a program, the hardware photos, etc. That save about 10 GB more, so my photo folder is about 30 GB. Next I delete the picasa.ini in my photo folder to refresh a new face recognition data. After waiting about 1 week with about 16 hours a day, Picasa has been done scanning faces. The same amount was also time to take in My PC with overclock Sempron to 2 GB (stack clock is 1,6 Ghz). Why the laptop is not faster? Because in the PC I use the default setting for face recognition accuracy that is 80. In my laptop I use the highest and slowest setting that is 95. The lowest setting is 55, see Picture 6.


Picture 6. Picasa Name Tag Setting. 


When I move the slider in picture 6 far away to the left (55) than I get suggest more than 10,000 photos for a person. The opposite also true, when I move the slider to the right most (95), I get very accurate person suggestion. But moving the slider to the right most will make the scan super slow. I think that the reason why Google not set the default setting to 95. The other reason maybe that using the setting 95 will also miss the same person to be suggest.


Now than, what the use of Picasa when you have all the person you know tagged? You can search. You can search a photos that contain Hu Ge (The Actor that play Guo Cing from Legend of The Condor Heroes 2008), Ariel Lin (Huang Rong from the save movie), and Mu Nian Ce (A Role name in LOCH 2008). The first thing is to select one of them. Example Ariel Lin like in the picture 7.



Picture 7. Ariel Lin (The Actress that play Huang Rong from Legend of The Condor Heroes 2008)


You notice that in the right (People Tab) there is two other people, Hu Ge and Mu Nian Ce. Select Hu Ge to search a photos that contain at least Hu Ge and Ariel Lin. Same with picture 7, the result will have Mu Nian Ce in the right. Select it and you will have a photos that contain Hu Ge, Ariel Lin, and Mu Nian Ce like in the picture 8.



Picture 8. Drill Down Face Search in Picasa


You can use this feature to search photos that contain your family like mother, father, sister, and brother. The only thing that is inconsistent to me is the “Back to View All Button”. I often to click the Import Button to back. I get use to Windows Vista and later Windows 7 design that back is on the left top. I still don’t know how to select a Photo that contain ONLY a certain person, not AT LEAST. The second use of Picasa if you a model photographer or a designer. You can choose a model and pick the right pose before you process it a lot further using Photoshop. You can use Zoom out to see the pose instead of the face. Click the small icon. See Picture 7, the icon is on the middle upper right that has the picture of a box with 4 arrows form the center trying to go out. 


Tips to efficiently tagging the face in Picasa. First wait for Picasa to recognize all the picture. Although you can tagging while Picasa searching faces, it will be not efficient to do so. Because many good picture / photos hasn’t been find by Picasa. After Picasa finish searching faces, here is the way to efficiently tagging faces. Go to your photo folder that contain a person hi res photo you want to take. Tag it, give the face a name. Do the same thing for all person you care / know. Make sure you use hi resolution photo at first. Then wait for Picasa to suggest more matching faces. After no more suggestion this is the finishing step. Browse you folder want by one like you want to remember them. Check the tag, and tag the faces that are not straight. Do that for all picture. Done.  


To warp things up Picasa is a good one. The improvement that I suggest is:

1. Use GPU.

2. Find ONLY a photo with people not AT LEAST.

3. Create a small simple statistic graph. Like 90% of my picture is tagged and 10% is unnamed. Of that 90%, 40% is ignore. The rest 50%, the most 10 ten faces that I tag is. Do that in simple chart graph.

4. Easy to save data. There is a person backup. I don’t know if this is the function to backup data. I need the data only. Not include the original photos.

5. Easy to synchronize not only with Google Account or Picasa web, but with other Picasa.

6. Make more less strict but accurate face recognition.

7. Able to save data from face recognition from optical drive without copying all the photos.


I Hope this is helpful :). Any question? Just posted in the comment.

1 comment:

  1. Face recognition with delphi and with source code