Skip to main content

Integration & IT Modernization

Build Employee Face Detection Service with Microsoft Azure Cognitive Services in 3 Steps

Data Business Computer People

What is Face Detection:

Face Detection uses biometrics to map our facial features from a live visual or photograph. Microsoft Azure has introduced an enterprise business solution that even a developer with zero knowledge in AI can implement it.

Microsoft Face API is a generic solution which can be used for many images recognitions purpose. Here I have used the solution for employee face recognition.

Use Case:

Every organization will collect the employee image along with the personal details as part of the onboarding process. Here we are going to use the data as master data for our application. When an employee enters the office or inside the ODC premises. Currently, we are controlling his access through an access card or fingerprint sensor with manual intervention. Instead, we are going to control the same with image recognition.

When the person enters the office premises or ODC, we can have an image capturing sensor device like Azure Kinect that will capture the photo and send it to our application. This will intern try to match the person image with employee master data, which we have. If our application finds any match, we will recognize the person as an authorized user. If it doesn’t match, we will provide denial of access.

Purpose of the approach:

As a preventive measure against the spread of COVID-19, the government has announced to exempt from the biometric attendance. Currently, the fingerprint sensor is a widely used biometric to mark the attendance of the employees. It is understood, the most common method of transmission of the virus seems to be through infected surfaces. Therefore, it is desirable to avoid touching surfaces that might be affected due to human touch. Thus, the idea includes a substitute answer for the biometric fingerprint attendance system.

Implementation:

Microsoft Azure provides several Rest APIs for facial recognition.

This documentation refers to the list of APIs provided by Microsoft.

Microsoft Documentation for Reference:

https://docs.microsoft.com/en-us/azure/cognitive-services/face/

The API is optimized according to our use case in which we are using FACE API to grant access to the employees entering the premises.

Prerequisites:

  • Create a Microsoft Azure account.
  • Navigate to https://azure.microsoft.com/en-in/services/cognitive-services/face/
  • Search for Microsoft Cognitive Services Face and create a resource under the face.
  • Once the resource is created, it will provide a subscription key, an endpoint for the API made.
  • Store the subscription key, which needs to be passed along with the request while calling the API.

createAccountPage

 

 

createResourcePage

 

subscriptionkeys

 

Service Details:

I have built this as a generic solution for detecting the person of the organization. The first step would be registering an organization with our application. Since I have not hosted this application anywhere, the domain name will remain as a localhost.

1.To Register, the organization with our application

POST:  http://localhost:8080/org/register

This is a generic service that will be used to register the organization with our application and necessary organization details, which we will be stored in our database for future reference.

RegisterOrg

2.To Register the employee

POST: http://localhost:8080/emp/register

The above service is used during onboarding, where we will register an employee with the organization. Along with the necessary details, we will also get the employee photograph for access creation. This service will generate a unique personId & faceId for the corresponding employee, and we will save those along with the employee details in our database.

RegisterEmployee

3.Face Detection

POST: http://localhost:8080/emp/detect

This service will capture the image of the person entering the premises, which compares with the employee repository. If there is any match, that employee will be permitted inside the premises. However, if there is no match, then the service will throw an error message, which means the person who is trying to enter is not allowed inside the premises.

DetectEmployeeSuccess

 

DetectEmployeefailure

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Deepika Muralidharan

Deepika Muralidharan works as Technical Consultant at Perficient

More from this Author

Follow Us