Extracting text inside a rectangle

Contents
[ ]

Aspose.OCR allows you to extract names, dates, numbers, and other blocks from certain areas of uniform images, such as ID cards, visas, driver’s licenses, applications, and so on. Regions can be provided manually or automatically detected using the getTextAreas method of AsposeOCR.

To extract text from one or more areas of an image, provide a list of Rectangle objects specifying the upper left corner and the width and height of the image area through setRecognitionAreas method of RecognitionSettings class.

AsposeOCR api = new AsposeOCR();
// Define image regions
ArrayList<Rectangle> regions = new ArrayList<Rectangle>();
regions.add(new Rectangle(231,101,430,42));
regions.add(new Rectangle(546,224,123,26));
// Specify recognition settings
RecognitionSettings recognitionSettings = new RecognitionSettings();
recognitionSettings.setAutoDenoising(true);
recognitionSettings.setRecognitionAreas(regions);
// Extract text from selected regions
RecognitionResult result = api.RecognizePage("source.png", recognitionSettings);
System.out.println("Name: " + result.recognitionAreasText.get(0));
System.out.println("Expiry: " + result.recognitionAreasText.get(1));

The text from each rectangle is returned in the recognitionAreasText property of the recognition results.

Live demo

Driver's license

Block Coordinates Extracted text
Name {X=231, Y=101, Width=430, Height=42} SAMPLE
AVERY JOSEPH
Expiry date {X=546, Y=224, Width=123, Height=26} 08/15/2022