Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Edições OCR (Leitura)
Importante
Selecione a edição Read que melhor se adequa às suas necessidades.
| Entrada | Exemplos | Ler edição | Benefício |
|---|---|---|---|
| Imagens: Imagens gerais, na natureza | Rótulos, sinais de trânsito e cartazes | OCR para imagens (versão 4.0) | Otimizado para imagens gerais, não relacionadas com documentos, com uma API síncrona de desempenho melhorada que facilita a incorporação de OCR nos seus cenários de experiência de utilizador. |
| Documentos: Digitais e escaneados, incluindo imagens | livros, artigos e relatórios | Modelo de leitura de Inteligência de Documentos | Otimizado para documentos digitalizados e digitalizados com muitos textos, com uma API assíncrona para ajudar a automatizar o processamento inteligente de documentos em grande escala. |
Sobre Azure Vision v3.2 GA Read
Está à procura da versão de leitura mais recente do Azure Vision v3.2 em disponibilidade geral? Todas as futuras melhorias 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.
Comece a usar o Azure Vision com as Foundry Tools e aceda às APIs REST ou bibliotecas de clientes. A Read API fornece-lhe algoritmos de IA para extrair texto de imagens e devolvê-lo como cadeias estruturadas. Siga estes passos para instalar um pacote na sua aplicação e experimentar o código de exemplo para tarefas básicas.
Use a biblioteca cliente de reconhecimento ótico de caracteres (OCR) para ler texto impresso e manuscrito a partir de uma imagem. O serviço OCR pode ler texto visível numa imagem e convertê-lo num fluxo de caracteres. Para mais informações sobre reconhecimento de texto, consulte a visão geral do OCR. O código nesta secção utiliza o mais recente pacote Azure Vision no Foundry Tools.
Dica
Também podes extrair texto de uma imagem local. Veja os métodos ComputerVisionClient , como ReadInStreamAsync. Ou, consulte o código de exemplo em GitHub para cenários envolvendo imagens locais.
Documentação de referência | Código-fonte da biblioteca | Package (NuGet) | Samples
Pré-requisitos
- Uma subscrição Azure - Crie uma gratuitamente.
- A versão Visual Studio IDE ou atual de .NET Core.
-
Um recurso Azure Vision. Podes usar o escalão de preços gratuito (
F0) para experimentar o serviço, e depois fazer um upgrade para um nível pago para produção. - A chave e o endpoint do recurso que cria para ligar a sua aplicação ao Azure Vision.
- Depois que o recurso Azure Vision for implementado, selecione Ir para o recurso.
- No painel esquerdo, selecione Keys e Endpoint.
- Copie uma das chaves e o Endpoint para usar mais tarde no quickstart.
Criar variáveis de ambiente
Neste exemplo, escreve as tuas credenciais para variáveis de ambiente na máquina local que executa a aplicação.
Vai ao portal do Azure. Se o recurso que criou na secção de Pré-requisitos foi implementado com sucesso, selecione Ir para o recurso em Próximos passos. Pode encontrar a sua chave e endpoint em Gestão de Recursos na página de Chaves e Endpoint do recurso Face. A tua chave de recurso não é a mesma que o teu ID de subscrição do Azure.
Para definir a variável de ambiente para a sua chave e endpoint, abra uma janela de consola e siga as instruções do seu sistema operativo e ambiente de desenvolvimento.
- Para definir a
VISION_KEYvariável de ambiente, substitui<your_key>por uma das chaves do teu recurso. - Para definir a
VISION_ENDPOINTvariável de ambiente, substitua<your_endpoint>pelo endpoint do seu recurso.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades geridas para recursos do Azure, para evitar armazenar credenciais nas suas aplicações que correm na nuvem.
Use as chaves API com cautela. Não incluas a chave API diretamente no teu código e nunca a publiques publicamente. Se usar chaves API, guarde-as de forma segura no Azure Key Vault, rode as chaves regularmente e restrinja o acesso ao Azure Key Vault usando controlo de acesso baseado em funções e restrições de acesso à rede. Para mais informações sobre o uso seguro das chaves da API nas suas aplicações, consulte Chaves da API com Azure Key Vault.
Para mais informações sobre a segurança dos serviços de IA, consulte Autenticar pedidos para Serviços de IA do Azure.
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
Depois de adicionares as variáveis de ambiente, podes precisar de reiniciar quaisquer programas em execução que leiam as variáveis de ambiente, incluindo a janela da consola.
Leia texto impresso e manuscrito
Crie uma nova aplicação C#.
Usando Visual Studio, crie um projeto Console App (.NET Framework) para C#, Windows, Console.
Depois de criar um novo projeto, instale a biblioteca do cliente:
- Clique com o botão direito na solução do projeto no Explorador de Soluções e selecione Gerir Pacotes NuGet para Solução.
- No gestor de pacotes que abre, selecione Navegar. Selecionar Incluir pré-lançamento.
- Procure e selecione
Microsoft.Azure.CognitiveServices.Vision.ComputerVision. - Na caixa de diálogo de detalhes, selecione o seu projeto e selecione a versão estável mais recente. Depois seleciona Instalar.
A partir do diretório do projeto, abre o ficheiro Program.cs no teu editor ou IDE preferido. Substitua o conteúdo de Program.cs pelo seguinte código.
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(); } } }Como passo opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo GA mais recente, edite a
ReadAsyncchamada conforme mostrada. Ignora o parâmetro ou usa"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");Executa a aplicação.
- No menu Debug , selecione Iniciar Depuração.
Produção
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.
Liberar recursos
Se quiseres limpar e remover uma subscrição do Foundry Tools, podes eliminar o recurso ou grupo de recursos. Eliminar o grupo de recursos também elimina quaisquer outros recursos associados a ele.
Próximos passos
Neste quickstart, aprendeste a instalar a biblioteca cliente OCR e a usar a Read API. De seguida, saiba mais sobre as funcionalidades Read API.
- Visão geral do OCR
- O código-fonte deste exemplo pode ser encontrado em GitHub.
Use a biblioteca cliente de reconhecimento ótico de caracteres (OCR) para ler texto impresso e manuscrito a partir de uma imagem remota. O serviço OCR pode ler texto visível numa imagem e convertê-lo num fluxo de caracteres. Para mais informações sobre reconhecimento de texto, consulte a visão geral do OCR.
Dica
Também pode ler texto a partir de uma imagem local. Consulte os métodos ComputerVisionClientOperationsMixin , como read_in_stream. Ou, consulte o código de exemplo em GitHub para cenários envolvendo imagens locais.
Documentação de referência | Código-fonte da biblioteca | Package (PiPy) | Samples
Pré-requisitos
- Uma subscrição Azure - Crie uma gratuitamente.
- Python 3.x.
- A sua instalação Python deve incluir pip. Podes verificar se tens o pip instalado, executa
pip --versionna linha de comandos. Obtenha pip instalando a versão mais recente do Python. -
Um recurso Azure Vision no Foundry Tools. Podes usar o escalão de preços gratuito (
F0) para experimentar o serviço, e depois fazer um upgrade para um nível pago para produção. - A chave e o endpoint do recurso que cria para ligar a sua aplicação ao Azure Vision.
- Depois que o recurso Azure Vision for implementado, selecione Ir para o recurso.
- No painel esquerdo, selecione Keys e Endpoint.
- Copie uma das chaves e o Endpoint para usar mais tarde no quickstart.
Criar variáveis de ambiente
Neste exemplo, escreve as tuas credenciais para variáveis de ambiente na máquina local que executa a aplicação.
Vai ao portal do Azure. Se o recurso que criou na secção de Pré-requisitos foi implementado com sucesso, selecione Ir para o recurso em Próximos passos. Pode encontrar a sua chave e endpoint em Gestão de Recursos na página de Chaves e Endpoint do recurso Face. A tua chave de recurso não é a mesma que o teu ID de subscrição do Azure.
Para definir a variável de ambiente para a sua chave e endpoint, abra uma janela de consola e siga as instruções do seu sistema operativo e ambiente de desenvolvimento.
- Para definir a
VISION_KEYvariável de ambiente, substitui<your_key>por uma das chaves do teu recurso. - Para definir a
VISION_ENDPOINTvariável de ambiente, substitua<your_endpoint>pelo endpoint do seu recurso.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades geridas para recursos do Azure, para evitar armazenar credenciais nas suas aplicações que correm na nuvem.
Use as chaves API com cautela. Não incluas a chave API diretamente no teu código e nunca a publiques publicamente. Se usar chaves API, guarde-as de forma segura no Azure Key Vault, rode as chaves regularmente e restrinja o acesso ao Azure Key Vault usando controlo de acesso baseado em funções e restrições de acesso à rede. Para mais informações sobre o uso seguro das chaves da API nas suas aplicações, consulte Chaves da API com Azure Key Vault.
Para mais informações sobre a segurança dos serviços de IA, consulte Autenticar pedidos para Serviços de IA do Azure.
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
Depois de adicionares as variáveis de ambiente, podes precisar de reiniciar quaisquer programas em execução que leiam as variáveis de ambiente, incluindo a janela da consola.
Leia texto impresso e manuscrito
Instala a biblioteca do cliente.
Numa janela de consola, execute o seguinte comando:
pip install --upgrade azure-cognitiveservices-vision-computervisionInstala a biblioteca Pillow.
pip install pillowCrie um novo ficheiro de aplicação Python, quickstart-file.py. Depois abre-o no teu editor ou IDE preferido.
Substitua o conteúdo da quickstart-file.py pelo seguinte código.
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.")Como passo opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo GA mais recente, edite a
readinstrução conforme mostrado. Saltar o parâmetro ou usar"latest"automaticamente usa o modelo 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")Executa a aplicação com o
pythoncomando no teu ficheiro de início rápido.python quickstart-file.py
Produção
===== 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.
Liberar recursos
Se quiseres limpar e remover uma subscrição do Foundry Tools, podes eliminar o recurso ou grupo de recursos. Eliminar o grupo de recursos também elimina quaisquer outros recursos associados a ele.
Próximos passos
Neste quickstart, aprendeste a instalar a biblioteca cliente OCR e a usar a Read API. De seguida, saiba mais sobre as funcionalidades Read API.
- Visão geral do OCR
- O código-fonte deste exemplo pode ser encontrado em GitHub.
Use a biblioteca cliente de reconhecimento ótico de caracteres (OCR) para ler texto impresso e manuscrito com a Read API. O serviço OCR pode ler texto visível numa imagem e convertê-lo num fluxo de caracteres. Para mais informações sobre reconhecimento de texto, consulte a visão geral do OCR.
Dica
Também pode ler texto a partir de uma imagem local. Veja os métodos ComputerVisionClient , como readInStream. Ou, consulte o código de exemplo em GitHub para cenários envolvendo imagens locais.
Documentação | de referênciaPacote (npm) | Exemplos
Pré-requisitos
- Uma subscrição Azure - Crie uma gratuitamente.
- A versão atual de Node.js.
-
Um recurso Azure Vision no Foundry Tools. Podes usar o escalão de preços gratuito (
F0) para experimentar o serviço, e depois fazer um upgrade para um nível pago para produção. - A chave e o endpoint do recurso que cria para ligar a sua aplicação ao Azure Vision.
- Depois que o recurso Azure Vision for implementado, selecione Ir para o recurso.
- No painel esquerdo, selecione Keys e Endpoint.
- Copie uma das chaves e o Endpoint para usar mais tarde no quickstart.
Criar variáveis de ambiente
Neste exemplo, escreve as tuas credenciais para variáveis de ambiente na máquina local que executa a aplicação.
Vai ao portal do Azure. Se o recurso que criou na secção de Pré-requisitos foi implementado com sucesso, selecione Ir para o recurso em Próximos passos. Pode encontrar a sua chave e endpoint em Gestão de Recursos na página de Chaves e Endpoint do recurso Face. A tua chave de recurso não é a mesma que o teu ID de subscrição do Azure.
Para definir a variável de ambiente para a sua chave e endpoint, abra uma janela de consola e siga as instruções do seu sistema operativo e ambiente de desenvolvimento.
- Para definir a
VISION_KEYvariável de ambiente, substitui<your_key>por uma das chaves do teu recurso. - Para definir a
VISION_ENDPOINTvariável de ambiente, substitua<your_endpoint>pelo endpoint do seu recurso.
Importante
Recomendamos a autenticação do Microsoft Entra ID com identidades geridas para recursos do Azure, para evitar armazenar credenciais nas suas aplicações que correm na nuvem.
Use as chaves API com cautela. Não incluas a chave API diretamente no teu código e nunca a publiques publicamente. Se usar chaves API, guarde-as de forma segura no Azure Key Vault, rode as chaves regularmente e restrinja o acesso ao Azure Key Vault usando controlo de acesso baseado em funções e restrições de acesso à rede. Para mais informações sobre o uso seguro das chaves da API nas suas aplicações, consulte Chaves da API com Azure Key Vault.
Para mais informações sobre a segurança dos serviços de IA, consulte Autenticar pedidos para Serviços de IA do Azure.
setx VISION_KEY <your_key>
setx VISION_ENDPOINT <your_endpoint>
Depois de adicionares as variáveis de ambiente, podes precisar de reiniciar quaisquer programas em execução que leiam as variáveis de ambiente, incluindo a janela da consola.
Leia texto impresso e manuscrito
Crie uma nova Node.js aplicação.
Numa janela de consola, crie um novo diretório para a sua aplicação e navegue até lá.
mkdir myapp cd myappExecute o comando
npm initpara criar uma aplicação Node.js com um ficheiropackage.json. Selecione Enter para quaisquer prompts.npm initPara instalar a biblioteca cliente, instale o pacote
ms-rest-azuree o pacote npm@azure/cognitiveservices-computervision.npm install ms-rest-azure npm install @azure/cognitiveservices-computervisionInstale o módulo assíncrono:
npm install asyncO ficheiro da sua aplicação
package.jsoné atualizado com as dependências.Cria um novo ficheiro, index.js, e abre-o num editor de texto.
Cole o seguinte código no seu ficheiroindex.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();Como passo opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo GA mais recente, edite a
readinstrução conforme mostrado. Saltar o parâmetro ou usar"latest"automaticamente usa o modelo GA mais recente.let result = await client.read(url,{modelVersion:"2022-04-30"});Executa a aplicação com o
nodecomando no teu ficheiro de início rápido.node index.js
Produção
-------------------------------------------------
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.
Liberar recursos
Se quiseres limpar e remover uma subscrição do Foundry Tools, podes eliminar o recurso ou grupo de recursos. Eliminar o grupo de recursos também elimina quaisquer outros recursos associados a ele.
Próximos passos
Neste quickstart, aprendeste a instalar a biblioteca cliente OCR e a usar a Read API. De seguida, saiba mais sobre as funcionalidades Read API.
- Visão geral do OCR
- O código-fonte deste exemplo pode ser encontrado em GitHub.
Use a API REST de reconhecimento ótico de caracteres (OCR) para ler texto impresso e manuscrito.
Nota
Este quickstart utiliza comandos cURL para chamar a API REST. Também pode chamar a API REST usando uma linguagem de programação. Consulte os exemplos de GitHub para exemplos em C#, Python, Java e JavaScript.
Pré-requisitos
- Uma subscrição Azure - Crie uma gratuitamente.
- cURL instalado.
-
Um recurso Azure Vision no Foundry Tools. Podes usar o escalão de preços gratuito (
F0) para experimentar o serviço, e depois fazer um upgrade para um nível pago para produção. - A chave e o endpoint do recurso que cria para ligar a sua aplicação ao Azure Vision.
- Depois que o recurso Azure Vision for implementado, selecione Ir para o recurso.
- No painel esquerdo, selecione Keys e Endpoint.
- Copie uma das chaves e o Endpoint para usar mais tarde no quickstart.
Leia texto impresso e manuscrito
O serviço de reconhecimento ótico de caracteres (OCR) pode extrair texto visível numa imagem ou documento e convertê-lo num fluxo de caracteres. Para mais informações sobre extração de texto, consulte a visão geral do OCR.
Chame a Read API
Para criar e executar a amostra, faça os seguintes passos:
Copie o comando seguinte para um editor de texto.
Faça as seguintes alterações no comando sempre que necessário:
- Substitua o valor de
<key>pela sua chave. - Substitua a primeira parte do URL do pedido (
https://westcentralus.api.cognitive.microsoft.com/) pelo texto no seu próprio URL de endpoint.Nota
Novos recursos criados após 1 de julho de 2019 irão utilizar nomes de subdomínio personalizados. Para mais informações e uma lista completa de endpoints regionais, consulte Nomes de subdomínio personalizados para Foundry Tools.
- Opcionalmente, altere a URL da imagem no corpo do pedido (
https://learn.microsoft.com/azure/ai-services/computer-vision/media/quickstarts/presentation.png) para a URL de uma imagem diferente a ser analisada.
- Substitua o valor de
Abre uma janela de prompt de comandos.
Cola o comando do editor de texto na janela do prompt de comandos e depois executa o 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'}"
A resposta inclui um Operation-Location cabeçalho, cujo valor é uma URL única. Usa este URL para consultar os resultados da operação de leitura. A URL expira em 48 horas.
Opcionalmente, especifique a versão do modelo
Como passo opcional, veja Determinar como processar os dados. Por exemplo, para especificar explicitamente o modelo GA mais recente, use model-version=2022-04-30 como parâmetro. Saltar o parâmetro ou usar model-version=latest automaticamente usa o modelo 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 resultados de leitura
Copie o comando seguinte para o seu editor de texto.
Substitua a URL pelo
Operation-Locationvalor que copiou no procedimento anterior.Substitua o valor de
<key>pela sua chave.Abre uma janela de consola.
Cola o comando do editor de texto na janela da consola e depois executa 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}"
Analise a resposta
Uma resposta bem-sucedida é devolvida em JSON. A aplicação de exemplo analisa e apresenta uma resposta bem-sucedida na janela da consola, semelhante ao seguinte exemplo:
{
"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
}
]
}
]
}
]
}
}
Liberar recursos
Se quiseres limpar e remover uma subscrição do Foundry Tools, podes eliminar o recurso ou grupo de recursos. Eliminar o grupo de recursos também elimina quaisquer outros recursos associados a ele.
Próximos passos
Neste início rápido, aprendeu a chamar a API REST Read. De seguida, saiba mais sobre as funcionalidades Read API.