MACHINE LEARNING AND ITS CAPABILITIES: EXAMPLE OF AUTOMATED ATTENDANCE MANAGEMENT SYSTEM USING FACIAL RECOGNITION.

Machine learning is a field of application in computer science that helps the computers perform tasks by learning the environment, input and output parameters without being explicitly programmed for the task. It is the study and application of algorithms that can learn from observations and make accurate predictions on given datasets – such algorithms can work without having to follow the static, user driven program instructions by making data-driven predictions or self-learning decisions. Face recognition is a biometric method of identifying an individual by comparing live capture or with the digital data of the person stored in the system. It is considered as an application of machine learning. The role of face recognition is growing rapidly to cater to Human-Computer Interaction (HCI) [15] in various domains. The face recognition problem is addressed in a geometric way, which looks at important and distinguishing features, or photometric way, which is a statistical approach that converts an image into values and compares the values with templates to eliminate outliers.


INTRODUCTION
Facial recognition activity is a complex activity which depends on various factors like skin colour [16], lighting conditions [18], image source [20], multiple facial expressions [18], angle of capture [19], head count [21] etc. In the proposed work, we have considered only few of the factors namely skin colour [16], lighting conditions [18], head count [21] and image source [20]. The real-world applications are expected to deal with huge data corpus, which results in complex operations in terms of feature extraction and processing. To address some these issues, we are aiming to use one of the dimensionality reduction algorithm called Principal Component Analysis (PCA) [10]. We are intended to make an analysis towards an application automated attendance management using face recognition. The basic function for the face recognition system is to compare the face of a person which is to be recognized with the faces already trained and it has to recognize the best matching face as output even at varied lightening conditions, viewing conditions and facial expressions. Use of face recognition for the purpose of attendance marking is an efficient and time saving application.

OBJECTIVE
The main objective of this paper is to present a model of an attendance management system using facial recognition which can show the capability of machine learning to the present world. It is aimed to reduce the redundancy and the time consumed by the conventional attendance system. The project uses face recognition through PCA [10] to identify the students in the picture taken by the teacher. The teacher has to just take the picture of the class and store in the database and the system does the rest of the job. The system is also designed to export the processed data into desired reports.

EXISTING SYSTEM
The attendance recording is a time-consuming activity and it also affects the quality of the classwork done in the classes. Also, it poses quite a challenge to the teachers to maintain a correct record of the attendance data of the students. The existing system also doesn't reduce the redundancy that is usually associated with data. The present system totally lacks the means to avoid the redundancy and the confusion that usually creeps into the data leading to ambiguity. The teachers are solely responsible for the data. Also, the factor of human error always tends to affect the credibility of the system as discussed in an Attendance Monitoring System Using Biometrics Authentication by Seema Rao [17].

PROPOSED SYSTEM
In our proposed work, we are planning to draft a system namely automated attendance system using face recognition mechanism in the context of grouped images. The proposed application has a database which stores the pictures of the students taken by the teacher through smart phone. The system then runs an algorithm that extracts the faces using Viola Jones object detection framework as proposed by Viola et al [5] and sends them to the testing database. Then the system does the facial recognition on the faces using training and testing databases and then generates a report that can be used by the stakeholders. The architecture of the system demands modules to be categorised into Face region extraction, Feature extraction, Training and Image extraction.

DESIGN AND IMPLEMENTATION:
The real-world applications are expected to deal with huge data corpus, which results in complex operations in terms of feature extraction and processing. To address some of the issues involved, we are aiming to use one of the dimensionality reduction algorithm called Principal Component Analysis (PCA). We are intended to make an analysis towards an application automated attendance management using face recognition. In the proposed work, we have considered only few of the factors namely skin colour, lighting conditions, head count and image source. In our proposed work, we are planning to explore an application of face recognition which is automated attendance. The proposed application has a database which stores the pictures of the students taken by the teacher through smart phone. The system then runs algorithm that extracts the faces as proposed by Jones et al [10] and sends them to the testing database. Then the system does the facial recognition on the faces using training and testing databases and then generates a report that can be used by the stakeholders. The proposed work is designated to have 4 models, to implement the same we have used the following experimental setup.
The project is implemented in four modules:  Face region extraction Module  Feature extraction Module  Training Module  Image extraction Module

