AnnotateImageResponse

Resposta a uma solicitação 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 presente, a detecção de texto (OCR) foi concluída com sucesso.

fullTextAnnotation

object (TextAnnotation)

Se presente, a detecção de texto (OCR) ou de texto de documentos foi concluída com sucesso. Esta anotação fornece a hierarquia estrutural para o texto detectado pelo OCR.

error

object (Status)

Se definido, representa a mensagem de erro da operação. Observe que há uma garantia de que as anotações de imagens preenchidas são corretas, mesmo quando errorestá definido.

context

object (ImageAnnotationContext)

Se presente, as informações contextuais são necessárias para entender de onde vem essa imagem.

EntityAnnotation

Conjunto de recursos detectados da entidade.

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

string

Código da entidade opaca. Alguns IDs podem estar disponíveis na API Google Knowledge Graph Search.

locale

string

O código do idioma do local em que o description textual da entidade é expresso.

description

string

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

score

number

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

confidence
(deprecated)

number

Obsoleto. Use score, em vez disso. A precisão da detecção de entidade em uma imagem. Por exemplo, para uma imagem em que a entidade "Torre Eiffel" é detectada, esse campo representa a confiança de que há uma torre na imagem da consulta. Intervalo [0, 1].

topicality

number

A relevância do marcador de anotação de conteúdo da imagem (ICA, na sigla em inglês) em relação à imagem. Por exemplo, a relevância de "torre" provavelmente é maior em uma imagem que contém a "Torre Eiffel" detectada do que em uma imagem com um prédio alto distante detectado, mesmo que a confiança de que há 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 os recursos LABEL_DETECTION.

properties[]

object (Property)

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

BoundingPoly

Um polígono delimitador para a anotação de imagem detectada.

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. OBSERVAÇÃO: as coordenadas do vértice 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. OBSERVAÇÃO: as coordenadas do vértice normalizado são relativas à imagem original e variam de 0 a 1.

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

number

Coordenada X.

y

number

Coordenada Y.

Propriedade

Uma Property consiste em um par nome/valor fornecido pelo usuário.

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 é assim:

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

Cada componente estrutural, começando pela página, pode ter propriedades que descrevem idiomas detectados, quebras de linha etc. Para mais informações, consulte a definição de mensagem TextAnnotation.TextProperty a seguir.

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

object (Page)

Lista de páginas detectadas pelo OCR.

text

string

Texto UTF-8 detectado nas páginas.

Page

Página detectada do OCR.

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

object (TextProperty)

Informações adicionais detectadas na página.

width

integer

Largura da página. Nos PDFs, a unidade é a pontuação. Para imagens (incluindo TIFFs), a unidade é pixels

height

integer

Altura da página. Nos PDFs, a unidade é a pontuação. Para imagens (incluindo TIFFs), a unidade é pixels

blocks[]

object (Block)

Lista de blocos de texto, imagens, entre outros, nesta página.

confidence

number

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

TextProperty

Informações adicionais detectadas sobre o componente estrutural.

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

object (DetectedLanguage)

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

detectedBreak

object (DetectedBreak)

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

DetectedLanguage

Idioma detectado para um componente estrutural.

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

string

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

confidence

number

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

DetectedBreak

Início ou fim da detecção de um componente estrutural.

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

enum (BreakType)

Tipo de quebra detectado.

isPrefix

boolean

Verdadeiro se a quebra preceder o elemento.

BreakType

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

Enums
UNKNOWN Tipo de marcador de quebra desconhecido.
SPACE Espaço regular.
SURE_SPACE Espaço garantido (muito largo).
EOL_SURE_SPACE Quebra de linha.
HYPHEN Hífen de fim de linha que não está presente no texto. Não ocorre juntamente 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)

Informações adicionais detectadas para o bloco.

boundingBox

object (BoundingPoly)

A caixa delimitadora do bloco. Os vértices estão na ordem superior esquerda, superior direita, inferior direita e inferior esquerda. Quando uma rotação da caixa delimitadora é detectada, a rotação é representada ao redor do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Exemplo:

  • Quando o texto é horizontal, pode ser semelhante a:
    0----1
    |    |
    3----2
  • quando girada 180 graus em torno do canto superior esquerdo, ela se torna:
    2----3
    |    |
    1----0

e a ordem dos vértices ainda será (0, 1, 2, 3)

paragraphs[]

object (Paragraph)

Lista de parágrafos neste bloco, se ele for do tipo "texto".

blockType

enum (BlockType)

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

confidence

number

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

Paragraph

Unidade estrutural de texto que representa uma série de palavras em determinada ordem.

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

object (TextProperty)

Informações adicionais detectadas para o parágrafo.

boundingBox

object (BoundingPoly)

A caixa delimitadora do parágrafo. Os vértices estão na ordem superior esquerda, superior direita, inferior direita e inferior esquerda. Quando uma rotação da caixa delimitadora é detectada, a rotação é representada ao redor do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Por exemplo: * quando o texto for horizontal, a aparência será: 0----1 | | 3----2 * quando for girado em 180 graus em torno do canto superior esquerdo, torna-se: 2----3 | | 1----0 e a ordem dos vértices ainda será (0, 1, 2, 3).

words[]

object (Word)

Lista de todas as palavras neste parágrafo.

confidence

number

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

Word

Uma representação de palavra.

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

object (TextProperty)

Informações adicionais detectadas para a palavra.

boundingBox

object (BoundingPoly)

A caixa delimitadora da palavra. Os vértices estão na ordem superior esquerda, superior direita, inferior direita e inferior esquerda. Quando uma rotação da caixa delimitadora é detectada, a rotação é representada ao redor do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Por exemplo: * quando o texto for horizontal, a aparência será: 0----1 | | 3----2 * quando for girado em 180 graus em torno do canto superior esquerdo, torna-se: 2----3 | | 1----0 e a ordem dos vértices ainda 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 do OCR para a palavra. Intervalo [0, 1].

Símbolo

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

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

object (TextProperty)

Informações adicionais detectadas para o símbolo.

boundingBox

object (BoundingPoly)

A caixa delimitadora do símbolo. Os vértices estão na ordem superior esquerda, superior direita, inferior direita e inferior esquerda. Quando uma rotação da caixa delimitadora é detectada, a rotação é representada ao redor do canto superior esquerdo, conforme definido quando o texto é lido na orientação "natural". Por exemplo: * quando o texto for horizontal, a aparência será: 0----1 | | 3----2 * quando for girado em 180 graus em torno do canto superior esquerdo, torna-se: 2----3 | | 1----0 e a ordem dos vértices ainda será (0, 1, 2, 3).

text

string

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

confidence

number

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

BlockType

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

Enums
UNKNOWN Tipo de bloco desconhecido
TEXT Bloco de texto regular
TABLE Bloco de tabelas
PICTURE Bloco de imagens
RULER Caixa de linha horizontal/vertical
BARCODE Bloco de códigos de barras

ImageAnnotationContext

Se uma imagem foi produzida com base em um arquivo (por exemplo, um PDF), essa mensagem fornece informações sobre a origem dessa imagem.

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

string

O URI do arquivo usado para produzir a imagem.

pageNumber

integer

Se o arquivo for um PDF ou TIFF, esse campo fornecerá o número da página no arquivo usado para produzir a imagem.