AnnotateImageResponse

对一个图片注释请求的响应。

JSON 表示法
{
  "textAnnotations": [
    {
      object (EntityAnnotation)
    }
  ],
  "fullTextAnnotation": {
    object (TextAnnotation)
  },
  "error": {
    object (Status)
  },
  "context": {
    object (ImageAnnotationContext)
  }
}
字段
textAnnotations[]

object (EntityAnnotation)

如果存在,则文本 (OCR) 检测已成功完成。

fullTextAnnotation

object (TextAnnotation)

如果存在,则文本 (OCR) 检测或文档 (OCR) 文本检测已成功完成。此注解提供 OCR 检测到的文本的结构性层次结构。

error

object (Status)

如果设置,则表示操作的错误消息。请注意,即便设置了 error,填充的图片注释也保证是正确的。

context

object (ImageAnnotationContext)

只要存在上下文信息,即可了解此图片的来源。

EntityAnnotation

所检测到的实体特征集。

JSON 表示法
{
  "mid": string,
  "locale": string,
  "description": string,
  "score": number,
  "confidence": number,
  "topicality": number,
  "boundingPoly": {
    object (BoundingPoly)
  },
  "properties": [
    {
      object (Property)
    }
  ]
}
字段
mid

string

不透明实体 ID。一些 ID 可以在 Google Knowledge Graph Search API 中找到。

locale

string

表示实体文本 description 的语言区域的语言代码。

description

string

实体文本说明,以 locale 语言表示。

score

number

结果的总分。介于 [0, 1] 范围内。

confidence
(deprecated)

number

已弃用。请改用 score图片中实体检测的准确性。例如,对于检测到“Eiffel Tower”实体的图片,此字段表示查询图片中有一个塔楼的置信度。介于 [0, 1] 范围内。

topicality

number

ICA(图片内容注释)标签与图片的相关性。例如,即使每个图片中都存在塔的置信度相同,“tower”与包含检测到的“Eiffel Tower”的图片的相关性也可能比包含检测到的遥远高层建筑图片的相关性更高。介于 [0, 1] 范围内。

boundingPoly

object (BoundingPoly)

此实体所属的图片区域。不针对 LABEL_DETECTION 功能生成。

properties[]

object (Property)

某些实体可能具有用户提供的可选 Property(名称/值)字段,例如符合实体要求的得分或字符串。

BoundingPoly

检测到的图片注释的边界多边形。

JSON 表示法
{
  "vertices": [
    {
      object (Vertex)
    }
  ],
  "normalizedVertices": [
    {
      object (NormalizedVertex)
    }
  ]
}
字段
vertices[]

object (Vertex)

外接多边形的顶点。

normalizedVertices[]

object (NormalizedVertex)

外接多边形的规范化顶点。

Vertex

顶点表示图片中的 2D 点。注意:顶点坐标与原始图片的比例相同。

JSON 表示法
{
  "x": integer,
  "y": integer
}
字段
x

integer

X 坐标。

y

integer

Y 坐标。

NormalizedVertex

顶点表示图片中的 2D 点。注意:标准化顶点坐标相对于原始图片,范围介于 0 和 1 之间。

JSON 表示法
{
  "x": number,
  "y": number
}
字段
x

number

X 坐标。

y

number

Y 坐标。

属性

一个 Property 包含由用户提供的一个名称/值对。

JSON 表示法
{
  "name": string,
  "value": string,
  "uint64Value": string
}
字段
name

string

属性的名称。

value

string

属性的值。

uint64Value

string

数值属性的值。

TextAnnotation

TextAnnotation 包含 OCR 提取的文本的结构化表示。OCR 提取的文本结构的层次结构如下:

TextAnnotation-> 页面 -> 块 -> 段落 -> 字词 -> 符号

从“页面”开始,各结构组件均可拥有属性,用于描述检测到的语言、换行等。如需了解详情,请参阅下文中的 TextAnnotation.TextProperty 消息定义。

JSON 表示法
{
  "pages": [
    {
      object (Page)
    }
  ],
  "text": string
}
字段
pages[]

object (Page)

OCR 检测到的页面列表。

text

string

页面上检测到 UTF-8 文本。

页面

通过 OCR 检测到的页面。

JSON 表示法
{
  "property": {
    object (TextProperty)
  },
  "width": integer,
  "height": integer,
  "blocks": [
    {
      object (Block)
    }
  ],
  "confidence": number
}
字段
property

object (TextProperty)

在页面上检测到的其他信息。

width

integer

页面宽度。对于 PDF,其单位是点。对于图片(包括 TIFF),其单位是像素。

height

integer

页面高度。对于 PDF,其单位是点。对于图片(包括 TIFF),其单位是像素。

blocks[]

object (Block)

此页面上的文本块、图片等列表。

confidence

number

页面上 OCR 结果的置信度。介于 [0, 1] 范围内。

TextProperty

在此结构化组件上检测到的其他信息。

JSON 表示法
{
  "detectedLanguages": [
    {
      object (DetectedLanguage)
    }
  ],
  "detectedBreak": {
    object (DetectedBreak)
  }
}
字段
detectedLanguages[]

object (DetectedLanguage)

检测到的语言及对应置信度的列表。

detectedBreak

object (DetectedBreak)

检测到的一个文本句段的开头或结尾。

DetectedLanguage

检测到的结构化组件的语言。

