pyocr的安裝使用簡要指南
pyocr是一個Python的OCR類庫,他的github地址是:https://github.com/jflesch/pyocr 。
如果要使用這個類庫,需要環境上有幾個依賴:
tesseract-ocr:一個開源的OCR類庫,要求是在3.01以上(可以用 tesseract --version 命令檢測版本)
PIL:Python的圖片處理類庫
Python的版本>=2.7
我的測試環境是ubuntu 15.10
可以使用help命令檢查是否存在需要PIL
Python 2.7.10 (default, Oct 14 2015, 16:09:02) [GCC 5.2.1 20151010] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> help("modules")
如果不存在PIL,可以使用命令安裝
$ sudo apt-get install python-imaging
安裝tesseract-ocr。
這個安裝步驟相對來說比較簡單。
從網上下載源碼包之后進行解壓,然后進行編譯安裝即可,安裝步驟如下:
./autogen.sh ./configure make sudo make install sudo ldconfig
安裝語言包,這個可以從網上直接安裝,我這里只是安裝了英文和中文的語言包
$ sudo apt-get install tesseract-ocr-eng tesseract-ocr-chi-sim
然后配置系統環境:
export TESSDATA_PREFIX="tessdata所在的路徑”
這樣就可以進行測試了
$ tesseract t2.png out -l chi_sim
至此,環境已經處理完畢,就可以按照說明來安裝pyocr了。
下載pyocr源碼包,解壓執行命令去安裝
$ sudo python ./setup.py install
如果沒有出現意外的話就已經安裝成功,可以嘗試一個demo來驗證我們的安裝配置是否成功
下面是一個識別圖片上中文的demo,這個可以根據自己的環境修改:
from PIL import Image import sys import pyocr import pyocr.builders image_path = sys.argv[1] tools = pyocr.get_available_tools() if len(tools) == 0: print("No OCR tool found") sys.exit(1) tool = tools[0] print("Will use tool '%s'" % (tool.get_name())) # Ex: Will use tool 'tesseract' langs = tool.get_available_languages() print("Available languages: %s" % ", ".join(langs)) lang = langs[1] print("Will use lang '%s'" % (lang)) # Ex: Will use lang 'fra' txt = tool.image_to_string( Image.open(image_path), , builder=pyocr.builders.TextBuilder() ) print txt
~
需要說明的是,安裝tesseract-ocr需要編譯環境的支持,我這邊沒有檢查,所以出現了下面的錯誤
1、wrong: autogen.sh: 60: autogen.sh: aclocal: not found
缺少: automake
2、autogen.sh: 65: autogen.sh: libtoolize: not found
autogen.sh: 65: autogen.sh: glibtoolize: not found
缺少: libtool
3、configure: error: leptonica not found
sudo apt-get install libleptonica-dev