Rumah >pembangunan bahagian belakang >Tutorial Python >Tutorial: Python menyambung ke antara muka Awan Huawei untuk melaksanakan pengecaman teks OCR

Tutorial: Python menyambung ke antara muka Awan Huawei untuk melaksanakan pengecaman teks OCR

WBOY
WBOYasal
2023-07-05 13:28:371090semak imbas

Tutorial: Python menyambung ke antara muka Awan Huawei untuk melaksanakan pengecaman teks OCR

Pertama, dalam tutorial ini kita akan belajar cara menggunakan bahasa pengaturcaraan Python untuk menyambung ke antara muka Awan Huawei dan melaksanakan teks menggunakan OCR (Pengecaman Aksara Optik, Optik Pengecaman Watak) fungsi pengenalan teknologi. Teknologi OCR boleh menukar teks dalam imej kepada teks elektronik yang boleh diedit dan boleh dicari, yang sangat sesuai untuk pelbagai senario pengecaman teks.

  1. Persediaan
    Sebelum kita mula, kita perlu melengkapkan persediaan berikut:
  2. Daftar dan log masuk ke akaun Huawei Cloud (https://www.huaweicloud.com/)
  3. Buat contoh perkhidmatan OCR dan dapatkan Kunci API yang sepadan dan titik akhir perkhidmatan (Titik Akhir)
  4. Pasang perpustakaan bergantung
    Sebelum menyambung ke antara muka Awan Huawei, kami perlu menggunakan perpustakaan permintaan Python untuk menghantar permintaan HTTP. Jika anda belum memasang perpustakaan permintaan, anda boleh memasangnya melalui arahan berikut:

    $ pip install requests
  5. Tulis kod Python

Pertama, kita perlu mengimport perpustakaan permintaan dan menentukan beberapa pembolehubah malar:

import requests

# 华为云OCR服务端点
ENDPOINT = 'https://ocr.cn-north-4.myhuaweicloud.com'

# 替换成你的API密钥
API_KEY = 'your_api_key'
API_SECRET = 'your_api_secret'
  1. Laksanakan teks OCR fungsi pengecaman

Seterusnya, kita boleh melaksanakan fungsi pengecaman teks OCR. Kami boleh memuat naik imej untuk diiktiraf ke pelayan dan menghantar permintaan kepada API Awan Huawei untuk mendapatkan hasil pengecaman teks.

def recognize_text(image_path):
    url = f'{ENDPOINT}/v1.0/ocr/general-text'
    headers = {
        'Content-Type': 'application/json',
        'X-Auth-Token': 'Token ' + get_auth_token()
    }
    data = {
        "url": image_path
    }
    response = requests.post(url, headers=headers, json=data)
    result = response.json()

    if 'result' in result:
        text = ""
        for item in result['result']['words_block_list']:
            text += item['words'] + ' '
        return text
    else:
        return None


def get_auth_token():
    url = 'https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens'
    headers = {
        'Content-Type': 'application/json'
    }
    data = {
        "auth": {
            "identity": {
                "methods": [
                    "password"
                ],
                "password": {
                    "user": {
                        "name": API_KEY,
                        "password": API_SECRET,
                        "domain": {
                            "name": "hwid"
                        }
                    }
                }
            },
            "scope": {
                "project": {
                    "name": "cn-north-4"
                }
            }
        }
    }
    response = requests.post(url, headers=headers, json=data)

    if 'X-Subject-Token' in response.headers:
        return response.headers['X-Subject-Token']
    else:
        return None


# 使用示例
image_path = '/path/to/your/image.jpg'
result = recognize_text(image_path)
if result:
    print('文字识别结果:', result)
else:
    print('识别失败')

Dalam contoh kod di atas, kami menentukan fungsi recognize_text yang menerima laluan fail imej sebagai parameter dan mengembalikan hasil teks yang diiktiraf. Kami menghantar permintaan HTTP POST ke antara muka OCR Huawei Cloud dan menghantar URL imej ke API dalam bentuk data JSON.

Hasil yang dikembalikan oleh API ialah data dalam format JSON Kami mengekstrak hasil pengecaman teks dengan menghuraikan data JSON.

Nota: Dalam contoh kod, kami menggunakan kunci API dan titik akhir perkhidmatan yang kami dapat dalam kerja penyediaan, sila pastikan untuk menggantikannya dengan kunci API anda sendiri.

  1. Ringkasan
    Melalui tutorial ini, kami belajar cara menggunakan Python untuk menyambung ke antara muka OCR Huawei Cloud dan melaksanakan fungsi pengecaman teks. Teknologi OCR digunakan secara meluas dalam pelbagai senario, seperti mengimbas dokumen, pengecaman plat lesen, terjemahan imej, dll. Anda boleh melaraskan kod selanjutnya untuk memenuhi keperluan pengecaman yang lebih kompleks berdasarkan keperluan sebenar anda.

Atas ialah kandungan terperinci Tutorial: Python menyambung ke antara muka Awan Huawei untuk melaksanakan pengecaman teks OCR. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn