Compartilhar via


Início Rápido: Read da GA do Visão de IA do Azure v3.2

Edições de OCR (leitura)

Importante

Selecione a edição de Leitura que melhor atenda aos seus requisitos.

Entrada Exemplos Edição de Leitura Benefício
Imagens: gerais, na natureza rótulos, placas de rua e cartazes OCR para imagens (versão 4.0) Otimizado para imagens gerais, não documentais, com uma API síncrona com desempenho aprimorado que facilita a incorporação de OCR nos cenários de experiência do usuário.
Documentos: digitais e digitalizados, incluindo imagens livros, artigos e relatórios Modelo de leitura da Informação de Documentos Otimizado para documentos digitais e digitalizados contendo texto intenso com uma API assíncrona para ajudar a automatizar o processamento inteligente de documentos em escala.

Sobre o Read da GA do Visão de IA do Azure v3.2

Procurando o Read da GA mais recente do Visão de IA do Azure v3.2? Todos os aprimoramentos futuros do OCR de Leitura fazem parte dos dois serviços listados anteriormente. Não haverá mais atualizações para a Visão de IA do Azure v3.2. Para obter mais informações, veja Ligue para a API de leitura do IA do Azure Vision 3.2 GA e Início Rápido: leitura do Azure AI Vision v3.2 GA.

Introdução à API REST do Read do Visão de IA do Azure ou às bibliotecas de cliente. A API de Leitura fornece algoritmos de IA para extrair texto de imagens e retorná-lo como cadeias de caracteres estruturadas. Siga essas etapas para instalar um pacote para seu aplicativo e experimentar o código de exemplo para tarefas básicas.

Use a biblioteca cliente de reconhecimento óptico de caracteres (OCR) para ler texto impresso e manuscrito de uma imagem. O serviço de OCR pode ler um texto visível em uma imagem e convertê-lo em um fluxo de caracteres. Para obter mais informações sobre reconhecimento de texto, veja Visão geral do OCR. O código nesta seção usa o pacote mais recente da Visão de IA do Azure.

Dica

Você também pode extrair um texto de uma imagem local. Confira os métodos de ComputerVisionClient, como ReadInStreamAsync. Ou veja o código de exemplo no GitHub para obter cenários que envolvam imagens locais.

Documentação de referência | Código-fonte da biblioteca | Pacote (NuGet) | Exemplos

Pré-requisitos

  • Uma assinatura do Azure – Crie uma gratuitamente.
  • O IDE do Visual Studio ou a versão atual do .NET Core.
  • Um recurso do IA do Azure Vision. Use o tipo de preço gratuito (F0) para experimentar o serviço e atualizar mais tarde para um nível pago para produção.
  • A chave e o ponto final do recurso que cria para ligar a sua aplicação ao serviço IA do Azure Vision.
    1. Após a implantação do recurso Azure Vision, selecione Ir para o recurso.
    2. No menu de navegação à esquerda, selecione Chaves e Ponto de Extremidade.
    3. Copie uma das chaves e o Ponto de extremidade para usar posteriormente no início rápido.

Criar variáveis de ambiente

Nesse exemplo, grave as credenciais em variáveis de ambiente no computador local que executa o aplicativo.

Acesse o portal do Azure. Se o recurso que você criou na seção Pré-requisitos tiver sido implantado com sucesso, selecione Ir para o Recurso em Próximas Etapas. Encontre a chave e o ponto de extremidade em Gerenciamento de Recursos na página Chaves e ponto de extremidade. Sua chave de recurso não é igual à sua ID de assinatura do Azure.

Para definir a variável de ambiente da chave e do ponto de extremidade, abra uma janela do console e siga as instruções para o sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente VISION_KEY, substitua <your_key> por uma das chaves do recurso.
  • Para definir a variável de ambiente VISION_ENDPOINT, substitua <your_endpoint> pelo ponto de extremidade do recurso.

Importante

Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.

Para obter mais informações sobre a segurança dos serviços de IA, veja Autenticar solicitações para serviços de IA do Azure.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Depois de adicionar as variáveis de ambiente, é aconselhável reiniciar todos os programas em execução que precisarem lê-las, incluindo a janela do console.

Ler texto impresso e manuscrito

  1. Criar um aplicativo em C#.

    Usando o Visual Studio, crie um projeto Console App (.NET Framework) para C#, Windows, Console.

    Depois de criar um novo projeto, instale a biblioteca cliente:

    1. Clique com o botão direito na solução do projeto no Gerenciador de Soluções e selecione Gerenciar pacotes NuGet para solução.
    2. No gerenciador de pacotes que é aberto, selecione Navegar. Selecione Incluir pré-lançamento.
    3. Pesquise e selecione Microsoft.Azure.CognitiveServices.Vision.ComputerVision.
    4. Na caixa de diálogo de detalhes, selecione seu projeto e selecione a versão estável mais recente. Em seguida, escolha Instalar.
  2. No diretório do projeto, abra o arquivo Program.cs no IDE ou no editor de sua preferência. Substitua o conteúdo de Program.cs pelo código a seguir.

    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 etapa opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo de GA mais recente, edite a chamada ReadAsync conforme mostrado. Ignore o parâmetro ou use "latest" para usar o modelo GA mais recente.

      // Read text from URL with a specific model version
      var textHeaders = await client.ReadAsync(urlFile,null,null,"2022-04-30");
    
  4. Execute o aplicativo.

    • No menu Depuração, selecione Iniciar Depuração.

Saída

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.

Limpar os recursos

Se quiser limpar e remover uma assinatura dos Serviços de IA do Azure, você poderá excluir o recurso ou grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.

Próximas etapas

Neste guia de início rápido, você aprendeu a instalar a biblioteca de clientes do OCR e a usar a API de Leitura. A seguir, saiba mais sobre os recursos da API de Leitura.

Use a biblioteca cliente de reconhecimento óptico de caracteres (OCR) para ler texto impresso e manuscrito de uma imagem remota. O serviço de OCR pode ler um texto visível em uma imagem e convertê-lo em um fluxo de caracteres. Para obter mais informações sobre reconhecimento de texto, veja Visão geral do OCR.

Dica

Você também pode ler um texto de uma imagem local. Confira os métodos de ComputerVisionClientOperationsMixin, como read_in_stream. Ou veja o código de exemplo no GitHub para obter cenários que envolvam imagens locais.

Documentação de referência | Código-fonte da biblioteca | Pacote (PiPy) | Exemplos

Pré-requisitos

  • Uma assinatura do Azure – Crie uma gratuitamente.
  • Python 3.x.
  • A instalação do Python deve incluir o pip. Você pode verificar se o pip está instalado, execute pip --version na linha de comando. Instale a versão mais recente do Python para obter o pip.
  • Um recurso do IA do Azure Vision. Use o tipo de preço gratuito (F0) para experimentar o serviço e atualizar mais tarde para um nível pago para produção.
  • A chave e o ponto final do recurso que cria para ligar a sua aplicação ao serviço IA do Azure Vision.
    1. Após a implantação do recurso Azure Vision, selecione Ir para o recurso.
    2. No menu de navegação à esquerda, selecione Chaves e Ponto de Extremidade.
    3. Copie uma das chaves e o Ponto de extremidade para usar posteriormente no início rápido.

Criar variáveis de ambiente

Nesse exemplo, grave as credenciais em variáveis de ambiente no computador local que executa o aplicativo.

Acesse o portal do Azure. Se o recurso que você criou na seção Pré-requisitos tiver sido implantado com sucesso, selecione Ir para o Recurso em Próximas Etapas. Encontre a chave e o ponto de extremidade em Gerenciamento de Recursos na página Chaves e ponto de extremidade. Sua chave de recurso não é igual à sua ID de assinatura do Azure.

Para definir a variável de ambiente da chave e do ponto de extremidade, abra uma janela do console e siga as instruções para o sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente VISION_KEY, substitua <your_key> por uma das chaves do recurso.
  • Para definir a variável de ambiente VISION_ENDPOINT, substitua <your_endpoint> pelo ponto de extremidade do recurso.

Importante

Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.

Para obter mais informações sobre a segurança dos serviços de IA, veja Autenticar solicitações para serviços de IA do Azure.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Depois de adicionar as variáveis de ambiente, é aconselhável reiniciar todos os programas em execução que precisarem lê-las, incluindo a janela do console.

Ler texto impresso e manuscrito

  1. Instalar a biblioteca de clientes.

    Em uma janela do console, execute o seguinte comando:

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

    pip install pillow
    
  3. Crie um novo arquivo de aplicativo Python, quickstart-file.py. Depois, abra-o no seu editor ou IDE preferido.

  4. Substitua o conteúdo de quickstart-file.py pelo código a seguir.

    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 etapa opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo de GA mais recente, edite a instrução read conforme mostrado. Ignorar o parâmetro ou usar "latest" utiliza automaticamente o modelo de GA mais recente.

       # 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. Execute o aplicativo com o comando python no seu arquivo de início rápido.

    python quickstart-file.py
    

Saída

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

Limpar os recursos

Se quiser limpar e remover uma assinatura dos Serviços de IA do Azure, você poderá excluir o recurso ou grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.

Próximas etapas

Neste guia de início rápido, você aprendeu a instalar a biblioteca de clientes do OCR e a usar a API de Leitura. A seguir, saiba mais sobre os recursos da API de Leitura.

Use a biblioteca cliente de reconhecimento óptico de caracteres (OCR) para ler texto impresso e manuscrito com a API Read. O serviço de OCR pode ler um texto visível em uma imagem e convertê-lo em um fluxo de caracteres. Para obter mais informações sobre reconhecimento de texto, veja Visão geral do OCR.

Dica

Você também pode ler um texto de uma imagem local. Confira os métodos de ComputerVisionClient, como readInStream. Ou veja o código de exemplo no GitHub para obter cenários que envolvam imagens locais.

Documentação de referência | Pacote (npm) | Amostras

Pré-requisitos

  • Uma assinatura do Azure – Crie uma gratuitamente.
  • A versão atual do Node.js.
  • Um recurso do IA do Azure Vision. Use o tipo de preço gratuito (F0) para experimentar o serviço e atualizar mais tarde para um nível pago para produção.
  • A chave e o ponto final do recurso que cria para ligar a sua aplicação ao serviço IA do Azure Vision.
    1. Após a implantação do recurso Azure Vision, selecione Ir para o recurso.
    2. No menu de navegação à esquerda, selecione Chaves e Ponto de Extremidade.
    3. Copie uma das chaves e o Ponto de extremidade para usar posteriormente no início rápido.

Criar variáveis de ambiente

Nesse exemplo, grave as credenciais em variáveis de ambiente no computador local que executa o aplicativo.

Acesse o portal do Azure. Se o recurso que você criou na seção Pré-requisitos tiver sido implantado com sucesso, selecione Ir para o Recurso em Próximas Etapas. Encontre a chave e o ponto de extremidade em Gerenciamento de Recursos na página Chaves e ponto de extremidade. Sua chave de recurso não é igual à sua ID de assinatura do Azure.

Para definir a variável de ambiente da chave e do ponto de extremidade, abra uma janela do console e siga as instruções para o sistema operacional e o ambiente de desenvolvimento.

  • Para definir a variável de ambiente VISION_KEY, substitua <your_key> por uma das chaves do recurso.
  • Para definir a variável de ambiente VISION_ENDPOINT, substitua <your_endpoint> pelo ponto de extremidade do recurso.

Importante

Se você usar uma chave de API, armazene-a com segurança em outro lugar, como no Azure Key Vault. Não inclua a chave da API diretamente no seu código e nunca a publique publicamente.

Para obter mais informações sobre a segurança dos serviços de IA, veja Autenticar solicitações para serviços de IA do Azure.

setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>

Depois de adicionar as variáveis de ambiente, é aconselhável reiniciar todos os programas em execução que precisarem lê-las, incluindo a janela do console.

Ler texto impresso e manuscrito

Crie um aplicativo Node.js.

  1. Em uma janela do console, crie um novo diretório para seu aplicativo e navegue até ele.

    mkdir myapp
    cd myapp
    
  2. Execute o comando npm init para criar um aplicativo do Node com um arquivo package.json. Selecione Inserir para qualquer solicitação.

    npm init
    
  3. Para instalar a biblioteca cliente, instale os pacotes ms-rest-azure e @azure/cognitiveservices-computervision npm:

    npm install ms-rest-azure
    npm install @azure/cognitiveservices-computervision
    
  4. Instale o módulo assíncrono:

    npm install async
    

    O arquivo package.json do seu aplicativo é atualizado com as dependências.

  5. Crie um novo arquivo, index.js, e abra-o em um editor de texto.

  6. Cole o código a seguir em seu arquivo 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 etapa opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo de GA mais recente, edite a instrução read conforme mostrado. Ignorar o parâmetro ou usar "latest" utiliza automaticamente o modelo de GA mais recente.

      let result = await client.read(url,{modelVersion:"2022-04-30"});
    
  8. Execute o aplicativo com o comando node no seu arquivo de início rápido.

    node index.js
    

Saída

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

Limpar os recursos

Se quiser limpar e remover uma assinatura dos Serviços de IA do Azure, você poderá excluir o recurso ou grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.

Próximas etapas

Neste guia de início rápido, você aprendeu a instalar a biblioteca de clientes do OCR e a usar a API de Leitura. A seguir, saiba mais sobre os recursos da API de Leitura.

Use a API REST de reconhecimento óptico de caracteres (OCR) para ler texto impresso e manuscrito.

Observação

Este guia de início rápido usa comandos cURL para chamar a API REST. Você também pode chamar a API REST usando uma linguagem de programação. Confira as amostras do GitHub para obter exemplos em C#, Python, Java e JavaScript.

Pré-requisitos

  • Uma assinatura do Azure – Crie uma gratuitamente.
  • cURL instalado.
  • Um recurso do IA do Azure Vision. Use o tipo de preço gratuito (F0) para experimentar o serviço e atualizar mais tarde para um nível pago para produção.
  • A chave e o ponto final do recurso que cria para ligar a sua aplicação ao serviço IA do Azure Vision.
    1. Após a implantação do recurso Azure Vision, selecione Ir para o recurso.
    2. No menu de navegação à esquerda, selecione Chaves e Ponto de Extremidade.
    3. Copie uma das chaves e o Ponto de extremidade para usar posteriormente no início rápido.

Ler texto impresso e manuscrito

O serviço de reconhecimento óptico de caracteres (OCR) pode extrair texto visível em uma imagem ou documento e convertê-lo em um fluxo de caracteres. Para obter mais informações sobre extração de texto, veja a Visão geral do OCR.

Chamar a API de Leitura

Para criar e executar o exemplo, siga estas etapas:

  1. Copie o seguinte comando em um editor de texto.

  2. Faça as alterações a seguir no comando quando necessário:

    1. Substitua o valor de <key> pela chave.
    2. Substitua a primeira parte da URL de solicitação (https://westcentralus.api.cognitive.microsoft.com/) pelo texto em sua URL de ponto de extremidade.

      Observação

      Os novos recursos criados após 1º de julho de 2019 usarão nomes de subdomínio personalizados. Para obter mais informações e uma lista completa de pontos de extremidade regionais, confira Nomes de subdomínio personalizados para os serviços de IA do Azure.

    3. Outra opção é alterar a URL da imagem no corpo da solicitação (https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) para uma URL de uma imagem diferente a ser analisada.
  3. Abra una janela de prompt de comando.

  4. Cole o comando do editor de texto na janela do prompt de comando e, em seguida, execute-o.

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

A resposta inclui um cabeçalho Operation-Location, cujo valor é uma URL exclusiva. Você usa essa URL para consultar os resultados da operação de Leitura. Uma URL expira em 48 horas.

Como opção, especifique a versão do modelo

Como etapa opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo de GA mais recente, use model-version=2022-04-30 como parâmetro. Ignorar o parâmetro ou usar model-version=latest utiliza automaticamente o modelo de GA mais recente.

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

Obter os resultados da leitura

  1. Copie o comando a seguir no seu editor de texto.

  2. Substitua o URL pelo valor Operation-Location que você copiou no procedimento anterior.

  3. Substitua o valor de <key> pela chave.

  4. Kudu uma janela do console.

  5. Cole o comando do editor de texto na janela do console e execute o 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}" 
    

Examinar a resposta

Uma resposta com êxito é retornada em JSON. O aplicativo de exemplo analisa e exibe uma resposta bem-sucedida na janela do console, semelhante ao exemplo a seguir:

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

Limpar os recursos

Se quiser limpar e remover uma assinatura dos Serviços de IA do Azure, você poderá excluir o recurso ou grupo de recursos. Excluir o grupo de recursos também exclui todos os recursos associados a ele.

Próximas etapas

Neste guia de início rápido, você aprendeu a chamar a API REST de Leitura. A seguir, saiba mais sobre os recursos da API de Leitura.

Pré-requisitos

Ler texto impresso e manuscrito

  1. Em Reconhecimento óptico de caracteres, selecione Extrair texto de imagens.

  2. Em Experimente, reconheça que esta demonstração incorre em uso na sua conta do Azure. Para obter mais informações, veja Preços do IA do Azure Vision.

  3. Selecione uma imagem no conjunto disponível ou carregue uma imagem própria.

  4. Se necessário, selecione um recurso para selecionar seu recurso.

    Depois de selecionar sua imagem, o texto extraído aparece na janela de saída. Você também pode selecionar a guia JSON para ver a saída JSON retornada pela chamada à API.

Abaixo da experiência de teste, estão as próximas etapas para começar a usar essa funcionalidade em seu aplicativo.

Próximas etapas

Neste início rápido, você usou o Vision Studio para acessar a API de Leitura. A seguir, saiba mais sobre os recursos da API de Leitura.