Presentation is loading. Please wait.

Presentation is loading. Please wait.

Vision-Based Biometric Authentication System by Padraic o hIarnain Final Year Project Presentation.

Similar presentations


Presentation on theme: "Vision-Based Biometric Authentication System by Padraic o hIarnain Final Year Project Presentation."— Presentation transcript:

1 Vision-Based Biometric Authentication System by Padraic o hIarnain Final Year Project Presentation

2 Vision-Based Biometric Authentication System Face Detection Face Recognition Authentication Input from Camera

3 Why make a Vision-Based Biometric Authentication System? Advantages over PIN/password method: Advantages over PIN/password method: More secure More secure No passwords to remember No passwords to remember Less tedious Less tedious Practical Practical Advances in image processing techniques Advances in image processing techniques Low cost of digital imaging hardware Low cost of digital imaging hardware

4 Vision-Based Biometric Authentication Development Face Detection with Camera Authentication System Face Detection Authentication System Face Recognition Face Recognition Authentication System Add New User Utility Integration of Entire System

5 Face Detection Determines the location of a face in an image Determines the location of a face in an image Involves capturing images in real-time from a camera and then determining whether or not the image contains facial features Involves capturing images in real-time from a camera and then determining whether or not the image contains facial features Statistical approach originally developed by Paul Viola and Michael Jones Statistical approach originally developed by Paul Viola and Michael Jones

6 Face Detection and the Viola-Jones Algorithm Uses simple Haar-like features and a cascade of boosted tree classifiers. Uses simple Haar-like features and a cascade of boosted tree classifiers. Haar-like features are calculated for the images and then passed through a cascade of boosted classifiers in order to determine if they are facial features. Haar-like features are calculated for the images and then passed through a cascade of boosted classifiers in order to determine if they are facial features.

7 Face Detection and the Viola-Jones Algorithm Calculate the Haar-like features. Using a SAT (Summed Area Table) to speed up the process. Calculate the Haar-like features. Using a SAT (Summed Area Table) to speed up the process. Computed feature value is passed through a simple classifier. This classifier responds with a +1 for a pass or a -1 for a fail. Computed feature value is passed through a simple classifier. This classifier responds with a +1 for a pass or a -1 for a fail. Chain a bunch of weak classifiers together into a more complex classifier known as a boosted classifier. Chain a bunch of weak classifiers together into a more complex classifier known as a boosted classifier. Create a cascade of boosted classifiers. Create a cascade of boosted classifiers. The image contains a face if it passes all classifiers. The image contains a face if it passes all classifiers.

8 Face Detection Program The Face Detection program is implemented using the OpenCV library. The Face Detection program is implemented using the OpenCV library. Program that processes images from a camera in real- time and then detects if any face objects are present in that image. Program that processes images from a camera in real- time and then detects if any face objects are present in that image. Pass the classifier location Pass the classifier location Pass the input type Pass the input type Convert input image from colour to a greyscale image and then resize it to a smaller image. Convert input image from colour to a greyscale image and then resize it to a smaller image. Check the image for face objects. Use “cvHaarDetectObjects”. Check the image for face objects. Use “cvHaarDetectObjects”.

9 Face Detection Program Camera Implementation Camera Implementation Testing Testing Tested with different face images. Tested with different face images. Tested with non-face images. Tested with non-face images. Tested with different objects in front of camera; faces and non-faces. Tested with different objects in front of camera; faces and non-faces. Improvements Improvements Changed camera settings. Changed camera settings.

10 Face Detection Results The end result of face detection. The program worked every time. The end result of face detection. The program worked every time.

11 Authentication Authentication System Authentication System The process of authenticating a user. The process of authenticating a user. Integrating this process with a Biometric system. Integrating this process with a Biometric system. Authentication System Development Authentication System Development Create a basic authentication system based on file IO. Create a basic authentication system based on file IO. Implement this system with face detection and face recognition. Implement this system with face detection and face recognition.

12 Authentication and PAM PAM (Pluggable Authentication Module) PAM (Pluggable Authentication Module) Assimilates multiple low-level authentication systems into high-level applications. Assimilates multiple low-level authentication systems into high-level applications. PAM development PAM development Edit PAM configuration for the login and screensaver applications. Edit PAM configuration for the login and screensaver applications. Create authentication modules for the login and screensaver applications. Create authentication modules for the login and screensaver applications.

