Inicio rápido: lectura de disponibilidad general de Azure Vision v3.2

Ediciones de OCR (Lectura)

Importante

Seleccione la edición Read que mejor se adapte a sus requisitos.

Entrada Ejemplos Leer la edición Beneficio
Imágenes: Imágenes generales, en su entorno natural etiquetas, señales y carteles OCR para imágenes (versión 4.0) Optimizado para imágenes generales que no son de documento con una API sincrónica mejorada del rendimiento que facilita la inserción de OCR en los escenarios de experiencia del usuario.
Documentos: Digital y escaneado, incluidas las imágenes libros, artículos e informes Modelo de lectura de Document Intelligence Optimizado para documentos escaneados y digitales con gran cantidad de texto, con una API asincrónica para ayudar a automatizar el procesamiento inteligente de documentos a gran escala.

About Azure Vision v3.2 GA Read

¿Buscas la versión más reciente de Azure Vision v3.2 GA Read? Todas las futuras mejoras de OCR de lectura de texto están incluidas en los dos servicios mencionados anteriormente. No hay ninguna actualización adicional para Azure Vision v3.2. Para obtener más información, consulte Call Azure Vision 3.2 GA Read API y Quickstart: Azure Vision v3.2 GA Read.

Comienza con Azure Vision en Foundry Tools Read REST API o bibliotecas cliente. Read API proporciona algoritmos de INTELIGENCIA ARTIFICIAL para extraer texto de imágenes y devolverlo como cadenas estructuradas. Siga estos pasos para instalar un paquete en la aplicación y probar el código de ejemplo para tareas básicas.

Use la biblioteca cliente de reconocimiento óptico de caracteres (OCR) para leer texto impreso y manuscrito de una imagen. El servicio OCR puede leer texto visible en una imagen y convertirlo en una secuencia de caracteres. Para obtener más información sobre el reconocimiento de texto, consulte la información general de OCR. El código de esta sección usa el paquete Azure Vision más reciente en Foundry Tools.

Propina

También puede extraer texto de una imagen local. Consulte los métodos ComputerVisionClient , como ReadInStreamAsync. O bien, consulte el código de ejemplo en GitHub para ver escenarios que implican imágenes locales.

Documentación de referencia | Código fuente de la biblioteca | Paquete (NuGet) | Ejemplos

Requisitos previos

  • Una suscripción Azure: Crear una gratuita.
  • La IDE de Visual Studio o la versión actual de .NET Core.
  • Un recurso de Visión de Azure. Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.
  • Clave y punto de conexión del recurso que crea para conectar la aplicación a Azure Vision.
    1. Después de implementar el recurso de Azure Vision, seleccione Go al recurso.
    2. En el panel izquierdo, seleccione Claves y punto de conexión.
    3. Copie una de las claves y el punto de conexión para usarlos más adelante en el inicio rápido.

Creación de variables de entorno

En este ejemplo, escriba las credenciales en variables de entorno en el equipo local que ejecuta la aplicación.

Vaya al portal de Azure. Si el recurso que creó en la sección Requisitos previos se implementó correctamente, seleccione Ir al recurso en Pasos siguientes. Puede encontrar la clave y el punto de conexión en Administración de recursos en la página de Claves y punto de conexión del recurso Face. La clave de recurso no es la misma que el identificador de suscripción de Azure.

Para establecer la variable de entorno para la clave y el punto de conexión, abra una ventana de consola y siga las instrucciones del sistema operativo y el entorno de desarrollo.

  • Para establecer la variable de entorno VISION_KEY, reemplace <your_key> con una de las claves para su recurso.
  • Para establecer la variable de entorno VISION_ENDPOINT, reemplace <your_endpoint> con el punto de conexión para su recurso.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Después de agregar las variables de entorno, es posible que tenga que reiniciar los programas en ejecución que leerán las variables de entorno, incluida la ventana de la consola.

