Teilen über


Schnellstart: Azure KI Vision v3.2 GA Read

OCR-Editionen (Read)

Wichtig

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

Eingabe Beispiele Read-Edition Vorteil
Images: Allgemein, In-the-Wild-Images Beschriftungen, Straßenschilder und Poster OCR für Bilder (Version 4.0) Optimiert für allgemeine Bilder, die keine Dokumente sind, mit einer leistungsstärkeren synchronen API, die die Einbettung von OCR in Ihre Benutzerszenarien erleichtert.
Dokumente: Digital und gescannt, einschließlich Images Bücher, Artikel und Berichte Lesemodell für Document Intelligence Optimiert für gescannte und digitale Dokumente mit einer asynchronen API, um die intelligente Dokumentverarbeitung im großen Stil zu automatisieren.

Info zu Azure KI Vision v3.2 GA Read

Suchen Sie nach der neuesten Azure KI Vision v3.2 GA Read? Alle zukünftigen Read OCR-Erweiterungen sind Teil der beiden zuvor aufgeführten Dienste. Für Azure KI Vision 3.2 wird es keine weiteren Updates geben. Weitere Informationen finden Sie unter Aufrufen der Azure KI Vision 3.2-Lese-API (GA) und Schnellstart: Azure KI Vision v3.2 GA Read.

Hier erhalten Sie Informationen zu den ersten Schritten mit der Azure KI Vision Read-REST-API oder den Clientbibliotheken. Die Lese-API stellt KI-Algorithmen zum Extrahieren von Text aus Bildern und zur Rückgabe als strukturierte Zeichenfolgen bereit. Führen Sie die nachfolgenden Schritte zum Installieren eines Pakets in Ihrer Anwendung aus, und testen Sie den Beispielcode für grundlegende Aufgaben.

Verwenden Sie die OCR-Clientbibliothek (Optical Character Recognition, optische Zeichenerkennung), um gedruckten und handschriftlichen Text aus einem Bild zu lesen. Der OCR-Dienst kann sichtbaren Text in einem Bild lesen und in eine Zeichenfolge konvertieren. Weitere Informationen zur Texterkennung finden Sie in der OCR-Übersicht. Im Code in diesem Abschnitt wird das neueste Azure KI Vision-Paket verwendet.

Tipp

Sie können auch Text aus einem lokalen Bild extrahieren. Sehen Sie sich die ComputerVisionClient-Methoden an, etwa ReadInStreamAsync. Alternativ finden Sie im Beispielcode auf GitHub Szenarien zu lokalen Bildern.

Referenzdokumentation | Quellcode der Bibliothek | Paket (NuGet) | Beispiele

Voraussetzungen

  • Azure-Abonnement – kostenloses Abonnement erstellen.
  • Die Visual Studio-IDE oder die aktuelle Version von .NET Core.
  • Eine Azure KI Vision-Ressource. Sie können den kostenlosen Tarif (F0) verwenden, um den Dienst zu testen, und später für die Produktion auf einen kostenpflichtigen Tarif upgraden.
  • Der Schlüssel und der Endpunkt der von Ihnen erstellten Ressource, um Ihre Anwendung mit dem Azure KI Vision-Dienst zu verbinden.
    1. Wählen Sie nach der Bereitstellung der Azure KI Vision-Ressource Zu Ressource wechseln aus.
    2. Wählen Sie im linken Navigationsmenü Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt zur späteren Verwendung in der Schnellstartanleitung.

Erstellen von Umgebungsvariablen

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

Öffnen Sie das Azure-Portal. Wenn die Ressource, die Sie im Abschnitt Voraussetzungen erstellt haben, erfolgreich bereitgestellt wurde, wählen Sie unter Nächste Schritte die Option Zu Ressource wechseln aus. Schlüssel und Endpunkt finden Sie unter Ressourcenverwaltung auf der Seite Schlüssel und Endpunkte. Ihr Ressourcenschlüssel ist nicht mit Ihrer Azure-Abonnement-ID identisch.

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

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

Wichtig

Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.

Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nachdem Sie die Umgebungsvariable hinzugefügt haben, müssen Sie unter Umständen alle ausgeführten Programme neu starten, von denen die Umgebungsvariablen gelesen werden, einschließlich des Konsolenfensters.

