Schnellstart: Azure Vision v3.2 GA Read

OCR-Editionen (Read)

Wichtig

Wählen Sie die Read-Edition aus, die Ihren Anforderungen am besten entspricht.

Eingabe Beispiele Ausgabe lesen Vorteil
Bilder: Allgemeine, in natürlichen Umgebungen aufgenommene Bilder Etiketten, Straßenschilder und Poster OCR für Bilder (Version 4.0) Optimiert für allgemeine, nicht dokumentbezogene Bilder mit einer leistungsoptimierten synchronen API, die das Einbetten von OCR in Ihre Benutzerfreundlichkeitsszenarien erleichtert.
Dokumente: Digital und gescannt, einschließlich Bildern Bücher, Artikel und Berichte Dokumentintelligenz-Lesemodell Optimiert für textreiche gescannte und digitale Dokumente mit einer asynchronen API, um die intelligente Verarbeitung von Dokumenten in großem Maßstab zu automatisieren.

Informationen zu Azure Vision v3.2 GA Lesen

Sind Sie auf der Suche nach dem neuesten Azure Vision v3.2 GA Read? Alle zukünftigen Read OCR-Verbesserungen sind Teil der beiden zuvor aufgeführten Dienste. Es gibt keine weiteren Updates für Azure Vision v3.2. Weitere Informationen finden Sie unter Call Azure Vision 3.2 GA Read API und Quickstart: Azure Vision v3.2 GA Read.

Führen Sie erste Schritte mit Azure Vision in der Foundry Tools-Lese-REST-API oder Clientbibliotheken aus. Die Lese-API stellt KI-Algorithmen zum Extrahieren von Text aus Bildern bereit und gibt sie in strukturierter Form als Zeichenfolgen zurück. Führen Sie die folgenden Schritte aus, um ein Paket in Ihrer Anwendung zu installieren und den Beispielcode für grundlegende Aufgaben auszuprobieren.

Verwenden Sie die OCR-Clientbibliothek (Optische Zeichenerkennung), um gedruckten und handschriftlichen Text aus einem Bild zu lesen. Der OCR-Dienst kann sichtbaren Text in einem Bild lesen und in einen Zeichendatenstrom konvertieren. Weitere Informationen zur Texterkennung finden Sie in der OCR-Übersicht. Der Code in diesem Abschnitt verwendet das neueste Azure Vision in Foundry ToolsPaket.

Tipp

Sie können auch Text aus einem lokalen Bild extrahieren. Siehe die ComputerVisionClient-Methoden , z. B. ReadInStreamAsync. Oder sehen Sie sich den Beispielcode für GitHub für Szenarien mit lokalen Bildern an.

Reference-Dokumentation | Library Quellcode | Package (NuGet) | Beispiele

Voraussetzungen

  • Ein Azure-Abonnement – Create one for free.
  • Die Visual Studio-IDE oder die aktuelle Version von .NET Core.
  • Eine Azure-Vision-Ressource. Sie können das kostenlose Preisniveau (F0) verwenden, um den Dienst zu testen und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
  • Der Schlüssel und Endpunkt aus der Ressource, die Sie erstellen, um Ihre Anwendung mit Azure Vision zu verbinden.
    1. Nachdem Ihre Azure Vision-Ressource bereitgestellt wurde, wählen Sie Go to resource aus.
    2. Wählen Sie im linken Bereich Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt für die spätere Verwendung in der Schnellstartanleitung.

Erstellen von Umgebungsvariablen

Schreiben Sie in diesem Beispiel Ihre Anmeldeinformationen in Umgebungsvariablen auf dem lokalen Computer, auf dem die Anwendung ausgeführt wird.

Wechseln Sie zum Azure-Portal. Wenn die Ressource, die Sie im Abschnitt "Voraussetzungen" erstellt haben, erfolgreich bereitgestellt wurde, wählen Sie unter "Nächste Schritte" die Option "Zur Ressource wechseln" aus. Auf der Seite "Schlüssel und Endpunkt" der Face-Ressource finden Sie Ihren Schlüssel und Endpunkt unter "Ressourcenverwaltung". Ihr Ressourcenschlüssel ist nicht mit Ihrer Azure-Abonnement-ID identisch.

Um die Umgebungsvariable für Ihren Schlüssel und Endpunkt festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und die Entwicklungsumgebung.

  • Zum Festlegen der Umgebungsvariablen VISION_KEY ersetzen Sie <your_key> durch einen der Schlüssel für Ihre Ressource.
  • Um die Umgebungsvariable VISION_ENDPOINT festzulegen, ersetzen Sie <your_endpoint> durch den Endpunkt für Ihre Ressource.

