什麼是OCR?
我們來看一下百度百科給的定義:
OCR (Optical Character
Recognition,光學字元識别)是指電子裝置(例如掃描器或數位相機)檢查紙上列印的字元,通過檢測暗、亮的模式确定其形狀,然後用字元識别方法将形狀翻譯成計算機文字的過程;
我簡要的總結為:
OCR三步走:"内容——> 掃描——>結果"
今天來用代碼的形式講一下,怎麼用代碼快速實作OCR。
pytesseract
Python-tesseract是谷歌Tesseract-OCR (http://code.google.com/p/tesseract-ocr/)的包裝器。它作為獨立的調用腳本也很有用,因為它可以讀取Python Imaging Library支援的所有圖像類型,包括jpeg,png,gif,bmp,tiff 等,預設情況下tesseract-ocr隻支援tiff和bmp。
Python-tesseract 支援版本為 python 2.7+ 或 python 3.x,接下來我們安裝pytesseract
# 安裝pytesseract
pip install pytesseract
安裝完成以後導入使用
# 導入
import pytesseract
PIL
PIL(Python Image Library)是python的第三方圖像處理庫,但是由于其強大的功能與衆多的使用人數,幾乎已經被認為是python官方圖像處理庫了。
# 導入PIL
from PIL import image
接下來就是最最最最最最精髓的地方啦~~~~~~~~~~
實作讀取解析的幾行代碼:
# 讀取image
image = Image.open('你的檔案路徑/圖檔名.png')
# 識别image上的文字
content_text=pytesseract.image_to_string(image)
# 列印文字
print(content_text)
這樣OCR就成功啦!
完整代碼如下:
#!/usr/env/bin/python
# 用于設定輸出内容編碼,避免亂碼
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf-8')
# 導入關鍵庫
from PIL import Image
import pytesseract
image = Image.open('你的檔案路徑/圖檔名.png')
content_text=pytesseract.image_to_string(image)
print(content_text)
簽名:在未來面前,我們都是孩子。學習、思考才能讓我們越走越遠。
學習部落格:oceaneyes.top
個人網站:www.oceaneyes.cn
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL1kEVNpXSU1kMFpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZwpmLyMTO0EzNyYTM4IjMwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)