Open Source Face Recognition for Android

Open source face recognition for Android

Here are some links that I found on face recognition libraries.

  • Android's FaceDetector.Face
    • Tutorial: Implementing Face Detection in Android
  • OpenCV Facerecog

Image Identification links:

  • Moodstocks
  • Ltutech

face matching open source for IOS/Android

You probably want to checkout

http://opencv.willowgarage.com/wiki/

OpenCV has elements to build this up and works on Android and iOS. Other options:

Face Detection in Android?

Face unlock code in Android open source project?

Unfortunately:

Face unlock is closed-source google proprietary code, so we have no opportunity to modify it.

Source: http://forum.xda-developers.com/showthread.php?t=1367610

Developing Face Recognition App

I have worked with Face recognition for a while.

If you want to use OpenCV you could do a better effort searching in SO and you can found things like this one.

The best one for me is the SDK provide by lockheed martin... but it's too expensive :S for a single person.

Edited
"Face detection and face recognition are different things ;) Face detection tells you where is the face and face recognition tells you who's the owner of the face"

If you choose OpenCV, you can find full doc in official page.

I'm going to give you a overview :

You can use OpenCV in your app using "OpenCV Manager" or with "Static Initialization on OpenCV Android".

About the first one:

OpenCV Manager is an Android service targeted to manage OpenCV library binaries on end users devices. It allows sharing the OpenCV dynamic libraries between applications on the same device. The Manager provides the following benefits:

  1. Less memory usage. All apps use the same binaries from service and do not keep native libs inside themselves;
  2. Hardware specific optimizations for all supported platforms;
  3. Trusted OpenCV library source. All packages with OpenCV are published on Google Play market;
  4. Regular updates and bug fixes;

usage model for end users


About the second one:

A complete tutorial using eclipse.

Face recognition using android sdk not opencv

The FaceDetector class doesn't do what you think it does. Specifically, it doesn't do Facial Recognition, but instead Facial Detection (hence the class name).

An example of Facial Detection

It analyzes an image and returns Faces found in the image. It makes no distinction between Faces (you can't tell if it's John's Face or Sarah's Face) other than the distance between their eyes - but that isn't really a valid comparison point. It just gives you the Faces found and the confidence level that the objects found are actually Faces.

Ex:

int maxNumFaces = 2; // Set this to whatever you want
FaceDetector fd = new FaceDetector(imageWidth,imageHeight,maxNumFaces);
Faces[] faces = new Faces[maxNumFaces];

try {
int numFacesFound = fd.findFaces(image, faces);

for (int i = 0; i < maxNumFaces; ++i) {
Face face = faces[i];
Log.d("Face " + i + " found with " + face.confidence() + " confidence!");
Log.d("Face " + i + " eye distance " + face.eyesDistance());
Log.d("Face " + i + " pose " + face.pose());
Log.d("Face " + i + " midpoint (between eyes) " + face.getMidPoint());
}
} catch (IllegalArgumentException e) {
// From Docs:
// if the Bitmap dimensions don't match the dimensions defined at initialization
// or the given array is not sized equal to the maxFaces value defined at
// initialization
}


Related Topics



Leave a reply



Submit