AnnotateImageResponse

Resposta a um pedido de anotação de imagem.

Representação JSON
{
  "textAnnotations": [
    {
      object (EntityAnnotation)
    }
  ],
  "fullTextAnnotation": {
    object (TextAnnotation)
  },
  "error": {
    object (Status)
  },
  "context": {
    object (ImageAnnotationContext)
  }
}
Campos
textAnnotations[]

object (EntityAnnotation)

Se estiver presente, a deteção de texto (OCR) foi concluída com êxito.

fullTextAnnotation

object (TextAnnotation)

Se estiver presente, a deteção de texto (OCR) ou a deteção de texto de documentos (OCR) foi concluída com êxito. Esta anotação fornece a hierarquia estrutural do texto detetado pelo OCR.

error

object (Status)

Se definido, representa a mensagem de erro da operação. Tenha em atenção que as anotações de imagens preenchidas têm a garantia de estar corretas, mesmo quando error está definido.

context

object (ImageAnnotationContext)

Se estiverem presentes, são necessárias informações contextuais para compreender a origem desta imagem.

EntityAnnotation

Conjunto de funcionalidades de entidades detetadas.

Representação JSON
{
  "mid": string,
  "locale": string,
  "description": string,
  "score": number,
  "confidence": number,
  "topicality": number,
  "boundingPoly": {
    object (BoundingPoly)
  },
  "properties": [
    {
      object (Property)
    }
  ]
}
Campos
mid

string

ID de entidade opaco. Alguns IDs podem estar disponíveis na API Google Knowledge Graph Search.

locale

string

O código de idioma da região em que o texto da entidade description é expresso.

description

string

Descrição textual da entidade, expressa no respetivo idioma locale.

score

number

Pontuação geral do resultado. Intervalo [0, 1].

confidence
(deprecated)

number

Descontinuado. Em alternativa, use score. A precisão da deteção de entidades numa imagem. Por exemplo, para uma imagem na qual a entidade "Torre Eiffel" é detetada, este campo representa a confiança de que existe uma torre na imagem da consulta. Intervalo [0, 1].

topicality

number

A relevância da etiqueta ICA (anotação de conteúdo de imagem) para a imagem. Por exemplo, a relevância de "torre" é provavelmente superior para uma imagem que contenha a "Torre Eiffel" detetada do que para uma imagem que contenha um edifício alto distante detetado, mesmo que a confiança de que existe uma torre em cada imagem possa ser a mesma. Intervalo [0, 1].

boundingPoly

object (BoundingPoly)

Região da imagem à qual esta entidade pertence. Não produzido para funcionalidades LABEL_DETECTION.

properties[]

object (Property)

Algumas entidades podem ter campos Property (nome/valor) opcionais fornecidos pelo utilizador, como uma pontuação ou uma string que qualifica a entidade.

BoundingPoly

Um polígono de limite para a anotação de imagem detetada.

Representação JSON
{
  "vertices": [
    {
      object (Vertex)
    }
  ],
  "normalizedVertices": [
    {
      object (NormalizedVertex)
    }
  ]
}
Campos
vertices[]

object (Vertex)

Os vértices do polígono delimitador.

normalizedVertices[]

object (NormalizedVertex)

Os vértices normalizados do polígono delimitador.

Vertex

Um vértice representa um ponto 2D na imagem. NOTA: as coordenadas dos vértices estão na mesma escala que a imagem original.

Representação JSON
{
  "x": integer,
  "y": integer
}
Campos
x

integer

Coordenada X.

y

integer

Coordenada Y.

NormalizedVertex

Um vértice representa um ponto 2D na imagem. NOTA: as coordenadas dos vértices normalizadas são relativas à imagem original e variam entre 0 e 1.

Representação JSON
{
  "x": number,
  "y": number
}
Campos
x

number

Coordenada X.

y

number

Coordenada Y.

Propriedade

Um Property consiste num par de nome/valor fornecido pelo utilizador.

Representação JSON
{
  "name": string,
  "value": string,
  "uint64Value": string
}
Campos
name

string

Nome da propriedade.

value

string

Valor da propriedade.

uint64Value

string

