Maison  >  Article  >  développement back-end  >  Tutoriel : Python se connecte à l'interface Huawei Cloud pour implémenter la reconnaissance de texte OCR

Tutoriel : Python se connecte à l'interface Huawei Cloud pour implémenter la reconnaissance de texte OCR

WBOY
WBOYoriginal
2023-07-05 13:28:371012parcourir

Tutoriel : Python se connecte à l'interface Huawei Cloud pour implémenter la reconnaissance de texte OCR

Tout d'abord, dans ce tutoriel, nous allons apprendre à utiliser le langage de programmation Python pour se connecter à l'interface Huawei Cloud et implémenter du texte à l'aide de l'OCR (Optical Character Recognition, Optical Fonction d'identification de la technologie de reconnaissance de caractères). La technologie OCR peut convertir le texte des images en texte électronique modifiable et consultable, ce qui convient parfaitement à divers scénarios de reconnaissance de texte.

  1. Préparation
    Avant de commencer, nous devons effectuer les préparations suivantes :
  2. S'inscrire et se connecter à un compte Huawei Cloud (https://www.huaweicloud.com/)
  3. Créer une instance de service OCR et obtenir le Clés API correspondantes et points de terminaison de service (Endpoint)
  4. Installer les bibliothèques dépendantes
    Avant de nous connecter à l'interface Huawei Cloud, nous devons utiliser la bibliothèque de requêtes de Python pour envoyer des requêtes HTTP. Si vous n'avez pas installé la bibliothèque de requêtes, vous pouvez l'installer via la commande suivante :

    $ pip install requests
  5. Écrivez du code Python

Tout d'abord, nous devons importer la bibliothèque de requêtes et définir quelques variables constantes :

import requests

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

# 替换成你的API密钥
API_KEY = 'your_api_key'
API_SECRET = 'your_api_secret'
  1. Implémenter le texte OCR fonction de reconnaissance

Ensuite, nous pouvons implémenter la fonction de reconnaissance de texte OCR. Nous pouvons télécharger l'image à reconnaître sur le serveur et envoyer une requête à l'API Huawei Cloud pour obtenir le résultat de la reconnaissance de texte.

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('识别失败')

Dans l'exemple de code ci-dessus, nous avons défini une fonction recognize_text qui reçoit le chemin d'un fichier image en tant que paramètre et renvoie le résultat texte reconnu. Nous envoyons une requête HTTP POST à ​​l'interface OCR de Huawei Cloud, et envoyons l'URL de l'image à l'API sous forme de données JSON.

Le résultat renvoyé par l'API est des données au format JSON. Nous extrayons les résultats de la reconnaissance de texte en analysant les données JSON.

Remarque : Dans l'exemple de code, nous utilisons la clé API et le point de terminaison de service que nous avons obtenus lors du travail de préparation, assurez-vous de les remplacer par votre propre clé API.

  1. Résumé
    Grâce à ce tutoriel, nous avons appris à utiliser Python pour nous connecter à l'interface OCR de Huawei Cloud et implémenter la fonction de reconnaissance de texte. La technologie OCR est largement utilisée dans divers scénarios, tels que la numérisation de documents, la reconnaissance de plaques d'immatriculation, la traduction d'images, etc. Vous pouvez ajuster davantage le code pour répondre à des besoins de reconnaissance plus complexes en fonction de vos besoins réels.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn