In this code pattern, learn how to use optical character recognition (OCR) and the PowerAI Vision object recognition service to identify and read license plates.
Using PowerAI Vision and the Custom Inference Scripts, you can build an object detection model to identify license plates from images of cars. The models in the PowerAI Vision object recognition service can identify portions of images that represent a license plate. Then, the post custom inference script can crop this area and use open source to perform OCR on the text to return the license plate. This use case is ideal for automated gate access control in areas such as workplaces, apartment complexes, or mall parking lots.
When you have completed this code pattern, you understand how to:
- Build an object detection model
- Trigger a post-processing script when specific objects are detected
- Use Python
Opencvlibraries to prepare an image for OCR
- Adjust Tesseract OCR to detect specific fonts
- The user uploads an image of a car to PowerAI Vision, either through the UI or an API REST call.
- The PowerAI model recognizes objects in the image and indicates where the license plate is located in the image.
- The PowerAI Vision post-processing script sends the cropped license plate image to the custom OCR server.
- A Python script loads the license plate image through
opencvas a NumPy array and uses several processing algorithms to remove background noise and extract the plate digits.
- Tesseract OCR is used on the processed image.
- The user receives a JSON object with the plate text through terminal logs.
Find the detailed steps for this pattern in the readme file. The steps show you how to:
- Deploy a Kubernetes cluster.
- Upload training images to PowerAI Vision.
- Train and deploy a model in PowerAI Vision.
- Clone the repository.
- Deploy the OCR server.