Python程式實現百度OCR介面對接,實作圖片文字擷取功能
引言:
隨著深度學習的快速發展,OCR(Optical Character Recognition,光學字元辨識)技術逐漸成為了電腦視覺領域的熱門應用之一。而百度AI開放平台提供的OCR接口,為開發者提供了便捷快速的文字辨識能力。本文將結合Python編程,示範如何對接百度OCR接口,實現圖片文字的擷取功能。
步驟1:申請百度AI開放平台帳號
首先,我們需要到百度AI開放平台官網(https://ai.baidu.com/)註冊一個帳號。註冊完成後,需要建立一個應用,以取得API Key和Secret Key。
步驟2:安裝對應的Python庫
我們需要使用Python進行編程,請確保已經安裝了以下幾個庫:
pip install requests
import requests import base64 import hashlib import time import json
API_KEY = 'your_api_key' SECRET_KEY = 'your_secret_key' OCR_URL = 'https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic'
def image_to_base64(image_path): with open(image_path, 'rb') as image_file: return base64.b64encode(image_file.read()).decode('utf-8')
def generate_sign(url, params, timestamp, secret_key): sorted_params = sorted(params.items(), key=lambda x: x[0]) sorted_params.append(('timestamp', str(timestamp))) raw_sign = ''.join([x[0] + '=' + x[1] for x in sorted_params]) + secret_key sign = hashlib.md5(raw_sign.encode('utf-8')).hexdigest() return url + '?' + '&'.join([x[0] + '=' + x[1] for x in sorted_params]) + '&sign=' + sign
def ocr(image_path): access_token = get_access_token(API_KEY, SECRET_KEY) url_params = { 'access_token': access_token, 'image': image_to_base64(image_path) } timestamp = int(time.time()) request_url = generate_sign(OCR_URL, url_params, timestamp, SECRET_KEY) response = requests.post(request_url) result = response.json() if 'words_result' in result: for word in result['words_result']: print(word['words']) else: print('Error occurred: ' + result['error_msg'])
現在,我們可以運行代碼來提取圖片中的文字資訊了:
ocr('image.jpg')
透過Python程式實現了百度OCR介面的對接,並實現了圖片文字擷取的功能。這使得開發者能夠方便快速地利用百度AI平台的OCR技術,實現各種文字辨識的應用場景。無論是文件掃描、驗證碼辨識或表單填寫等任務,利用OCR的能力,我們可以更有效率地進行文字處理和分析。希望讀者透過本文的演示,能夠更深入地了解OCR的工作原理,並在實際專案中實現更複雜的OCR應用。
以上是Python程式實作百度OCR介面對接,實現圖片文字擷取功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!