13 Authentication and PAM Login Authentication Module Login Authentication Module The module reads a name from a file and attempts to log that user on. The module reads a name from a file and attempts to log that user on. Authentication fails if there is no name or the name is not a user name. Authentication fails if there is no name or the name is not a user name. Screensaver Authentication Module Screensaver Authentication Module The module reads a name from a file and if that name is the same as the current user then it authenticates the application. The module reads a name from a file and if that name is the same as the current user then it authenticates the application.

14 Face Detection Authentication System Integrating Face Detection Program with the Authentication System Integrating Face Detection Program with the Authentication System Face Detection program changed so it writes a default user name to a file every time a face is detected. Face Detection program changed so it writes a default user name to a file every time a face is detected. Integrating Face Detection Program with the Start-up protocol Integrating Face Detection Program with the Start-up protocol Included Face Detection program in a run-level 5 script. Included Face Detection program in a run-level 5 script.

15 Face Detection Authentication System Results Testing Testing Ran the system for a few hours. Ran the system for a few hours. Result Result When a face is detected the PAM modules read in the default user name and use it in authentication. Authentication works with the Face Detection Program. When a face is detected the PAM modules read in the default user name and use it in authentication. Authentication works with the Face Detection Program.

16 Face Recognition Examination of facial features in an image, recognising those features and matching them to one of the many faces in the database Examination of facial features in an image, recognising those features and matching them to one of the many faces in the database PCA (Principal Component Analysis) method of face recognition is used on the input image from the camera. PCA (Principal Component Analysis) method of face recognition is used on the input image from the camera.

17 Face Recognition and PCA What is PCA? What is PCA? The process of extracting the most relevant information contained in a face and then building a computational model that best describes it. The process of extracting the most relevant information contained in a face and then building a computational model that best describes it. Why use PCA? Why use PCA? Process speed Process speed Time limitations Time limitations Accuracy Accuracy

18 Theory of PCA Eigenvectors or Eigenfaces are obtained by training a set of face images. Eigenvectors or Eigenfaces are obtained by training a set of face images. These Eigenvectors represent a basis of an Eigenspace in which every face is projected on. These Eigenvectors represent a basis of an Eigenspace in which every face is projected on. Recognition is performed by comparing the location of a face in the Eigenspace with the location of known users. Recognition is performed by comparing the location of a face in the Eigenspace with the location of known users.

19 PCA Implementation Implementation using OpenCV Implementation using OpenCV Create an Eigenspace using a set of training faces. Create an Eigenspace using a set of training faces. Calculate the location of each face in the Eigenspace. Calculate the location of each face in the Eigenspace. Calculate the location of the input image in the Eigenspace. Calculate the location of the input image in the Eigenspace. Calculate the distance between the input image and every other face in the training set. Calculate the distance between the input image and every other face in the training set. If the distance is under a certain threshold than print that user’s name to an output file. If the distance is under a certain threshold than print that user’s name to an output file.

20 New User Utility Prompts for a user name Prompts for a user name Creates a user profile under that name Creates a user profile under that name Capture image from camera of the new user Capture image from camera of the new user Save the new user image into the database of user faces Save the new user image into the database of user faces Store new user name in a text file for integration with face recognition Store new user name in a text file for integration with face recognition

21 Vision-Based Biometric Authentication System Reads user names from a file. Reads user names from a file. Loads corresponding face images. Loads corresponding face images. Prepare all images for face analysis. Prepare all images for face analysis. Calculates Eigenvectors using these face images. Calculates Eigenvectors using these face images. Compares input image with the faces in the user database. Compares input image with the faces in the user database. If an input face is very similar to a user face then that user is authenticated. If an input face is very similar to a user face then that user is authenticated.

22 Conclusion What I’ve learned What I’ve learned Improved knowledge of Linux, C programming and writing scripts. Improved knowledge of Linux, C programming and writing scripts. Improved knowledge of image processing techniques; especially in the field of biometrics. Improved knowledge of image processing techniques; especially in the field of biometrics. What I’ve completed What I’ve completed A fully functional vision-based biometric authentication system. A fully functional vision-based biometric authentication system.

23 Questions

24 Thank you, Goodbye!


Download ppt "Vision-Based Biometric Authentication System by Padraic o hIarnain Final Year Project Presentation."

Similar presentations


Ads by Google