Wichtig

Wir empfehlen die Verwendung der Microsoft Entra ID-Authentifizierung in Verbindung mit verwalteten Identitäten für Azure-Ressourcen, um zu vermeiden, dass Zugangsdaten mit Ihren Anwendungen gespeichert werden, die in der Cloud ausgeführt werden.

Verwenden Sie API-Schlüssel mit Vorsicht. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und veröffentlichen Sie ihn nie öffentlich. Wenn Sie API-Schlüssel verwenden, speichern Sie sie sicher in Azure Key Vault, drehen Sie die Schlüssel regelmäßig, und beschränken Sie den Zugriff auf Azure Key Vault mithilfe rollenbasierter Zugriffssteuerung und Netzwerkzugriffseinschränkungen. Weitere Informationen zur sicheren Verwendung von API-Schlüsseln in Ihren Apps finden Sie unter API-Schlüssel mit Azure Key Vault.

Weitere Informationen zur Sicherheit von AI-Diensten finden Sie unter Authenticate-Anforderungen an Azure KI Services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle ausgeführten Programme neu starten, die die Umgebungsvariablen lesen, einschließlich des Konsolenfensters.

Lesen gedruckter und handschriftlicher Texte

  1. Erstellen Sie eine neue C#-Anwendung.

    Erstellen Sie mit Visual Studio ein Console App (.NET Framework) Projekt für C#, Windows, Console.

    Nachdem Sie ein neues Projekt erstellt haben, installieren Sie die Clientbibliothek:

    1. Klicken Sie mit der rechten Maustaste auf die Projektmappe in der Projektmappen-Explorer und wählen Sie Manage NuGet Packages for Solution aus.
    2. Wählen Sie im daraufhin geöffneten Paket-Manager " Durchsuchen" aus. Wählen Sie "Vorabversionen einschließen" aus.
    3. Suchen und wählen Sie Microsoft.Azure.CognitiveServices.Vision.ComputerVision aus.
    4. Wählen Sie im Dialogfeld "Details" Ihr Projekt aus, und wählen Sie die neueste stabile Version aus. Wählen Sie dann "Installieren" aus.
  2. Öffnen Sie im Projektverzeichnis die Program.cs Datei in Ihrem bevorzugten Editor oder ihrer bevorzugten IDE. Ersetzen Sie den Inhalt von Program.cs durch den folgenden Code.

    using System;
    using System.Collections.Generic;
    using Microsoft.Azure.CognitiveServices.Vision.ComputerVision;
    using Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models;
    using System.Threading.Tasks;
    using System.IO;
    using Newtonsoft.Json;
    using Newtonsoft.Json.Linq;
    using System.Threading;
    using System.Linq;
    
    namespace ComputerVisionQuickstart
    {
        class Program
        {
            // Add your Computer Vision key and endpoint
            static string key = Environment.GetEnvironmentVariable("VISION_KEY");
            static string endpoint = Environment.GetEnvironmentVariable("VISION_ENDPOINT");
    
            private const string READ_TEXT_URL_IMAGE = "https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/printed_text.jpg";
    
            static void Main(string[] args)
            {
                Console.WriteLine("Azure Cognitive Services Computer Vision - .NET quickstart example");
                Console.WriteLine();
    
                ComputerVisionClient client = Authenticate(endpoint, key);
    
                // Extract text (OCR) from a URL image using the Read API
                ReadFileUrl(client, READ_TEXT_URL_IMAGE).Wait();
            }
    
            public static ComputerVisionClient Authenticate(string endpoint, string key)
            {
                ComputerVisionClient client =
                  new ComputerVisionClient(new ApiKeyServiceClientCredentials(key))
                  { Endpoint = endpoint };
                return client;
            }
    
            public static async Task ReadFileUrl(ComputerVisionClient client, string urlFile)
            {
                Console.WriteLine("----------------------------------------------------------");
                Console.WriteLine("READ FILE FROM URL");
                Console.WriteLine();
    
                // Read text from URL
                var textHeaders = await client.ReadAsync(urlFile);
                // After the request, get the operation location (operation ID)
                string operationLocation = textHeaders.OperationLocation;
                Thread.Sleep(2000);
    
                // Retrieve the URI where the extracted text will be stored from the Operation-Location header.
                // We only need the ID and not the full URL
                const int numberOfCharsInOperationId = 36;
                string operationId = operationLocation.Substring(operationLocation.Length - numberOfCharsInOperationId);
    
                // Extract the text
                ReadOperationResult results;
                Console.WriteLine($"Extracting text from URL file {Path.GetFileName(urlFile)}...");
                Console.WriteLine();
                do
                {
                    results = await client.GetReadResultAsync(Guid.Parse(operationId));
                }
                while ((results.Status == OperationStatusCodes.Running ||
                    results.Status == OperationStatusCodes.NotStarted));
    
                // Display the found text.
                Console.WriteLine();
                var textUrlFileResults = results.AnalyzeResult.ReadResults;
                foreach (ReadResult page in textUrlFileResults)
                {
                    foreach (Line line in page.Lines)
                    {
                        Console.WriteLine(line.Text);
                    }
                }
                Console.WriteLine();
            }
    
        }
    }
    
  3. Als optionalen Schritt finden Sie heraus, wie die Daten verarbeitet werden. Wenn Sie z. B. explizit das neueste GA-Modell angeben möchten, bearbeiten Sie den ReadAsync Aufruf wie dargestellt. Überspringen Sie den Parameter, oder verwenden "latest" Sie das neueste GA-Modell.

      // Read text from URL with a specific model version
      var textHeaders = await client.ReadAsync(urlFile,null,null,"2022-04-30");
    
  4. Führen Sie die Anwendung aus.

    • Wählen Sie im Menü " Debuggen " die Option "Debuggen starten" aus.

Ausgabe

Azure Vision - .NET quickstart example

----------------------------------------------------------
READ FILE FROM URL

Extracting text from URL file printed_text.jpg...


Nutrition Facts Amount Per Serving
Serving size: 1 bar (40g)
Serving Per Package: 4
Total Fat 13g
Saturated Fat 1.5g
Amount Per Serving
Trans Fat 0g
Calories 190
Cholesterol 0mg
Calories from Fat 110
Sodium 20mg
nt Daily Values are based on Vitamin A 50%
calorie diet.

Bereinigen von Ressourcen

Wenn Sie ein Foundry Tools-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder Ressourcengruppe löschen. Durch das Löschen der Ressourcengruppe werden auch alle anderen ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie erfahren, wie Sie die OCR-Clientbibliothek installieren und die Lese-API verwenden. Erfahren Sie als Nächstes mehr über die Funktionen der Lese-API.

Verwenden Sie die OCR-Clientbibliothek (Optische Zeichenerkennung), um gedruckten und handschriftlichen Text aus einem Remotebild zu lesen. Der OCR-Dienst kann sichtbaren Text in einem Bild lesen und in einen Zeichendatenstrom konvertieren. Weitere Informationen zur Texterkennung finden Sie in der OCR-Übersicht.

Tipp

Sie können auch Text aus einem lokalen Bild lesen. Siehe die ComputerVisionClientOperationsMixin-Methoden , z. B. read_in_stream. Oder sehen Sie sich den Beispielcode für GitHub für Szenarien mit lokalen Bildern an.

Reference-Dokumentation | Library Quellcode | Package (PiPy) | Beispiele

Voraussetzungen

  • Ein Azure-Abonnement – Create one for free.
  • Python 3.x.
  • Ihre Python-Installation sollte pip enthalten. Überprüfen Sie, ob pip installiert ist, indem Sie pip --version in der Befehlszeile ausführen. Erhalten Sie pip durch die Installation der neuesten Version von Python.
  • Eine Azure Vision in Foundry Tools Ressource. Sie können das kostenlose Preisniveau (F0) verwenden, um den Dienst zu testen und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
  • Der Schlüssel und Endpunkt aus der Ressource, die Sie erstellen, um Ihre Anwendung mit Azure Vision zu verbinden.
    1. Nachdem Ihre Azure Vision-Ressource bereitgestellt wurde, wählen Sie Go to resource aus.
    2. Wählen Sie im linken Bereich Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt für die spätere Verwendung in der Schnellstartanleitung.

Erstellen von Umgebungsvariablen

Schreiben Sie in diesem Beispiel Ihre Anmeldeinformationen in Umgebungsvariablen auf dem lokalen Computer, auf dem die Anwendung ausgeführt wird.