Lesen von gedrucktem und handschriftlichem Text

  1. Erstellen einer neuen C#-Anwendung

    Erstellen Sie mit Visual Studio ein Projekt vom Typ Konsolen-App (.NET Framework) für C#, Windows, Konsole.

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

    1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Projektmappe, und wählen Sie NuGet-Pakete für Projektmappe verwalten aus.
    2. Wählen Sie im daraufhin geöffneten Paket-Manager die Option Durchsuchen aus. Wählen Sie Vorabversion einbeziehen aus.
    3. Suchen Sie nach Microsoft.Azure.CognitiveServices.Vision.ComputerVision, und wählen Sie diese Option aus.
    4. Wählen Sie im Dialogfeld „Details“ Ihr Projekt und dann die neueste stabile Version aus. Wählen Sie dann Installieren aus.
  2. Öffnen Sie aus dem Projektverzeichnis die Datei Program.cs in Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE. Ersetzen Sie die Inhalte 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. Weitere Informationen zu einem optionalen Schritt finden Sie unter Festlegen der Art der Datenverarbeitung. Wenn Sie etwa das neueste allgemein verfügbare Modell explizit angeben möchten, bearbeiten Sie den Aufruf ReadAsync wie gezeigt. Überspringen Sie den Parameter, oder verwenden Sie "latest", um das neueste allgemein verfügbare Modell zu verwenden.

      // 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 Debugging starten.

Output

Azure AI 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
ories from Fat 110
Sodium 20mg
nt Daily Values are based on Vitamin A 50%
calorie diet.

Bereinigen von Ressourcen

Wenn Sie ein Azure KI Services-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, 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. Informieren Sie sich als Nächstes ausführlicher über die Funktionen der Lese-API.

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

Tipp

Sie können auch Text aus einem lokalen Bild auslesen. Sehen Sie sich die ComputerVisionClientOperationsMixin-Methoden an, etwa read_in_stream. Alternativ finden Sie im Beispielcode auf GitHub Szenarien zu lokalen Bildern.

Referenzdokumentation | Quellcode der Bibliothek | Paket (PiPy) | Beispiele

Voraussetzungen

  • Azure-Abonnement – kostenloses Abonnement erstellen.
  • Python 3.x.
  • Ihre Python-Installation sollte pip enthalten. Sie können überprüfen, ob pip installiert ist, indem Sie pip --version in der Befehlszeile ausführen. Installieren Sie die aktuelle Python-Version, um pip zu erhalten.
  • Eine Azure KI Vision-Ressource. Sie können den kostenlosen Tarif (F0) verwenden, um den Dienst zu testen, und später für die Produktion auf einen kostenpflichtigen Tarif upgraden.
  • Der Schlüssel und der Endpunkt der von Ihnen erstellten Ressource, um Ihre Anwendung mit dem Azure KI Vision-Dienst zu verbinden.
    1. Wählen Sie nach der Bereitstellung der Azure KI Vision-Ressource Zu Ressource wechseln aus.
    2. Wählen Sie im linken Navigationsmenü Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt zur späteren Verwendung in der Schnellstartanleitung.

Erstellen von Umgebungsvariablen

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

Öffnen Sie das Azure-Portal. Wenn die Ressource, die Sie im Abschnitt Voraussetzungen erstellt haben, erfolgreich bereitgestellt wurde, wählen Sie unter Nächste Schritte die Option Zu Ressource wechseln aus. Schlüssel und Endpunkt finden Sie unter Ressourcenverwaltung auf der Seite Schlüssel und Endpunkte. Ihr Ressourcenschlüssel ist nicht mit Ihrer Azure-Abonnement-ID identisch.

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

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

Wichtig

Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.

Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nachdem Sie die Umgebungsvariable hinzugefügt haben, müssen Sie unter Umständen alle ausgeführten Programme neu starten, von denen die Umgebungsvariablen gelesen werden, einschließlich des Konsolenfensters.

Lesen von gedrucktem und handschriftlichem Text

  1. Installieren der Clientbibliothek

    Öffnen Sie ein Konsolenfenster, und führen Sie den folgenden Befehl aus:

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

    pip install pillow
    
  3. Erstellen Sie eine neue Python-Anwendungsdatei: quickstart-file.py. Öffnen Sie sie anschließend 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. Weitere Informationen zu einem optionalen Schritt finden Sie unter Festlegen der Art der Datenverarbeitung. Wenn Sie etwa das neueste allgemein verfügbare Modell explizit angeben möchten, bearbeiten Sie die Anweisung read wie gezeigt. Wenn Sie den Parameter überspringen oder "latest" verwenden, wird automatisch das neueste allgemein verfügbare Modell verwendet.

       # 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 Befehl python für die Schnellstartdatei aus.

    python quickstart-file.py
    

Output

===== 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 AI Vision quickstart.

Bereinigen von Ressourcen

Wenn Sie ein Azure KI Services-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, 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. Informieren Sie sich als Nächstes ausführlicher über die Funktionen der Lese-API.

