Ask Your Question
0

Number plate recognition using tessract

asked 2018-09-27 02:42:26 -0600

aayushkt gravatar image

updated 2018-09-29 00:01:34 -0600

I am planning to perform ocr on Indian number plates.I used tessract 4.0 beta which uses LSTM engine for ocr. Although recognized characters are not coming out to be correct. I used cv2.Laplacian() while picking up images without blur and performed noise reduction using cv2.fastNlMeansDenoisingColored() on the image. For preprocessing I performed following steps

1)Sharpened image

2)performed otsu thresholding

3)Eliminated smaller noises/contours

4)Then inverted image

5)OCR using tesseract 4.0 --oem 1(Which uses lstm as detectio module )

Test images look like these.

Test image

Otsu thresholded image

After removing smaller contours

Detected output: OL 1CT 5079 (Which seems ok)

Can you please suggest any other preprocessing required to improve image(Reduce noise)?

Also is there a way to restrict special characters in tesseract?(Could not find it in latest version)

(ps. I am using python)

Thanks in advance

edit retag flag offensive close merge delete

Comments

You can perform dilation/erosion operation to highlight text. If you mean the Tesseract library you can put the special characters in a "black list" to avoid detecting them (I've used the JS version of Tesseract, I don't know what language are you using)

m93c gravatar imagem93c ( 2018-09-27 09:21:54 -0600 )edit

Did you take a look of openalpr. They use Tesseract as OCR backend.

yancey gravatar imageyancey ( 2018-09-27 10:22:10 -0600 )edit

1 answer

Sort by ยป oldest newest most voted
0

answered 2018-09-28 06:44:44 -0600

aayushkt gravatar image

updated 2018-09-28 06:45:52 -0600

I looked at openalpr but for my application tesseract fits better. Also i removed noise using thresholding and eliminating smaller contours.

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2018-09-27 02:42:26 -0600

Seen: 389 times

Last updated: Sep 29 '18