Rumah >pembangunan bahagian belakang >Tutorial Python >Pengaturcaraan Python melaksanakan dok antara muka Baidu OCR dan fungsi pengekstrakan teks imej
Pengaturcaraan Python untuk melaksanakan dok antara muka OCR Baidu dan fungsi pengekstrakan teks imej
Pengenalan:
Dengan perkembangan pesat pembelajaran mendalam, teknologi OCR (Optical Character Recognition, optical character recognition) secara beransur-ansur menjadi aplikasi popular dalam bidang penglihatan komputer satu. Antara muka OCR yang disediakan oleh platform terbuka Baidu AI menyediakan pembangun dengan keupayaan pengecaman teks yang mudah dan pantas. Artikel ini akan menggabungkan pengaturcaraan Python untuk menunjukkan cara antara muka dengan antara muka OCR Baidu untuk merealisasikan fungsi pengekstrakan teks imej.
Langkah 1: Mohon akaun Baidu AI Open Platform
Pertama, kita perlu mendaftar akaun di laman web rasmi Baidu AI Open Platform (https://ai.baidu.com/). Selepas pendaftaran selesai, anda perlu membuat aplikasi untuk mendapatkan Kunci API dan Kunci Rahsia.
Langkah 2: Pasang perpustakaan Python yang sepadan
Kami perlu menggunakan Python untuk pengaturcaraan, sila pastikan anda telah memasang perpustakaan berikut:
Pustaka ini boleh dipasang melalui arahan berikut:
rrstepee Pelaksanaan PengekodanSeterusnya, kami akan menulis kod Python untuk melaksanakan fungsi pengekstrakan teks imej. Pertama, kita perlu mengimport perpustakaan yang diperlukan:
pip install requestsKemudian, kita perlu menentukan beberapa pembolehubah untuk menyimpan Kunci API, Kunci Rahsia dan maklumat lain:
import requests import base64 import hashlib import time import jsonSeterusnya, kita perlu menulis fungsi untuk menukar imej kepada Base64 Encoded rentetan:
API_KEY = 'your_api_key' SECRET_KEY = 'your_secret_key' OCR_URL = 'https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic'Kemudian, kita perlu menulis fungsi untuk menjana maklumat tandatangan permintaan API:
def image_to_base64(image_path): with open(image_path, 'rb') as image_file: return base64.b64encode(image_file.read()).decode('utf-8')Akhir sekali, kami menulis fungsi utama untuk memanggil antara muka Baidu OCR untuk melaksanakan fungsi pengekstrakan teks imej:
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=' + signLangkah 4: Jalankan kod
Sekarang, kita boleh menjalankan kod untuk mengekstrak maklumat teks daripada imej:
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'])Sebelum menjalankan, sila gantikan 'image.jpg' dengan laluan imej yang anda ingin ekstrak teks. Kesimpulan:
Docking antara muka OCR Baidu direalisasikan melalui pengaturcaraan Python, dan fungsi pengekstrakan teks imej direalisasikan. Ini membolehkan pembangun menggunakan teknologi OCR platform AI Baidu dengan mudah dan cepat untuk merealisasikan pelbagai senario aplikasi pengecaman teks. Sama ada pengimbasan dokumen, pengecaman kod pengesahan atau pengisian borang, menggunakan kuasa OCR, kami boleh melaksanakan pemprosesan perkataan dan analisis dengan lebih cekap. Kami berharap melalui demonstrasi dalam artikel ini, pembaca boleh mempunyai pemahaman yang lebih mendalam tentang prinsip kerja OCR dan melaksanakan aplikasi OCR yang lebih kompleks dalam projek sebenar.
Atas ialah kandungan terperinci Pengaturcaraan Python melaksanakan dok antara muka Baidu OCR dan fungsi pengekstrakan teks imej. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!