Sun Certified Java Programmer
The Face Annotation Interface – faint
This project is a flexible Java framework for face detection and face recognition technologies, that is based on different plugin and filter types. A suitable graphical interface can be used to set up pipelines for detection and recognition by combining these plugins and filters. Moreover an integrated photo browser allows users to apply the face detection and recognition process on personal images.
Project Details
Modules included in the current release of faint:
- OpenCV-Haarclassifier-Detection – JNI adapter to Intel’s OpenCV implementation of the Viola-Jones detection algorithm.
- Betaface.com-Detection – Web Service adapter to detection functions of Betaface.com.
- Skin-Color-Filter – Makes use of an 8Kb hue-saturation lookup table, based on training images provided by Michael Jones.
- Eigenface-Recognition – A pure Java-based implementation of the Eigenfaces approach.
- Simple-Context-Filter – Recognition filter avoiding duplicate occurrences of a person on a single photo.
The detected and recognized faces are stored in a local database, which can be modified manually from inside the application. In addition all face annotations can also be stored directly into the image files in Adobe XMP-Format on demand.
Initially developed in the context of a Bachelor Thesis at the University of Oldenburg, faint has been integrated into several projects maintained by the OFFIS Institute for Information Technology. To attract a broader audience, the source code has been released under GNU General Public License (GPL) in October 2007.

Download
Runnable JAR file:
Java Runtime Edition 6 or higher is required. In addition, the OpenCV-Detection-Plugin is currently only working on Windows systems.
