Rory Lester
Rory Lester

Reputation: 2918

iOS image comparison

I am just doing some research into image processing and would appreciate it if someone could point me in the right direction. I want to compare image 'A' which is a picture of a person's face with image's stored in a database -B,C,D,E .. etc which are also pictures of faces. I want to compare them to see if the person 'A' is already in the database.

Several questions :

1.How is face recognition comparison usually done? (do you extract features e.g. eyes/mouth and compare them to other images?). 2. Are there prebuilt libraries that are able to do a comparison between images? or do i need to write my own algorithm? 3. Where can i start with this? (would appreciate some references/reading material).

Upvotes: 3

Views: 4227

Answers (3)

user902124
user902124

Reputation:

I would go with compiling openCV for the iPhone ( http://computer-vision-talks.com/2011/02/building-opencv-for-iphone-in-one-click/ ), and then implementing one of the classical ways to do face recognition like eigenfaces ( http://www.shervinemami.info/faceRecognition.html )

But don't expect miracles the accuracy will be low, and the app will be slow.

Also when you say face recognition is difficult doesn't the first link show how easy it is to detect faces on a picture?

The face detection from the first link is just to detect the face. It is just to see if there is a face in the image, which then you can pass as input to the recognition algorithm.

Upvotes: 0

user679424
user679424

Reputation:

  1. face recognition are very difficult, you need to extract some kind of "features" and perform some measurement...iphone hardware isn't very appropriate for this job.
  2. yes, you can check here http://maniacdev.com/2011/11/tutorial-easy-face-detection-with-core-image-in-ios-5/ for a tutorial and here http://maniacdev.com/2011/12/open-source-library-for-adding-easy-face-to-your-ios-app-with-the-free-face-com-api/ for a free webservice. 3.i suggest you google scholar (http://scholar.google.it/scholar?q=face+recognition&hl=it&btnG=Cerca&lr=) but i think that if you want to write your own algorithm you need a lot o spare time :)

Upvotes: 0

Rayfleck
Rayfleck

Reputation: 12106

  1. Yes, you identify, extract and quantify various aspects of human faces, such as distance between pupils, width of mouth, percentage of head height where tip of nose is, etc.
  2. There is a company, Luxand which makes software to do this, and I think they license it. Last time I looked (2009?) they didn't have an objective-c library. They do have an app that claims to merge faces from photograhs, so you can see what the offspring of any two people would look like, but it is very cheesy, with lots of hard-coded faces. (If you cross a dog with a tea-pot, you get the same baby-face as from crossing a 2 real faces.) AFAIK, there is nothing in the iOS SDK that does this.
  3. I would just Google "face recognition" and start reading. Good luck.

Upvotes: 2

Related Questions