Valor das propriedades numéricas.

TextAnnotation

TextAnnotation contém uma representação estruturada do texto extraído por OCR. A hierarquia de uma estrutura de texto extraída por OCR é a seguinte:

TextAnnotation-> Página -> Bloco -> Parágrafo -> Palavra -> Símbolo

Cada componente estrutural, a partir de Page, pode ter propriedades que descrevem os idiomas detetados, as quebras, etc. Para mais informações, consulte a definição de mensagem TextAnnotation.TextProperty que se segue.

Representação JSON
{
  "pages": [
    {
      object (Page)
    }
  ],
  "text": string
}
Campos
pages[]

object (Page)

Lista de páginas detetadas pelo OCR.

text

string

Texto UTF-8 detetado nas páginas.

Página

Página detetada a partir do OCR.

Representação JSON
{
  "property": {
    object (TextProperty)
  },
  "width": integer,
  "height": integer,
  "blocks": [
    {
      object (Block)
    }
  ],
  "confidence": number
}
Campos
property

object (TextProperty)

Foram detetadas informações adicionais na página.

width

integer

Largura da página. Para PDFs, a unidade é pontos. Para imagens (incluindo TIFFs), a unidade é píxeis.

height

integer

Altura da página. Para PDFs, a unidade é pontos. Para imagens (incluindo TIFFs), a unidade é píxeis.

blocks[]

object (Block)

Lista de blocos de texto, imagens, etc. nesta página.

confidence

number

Confiança nos resultados de OCR na página. Intervalo [0, 1].

TextProperty

Foram detetadas informações adicionais no componente estrutural.

Representação JSON
{
  "detectedLanguages": [
    {
      object (DetectedLanguage)
    }
  ],
  "detectedBreak": {
    object (DetectedBreak)
  }
}
Campos
detectedLanguages[]

object (DetectedLanguage)

Uma lista de idiomas detetados juntamente com a confiança.

detectedBreak

object (DetectedBreak)

Início ou fim detetado de um segmento de texto.

DetectedLanguage

Idioma detetado para um componente estrutural.

Representação JSON
{
  "languageCode": string,
  "confidence": number
}
Campos
languageCode

string

O código de idioma BCP-47, como "en-US" ou "sr-Latn". Para mais informações, consulte https://www.unicode.org/reports/tr35/#Unicode_locale_identifier.

confidence

number

Confiança do idioma detetado. Intervalo [0, 1].

DetectedBreak

Início ou fim de um componente estrutural detetado.

Representação JSON
{
  "type": enum (BreakType),
  "isPrefix": boolean
}
Campos
type

enum (BreakType)

Tipo de quebra detetado.

isPrefix

boolean

Verdadeiro se a quebra preceder o elemento.

BreakType

Enum para denotar o tipo de interrupção encontrado. Nova linha, espaço, etc.

Enumerações
UNKNOWN Tipo de etiqueta de quebra desconhecido.
SPACE Espaço normal.
SURE_SPACE Espaço certo (muito largo).
EOL_SURE_SPACE Quebra de moldagem de linhas.
HYPHEN Hífen no final da linha que não está presente no texto; não ocorre em simultâneo com SPACE, LEADER_SPACE ou LINE_BREAK.
LINE_BREAK Quebra de linha que termina um parágrafo.

Bloquear

Elemento lógico na página.

Representação JSON
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "paragraphs": [
    {
      object (Paragraph)
    }
  ],
  "blockType": enum (BlockType),
  "confidence": number
}
Campos
property

object (TextProperty)

Foram detetadas informações adicionais para o bloqueio.

boundingBox

object (BoundingPoly)

A caixa limitadora do bloco. Os vértices estão na ordem superior esquerdo, superior direito, inferior direito e inferior esquerdo. Quando é detetada uma rotação da caixa delimitadora, a rotação é representada em torno do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Por exemplo:

  • Quando o texto é horizontal, pode ter o seguinte aspeto:
    0----1
    |    |
    3----2
  • Quando é rodado 180 graus em torno do canto superior esquerdo, torna-se:
    2----3
    |    |
    1----0

e a ordem dos vértices continua a ser (0, 1, 2, 3).

