The OCR function works different between two similar images

Hello there.
I am attaching a quite simple two similar images. They both contain the same text. Why MATLAB recognizes one correctly but not the other?
I am trying this code,
ocrResults = ocr(~im2bw(imread('test1.jpg')),'TextLayout','Block')
ocrResults = ocr(~im2bw(imread('test2.jpg')),'TextLayout','Block')
Best, Ahmad

Answers (2)

You should not be trusting that im2bw will isolate the text when you have multiple background colors. im2bw chooses the threshold automatically and might well decide to threshold between the two different backgrounds.

1 Comment

Thanks Walter for the answer.
I think in this current example, they both work regardless if the im2bw function is included or not. However, does this function has alternative? I want to optimize the code if possible.
Thanks!

Sign in to comment.

It's stated in the OCR documentation that the OCR is not reliable if the characters have less than 20 lines of data, which yours do not. Use a higher resolution image.

Products

Release

R2022a

Tags

Asked:

on 23 Jul 2022

Answered:

on 25 Jul 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!