Recognizing Characters

This code snippet shows how to load a font file, perform a default character recognition operation and perform a character recognition operation using a class filter.

C++

#include <eVision/EasyOcr/EasyOCR/EOCR.h>
using namespace eVision;
// Image constructor
EImageBW8 srcImage;
// EOCR constructor
EOCR ocr;
// Load the font file
ocr.Load("myFont.ocr");
// ...
// Recognize the characters
std::string text = ocr.Recognize(&srcImage, 10, EOCRClass_AllClasses);
// Alternatively
// Define the character filter (2 letters and 3 digits)
std::vector<uint32_t> charFilter;
charFilter.push_back(EOCRClass_UpperCase);
charFilter.push_back(EOCRClass_UpperCase);
charFilter.push_back(EOCRClass_Digit);
charFilter.push_back(EOCRClass_Digit);
charFilter.push_back(EOCRClass_Digit);
// Recognize the characters with class filtering
text = ocr.Recognize(&srcImage, 10, charFilter);

C#

using eVision;
// Image constructor
EImageBW8 srcImage = new EImageBW8();
// EOCR constructor
EOCR ocr = new EOCR();
// Load the font file
ocr.Load("myFont.ocr");
// ...
// Recognize the characters
string text = ocr.Recognize(srcImage, 10, (int)EOCRClass.AllClasses);
// Alternatively
// Define the character filter (2 letters and 3 digits)
uint[] charFilter = new uint[5];
charFilter[0] = (uint)EOCRClass.UpperCase;
charFilter[1] = (uint)EOCRClass.UpperCase;
charFilter[2] = (uint)EOCRClass.Digit;
charFilter[3] = (uint)EOCRClass.Digit;
charFilter[4] = (uint)EOCRClass.Digit;
// Recognize the characters with class filtering
text = ocr.Recognize(srcImage, 10, charFilter);

Python

import eVision
# Image constructor
src_image = eVision.EImageBW8()
# EOCR constructor
ocr = eVision.EOCR()
# Load the font file
ocr.Load("myFont.ocr")
# ...
# Recognize the characters
text = ocr.Recognize(src_image, 10, eVision.EOCRClass.AllClasses)
# Alternatively
# Define the character filter (2 letters and 3 digits)
char_filters = []
char_filters.append(eVision.EOCRClass.UpperCase)
char_filters.append(eVision.EOCRClass.UpperCase)
char_filters.append(eVision.EOCRClass.Digit)
char_filters.append(eVision.EOCRClass.Digit)
char_filters.append(eVision.EOCRClass.Digit)
# Recognize the characters with class filtering
text = ocr.Recognize(src_image, 10, char_filters)