Wechseln Sie zum Azure-Portal. Wenn die Ressource, die Sie im Abschnitt "Voraussetzungen" erstellt haben, erfolgreich bereitgestellt wurde, wählen Sie unter "Nächste Schritte" die Option "Zur Ressource wechseln" aus. Auf der Seite "Schlüssel und Endpunkt" der Face-Ressource finden Sie Ihren Schlüssel und Endpunkt unter "Ressourcenverwaltung". Ihr Ressourcenschlüssel ist nicht mit Ihrer Azure-Abonnement-ID identisch.

Um die Umgebungsvariable für Ihren Schlüssel und Endpunkt festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und die Entwicklungsumgebung.

  • Zum Festlegen der Umgebungsvariablen VISION_KEY ersetzen Sie <your_key> durch einen der Schlüssel für Ihre Ressource.
  • Um die Umgebungsvariable VISION_ENDPOINT festzulegen, ersetzen Sie <your_endpoint> durch den Endpunkt für Ihre Ressource.

Wichtig

Wir empfehlen die Verwendung der Microsoft Entra ID-Authentifizierung in Verbindung mit verwalteten Identitäten für Azure-Ressourcen, um zu vermeiden, dass Zugangsdaten mit Ihren Anwendungen gespeichert werden, die in der Cloud ausgeführt werden.

Verwenden Sie API-Schlüssel mit Vorsicht. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und veröffentlichen Sie ihn nie öffentlich. Wenn Sie API-Schlüssel verwenden, speichern Sie sie sicher in Azure Key Vault, drehen Sie die Schlüssel regelmäßig, und beschränken Sie den Zugriff auf Azure Key Vault mithilfe rollenbasierter Zugriffssteuerung und Netzwerkzugriffseinschränkungen. Weitere Informationen zur sicheren Verwendung von API-Schlüsseln in Ihren Apps finden Sie unter API-Schlüssel mit Azure Key Vault.

Weitere Informationen zur Sicherheit von AI-Diensten finden Sie unter Authenticate-Anforderungen an Azure KI Services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle ausgeführten Programme neu starten, die die Umgebungsvariablen lesen, einschließlich des Konsolenfensters.

Lesen gedruckter und handschriftlicher Texte

  1. Installieren Sie die Clientbibliothek.

    Führen Sie in einem Konsolenfenster den folgenden Befehl aus:

    pip install --upgrade azure-cognitiveservices-vision-computervision
    
  2. Installieren Sie die Bibliothek Pillow.

    pip install pillow
    
  3. Erstellen Sie eine neue Python Anwendungsdatei, quickstart-file.py. Öffnen Sie sie dann in Ihrem bevorzugten Editor oder ihrer bevorzugten IDE.

  4. Ersetzen Sie den Inhalt von quickstart-file.py durch den folgenden Code.

    from azure.cognitiveservices.vision.computervision import ComputerVisionClient
    from azure.cognitiveservices.vision.computervision.models import OperationStatusCodes
    from azure.cognitiveservices.vision.computervision.models import VisualFeatureTypes
    from msrest.authentication import CognitiveServicesCredentials
    
    from array import array
    import os
    from PIL import Image
    import sys
    import time
    
    '''
    Authenticate
    Authenticates your credentials and creates a client.
    '''
    subscription_key = os.environ["VISION_KEY"]
    endpoint = os.environ["VISION_ENDPOINT"]
    
    computervision_client = ComputerVisionClient(endpoint, CognitiveServicesCredentials(subscription_key))
    '''
    END - Authenticate
    '''
    
    '''
    OCR: Read File using the Read API, extract text - remote
    This example will extract text in an image, then print results, line by line.
    This API call can also extract handwriting style text (not shown).
    '''
    print("===== Read File - remote =====")
    # Get an image with text
    read_image_url = "https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png"
    
    # Call API with URL and raw response (allows you to get the operation location)
    read_response = computervision_client.read(read_image_url,  raw=True)
    
    # Get the operation location (URL with an ID at the end) from the response
    read_operation_location = read_response.headers["Operation-Location"]
    # Grab the ID from the URL
    operation_id = read_operation_location.split("/")[-1]
    
    # Call the "GET" API and wait for it to retrieve the results 
    while True:
        read_result = computervision_client.get_read_result(operation_id)
        if read_result.status not in ['notStarted', 'running']:
            break
        time.sleep(1)
    
    # Print the detected text, line by line
    if read_result.status == OperationStatusCodes.succeeded:
        for text_result in read_result.analyze_result.read_results:
            for line in text_result.lines:
                print(line.text)
                print(line.bounding_box)
    print()
    '''
    END - Read File - remote
    '''
    
    print("End of Computer Vision quickstart.")
    
    
  5. Als optionalen Schritt finden Sie heraus, wie die Daten verarbeitet werden. Wenn Sie beispielsweise explizit das neueste GA-Modell angeben möchten, bearbeiten Sie die read Anweisung wie dargestellt. Wird der Parameter ausgelassen oder "latest" automatisch verwendet, kommt das neueste GA-Modell zum Einsatz.

       # Call API with URL and raw response (allows you to get the operation location)
       read_response = computervision_client.read(read_image_url,  raw=True, model_version="2022-04-30")
    
  6. Führen Sie die Anwendung mit dem python Befehl in der Schnellstartdatei aus.

    python quickstart-file.py
    

