Hand hygiene monitor - Lemberg Solutions

Hand hygiene monitor

End-to-end development of a computer vision device for personnel hygiene control based on the OpenCV library and custom algorithms

The challenge

Our client is one of the leading agricultural corporations in Ukraine which specializes on full-cycle meat product manufacturing. 

To improve production safety, our client needed an automated system for employee hand hygiene control. We came up with an idea to create a computer vision enabled device that analyzes the quality of hand disinfection. 

Delivered value

We designed and developed a proof of concept device that leverages computer vision to analyze how well an employee has covered their hands with UV-reactive hand sanitizer.

The device outputs coverage quality in percent, determining whether the employee’s hands are sterilized enough to enter the safety area. 

The process

Our decision to use UV reactive hand sanitizer shaped the design of the device. This sanitizer is most visible under a UV lamp; any other light would damage the image contrast, tampering with the accuracy of the analysis. 

That’s why our device is a box made of opaque plastic. Its only opening is in the front, for inserting the hands. This prevents unnecessary light from entering. For the interior of the box, we had to find three key components:

  • Appropriate lights. We went with multiple UV diodes because they provide a narrower wavelength than other light sources and ensure even lighting. 
  • The right background. We covered the bottom of the interior with green felt. It serves as a chroma key and enables simple detection of hands in the video. 
  • A suitable camera. We chose the RPi Camera (G) with a fisheye lens because it’s compatible with our Raspberry Pi, has an angle of view wide enough to catch both hands, and comes with adjustable focus control. 

To develop the computer vision algorithm, our engineers used the OpenCV library and added several custom algorithms. Here’s a rough summary of how the recognition process goes: 

  • Our algorithm separates hands from the background and detects their contours. 
  • Then it checks that both hands are in the correct position (that they aren’t touching the device interior and aren’t overlapping). 
  • Finally, it analyzes sanitizer coverage: the areas of hands covered with sanitizer appear bright blue in the image. 

By calculating the ratio of blue-covered area to the total hand surface, our algorithm assesses the quality of hand disinfection.

Technologies
C++
Python
Qt
OpenCV
Raspberry Pi
Save case study in PDF
Hand hygiene monitor - Lemberg Solutions
Hand hygiene monitor - Lemberg Solutions
Hand hygiene monitor - Lemberg Solutions
Hand hygiene monitor - Lemberg Solutions
Hand hygiene monitor - Lemberg Solutions

How it works

Hand hygiene monitor - PDF Form - Lemberg Solutions
Download the case study to read it later