Leer texto impreso y manuscrito

  1. Cree una nueva aplicación de C#.

    Con Visual Studio, cree un proyecto Console App (.NET Framework) para C#, Windows, Console.

    Después de crear un nuevo proyecto, instale la biblioteca cliente:

    1. Haga clic con el botón derecho en la solución del proyecto en el Explorador de soluciones y seleccione Administrar paquetes NuGet para la solución.
    2. En el administrador de paquetes que se abre, seleccione Examinar. Seleccione Incluir versión preliminar.
    3. Busque y seleccione Microsoft.Azure.CognitiveServices.Vision.ComputerVision.
    4. En el cuadro de diálogo de detalles, seleccione el proyecto y seleccione la versión estable más reciente. A continuación, seleccione Instalar.
  2. En el directorio del proyecto, abra el archivo Program.cs en el editor o IDE que prefiera. Reemplace el contenido de Program.cs por el código siguiente.

    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. Como paso opcional, consulte Determinar cómo procesar los datos. Por ejemplo, para especificar explícitamente el modelo de GA más reciente, edite la llamada a ReadAsync como se muestra. Omita el parámetro o use "latest" para usar el modelo de disponibilidad general más reciente.

      // Read text from URL with a specific model version
      var textHeaders = await client.ReadAsync(urlFile,null,null,"2022-04-30");
    
  4. Ejecute la aplicación.

    • En el menú Depurar , seleccione Iniciar depuración.

Salida

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.

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

Pasos siguientes

En este inicio rápido, ha aprendido a instalar la biblioteca cliente de OCR y a usar Read API. A continuación, obtenga más información sobre las características de Read API.

Use la biblioteca cliente de reconocimiento óptico de caracteres (OCR) para leer texto impreso y manuscrito desde una imagen remota. El servicio OCR puede leer texto visible en una imagen y convertirlo en una secuencia de caracteres. Para obtener más información sobre el reconocimiento de texto, consulte la información general de OCR.

Propina

También puede leer texto de una imagen local. Vea los métodos ComputerVisionClientOperationsMixin , como read_in_stream. O bien, consulte el código de ejemplo en GitHub para ver escenarios que implican imágenes locales.

Documentación de referencia | Código fuente de la biblioteca | Paquete (PiPy) | Ejemplos

Requisitos previos

  • Una suscripción Azure: Crear una gratuita.
  • Python 3.x.
  • La instalación de Python debe incluir pip. Puede comprobar si ha instalado pip, ejecute pip --version en la línea de comandos. Obtenga pip instalando la versión más reciente de Python.
  • Un recurso de Azure Vision en Foundry Tools. Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.
  • Clave y punto de conexión del recurso que crea para conectar la aplicación a Azure Vision.
    1. Después de implementar el recurso de Azure Vision, seleccione Go al recurso.
    2. En el panel izquierdo, seleccione Claves y punto de conexión.
    3. Copie una de las claves y el punto de conexión para usarlos más adelante en el inicio rápido.

Creación de variables de entorno

En este ejemplo, escriba las credenciales en variables de entorno en el equipo local que ejecuta la aplicación.

Vaya al portal de Azure. Si el recurso que creó en la sección Requisitos previos se implementó correctamente, seleccione Ir al recurso en Pasos siguientes. Puede encontrar la clave y el punto de conexión en Administración de recursos en la página de Claves y punto de conexión del recurso Face. La clave de recurso no es la misma que el identificador de suscripción de Azure.

Para establecer la variable de entorno para la clave y el punto de conexión, abra una ventana de consola y siga las instrucciones del sistema operativo y el entorno de desarrollo.

  • Para establecer la variable de entorno VISION_KEY, reemplace <your_key> con una de las claves para su recurso.
  • Para establecer la variable de entorno VISION_ENDPOINT, reemplace <your_endpoint> con el punto de conexión para su recurso.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Después de agregar las variables de entorno, es posible que tenga que reiniciar los programas en ejecución que leerán las variables de entorno, incluida la ventana de la consola.

Leer texto impreso y manuscrito

  1. Instale la biblioteca cliente.

    En una ventana de consola, ejecute el siguiente comando:

    pip install --upgrade azure-cognitiveservices-vision-computervision
    
  2. Instale la biblioteca Pillow.

    pip install pillow
    
  3. Cree un nuevo archivo de aplicación de Python, quickstart-file.py. Después, ábralo en su editor o IDE preferido.

  4. Reemplace el contenido de quickstart-file.py por el código siguiente.

    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. Como paso opcional, consulte Determinar cómo procesar los datos. Por ejemplo, para especificar explícitamente el modelo GA más reciente, edite la instrucción read como se muestra. Omitir el parámetro o usar "latest" automáticamente utiliza el modelo GA más reciente.

       # 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. Ejecute la aplicación con el comando python en su archivo de inicio rápido.

    python quickstart-file.py
    

Salida

===== 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.

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

Pasos siguientes

En este inicio rápido, ha aprendido a instalar la biblioteca cliente de OCR y a usar Read API. A continuación, obtenga más información sobre las características de Read API.

Use la biblioteca cliente de reconocimiento óptico de caracteres (OCR) para leer texto impreso y manuscrito con Read API. El servicio OCR puede leer texto visible en una imagen y convertirlo en una secuencia de caracteres. Para obtener más información sobre el reconocimiento de texto, consulte la información general de OCR.

Propina

También puede leer texto de una imagen local. Consulte los métodos ComputerVisionClient , como readInStream. O bien, consulte el código de ejemplo en GitHub para ver escenarios que implican imágenes locales.

| Paquete (npm) | Ejemplos

Requisitos previos

  • Una suscripción Azure: Crear una gratuita.
  • La versión actual de Node.js.
  • Un recurso de Azure Vision en Foundry Tools. Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.
  • Clave y punto de conexión del recurso que crea para conectar la aplicación a Azure Vision.
    1. Después de implementar el recurso de Azure Vision, seleccione Go al recurso.
    2. En el panel izquierdo, seleccione Claves y punto de conexión.
    3. Copie una de las claves y el punto de conexión para usarlos más adelante en el inicio rápido.

Creación de variables de entorno

En este ejemplo, escriba las credenciales en variables de entorno en el equipo local que ejecuta la aplicación.

Vaya al portal de Azure. Si el recurso que creó en la sección Requisitos previos se implementó correctamente, seleccione Ir al recurso en Pasos siguientes. Puede encontrar la clave y el punto de conexión en Administración de recursos en la página de Claves y punto de conexión del recurso Face. La clave de recurso no es la misma que el identificador de suscripción de Azure.

Para establecer la variable de entorno para la clave y el punto de conexión, abra una ventana de consola y siga las instrucciones del sistema operativo y el entorno de desarrollo.

  • Para establecer la variable de entorno VISION_KEY, reemplace <your_key> con una de las claves para su recurso.
  • Para establecer la variable de entorno VISION_ENDPOINT, reemplace <your_endpoint> con el punto de conexión para su recurso.

Importante

Se recomienda la autenticación de Microsoft Entra ID con identidades administradas para los recursos de Azure para evitar almacenar credenciales en sus aplicaciones que se ejecutan en la nube.

Use las claves de API con precaución. No incluya la clave de API directamente en el código y nunca la publique públicamente. Si usa claves de API, almacénelas de forma segura en Azure Key Vault, gire las claves periódicamente y restrinja el acceso a Azure Key Vault mediante el control de acceso basado en rol y las restricciones de acceso de red. Para obtener más información sobre el uso de claves de API de forma segura en las aplicaciones, consulte CLAVESAPI con Azure Key Vault.

Para obtener más información sobre la seguridad de los servicios de inteligencia artificial, consulte Authenticate requests to Servicios de Azure AI (Solicitudes de autenticación a Servicios de Azure AI.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Después de agregar las variables de entorno, es posible que tenga que reiniciar los programas en ejecución que leerán las variables de entorno, incluida la ventana de la consola.

Leer texto impreso y manuscrito

Cree una nueva aplicación de Node.js.

  1. En una ventana de consola, cree un directorio para la aplicación y vaya a ella.

    mkdir myapp
    cd myapp
    
  2. Ejecute el npm init comando para crear una aplicación de nodo con un package.json archivo. Seleccione Intro para las indicaciones.

    npm init
    
  3. Para instalar la biblioteca cliente, instale el ms-rest-azure paquete npm y @azure/cognitiveservices-computervision :

    npm install ms-rest-azure
    npm install @azure/cognitiveservices-computervision
    
  4. Instale el módulo asincrónico:

    npm install async
    

    El archivo package.json de la aplicación se actualiza con las dependencias.

  5. Cree un nuevo archivo, index.jsy ábralo en un editor de texto.

  6. Pegue el código siguiente en el archivo index.js .

    '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. Como paso opcional, consulte Determinar cómo procesar los datos. Por ejemplo, para especificar explícitamente el modelo GA más reciente, edite la instrucción read como se muestra. Omitir el parámetro o usar "latest" automáticamente utiliza el modelo GA más reciente.

      let result = await client.read(url,{modelVersion:"2022-04-30"});
    
  8. Ejecute la aplicación con el comando node en su archivo de inicio rápido.

    node index.js
    

Salida

-------------------------------------------------
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.

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

Pasos siguientes

En este inicio rápido, ha aprendido a instalar la biblioteca cliente de OCR y a usar Read API. A continuación, obtenga más información sobre las características de Read API.

Use la API REST de reconocimiento óptico de caracteres (OCR) para leer texto impreso y manuscrito.

Nota

En este inicio rápido se usan comandos cURL para llamar a la API REST. También puede llamar a la API REST mediante un lenguaje de programación. Consulte los ejemplos de GitHub para obtener ejemplos en C#, Python, Java y JavaScript.

Requisitos previos

  • Una suscripción Azure: Crear una gratuita.
  • cURL instalado.
  • Un recurso de Azure Vision en Foundry Tools. Puede usar el plan de tarifa gratis (F0) para probar el servicio y actualizarlo más adelante a un nivel de pago para producción.
  • Clave y punto de conexión del recurso que crea para conectar la aplicación a Azure Vision.
    1. Después de implementar el recurso de Azure Vision, seleccione Go al recurso.
    2. En el panel izquierdo, seleccione Claves y punto de conexión.
    3. Copie una de las claves y el punto de conexión para usarlos más adelante en el inicio rápido.

Leer texto impreso y manuscrito

El servicio de reconocimiento óptico de caracteres (OCR) puede extraer texto visible en una imagen o documento y convertirlo en una secuencia de caracteres. Para obtener más información sobre la extracción de texto, consulte la información general de OCR.

Llamada a la API de lectura

Para crear y ejecutar el ejemplo, siga estos pasos:

  1. Copie el comando siguiente en un editor de texto.

  2. Realice los siguientes cambios en el comando cuando sea necesario:

    1. Reemplace el valor de <key> por la clave.
    2. Reemplace la primera parte de la dirección URL de solicitud (https://westcentralus.api.cognitive.microsoft.com/) por el texto de su propia dirección URL del punto de conexión.

      Nota

      Los nuevos recursos creados después del 1 de julio de 2019 usarán nombres de subdominios personalizados. Para obtener más información y una lista completa de puntos de conexión regionales, consulte Nombres de subdominios personalizados para Las herramientas de Foundry.

    3. Opcionalmente, cambie la dirección URL de la imagen en el cuerpo de la solicitud (https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) a la dirección URL de una imagen diferente que se va a analizar.
  3. Abra una ventana del símbolo del sistema.

  4. Pegue el comando del editor de texto en la ventana del símbolo del sistema y, a continuación, ejecute el comando.

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'}"

La respuesta incluye un Operation-Location encabezado, cuyo valor es una dirección URL única. Utilice esta dirección URL para consultar los resultados de la operación de lectura. La dirección URL expira en 48 horas.

Opcionalmente, especifique la versión del modelo.

Como paso opcional, consulte Determinar cómo procesar los datos. Por ejemplo, para especificar explícitamente el modelo de disponibilidad general más reciente, use model-version=2022-04-30 como parámetro . Omitir el parámetro o usar model-version=latest automáticamente utiliza el modelo GA más reciente.

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'}"

Consultar resultados de lectura

  1. Copie el comando siguiente en el editor de texto.

  2. Reemplace la dirección URL por el Operation-Location valor que copió en el procedimiento anterior.

  3. Reemplace el valor de <key> por la clave.

  4. Abra una ventana de consola.

  5. Pegue el comando del editor de texto en la ventana de la consola y, a continuación, ejecute el comando .

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

Examen de la respuesta

Se devuelve una respuesta correcta en JSON. La aplicación de ejemplo analiza y muestra una respuesta correcta en la ventana de consola, similar al ejemplo siguiente:

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

Limpieza de recursos

Si desea limpiar y quitar una suscripción a Foundry Tools, puede eliminar el recurso o el grupo de recursos. Al eliminar el grupo de recursos también se eliminan los demás recursos asociados.

Pasos siguientes

En esta guía rápida, aprendiste a llamar a la API REST de lectura. A continuación, obtenga más información sobre las características de Read API.