On 16 Jun 2009, at 11:09, Mark Rogers wrote:
On the back of a bus I saw an advert for the Apple Mac talking about its ability to use face recognition when processing photos.
Is there anything like this in Linux?
There are two aspects to this: finding faces in images ('face localization' in the literature) and face recognition. The standard localization algorithm is due to Viola & Jones, and there is a (trained) implementation in OpenCV which you can pretty well just download and run. As an aside, the Viola-Jones algorithm is not rotation-independent and that is why cameras that offer face localization invariably have orientation sensors, so they can process both landscape- and portrait-orientation images.
There is a fair amount of research-level code for face recognition kicking around but I haven't seen anything suitable for people who aren't willing to do some serious hacking...but, then again, I haven't looked. This might be fun to do. An ALUG summer project, anyone?
As a regular Mac user, I've imported a few dozen of my photos into iPhoto and can confirm that its 'Faces' feature is fairly well- implemented, both in terms of recognition and in its user interface.
For those who are keen photographers, the companion feature of 'Places' (geotagging) stinks, even with the latest iPhoto patches. One is supposed to be able to add new places if the software doesn't know about them (and that's everywhere outside a major city in the UK, it seems) but the implementation is very crufty at the moment: one is supposed to be able to move the (google) map in the interface but this simply doesn't work!
HTH.
..Adrian