如何使用Python進(jìn)行OCR識(shí)別圖片中的文字
朋友需要一個(gè)工具,將圖片中的文字提取出來。我?guī)退诰W(wǎng)上找了一些OCR的應(yīng)用,都不好用。所以準(zhǔn)備自己研究,寫一個(gè)Web APP供他使用。
OCR1,全稱Optical character recognition,或者optical character reader,中文譯名叫做光學(xué)文字識(shí)別。它是把圖像文件中的手寫文本,打印文本轉(zhuǎn)換為機(jī)器編碼文本的一種方法。
OCR技術(shù)廣泛用于識(shí)別打印紙張中的文字?jǐn)?shù)據(jù) -- 比如護(hù)照,支票,銀行聲明,收據(jù),統(tǒng)計(jì)表單,郵件等。OCR的早期版本,需要對圖片中的每個(gè)文字都進(jìn)行訓(xùn)練,一次只能作用于一種字體。高級的版本增加了很大的識(shí)別率,可以同時(shí)識(shí)別現(xiàn)在很多流行的字體,支持不同種類格式的圖片文件。一些系統(tǒng)可以生成接近于原來圖片格式的輸出,包括圖片,排版,以及其它非文本組件,這也叫做版面還原。
工具
Tesseract
現(xiàn)在最出名,最常用的OCR就是谷歌的tesseract OCR engine2。最新的版本是Tesseract4。Tesseract的主要開發(fā)者是Ray Smith3.
Tesseract支持unicode(UTF-8),安裝后即可識(shí)別超過100種語言。
Tesseract支持不同的輸出可是:普通文本,hOCR(html),PDF,TSV,invisible-text-only PDF。在master分支,還試驗(yàn)性地支持ALTO(XML)格式。
請記住,在大多數(shù)情況下,為了獲得更好的OCR結(jié)果,你需要為提供給Tesseract的圖片提升質(zhì)量4.
Tesseract可以通過訓(xùn)練來識(shí)別其它語言和其它字體5.
另外,有很多第三方的Tesseract GUI應(yīng)用??梢灾苯酉螺d使用6。
pytesseract
Python-tesseract7(pytesseract)是Google Tesseract ORC引擎的封裝。首次commit的2014年。用這個(gè)庫,可以很方便地編寫腳本,可以用它來識(shí)別所有可以由PIL識(shí)別的圖片格式,包括jpeg, png, gif, bmp, tiff等, 而tesseract-orc本來只支持tiff和bmp兩種格式。
如果在腳本中使用,識(shí)別的文本可以輸出為Python字符串,而不是直接輸出到文件中。
另外,這個(gè)代碼庫只有一個(gè)文件,400行代碼。如果有任何疑問,可以直接翻看源代碼。
tesserocr
tesserocr8也是一個(gè)TesseractOCR的封裝庫。它的首次commit是2015年。
這個(gè)庫相對于pytesseract的優(yōu)勢在于9,這個(gè)庫是使用Cython來直接調(diào)用Tesseract的C++ API。使用它和threading模塊來處理圖片,可以釋放GIL,達(dá)到正常的并發(fā)執(zhí)行。
2.Github: tesseract OCR engine
3.Tesseract作者 Ray Smith,美國計(jì)算機(jī)科學(xué)家,計(jì)算機(jī)圖形學(xué)的先驅(qū). 他的中文名字叫做匠白光. ↩
9.Hacknews: 關(guān)于pytesseract, tesserocr的區(qū)別
總結(jié)
以上所述是小編給大家介紹的如何使用Python進(jìn)行OCR識(shí)別圖片中的文字,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- python 識(shí)別圖片中的文字信息方法
- Python圖像處理之識(shí)別圖像中的文字(實(shí)例講解)
- python實(shí)現(xiàn)簡單的文字識(shí)別
- python批量識(shí)別圖片指定區(qū)域文字內(nèi)容
- python識(shí)別圖像并提取文字的實(shí)現(xiàn)方法
- 如何利用Python識(shí)別圖片中的文字
- Python 實(shí)現(xiàn)任意區(qū)域文字識(shí)別(OCR)操作
- 如何利用Python識(shí)別圖片中的文字詳解
- Python 圖片文字識(shí)別的實(shí)現(xiàn)之PaddleOCR
- Python圖片文字識(shí)別與提取實(shí)戰(zhàn)記錄
相關(guān)文章
selenium3+python3環(huán)境搭建教程圖解
這篇文章主要介紹了selenium3+python3環(huán)境搭建教程圖解,需要的朋友可以參考下2018-12-12
django admin后臺(tái)添加導(dǎo)出excel功能示例代碼
這篇文章主要介紹了django admin 后臺(tái)添加導(dǎo)出excel功能示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-05-05
Python實(shí)現(xiàn)從url中提取域名的幾種方法
這篇文章主要介紹了Python實(shí)現(xiàn)從url中提取域名的幾種方法,本文給出了3種方法實(shí)現(xiàn)在URL中提取域名的需求,需要的朋友可以參考下2014-09-09
python對站點(diǎn)數(shù)據(jù)做EOF且做插值繪制填色圖
這篇文章主要介紹了python對站點(diǎn)數(shù)據(jù)做EOF且做插值繪制填色圖,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,,需要的小伙伴可以參考一下2022-09-09
Python標(biāo)準(zhǔn)庫uuid模塊(生成唯一標(biāo)識(shí))詳解
uuid通過Python標(biāo)準(zhǔn)庫的uuid模塊生成通用唯一ID(或“UUID”)的一種快速簡便的方法,下面這篇文章主要給大家介紹了關(guān)于Python標(biāo)準(zhǔn)庫uuid模塊(生成唯一標(biāo)識(shí))?的相關(guān)資料,需要的朋友可以參考下2022-05-05
Python使用Matplotlib繪制甘特圖的實(shí)踐
甘特圖已經(jīng)發(fā)展成項(xiàng)目規(guī)劃和跟蹤的必備工具,本文主要介紹了Python使用Matplotlib繪制甘特圖的實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12
Pytorch 如何訓(xùn)練網(wǎng)絡(luò)時(shí)調(diào)整學(xué)習(xí)率
這篇文章主要介紹了Pytorch 如何訓(xùn)練網(wǎng)絡(luò)時(shí)調(diào)整學(xué)習(xí)率的操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-05

