I'm looking for a free face recognition library for a university project. I'm not looking for face detection. I'm looking for actual recognition. That means finding images that contain specified faces or libraries that calculate distances between specific faces.
I'm currently using OpenCV for detecting the faces and a rough Eigenface algorithm for the recognition. But I thought there should be something out there with better performance than a self-written Eigenface algorithm. I'm not talking about speed as performance, I'm looking for a library with better results than a simple Eigenface approach.
I took a look at Faint, but it seems the library is not very reusable for my own applications.
I'm happy with a library in Python, Java, C++, C or something like that. The best thing would be if it can be run on a Windows machine because I'm relying on some external Windows-only code at the moment.
Here is a list of commercial vendors that provide off-the-shelf packages for facial recognition which run on Windows:
Cybula - Information on their Facial Recognition SDK. This is a company founded by a University Professor and as such their website looks unprofessional. There's no pricing information or demo that you can download. You'll need to contact them for pricing information.
NeuroTechnology - Information on their Facial Recognition SDK. This company has both up-front pricing information as well as an actual 30 day trial of their SDK.
Pittsburgh Pattern Recognition - (Acquired by Google) Information on their Facial Tracking and Recognition SDK. The demos that they provide help you evaluate their technology but not their SDSK. You'll need to contact them for pricing information.
Sensible Vision - Information on their SDK. Their site allows you to easily get a price quote and you can also order an evaluation kit that will help you evaluate their technology.
We're using OpenCV. It has lots of non-face-recognition stuff in there also, but, rest assured, it does do face-recognition.
The next step would be FisherFaces. Try it and check whether they work for you. Here is a nice comparison.
You can try open MVG library, It can be used for multiple interfaces too.
If your project is on a movie or TV, or anything that has a script, it looks like you definitely want to look at the work of Mark Everingham et al.. The software is available, as are the results on a Buffy episode.
I know it has been a while, but for anyone else interested, there is the Faint project, which has bundled a lot of these features (detection, recognition, etc.) into a nice software package.