FACE REGION EXTRACTION MODULE
The extraction of the faces plays a major part in the project as the faces if accurately extracted will yield better results in the facial recognition part. For this we have used the Viola-Jones algorithm. Once the faces are extracted the faces are stored in the testing folder that is then used for facial recognition. The working of the algorithm is explained in the figure 2. The Viola-Jones object detection framework proposed by Jones et al [5] is the first object detection framework to provide accurate object detection rates in realtime proposed in 2001 by Paul Viola and Michael Jones.
Although it can be trained to detect a variety of objects, it was motivated strongly by the problem of face detection. The proposal suggested by also specifies it to be robust, real time face detection algorithm. The working of the algorithm is explained in the figure.
The input image is accessed to extract Haar Features which are the similar properties that all human faces share. A few properties common to human faces: -The region around the eyes are darker than the upper cheek region.
-The nose bridge region is brighter than the eye region. The Haar Features extracted are then dimensionally reduced using the method proposed by Pearson through summed area table [9] which is a data structure and algorithm for quickly generating the sum of values in a rectangular grid.
In the image processing domain, it is known as an integral image.
The face detection framework by default has a learning algorithm called AdaBoost [11] that can select the best features to train classifiers that use them. This algorithm then constructs a "strong" classifier as a linear combination of simple weak classifiers. Then a cascade of more complex classifiers achieves even accurate detection rates. Cascading strong classifiers are arranged in an order of complexity, where each successive classifier is trained only on those samples which pass through the preceding classifiers.
The Teacher is the user of the system. He/she should take the pictures of the class and then upload them to the system which then processed. The source of image can be anything. The faces after extraction are sent to testing database.

FEATURE EXTRACTION MODULE:
In Proposed work the features of the input image are extracted using Principal Component Analysis (PCA) as Eigenvectors of covariance matrix C (or so-called "Eigen faces") can be recovered from L's Eigen vectors. Eigenf = A1 * L1eigvec; % A: centered image vectors.

TRAINING MODULE
There is a dataset of images that is used to train the system and further aid it in facial recognition. The training database uses multiple instances of the person to detect the face. The table gives the information about images used in training. The images are then sent to the PCA [10] algorithm that then extracts the features of the image and then stores then in the form of 1D matrix.
The training and testing database are unique in nature. The training database is built by taking care of all the factors we have planned to analyse in the project. In the table above we have documented the various scales and the factors we have taken in account before preparing the database. The database is prepared beforehand and is under the control the database administrator. The training database has images as per the numbers specified by the table.

IMAGE EXTRACTION MODULE
First the input image is sent to the face detection algorithm that detects the faces and extracts them. Then these images are then being sent to PCA algorithm that extracts the features and then compares them with features of the training module and the matches are shown in the results.

SOFTWARE REQUIREMENTS
Programming: MATLAB R2015a Report Generation: Microsoft Excel OS: Windows XP and above, Linux-Ubuntu 14 and above, Debian 7.0 and above

HARDWARE REQUIREMENTS
Processor: Any Intel x86 processor Hard Disk: 3-4GB for installation RAM: 2 GB and above Smartphone or any Camera

RESULTS AND OBSERVATIONS
The system is trained by taking account of the only some of the factors that affect face recognition namely skin colour, head count, image source and lighting conditions. The system is trained by the images pertaining to each factor. The testing is also done by taking care the test cases cover the factors that we have taken as our assumptions. Both the testing and training sets are unique in nature. The training database is prepared manually beforehand.

Figure 9: Training Database
The training database is built by taking care of all the factors we have planned to analyse in the project. The image above shows the images stored in the database. We have documented the various scales and the factors we have taken in account before preparing the database. The database is prepared beforehand and is under the control the database administrator.

 Database(Testing):
The testing database is prepared by extracting the faces in the input image uploaded by the teacher. The images extracted are as per the scale specified in the training database to avoid any discrepancies in the feature extraction.  Figure 11:  Face Region Extraction:

Figure 12: Face Region Detection
The above image shows the faces that are detected by the face detection algorithm [5]. The red rectangles cover the faces detected by the system. The algorithm has size of the rectangle and various parameters specified beforehand.
 Face region extraction: The above image shows the faces that are detected by the face detection algorithm [5]. The faces are extracted and resized as per the scale specified in the training database. The images are extracted and stored in the database as per the path specified in the code.
 Image extraction results: The image extraction module then compares the images in the training and testing database and then displays the test image and the image it got matched with.
 Generate Excel sheet The image extraction compares the images and then exports the data to a report which can then be reviewed by the teacher.

TEST CASES
 Case A: Best case   The below table 5 documents the results as observed by the project in different conditions. The table also documents the detection and recognition rates in various lighting conditions and images sources.
The above table documents the results as observed by the project in different conditions. The table also documents the detection and recognition rates in various merge threshold values and images sources.

CONCLUSION:
A model of face recognition System PCA and implementation in MATLAB has been discussed. From the results, we can conclude that the proposed system shows better results if the number of faces in the test image faces are not tilted beyond a certain angle. Also, the automated attendance system is a smarter way for marking attendance. The proposed system also exports the data regarding the attendance to an excel sheet thus simplifying the process further for the stakeholders. As such many examples can be derived from the capabilities of machine learning which are driving the present computer generation.

SCOPE FOR FURTHER ENHACEMENTS:
First the system must be trained must extensively on cases like- Increased number of persons in the image  Presence of faces that have a tilt of 45 degrees and above  Images having faces with dark complexity  Use of Artificial Neural networks will definitely increase the accuracy of the system.  The system can be implemented as a commercial product in educational institutions.  The system can be further improved by adding dynamic recognition to its foray.