![](http://static.javashuo.com/static/loading.gif)
本篇分享的是用百度的接口實現圖片的文字識別web
1.環境和配置要求
總體是用Python實現,所須要使用的第三方庫包括aip、PIL、keyboard、pyinstaller,如未安裝,可在CMD中使用pip install Baidu-AIP/pillow/keyboard/pyinstaller
指令安裝。小程序
百度接口
打開https://cloud.baidu.com/,如未註冊請先註冊,而後登陸點擊管理控制檯,點擊左側產品服務→人工智能→文字識別,點擊建立應用,輸入應用名稱如Baidu_OCR,選擇用途如學習辦公,最後進行簡單應用描述,便可點擊當即建立。會出現應用列表,包括AppID、API Key、Secret Key等信息,這些稍後會用到。微信
![](http://static.javashuo.com/static/loading.gif)
2.具體實現步驟
整個程序的大體思路是,在用截圖軟件得到截圖以後,交給百度接口識別,並返回結果,固然,也能夠是本地圖片識別,我用的是QQ自帶截圖軟件,快捷鍵CTRL+ALT+A
用來打開截圖,在選中所截區域後,按Enter鍵便可保存到粘貼板中,也可用其餘截圖軟件。app
獲取截圖
keyboard類庫是用來監聽鍵盤動做的,因此在有快捷鍵按下以後,便會有相應動做。並用PIL中的ImageGrab來獲取到剪切板中的圖片並生成本地圖片文件。編輯器
#1.截圖
keyboard.wait('ctrl+alt+a')
print('開始截圖')
keyboard.wait('enter')
print('保存截圖')
time.sleep(0.1)
#2.保存圖片
image = ImageGrab.grabclipboard()
image.save('img.png')
調用Baidu aip識別並打印文字
先用註冊時生成的應用的AppID、API Key、Secret Key初始化應用,再讀取保存到的圖片並打印識別的文字。學習
with open('img.png', 'rb') as fp:
image = fp.read()
text_list = client.basicAccurate(image)['words_result']
for text in text_list:
print(text['words'])
運行結果如圖所示:咱們還可增長一個無限循環使得一直能截圖。flex
調用打包程序生成專屬識別文字小程序
用pyinstaller庫實現小程序的打包,生成.exe文件,這樣就能隨時識別文字了。在命令行中用pyinstaller xxx.py
來打包生成exe文件,最後在生成的dist文件夾便可找到xxx.exe文件以下:最後附上整個源代碼:網站
#引入截圖軟件,獲取文件到本地端,並識別圖片文字,最後打包
import keyboard #控制鍵盤
from PIL import ImageGrab #保存圖片
import time
from aip import AipOcr
""" 你的 APPID AK SK """
APP_ID = '17076767'
API_KEY = 'Af3Rj5HALMz5AN8prSgwTH4m'
SECRET_KEY = '******************'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
i = 0
while True:
#1.截圖
keyboard.wait('ctrl+alt+a')
print('開始截圖')
keyboard.wait('enter')
print('保存截圖')
time.sleep(0.1)
#2.保存圖片
image = ImageGrab.grabclipboard()
image.save('img{}.png'.format(i))
""" 調用通用文字識別(高精度版) """
with open('img{}.png'.format(i), 'rb') as fp:
image = fp.read()
text_list = client.basicAccurate(image)['words_result']
for text in text_list:
print(text['words'])
i+=1
附圖圖片識別案例ui
結語
以上就是這篇文章的所有內容了,但願本文的內容對你們的學習或者工做具備必定的參考學習價值,謝謝你們對小編的支持。人工智能
推薦閱讀
(點擊標題可跳轉閱讀)
調包俠的快樂莫過於此
本文分享自微信公衆號 - 一行數據(rowdata)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。