Quickstart: De ocr-clientbibliotheek (Optical Character Recognition) of REST API

Ga aan de slag met Computer Vision Read REST API of clientbibliotheken. De Read-service biedt u AI-algoritmen voor het extraheren van zichtbare tekst uit afbeeldingen en het retourneren ervan als gestructureerde tekenreeksen. Volg deze stappen om een pakket in uw toepassing te installeren en de voorbeeldcode voor basistaken te proberen.

Gebruik de OCR-clientbibliotheek om gedrukte en handgeschreven tekst uit een afbeelding te lezen.

Referentiedocumentatie | Broncode van bibliotheek | Pakket (NuGet) | Voorbeelden

Vereisten

  • Een Azure-abonnement - Een gratis abonnement maken
  • De Visual Studio IDE of de huidige versie van .NET Core.
  • Zodra u een Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, klikt u op Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt, om de toepassing te verbinden met de Computer Vision-service. Later in de quickstart plakt u uw sleutel en eindpunt in de onderstaande code.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Instellen

Een nieuwe C#-toepassing maken

Maak met behulp van Visual Studio een nieuwe .NET Core-toepassing.

De clientbibliotheek installeren

Nadat u een nieuw project hebt gemaakt, installeert u de clientbibliotheek door in Solution Explorer met de rechtermuisknop op de projectoplossing te klikken en NuGet-pakketten beheren te selecteren. Selecteer in de package manager die wordt geopend de optie Bladeren, schakel Prerelease opnemen in en zoek naar Microsoft.Azure.CognitiveServices.Vision.ComputerVision. Selecteer versie 7.0.0 en vervolgens Installeren.

Tip

Wilt u het codebestand voor de quickstart in één keer weergeven? Die is te vinden op GitHub, waar de codevoorbeelden uit deze quickstart zich bevinden.

Open vanuit de projectmap het bestand Program.cs in uw favoriete editor of IDE.

De abonnementssleutel en het eindpunt zoeken

Ga naar Azure Portal. Als de Computer Vision-resource die u in de sectie Vereisten hebt gemaakt, succesvol is geïmplementeerd, klikt u op de knop Ga naar resource onder Volgende stappen. U vindt uw abonnementssleutel en eindpunt op de pagina sleutel en eindpunt van de resource, onder resourcebeheer.

Maak in de klasse Program van de toepassing variabelen voor uw Computer Vision-abonnementssleutel en -eindpunt. Plak waar aangegeven uw abonnementssleutel en -eindpunt in de volgende code. Uw Computer Vision eindpunt heeft de vorm https://<your_computer_vision_resource_name>.cognitiveservices.azure.com/ .

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 subscription key and endpoint
        static string subscriptionKey = "PASTE_YOUR_COMPUTER_VISION_SUBSCRIPTION_KEY_HERE";
        static string endpoint = "PASTE_YOUR_COMPUTER_VISION_ENDPOINT_HERE";

Belangrijk

Vergeet niet om de abonnementssleutel uit uw code te verwijderen wanneer u klaar bent en deze nooit openbaar te plaatsen. Overweeg om voor productie een veilige manier te gebruiken voor het opslaan en openen van uw referenties. Bijvoorbeeld Azure Key Vault.

Voeg in de methode Main van de toepassing aanroepen toe voor de methoden die in deze quickstart worden gebruikt. U gaat deze later maken.

ComputerVisionClient client = Authenticate(endpoint, subscriptionKey);

// Extract text (OCR) from a URL image using the Read API
ReadFileUrl(client, READ_TEXT_URL_IMAGE).Wait();

Objectmodel

De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de OCR .NET SDK.

Naam Beschrijving
ComputerVisionClient Deze klasse is nodig voor alle Computer Vision-functionaliteit. U instantieert deze klasse met uw abonnementsgegevens en gebruikt deze om de meeste afbeeldingsbewerkingen uit te voeren.
ComputerVisionClientExtensions Deze klasse bevat aanvullende methoden voor de ComputerVisionClient.

Codevoorbeelden

Deze codefragmenten laten zien hoe u de volgende taken kunt uitvoeren met de OCR-clientbibliotheek voor .NET:

De client verifiëren

In een nieuwe methode in de klasse Program maakt u een client met uw eindpunt en abonnementssleutel. Maak een ApiKeyServiceClientCredentials-object met uw abonnementssleutel en gebruik dit met uw eindpunt om een ComputerVisionClient-object te maken.

/*
 * AUTHENTICATE
 * Creates a Computer Vision client used by each example.
 */
public static ComputerVisionClient Authenticate(string endpoint, string key)
{
    ComputerVisionClient client =
      new ComputerVisionClient(new ApiKeyServiceClientCredentials(key))
      { Endpoint = endpoint };
    return client;
}

Afgedrukte en handgeschreven tekst lezen

De OCR-service kan zichtbare tekst in een afbeelding lezen en converteren naar een tekenstroom. Zie het Overzicht van optische tekenherkenning (OCR) voor meer informatie over tekstherkenning. De code in deze sectie maakt gebruik van de nieuwste Computer Vision SDK-release voor Read 3.0 en definieert een methode, , die gebruikmaakt van het clientobject om tekst in de afbeelding te detecteren en te BatchReadFileUrl extraheren.

Tip

U kunt ook tekst extraheren uit een lokale afbeelding. Zie de ComputerVisionClient-methoden, zoals ReadInStreamAsync. Of zie de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

Testafbeelding instellen

Sla in uw klasse Programma een verwijzing op naar de URL van de afbeelding waaruit u tekst wilt extraheren. Dit codefragment bevat voorbeeldafbeeldingen van gedrukte en handgeschreven tekst.

