Welcome back to Clearview blog! Here you’ll find regular articles about the latest in machine vision, including the latest breakthroughs in cutting-edge technology, technical theories, and insightful discussions on all things related to machine vision.
Last time, we introduced Optical Character Recognition (OCR) and its history over the last 50 years, as well as a few fundamental considerations and contexts for modern OCR applications.
In this blog, we’ll introduce and explore the String Reader Tool from Matrox Imaging.
What is Optical Character Recognition (OCR)?
Briefly before we begin, let’s recap the topic.
- OCR is a long-used machine vision technology that enables machines to recognise numeric and text characters from images. It requires a machine vision camera and computer running image processing software.
- ANPR (Automatic Number Plate Recognition) was one of the first major OCR projects developed in the late 1970s for recognising car license plates.
- Considerations for OCR include issues with CIJ printing and font recognition.
- Traditional OCR methods involve pre-processing steps, while deep learning OCR can excel at the task quickly, however ultimately it will be robust as the data set it is trained on.
- Deep learning OCR requires a robust training set and handles different font types.
- Consumer OCR software on smartphones is not suitable for industrial environments.
- Industrial OCR systems are robust, suited for industrial settings, and can process large volumes of data quickly.
Choosing the Right Software Tools for OCR
In lots of machine vision topics, we like to discern between doing things the ‘DIY’ way, and doing them the ‘packaged’ way, often by using all-in-one systems to enhance the process of setting up your vision application. For example, in our blog on 3D profiling, we discuss the possibilities of setting up and calibrating your own system using individual cameras, versus purchasing a packaged 3D profiling camera. The reason we like to do this is that both methods are usually worth talking about, as there are pros and cons that come with either decision.
OCR, however, is a little different. As we covered last time, it is a long and storied technology within machine vision, and so it doesn’t really make sense to talk about opting for the traditional route. Here’s why.
Why traditional OCR isn’t worth it anymore
At the turn of the century people were using some of the first commercial image processing software tools for computers, and this included OCR. Whilst at the time these programmes represented an incredible advancement in commercial machine vision technology, looking back on them from where we are now paints a different picture.
In this process, the first step was to set up a new font for the system. This meant defining every possible character that the vision system would be imaging, which was usually A-Z, a-z, 0-9, and any relevant punctuation and symbols. A box had to be drawn around each character, and specific parameters had to be defined for the system.
Defining exact parameters for each character.
Even once this painstaking task was completed, there were still lots of errors and kinks that would need to be ironed out.
Even though setting up an OCR system from scratch was worth it in the long run, it caused multiple headaches – and in today’s world, opting to use one of these older programmes would considerably delay your project given the other options out there.
We think in today’s world, there are three really good options for OCR: String Reader, SureDot, and Deep Learning.
Let’s dive a little deeper into String Reader.
String Reader
The String Reader tool is based on a sophisticated technique that utilises the geometric features of characters to quickly locate and read text. It thrives with characters comprised of solid lines in images where these characters are well separated from the background and from one another. The tool can also handle text strings with a known or unknown number of evenly or proportionally spaced characters.
It accommodates changes in character angle with respect to the string, aspect ratio, scale, and skew, as well as contrast reversal. Strings can be located across multiple lines and at a slight angle. The tool reads from multiple pre-defined (TrueType and Postscript) or user-defined Latin-based fonts. Also included are ready-made Latin-based unified contexts for automatic number plate recognition (ANPR) and machine print.
In addition to this, strings can be subject to user-defined constraints, overall and at specific character positions, to further increase recognition rates. The tool is designed for ease-of-use and includes String Expert, a utility to help fine-tune settings and troubleshoot poor results.
How to Use String Reader
String Reader is offered as a tool within Matrox Imaging Library (MIL) X and Design Assistant X machine vision software packages.
MIL X
MIL X is a comprehensive suite of software tools for the development of machine vision, image analysis, and medical imaging applications. It provides a range of tools that cover the entire process, from assessing application feasibility to prototyping, development, and deployment.
It’s a software development kit (SDK) that offers interactive software and programming functions for image capture, processing, analysis, annotation, display, and archiving. These tools are specifically designed to boost productivity, reducing the time and effort required to bring solutions to market.
Design Assistant X
Post navigation