AnnotateImageResponse

回應圖片註解要求。

JSON 表示法
{
  "faceAnnotations": [
    {
      object (FaceAnnotation)
    }
  ],
  "landmarkAnnotations": [
    {
      object (EntityAnnotation)
    }
  ],
  "logoAnnotations": [
    {
      object (EntityAnnotation)
    }
  ],
  "labelAnnotations": [
    {
      object (EntityAnnotation)
    }
  ],
  "localizedObjectAnnotations": [
    {
      object (LocalizedObjectAnnotation)
    }
  ],
  "textAnnotations": [
    {
      object (EntityAnnotation)
    }
  ],
  "fullTextAnnotation": {
    object (TextAnnotation)
  },
  "safeSearchAnnotation": {
    object (SafeSearchAnnotation)
  },
  "imagePropertiesAnnotation": {
    object (ImageProperties)
  },
  "cropHintsAnnotation": {
    object (CropHintsAnnotation)
  },
  "webDetection": {
    object (WebDetection)
  },
  "productSearchResults": {
    object (ProductSearchResults)
  },
  "error": {
    object (Status)
  },
  "context": {
    object (ImageAnnotationContext)
  }
}
欄位
faceAnnotations[]

object (FaceAnnotation)

如果有這個值,表示臉部偵測已順利完成。

landmarkAnnotations[]

object (EntityAnnotation)

如果有此屬性,表示地標偵測已順利完成。

logoAnnotations[]

object (EntityAnnotation)

如果有這個值,表示已成功完成標誌偵測。

labelAnnotations[]

object (EntityAnnotation)

如果有標籤,表示標籤偵測已順利完成。

localizedObjectAnnotations[]

object (LocalizedObjectAnnotation)

如果有,表示已成功完成本機物體偵測。並依可信度分數遞減排序。

textAnnotations[]

object (EntityAnnotation)

如果有此值,表示文字 (OCR) 偵測已順利完成。

fullTextAnnotation

object (TextAnnotation)

如果有這個值,表示文字 (OCR) 偵測或文件 (OCR) 文字偵測已成功完成。這個註解會為 OCR 偵測到的文字提供結構階層。

safeSearchAnnotation

object (SafeSearchAnnotation)

如果有,表示安全搜尋註解已順利完成。

imagePropertiesAnnotation

object (ImageProperties)

如果有此屬性,表示已成功擷取圖片屬性。

cropHintsAnnotation

object (CropHintsAnnotation)

如果有這個值,表示已成功完成裁剪提示。

webDetection

object (WebDetection)

如果有這個值,表示網頁偵測已順利完成。

productSearchResults

object (ProductSearchResults)

如果有這個值,代表產品搜尋已順利完成。

error

object (Status)

如果已設定,則代表該作業的錯誤訊息。請注意,即使設定了 error,系統仍可保證填入的圖像註解正確無誤。

context

object (ImageAnnotationContext)

如果有,則需要提供情境資訊,才能瞭解這張圖片的來源。

臉部註解

臉部註解物件包含臉部偵測結果。

JSON 表示法
{
  "boundingPoly": {
    object (BoundingPoly)
  },
  "fdBoundingPoly": {
    object (BoundingPoly)
  },
  "landmarks": [
    {
      object (Landmark)
    }
  ],
  "rollAngle": number,
  "panAngle": number,
  "tiltAngle": number,
  "detectionConfidence": number,
  "landmarkingConfidence": number,
  "joyLikelihood": enum (Likelihood),
  "sorrowLikelihood": enum (Likelihood),
  "angerLikelihood": enum (Likelihood),
  "surpriseLikelihood": enum (Likelihood),
  "underExposedLikelihood": enum (Likelihood),
  "blurredLikelihood": enum (Likelihood),
  "headwearLikelihood": enum (Likelihood)
}
欄位
boundingPoly

object (BoundingPoly)

臉孔周圍的定界多邊形。外框的座標是以原始圖片的比例計算。系統會根據人類的期望,計算出符合預期的臉部「邊框」。這項設定會根據地標結果計算。請注意,如果要註解的圖片中只顯示部分臉孔,BoundingPoly 可能不會產生一或多個 x 和/或 y 座標 (多邊形將沒有邊界)。

fdBoundingPoly

object (BoundingPoly)

