FACE VERIFICATION SYSTEM IN MOBILE DEVICES BY USING COGNITIVE SERVICES

Biometric systems enable people to distinguish between physical and behavioral characteristics. Face recognition systems, a type of biometric systems, use peoples’ facial features to recognize them. The aim of this study is to perform face recognition and verification system that can run on mobile devices. The developed application is based on comparing the faces in two photographs. The user uploads two photos to the system, the system identifies the faces in these photos and performs authentication between the two faces. As a result, the system gives the output that the two faces in the photo belong to the same or different persons. It provides a security measure thanks to the face identification and verification feature included in this application. This application can be integrated into various applications and used in systems such as user login.


Introduction
Facial recognition technology is used in many different areas today [1][2][3].The use of the system as an input method, detection of criminals can be given as an example of some of these areas of use [4,5].According to the researchers, the face recognition method is seen as a more natural and effective biometric method than the identification methods such as iris, fingerprint [6].Facial recognition technology provides a variety of output for the inputs that are trained as a result of the system being trained.The success of the system depends on the most effective way of learning, and on the success of various processes applied to inputs [7].Face recognition is based on calculating the ratio of the face to be recognized to the faces in the database.This is accomplished by finding that the queried photo matches more closely with the photos in the database [8].

Materials and Method
Mobile applications are software programs developed for mobile devices such as smartphones and tablets [9,10].In this study, Android Studio application development platform and Microsoft Cognitive Services were used.Android Studio is a mobile application development environment that provides features such as code editing, debugging, and performance tracking, enabling applications to run on any Android device [11].Microsoft Cognitive Services are collection of machine learning algorithm which helps in solving various problems in the field of artificial intelligence, like language processing, machine learning search, computer vision etc. Basically Cognitive Services are collection of APIs, SDKs and services designed for developers.These services can make the applications more intelligent and more interactive.The aim of these services is to supply interesting and well -off computing experience.The available APIs of Microsoft Cognitive Services are Language API, Vision API, Speech API, Knowledge API , etc .Each API performs different functions such as language API identifies and discovers the requirements of the user , vision API examines the images an d videos for useful information , speech API helps in identifying the speaker and knowledge API captures research from scientific account.By using these APIs developers can add the intelligent features like understanding face detection, speech detection, vision detection and recognition, emotion detection and video detection.The characteristics which distinguish Microsoft Cognitive Services from other services are multiple face tracking in less time, more accuracy in face recognition, presence of emotions with their types and percentages , better APIs.Microsoft Cognitive Service APIs are used in various field s like enhancing the security, expressing farcical moments, engaging customers via chat, etc. [12] Microsoft Cognitive Services helps developers create intelligent applications.It provides many features for developers such as speech and image recognition, face and emotion detection [13].This API performs functions such as detecting face attributes and recognizing the face.It basically helps in detecting, analyzing and organizing in given images.This API detects human face with high precision.It allows us to tag faces in any given photo.Alternatively, face detection allows extraction of face attributes like gender, age, facial hair, glasses, head pose etc.This API provides four face recognition func tions: face verification, finding similar faces, face grouping, and identification.This API helps in adding super cool intelligence while building the applications [14,15].The face validation API provided in Microsoft Cognitive Services offers the ability to control the likelihood that people identified in different photos are the same person.This API returns a confidence score about the likelihood of two faces belonging to a single person.There are a total of 30,000 process limits and a maximum of 20 process limits per minute [16].The implementation was developed using the Microsoft Cognitive face verification API, which includes the ability to detect, identify, analyse, organize, and tag faces in photos.
Genymotion is an Android emulator with a set of features for interacting with a virtual Android environment.With Genymotion, Android applications can be developed, run and tested with a wide variety of virtual devices [17].The app was tested by creating an Android device in the Genymotion environment.In this study, Android application in Java language was developed in Android Studio 3.0.1 environment.The working principle of the developed application is described below: 1.The captured image from the camera or the selected image from the gallery is uploaded to the application as the 1st photo 2. The system detects the faces in the 1st photo after the 1st photo is uploaded.3. The faces detected in the photo are listed on the side of the photo.4. The captured image from the camera or the selected image from the gallery is uploaded to the application, 1st photo 5.The system detects the faces in the 2nd photo after the 2nd photo is uploaded.6.The faces detected in the photo are listed on the side of the photo.7. Make a selection from the recognized faces in photo 1 and photo 2 and click on the "Verify" button.8.The system detects whether the selected two faces are the same person and notifies the user.9.The similarity rate of the selected faces is shown as a value between 0 and 100.

