如何使用Python進(jìn)行PDF圖片識(shí)別OCR
使用圖片識(shí)別可以快速提取圖片中的信息,方便高效。
Python并不能直接對PDF進(jìn)行識(shí)別,所以如果是識(shí)別PDF的話,需要先將PDF轉(zhuǎn)化為圖片,然后再進(jìn)行識(shí)別。
必備工具 Python可以安裝3.7及以上版本
tesseract-ocr下載地址: https://github.com/UB-Mannheim/tesseract/wiki 使用最新版本即可
需要用到的庫pip install pillowpip install opencv-pythonpip install fitzpip install PyMuPDFpip install pytesseract代碼示例
from PIL import Imageimport osimport pytesseract import cv2 as cvimport fitzdef pdf_image(pdfPath,imgPath,zoom_x,zoom_y,rotation_angle): # 打開PDF文件 pdf = fitz.open(pdfPath) # 逐頁讀取PDF for pg in range(0, pdf.pageCount): page = pdf[pg] # 設(shè)置縮放和旋轉(zhuǎn)系數(shù) trans = fitz.Matrix(zoom_x, zoom_y).preRotate(rotation_angle) pm = page.getPixmap(matrix=trans, alpha=False) # 開始寫圖像 pm.writePNG(imgPath+str(pg)+'.png') #pm.writePNG(imgPath) pdf.close()pdf_path =’D:/123.pdf’img_path =’D:/123.png’pdf_image(pdf_path,img_path,5,5,0)# 依賴opencvimg=cv.imread(img_path)text=pytesseract.image_to_string(Image.fromarray(img),lang=’chi_tra’)# 不依賴opencv寫法# text=pytesseract.image_to_string(Image.open(img_path))print(text)總結(jié)
識(shí)別清晰的文字圖片的時(shí)候準(zhǔn)確率非常高
但是識(shí)別手寫體的話效果不太好
注意事項(xiàng)在安裝tesseract-ocr 的時(shí)候一定要記得選擇對應(yīng)的語言,不然是無法正常使用的。
以上就是如何使用Python進(jìn)行PDF圖片識(shí)別OCR的詳細(xì)內(nèi)容,更多關(guān)于python pdf圖片識(shí)別ocr的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. 教你如何寫出可維護(hù)的JS代碼2. Vue的Options用法說明3. CSS可以做的幾個(gè)令你嘆為觀止的實(shí)例分享4. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)5. 使用Python和百度語音識(shí)別生成視頻字幕的實(shí)現(xiàn)6. 利用ajax+php實(shí)現(xiàn)商品價(jià)格計(jì)算7. xml中的空格之完全解說8. css代碼優(yōu)化的12個(gè)技巧9. msxml3.dll 錯(cuò)誤 800c0019 系統(tǒng)錯(cuò)誤:-2146697191解決方法10. 怎樣才能用js生成xmldom對象,并且在firefox中也實(shí)現(xiàn)xml數(shù)據(jù)島?
