Python3一行代碼實現(xiàn)圖片文字識別的示例
自學Python3第5天,今天突發(fā)奇想,想用Python識別圖片里的文字。沒想到Python實現(xiàn)圖片文字識別這么簡單,只需要一行代碼就能搞定
from PIL import Image
import pytesseract
#上面都是導包,只需要下面這一行就能實現(xiàn)圖片文字識別
text=pytesseract.image_to_string(Image.open('denggao.jpeg'),lang='chi_sim')
print(text)
我們以識別詩詞為例
下面是我們要識別的圖片

先看下效果圖
我們運行代碼后識別的結(jié)果,有幾個字沒有正確識別,但是大多數(shù)字都能識別出來。
風急天高猿嘯哀 渚蕓胄芳少白鳥飛鳳 無邊落木蕭蕭下, 不盡長量工盲袞宕袞來 萬里悲秋常1乍窨, 百年多病獨登氤 艱難苦恨擎霜量 漂倒新停澍酉帆
一行代碼就能識別圖片,我們背后要做些準備工作的
- 這里我們需要用到兩個庫:pytesseract和PIL
- 同時我們還需要安裝識別引擎tesseract-ocr
下面就來講講這幾個庫的安裝,因為只有這幾個庫安裝好以后Python才能實現(xiàn)一行代碼實現(xiàn)圖片文字識別
一,pytesseract和PIL的安裝
安裝這兩個包可以借助pip
- 1,命令行安裝
pip install PIL pip install pytesseract
- 2,如果你用的pycharm編輯器,就可以直接借助pycharm實現(xiàn)快速安裝。
在pycharm的Settings設置頁按照下面步驟操作
這樣就能成功安裝pytesseract,安裝PIL只需要在上面第三步里搜索PIL并點擊安裝即可

這時我們安轉(zhuǎn)好了庫,運行下面代碼
from PIL import Image
import pytesseract
text=pytesseract.image_to_string(Image.open('denggao.jpeg'),lang='chi_sim')
print(text)
會報下面錯誤,錯誤原因是:沒有安裝識別引擎tesseract-ocr

二,安裝識別引擎tesseract-ocr
1.下載下面的安裝包,然后直接點擊安裝即可
tesseract-ocr安裝包和中文語言包
解壓安裝tesseract-ocr后做如下操作,就可以支持中文識別了。因為tesseract-ocr默認不支持中文識別。

2,安裝完成tesseract-ocr后,我們還需要做一下配置
在C:\Users\huxiu\AppData\Local\Programs\Python\Python35\Lib\site-packages\pytesseract找到pytesseract.py打開后做如下操作
# CHANGE THIS IF TESSERACT IS NOT IN YOUR PATH, OR IS NAMED DIFFERENTLY #tesseract_cmd = 'tesseract' tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract.exe'
也可以通過pycharm快速打開pytesseract.py



至此我們所有的配置就完成了,運行下面代碼就可以把杜甫的登高這首圖片詩解析成文字了

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- python利用pytesseract 實現(xiàn)本地識別圖片文字
- python pytesseract庫的實例用法
- python3光學字符識別模塊tesserocr與pytesseract的使用詳解
- Python基于內(nèi)置庫pytesseract實現(xiàn)圖片驗證碼識別功能
- python下調(diào)用pytesseract識別某網(wǎng)站驗證碼的實現(xiàn)方法
- Python 圖片文字識別的實現(xiàn)之PaddleOCR
- Python調(diào)用百度OCR實現(xiàn)圖片文字識別的示例代碼
- Python圖像處理之圖片文字識別功能(OCR)
- python利用 pytesseract快速識別提取圖片中的文字((圖片識別)
相關文章
python 模擬創(chuàng)建seafile 目錄操作示例
這篇文章主要介紹了python 模擬創(chuàng)建seafile 目錄操作,結(jié)合實例形式詳細分析了Python模擬創(chuàng)建seafile 目錄相關操作技巧,需要的朋友可以參考下2019-09-09
使用SQLAlchemy操作數(shù)據(jù)庫表過程解析
這篇文章主要介紹了使用SQLAlchemy操作數(shù)據(jù)庫表過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-06-06
Python連接Oracle數(shù)據(jù)庫的操作指南
Oracle數(shù)據(jù)庫是一種強大的企業(yè)級關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS),而Python是一門流行的編程語言,兩者的結(jié)合可以提供出色的數(shù)據(jù)管理和分析能力,本教程將詳細介紹如何在Python中連接Oracle數(shù)據(jù)庫,并演示常見的數(shù)據(jù)庫任務,需要的朋友可以參考下2023-11-11
Python異步與定時任務提高程序并發(fā)性和定時執(zhí)行效率
Python異步與定時任務是Python編程中常用的兩種技術,異步任務可用于高效處理I/O密集型任務,提高程序并發(fā)性;定時任務可用于定時執(zhí)行計劃任務,提高程序的執(zhí)行效率。這兩種技術的應用有助于提升Python程序的性能和效率2023-05-05