Ausgabe

===== Read File - remote =====
The quick brown fox jumps
[38.0, 650.0, 2572.0, 699.0, 2570.0, 854.0, 37.0, 815.0]
Over
[184.0, 1053.0, 508.0, 1044.0, 510.0, 1123.0, 184.0, 1128.0]
the lazy dog!
[639.0, 1011.0, 1976.0, 1026.0, 1974.0, 1158.0, 637.0, 1141.0]

End of Azure Vision quickstart.

Bereinigen von Ressourcen

Wenn Sie ein Foundry Tools-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder Ressourcengruppe löschen. Durch das Löschen der Ressourcengruppe werden auch alle anderen ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie erfahren, wie Sie die OCR-Clientbibliothek installieren und die Lese-API verwenden. Erfahren Sie als Nächstes mehr über die Funktionen der Lese-API.

Verwenden Sie die OCR-Clientbibliothek (Optische Zeichenerkennung), um gedruckten und handschriftlichen Text mit der Read-API zu lesen. Der OCR-Dienst kann sichtbaren Text in einem Bild lesen und in einen Zeichendatenstrom konvertieren. Weitere Informationen zur Texterkennung finden Sie in der OCR-Übersicht.

Tipp

Sie können auch Text aus einem lokalen Bild lesen. Sehen Sie sich die ComputerVisionClient-Methoden an, z. B. readInStream. Oder sehen Sie sich den Beispielcode für GitHub für Szenarien mit lokalen Bildern an.

Referenzdokumentation | Paket (npm) | Proben

Voraussetzungen

  • Ein Azure-Abonnement – Create one for free.
  • Die aktuelle Version von Node.js.
  • Eine Azure Vision in Foundry Tools Ressource. Sie können das kostenlose Preisniveau (F0) verwenden, um den Dienst zu testen und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
  • Der Schlüssel und Endpunkt aus der Ressource, die Sie erstellen, um Ihre Anwendung mit Azure Vision zu verbinden.
    1. Nachdem Ihre Azure Vision-Ressource bereitgestellt wurde, wählen Sie Go to resource aus.
    2. Wählen Sie im linken Bereich Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt für die spätere Verwendung in der Schnellstartanleitung.

Erstellen von Umgebungsvariablen

Schreiben Sie in diesem Beispiel Ihre Anmeldeinformationen in Umgebungsvariablen auf dem lokalen Computer, auf dem die Anwendung ausgeführt wird.

Wechseln Sie zum Azure-Portal. Wenn die Ressource, die Sie im Abschnitt "Voraussetzungen" erstellt haben, erfolgreich bereitgestellt wurde, wählen Sie unter "Nächste Schritte" die Option "Zur Ressource wechseln" aus. Auf der Seite "Schlüssel und Endpunkt" der Face-Ressource finden Sie Ihren Schlüssel und Endpunkt unter "Ressourcenverwaltung". Ihr Ressourcenschlüssel ist nicht mit Ihrer Azure-Abonnement-ID identisch.

Um die Umgebungsvariable für Ihren Schlüssel und Endpunkt festzulegen, öffnen Sie ein Konsolenfenster, und befolgen Sie die Anweisungen für Ihr Betriebssystem und die Entwicklungsumgebung.

  • Zum Festlegen der Umgebungsvariablen VISION_KEY ersetzen Sie <your_key> durch einen der Schlüssel für Ihre Ressource.
  • Um die Umgebungsvariable VISION_ENDPOINT festzulegen, ersetzen Sie <your_endpoint> durch den Endpunkt für Ihre Ressource.

Wichtig

Wir empfehlen die Verwendung der Microsoft Entra ID-Authentifizierung in Verbindung mit verwalteten Identitäten für Azure-Ressourcen, um zu vermeiden, dass Zugangsdaten mit Ihren Anwendungen gespeichert werden, die in der Cloud ausgeführt werden.

