当前位置:网站首页>Research on open source OCR engine

Research on open source OCR engine

2022-04-23 20:16:00 _ Carpediem

About open source OCR Engine research

One 、OCR Engine comparison

1. Optimal graph OCR ( tencent )

https://ai.qq.com/product/ocr.shtml#common

free API:https://api.ai.qq.com/fcgi-bin/ocr/ocr_generalocr

The engine focuses on row recognition , The accuracy of recognition results is as high as 98%, The error rate is low , Output as text .

( There are open and free API, No open source projects found , It seems to be an online service )

2. Tesseract OCR(Google)

https://github.com/tesseract-ocr/tesseract#about

There are three data sets to choose from :

tessdata-best Highest accuracy , The slowest https://github.com/tesseract-ocr/tessdata_best

tessdata Medium accuracy , Medium speed https://github.com/tesseract-ocr/tessdata

tessdata-fast The accuracy is the lowest , The fastest https://github.com/tesseract-ocr/tessdata_fast

advantage : Open source and Chinese language pack , Yes .NET and Java Of demo, Simple and easy to understand , Suitable as an introductory tutorial , Programming is simple , It provides its own method of training samples , You can generate the recognition language library you need . Support bill identification .

shortcoming : For words 、 Numbers 、 English, etc. need to be classified and identified to ensure the accuracy of identification ; Chinese and English digital symbols and other combination recognition , The recognition effect is not ideal , For special symbols, the false recognition rate is high , Prone to garbled code , Recognition is slow . Perform recognition through command line statements , There is no specific interface , The default output is .txt Format .

Recommend index :

3. cnocr+cnstd

https://github.com/breezedeus/cnocr

https://github.com/breezedeus/cnstd

https://zhuanlan.zhihu.com/p/60767671

advantage : Minimalist Chinese OCR Python package , The recognition model currently used is crnn, Good Chinese recognition ability , The error rate is low , The recognition accuracy is about 98.7%.

Recommend index :

4. Tree hole OCR( Tianruo OCR Evolution version )

https://github.com/AnyListen/tools-ocr

advantage : Support table recognition , Character recognition uses the recognition interface developed by various cloud platforms , Therefore, it needs to be connected to the Internet to be used normally ; Use JavaFX Development , It must be installed before use Java8 Running environment ( The full version does not need to be installed Java8)

shortcoming : Highly dependent on the environment .

5. calamari

https://github.com/Calamari-OCR/calamari

The paper :https://arxiv.org/abs/1807.02004

advantage :Calamari Is a new open source OCR Identification software , It uses the most advanced Tensorflow The deep neural network realized (DNN). Pre training model and multi model voting technology are provided . By convolution neural network (CNNS) And long-term memory (LSTM) The customizable network architecture composed of layers passes Graves Connection time classification of et al (CTC) Algorithm training . and GPU The use of greatly reduces the calculation time of training and prediction . Use two different data sets to compare Calamari And OCRopy,OCRopus3 and Tesseract 4 Performance of .Calamari In modern English UW3 Reached on dataset 0.11% Character error rate (CER), In German DTA19 Reached on dataset 0.18% Error rate , Its performance is far better than the results of the above existing open source software .

Used the current OCR The most advanced technology ,CNN+LSTM+CTC+voting.

calamari OCR engine , Use Python3 To write , be based on OCRopy and Kraken structure , Its design makes it easy for you to run , It can also be modularized and embedded into other python Script .

Environment depends on :Python3 、 Tensorflow1.8

Error rate of characters written in English (CER):0.11%

German error rate :0.18%

Be careful : The library is mainly used to identify printed ancient books , There is no experimental explanation for recognition on natural scene images .

Recommend index :

6. GOCR

https://github.com/SureChEMBL/gocr

http://jocr.sourceforge.net/

Command line tools , Yes JS transplant , It can be used in the front end .

7. xNN-OCR

xNN-OCR High precision is specially developed for mobile terminal 、 high efficiency 、 Text recognition engine , Currently, digital scene is supported 、 Scene English 、 Recognition of scene Chinese characters and special symbols .xNN-OCR For the mobile terminal, a set of text detection and text line recognition algorithm framework based on deep learning is developed and optimized , combination xNN Network compression and acceleration capabilities , The detection and recognition model can be compressed to hundreds of K Level , On mid tier and above mobile phones CPU Up to real time ( The highest 15FPS), Can be combined with “ scan ” In the video stream, what you see is what you get .xNN-OCR At present, the scene number can be well recognized on the terminal 、 English and some Chinese characters , Regardless of model size 、 Speed 、 The accuracy has reached the level of industrial application , And comprehensively surpass the recognition based on traditional algorithms OCR End to end application , The comparison has been verified in many practical application projects .

8. Microsoft OCR Library
Windows8.1 Later versions are built-in OCR engine , Can be used for desktop WindowsPhone.
https://github.com/A9T9/Free-OCR-Software

Recommend index :

9. ocropy

https://github.com/tmbarchive/ocropy

Training based OCR engine , After training, you can achieve better than Tesseract Higher accuracy , Project ratio Tesseract Younger , It contains a called OCRopus Layout Analyzer .

Recommend index :

10. ocrad

https://www.gnu.org/software/ocrad/

https://github.com/matiastucci/ionic-ocr-example

Command line tools . Yes JS transplant , It can be used in the front end .

Recommend index :

11. simple-ocr-opencv project

Simple but immature : A use opencv and numpy It's simple pythonic
OCR engine

https://github.com/goncalopp/simple-ocr-opencv

Recommend index :

12. deep_ocr project

https://github.com/JinpengLI/deep_ocr

advantage : be based on caffe The recognition effect of , And the code is better than tesseract It's much shorter .

shortcoming : Not very stable for the time being , Some semantic models need to be added for optimization .

13. Free
Offline OCR Offline Chinese text detection + distinguish SDK

https://github.com/myhub/tr

advantage : The error rate is low , Basically, they can correctly identify and maintain the original text layout style , Support vertical character recognition .

Recommend index :

14. ocular

https://github.com/tberg12/ocular/

advantage :Ocular Is the most advanced history OCR System .

Its main feature is : Unsupervised learning of unknown Fonts : Only document images and text corpora are needed . Ability to handle noisy files : Inconsistent inking , spacing , Vertical alignment, etc . Support multilingual documents , Including documents with a large number of word level transcoding . Unsupervised learning of spelling change patterns , Including outdated spelling and printer shorthand . At the same time, it is jointly translated into diplomacy ( written words ) Form and standardized form .

Two 、 summary

in summary , On the existing open source OCR For the engine ,calamari Engine recognition accuracy is relatively high , The error rate is relatively low , Recognition speed is fast , Good recognition performance , It's worth a try .

版权声明
本文为[_ Carpediem]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204210553546368.html

随机推荐