Live data from Hacker News

EasyOCR: Ready-to-use OCR with 40 languages

github.com

51–60 of 73 posts

Re: EasyOCR: Ready-to-use OCR with 40 languages

#51
post #44

Earlier quoted context omitted.

They're rendering Unicode without any markup for language variant.

No, these are completely different, standalone code points, not variant forms of the same code point. What's actually happening seems to be that the ch_tra model can recognize simplified too and output the corresponding traditional version if the character isn't in the traditional "alphabet"; it doesn't work so well in the other direction. Example recognizing a partial screenshot of https://chinese.stackexchange.com/…

This approach seems a bit weird to me. While I appreciate them separating the models of Traditional and Simplified Chinese, I think I might prefer them to be combined (perhaps even including Japanese Kanji), and instead provide a way for the user to specify which language or regional variant is expected so characters matching the expected variant are simply given a higher score.

Re: EasyOCR: Ready-to-use OCR with 40 languages

#52
post #49

Earlier quoted context omitted.

I've been very impressed with the OCR on an app called Fetch, which you use to scan your grocery receipts and get points you can use to redeem for gift cards. Even if I pull a receipt out of my pocket and it's wrinkly, it still seems to read it very well.

Can you get the data from them yourself, or is it purely for them? I've just tried easyocr on a receipt, and it's pretty bad. I've also just noticed that ASDA have a "mojibake" problem and print ú instead of £ on the entire receipt ...

I haven't looked into it, I believe it's purely for them. It's sort of like a reverse-coupon app. You buy stuff, and get extra points for say, Lipton iced tea. That's supposed to encourage you to buy more of that stuff next time.

Re: EasyOCR: Ready-to-use OCR with 40 languages

#53
post #31
post #28

Earlier quoted context omitted.

Care to share resources/lessons learned for training tesseract with custom data? I'm using it for a side project and would love to hear about your insights.

I followed the resources here: https://github.com/tesseract-ocr/tessdoc/blob/master/Trainin... Also this: https://github.com/UB-Mannheim/tesseract/wiki The original data was here: https://github.com/tesseract-ocr/langdata_lstm I did use another data source from Manheim but can't locate it right now. Using vanilla Ubuntu 18.04 I looked at the example training files and made a small script to convert my own labeled dat…

If you don't mind disclosing, what was your particular use-case (the labeled dataset you trained on)?

Re: EasyOCR: Ready-to-use OCR with 40 languages

#54
post #44

Earlier quoted context omitted.

No, these are completely different, standalone code points, not variant forms of the same code point. What's actually happening seems to be that the ch_tra model can recognize simplified too and output the corresponding traditional version if the character isn't in the traditional "alphabet"; it doesn't work so well in the other direction. Example recognizing a partial screenshot of https://chinese.stackexchange.com/…

This approach seems a bit weird to me. While I appreciate them separating the models of Traditional and Simplified Chinese, I think I might prefer them to be combined (perhaps even including Japanese Kanji), and instead provide a way for the user to specify which language or regional variant is expected so characters matching the expected variant are simply given a higher score.

Without delving into implementation details, I suspect the ch_tra model was simply trained on a dataset including simplified images with traditional labels.

Re: EasyOCR: Ready-to-use OCR with 40 languages

#55
post #30

I've recently become interested in OCR due to using Kaku on Android for trying to get better at reading Japanese. So thanks Hacker News for showing me a new version. I'd love any comments about other resources that may be good for learning. Especially because for funsies I'd like to try and develop my own.

For learning, you could try training yourself on datasets for handwritten character recognition: http://etlcdb.db.aist.go.jp/

Thanks! A dataset was one of the things I was dreading searching for/building. (Maybe this was super easily searchable and I'm just a goon, again I'm early stages of passing interest).

Re: EasyOCR: Ready-to-use OCR with 40 languages

#56
post #13

From what I can tell (without having read the research papers) it looks like this is just an easy to use package for sparse scene text extraction. It seems to do okay if the scene has sparse text but it falls down for dense text detection. The results are going to be pretty bad if you try and do a task like "extract transactions from a picture of a receipt." Here's an example of input you might get for a production a…

About a year ago I surveyed the available OCR packages for receipts. This was for pristine scans (not the crumpled scan you have in your image). In my survey all OCRs failed except google cloud OCR! If there is another OCR that works I would love to know.

Re: EasyOCR: Ready-to-use OCR with 40 languages

#57
post #13

From what I can tell (without having read the research papers) it looks like this is just an easy to use package for sparse scene text extraction. It seems to do okay if the scene has sparse text but it falls down for dense text detection. The results are going to be pretty bad if you try and do a task like "extract transactions from a picture of a receipt." Here's an example of input you might get for a production a…

Yes, you're right. I tried with some scanned pages from a Vietnamese book but the result was very bad (say <5% accurate). The scans was pretty OK, though. Probably the model was not trained much for the Vietnamese language but I think it's more likely that it does not do the necessary per-processing steps.

I had very bad results on Vietnamese using Tesseract and their trained model. French output was mostly fine. I guess less attention is given to some language, and the huge number of diacritics used in Vietnamese make it harder to process too.

Re: EasyOCR: Ready-to-use OCR with 40 languages

#60
post #22

Earlier quoted context omitted.

I'm just happy to see some advancement in open source OCR for Python. Last time I had a Python project that needed OCR, I found that the open-source options were surprisingly limited, and it required some effort to achieve consistently good results even with relatively clean inputs. Honestly I was kind of surprised that good basic OCR isn't a totally solved issue with an ecosystem of fully open-source solutions by no…

Why does it have to be Python based? You can call out to other processes or services. Tesseract[1], for example, is pretty easy to work with. 1: https://github.com/tesseract-ocr/tesseract

It doesn't need to be Python. Tesseract is what I ended up using, IIRC. But I was looking for a turnkey package that would work from beginning to end. I wasn't doing anything unusual, and my app wasn't OCR-focused. I just wanted easy drop-in OCR for documents.

Tesseract is more like getting a pretty good motor for free (recognizing text), but it's up to you to build the rest of the car around it (preprocessing images, handling errors, dealing with the output, potentially training it to your task, and various other issues).

Post reply on HN