濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能實(shí)例

Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能實(shí)例

熱門標(biāo)簽:鶴壁手機(jī)自動(dòng)外呼系統(tǒng)違法嗎 地圖標(biāo)注多個(gè) B52系統(tǒng)電梯外呼顯示E7 怎么辦理400客服電話 萊蕪電信外呼系統(tǒng) 銀川電話機(jī)器人電話 沈陽防封電銷電話卡 企業(yè)微信地圖標(biāo)注 高德地圖標(biāo)注收入咋樣

簡介

Python免費(fèi)調(diào)用百度AI實(shí)現(xiàn)圖片上面的文字識(shí)別

步驟

安裝百度AI庫

!pip install baidu-aip

注冊(cè)百度AI開放平臺(tái)

先注冊(cè)百度AI,獲得ID和密鑰。注冊(cè)方法可參考:注冊(cè)方法 只需走到 “1.6 獲取密鑰” 即可。然后記錄下自己的APP_ID、API_KEY、SECRET_KEY,就可以開始了。

調(diào)用glob庫

glob庫用于獲得指定路徑下的指定后綴的文件,圖片使用的是《數(shù)學(xué)模型》pdf掃描版,部分如下:

import glob
path = "數(shù)學(xué)模型\\"
glob.glob(path+"*.png")

指定文件夾中的指定的.png后綴的文件,全部提取出來了:

選取第一張圖片 “數(shù)學(xué)模型1.png” 做測(cè)試:

files = glob.glob(path+"*.png")
file = files[0]

調(diào)用AipOcr庫識(shí)別文字

導(dǎo)入AipOcr模塊,這個(gè)模塊是用于做文字識(shí)別的(OCR即Optical Character Recognition,光學(xué)字符識(shí)別)。填入你申請(qǐng)的ID和KEY,client = AipOcr()是固定寫法。先用二進(jìn)制方式rb打開,然后讀取,再調(diào)用百度AI進(jìn)行識(shí)別,并將識(shí)別結(jié)果存入message變量。

from aip import AipOcr #導(dǎo)入AipOcr模塊,用于做文字識(shí)別
import glob

APP_ID = '*********' # 你申請(qǐng)的
API_KEY = '*********'# 你申請(qǐng)的
SECRET_KEY = '*********'# 你申請(qǐng)的
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)

pic = open(file,'rb')# 以二進(jìn)制(rb)打開
img = pic.read() # 讀取
message = client.basicGeneral(img) # 調(diào)用百度AI識(shí)別圖片中的文字

查看message參數(shù),結(jié)果如下:

可見,message參數(shù)的結(jié)果為 “大字典” 形式,其中的鍵 words_result 所對(duì)應(yīng)的值為一個(gè) “大列表” ,這個(gè)列表里又有很多鍵值對(duì),鍵都是words,值就是AI從圖片上識(shí)別出來的內(nèi)容。使用語句message['words_result'][0...n]['words']可以篩選出該頁的標(biāo)題:

message['words_result'][1]['words']

for循環(huán)逐行提取:

for words in message['words_result']:
    word = words['words'] # 提取文字
    print(word)

識(shí)別效果圖:

識(shí)別也不是完美的,有很多識(shí)別錯(cuò)誤與未識(shí)別出的文字。當(dāng)然,原圖字體越清晰,識(shí)別度越高。

可能會(huì)遇到的問題

識(shí)別過程中可能會(huì)遇到類似識(shí)別錯(cuò)誤(無法識(shí)別)問題,原因是未領(lǐng)取免費(fèi)識(shí)別次數(shù),解決過程如下:

百度OCR API識(shí)別失?。篛pen api qps request limit reached 錯(cuò)誤 解決方法

幾個(gè)月前,用Python寫了個(gè)小工具,主要是用到了百度的OCR API做了個(gè)文字識(shí)別的小工具,前面一直能用,然而今天,在使用的時(shí)候,報(bào)錯(cuò)了。
錯(cuò)誤如下:Open api qps request limit reached

