Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Java Sample Face Recognition

I'm trying to develop a system whereby somebody can take a picture of somebody's face and, after the image has been sent to a remote server, the client will be able to read information about the person.

I have, previously, experimented with JavaCV, however, I have found it too inaccurate for my purpose. I have tried these JavaCV algorithms so far:

  • Fisher Face Recognition
  • Eigen Face Recognition
  • LBPH Face Recognition

However, I need to build a facial recognition system. This will be 'standalone' and will not be run on Android (for example). I need some help in choosing the correct java sdk/library (and also whether commercial solutions, such as 'Cybula', 'NeuroTechnology' and 'Sensible Vision' can be avoided).

Any help would be much appreciated!

Thanks,

Matt

like image 720
Matt Brown Avatar asked Dec 05 '13 18:12

Matt Brown


People also ask

Can Java be used for face recognition?

As part of its software release, it offers only a few modules (with Java bindings) out of the box — and facial recognition is not one of them. Therefore, to use it, you need to manually build it.

What is OpenCV in Java?

OpenCV is a cross-platform library using which we can develop real-time computer vision applications. It mainly focuses on image processing, video capture and analysis including features like face detection and object detection.

How does OpenCV face recognition work?

Face recognition and Face detection using the OpenCV. The face recognition is a technique to identify or verify the face from the digital images or video frame. A human can quickly identify the faces without much effort. It is an effortless task for us, but it is a difficult task for a computer.


1 Answers

Face recognition is only the last step in the process. To solve this problem, you first have to find the face in the picture (face detection) and then in the detected face you will have to extract the characteristics of the face depending on the quality of the picture, light/flash used, facial/sideways, ... (feature extraction).

Process chain:

face detection -> feature extraction -> face recognition

There are probably a hundred publications for each of these topics. It's up to you to assemble something.

Also notable: this is not the kind of problem that has one global best solution. The chosen approach is at most optimal for the one special problem that you are trying to solve.

Other keywords that you might want to consider:

  • face tracking
  • pose estimation
  • facial feature tracking
  • emotion recognition
  • holistic templates
  • feature geometry

Also noteable: most SDKs that say they do face recognition in reality only do face detection (and sometimes (rarely) feature extraction). To do face recognition you need a huge database of known faces (face features), which of course most "vendors" don't have (not talking about all those agencies though... LOL).

like image 90
mwhs Avatar answered Sep 18 '22 00:09

mwhs