Verwenden Sie API-Schlüssel mit Vorsicht. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und veröffentlichen Sie ihn nie öffentlich. Wenn Sie API-Schlüssel verwenden, speichern Sie sie sicher in Azure Key Vault, drehen Sie die Schlüssel regelmäßig, und beschränken Sie den Zugriff auf Azure Key Vault mithilfe rollenbasierter Zugriffssteuerung und Netzwerkzugriffseinschränkungen. Weitere Informationen zur sicheren Verwendung von API-Schlüsseln in Ihren Apps finden Sie unter API-Schlüssel mit Azure Key Vault.

Weitere Informationen zur Sicherheit von AI-Diensten finden Sie unter Authenticate-Anforderungen an Azure KI Services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nachdem Sie die Umgebungsvariablen hinzugefügt haben, müssen Sie möglicherweise alle ausgeführten Programme neu starten, die die Umgebungsvariablen lesen, einschließlich des Konsolenfensters.

Lesen gedruckter und handschriftlicher Texte

Erstellen Sie eine neue Node.js Anwendung.

  1. Erstellen Sie in einem Konsolenfenster ein neues Verzeichnis für Ihre App, und navigieren Sie zu ihr.

    mkdir myapp
    cd myapp
    
  2. Führen Sie den npm init Befehl aus, um eine Knotenanwendung mit einer package.json Datei zu erstellen. Wählen Sie die EINGABETASTE für alle Eingabeaufforderungen aus.

    npm init
    
  3. Um die Clientbibliothek zu installieren, installieren Sie das ms-rest-azure paket und @azure/cognitiveservices-computervision npm:

    npm install ms-rest-azure
    npm install @azure/cognitiveservices-computervision
    
  4. Installieren Sie das asynchrone Modul:

    npm install async
    

    Die Datei Ihrer App package.json wird mit den Abhängigkeiten aktualisiert.

  5. Erstellen Sie eine neue Datei, index.js, und öffnen Sie sie in einem Text-Editor.

  6. Fügen Sie den folgenden Code in ihre index.js Datei ein.

    'use strict';
    
    const async = require('async');
    const fs = require('fs');
    const https = require('https');
    const path = require("path");
    const createReadStream = require('fs').createReadStream
    const sleep = require('util').promisify(setTimeout);
    const ComputerVisionClient = require('@azure/cognitiveservices-computervision').ComputerVisionClient;
    const ApiKeyCredentials = require('@azure/ms-rest-js').ApiKeyCredentials;
    /**
     * AUTHENTICATE
     * This single client is used for all examples.
     */
    const key = process.env.VISION_KEY;
    const endpoint = process.env.VISION_ENDPOINT;
    
    const computerVisionClient = new ComputerVisionClient(
      new ApiKeyCredentials({ inHeader: { 'Ocp-Apim-Subscription-Key': key } }), endpoint);
    /**
     * END - Authenticate
     */
    
    function computerVision() {
      async.series([
        async function () {
    
          /**
           * OCR: READ PRINTED & HANDWRITTEN TEXT WITH THE READ API
           * Extracts text from images using OCR (optical character recognition).
           */
          console.log('-------------------------------------------------');
          console.log('READ PRINTED, HANDWRITTEN TEXT AND PDF');
          console.log();
    
          // URL images containing printed and/or handwritten text. 
          // The URL can point to image files (.jpg/.png/.bmp) or multi-page files (.pdf, .tiff).
          const printedTextSampleURL = 'https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/printed_text.jpg';
    
          // Recognize text in printed image from a URL
          console.log('Read printed text from URL...', printedTextSampleURL.split('/').pop());
          const printedResult = await readTextFromURL(computerVisionClient, printedTextSampleURL);
          printRecText(printedResult);
    
          // Perform read and await the result from URL
          async function readTextFromURL(client, url) {
            // To recognize text in a local image, replace client.read() with readTextInStream() as shown:
            let result = await client.read(url);
            // Operation ID is last path segment of operationLocation (a URL)
            let operation = result.operationLocation.split('/').slice(-1)[0];
    
            // Wait for read recognition to complete
            // result.status is initially undefined, since it's the result of read
            while (result.status !== "succeeded") { await sleep(1000); result = await client.getReadResult(operation); }
            return result.analyzeResult.readResults; // Return the first page of result. Replace [0] with the desired page if this is a multi-page file such as .pdf or .tiff.
          }
    
          // Prints all text from Read result
          function printRecText(readResults) {
            console.log('Recognized text:');
            for (const page in readResults) {
              if (readResults.length > 1) {
                console.log(`==== Page: ${page}`);
              }
              const result = readResults[page];
              if (result.lines.length) {
                for (const line of result.lines) {
                  console.log(line.words.map(w => w.text).join(' '));
                }
              }
              else { console.log('No recognized text.'); }
            }
          }
    
          /**
           * 
           * Download the specified file in the URL to the current local folder
           * 
           */
          function downloadFilesToLocal(url, localFileName) {
            return new Promise((resolve, reject) => {
              console.log('--- Downloading file to local directory from: ' + url);
              const request = https.request(url, (res) => {
                if (res.statusCode !== 200) {
                  console.log(`Download sample file failed. Status code: ${res.statusCode}, Message: ${res.statusMessage}`);
                  reject();
                }
                var data = [];
                res.on('data', (chunk) => {
                  data.push(chunk);
                });
                res.on('end', () => {
                  console.log('   ... Downloaded successfully');
                  fs.writeFileSync(localFileName, Buffer.concat(data));
                  resolve();
                });
              });
              request.on('error', function (e) {
                console.log(e.message);
                reject();
              });
              request.end();
            });
          }
    
          /**
           * END - Recognize Printed & Handwritten Text
           */
          console.log();
          console.log('-------------------------------------------------');
          console.log('End of quickstart.');
    
        },
        function () {
          return new Promise((resolve) => {
            resolve();
          })
        }
      ], (err) => {
        throw (err);
      });
    }
    
    computerVision();
    
  7. Als optionalen Schritt finden Sie heraus, wie die Daten verarbeitet werden. Wenn Sie beispielsweise explizit das neueste GA-Modell angeben möchten, bearbeiten Sie die read Anweisung wie dargestellt. Wird der Parameter ausgelassen oder "latest" automatisch verwendet, kommt das neueste GA-Modell zum Einsatz.

      let result = await client.read(url,{modelVersion:"2022-04-30"});
    
  8. Führen Sie die Anwendung mit dem node Befehl in der Schnellstartdatei aus.

    node index.js
    