最后終于找到了解決方法,原來,現(xiàn)在要自己去領(lǐng)取免費(fèi)的測(cè)試額度了?。。?/p>

領(lǐng)取免費(fèi)測(cè)試額度的地址:(或者你在你原來那個(gè)調(diào)用的那個(gè)項(xiàng)目里也可以找到免費(fèi)領(lǐng)取測(cè)試額度,見下圖)

https://console.bce.baidu.com/ai/#/ai/ocr/overview/resource/getFree

領(lǐng)取完之后,還是用原來項(xiàng)目的appID,apiKey,secretKey即可。

然后等領(lǐng)取額度到賬后,重新運(yùn)行就行了。

批量操作

批量操作的核心為for循環(huán),txt_file = open('數(shù)學(xué)模型.txt', 'a')指打開名字為“數(shù)學(xué)模型”的文本文件(若不存在則自動(dòng)新建),模式為添加模式,即'a'模式。添加模式是指,如果文本中已經(jīng)有一些內(nèi)容,則接著往下寫,不會(huì)影響原來的內(nèi)容。如果是'w'模式,則會(huì)將之前的內(nèi)容全部覆蓋。然后遍歷待處理的圖片,逐個(gè)處理:

from aip import AipOcr #導(dǎo)入AipOcr模塊,用于做文字識(shí)別
import glob

APP_ID = '*********' # 你申請(qǐng)的
API_KEY = '*********'# 你申請(qǐng)的
SECRET_KEY = '*********'# 你申請(qǐng)的
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)

path = "數(shù)學(xué)模型\\"
files = glob.glob(path+"*.png")

txt_file = open('數(shù)學(xué)模型.txt', 'a')

for file in files:
    pic = open(file,'rb')# 以二進(jìn)制(rb)打開
    img = pic.read() # 讀取
    message = client.basicGeneral(img) # 調(diào)用百度AI識(shí)別圖片中的文字
    for words in message['words_result']:
        word = words['words'] # 提取文字
        print(word)

        txt_file.write(word) # 將文字寫入文本文件

txt_file.close() # 關(guān)閉文本文件

總結(jié)

到此這篇關(guān)于Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能的文章就介紹到這了,更多相關(guān)Python圖片上文字識(shí)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python基于百度AI的文字識(shí)別的示例
  • python利用百度AI實(shí)現(xiàn)文字識(shí)別功能
  • Python3調(diào)用百度AI識(shí)別圖片中的文字功能示例【測(cè)試可用】
  • Python基于百度AI實(shí)現(xiàn)OCR文字識(shí)別
  • python調(diào)用百度AI接口實(shí)現(xiàn)人流量統(tǒng)計(jì)
  • python 使用百度AI接口進(jìn)行人臉對(duì)比的步驟
  • Python基于百度AI實(shí)現(xiàn)抓取表情包
  • python 百度aip實(shí)現(xiàn)文字識(shí)別的實(shí)現(xiàn)示例
  • Python調(diào)用百度AI實(shí)現(xiàn)圖片上表格識(shí)別功能

標(biāo)簽:三亞 呼倫貝爾 銀川 烏魯木齊 呼倫貝爾 安慶 葫蘆島 湘西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能實(shí)例》,本文關(guān)鍵詞  Python,調(diào)用,百度,實(shí)現(xiàn),圖,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能實(shí)例》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python調(diào)用百度AI實(shí)現(xiàn)圖片上文字識(shí)別功能實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    龙井市| 驻马店市| 焦作市| 财经| 大丰市| 桂东县| 涟水县| 镇康县| 高淳县| 汉沽区| 庆元县| 沭阳县| 昌黎县| 黄陵县| 胶南市| 黑河市| 花莲县| 安吉县| 疏勒县| 东丰县| 康马县| 丘北县| 都兰县| 涞源县| 平原县| 新邵县| 潮州市| 桂平市| 开阳县| 咸阳市| 通海县| 格尔木市| 玉林市| 商城县| 龙游县| 新沂市| 盐津县| 兴隆县| 陈巴尔虎旗| 新竹市| 西华县|