Verwenden Sie die OCR-Clientbibliothek (Optical Character Recognition, optische Zeichenerkennung), um gedruckten und handschriftlichen Text mit der Lese-API zu lesen. Der OCR-Dienst kann sichtbaren Text in einem Bild lesen und in eine Zeichenfolge konvertieren. Weitere Informationen zur Texterkennung finden Sie in der OCR-Übersicht.

Tipp

Sie können auch Text aus einem lokalen Bild auslesen. Sehen Sie sich die ComputerVisionClient-Methoden an, etwa readInStream. Alternativ finden Sie im Beispielcode auf GitHub Szenarien zu lokalen Bildern.

Referenzdokumentation | Paket (npm) | Beispiele

Voraussetzungen

  • Azure-Abonnement – kostenloses Abonnement erstellen.
  • Die aktuelle Version von Node.js.
  • Eine Azure KI Vision-Ressource. Sie können den kostenlosen Tarif (F0) verwenden, um den Dienst zu testen, und später für die Produktion auf einen kostenpflichtigen Tarif upgraden.
  • Der Schlüssel und der Endpunkt der von Ihnen erstellten Ressource, um Ihre Anwendung mit dem Azure KI Vision-Dienst zu verbinden.
    1. Wählen Sie nach der Bereitstellung der Azure KI Vision-Ressource Zu Ressource wechseln aus.
    2. Wählen Sie im linken Navigationsmenü Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt zur späteren Verwendung in der Schnellstartanleitung.

Erstellen von Umgebungsvariablen

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

Öffnen Sie das Azure-Portal. Wenn die Ressource, die Sie im Abschnitt Voraussetzungen erstellt haben, erfolgreich bereitgestellt wurde, wählen Sie unter Nächste Schritte die Option Zu Ressource wechseln aus. Schlüssel und Endpunkt finden Sie unter Ressourcenverwaltung auf der Seite Schlüssel und Endpunkte. Ihr Ressourcenschlüssel ist nicht mit Ihrer Azure-Abonnement-ID identisch.

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

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

Wichtig

Wenn Sie einen API-Schlüssel verwenden, speichern Sie ihn an einer anderen Stelle sicher, z. B. in Azure Key Vault. Fügen Sie den API-Schlüssel nicht direkt in Ihren Code ein, und machen Sie ihn nicht öffentlich zugänglich.

Weitere Informationen zur Sicherheit von KI Services finden Sie unter Authentifizieren von Anforderungen an Azure KI Services.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Nachdem Sie die Umgebungsvariable hinzugefügt haben, müssen Sie unter Umständen alle ausgeführten Programme neu starten, von denen die Umgebungsvariablen gelesen werden, einschließlich des Konsolenfensters.

Lesen von gedrucktem und handschriftlichem Text

Erstellen Sie eine neue Node.js-Anwendung.

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

    mkdir myapp
    cd myapp
    
  2. Führen Sie den Befehl npm init aus, um eine Knotenanwendung mit der Datei package.json zu erstellen. Drücken Sie die EINGABETASTE bei allen Eingabeaufforderungen.

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

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

    npm install async
    

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

  5. Erstellen Sie die 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. Weitere Informationen zu einem optionalen Schritt finden Sie unter Festlegen der Art der Datenverarbeitung. Wenn Sie etwa das neueste allgemein verfügbare Modell explizit angeben möchten, bearbeiten Sie die Anweisung read wie gezeigt. Wenn Sie den Parameter überspringen oder "latest" verwenden, wird automatisch das neueste allgemein verfügbare Modell verwendet.

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

    node index.js
    

Output

-------------------------------------------------
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 Azure KI Services-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, 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. Informieren Sie sich als Nächstes ausführlicher über die Funktionen der Lese-API.

Verwenden Sie die OCR-REST-API (Optical Character Recognition, optische Zeichenerkennung), um gedruckten und handschriftlichen Text zu lesen.

Hinweis

In dieser Schnellstartanleitung wird die REST-API mithilfe von cURL-Befehlen aufgerufen. Die REST-API kann aber auch mit einer Programmiersprache aufgerufen werden. Auf GitHub stehen Beispiele für C#, Python, Java und JavaScript zur Verfügung.

Voraussetzungen

  • Azure-Abonnement – kostenloses Abonnement erstellen.
  • cURL muss installiert sein.
  • Eine Azure KI Vision-Ressource. Sie können den kostenlosen Tarif (F0) verwenden, um den Dienst zu testen, und später für die Produktion auf einen kostenpflichtigen Tarif upgraden.
  • Der Schlüssel und der Endpunkt der von Ihnen erstellten Ressource, um Ihre Anwendung mit dem Azure KI Vision-Dienst zu verbinden.
    1. Wählen Sie nach der Bereitstellung der Azure KI Vision-Ressource Zu Ressource wechseln aus.
    2. Wählen Sie im linken Navigationsmenü Schlüssel und Endpunkt aus.
    3. Kopieren Sie einen der Schlüssel und den Endpunkt zur späteren Verwendung in der Schnellstartanleitung.