fdBoundingPoly 邊界多邊形比 boundingPoly 更緊密,且只會包含臉部皮膚部分。通常用於從任何圖片分析中移除臉部,以便偵測圖片中可見的「皮膚量」。這並非以地標結果為依據,而是只使用初始臉孔偵測結果,因此

fd

(臉部偵測) 前置字串。

landmarks[]

object (Landmark)

偵測到的臉部特徵。

rollAngle

number

翻轉角度,表示錶面相對於圖片垂直方向,沿著垂直於錶面的軸線順/逆時針旋轉的角度。範圍 [-180,180]。

panAngle

number

偏航角,表示相對於垂直於圖片的垂直平面,臉朝向左/右的角度。範圍 [-180,180]。

tiltAngle

number

傾斜角度,表示臉部相對於圖片水平面向上/向下指向的角度。範圍 [-180,180]。

detectionConfidence

number

偵測信心。範圍 [0, 1]。

landmarkingConfidence

number

臉部特徵偵測信心等級。範圍 [0, 1]。

joyLikelihood

enum (Likelihood)

樂樂的可能性。

sorrowLikelihood

enum (Likelihood)

悲傷程度。

angerLikelihood

enum (Likelihood)

憤怒的可能性。

surpriseLikelihood

enum (Likelihood)

驚喜程度。

underExposedLikelihood

enum (Likelihood)

曝光不足的可能性。

blurredLikelihood

enum (Likelihood)

模糊機率。

headwearLikelihood

enum (Likelihood)

頭飾可能性。

地標

臉部特徵 (例如臉部特徵)。

JSON 表示法
{
  "type": enum (Type),
  "position": {
    object (Position)
  }
}
欄位
type

enum (Type)

臉部特徵類型。

position

object (Position)

臉部特徵點位置。

類型

臉部特徵 (特徵) 類型。左側和右側的定義是從圖片觀看者的角度定義,不考量相片的鏡像投影。因此,LEFT_EYE 通常是指人物的右眼。

列舉
UNKNOWN_LANDMARK 偵測到不明的臉部特徵。請勿填寫。
LEFT_EYE 左眼。
RIGHT_EYE 右眼。
LEFT_OF_LEFT_EYEBROW 左眉毛左側。
RIGHT_OF_LEFT_EYEBROW 左眉毛右側。
LEFT_OF_RIGHT_EYEBROW 右眉毛左側。
RIGHT_OF_RIGHT_EYEBROW 右眉毛右側。
MIDPOINT_BETWEEN_EYES 眼睛之間的中點。
NOSE_TIP 鼻尖。
UPPER_LIP 上嘴唇。
LOWER_LIP 下嘴唇。
MOUTH_LEFT 嘴巴左側。
MOUTH_RIGHT 嘴巴右側。
MOUTH_CENTER 嘴巴居中。
NOSE_BOTTOM_RIGHT 鼻子,右下方。
NOSE_BOTTOM_LEFT 鼻子,左下方。
NOSE_BOTTOM_CENTER 鼻子,正下方。
LEFT_EYE_TOP_BOUNDARY 左眼上邊界。
LEFT_EYE_RIGHT_CORNER 左眼右上角。
LEFT_EYE_BOTTOM_BOUNDARY 左眼下緣邊界。
LEFT_EYE_LEFT_CORNER 左眼左上角。
RIGHT_EYE_TOP_BOUNDARY 右眼,上邊界。
RIGHT_EYE_RIGHT_CORNER 右眼右上角。
RIGHT_EYE_BOTTOM_BOUNDARY 右眼,下方邊界。
RIGHT_EYE_LEFT_CORNER 右眼左上角。
LEFT_EYEBROW_UPPER_MIDPOINT 左眉毛上方中點。
RIGHT_EYEBROW_UPPER_MIDPOINT 右眉毛上方中間位置。
LEFT_EAR_TRAGION 左耳耳前突。
RIGHT_EAR_TRAGION 右耳耳硃。
LEFT_EYE_PUPIL 左眼瞳孔。
RIGHT_EYE_PUPIL 右眼瞳孔。
FOREHEAD_GLABELLA 額頭的眉心。
CHIN_GNATHION 下巴顳骨。
CHIN_LEFT_GONION 下巴左側的髁。
CHIN_RIGHT_GONION 下巴右側的髁。

位置

圖像中的 3D 位置,主要用於臉部偵測地標。有效的 Position 必須同時包含 x 和 y 座標。位置座標與原始圖片的比例相同。

JSON 表示法
{
  "x": number,
  "y": number,
  "z": number
}
欄位
x

