初探利用Python進(jìn)行圖文識別(OCR)
話說什么是OCR?????
簡介
OCR技術(shù)是光學(xué)字符識別的縮寫(Optical Character Recognition),是通過掃描等光學(xué)輸入方式將各種票據(jù)、報(bào)刊、書籍、文稿及其它印刷品的文字轉(zhuǎn)化為圖像信息,再利用文字識別技術(shù)將圖像信息轉(zhuǎn)化為可以使用的計(jì)算機(jī)輸入技術(shù)??蓱?yīng)用于銀行票據(jù)、大量文字資料、檔案卷宗、文案的錄入和處理領(lǐng)域。適合于銀行、稅務(wù)等行業(yè)大量票據(jù)表格的自動掃描識別及長期存儲。相對一般文本,通常以最終識別率、識別速度、版面理解正確率及版面還原滿意度4個(gè)方面作為OCR技術(shù)的評測依據(jù);而相對于表格及票據(jù),通常以識別率或整張通過率及識別速度為測定OCR技術(shù)的實(shí)用標(biāo)準(zhǔn)。
解析
采用OCR識別技術(shù),可以將其應(yīng)用于銀行票據(jù)光盤縮微系統(tǒng),可以自動提取票據(jù)要素,可減輕操作員的工作量,減少重復(fù)勞動,尤其是在與銀行事后且監(jiān)督系統(tǒng)相結(jié)合后,可以替代原先的操作人員完成事后監(jiān)督工作。由計(jì)算機(jī)自動識別票據(jù)上的日期、帳號、金額等要素,通過銀行事后監(jiān)督系統(tǒng)與業(yè)務(wù)系統(tǒng)中的數(shù)據(jù)進(jìn)行比較,完成傳統(tǒng)的事后監(jiān)督操作;配有印章驗(yàn)證系統(tǒng)后,自動將憑證圖像中的印章與系統(tǒng)中預(yù)留的印鑒進(jìn)行比較,完成印章的真?zhèn)巫R別。
OCR識別技術(shù)不僅具有可以自動判斷、拆分、識別和還原各種通用型印刷體表格,在表格理解上做出了令人滿意的實(shí)用結(jié)果,能夠自動分析文稿的版面布局,自動分欄、并判斷出標(biāo)題、橫欄、圖像、表格等相應(yīng)屬性,并判定識別順序,能將識別結(jié)果還原成與掃描文稿的版面布局一致的新文本。表格自動錄入技術(shù),可自動識別特定表格的印刷或打印漢字、字母、數(shù)字,可識別手寫體漢字、手寫體字母、數(shù)字及多種手寫符號,并按表格格式輸出。提高了表格錄入效率,可節(jié)省大量人力。同時(shí)支持將表格識別直接還原成PTF、PDF、HTML等格式文檔;并可以對圖像嵌入橫排文本和豎排文本、表格文本進(jìn)行自動排版面分析?! ±媚壳暗母咝录夹g(shù)-OCR,直接從憑證影像中提取金額、帳號等重要數(shù)據(jù),代替人的手工錄入,與條碼識別/流水識別緊密結(jié)合,實(shí)現(xiàn)建立事后副本帳、完成事后監(jiān)督的工作。OCR處理一般使用性能較好的PC機(jī),OCR處理程序一經(jīng)啟動會自動掃描數(shù)據(jù)庫中的憑證影像,發(fā)現(xiàn)有需OCR處理而未處理的,提取到本地進(jìn)行處理?! ?/p>
OCR手寫體、印刷體識別技術(shù),能識別不同人寫的千差萬別的手寫體漢字和數(shù)字,應(yīng)用于本系統(tǒng),識別憑證影像中儲戶填寫的信息,如大寫金額、小寫金額、帳號、存期、日期、證件號等,可以代替手工錄入。同時(shí)被識別得出的金額還要與流水識別所得的金額進(jìn)行核對,核對成功,則OCR識別成功。這樣處理是為了避免誤判?! ?/p>
經(jīng)過對銀行產(chǎn)生的實(shí)際憑證進(jìn)行的大量測試,在實(shí)際開發(fā)過程中,根據(jù)銀行的實(shí)際需求,OCR技術(shù)在票據(jù)和表格識別能力和手寫體自動識別能力上不斷提升,目前處理速度可達(dá)到每分鐘60~80張票據(jù),存折識別率已經(jīng)達(dá)到了85%以上,存單、憑條識別率達(dá)到90%以上,而85%以上的識別率就能減少80%以上的數(shù)據(jù)錄入員。
在檔案領(lǐng)域OCR技術(shù)使檔案掃描成果達(dá)到了全文可識別,將檔案數(shù)字化發(fā)展提升了到了一個(gè)新的階段,是原本掃描出來的圖片變得更容易進(jìn)行檢索,為數(shù)字檔案館的數(shù)據(jù)查詢提供了技術(shù)支持,是檔案數(shù)字化發(fā)展中必不可少的一環(huán)。
以上來自百度百科哈哈哈哈哈??!
相關(guān)的工具:Tesseract
Tesseract概述:
Tesseract 是一個(gè)OCR庫,目前由Google贊助(Google也是一家以O(shè)CR和機(jī)器學(xué)習(xí)技術(shù)聞名于世的公司)。Tesseract是目前公認(rèn)最優(yōu)秀、最精確的開源OCR系統(tǒng)。
Tesseract的Windows安裝包下載地址為:http://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-4.00.00dev.exe,下載后雙擊直接安裝即可。安裝完后,需要將Tesseract添加到系統(tǒng)變量中。在CMD中輸入tesseract-v,如顯示以下界面,則表示Tesseract安裝完成且添加到系統(tǒng)變量中。
配置完成后在命令行輸入tesseract -v,如果出現(xiàn)如下圖所示,說明環(huán)境變量配置成功
命令使用: tesseract C://Users\lenovo\Desktop\Tesseract-OCR\233.jpg C://Users\lenovo\Desktop\Tesseract-OCR\Max.txt,則會將233.jpg中的識別文字寫入到Max.txt一執(zhí)行報(bào)錯(cuò)???什么情況?
后來我找了一些資料來看 上面的意思就是說不能加載'eng'語言包。請將tessdata的父文件夾路徑設(shè)置為TESSDATA_PREFIX環(huán)境變量值,這個(gè)就是說在環(huán)境變量中新建一個(gè)系統(tǒng)變量,變量名稱為TESSDATA_PREFIX,tessdata是放置語言包的文件夾,一般在你安裝tesseract的目錄下,即tesseract的安裝目錄就是tessdata的父目錄,把ESSDATA_PREFIX的值設(shè)置為它就沒問題了
更改完成后重啟就沒問題了。
規(guī)整的中文也是可以識別的哦。
命令:tesseract C://Users\lenovo\Desktop\Tesseract-OCR\libai.png C://Users\lenovo\Desktop\Tesseract-OCR\libai.txt -l chi_sim
我們開始使用python編寫識別小腳本了,這里我們需要一個(gè)pytesseract庫使用pip install pytesseract安裝。安裝完后,就可以使用Python調(diào)用Tesseract這里我們還需要安裝一個(gè)Python的圖片處理模塊,可以安裝pillow.
輸入以下代碼,可以實(shí)現(xiàn)同上述Tesseract命令一樣的效果:
我們的圖片里面內(nèi)容是:
運(yùn)行程序:
識別??!
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)讀取SQLServer數(shù)據(jù)并插入到MongoDB數(shù)據(jù)庫的方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)讀取SQLServer數(shù)據(jù)并插入到MongoDB數(shù)據(jù)庫的方法,涉及Python同時(shí)進(jìn)行SQLServer與MongoDB數(shù)據(jù)庫的連接、查詢、讀取、寫入等相關(guān)操作實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-06-06Python Multiprocessing多進(jìn)程 使用tqdm顯示進(jìn)度條的實(shí)現(xiàn)
這篇文章主要介紹了Python Multiprocessing多進(jìn)程 使用tqdm顯示進(jìn)度條的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08python excel轉(zhuǎn)換csv代碼實(shí)例
這篇文章主要介紹了python excel轉(zhuǎn)換csv代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08關(guān)于Numpy數(shù)據(jù)類型對象(dtype)使用詳解
今天小編就為大家分享一篇關(guān)于Numpy數(shù)據(jù)類型對象(dtype)使用詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11