private const string READ_TEXT_URL_IMAGE = "https://intelligentkioskstore.blob.core.windows.net/visionapi/suggestedphotos/3.png";

De Read-API aanroepen

Definieer de nieuwe methode voor het lezen van tekst. Voeg de onderstaande code toe, die de methode ReadAsync aanroept voor de gegeven afbeelding. Hiermee wordt een bewerkings-id geretourneerd en wordt een asynchroon proces gestart om de inhoud van de afbeelding te lezen.

/*
 * READ FILE - URL 
 * Extracts text. 
 */
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);

Leesresultaten ophalen

Vervolgens haalt u de bewerkings-id op die wordt geretourneerd vanaf de ReadAsync-aanroep en gebruikt u deze om de service te doorzoeken op de resultaten van de bewerking. Met de volgende code wordt de bewerking gecontroleerd totdat de resultaten worden geretourneerd. Vervolgens worden de geëxtraheerde tekstgegevens afgedrukt naar de console.

// 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));

Leesresultaten weergeven

Voeg de volgende code toe om de opgehaalde tekstgegevens te parseren en weer te geven, en voltooi de methodedefinitie.

    // 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();
}

De toepassing uitvoeren

Voer de toepassing uit door boven in het IDE-venster op de knop Fouten opsporen te klikken.

Resources opschonen

Als u een Cognitive Services-abonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stappen

In deze quickstart hebt u geleerd hoe u de OCR-clientbibliotheek installeert en de Read-API gebruikt. Hierna krijgt u meer informatie over de functies van de Read API.

Gebruik de clientbibliotheek voor optische tekenherkenning om gedrukte en handgeschreven tekst te lezen met de Read-API.

Referentiedocumentatie | Broncode bibliotheek | Package (PiPy) | Voorbeelden

Vereisten

  • Een Azure-abonnement - Een gratis abonnement maken

  • Python 3.x

    • Uw Python-installatie moet pip bevatten. U kunt controleren of pip is geïnstalleerd door uit te voeren pip --version op de opdrachtregel. Haal pip op door de nieuwste versie van Python te installeren.
  • Zodra u een Azure-abonnement hebt, maakt Computer Vision resource een Computer Vision-resource in de Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, klikt u op Ga naar resource.

    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt, om de toepassing te verbinden met de Computer Vision-service. Later in de quickstart plakt u uw sleutel en eindpunt in de onderstaande code.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Instellen

De clientbibliotheek installeren

U kunt de clientbibliotheek installeren met:

pip install --upgrade azure-cognitiveservices-vision-computervision

Installeer ook de Pillow-bibliotheek.

pip install pillow

Een nieuwe Python-toepassing maken

Tip

Wilt u het codebestand voor de quickstart in één keer weergeven? Die is te vinden op GitHub, waar de codevoorbeelden uit deze quickstart zich bevinden.

Maak bijvoorbeeld een nieuw Python-bestand—quickstart-file.py. Open het vervolgens in uw favoriete editor of IDE.

De abonnementssleutel en het eindpunt zoeken

Ga naar Azure Portal. Als de Computer Vision-resource die u in de sectie Vereisten hebt gemaakt, succesvol is geïmplementeerd, klikt u op de knop Ga naar resource onder Volgende stappen. U vindt uw abonnementssleutel en eindpunt op de pagina sleutel en eindpunt van de resource, onder resourcebeheer.

Maak variabelen voor uw Computer Vision-abonnementssleutel en eindpunt. Plak waar aangegeven uw abonnementssleutel en -eindpunt in de volgende code. Uw Computer Vision eindpunt heeft de vorm https://<your_computer_vision_resource_name>.cognitiveservices.azure.com/ .

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 = "PASTE_YOUR_COMPUTER_VISION_SUBSCRIPTION_KEY_HERE"
endpoint = "PASTE_YOUR_COMPUTER_VISION_ENDPOINT_HERE"

Belangrijk

Vergeet niet om de abonnementssleutel uit uw code te verwijderen wanneer u klaar bent en deze nooit openbaar te plaatsen. Overweeg om voor productie een veilige manier te gebruiken voor het opslaan en openen van uw referenties. Bijvoorbeeld Azure Key Vault.

Objectmodel

De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de OCR Python SDK.

Naam Beschrijving
ComputerVisionClientOperationsMixin Met deze klasse worden alle afbeeldingsbewerkingen, zoals het analyseren van afbeeldingen, detecteren van tekst en genereren van miniaturen, direct afgehandeld.
ComputerVisionClient Deze klasse is nodig voor alle Computer Vision-functionaliteit. U instantieert deze klasse met uw abonnementsgegevens en gebruikt deze om instanties van andere klassen te maken. Deze implementeert ComputerVisionClientOperationsMixin.
VisualFeatureTypes Deze opsomming definieert de verschillende typen afbeeldingsanalyse die kunnen worden uitgevoerd in een standaard analysebewerking. U geeft een set VisualFeatureTypes-waarden op, afhankelijk van uw behoeften.

Codevoorbeelden

Deze codefragmenten laten zien hoe u de volgende taken kunt uitvoeren met de OCR-clientbibliotheek voor Python:

De client verifiëren

Instantieer een client met uw eindpunt en sleutel. Maak een CognitiveServicesCredentials-object met uw sleutel en gebruik het met uw eindpunt om een ComputerVisionClient--object te maken.

computervision_client = ComputerVisionClient(endpoint, CognitiveServicesCredentials(subscription_key))