number

X 座標。

y

number

Y 座標。

z

number

Z 座標 (或深度)。

可能性

以分桶方式表示可能性,目的是在模型升級時為客戶提供高度穩定的結果。

列舉
UNKNOWN 可能性不明。
VERY_UNLIKELY 這很不可能。
UNLIKELY 不太可能。
POSSIBLE 是的。
LIKELY 很有可能。
VERY_LIKELY 很有可能。

實體註解

偵測到的實體功能集。

JSON 表示法
{
  "mid": string,
  "locale": string,
  "description": string,
  "score": number,
  "confidence": number,
  "topicality": number,
  "boundingPoly": {
    object (BoundingPoly)
  },
  "locations": [
    {
      object (LocationInfo)
    }
  ],
  "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圖片中實體偵測的準確度。舉例來說,如果系統在圖片中偵測到「艾菲爾鐵塔」實體,這個欄位就會代表系統對查詢圖片中是否有鐵塔的信心程度。範圍 [0, 1]。

topicality

number

ICA (圖片內容註解) 標籤與圖片的相關性。舉例來說,如果圖片中偵測到「艾菲爾鐵塔」,那麼「塔」的相關性可能會高於偵測到遠方高樓的圖片,即使兩者偵測到塔的置信度相同。範圍 [0, 1]。

boundingPoly

object (BoundingPoly)

這個實體所屬的圖片區域。不適用於 LABEL_DETECTION 功能。

locations[]

object (LocationInfo)

所偵測實體的位置資訊。系統可以提供多個 LocationInfo 元素,因為一個位置可能表示圖片中場景的位置,另一個位置則可能表示圖片拍攝地點。地標通常會提供位置資訊。

properties[]

object (Property)

部分實體可能會提供選用的使用者提供 Property (名稱/值) 欄位,例如評分或可用於判定實體的字串。

地點資訊

偵測到的實體位置資訊。

JSON 表示法
{
  "latLng": {
    object (LatLng)
  }
}
欄位
latLng

object (LatLng)

經緯度座標。

屬性

Property 由使用者提供的名稱/值組合組成。

JSON 表示法
{
  "name": string,
  "value": string,
  "uint64Value": string
}
欄位
name

string

房源名稱。

value

string

屬性值。

uint64Value

string

數值屬性的值。

本地化物件註解

包含定界框的偵測物件集合。

JSON 表示法
{
  "mid": string,
  "languageCode": string,
  "name": string,
  "score": number,
  "boundingPoly": {
    object (BoundingPoly)
  }
}
欄位
mid

string

應與 EntityAnnotation mid 對齊的物件 ID。

languageCode

string

BCP-47 語言代碼,例如「en-US」或「sr-Latn」。詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier

name

string

物件名稱,以 languageCode 語言表示。

score

number

結果的分數。範圍 [0, 1]。

boundingPoly

object (BoundingPoly)

這個物件所屬的圖片區域。必須填入。

文字註解

TextAnnotation 包含 OCR 擷取的文字結構化表示法。OCR 擷取的文字結構階層如下:TextAnnotation -> 頁面 -> 區塊 -> 段落 -> 字 -> 符號。從頁面開始,每個結構元件可能都有各自的屬性。屬性會說明偵測到的語言、中斷點等。詳情請參閱下方的 TextAnnotation.TextProperty 訊息定義。

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

object (Page)

OCR 偵測到的頁面清單。

text

string

系統在網頁上偵測到 UTF-8 文字。

頁面

透過光學字元辨識偵測到的頁面。

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

object (TextProperty)

系統在網頁上偵測到其他資訊。

width

number

頁面寬度。對於 PDF 檔案,單位為點。圖片 (包括 TIFF) 的單位為像素。

height

number

頁面高度。對於 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」。詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier

confidence

number

偵測到的語言置信度。範圍 [0, 1]。

DetectedBreak

偵測到結構元件的開始或結束。

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

enum (BreakType)

偵測到的符號類型。

isPrefix

boolean

如果 break 置於元素之前,則為「是」。

分隔類型

以列舉方式表示所找到的斷點類型。換行、空格等。

列舉
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]。

封鎖類型

OCR 辨識的區塊類型 (文字、圖片等)。

列舉
UNKNOWN 不明的區塊類型。
TEXT 一般文字區塊。
TABLE 表格區塊。
PICTURE 圖片區塊。
RULER 水平/垂直線框。
BARCODE 條碼區塊。