paragraphs[]

object (Paragraph)

Lista de parágrafos neste bloco (se este bloco for do tipo texto).

blockType

enum (BlockType)

Tipo de bloco detetado (texto, imagem, etc.) para este bloco.

confidence

number

Confiança dos resultados de OCR no bloco. Intervalo [0, 1].

Parágrafo

Unidade estrutural de texto que representa um número de palavras numa determinada ordem.

Representação JSON
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "words": [
    {
      object (Word)
    }
  ],
  "confidence": number
}
Campos
property

object (TextProperty)

Foram detetadas informações adicionais para o parágrafo.

boundingBox

object (BoundingPoly)

A caixa limitadora do parágrafo. Os vértices estão na ordem superior esquerdo, superior direito, inferior direito e inferior esquerdo. Quando é detetada uma rotação da caixa delimitadora, a rotação é representada em torno do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Por exemplo: * Quando o texto está na horizontal, pode ter o seguinte aspeto: 0----1 | | 3----2 * Quando é rodado 180 graus em torno do canto superior esquerdo, torna-se: 2----3 | | 1----0 e a ordem dos vértices continua a ser (0, 1, 2, 3).

words[]

object (Word)

Lista de todas as palavras neste parágrafo.

confidence

number

Confiança dos resultados de OCR para o parágrafo. Intervalo [0, 1].

Word

Uma representação de palavras.

Representação JSON
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "symbols": [
    {
      object (Symbol)
    }
  ],
  "confidence": number
}
Campos
property

object (TextProperty)

Foram detetadas informações adicionais para a palavra.

boundingBox

object (BoundingPoly)

A caixa limitadora da palavra. Os vértices estão na ordem superior esquerdo, superior direito, inferior direito e inferior esquerdo. Quando é detetada uma rotação da caixa delimitadora, a rotação é representada em torno do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Por exemplo: * Quando o texto está na horizontal, pode ter o seguinte aspeto: 0----1 | | 3----2 * Quando é rodado 180 graus em torno do canto superior esquerdo, torna-se: 2----3 | | 1----0 e a ordem dos vértices continua a ser (0, 1, 2, 3).

symbols[]

object (Symbol)

Lista de símbolos na palavra. A ordem dos símbolos segue a ordem de leitura natural.

confidence

number

Confiança dos resultados de OCR para a palavra. Intervalo [0, 1].

Símbolo

Uma representação de símbolo único.

Representação JSON
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "text": string,
  "confidence": number
}
Campos
property

object (TextProperty)

Foram detetadas informações adicionais para o símbolo.

boundingBox

object (BoundingPoly)

A caixa delimitadora do símbolo. Os vértices estão na ordem superior esquerdo, superior direito, inferior direito e inferior esquerdo. Quando é detetada uma rotação da caixa delimitadora, a rotação é representada em torno do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Por exemplo: * Quando o texto está na horizontal, pode ter o seguinte aspeto: 0----1 | | 3----2 * Quando é rodado 180 graus em torno do canto superior esquerdo, torna-se: 2----3 | | 1----0 e a ordem dos vértices continua a ser (0, 1, 2, 3).

text

string

A representação UTF-8 real do símbolo.

confidence

number

Confiança dos resultados de OCR para o símbolo. Intervalo [0, 1].

BlockType

Tipo de um bloco (texto, imagem, etc.) conforme identificado pelo OCR.

Enumerações
UNKNOWN Tipo de bloco desconhecido.
TEXT Bloco de texto normal.
TABLE Bloco de tabela.
PICTURE Bloqueio de imagem.
RULER Caixa de linhas horizontais/verticais.
BARCODE Bloco de código de barras.

ImageAnnotationContext

Se uma imagem foi produzida a partir de um ficheiro (por exemplo, um PDF), esta mensagem fornece informações sobre a origem dessa imagem.

Representação JSON
{
  "uri": string,
  "pageNumber": integer
}
Campos
uri

string

O URI do ficheiro usado para produzir a imagem.

pageNumber

integer

Se o ficheiro era um PDF ou um TIFF, este campo indica o número da página no ficheiro usado para produzir a imagem.