Ausgabe

-------------------------------------------------
READ PRINTED, HANDWRITTEN TEXT AND PDF

Read printed text from URL... printed_text.jpg
Recognized text:
Nutrition Facts Amount Per Serving
Serving size: 1 bar (40g)
Serving Per Package: 4
Total Fat 13g
Saturated Fat 1.5g
Amount Per Serving
Trans Fat 0g
Calories 190
Cholesterol 0mg
ories from Fat 110
Sodium 20mg
nt Daily Values are based on Vitamin A 50%
calorie diet.

-------------------------------------------------
End of quickstart.

Bereinigen von Ressourcen

Wenn Sie ein Foundry Tools-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder Ressourcengruppe löschen. Durch das Löschen der Ressourcengruppe werden auch alle anderen ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie erfahren, wie Sie die OCR-Clientbibliothek installieren und die Lese-API verwenden. Erfahren Sie als Nächstes mehr über die Funktionen der Lese-API.

Verwenden Sie die OCR-REST-API (Optische Zeichenerkennung), um gedruckten und handschriftlichen Text zu lesen.

Hinweis

In dieser Schnellstartanleitung werden cURL-Befehle zum Aufrufen der REST-API verwendet. Sie können die REST-API auch mit einer Programmiersprache aufrufen. In den GitHub-Beispielen finden Sie Beispiele für C#, Python, Java und JavaScript.

Voraussetzungen

  • Ein Azure-Abonnement – Create one for free.
  • cURL installiert.
  • Eine Azure Vision in Foundry Tools Ressource. Sie können das kostenlose Preisniveau (F0) verwenden, um den Dienst zu testen und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
  • Der Schlüssel und Endpunkt aus der Ressource, die Sie erstellen, um Ihre Anwendung mit Azure Vision zu verbinden.
    1. Nachdem Ihre Azure Vision-Ressource bereitgestellt wurde, wählen Sie Go to resource aus.
    2. Wählen Sie im linken Bereich Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt für die spätere Verwendung in der Schnellstartanleitung.

Lesen gedruckter und handschriftlicher Texte

Der OCR-Dienst (Optische Zeichenerkennung) kann sichtbaren Text in einem Bild oder Dokument extrahieren und in einen Zeichenstrom konvertieren. Weitere Informationen zur Textextraktion finden Sie in der OCR-Übersicht.

