If you are building an image sharing service or a social network mashup, it’s likely that you will want to incorporate face-tagging in your images. Maybe you’d like to go a step further and automatically detect faces in an image, similar to Apple’s iPhoto. A Romanian developer has developed an API to help detect faces in images and return the box coordinates so that you can build any kind of app you want.
Face detection made simple
The API is RESTful, so you can get up and running pretty quickly. You simply send your API credentials via BASIC auth along with the URL of the image you want to use. You are returned an XML tree of “faces”, with 4 box coordinates. Like I said, very straightforward and simple. What’s kind of cool and very handy here, is that the Face Detection API takes image URLs instead of image data. This means you could essentially run the API on any image publicly hosted on the web.
So how’s it do?
I made a few test calls on some images in my Flickr gallery and my Facebook photo albums and the results were pretty good. Every once in a while, the API will miss a few faces. In its defense, those faces were somewhat obscured or very out of focus. The APIs response time is fairly impressive as well. A large image with 6 people returned box coordinates in about 3-4 seconds.
While this API is extremely useful, it is very rough around the edges, currently. The API documentation is not complicated, but it’s missing some key documentation elements, like response examples. The Face Detection API is also very simple, and not a lot of options seem to be available (for example, returning a JSON response).