Público-alvo
O objetivo deste tutorial é ajudar a desenvolver aplicações através da API Google Cloud Vision Document Text Detection. Parte do princípio de que tem conhecimentos básicos de técnicas e construções de programação, mas, mesmo que seja um programador iniciante, deve conseguir acompanhar e executar este tutorial sem dificuldade. Em seguida, use a documentação de referência da Cloud Vision API para criar aplicações básicas.
Pré-requisitos
- Configure um projeto da API Cloud Vision na Google Cloud consola.
Configure o seu ambiente para usar as Credenciais padrão da aplicação.
Python
- Instale o Python.
- Instale o pip.
- Instale a biblioteca cliente do Google Cloud e a biblioteca de processamento de imagens Python.
Anotar uma imagem com o OCR de texto de documentos
Este tutorial explica passo a passo uma aplicação básica da API Vision que faz um
DOCUMENT_TEXT_DETECTION pedido e, em seguida, processa a fullTextAnnotation
resposta.
Um fullTextAnnotation é uma resposta hierárquica estruturada para o texto UTF-8
extraído da imagem, organizado como
Pages→Blocks→Paragraphs→Words→Symbols:
Pageé uma coleção de blocos, além de metainformações sobre a página: tamanhos, resoluções (a resolução X e a resolução Y podem diferir).Blockrepresenta um elemento "lógico" da página, por exemplo, uma área coberta por texto, uma imagem ou um separador entre colunas. Os blocos de texto e de tabela contêm as principais informações necessárias para extrair o texto.Paragraphé uma unidade estrutural de texto que representa uma sequência ordenada de palavras. Por predefinição, as palavras são consideradas separadas por quebras de palavras.Wordé a unidade de texto mais pequena. É representada como uma matriz de símbolos.Symbolrepresenta um caráter ou uma marca de pontuação.
O elemento fullTextAnnotation também pode fornecer URLs de imagens Web que correspondam parcial ou totalmente à imagem no pedido.
Listagem de código completa
À medida que lê o código, recomendamos que o siga consultando a referência Python da Cloud Vision API.
Esta aplicação simples realiza as seguintes tarefas:
- Importa as bibliotecas necessárias para executar a aplicação
- Aceita três argumentos e transmite-os à função
main():image_file: o ficheiro de imagem de entrada a anotaroutput_file—o nome do ficheiro de saída no qual o Cloud Vision vai gerar uma imagem de saída com caixas poligonais desenhadas
- Cria uma instância do
ImageAnnotatorClientpara interagir com o serviço - Envia o pedido e devolve uma resposta
- Cria uma imagem de saída com caixas desenhadas à volta do texto
Uma visão mais detalhada do código
Importar bibliotecas
Importamos bibliotecas padrão:
argparsepara permitir que a aplicação aceite nomes de ficheiros de entrada como argumentosenumpara a enumeraçãoFeatureTypeiopara E/S de ficheiros
Outras importações:
- A classe
ImageAnnotatorClientna bibliotecagoogle.cloud.visionpara aceder à API Vision. - O módulo
typesna biblioteca