安全搜尋註解

與圖片相關的功能集合,透過電腦視覺方法計算出安全搜尋類別 (例如成人、惡搞、醫療、暴力)。

JSON 表示法
{
  "adult": enum (Likelihood),
  "spoof": enum (Likelihood),
  "medical": enum (Likelihood),
  "violence": enum (Likelihood),
  "racy": enum (Likelihood)
}
欄位
adult

enum (Likelihood)

代表圖片成人內容的可能性。成人內容可能包含裸露、色情圖片或卡通,或性活動等元素。

spoof

enum (Likelihood)

造假可能性。圖片的標準版本是否可能經過修改,以便讓圖片看起來有趣或具有冒犯性。

medical

enum (Likelihood)

這張圖片可能是醫學影像的可能性。

violence

enum (Likelihood)

這張圖片含有暴力內容的可能性。

racy

enum (Likelihood)

要求圖片含有煽情露骨內容的可能性。煽情內容包括 (但不限於) 衣著暴露或透明的服裝、刻意遮住裸露部位的裸露畫面、猥褻或煽情姿勢,或特寫身體敏感部位的畫面。

圖片屬性

儲存圖片屬性,例如主色。

JSON 表示法
{
  "dominantColors": {
    object (DominantColorsAnnotation)
  }
}
欄位
dominantColors

object (DominantColorsAnnotation)

如果存在,代表已順利完成主色調。

主色註解

主色組合和對應的分數。

JSON 表示法
{
  "colors": [
    {
      object (ColorInfo)
    }
  ]
}
欄位
colors[]

object (ColorInfo)

RGB 顏色值及其分數和像素分數。

色彩資訊

色彩資訊包含 RGB 管道、分數,以及顏色在圖像中所占的圖像比例。

JSON 表示法
{
  "color": {
    object (Color)
  },
  "score": number,
  "pixelFraction": number
}
欄位
color

object (Color)

色彩的 RGB 元件。

score

number

此顏色的圖片專屬分數。值介於 [0, 1] 之間。

pixelFraction

number

顏色在圖片中所占的像素比例。值介於 [0, 1] 之間。

顏色

代表 RGBA 色彩空間中的顏色。這項表示法旨在簡化不同語言之間的顏色表示法轉換,並且可輕鬆轉換為 CSS 中的 "rgba()" 字串。舉例來說,這個表示法的欄位可輕鬆提供給 Java 中的 "java.awt.Color" 建構函式,也可以輕鬆提供給 iOS 中的 UIColor 的 "+colorWithRed:green:blue:alpha" 方法。此外,只要稍微調整一下,就能輕鬆將其格式化為 JavaScript 中的 CSS "rgba()" 字串。

注意:這個原型檔不會提供應用於解讀 RGB 值的絕對色域資訊 (例如 sRGB、Adobe RGB、DCI-P3、BT.2020 等)。根據預設,應用程式應假設 sRGB 色域。

範例 (Java):

 import com.google.type.Color;

 // ...
 public static java.awt.Color fromProto(Color protocolor) {
   float alpha = protocolor.hasAlpha()
       ? protocolor.getAlpha().getValue()
       : 1.0;

   return new java.awt.Color(
       protocolor.getRed(),
       protocolor.getGreen(),
       protocolor.getBlue(),
       alpha);
 }

 public static Color toProto(java.awt.Color color) {
   float red = (float) color.getRed();
   float green = (float) color.getGreen();
   float blue = (float) color.getBlue();
   float denominator = 255.0;
   Color.Builder resultBuilder =
       Color
           .newBuilder()
           .setRed(red / denominator)
           .setGreen(green / denominator)
           .setBlue(blue / denominator);
   int alpha = color.getAlpha();
   if (alpha != 255) {
     result.setAlpha(
         FloatValue
             .newBuilder()
             .setValue(((float) alpha) / denominator)
             .build());
   }
   return resultBuilder.build();
 }
 // ...

範例 (iOS / Obj-C):

 // ...
 static UIColor* fromProto(Color* protocolor) {
    float red = [protocolor red];
    float green = [protocolor green];
    float blue = [protocolor blue];
    FloatValue* alpha_wrapper = [protocolor alpha];
    float alpha = 1.0;
    if (alpha_wrapper != nil) {
      alpha = [alpha_wrapper value];
    }
    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
 }

 static Color* toProto(UIColor* color) {
     CGFloat red, green, blue, alpha;
     if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
       return nil;
     }
     Color* result = [[Color alloc] init];
     [result setRed:red];
     [result setGreen:green];
     [result setBlue:blue];
     if (alpha <= 0.9999) {
       [result setAlpha:floatWrapperWithValue(alpha)];
     }
     [result autorelease];
     return result;
}
// ...

