乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      OpenCV3入門(mén)教程(三)Tesseract

       行走在理想邊緣 2019-05-12

      ------韋訪(fǎng) 20181016

      1、概述

      上一講學(xué)習(xí)了怎么樣用opencv識(shí)別車(chē)牌,但是,我們只做到了將車(chē)牌上的字符分割出來(lái),還沒(méi)有對(duì)字符進(jìn)行識(shí)別,這一講先來(lái)學(xué)習(xí)OCR(Optical Character Recognition,光學(xué)字符識(shí)別)。目前OCR用的比較多的是開(kāi)源框架Tesseract-OCR,所以就挑這個(gè)來(lái)學(xué)學(xué)。

      2、Tesseract-OCR安裝

      Ubuntu的話(huà),直接執(zhí)行命令:

      sudo apt-get install tesseract-ocr

      就可以安裝了,我沒(méi)試過(guò)。下面我們用源碼安裝。

      下載tesseract-ocr源碼:

      Github地址為:https://github.com/tesseract-ocr/tesseract

      安裝步驟可以參考文檔:https://github.com/tesseract-ocr/tesseract/wiki/Compiling

      安裝依賴(lài):

      首先安裝一些依賴(lài)工具和庫(kù):

      sudo apt-get install g++ # or clang++ (presumably)

      sudo apt-get install autoconf automake libtool

      sudo apt-get install pkg-config

      sudo apt-get install libpng-dev

      sudo apt-get install libjpeg8-dev

      sudo apt-get install libtiff5-dev

      sudo apt-get install zlib1g-dev

      如果想自己訓(xùn)練數(shù)據(jù),則還要安裝以下工具:

      sudo apt-get install libicu-dev

      sudo apt-get install libpango1.0-dev

      sudo apt-get install libcairo2-dev

      再安裝Leptonica:

      注意Tesseract和Leptonica版本的對(duì)應(yīng),如下表,

       

      安裝命令如下,

      wget http://www./source/leptonica-1.74.4.tar.gz

      tar -zxvf leptonica-1.74.4.tar.gz 

      cd leptonica-1.74.4/

      ./configure

      make -j8

      編譯安裝:

      先cd到源碼的根目錄,然后運(yùn)行

      mkdir local

      ./autogen.sh

      ./configure --with-extra-libraries=/usr/local/include

      make -j8

      sudo make install

      sudo ldconfig

      如果上面命令都通過(guò),再執(zhí)行命令

      tesseract

      如果打印如下信息則說(shuō)明安裝成功。

      安裝語(yǔ)言包:

      git clone https://github.com/tesseract-ocr/tessdata.git

      然后將所有的.traineddata文件拷貝到/usr/local/share/tessdata/文件夾。

      用tesseract測(cè)試文字識(shí)別:

       

      我們要識(shí)別的圖片如上圖,運(yùn)行以下命令,

      tesseract 05.png 05 -l chi_sim

      -l可以指定字庫(kù)文件,chi_sim是識(shí)別中文的字庫(kù),運(yùn)行后會(huì)生成05.txt文本文件,

       

      可以看到,中文識(shí)別出來(lái)了,但是英文的都識(shí)別出什么鬼咯!那指定一個(gè)英文的字庫(kù)文件看看效果如何?運(yùn)行命令,

      tesseract 05.png 05_en -l eng

      運(yùn)行結(jié)果,

      這下英文識(shí)別正確,中文沒(méi)識(shí)別出來(lái)。就不能同時(shí)識(shí)別中文和英文嗎?字庫(kù)就不能混用嗎?百度了以下,蠻多人都有這個(gè)疑問(wèn)的,找了老半天,在這個(gè)博客找到方法,

      https://www.jianshu.com/p/f09045a4fc8a

      把兩個(gè)字庫(kù)用加法”+”連起來(lái)就可以了,命令如下,

      tesseract 05.png 05 -l chi_sim+eng

      運(yùn)行結(jié)果,

      3、Python編程

      想讓python調(diào)用tesseract,得先執(zhí)行以下命令安裝pytesseract,

      sudo pip install pytesseract

      安裝好以后,識(shí)別圖片里的字符就很簡(jiǎn)單了,執(zhí)行以下代碼,

      1. import pytesseract as pyt
      2. from PIL import Image

      3. img = Image.open('05.png')
      4. text = pyt.image_to_string(img, lang='chi_sim+eng')
      5. print(text)

      運(yùn)行結(jié)果:

      4、試著用官方字庫(kù)識(shí)別車(chē)牌

      上面的例子既然能識(shí)別中文、英文和數(shù)字,那么,能否直接用來(lái)識(shí)別我們上一講提取出來(lái)的車(chē)牌呢?試試看,

      扣出來(lái)的字符圖片為,代碼如下,

      1. #encoding:utf-8
      2. import pytesseract as pyt
      3. from PIL import Image

      4. img = Image.open('chepai_img0.jpg')
      5. text = pyt.image_to_string(img, lang='chi_sim+eng')
      6. print('車(chē)牌:' + str(text))

      運(yùn)行結(jié)果:

      什么都沒(méi)識(shí)別到,試試中文呢?原圖片為,運(yùn)行結(jié)果:

      也什么都沒(méi)識(shí)別出來(lái)。

      5、訓(xùn)練

      既然使用官方的字庫(kù)無(wú)法識(shí)別出字符,那么,我們就應(yīng)該訓(xùn)練自己的數(shù)據(jù),訓(xùn)練需要用到一個(gè)工具---jTessBoxEditorFX,這個(gè)工具是java寫(xiě)的,我的系統(tǒng)是ubuntu,jTessBoxEditorFX根目錄如下圖,

      Windows系統(tǒng)直接雙擊train.bat文件即可,linux系統(tǒng)則運(yùn)行train腳本,我電腦運(yùn)行腳本后,提示錯(cuò)誤如下:

      Error: Could not find or load main class net.sourceforge.tessboxeditor.JTessBoxEditor

      搞了半天不知什么原因,在我自己的電腦上運(yùn)行也是這個(gè)問(wèn)題,我就想會(huì)不會(huì)是這個(gè)工具不支持openjdk導(dǎo)致的?因?yàn)槲覂膳_(tái)電腦安裝的都是openjdk,然后,將openjdk改成Oracle的,果然就可以了。因?yàn)楣倦娔X要編譯安裝7.1系統(tǒng),只能用Openjdk,所以就不改公司電腦環(huán)境了,先往后學(xué),以后再補(bǔ)上OCR自己訓(xùn)練字庫(kù)這部分。

       

      如果您感覺(jué)本篇博客對(duì)您有幫助,請(qǐng)打開(kāi)支付寶,領(lǐng)個(gè)紅包支持一下,祝您掃到99元,謝謝~~

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀(guān)點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶(hù) 評(píng)論公約

        類(lèi)似文章 更多