Detect Text in Images with Python - pytesseract vs. easyocr vs keras_ocr

preview_player
Показать описание
In this video we learn how to extract text from images using python. We compare three popular libraries: pytesseract, easyocr, and keras_ocr. Examples are run in a kaggle notebook on the TextOCR dataset.

Timeline:
00:00 Extracting Text
00:42 TextOCR Dataset
01:31 Outline and Loading Data
04:19 Plotting Text Images
06:12 pytesseract
07:38 easyocr
10:18 keras ocr
13:14 plot comparison
20:00 Results comparison

My other videos:

#python #computervision #deeplearning
Рекомендации по теме
Комментарии
Автор

I had fun watching this video! Great job. Also very nice to see you making typos and then fixing it. Many people on YouTube cut those parts and it gives some sort of weird feeling like the person is pretending like they never make mistakes. It's impossible!

pcargolo
Автор

Thanks for showing how to use all three methods. For the comparison part I think you could go a lot more in depth on the results. For most applications the results seem largely insufficient to me, but for some applications it is already fine.

richardbloemenkamp
Автор

Hey Rob, thanks a ton for the awesome job you do, I have learnt a lot of new cool stuff (I was only aware of pytessaract, thought it is the best one and tried it on pictures), now I will definitely give a try to the other libraries as well. As I already mentioned, overall you are doing an extremely great job, I just have 1 idea and 1 suggestion : )
1) idea: as you mentioned in the video, we have the annotations (like the ground truth) already provided in the dataset, right? Wouldn't it be a good idea to check the results vs the ground truth? I.e. smth like lib2 has 3 out of 10 annotations correctly ( recall 0, 3) out of 6 predicted texts (0, 5 precision) smth like accuracy etc. I understand, this is not perfect as it could only partially extract the text (like miss 1-2 letters) or recognize letter 'G' instead of 'C'. I mean the question is: what's a fair way to have some numerical result based on the dataset? Say library 1 has accuracy X precision Y and recall Z and based on this values and the confusion matrix to be able to make a selection of a library given a particular dataset?
2) Suggestion: I am mentioning this 3rd time already, but your videos are just marvellous, I mean extremely informative, to the point, no second wasted at all. Just perfect. So, what I would really love to see is (as you asked about suggestion for some next video) is almost the same kind of video for some audio task. There is this new BLOOM model out today, I haven't checked it yet, but maybe you could pick some models (like based on wav2vec2) that recognize voice (asr) and compare them using transformers and huggingface for example? Would really be nice to see some comparison of different models in some audio related task, where the whole pipeline (like loading audio, extracting the numerical features, feeding to some pretrained model and finally prediction) would be implemented and validated based on say word error rate. Thanks in advance ; )

tigranmkrtchyan
Автор

I love that you had an “Chain of Strength” image!!!! Straight Edge Hardcore Lives! Youth Crew!

travezripley
Автор

Hey Rob, thank you for the Video! this helped me a lot.!!!

@to my Indian Developers, I have tried these libraries for Indian languages. And `pytesseract` seems to be a winner fro reading Marathi and Hindi language.

tusharniras
Автор

Great video! Clear and concise. You've earned my subscription.

cyberhard
Автор

Nice tutorial! I only try pytesseract in the past with PDF files.
For future video recommendation I will like to see something about how you organize your ML experiments. In the competitions do you use some tool in order to try multiple models and hyperparameter tuning?

gustavojuantorena
Автор

Hi Rob, a very informative video thank you!
After we extract the data what is the best solution to save it into a table without missing the context of future images or PDFs?
Per example if I save Customer's First Name from first file, it should be easier to detect it in the next file and save it under the same column

YounessNet
Автор

Hi there!

I wanted to thank you for the incredible video on text detection in images using `pytesseract`, `easyocr`, and `keras_ocr`. It was exactly what I needed to resolve all my doubts about which tool to use in my projects. Your clear explanation and comparative analysis helped me understand the advantages and disadvantages of each, allowing me to make an informed decision.

Thanks again for sharing your knowledge and for the quality of your content. I would love to see more videos like this, where you explain and compare different tools and technologies. Keep up the excellent work!

Best regards and well done!

Philippe

lphilippeabadieo
Автор

Hey Rob, Amazing content, thanks for making this. Can you suggest the best method to detect words from a printed text? also like to isolate a single word out of a paragraph.
Keep up the good work!

nalinbranden
Автор

Thanks a lot, Rob. This is a great Tutorial. Hats off!

tanvirhossain
Автор

Thank you so much, your code removed my days of frustation.

rushdamansuri
Автор

Your video is really great, thank you Rob!

IntenseRouge
Автор

Great video but man I would have loved to see another half hour where you compare the results to the original annotations, give a score to each technique, and then try to make improvements to get the score to increase

vesper
Автор

Great video, thanks. Which one do you like the best for invoices and business documents. any for handwriting

josephmeyer
Автор

Hi Medallion, do you know how to improve the accuracy of the easyocr ? I have a image, like a dataframe image, it can only read 95% of the data in the image. Thanks in advance

xoblm
Автор

Thank you Rob for another great tutorial! I've been following along for one of my OCR project. Qq -- when I tried to pip install keras-ocr in Kaggle. I kept getting error message of "ERROR: Could not find a version that satisfies the requirement keras-ocr (from versions: none)". Do you happen to know why? Thanks!

maggiezhang
Автор

Which library would you recommend using to extract all handwritten text from like a doctors prescription or a diary page or something like that?

ibraheem
Автор

Hello Rob. Can you please tell what you think about which one of these 3 will work best if I have to extract text from images of products of inventory? for example soft drinks pictures, chips, snacks, chocolates, tissue boxes, vanity products, etc.

anshaaa
Автор

great video! i was asking myself if as a languages i could set "math". i'm trying to get a prediction of number and text together could i use one of this libraries or for handwritten numbers i have to use a totally different library?

FrancescoZaccaria-uvzm