範例 (JavaScript):

// ...

var protoToCssColor = function(rgb_color) {
   var redFrac = rgb_color.red || 0.0;
   var greenFrac = rgb_color.green || 0.0;
   var blueFrac = rgb_color.blue || 0.0;
   var red = Math.floor(redFrac * 255);
   var green = Math.floor(greenFrac * 255);
   var blue = Math.floor(blueFrac * 255);

   if (!('alpha' in rgb_color)) {
      return rgbToCssColor_(red, green, blue);
   }

   var alphaFrac = rgb_color.alpha.value || 0.0;
   var rgbParams = [red, green, blue].join(',');
   return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};

var rgbToCssColor_ = function(red, green, blue) {
  var rgbNumber = new Number((red << 16) | (green << 8) | blue);
  var hexString = rgbNumber.toString(16);
  var missingZeros = 6 - hexString.length;
  var resultBuilder = ['#'];
  for (var i = 0; i < missingZeros; i++) {
     resultBuilder.push('0');
  }
  resultBuilder.push(hexString);
  return resultBuilder.join('');
};

// ...
JSON 表示法
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
欄位
red

number

顏色中的紅色量,值介於 [0, 1] 之間。

green

number

顏色中的綠色量,值介於 [0, 1] 之間。

blue

number

顏色中的藍色量,值介於 [0, 1] 之間。

alpha

number

應套用至像素的此顏色比例。也就是說,最終像素顏色是由以下等式定義:

像素顏色 = alpha * (此顏色) + (1.0 - alpha) * (背景顏色)

也就是說,值為 1.0 對應於純色,而值為 0.0 則對應於完全透明的顏色。這會使用包裝函式訊息,而非簡單的浮點向量,以便區分預設值和未設定的值。如果省略,這個色彩物件會以純色方式顯示 (就好像明確指定 Alpha 值為 1.0 一樣)。

裁剪提示註解

一組裁剪提示,用於在提供圖片時產生新的裁剪圖片。

JSON 表示法
{
  "cropHints": [
    {
      object (CropHint)
    }
  ]
}
欄位
cropHints[]

object (CropHint)

裁剪提示結果。

裁剪提示

單一裁剪提示,用於在提供圖片時產生新的裁剪區域。

JSON 表示法
{
  "boundingPoly": {
    object (BoundingPoly)
  },
  "confidence": number,
  "importanceFraction": number
}
欄位
boundingPoly

object (BoundingPoly)

裁剪區域的定界多邊形。邊界框的座標是以原始圖片的比例計算。

confidence

number

此為顯著區域的信賴度。範圍 [0, 1]。

importanceFraction

number

這個顯目區域相對於原始圖片的重要性。

網路偵測

網路上與圖片相關的資訊。

JSON 表示法
{
  "webEntities": [
    {
      object (WebEntity)
    }
  ],
  "fullMatchingImages": [
    {
      object (WebImage)
    }
  ],
  "partialMatchingImages": [
    {
      object (WebImage)
    }
  ],
  "pagesWithMatchingImages": [
    {
      object (WebPage)
    }
  ],
  "visuallySimilarImages": [
    {
      object (WebImage)
    }
  ],
  "bestGuessLabels": [
    {
      object (WebLabel)
    }
  ]
}
欄位
webEntities[]

object (WebEntity)

從網際網路上的相似圖片中推斷實體。

fullMatchingImages[]

object (WebImage)

與網際網路上的圖片完全相符。可包含經過調整大小的查詢圖片副本。

partialMatchingImages[]

object (WebImage)

部分相符的網路圖片。這些圖片非常相似,因此具有一些共同的關鍵特徵。舉例來說,原始圖片可能會部分符合裁切圖片。

pagesWithMatchingImages[]

object (WebPage)

含有相符圖片的網頁 (來自網路)。

visuallySimilarImages[]

object (WebImage)

外觀相似的圖片結果。

bestGuessLabels[]

object (WebLabel)

服務對要求圖片主題的最佳推測結果。根據公開網路上的相似圖片推測而得。