Afgedrukte en handgeschreven tekst lezen

De OCR-service kan zichtbare tekst in een afbeelding lezen en converteren naar een tekenstroom. Dit doet u in twee delen.

De Read-API aanroepen

Gebruik eerst de volgende code om de methode read aan te roepen voor de gegeven afbeelding. Hiermee wordt een bewerkings-id geretourneerd en wordt een asynchroon proces gestart om de inhoud van de afbeelding te lezen.

'''
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://raw.githubusercontent.com/MicrosoftDocs/azure-docs/master/articles/cognitive-services/Computer-vision/Images/readsample.jpg"

# Call API with URL and raw response (allows you to get the operation location)
read_response = computervision_client.read(read_image_url,  raw=True)

Tip

U kunt ook tekst lezen uit een lokale afbeelding. Zie de ComputerVisionClientOperationsMixin-methoden, bijvoorbeeld read_in_stream. Of bekijk de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

Leesresultaten ophalen

Vervolgens haalt u de bewerkings-id op die wordt geretourneerd vanaf de read-aanroep en gebruikt u deze om de service te doorzoeken op de resultaten van de bewerking. Met de volgende code wordt de bewerking gecontroleerd met een interval van één seconde totdat de resultaten worden geretourneerd. Vervolgens worden de geëxtraheerde tekstgegevens afgedrukt naar de console.

# 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()

De toepassing uitvoeren

Voer de toepassing uit met de opdracht python in uw quickstart-bestand.

python quickstart-file.py

Resources opschonen

Als u een Cognitive Services-abonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stappen

In deze quickstart hebt u geleerd hoe u de OCR-clientbibliotheek installeert en de Read-API gebruikt. Hierna krijgt u meer informatie over de functies van de Read API.

Gebruik de clientbibliotheek voor optische tekenherkenning om gedrukte en handgeschreven tekst in afbeeldingen te lezen.

Referentiedocumentatie | Broncode bibliotheek |Artefact (Maven) | Voorbeelden

Vereisten

  • Een Azure-abonnement - Een gratis abonnement maken
  • De huidige versie van de Java Development Kit (JDK)
  • Het hulpprogramma Gradle of een andere afhankelijkheidsbeheerder.
  • Zodra u een Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, klikt u op Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt, om de toepassing te verbinden met de Computer Vision-service. Later in de quickstart plakt u uw sleutel en eindpunt in de onderstaande code.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Instellen

Een nieuw Gradle-project maken

Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.

mkdir myapp && cd myapp

Voer de opdracht gradle init uit vanuit uw werkmap. Met deze opdracht maakt u essentiële buildbestanden voor Gradle, inclusief build.gradle.kts, dat tijdens runtime wordt gebruikt om de toepassing te maken en te configureren.

gradle init --type basic

Wanneer u wordt gevraagd om een DSL te kiezen, selecteert u Kotlin.

De clientbibliotheek installeren

Deze quickstart maakt gebruik van de Gradle-afhankelijkheidsmanager. U vindt de clientbibliotheek en informatie voor andere afhankelijkheidsbeheerders in de Maven Central Repository.

Zoek build.gradle.kts en open het met uw favoriete IDE of teksteditor. Kopieer het vervolgens in de volgende buildconfiguratie. Deze configuratie definieert het project als een Java-toepassing waarvan het toegangspunt de klasse ComputerVisionQuickstart is. Hiermee wordt de Computer Vision-bibliotheek geïmporteerd.

plugins {
    java
    application
}
application { 
    mainClass.set("ComputerVisionQuickstart")
}
repositories {
    mavenCentral()
}
dependencies {
    implementation(group = "com.microsoft.azure.cognitiveservices", name = "azure-cognitiveservices-computervision", version = "1.0.6-beta")
}

Een Java-bestand maken

Voer de volgende opdracht uit vanuit uw werkmap om een projectbronmap te maken:

mkdir -p src/main/java

Tip

Wilt u het codebestand voor de quickstart in één keer weergeven? Die is te vinden op GitHub, waar de codevoorbeelden uit deze quickstart zich bevinden.

Navigeer naar de nieuwe map en maak een bestand met de naam ComputerVisionQuickstart.java. Open deze in uw favoriete editor of IDE.

De abonnementssleutel en het eindpunt zoeken

Ga naar Azure Portal. Als de Computer Vision-resource die u in de sectie Vereisten hebt gemaakt, succesvol is geïmplementeerd, klikt u op de knop Ga naar resource onder Volgende stappen. U vindt uw abonnementssleutel en eindpunt op de pagina sleutel en eindpunt van de resource, onder resourcebeheer.

Definieer de klasse ComputerVisionQuickstart. Maak variabelen voor uw Computer Vision-abonnementssleutel en eindpunt. Plak waar aangegeven uw abonnementssleutel en -eindpunt in de volgende code. Uw Computer Vision eindpunt heeft de vorm https://<your_computer_vision_resource_name>.cognitiveservices.azure.com/ .

import com.microsoft.azure.cognitiveservices.vision.computervision.*;
import com.microsoft.azure.cognitiveservices.vision.computervision.implementation.ComputerVisionImpl;
import com.microsoft.azure.cognitiveservices.vision.computervision.models.*;

import java.io.*;
import java.nio.file.Files;

import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

public class ComputerVisionQuickstart {

    static String subscriptionKey = "PASTE_YOUR_COMPUTER_VISION_SUBSCRIPTION_KEY_HERE";
    static String endpoint = "PASTE_YOUR_COMPUTER_VISION_ENDPOINT_HERE";

Belangrijk

Vergeet niet om de abonnementssleutel uit uw code te verwijderen wanneer u klaar bent en deze nooit openbaar te plaatsen. Overweeg om voor productie een veilige manier te gebruiken voor het opslaan en openen van uw referenties. Bijvoorbeeld Azure Key Vault.

Voeg in de hoofdmethode van de toepassing aanroepen toe voor de methoden die in deze quickstart worden gebruikt. U definieert deze later.

public static void main(String[] args) {
    
    System.out.println("\nAzure Cognitive Services Computer Vision - Java Quickstart Sample");

    // Create an authenticated Computer Vision client.
    ComputerVisionClient compVisClient = Authenticate(subscriptionKey, endpoint); 

    // Read from local file
    ReadFromFile(compVisClient);
}

Objectmodel

De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de OCR Java SDK.

Naam Beschrijving
ComputerVisionClient Deze klasse is nodig voor alle Computer Vision-functionaliteit. U instantieert deze klasse met uw abonnementsgegevens en gebruikt deze om instanties van andere klassen te maken.

Codevoorbeelden

Deze codefragmenten laten zien hoe u de volgende taken kunt uitvoeren met de OCR-clientbibliotheek voor Java:

De client verifiëren

Instantieer in een nieuwe methode een ComputerVisionClient-object met uw eindpunt en sleutel.

public static ComputerVisionClient Authenticate(String subscriptionKey, String endpoint){
    return ComputerVisionManager.authenticate(subscriptionKey).withEndpoint(endpoint);
}

Afgedrukte en handgeschreven tekst lezen

De OCR-service kan zichtbare tekst in een afbeelding lezen en converteren naar een tekenstroom. In deze sectie wordt een methode gedefinieerd, ReadFromFile, die een lokaal bestandspad gebruikt en de tekst van de afbeelding naar de console verzendt.

Tip

U kunt ook tekst lezen in een externe afbeelding waarnaar door een URL wordt verwezen. Zie de ComputerVision-methoden, bijvoorbeeld read. Of bekijk de voorbeeldcode op GitHub voor scenario's met betrekking tot externe afbeeldingen.

Testafbeelding instellen

Maak een map resources/ in de map src/main/ van uw project en voeg een afbeelding toe waarvan u de tekst wilt lezen. U kunt een voorbeeldafbeelding downloaden en deze hier gebruiken.

Voeg vervolgens de volgende methodedefinitie toe aan uw ComputerVisionQuickstart-klasse. Wijzig de waarde van localFilePath, zodat deze overeenkomt met het afbeeldingsbestand.

/**
 * OCR with READ : Performs a Read Operation on a local image
 * @param client instantiated vision client
 * @param localFilePath local file path from which to perform the read operation against
 */
private static void ReadFromFile(ComputerVisionClient client) {
    System.out.println("-----------------------------------------------");
    
    String localFilePath = "src\\main\\resources\\myImage.png";
    System.out.println("Read with local file: " + localFilePath);

De Read-API aanroepen

Voeg vervolgens de volgende code toe om de methode readInStreamWithServiceResponseAsync voor de gegeven afbeelding aan te roepen.


try {
    File rawImage = new File(localFilePath);
    byte[] localImageBytes = Files.readAllBytes(rawImage.toPath());

    // Cast Computer Vision to its implementation to expose the required methods
    ComputerVisionImpl vision = (ComputerVisionImpl) client.computerVision();

    // Read in remote image and response header
    ReadInStreamHeaders responseHeader =
            vision.readInStreamWithServiceResponseAsync(localImageBytes, null, null)
                .toBlocking()
                .single()
                .headers();

Met het volgende codeblok wordt de bewerkings-ID opgehaald uit het antwoord van de aanroep Lezen. Deze ID wordt in combinatie met een helper-methode gebruikt om de leesresultaten naar de console te verzenden.

// Extract the operationLocation from the response header
String operationLocation = responseHeader.operationLocation();
System.out.println("Operation Location:" + operationLocation);

getAndPrintReadResult(vision, operationLocation);

Sluit het try/catch-blok en de methodedefinitie.


    } catch (Exception e) {
        System.out.println(e.getMessage());
        e.printStackTrace();
    }
}

Leesresultaten ophalen

Voeg vervolgens een definitie voor de help-methode toe. Deze methode gebruikt de bewerkings-ID uit de vorige stap om een query uit te voeren op de Leesbewerking en om OCR-resultaten op te halen wanneer deze beschikbaar zijn.

/**
 * Polls for Read result and prints results to console
 * @param vision Computer Vision instance
 * @return operationLocation returned in the POST Read response header
 */
private static void getAndPrintReadResult(ComputerVision vision, String operationLocation) throws InterruptedException {
    System.out.println("Polling for Read results ...");

    // Extract OperationId from Operation Location
    String operationId = extractOperationIdFromOpLocation(operationLocation);

    boolean pollForResult = true;
    ReadOperationResult readResults = null;

    while (pollForResult) {
        // Poll for result every second
        Thread.sleep(1000);
        readResults = vision.getReadResult(UUID.fromString(operationId));

        // The results will no longer be null when the service has finished processing the request.
        if (readResults != null) {
            // Get request status
            OperationStatusCodes status = readResults.status();

            if (status == OperationStatusCodes.FAILED || status == OperationStatusCodes.SUCCEEDED) {
                pollForResult = false;
            }
        }
    }

De rest van de methode parseert de OCR-resultaten en verzendt deze naar de console.

    // Print read results, page per page
    for (ReadResult pageResult : readResults.analyzeResult().readResults()) {
        System.out.println("");
        System.out.println("Printing Read results for page " + pageResult.page());
        StringBuilder builder = new StringBuilder();

        for (Line line : pageResult.lines()) {
            builder.append(line.text());
            builder.append("\n");
        }

        System.out.println(builder.toString());
    }
}

Voeg tenslotte de andere gebruikte help-methode toe, waarmee de bewerkings-ID uit het eerste antwoord wordt geëxtraheerd.

/**
 * Extracts the OperationId from a Operation-Location returned by the POST Read operation
 * @param operationLocation
 * @return operationId
 */
private static String extractOperationIdFromOpLocation(String operationLocation) {
    if (operationLocation != null && !operationLocation.isEmpty()) {
        String[] splits = operationLocation.split("/");

        if (splits != null && splits.length > 0) {
            return splits[splits.length - 1];
        }
    }
    throw new IllegalStateException("Something went wrong: Couldn't extract the operation id from the operation location");
}

De toepassing uitvoeren

U kunt de app maken met:

gradle build

De toepassing uitvoeren met de opdracht gradle run:

gradle run

Resources opschonen

Als u een Cognitive Services-abonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stappen

In deze quickstart hebt u geleerd hoe u de OCR-clientbibliotheek installeert en de Read-API gebruikt. Hierna krijgt u meer informatie over de functies van de Read API.

Gebruik de clientbibliotheek voor optische tekenherkenning om gedrukte en handgeschreven tekst te lezen met de Read-API.

Referentiedocumentatie | Bibliotheekbroncode | Pakket (npm) | Voorbeelden

Vereisten

  • Een Azure-abonnement - Een gratis abonnement maken
  • De huidige versie van Node.js
  • Zodra u een Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, klikt u op Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt, om de toepassing te verbinden met de Computer Vision-service. Later in de quickstart plakt u uw sleutel en eindpunt in de onderstaande code.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Instellen

Een nieuwe Node.js-toepassing maken

Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.

mkdir myapp && cd myapp

Voer de opdracht npm init uit om een knooppunttoepassing te maken met een package.json-bestand.

npm init

De clientbibliotheek installeren

Installeer de NPM-pakketten ms-rest-azure en @azure/cognitiveservices-computervision:

npm install @azure/cognitiveservices-computervision

Installeer ook de async-module:

npm install async

Het package.json-bestand van uw app wordt bijgewerkt met de afhankelijkheden.

Tip

Wilt u het codebestand voor de quickstart in één keer weergeven? Die is te vinden op GitHub, waar de codevoorbeelden uit deze quickstart zich bevinden.

Maak een nieuw bestand, index.js en open dit in een tekstbewerkingsprogramma.

De abonnementssleutel en het eindpunt zoeken

Ga naar Azure Portal. Als de Computer Vision-resource die u in de sectie Vereisten hebt gemaakt, succesvol is geïmplementeerd, klikt u op de knop Ga naar resource onder Volgende stappen. U vindt uw abonnementssleutel en eindpunt op de pagina sleutel en eindpunt van de resource, onder resourcebeheer.

Maak variabelen voor uw Computer Vision-abonnementssleutel en eindpunt. Plak waar aangegeven uw abonnementssleutel en -eindpunt in de volgende code. Uw Computer Vision eindpunt heeft de vorm https://<your_computer_vision_resource_name>.cognitiveservices.azure.com/ .

'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 = 'PASTE_YOUR_COMPUTER_VISION_SUBSCRIPTION_KEY_HERE';
const endpoint = 'PASTE_YOUR_COMPUTER_VISION_ENDPOINT_HERE';

Belangrijk

Vergeet niet om de abonnementssleutel uit uw code te verwijderen wanneer u klaar bent en deze nooit openbaar te plaatsen. Overweeg om voor productie een veilige manier te gebruiken voor het opslaan en openen van uw referenties. Bijvoorbeeld Azure Key Vault.

Objectmodel

De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de OCR Node.js SDK.

Naam Beschrijving
ComputerVisionClient Deze klasse is nodig voor alle Computer Vision-functionaliteit. U instantieert deze klasse met uw abonnementsgegevens en gebruikt deze om de meeste afbeeldingsbewerkingen uit te voeren.

Codevoorbeelden

Deze codefragmenten laten zien hoe u de volgende taken kunt uitvoeren met de OCR-clientbibliotheek voor Node.js:

De client verifiëren

Instantieer een client met uw eindpunt en sleutel. Maak een ApiKeyCredentials-object met uw sleutel en eindpunt en maak hiermee een ComputerVisionClient-object.

const computerVisionClient = new ComputerVisionClient(
  new ApiKeyCredentials({ inHeader: { 'Ocp-Apim-Subscription-Key': key } }), endpoint);

Definieer vervolgens een functie computerVision en declareer een asynchrone serie met een primaire functie en een callback-functie. Aan het einde van het script voltooit u deze functiedefinitie en roept u deze aan.

function computerVision() {
  async.series([
    async function () {

Afgedrukte en handgeschreven tekst lezen

De OCR-service kan de zichtbare tekst in een afbeelding extraheren en converteren naar een tekenstroom. In dit voorbeeld worden de leesbewerkingen gebruikt.

Testafbeeldingen instellen

Sla een verwijzing op van de URL van de afbeeldingen waaruit u tekst wilt extraheren.

// 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://moderatorsampleimages.blob.core.windows.net/samples/sample2.jpg';
const multiLingualTextURL = 'https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/MultiLingual.png';
const mixedMultiPagePDFURL = 'https://raw.githubusercontent.com/Azure-Samples/cognitive-services-sample-data-files/master/ComputerVision/Images/MultiPageHandwrittenForm.pdf';

Notitie

U kunt ook tekst lezen uit een lokale afbeelding. Zie de ComputerVisionClient-methoden, bijvoorbeeld readInStream. Of bekijk de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

De Read-API aanroepen

Definieer de volgende velden in uw functie om de statuswaarden van de read-aanroep aan te geven.

// Status strings returned from Read API. NOTE: CASING IS SIGNIFICANT.
// Before Read 3.0, these are "Succeeded" and "Failed"
const STATUS_SUCCEEDED = "succeeded";
const STATUS_FAILED = "failed"

Voeg de onderstaande code toe. Hiermee wordt de readTextFromURL-functie aangeroepen voor de opgegeven afbeeldingen.

// 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);

// Recognize multi-lingual text in a PNG from a URL
console.log('\nRead printed multi-lingual text in a PNG from URL...', multiLingualTextURL.split('/').pop());
const multiLingualResult = await readTextFromURL(computerVisionClient, multiLingualTextURL);
printRecText(multiLingualResult);

// Recognize printed text and handwritten text in a PDF from a URL
console.log('\nRead printed and handwritten text from a PDF from URL...', mixedMultiPagePDFURL.split('/').pop());
const mixedPdfResult = await readTextFromURL(computerVisionClient, mixedMultiPagePDFURL);
printRecText(mixedPdfResult);

Definieer de readTextFromURL-functie. Hiermee roept u de read-methode aan op het clientobject en wordt een bewerkings-id geretourneerd. Ook wordt een asynchroon proces gestart om de inhoud van de afbeelding te lezen. Vervolgens wordt de bewerkings-id gebruikt om de status van de bewerking te controleren totdat de resultaten worden geretourneerd. Vervolgens worden de geëxtraheerde resultaten geretourneerd.

// 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 !== 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.
}

Definieer nu de hulpfunctie printRecText, waarmee de resultaten van de leesbewerking worden afgedrukt via de console.

// 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.'); }
  }
}

Sluit de functie

Sluit de functie computerVision en roep deze aan.


    },
    function () {
      return new Promise((resolve) => {
        resolve();
      })
    }
  ], (err) => {
    throw (err);
  });
}

computerVision();

De toepassing uitvoeren

Voer de toepassing uit met de opdracht node in uw quickstart-bestand.

node index.js

Resources opschonen

Als u een Cognitive Services-abonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stappen

In deze quickstart hebt u geleerd hoe u de OCR-clientbibliotheek installeert en de Read-API gebruikt. Hierna krijgt u meer informatie over de functies van de Read API.

Gebruik de OCR-clientbibliotheek om gedrukte en handgeschreven tekst uit afbeeldingen te lezen.

Referentiedocumentatie | Bibliotheekbroncode | Pakket

Vereisten

  • Een Azure-abonnement - Een gratis abonnement maken
  • Nieuwste versie van Go
  • Zodra u een Azure-abonnement hebt, maakt u een Computer Vision-resource in Azure Portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, klikt u op Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt, om de toepassing te verbinden met de Computer Vision-service. Later in de quickstart plakt u uw sleutel en eindpunt in de onderstaande code.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.

Instellen

Een Go-projectmap maken

Maak in een consolevenster (cmd, PowerShell, Terminal, Bash) een nieuwe werkruimte voor uw Go-project, genaamd my-app en navigeer er naartoe.

mkdir -p my-app/{src, bin, pkg}  
cd my-app

Uw werkruimte bevat drie mappen:

  • src: deze map bevat broncode en pakketten. Alle met de opdracht go get geïnstalleerde pakketten komen terecht in deze map.
  • pkg: deze map bevat de gecompileerde Go-pakketobjecten. Deze bestanden hebben allemaal een .a-extensie.
  • bin: deze map bevat de binaire uitvoerbare bestanden die worden gemaakt wanneer u go install uitvoert.

Tip

Zie de documentatie over de taal Go voor meer informatie over de structuur van een Go-werkruimte. Deze handleiding bevat informatie om $GOPATH en $GOROOT in te stellen.

De clientbibliotheek installeren voor Go

Installeer vervolgens de clientbibliotheek voor Go:

go get -u https://github.com/Azure/azure-sdk-for-go/tree/master/services/cognitiveservices/v2.1/computervision

of, als u dep gebruikt, binnen de uitvoer van de opslagplaats:

dep ensure -add https://github.com/Azure/azure-sdk-for-go/tree/master/services/cognitiveservices/v2.1/computervision

Een Go-toepassing maken

Maak vervolgens een bestand in de map src met de naam sample-app.go:

cd src
touch sample-app.go

Tip

Wilt u het codebestand voor de quickstart in één keer weergeven? Die is te vinden op GitHub, waar de codevoorbeelden uit deze quickstart zich bevinden.

Open sample-app.go in uw favoriete IDE of teksteditor.

Declareer een context in de hoofdmap van uw script. U hebt dit object nodig voor het uitvoeren van de meeste Computer Vision functie-aanroepen.

De abonnementssleutel en het eindpunt zoeken

Ga naar Azure Portal. Als de Computer Vision-resource die u in de sectie Vereisten hebt gemaakt, succesvol is geïmplementeerd, klikt u op de knop Ga naar resource onder Volgende stappen. U vindt uw abonnementssleutel en eindpunt op de pagina sleutel en eindpunt van de resource, onder resourcebeheer.

Maak variabelen voor uw Computer Vision-abonnementssleutel en eindpunt. Plak waar aangegeven uw abonnementssleutel en -eindpunt in de volgende code. Uw Computer Vision eindpunt heeft de vorm https://<your_computer_vision_resource_name>.cognitiveservices.azure.com/ .

package main

import (
    "context"
    "encoding/json"
    "fmt"
    "github.com/Azure/azure-sdk-for-go/services/cognitiveservices/v2.0/computervision"
    "github.com/Azure/go-autorest/autorest"
    "io"
    "log"
    "os"
    "strings"
    "time"
)

// Declare global so don't have to pass it to all of the tasks.
var computerVisionContext context.Context

func main() {
    computerVisionKey := "PASTE_YOUR_COMPUTER_VISION_SUBSCRIPTION_KEY_HERE"
    endpointURL := "PASTE_YOUR_COMPUTER_VISION_ENDPOINT_HERE"

Belangrijk

Vergeet niet om de abonnementssleutel uit uw code te verwijderen wanneer u klaar bent en deze nooit openbaar te plaatsen. Overweeg om voor productie een veilige manier te gebruiken voor het opslaan en openen van uw referenties. Bijvoorbeeld Azure Key Vault.

Vervolgens gaat u code toevoegen om verschillende OCR-bewerkingen uit te voeren.

Objectmodel

De volgende klassen en interfaces verwerken enkele van de belangrijkste functies van de OCR Go SDK.

Naam Beschrijving
BaseClient Deze klasse is nodig voor alle functionaliteit van Computer Vision, zoals het analyseren van afbeeldingen en het lezen van tekst. U instantieert deze klasse met uw abonnementsgegevens en gebruikt deze om de meeste afbeeldingsbewerkingen uit te voeren.
ReadOperationResult Dit type bevat de resultaten van een batch-leesbewerking.

Codevoorbeelden

Deze codefragmenten laten zien hoe u de volgende taken kunt uitvoeren met de OCR-clientbibliotheek voor Go:

De client verifiëren

Notitie

Bij deze stap wordt ervan uitgegaan dat u omgevingsvariabelen hebt gemaakt voor uw Computer Vision-sleutel en -eindpunt, met de naam COMPUTER_VISION_SUBSCRIPTION_KEY respectievelijk COMPUTER_VISION_ENDPOINT.

Maak een main-functie en voeg de volgende code toe om een client te instantiëren met uw eindpunt en sleutel.

/*  
 * Configure the Computer Vision client
 */
computerVisionClient := computervision.New(endpointURL);
computerVisionClient.Authorizer = autorest.NewCognitiveServicesAuthorizer(computerVisionKey)

computerVisionContext = context.Background()
/*
 * END - Configure the Computer Vision client
 */

Afgedrukte en handgeschreven tekst lezen

De OCR-service kan zichtbare tekst in een afbeelding lezen en converteren naar een tekenstroom. De code in deze sectie definieert een functie, RecognizeTextReadAPIRemoteImage, die gebruikmaakt van het clientobject om gedrukte of handgeschreven tekst in de afbeelding te detecteren en extraheren.

Voeg de voorbeeldafbeelding en functieaanroep toe aan uw main-functie.

// Analyze text in an image, remote
BatchReadFileRemoteImage(computerVisionClient, printedImageURL)

Tip

U kunt ook tekst extraheren uit een lokale afbeelding. Zie de BaseClient-methoden, zoals BatchReadFileInStream. Of zie de voorbeeldcode op GitHub voor scenario's met betrekking tot lokale afbeeldingen.

De Read-API aanroepen

Definieer de nieuwe functie voor het lezen van tekst, RecognizeTextReadAPIRemoteImage. Voeg de onderstaande code toe, die de methode BatchReadFile aanroept voor de gegeven afbeelding. Met deze methode wordt een bewerkings-id geretourneerd en wordt een asynchroon proces gestart om de inhoud van de afbeelding te lezen.

func BatchReadFileRemoteImage(client computervision.BaseClient, remoteImageURL string) {
    fmt.Println("-----------------------------------------")
    fmt.Println("BATCH READ FILE - remote")
    fmt.Println()
    var remoteImage computervision.ImageURL
    remoteImage.URL = &remoteImageURL

    // The response contains a field called "Operation-Location", 
    // which is a URL with an ID that you'll use for GetReadOperationResult to access OCR results.
    textHeaders, err := client.BatchReadFile(computerVisionContext, remoteImage)
    if err != nil { log.Fatal(err) }

    // Use ExtractHeader from the autorest library to get the Operation-Location URL
    operationLocation := autorest.ExtractHeaderValue("Operation-Location", textHeaders.Response)

    numberOfCharsInOperationId := 36
    operationId := string(operationLocation[len(operationLocation)-numberOfCharsInOperationId : len(operationLocation)])

Leesresultaten ophalen

Vervolgens haalt u de bewerkings-id op die wordt geretourneerd door de BatchReadFile-aanroep en gebruikt u deze met de methode GetReadOperationResult om de service te doorzoeken op de resultaten van de bewerking. Met de volgende code wordt de bewerking gecontroleerd met een interval van één seconde totdat de resultaten worden geretourneerd. Vervolgens worden de geëxtraheerde tekstgegevens afgedrukt naar de console.

readOperationResult, err := client.GetReadOperationResult(computerVisionContext, operationId)
if err != nil { log.Fatal(err) }

// Wait for the operation to complete.
i := 0
maxRetries := 10

fmt.Println("Recognizing text in a remote image with the batch Read API ...")
for readOperationResult.Status != computervision.Failed &&
        readOperationResult.Status != computervision.Succeeded {
    if i >= maxRetries {
        break
    }
    i++

    fmt.Printf("Server status: %v, waiting %v seconds...\n", readOperationResult.Status, i)
    time.Sleep(1 * time.Second)

    readOperationResult, err = client.GetReadOperationResult(computerVisionContext, operationId)
    if err != nil { log.Fatal(err) }
}

Leesresultaten weergeven

Voeg de volgende code toe om de opgehaalde tekstgegevens te parseren en weer te geven, en voltooi de functiedefinitie.

// Display the results.
fmt.Println()
for _, recResult := range *(readOperationResult.RecognitionResults) {
    for _, line := range *recResult.Lines {
        fmt.Println(*line.Text)
    }
}

De toepassing uitvoeren

Voer de toepassing op vanuit uw toepassingsmap met de opdracht go run.

go run sample-app.go

Resources opschonen

Als u een Cognitive Services-abonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.

Volgende stappen

In deze quickstart hebt u geleerd hoe u de OCR-clientbibliotheek installeert en de Read-API gebruikt. Hierna krijgt u meer informatie over de functies van de Read API.

Gebruik de optische tekenherkenning REST API gedrukte en handgeschreven tekst te lezen.

Notitie

In deze quickstart wordt gebruik gemaakt van cURL-opdrachten om de REST API aan te roepen. U kunt de REST API ook aanroepen met behulp van een programmeertaal. Bekijk de GitHub-voorbeeldbestanden voor voorbeelden in C#, Python, Java, JavaScript en Go.

Vereisten

  • Een Azure-abonnement - Een gratis abonnement maken
  • Zodra u een Azure-abonnement hebt, maakt u een Computer Vision-resource in de Azure-portal om uw sleutel en eindpunt op te halen. Nadat de app is geïmplementeerd, klikt u op Ga naar resource.
    • U hebt de sleutel en het eindpunt nodig van de resource die u maakt, om de toepassing te verbinden met de Computer Vision-service. Later in de quickstart plakt u uw sleutel en eindpunt in de onderstaande code.
    • U kunt de gratis prijscategorie (F0) gebruiken om de service uit te proberen, en later upgraden naar een betaalde laag voor productie.
  • cURL geïnstalleerd

Gedrukte en handgeschreven tekst extraheren

De OCR-service kan zichtbare tekst in een afbeelding of document extraheren en converteren naar een tekenstroom. Zie het overzicht van optische tekenherkenning (OCR)voor meer informatie over tekstextractie.

De Read-API aanroepen

U kunt het voorbeeld maken en uitvoeren aan de hand van de volgende stappen:

  1. Kopieer de volgende opdracht naar een teksteditor.
  2. Breng waar nodig de volgende wijzigingen in de opdracht aan:
    1. Vervang de waarde van <subscriptionKey> door uw abonnementssleutel.
    2. Vervang het eerste deel van de aanvraag-URL (westcentralus) door de tekst in uw eigen eindpunt-URL.

      Notitie

      Nieuwe resources die zijn gemaakt na 1 juli 2019, hebben aangepaste subdomeinnamen. Zie Aangepaste subdomeinnamen voor Cognitive Services voor meer informatie en een volledige lijst met regionale eindpunten.

    3. Wijzig eventueel de afbeeldings-URL in de aanvraagtekst (https://upload.wikimedia.org/wikipedia/commons/thumb/a/af/Atomist_quote_from_Democritus.png/338px-Atomist_quote_from_Democritus.png\) naar de URL van een andere afbeelding die u wilt analyseren.
  3. Open een opdrachtpromptvenster.
  4. Plak de opdracht van de teksteditor in het opdrachtpromptvenster en voer de opdracht uit.
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://upload.wikimedia.org/wikipedia/commons/thumb/a/af/Atomist_quote_from_Democritus.png/338px-Atomist_quote_from_Democritus.png\"}"

Het antwoord bevat een Operation-Location-header, waarvan de waarde een unieke URL is. U gebruikt deze URL om de resultaten van de leesbewerking op te vragen. Een URL verloopt binnen 48 uur.

Preview-functies gebruiken

Zie How to specify the model version to use the latest preview (De modelversie opgeven om de nieuwste preview te gebruiken) voor de preview-versies en -functies. Het preview-model bevat eventuele verbeteringen in de momenteel ga-talen en -functies.

Leesresultaten ophalen

  1. Kopieer de volgende opdracht naar een teksteditor.
  2. Vervang de URL door de waarde voor Operation-Location die u in de vorige stap hebt gekopieerd.
  3. Breng waar nodig de volgende wijzigingen in de opdracht aan:
    1. Vervang de waarde van <subscriptionKey> door uw abonnementssleutel.
  4. Open een opdrachtpromptvenster.
  5. Plak de opdracht van de teksteditor in het opdrachtpromptvenster en voer de opdracht uit.
curl -v -X GET "https://westcentralus.api.cognitive.microsoft.com/vision/v3.2/read/analyzeResults/{operationId}" -H "Ocp-Apim-Subscription-Key: {subscription key}" --data-ascii "{body}" 

Het antwoord bekijken

Een geslaagd antwoord wordt geretourneerd in JSON-indeling. De voorbeeldtoepassing parseert en geeft een geslaagd antwoord weer in het opdrachtpromptvenster dat vergelijkbaar is met het volgende voorbeeld:

{
  "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
              }
            ]
          }
        ]
      }
    ]
  }
}

Volgende stappen

In deze quickstart hebt u geleerd hoe u de lees- en REST API. Hierna krijgt u meer informatie over de functies van de Read API.