A great idea:
Conventional name tags are widely used in many events like at home gathering, public gallery shows, business events, etc. An un-attending personnel AI security system with just cameras would be a great value providing:
- Friendly environment that helps guests or attendees relax and enjoy the event safely
- Record guest names and take snapshots of their name tags at distance
- The name tag AI security recording system can be setup at multiple rooms or places such as at gallery shows. Data later can be combined and analyzed for multiple purposes such as security, frequent visits, popularity trend, etc.
Challenges:
Automatically taking the guest name from a name tag at distance, however, encounters few challenges. The name tag orientations related to the camera view are not consistent and not always posed as straight front view. Mostly the name tags are posed at a combination of perspective view and with some degrees of rotation as well. The texts also need to be extracted correctly after the name tag image is magically aligned using image processing, detected by text detector and recognized by an OCR model.
Both of the great application idea and the technical challenges gave me a motivation to research and to come up with a solution. This was how I decided to make my project using Intel OpenVINO toolkits.
How it works:
For demonstrating how this project works, I prepared some name tags, used an FHD webcam and my development Windows 10, i7 laptop with Intel OpenVINO installed. This project was developed in Python; therefore, the Python 3.7 and additional required modules were installed. They are specified in the requirement.txt in the code structure.
My setup is simply to mount a webcam on a tripod and to connect it to my laptop. Using a name tag holder to affix it to my shirt and exchange the test name tags for each turn. The guidelines are to have half body image and name tag text font of Arial with text size of 26 or 28. With the use of webcam, the distance from camera to a person is up to 5ft.
In this demo, a console is used to give viewer a guide to replicate the steps when evaluate this project. For running this project, the OpenVINO environment variables need to be initialized once. After the completion of the initialization, the batch file that launches the project including the command line setting can be repeated for many times when needed.
I started walking and stopping in front of camera for a short time and moving on. The name tag was swapped and repeated the posing process for number of test name tags. For the public application, a sign of “Auto check-in camera, smile. Thank you.” can be placed at the camera location.
The OCR name tag reader localized the text image areas and decode them using the text recognition model inference engine. It finally stored the labeled images and extracted names for security record. Additional actions can optionally be triggered at each time such as turning a green light on or playing sound to inform a person to proceed at an entrance.
Please see the videos below for the live demonstration of the OCR Name Tag Reader and the test demonstration using video containing test name tags.
Comments