WebEntity

從網際網路上的相似圖片推斷出的實體。

JSON 表示法
{
  "entityId": string,
  "score": number,
  "description": string
}
欄位
entityId

string

不透明實體 ID。

score

number

實體的整體相關性分數。未經過正規化,且無法在不同圖片查詢中進行比較。

description

string

實體的標準描述 (英文)。

WebImage

線上圖片的中繼資料。

JSON 表示法
{
  "url": string,
  "score": number
}
欄位
url

string

結果圖片網址。

score

number

(已淘汰) 圖片的整體相關性分數。

WebPage

網頁的中繼資料。

JSON 表示法
{
  "url": string,
  "score": number,
  "pageTitle": string,
  "fullMatchingImages": [
    {
      object (WebImage)
    }
  ],
  "partialMatchingImages": [
    {
      object (WebImage)
    }
  ]
}
欄位
url

string

搜尋結果網頁的網址。

score

number

(已淘汰) 網頁的整體相關性分數。

pageTitle

string

網頁的標題,可包含 HTML 標記。

fullMatchingImages[]

object (WebImage)

網頁上完全相符的圖片。可包含經過調整大小的查詢圖片副本。

partialMatchingImages[]

object (WebImage)

網頁上部分相符的圖片。這些圖片非常相似,因此具有一些共同的關鍵特徵。舉例來說,原始圖片可能會部分符合裁切圖片。

WebLabel

標籤,可為網頁偵測提供額外中繼資料。

JSON 表示法
{
  "label": string,
  "languageCode": string
}
欄位
label

string

額外中繼資料的標籤。

languageCode

string

label 的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier

產品搜尋結果

產品搜尋要求的結果。

JSON 表示法
{
  "indexTime": string,
  "results": [
    {
      object (Result)
    }
  ],
  "productGroupedResults": [
    {
      object (GroupedResult)
    }
  ]
}
欄位
indexTime

string (Timestamp format)

提供這些結果的索引時間戳記。在這個時間點之後加入產品組合或從產品組合中移除的產品,不會反映在目前的結果中。

RFC3339 世界標準時間「Zulu」格式的時間戳記,精確度達奈秒單位。範例:"2014-10-02T15:01:23.045123456Z"

results[]

object (Result)

結果清單,每項產品比對結果各一。

productGroupedResults[]

object (GroupedResult)

根據查詢圖片中偵測到的產品分組的結果清單。每個項目都對應至查詢圖片中的一個邊界多邊形,並包含該區域的特定相符產品。所有個別產品結果的聯集可能會出現重複的產品比對結果。

結果

產品資訊。

JSON 表示法
{
  "product": {
    object (Product)
  },
  "score": number,
  "image": string
}
欄位
product

object (Product)

產品。

score

number

比對結果的信心程度,範圍從 0 (完全沒有信心) 到 1 (完全有信心)。

image

string

與查詢最相符的產品圖片資源名稱。

GroupedResult

與查詢圖片中單一產品相似的產品資訊。

JSON 表示法
{
  "boundingPoly": {
    object (BoundingPoly)
  },
  "results": [
    {
      object (Result)
    }
  ],
  "objectAnnotations": [
    {
      object (ObjectAnnotation)
    }
  ]
}
欄位
boundingPoly

object (BoundingPoly)

在查詢圖片中偵測到的產品周圍邊界多邊形。

results[]

object (Result)

結果清單,每項產品比對結果各一。

objectAnnotations[]

object (ObjectAnnotation)

定界框中物件的一般預測結果清單。

ObjectAnnotation

預測定界框內物件的類型。

JSON 表示法
{
  "mid": string,
  "languageCode": string,
  "name": string,
  "score": number
}
欄位
mid

string

應與 EntityAnnotation mid 對齊的物件 ID。

languageCode

string

BCP-47 語言代碼,例如「en-US」或「sr-Latn」。詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier

name

string

物件名稱,以 languageCode 語言表示。

score

number

結果的分數。範圍 [0, 1]。

圖片註解內容

如果圖片是從檔案 (例如 PDF) 產生,這則訊息會提供該圖片來源的相關資訊。

JSON 表示法
{
  "uri": string,
  "pageNumber": number
}
欄位
uri

string

用於產生圖片的檔案 URI。

pageNumber

number

如果檔案是 PDF 或 TIFF,這個欄位會提供用來產生圖片的檔案內頁碼。