Aufrufen der Lese-API

Führen Sie die folgenden Schritte aus, um das Beispiel zu erstellen und auszuführen:

  1. Kopieren Sie den folgenden Befehl in einen Text-Editor.

  2. Nehmen Sie bei Bedarf die folgenden Änderungen am Befehl vor:

    1. Ersetzen Sie den Wert von <key> durch Ihren Schlüssel.
    2. Ersetzen Sie den ersten Teil der Anforderungs-URL (https://westcentralus.api.cognitive.microsoft.com/) durch den Text in Ihrer eigenen Endpunkt-URL.

      Hinweis

      Neue Ressourcen, die nach dem 1. Juli 2019 erstellt wurden, verwenden benutzerdefinierte Unterdomänennamen. Weitere Informationen und eine vollständige Liste der regionalen Endpunkte finden Sie unter benutzerdefinierte Unterdomänennamen für Foundry Tools.

    3. Ändern Sie optional die Bild-URL im Anforderungstext (https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) in die URL eines anderen zu analysierenden Bilds.
  3. Öffnen Sie ein Eingabeaufforderungsfenster.

  4. Fügen Sie den Befehl aus dem Text-Editor in das Eingabeaufforderungsfenster ein, und führen Sie dann den Befehl aus.

curl -v -X POST "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/read/analyze" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: <subscription key>" --data-ascii "{'url':'https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png'}"

Die Antwort enthält einen Operation-Location Header, dessen Wert eine eindeutige URL ist. Sie verwenden diese URL, um die Ergebnisse des Lesevorgangs abzufragen. Die URL läuft in 48 Stunden ab.

Optional können Sie die Modellversion angeben.

Als optionalen Schritt finden Sie heraus, wie die Daten verarbeitet werden. Wenn Sie z. B. explizit das neueste GA-Modell angeben möchten, verwenden Sie model-version=2022-04-30 sie als Parameter. Wird der Parameter ausgelassen oder model-version=latest automatisch verwendet, kommt das neueste GA-Modell zum Einsatz.

curl -v -X POST "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/read/analyze?model-version=2022-04-30" -H "Content-Type: application/json" -H "Ocp-Apim-Subscription-Key: <subscription key>" --data-ascii "{'url':'https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png'}"

Abrufen von Leseergebnissen

  1. Kopieren Sie den folgenden Befehl in Den Text-Editor.

  2. Ersetzen Sie die URL durch den Operation-Location Wert, den Sie im vorherigen Verfahren kopiert haben.

  3. Ersetzen Sie den Wert von <key> durch Ihren Schlüssel.

  4. Öffnen Sie ein Konsolenfenster.

  5. Fügen Sie den Befehl aus dem Text-Editor in das Konsolenfenster ein, und führen Sie dann den Befehl aus.

    curl -v -X GET "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/read/analyzeResults/{operationId}" -H "Ocp-Apim-Subscription-Key: {key}" --data-ascii "{body}" 
    

Überprüfen der Antwort

Eine erfolgreiche Antwort wird in JSON zurückgegeben. Die Beispielanwendung analysiert und zeigt eine erfolgreiche Antwort im Konsolenfenster an, ähnlich dem folgenden Beispiel:

{
  "status": "succeeded",
  "createdDateTime": "2021-04-08T21:56:17.6819115+00:00",
  "lastUpdatedDateTime": "2021-04-08T21:56:18.4161316+00:00",
  "analyzeResult": {
    "version": "3.2",
    "readResults": [
      {
        "page": 1,
        "angle": 0,
        "width": 338,
        "height": 479,
        "unit": "pixel",
        "lines": [
          {
            "boundingBox": [
              25,
              14,
              318,
              14,
              318,
              59,
              25,
              59
            ],
            "text": "NOTHING",
            "appearance": {
              "style": {
                "name": "other",
                "confidence": 0.971
              }
            },
            "words": [
              {
                "boundingBox": [
                  27,
                  15,
                  294,
                  15,
                  294,
                  60,
                  27,
                  60
                ],
                "text": "NOTHING",
                "confidence": 0.994
              }
            ]
          }
        ]
      }
    ]
  }
}

Bereinigen von Ressourcen

Wenn Sie ein Foundry Tools-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder Ressourcengruppe löschen. Durch das Löschen der Ressourcengruppe werden auch alle anderen ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie erfahren, wie Sie die Read REST-API aufrufen. Erfahren Sie als Nächstes mehr über die Funktionen der Lese-API.