A guide to OCR with Tesseract, OpenCV and Python
nanonets.com
A guide to OCR with Tesseract, OpenCV and Python
1–10 of 14 posts
Re: A guide to OCR with Tesseract, OpenCV and Python
#2Woah !! That is insanely high priced.
Re: A guide to OCR with Tesseract, OpenCV and Python
#3Re: A guide to OCR with Tesseract, OpenCV and Python
#4However, the article is also an advertisement for nanonets, so they also chose to highlight the complexity side a bit before putting themselves forward.
As someone who hadn't heard of them before, this could be written in the title. They seem to lease (I prefer that term) an API to do OCR with a couple rules and templates depending on your use case.
I am not entirely sure what they expect with this? Maybe SEO or to hijack search results?
Re: A guide to OCR with Tesseract, OpenCV and Python
#5Re: A guide to OCR with Tesseract, OpenCV and Python
#6Re: A guide to OCR with Tesseract, OpenCV and Python
#7Re: A guide to OCR with Tesseract, OpenCV and Python
#8The character whitelist/blacklist functionality doesn't work for the default LSTM-based engine.
Regarding preprocessing, upscaling the image size can have a dramatic impact on performance.
IIRC tessdata_fast (which the article mentions) is the default that ships with most prebuilt versions of Tesseract, so you probably don't need to mess with that. In my use case, I found that tessdata_best actually performed slightly worse in terms of accuracy.
Re: A guide to OCR with Tesseract, OpenCV and Python
#9Automatically finding specific boxes/fields is quite interesting. I maintain a Python package[1] that processes invoices using a template/regex-based approach. It works alright, but eventually runs into some limitations. The box-model from the article could push it further. 1: https://github.com/invoice-x/invoice2data
I heavily leaned on AWS Textract for the bounding boxes though, as the kind of data I had to extract didn't have very well defined fields. I used some of the techniques described in this link [0] particularly around table extraction.
I really like how you define the fields in YAML though, I defined mine in code and it ended up being a bit messy.
[0]: https://datascience.blog.wzb.eu/2017/02/16/data-mining-ocr-p...
Re: A guide to OCR with Tesseract, OpenCV and Python
#10The title is a bit misleading (and doesn't match the linked article). This isn't about building an OCR engine, it's about using an existing one.