JSON 表示法
{
  "languageCode": string,
  "confidence": number
}
字段
languageCode

string

BCP-47 语言代码,例如“en-US”或“sr-Latn”。如需了解详情,请参阅 https://www.unicode.org/reports/tr35/#Unicode_locale_identifier

confidence

number

所检测到的语言的置信度。介于 [0, 1] 范围内。

DetectedBreak

检测到的结构化组件的开头或结尾。

JSON 表示法
{
  "type": enum (BreakType),
  "isPrefix": boolean
}
字段
type

enum (BreakType)

检测到的换行符类型。

isPrefix

boolean

如果中断附加在元素前面,则为 true。

BreakType

指示所发现的中断符类型的枚举。包括换行符、空格等。

枚举
UNKNOWN 未知的换行符标签类型。
SPACE 普通空格。
SURE_SPACE 确定空间(非常宽)。
EOL_SURE_SPACE 换行符。
HYPHEN 文本中不存在的结束连字符;无法与 SPACELEADER_SPACELINE_BREAK 共存。
LINE_BREAK 用于终止段落的中断符。

阻止

页面上的逻辑元素。

JSON 表示法
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "paragraphs": [
    {
      object (Paragraph)
    }
  ],
  "blockType": enum (BlockType),
  "confidence": number
}
字段
property

object (TextProperty)

针对块检测到的其他信息。

boundingBox

object (BoundingPoly)

块的边界框。顶点的顺序是左上角、右上角、右下角和左下角。检测到边界框发生旋转时,旋转的表示方式就是沿着左上角旋转,就像以“自然”的方向阅读文字时那样。例如:

  • 文字在水平方向时可能如下所示:
    0----1
    |    |
    3----2
  • 围绕左上角旋转 180 度时,就会变为:
    2----3
    |    |
    1----0

且顶点顺序仍为 (0, 1, 2, 3)。

paragraphs[]

object (Paragraph)

此区块中的段落列表(如果此块为文本类型)。

blockType

enum (BlockType)

此块中检测到的块类型(文字、图片等)。

confidence

number

此块上 OCR 结果的置信度。介于 [0, 1] 范围内。

段落

按一定顺序展示多个字词的结构化文本单元。

JSON 表示法
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "words": [
    {
      object (Word)
    }
  ],
  "confidence": number
}
字段
property

object (TextProperty)

为段落检测到的其他信息。

boundingBox

object (BoundingPoly)

段落的边界框。顶点的顺序是左上角、右上角、右下角和左下角。检测到边界框发生旋转时,旋转的表示方式就是沿着左上角旋转,就像以“自然”的方向阅读文字时那样。例如:* 文字在水平方向时可能如下所示: 0----1 | | 3----2 * 围绕左上角旋转 180 度时,就会变为: 2----3 | | 1----0 且顶点顺序仍为 (0, 1, 2, 3)。

words[]

object (Word)

相应段落中所有字词的列表。

confidence

number

段落的 OCR 结果置信度。介于 [0, 1] 范围内。

Word

字词表示法。

JSON 表示法
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "symbols": [
    {
      object (Symbol)
    }
  ],
  "confidence": number
}
字段
property

object (TextProperty)

为字词检测到的其他信息。

boundingBox

object (BoundingPoly)

字词的边界框。顶点的顺序是左上角、右上角、右下角和左下角。检测到边界框发生旋转时,旋转的表示方式就是沿着左上角旋转,就像以“自然”的方向阅读文字时那样。例如:* 文字在水平方向时可能如下所示: 0----1 | | 3----2 * 围绕左上角旋转 180 度时,就会变为: 2----3 | | 1----0 且顶点顺序仍为 (0, 1, 2, 3)。

symbols[]

object (Symbol)

列出字词中的符号。符号的顺序与自然阅读顺序相同。

confidence

number

字词的 OCR 结果置信度。介于 [0, 1] 范围内。

符号

单个符号表示。

JSON 表示法
{
  "property": {
    object (TextProperty)
  },
  "boundingBox": {
    object (BoundingPoly)
  },
  "text": string,
  "confidence": number
}
字段
property

object (TextProperty)

为符号检测到的其他信息。

boundingBox

object (BoundingPoly)

符号的边界框。顶点的顺序是左上角、右上角、右下角和左下角。检测到边界框发生旋转时,旋转的表示方式就是沿着左上角旋转,就像以“自然”的方向阅读文字时那样。例如:* 文字在水平方向时可能如下所示: 0----1 | | 3----2 * 围绕左上角旋转 180 度时,就会变为: 2----3 | | 1----0 且顶点顺序仍为 (0, 1, 2, 3)。

text

string

符号的实际 UTF-8 表示形式。

confidence

number

符号的 OCR 结果置信度。介于 [0, 1] 范围内。

BlockType

OCR 所标识的块类型(文字、图片等)。

枚举
UNKNOWN 未知的块类型。
TEXT 普通文本块。
TABLE 表格块。
PICTURE 图片块。
RULER 水平/垂直线框。
BARCODE 条形码块。

ImageAnnotationContext

如果图片是通过文件(例如 PDF)生成的,则此消息将提供有关该图片来源的信息。

JSON 表示法
{
  "uri": string,
  "pageNumber": integer
}
字段
uri

string

用于生成图片的文件的 URI。

pageNumber

integer

如果文件是 PDF 或 TIFF,则此字段给出了用于生成图片的文件中的页码。