Experimental Results
The developed application consists of two parts.These sections are the section on application and about.In the application section, there is a button that directs the division, which allows the face identification and verification process to be performed.The About section contains information about the application.Fig. 1 shows a screenshot of the application area.When you click on the Start button, the section that performs the face identification and verification process opens.In Fig. 2, this section has been given a screenshot.In this section, two images should be selected for identification and verification.There is a button showing the records of the transactions made.

Fig. 2. Image Selection Phase
In the realization of the face recognition process, two sample photographs were used.These photographs are shown in Fig. 3.In the application, click the select image button and the 1st photo shown in Fig. 3 is selected.The system identifies the faces and lists the detected faces in thumbnail.The list contains the ability to scroll down.In addition, the number of faces detected in the first photo is given.A visual representation of this application is given in Fig. 4.After image selection process is done as Image 0, image selection process is done as Image 1.For this, click the Select Image button in the lower part.The second photo shown in Fig. 3 is selected and the identified faces are listed in thumbnail.The number of faces detected in the bottom section is given to the user.A visual representation of this application is given in Fig. 5.After selecting images as Image 0 and Image 1, the faces to be compared are selected from the listed face images beside both images.When the Verify button is clicked, the user is informed numerically whether the selected two faces belong to the same person.In Fig. 5, two face selections were made and the result shown in Fig. 6 is obtained when the confirm button is clicked.In Fig. 6, it is seen that there are different people because the similarity rate of the two faces selected is 17%.To show the result of the validation process being performed on the same person, the selected face from Image 0 has been replaced with a different person face from Image 1.When the validation process is applied, it is given that the faces selected in Image 0 and Image 1 belong to the same person because the similarity ratio is 71%.A screenshot of this application is shown in Fig. 7. Records of all transactions made are kept.A list of all the actions performed when clicking the Show Record button is visible.In this section where the records are displayed, information about resizing of two images uploaded to the system, successful detection of the images, the number of faces detected in the visuals, request for sending the faces to be verified to the server, the status of the returned response and the result of the response appear.Fig. 8 shows a screenshot of the system register with two requests.The first response was successful and the result was negative.The second response was successful and the result was positive.In practice, each process takes about 3 seconds, such as uploading photos to the system, detecting and verifying faces in uploaded photos because Microsoft Cognitive Services is used in the process of performing transactions.An information screen informing the user is developed as shown in Fig. 9.The determination of whether the system is stable or not has been done on photographs containing more than one person.As shown in Fig. 10, a  The result of this test is given in Table 1.The rows represent the faces on the upper photo in Fig. 10 and the columns represent the faces on the lower.Similarity ratios of 25% comparisons were obtained.When the results obtained were observed, it was seen that all persons were correctly verified.When the results obtained were observed, the highest similarity rate was obtained as 87% for persons A and B. Despite being the same person in both photographs, the similarity rate for D person was 80%.Some of the reasons for the similarity ratio being different are the effect of the person's posing position and light.

Conclusion
The Cognitive Services are very up -and -coming, assuring and sum of these services are already being used in various application areas.The dev elopers use these services to improve the applications by adding some new, rich and intelligent features.These services basically aim at providing more personal and rich computing experiences for users as well as developers.The range of application areas of these cognitive services is less but it can be expanded by using their services along with other modern services and techniques.In this work, an Android application was developed that includes face identification and authentication methods that can work on mobile devices.The developed application provides a security measure through its face identification and authentication feature.This application can be integrated into various applications and used in systems such as user login.User authentication can be performed by scanning the user's face without the need for password entry.

Fig. 10 .
test for face detection and verification of persons labelled A, B, C, D, E was performed.This test involves comparing each face in the photo with each other.Face detection and verification of persons

Table 1 .
Similarity Rates after Verification Process