Lauszus / FaceRecognitionApp

Face Recognition Android App
GNU General Public License v2.0
507 stars 238 forks source link

Questions #14

Closed IbrahimAlzaidi closed 6 years ago

IbrahimAlzaidi commented 6 years ago

I'm trying to study your app and learn more about image processing in Android, I downloaded your project and tried to understand your code, its clear to me the way that you wrote the code but, I have some questions:- 1.Is there a Pre-Processing? in which way? where can I found it? 2.Is there a Face detection? in which algorithm? where can I found it? 3.Any technique you used for train image? 4.What you used for a match the Images? 5.Whats the steps that you convert the image in, you take it from the camera and Saved in Database?

SantoshKumar3295 commented 6 years ago

Face detection is an algorithm written by Viola-Jones and implemented by OpenCV for Android, Python etc. You can learn more about this algo on OpenCV Documention, its pretty damn good also youtube.

Lauszus commented 6 years ago

@SantoshKumar3295 this app does not use OpenCV for face detection! It only use OpenCV for loading images etc.

@IbrahimAlzaidi this app uses Eigenfaces and Fisherfaces. You can find the implementation at my library: https://github.com/Lauszus/FaceRecognitionLib.

You can read more about it in these two papers: http://www.face-rec.org/algorithms/PCA/jcn.pdf and https://cseweb.ucsd.edu/classes/wi14/cse152-a/fisherface-pami97.pdf.

The images and labels are saved at these lines: https://github.com/Lauszus/FaceRecognitionApp/blob/master/app/src/main/java/com/lauszus/facerecognitionapp/FaceRecognitionAppActivity.java#L510-L513 and then loaded at these lines: https://github.com/Lauszus/FaceRecognitionApp/blob/master/app/src/main/java/com/lauszus/facerecognitionapp/FaceRecognitionAppActivity.java#L537-L538.

IbrahimAlzaidi commented 6 years ago

@Lauszus I need more details about detection and pre-processing if you have anything useful?

Lauszus commented 6 years ago

@IbrahimAlzaidi this app does not do face detection, but face recognition.

The image down-sized and converted into a column vector here: https://github.com/Lauszus/FaceRecognitionApp/blob/2a20f7bccb2d0c63efc4b38570aad74ea228eab0/app/src/main/java/com/lauszus/facerecognitionapp/FaceRecognitionAppActivity.java#L397-L404.

Lauszus commented 6 years ago

@IbrahimAlzaidi if that answered all your questions, then please close this issue :)