Lesen von gedrucktem und handschriftlichem Text

Der OCR-Dienst kann sichtbaren Text aus einem Bild oder Dokument extrahieren und in eine Zeichenfolge konvertieren. Weitere Informationen zur Textextraktion finden Sie in der OCR-Übersicht.

Aufrufen der Lese-API

Führen Sie zum Erstellen und Ausführen des Beispiels die folgenden Schritte aus:

  1. Kopieren Sie den folgenden Befehl, und fügen Sie ihn in einen Text-Editor ein.

  2. Nehmen Sie die folgenden Änderungen im Befehl vor, falls dies erforderlich ist:

    1. Ersetzen Sie den Wert <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 mit regionalen Endpunkten finden Sie unter Benutzerdefinierte Unterdomänennamen für Azure KI Services.

    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 Bilds, das analysiert werden soll.
  3. Öffnen Sie ein Eingabeaufforderungsfenster.

  4. Fügen Sie den Befehl aus dem Text-Editor in das Eingabeaufforderungsfenster ein, und führen Sie 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, bei dessen Wert es sich um eine eindeutige URL handelt. Diese URL wird verwendet, um die Ergebnisse des Lesevorgangs abzufragen. Die URL ist 48 Stunden lang gültig.

Geben Sie optional die Modellversion an.

Weitere Informationen zu einem optionalen Schritt finden Sie unter Festlegen der Art der Datenverarbeitung. Wenn Sie etwa das neueste allgemein verfügbare Modell explizit angeben möchten, verwenden Sie model-version=2022-04-30 als Parameter. Wenn Sie den Parameter überspringen oder model-version=latest verwenden, wird automatisch das neueste allgemein verfügbare Modell verwendet.

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 der Leseergebnisse

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

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

  3. Ersetzen Sie den Wert <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}" 
    

Untersuchen der Antwort

Eine erfolgreiche Antwort wird im JSON-Format zurückgegeben. Die Beispielanwendung analysiert eine Antwort und zeigt diese bei erfolgreicher Ausführung im Konsolenfenster an, ähnlich wie im 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 Azure KI Services-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie gelernt, wie Sie die Read-REST-API aufrufen. Informieren Sie sich als Nächstes ausführlicher über die Funktionen der Lese-API.

Voraussetzungen

  • Azure-Abonnement – kostenloses Abonnement erstellen.

  • Eine Azure KI Vision-Ressource. Sie können den kostenlosen Tarif (F0) verwenden, um den Dienst zu testen, und später für die Produktion auf einen kostenpflichtigen Tarif upgraden.

  • Stellen Sie eine Verbindung mit Vision Studio her.

    • Sie müssen sich möglicherweise anmelden.
    • Wählen Sie nach der Anmeldung Alle Ressourcen anzeigen aus. Wählen Sie bei Bedarf Aktualisieren aus. Vergewissern Sie sich, dass Ihre Ressource verfügbar ist.

    Weitere Informationen finden Sie unter Erste Schritte mit Vision Studio.

Lesen von gedrucktem und handschriftlichem Text

  1. Wählen Sie unter Optische Zeichenerkennung die Option Text aus Bildern extrahieren aus.

  2. Unter Ausprobieren sehen Sie, dass für diese Demo Verbrauch in Ihrem Azure-Konto anfällt. Weitere Informationen finden Sie unter Preise für Azure KI Vision.

  3. Wählen Sie ein Bild aus dem verfügbaren Satz aus, oder laden Sie ein eigenes Bild hoch.

  4. Wählen Sie bei Bedarf die Option Ressource auswählen aus, um Ihre Ressource auszuwählen.

    Nachdem Sie Ihr Bild ausgewählt haben, wird der extrahierte Text im Ausgabefenster angezeigt. Sie können auch die Registerkarte JSON auswählen, um die JSON-Ausgabe anzuzeigen, die vom API-Aufruf zurückgegeben wird.

Unterhalb der Demoumgebung finden Sie die nächsten Schritte, um mit der Verwendung dieser Funktion in Ihrer eigenen Anwendung zu beginnen.

Nächste Schritte

In diesem Schnellstart haben Sie Vision Studio verwendet, um auf die Lese-API zuzugreifen. Informieren Sie sich als Nächstes ausführlicher über die Funktionen der Lese-API.