作業環境前置準備:
安裝必要性元件(辨識核心元件tesseract-ocr 需下載安裝,外加要辦識之語系)
安裝相關套件
pip install pillow
pip install pytesseract
# -*- coding: utf-8 -*-
'''
python取圖檔,辨識中文
'''
#'開啟檔案總管 (開啟轉換後之檔案使用)'
import os,sys
import subprocess
import glob
from os import path
from PIL import Image
import pytesseract
# 檢查命令列參數是否足夠
if len(sys.argv) < 2:
print("Usage: python ocr_script.py <image_file>")
sys.exit(1) # 結束程式,返回錯誤碼
file_path = sys.argv[1] # 取得第一個命令列參數作為檔案路徑
#'預設位址如下,但如安裝不同處,需告訴PYHTON 辨識核心元件在哪,如此方能辦識處理
pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files/Tesseract-OCR/tesseract.exe'
img = Image.open(file_path)
#辯識如為繁體中文字之圖檔,參數為'chi_tra' ;🏯日文字之圖檔,參數改為'jpn'
text1 = pytesseract.image_to_string(img, lang='chi_tra')
#出現UnicodeEncodeError: 'cp950' codec can't encode character '\u5f53',需再加入UTF8編碼,如下open('file.txt', mode = 'w', encoding='UTF-8')
with open('file.txt', mode = 'w') as f:
f.write(text1)
f.close()
#'將剛才圖檔辨識後結果,以檔案總管直接將它開啟查閱
subprocess.Popen('explorer "file.txt"')
運用方式1:可將您未提供字幕YOUTUBE網站,不瞭解的日文考題,截圖辦識成純文字後(將PYTHON編譯成EXE,再透過圖檔右鍵傳送到EXE檔(shell:sendto),立即取得日文純文字考題),再貼到 AI神器去解析考題,省去打字時間 。
運用方式2:以目前AI辦識技術已非難事,將截圖片段直接上傳AI,無需透過本程式,亦是另一種可行方式,但缺點是需考量上傳資料是否涉機敏性(如:公司公文、個資等),如有就可使用此離線工具做轉換辨識處理。
相關參考資訊: