Partilhar via


Chamar a API de Leitura do Azure Vision v3.2 GA

Edições OCR (Leitura)

Importante

Selecione a edição Read que melhor se adapta às suas necessidades.

Entrada Exemplos Ler edição Benefício
Imagens: Imagens gerais, espontâneas rótulos, sinais de rua e cartazes OCR para imagens (versão 4.0) Otimizado para imagens gerais não documentais com uma API síncrona de desempenho aprimorado que facilita a incorporação de OCR em cenários de experiência do usuário.
Documentos: digitais e digitalizados, incluindo imagens livros, artigos e relatórios Modelo de leitura do Document Intelligence Otimizado para documentos digitalizados e digitais ricos em texto com uma API assíncrona para automatizar o processamento inteligente de documentos em escala.

Sobre Azure Vision v3.2 GA Read

Procura pela capacidade de leitura mais recente do Azure Vision v3.2 GA? Todos os futuros aprimoramentos do Read OCR fazem parte dos dois serviços listados anteriormente. Não há mais atualizações para o Azure Vision v3.2. Para mais informações, consulte Call Azure Vision 3.2 GA Read API e Quickstart: Azure Vision v3.2 GA Read.

Este guia mostra como chamar a API de leitura do GA v3.2 para extrair texto de imagens. Você aprenderá as diferentes maneiras de configurar o comportamento dessa API para atender às suas necessidades.

As etapas a seguir pressupõem que você já criou um recurso de Visão Computacional e obteve uma chave e uma URL de ponto final. Se ainda não o fez, consulte o guia de início rápido para começar.

Determinar como processar os dados (opcional)

Especificar o modelo OCR

Por padrão, o serviço usa o modelo mais recente disponível em geral (GA) para extrair texto. Começando com Read v3.2, um model-version parâmetro permite escolher entre os modelos GA e preview para uma determinada versão da API. O modelo especificado é usado para extrair texto com a operação Ler.

Ao usar a operação Ler, use os seguintes valores para o parâmetro opcional model-version .

Valor Modelo utilizado
Não fornecido Modelo GA mais recente
Mais Recente Modelo GA mais recente
2022-04-30 Modelo GA mais recente. 164 idiomas para texto impresso e 9 idiomas para texto manuscrito, juntamente com várias melhorias na qualidade e desempenho
2022-01-30 Adiciona suporte de texto de impressão para hindi, árabe e idiomas relacionados. Para texto manuscrito, adiciona suporte para japonês e coreano.
2021-09-30 Adiciona suporte de texto impresso para russo e outros idiomas cirílicos. Para texto manuscrito, adiciona suporte para chinês simplificado, francês, alemão, italiano, português e espanhol.
2021-04-12 Modelo GA 2021

Língua de entrada

Por padrão, o serviço extrai todo o texto de suas imagens ou documentos, incluindo idiomas mistos. A operação Read tem um parâmetro de solicitação opcional para o idioma. Forneça apenas um código de idioma se quiser forçar o documento a ser processado como esse idioma específico. Caso contrário, o serviço pode retornar texto incompleto e incorreto.

Ordem de leitura natural (só em línguas latinas)

Por padrão, o serviço produz as linhas de texto na ordem da esquerda para a direita. Opcionalmente, com o parâmetro de solicitação readingOrder, use natural para obter uma ordem de leitura mais intuitiva, conforme mostrado no exemplo a seguir. Este recurso só é suportado para idiomas latinos.

Captura de tela do exemplo de ordem de leitura OCR.

Selecionar páginas ou intervalos de páginas para extração de texto

Por padrão, o serviço extrai texto de todas as páginas dos documentos. Opcionalmente, use o parâmetro de solicitação pages para especificar números de página ou intervalos de páginas para extrair texto apenas dessas páginas. O exemplo a seguir mostra um documento com 10 páginas, com texto extraído para ambos os casos: Todas as páginas (1-10) e Páginas selecionadas (3-6).

Captura de tela mostrando a saída de todas as páginas e das páginas selecionadas.

Enviar dados ao serviço

Você envia uma imagem local ou remota para a API de leitura. Para local, você coloca os dados da imagem binária no corpo da solicitação HTTP. Para remoto, especifique o URL da imagem formatando o corpo da solicitação, como no exemplo a seguir.

{"url":"http://example.com/images/test.jpg"}

A chamada Read da API Read usa uma imagem ou documento PDF como entrada e extrai texto de forma assíncrona.

https://{endpoint}/vision/v3.2/read/analyze[?language][&pages][&readingOrder]

A chamada retorna com um campo de cabeçalho de resposta chamado Operation-Location. O Operation-Location valor é uma URL que contém o ID da operação a ser usado na próxima etapa.

Cabeçalho da resposta Valor de exemplo
Local de Operação https://cognitiveservice/vision/v3.2/read/analyzeResults/d3d3d3d3-eeee-ffff-aaaa-b4b4b4b4b4b4

Nota

Faturação

A página de preços do Azure Vision inclui o escalão de preços para operações de leitura. Cada imagem ou página analisada é uma transação. Se você chamar a operação com um documento PDF ou TIFF contendo 100 páginas, a operação Ler contará como 100 transações e você será cobrado por 100 transações. Se você fez 50 chamadas para a operação e cada chamada enviou um documento com 100 páginas, você será cobrado por 50 X 100 = 5000 transações.

Obter resultados do serviço

A segunda etapa é chamar a operação Obter Resultado de Leitura. Esta operação toma como entrada o ID da operação que foi criado pela operação Ler.

https://{endpoint}/vision/v3.2/read/analyzeResults/{operationId}

Ele retorna uma resposta JSON que contém um campo de status com os seguintes valores possíveis.

Valor Significado
notStarted A operação não foi iniciada.
running A operação está a ser processada.
failed A operação falhou.
succeeded A operação foi bem sucedida.

Você chama essa operação iterativamente até que ela retorne com o valor bem-sucedido . Use um intervalo de 1 a 2 segundos para evitar exceder a taxa de solicitações por segundo (RPS).

Nota

O nível gratuito limita a taxa de solicitação a 20 chamadas por minuto. O nível pago permite 30 RPS que podem ser aumentados mediante solicitação. Anote o identificador do recurso e a região do Azure e abra um pedido de suporte do Azure ou contacte a equipa da sua conta para solicitar uma taxa de RPS mais elevada.

Quando o campo de status tem o succeeded valor, a resposta JSON contém o conteúdo de texto extraído da imagem ou documento. A resposta JSON mantém os agrupamentos de linhas originais de palavras reconhecidas. Inclui as linhas de texto extraídas e suas coordenadas de caixa delimitadora. Cada linha de texto inclui todas as palavras extraídas com suas coordenadas e pontuações de confiança.

Nota

Os dados enviados para a operação de leitura são temporariamente criptografados e armazenados em repouso por um curto período de tempo e, em seguida, excluídos. Isso permite que seus aplicativos recuperem o texto extraído como parte da resposta do serviço.

Exemplo de saída JSON

Veja o seguinte exemplo de uma resposta JSON bem-sucedida:

{
  "status": "succeeded",
  "createdDateTime": "2021-02-04T06:32:08.2752706+00:00",
  "lastUpdatedDateTime": "2021-02-04T06:32:08.7706172+00:00",
  "analyzeResult": {
    "version": "3.2",
    "readResults": [
      {
        "page": 1,
        "angle": 2.1243,
        "width": 502,
        "height": 252,
        "unit": "pixel",
        "lines": [
          {
            "boundingBox": [
              58,
              42,
              314,
              59,
              311,
              123,
              56,
              121
            ],
            "text": "Tabs vs",
            "appearance": {
              "style": {
                "name": "handwriting",
                "confidence": 0.96
              }
            },
            "words": [
              {
                "boundingBox": [
                  68,
                  44,
                  225,
                  59,
                  224,
                  122,
                  66,
                  123
                ],
                "text": "Tabs",
                "confidence": 0.933
              },
              {
                "boundingBox": [
                  241,
                  61,
                  314,
                  72,
                  314,
                  123,
                  239,
                  122
                ],
                "text": "vs",
                "confidence": 0.977
              }
            ]
          }
        ]
      }
    ]
  }
}

Classificação manuscrita para linhas de texto (apenas em línguas latinas)

A resposta inclui uma classificação de se cada linha de texto está em estilo manuscrito ou não, juntamente com uma pontuação de confiança. Esta funcionalidade só está disponível para línguas latinas. O exemplo a seguir mostra a classificação manuscrita para o texto na imagem.

Captura de tela que mostra o exemplo de classificação de manuscrito OCR.