Package google.cloud.vision.v1

索引

ImageAnnotator

用于对客户端图片执行 Google Cloud Vision API 检测任务的服务,可执行人脸、标志、徽标、标签和文本等内容的检测。ImageAnnotator 服务返回从图片中检测到的实体。

BatchAnnotateFiles

rpc BatchAnnotateFiles(BatchAnnotateFilesRequest) returns (BatchAnnotateFilesResponse)

对一批文件执行图片检测和注释的服务。目前仅支持“application/pdf”“image/tiff”和“image/gif”。

此服务最多从每个提供的文件中提取最多 5 个(在 AnnotateFileRequest.pages 框架 (gif) 或网页(pdf 或 tiff)中分别提取 5 个图片,并对提取的每个图片执行检测和注释。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/cloud-vision
BatchAnnotateImages

rpc BatchAnnotateImages(BatchAnnotateImagesRequest) returns (BatchAnnotateImagesResponse)

对一批图片运行图片检测和注释。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/cloud-vision

AnnotateFileRequest

为单个文件(例如 PDF、TIFF 或 GIF 文件)添加注释的请求。

字段
input_config

InputConfig

必需。输入文件的相关信息。

features[]

Feature

必需。请求的功能。

image_context

ImageContext

文件中图片可能随附的其他上下文。

pages[]

int32

文件中要执行图片注释的页面。

页面编号从 1 开始,即假定文件的第一页就是第 1 页。每个请求最多支持 5 个页面。页面可以是负数。

页面 1 是指第一页。页面 2 是指第二页。页面 -1 是指最后一页。页面 -2 是指倒数第二页。

如果文件是 GIF,而不是 PDF 或 TIFF,则页面是指 GIF 帧。

如果此字段为空,则默认情况下,服务会对文件的前 5 页执行图片注释。

AnnotateFileResponse

对单个文件注释请求的响应。一个文件中可以包含一张或多张图片,每张图片都分别有各自的响应。

字段
input_config

InputConfig

为其生成此响应的文件的相关信息。

responses[]

AnnotateImageResponse

对文件中找到的图片进行单独响应。如果设置了 error 字段,则此字段为空。

total_pages

int32

此字段给出了文件中的总页数。

error

Status

如果设置,则表示请求失败时的错误消息。在这种情况下,不会设置 responses 字段。

AnnotateImageRequest

请求对用户提供的图片执行 Google Cloud Vision API 任务,并提供用户请求的特征和上下文信息。

字段
image

Image

要处理的图片。

features[]

Feature

请求的功能。

image_context

ImageContext

图片可能随附的相关信息。

AnnotateImageResponse

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

字段
text_annotations[]

EntityAnnotation

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

full_text_annotation

TextAnnotation

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

error

Status

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

context

ImageAnnotationContext

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

BatchAnnotateFilesRequest

使用 BatchAnnotateFiles API 注释文件的请求列表。

字段
requests[]

AnnotateFileRequest

必需。文件注释请求列表。目前,BatchAnnotateFilesRequest 中仅支持使用一个 AnnotateFileRequest。

parent

string

可选。定位项目和位置以进行呼叫。

格式:projects/{project-id}/locations/{location-id}

如果未指定父级,则系统将自动选择区域。

支持的 location-id:us:仅限美国,asia:东亚地区,例如日本、台湾,eu:欧盟。

示例:projects/project-A/locations/eu

BatchAnnotateFilesResponse

文件注释响应的列表。

字段
responses[]

AnnotateFileResponse

文件注解响应列表,每个响应与 BatchAnnotateFilesRequest 中的每个 AnnotateFileRequest 相对应。

BatchAnnotateImagesRequest

多个图片注释请求会分批次,通过单个服务调用进行处理。

字段
requests[]

AnnotateImageRequest

必需。此批次的各个图片注解请求。

parent

string

可选。定位项目和位置以进行呼叫。

格式:projects/{project-id}/locations/{location-id}

如果未指定父级,则系统将自动选择区域。

支持的 location-id:us:仅限美国,asia:东亚地区,例如日本、台湾,eu:欧盟。

示例:projects/project-A/locations/eu

BatchAnnotateImagesResponse

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

字段
responses[]

AnnotateImageResponse

对批处理中图片注解请求的各个响应。

屏蔽

页面上的逻辑元素。

字段
property

TextProperty

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

bounding_box

BoundingPoly

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

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

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

paragraphs[]

Paragraph

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

block_type

BlockType

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

confidence

float

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

BlockType

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

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

BoundingPoly

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

字段
vertices[]

Vertex

外接多边形的顶点。

normalized_vertices[]

NormalizedVertex

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

EntityAnnotation

所检测到的实体特征集。

字段
mid

string

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

locale

string

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

description

string

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

score

float

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

confidence
(deprecated)

float

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

topicality

float

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

bounding_poly

BoundingPoly

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

properties[]

Property

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

功能

要执行的 Google Cloud Vision API 检测的类型,以及针对该检测类型返回的结果数上限。可以在 features 列表中指定多个 Feature 对象。

字段
type

Type

功能类型。

model

string

用于该特征的模型。支持的值:“builtin/stable”(如果未设置,则为默认值)和“builtin/latest”。DOCUMENT_TEXT_DETECTIONTEXT_DETECTION 还支持“builtin/weekly”,用于每周更新的极不稳定版。

类型

要提取的 Google Cloud Vision API 特征的类型。

枚举
TYPE_UNSPECIFIED 未指定的特征类型。
TEXT_DETECTION 运行文本检测/光学字符识别 (OCR)。文本检测针对较大的图片中的文本区域进行了优化;如果图片是文档,请改用 DOCUMENT_TEXT_DETECTION
DOCUMENT_TEXT_DETECTION 运行密集文本文档 OCR。如果同时存在 DOCUMENT_TEXT_DETECTIONTEXT_DETECTION,则优先考虑。

Image

用于执行 Google Cloud Vision API 任务的客户端图片。

字段
content

bytes

图片内容,由字节流表示。注意:与所有 bytes 字段一样,协议缓冲区使用纯二进制表示法,而 JSON 表示法使用 Base64。

目前,此字段仅适用于 BatchAnnotateImages 请求,不适用于 AsyncBatchAnnotateImages 请求。

ImageAnnotationContext

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

字段
uri

string

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

page_number

int32

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

ImageContext

图片上下文和/或特征专用参数。

字段
language_hints[]

string

用于 TEXT_DETECTION 的语言列表。在大多数情况下,使用空值时效果最佳,因为这支持自动检测语言。对于基于拉丁字母的语言,无需设置 language_hints。在极少数情况下,如果图片中文本的语言已知,设置提示将有助于获得更好的效果(尽管提示错误会造成很大的阻碍)。如果已指定语言中有一种或多种不在支持的语言范围内,文本检测将返回错误。

text_detection_params

TextDetectionParams

用于文本检测和文档文本检测的参数。

InputConfig

所需的输入位置和元数据。

字段
content

bytes

文件内容,由字节流表示。注意:与所有 bytes 字段一样,协议缓冲区使用纯二进制表示法,而 JSON 表示法使用 Base64。

目前,此字段仅适用于 BatchAnnotateFiles 请求,不适用于 AsyncBatchAnnotateFiles 请求。

mime_type

string

文件的类型。目前仅支持“application/pdf”“image/tiff”和“image/gif”。不支持通配符。

NormalizedVertex

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

字段
x

float

X 坐标。

y

float

Y 坐标。

页面

通过 OCR 检测到的页面。

字段
property

TextProperty

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

width

int32

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

height

int32

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

blocks[]

Block

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

confidence

float

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

段落

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

字段
property

TextProperty

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

bounding_box

BoundingPoly

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

words[]

Word

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

confidence

float

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

属性

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

字段
name

string

属性的名称。

value

string

属性的值。

uint64_value

uint64

数值属性的值。

符号

单个符号表示。

字段
property

TextProperty

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

bounding_box

BoundingPoly

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

text

string

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

confidence

float

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

TextAnnotation

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

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

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

字段
pages[]

Page

OCR 检测到的页面列表。

text

string

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

DetectedBreak

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

字段
type

BreakType

检测到的换行符类型。

is_prefix

bool

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

BreakType

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

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

DetectedLanguage

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

字段
language_code

string

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

confidence

float

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

TextProperty

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

字段
detected_languages[]

DetectedLanguage

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

detected_break

DetectedBreak

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

TextDetectionParams

用于文本检测的参数。其用于控制 TEXT_DETECTION 和 DOCUMENT_TEXT_DETECTION 功能。

字段
enable_text_detection_confidence_score

bool

默认情况下,Cloud Vision API 仅包含 DOCUMENT_TEXT_DETECTION 结果的置信度分数。将标志设置为 true,以同时包含 TEXT_DETECTION 的置信度得分。

advanced_ocr_options[]

string

用于微调 OCR 行为的高级 OCR 选项列表。

Vertex

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

字段
x

int32

X 坐标。

y

int32

Y 坐标。

Word

字词表示。

字段
property

TextProperty

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

bounding_box

BoundingPoly

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

symbols[]

Symbol

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

confidence

float

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