- ייצוג ב-JSON
- FaceAnnotation
- מאפיין של ARIA
- סוג
- Position
- סבירות
- EntityAnnotation
- LocationInfo
- נכס
- LocalizedObjectAnnotation
- TextAnnotation
- Page
- TextProperty
- DetectedLanguage
- DetectedBreak
- BreakType
- חסימה
- Paragraph
- Word
- סמל
- BlockType
- SafeSearchAnnotation
- ImageProperties
- DominantColorsAnnotation
- ColorInfo
- צבע
- CropHintsAnnotation
- CropHint
- WebDetection
- WebEntity
- WebImage
- WebPage
- WebLabel
- ProductSearchResults
- תוצאה
- GroupedResult
- ObjectAnnotation
- ImageAnnotationContext
תשובה לבקשה להערת תמונה.
| ייצוג ב-JSON | |
|---|---|
{ "faceAnnotations": [ { object ( |
|
| שדות | |
|---|---|
faceAnnotations[] |
אם יש פנים בתמונה, זיהוי הפנים הושלם בהצלחה. |
landmarkAnnotations[] |
אם יש נקודת ציון, זיהוי נקודת הציון הושלם בהצלחה. |
logoAnnotations[] |
אם יש לוגו, זיהוי הלוגו הושלם בהצלחה. |
labelAnnotations[] |
אם יש תווית, זיהוי התווית הושלם בהצלחה. |
localizedObjectAnnotations[] |
אם יש, זיהוי האובייקטים המותאם לשפה המקומית הושלם בהצלחה. התוצאות ימוינו בסדר יורד לפי ציון הסמך. |
textAnnotations[] |
אם יש טקסט, זיהוי הטקסט (OCR) הושלם בהצלחה. |
fullTextAnnotation |
אם יש טקסט, זיהוי הטקסט (OCR) או זיהוי הטקסט במסמך (OCR) הסתיים בהצלחה. ההערה הזו מספקת את ההיררכיה המבנית של הטקסט שזוהה על ידי ה-OCR. |
safeSearchAnnotation |
אם יש הערה לגבי חיפוש בטוח, היא הושלמה בהצלחה. |
imagePropertiesAnnotation |
אם קיימים מאפייני תמונה, הם חולצו בהצלחה. |
cropHintsAnnotation |
אם יש רמזים לחיתוך, הם הושלמו בהצלחה. |
webDetection |
אם יש תוצאות, המשמעות היא שהזיהוי באינטרנט הושלם בהצלחה. |
productSearchResults |
אם יש תוצאות, החיפוש הושלם בהצלחה. |
error |
אם מוגדר, מייצג את הודעת השגיאה של הפעולה. שימו לב שההערות לתמונות שמולאו הן נכונות בוודאות, גם אם הערך של |
context |
אם יש מידע לפי הקשר, הוא נחוץ כדי להבין מאיפה התמונה הזו מגיעה. |
FaceAnnotation
אובייקט של הערת פנים מכיל את התוצאות של זיהוי הפנים.
| ייצוג ב-JSON | |
|---|---|
{ "boundingPoly": { object ( |
|
| שדות | |
|---|---|
boundingPoly |
פוליגון התוחם סביב הפנים. הקואורדינטות של התיבה התוחמת הן בסקאלה של התמונה המקורית. תיבת התוחמת מחושבת כדי "למסגר" את הפנים בהתאם לציפיות של בני אדם. הוא מבוסס על תוצאות של ציוני דרך. שימו לב שאם רק חלק מהפנים מופיע בתמונה שצריך להוסיף לה הערה, יכול להיות שלא ייווצר ערך לאחת או יותר מהקואורדינטות x או y ב- |
fdBoundingPoly |
המצולע התוחם
(זיהוי פנים). |
landmarks[] |
זוהו נקודות ציון של פנים. |
rollAngle |
זווית הגלגול, שמציינת את מידת הסיבוב של הפנים בכיוון השעון או נגד כיוון השעון ביחס לאנך של התמונה סביב הציר שמאונך לפנים. הטווח הוא [-180,180]. |
panAngle |
זווית הסבסוב, שמציינת את הזווית שבה הפנים מצביעות שמאלה או ימינה ביחס למישור האנכי שמאונך לתמונה. הטווח הוא [-180,180]. |
tiltAngle |
זווית עלרוד, שמציינת את הזווית כלפי מעלה או כלפי מטה שאליה פונות הפנים ביחס למישור האופקי של התמונה. הטווח הוא [-180,180]. |
detectionConfidence |
רמת הביטחון בזיהוי. טווח [0, 1]. |
landmarkingConfidence |
רמת הביטחון של זיהוי נקודות ציון בפנים. טווח [0, 1]. |
joyLikelihood |
סבירות להבעת שמחה. |
sorrowLikelihood |
סבירות להבעת צער. |
angerLikelihood |
סבירות לכעס. |
surpriseLikelihood |
הסיכוי להפתעה. |
underExposedLikelihood |
הסבירות לחשיפה נמוכה מדי. |
blurredLikelihood |
סבירות מטושטשת. |
headwearLikelihood |
הסבירות לשימוש בכיסוי ראש. |
ציון דרך
נקודת ציון ספציפית בפנים (לדוגמה, תווי פנים).
| ייצוג ב-JSON | |
|---|---|
{ "type": enum ( |
|
| שדות | |
|---|---|
type |
סוג נקודת ציון בפנים. |
position |
מיקום של נקודת ציון בפנים. |
סוג
סוג נקודת ציון (תכונה) בפנים. הצדדים הימני והשמאלי מוגדרים מנקודת המבט של הצופה בתמונה, בלי להתחשב בהיטלי מראה שמאפיינים תמונות. לכן, LEFT_EYE היא בדרך כלל העין הימנית של האדם.
| טיפוסים בני מנייה (enum) | |
|---|---|
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 |
סנטר (Gnathion). |
CHIN_LEFT_GONION |
הסנטר משמאל לזווית הלסת. |
CHIN_RIGHT_GONION |
סנטר ימני גוניון. |
מקום
מיקום תלת-ממדי בתמונה, שמשמש בעיקר לנקודות ציון של זיהוי פנים. מיקום תקין חייב לכלול גם קואורדינטת x וגם קואורדינטת y. קואורדינטות המיקום הן באותו קנה מידה כמו התמונה המקורית.
| ייצוג ב-JSON | |
|---|---|
{ "x": number, "y": number, "z": number } |
|
| שדות | |
|---|---|
x |
קואורדינטה X. |
y |
קואורדינטת Y. |
z |
קואורדינטה Z (או עומק). |
סבירות
ייצוג של הסבירות באמצעות קטגוריות, שמטרתו לספק ללקוחות תוצאות יציבות מאוד גם אחרי שדרוגים של המודל.
| טיפוסים בני מנייה (enum) | |
|---|---|
UNKNOWN |
סבירות לא ידועה. |
VERY_UNLIKELY |
הסיכוי לכך נמוך מאוד. |
UNLIKELY |
סביר להניח שלא. |
POSSIBLE |
זה אפשרי. |
LIKELY |
סביר להניח. |
VERY_LIKELY |
סביר מאוד. |
EntityAnnotation
קבוצה של תכונות ישות שאותרו.
| ייצוג ב-JSON | |
|---|---|
{ "mid": string, "locale": string, "description": string, "score": number, "confidence": number, "topicality": number, "boundingPoly": { object ( |
|
| שדות | |
|---|---|
mid |
מזהה ישות אטום. יכול להיות שחלק מהמזהים זמינים ב-Google Knowledge Graph Search API. |
locale |
קוד השפה של הלוקאל שבו מבוטא הטקסט של הישות |
description |
תיאור טקסטואלי של הישות, בשפה |
score |
הציון הכולל של התוצאה. טווח [0, 1]. |
confidence |
הוּצאה משימוש במקום זאת, אתם צריכים להשתמש ב- |
topicality |
רמת הרלוונטיות של התווית ICA (הערה על תוכן התמונה) לתמונה. לדוגמה, סביר להניח שהרלוונטיות של המילה 'מגדל' גבוהה יותר לתמונה שבה זוהה 'מגדל אייפל' מאשר לתמונה שבה זוהה בניין גבוה רחוק, גם אם רמת הוודאות לגבי קיומו של מגדל בכל אחת מהתמונות זהה. טווח [0, 1]. |
boundingPoly |
אזור התמונה שהישות הזו שייכת לו. לא נוצר עבור תכונות של |
locations[] |
נתוני המיקום של הישות שזוהתה. יכולים להיות כמה אלמנטים מסוג |
properties[] |
לחלק מהישויות עשויים להיות שדות אופציונליים שסופקו על ידי המשתמש |
LocationInfo
פרטי המיקום של הישות שאותרה.
| ייצוג ב-JSON | |
|---|---|
{
"latLng": {
object ( |
|
| שדות | |
|---|---|
latLng |
קואורדינטות של קו הרוחב וקו האורך של המיקום. |
מאפיין (property)
Property מורכב מצמד של שם/ערך שסופק על ידי המשתמש.
| ייצוג ב-JSON | |
|---|---|
{ "name": string, "value": string, "uint64Value": string } |
|
| שדות | |
|---|---|
name |
שם הנכס. |
value |
הערך של המאפיין. |
uint64Value |
הערך של מאפיינים מספריים. |
LocalizedObjectAnnotation
קבוצה של אובייקטים שזוהו עם תיבות תוחמות.
| ייצוג ב-JSON | |
|---|---|
{
"mid": string,
"languageCode": string,
"name": string,
"score": number,
"boundingPoly": {
object ( |
|
| שדות | |
|---|---|
mid |
מזהה האובייקט שצריך להיות זהה ל-mid של EntityAnnotation. |
languageCode |
קוד השפה בפורמט BCP-47, כמו en-US או sr-Latn. מידע נוסף זמין בכתובת http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
name |
שם האובייקט, בשפה |
score |
הניקוד של התוצאה. טווח [0, 1]. |
boundingPoly |
האזור בתמונה שאליו שייך האובייקט הזה. חובה למלא את השדה הזה. |
TextAnnotation
TextAnnotation מכיל ייצוג מובנה של טקסט שחולץ באמצעות OCR. ההיררכיה של מבנה טקסט שחולץ באמצעות OCR היא כזו: TextAnnotation -> Page -> Block -> Paragraph -> Word -> Symbol לכל רכיב מבני, החל מ-Page, יכולות להיות מאפיינים משלו. המאפיינים מתארים את השפות שזוהו, את ההפסקות וכו'. הסבר מפורט מופיע בהמשך, בקטע TextAnnotation.TextPropertyהגדרת ההודעה.
| ייצוג ב-JSON | |
|---|---|
{
"pages": [
{
object ( |
|
| שדות | |
|---|---|
pages[] |
רשימת הדפים שזוהו על ידי ה-OCR. |
text |
זוהה טקסט בפורמט UTF-8 בדפים. |
דף
דף שזוהה מ-OCR.
| ייצוג ב-JSON | |
|---|---|
{ "property": { object ( |
|
| שדות | |
|---|---|
property |
זוהה מידע נוסף בדף. |
width |
רוחב הדף. ב-PDF, היחידה היא נקודות. בתמונות (כולל TIFF), היחידה היא פיקסלים. |
height |
גובה הדף. ב-PDF, היחידה היא נקודות. בתמונות (כולל TIFF), היחידה היא פיקסלים. |
blocks[] |
רשימה של בלוקים של טקסט, תמונות וכו' בדף הזה. |
confidence |
רמת הביטחון של תוצאות ה-OCR בדף. טווח [0, 1]. |
TextProperty
זוהה מידע נוסף ברכיב המבני.
| ייצוג ב-JSON | |
|---|---|
{ "detectedLanguages": [ { object ( |
|
| שדות | |
|---|---|
detectedLanguages[] |
רשימה של השפות שזוהו, יחד עם רמת הביטחון. |
detectedBreak |
זוהתה התחלה או סיום של פלח טקסט. |
DetectedLanguage
השפה שזוהתה עבור רכיב מבני.
| ייצוג ב-JSON | |
|---|---|
{ "languageCode": string, "confidence": number } |
|
| שדות | |
|---|---|
languageCode |
קוד השפה בפורמט BCP-47, כמו en-US או sr-Latn. מידע נוסף זמין בכתובת http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
confidence |
רמת הביטחון לגבי השפה שזוהתה. טווח [0, 1]. |
DetectedBreak
זוהתה התחלה או סיום של רכיב מבני.
| ייצוג ב-JSON | |
|---|---|
{
"type": enum ( |
|
| שדות | |
|---|---|
type |
סוג המעבר שזוהה. |
isPrefix |
הערך הוא True אם התג break מופיע לפני הרכיב. |
BreakType
טיפוסים בני מנייה (enum) לציון סוג ההפסקה שנמצאה. שורה חדשה, רווח וכו'.
| טיפוסים בני מנייה (enum) | |
|---|---|
UNKNOWN |
סוג התווית של ההפסקה לא ידוע. |
SPACE |
מרחב רגיל. |
SURE_SPACE |
מרחב בטוח (רחב מאוד). |
EOL_SURE_SPACE |
מעבר שורה. |
HYPHEN |
מקף בסוף השורה שלא מופיע בטקסט; לא מופיע יחד עם SPACE, LEADER_SPACE או LINE_BREAK. |
LINE_BREAK |
מעבר שורה שמסיים פסקה. |
חסימה
רכיב לוגי בדף.
| ייצוג ב-JSON | |
|---|---|
{ "property": { object ( |
|
| שדות | |
|---|---|
property |
מידע נוסף שזוהה לגבי החסימה. |
boundingBox |
התיבה התוחמת של הבלוק. הקודקודים מסודרים לפי הסדר הבא: שמאל למעלה, ימין למעלה, ימין למטה, שמאל למטה. כשמזוהה סיבוב של תיבת התוחמת, הסיבוב מוצג סביב הפינה הימנית העליונה, כפי שמוגדר כשקוראים את הטקסט בכיוון 'הטבעי'. לדוגמה:
וסדר הקודקודים יישאר (0, 1, 2, 3). |
paragraphs[] |
רשימת הפסקאות בבלוק הזה (אם הבלוק הוא מסוג טקסט). |
blockType |
סוג הבלוק שזוהה (טקסט, תמונה וכו') עבור הבלוק הזה. |
confidence |
רמת המהימנות של תוצאות ה-OCR בבלוק. טווח [0, 1]. |
פסקה
יחידה מבנית של טקסט שמייצגת מספר מילים בסדר מסוים.
| ייצוג ב-JSON | |
|---|---|
{ "property": { object ( |
|
| שדות | |
|---|---|
property |
זוהה מידע נוסף לגבי הפסקה. |
boundingBox |
התיבה התוחמת של הפסקה. הקודקודים מסודרים לפי הסדר הבא: שמאל למעלה, ימין למעלה, ימין למטה, שמאל למטה. כשמזוהה סיבוב של תיבת התוחמת, הסיבוב מוצג סביב הפינה הימנית העליונה, כפי שמוגדר כשקוראים את הטקסט בכיוון 'הטבעי'. לדוגמה: * כשהטקסט אופקי, הוא יכול להיראות כך: 0----1 | | 3----2 * כשהוא מסובב ב-180 מעלות סביב הפינה הימנית העליונה, הוא נראה כך: 2----3 | | 1----0 וסדר הקודקודים עדיין יהיה (0, 1, 2, 3). |
words[] |
רשימה של כל המילים בפסקה הזו. |
confidence |
רמת הוודאות של תוצאות ה-OCR בפסקה. טווח [0, 1]. |
Word
ייצוג של מילה.
| ייצוג ב-JSON | |
|---|---|
{ "property": { object ( |
|
| שדות | |
|---|---|
property |
זוהה מידע נוסף לגבי המילה. |
boundingBox |
התיבה התוחמת (bounding box) של המילה. הקודקודים מסודרים לפי הסדר הבא: שמאל למעלה, ימין למעלה, ימין למטה, שמאל למטה. כשמזוהה סיבוב של תיבת התוחמת, הסיבוב מוצג סביב הפינה הימנית העליונה, כפי שמוגדר כשקוראים את הטקסט בכיוון 'הטבעי'. לדוגמה: * כשהטקסט אופקי, הוא יכול להיראות כך: 0----1 | | 3----2 * כשהוא מסובב ב-180 מעלות סביב הפינה הימנית העליונה, הוא נראה כך: 2----3 | | 1----0 וסדר הקודקודים עדיין יהיה (0, 1, 2, 3). |
symbols[] |
רשימת הסמלים במילה. סדר הסמלים הוא לפי סדר הקריאה הטבעי. |
confidence |
רמת הביטחון של תוצאות ה-OCR למילה. טווח [0, 1]. |
סמל
ייצוג של סמל יחיד.
| ייצוג ב-JSON | |
|---|---|
{ "property": { object ( |
|
| שדות | |
|---|---|
property |
זוהה מידע נוסף לגבי הסמל. |
boundingBox |
התיבה התוחמת של הסמל. הקודקודים מסודרים לפי הסדר הבא: שמאל למעלה, ימין למעלה, ימין למטה, שמאל למטה. כשמזוהה סיבוב של תיבת התוחמת, הסיבוב מוצג סביב הפינה הימנית העליונה, כפי שמוגדר כשקוראים את הטקסט בכיוון 'הטבעי'. לדוגמה: * כשהטקסט אופקי, הוא יכול להיראות כך: 0----1 | | 3----2 * כשהוא מסובב ב-180 מעלות סביב הפינה הימנית העליונה, הוא נראה כך: 2----3 | | 1----0 וסדר הקודקודים עדיין יהיה (0, 1, 2, 3). |
text |
הייצוג בפועל של הסמל ב-UTF-8. |
confidence |
רמת המהימנות של תוצאות ה-OCR של הסמל. טווח [0, 1]. |
BlockType
סוג הבלוק (טקסט, תמונה וכו') כפי שזוהה על ידי OCR.
| טיפוסים בני מנייה (enum) | |
|---|---|
UNKNOWN |
סוג הבלוק לא ידוע. |
TEXT |
בלוק טקסט רגיל. |
TABLE |
בלוק של טבלה. |
PICTURE |
חסימת תמונה. |
RULER |
תיבה עם קו אופקי או אנכי. |
BARCODE |
בלוק ברקוד. |
SafeSearchAnnotation
קבוצת תכונות שקשורות לתמונה, שמחושבות באמצעות שיטות של ראייה ממוחשבת בקטגוריות של חיפוש בטוח (לדוגמה, תוכן למבוגרים בלבד, זיוף, רפואי, אלימות).
| ייצוג ב-JSON | |
|---|---|
{ "adult": enum ( |
|
| שדות | |
|---|---|
adult |
ההסתברות שהתמונה מכילה תוכן למבוגרים בלבד. תוכן למבוגרים בלבד עשוי להכיל רכיבים כמו עירום, תמונות או סרטים מצוירים פורנוגרפיים או פעילויות מיניות. |
spoof |
סבירות הזיוף. הסבירות שבוצע שינוי בגרסה הקנונית של התמונה כדי שהיא תיראה מצחיקה או פוגענית. |
medical |
הסבירות שמדובר בתמונה רפואית. |
violence |
הסבירות שהתמונה הזו מכילה תוכן אלים. |
racy |
הסבירות שהתמונה בבקשה מכילה תוכן בעל אופי מיני. תוכן נועז עשוי לכלול (אבל לא רק) ביגוד חושפני או שקוף, עירום מכוסה באופן אסטרטגי, תנוחות מגונות או פרובוקטיביות או תקריבים של אזורים רגישים בגוף. |
ImageProperties
מאחסן מאפייני תמונה, כמו הצבעים הדומיננטיים.
| ייצוג ב-JSON | |
|---|---|
{
"dominantColors": {
object ( |
|
| שדות | |
|---|---|
dominantColors |
אם יש צבעים דומיננטיים, הם הושלמו. |
DominantColorsAnnotation
קבוצה של צבעים דומיננטיים והציונים התואמים שלהם.
| ייצוג ב-JSON | |
|---|---|
{
"colors": [
{
object ( |
|
| שדות | |
|---|---|
colors[] |
ערכי צבעי RGB עם הציון והחלק היחסי של הפיקסלים. |
ColorInfo
מידע על צבע כולל ערוצי RGB, ציון ושבריר התמונה שהצבע תופס בתמונה.
| ייצוג ב-JSON | |
|---|---|
{
"color": {
object ( |
|
| שדות | |
|---|---|
color |
רכיבי ה-RGB של הצבע. |
score |
ציון ספציפי לתמונה של הצבע הזה. הערך בטווח [0, 1]. |
pixelFraction |
החלק היחסי של הפיקסלים שהצבע תופס בתמונה. הערך בטווח [0, 1]. |
צבע
מייצג צבע במרחב הצבעים RGBA. הייצוג הזה נועד לפשט את ההמרה לייצוגים של צבעים בשפות שונות, או מהם, תוך התמקדות בפשטות ולא בדחיסה. לדוגמה, אפשר לספק את השדות של הייצוג הזה בקלות לקונסטרוקטור של java.awt.Color ב-Java. אפשר גם לספק אותם בקלות לשיטה +colorWithRed:green:blue:alpha של UIColor ב-iOS. בנוסף, אפשר לעצב אותם בקלות למחרוזת rgba() של CSS ב-JavaScript, עם קצת עבודה.
הערה: פרוטוקול זה לא כולל מידע על מרחב הצבעים המוחלט שצריך לשמש לפרשנות של ערך ה-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 |
כמות האדום בצבע כערך במרווח [0, 1]. |
green |
כמות הירוק בצבע כערך במרווח [0, 1]. |
blue |
כמות הכחול בצבע כערך במרווח [0, 1]. |
alpha |
החלק היחסי של הצבע הזה שצריך להחיל על הפיקסל. כלומר, הצבע הסופי של הפיקסל מוגדר על ידי המשוואה: צבע הפיקסל = אלפא * (הצבע הזה) + (1.0 – אלפא) * (צבע הרקע) כלומר, ערך של 1.0 מתאים לצבע אחיד, ואילו ערך של 0.0 מתאים לצבע שקוף לחלוטין. ההגדרה הזו משתמשת בהודעת wrapper במקום בסקלר פשוט של מספרים ממשיים, כדי לאפשר הבחנה בין ערך ברירת מחדל לבין ערך שלא הוגדר. אם לא מציינים את אובייקט הצבע הזה, הוא יוצג כצבע אחיד (כאילו ערך האלפא צוין במפורש כ-1.0). |
CropHintsAnnotation
קבוצה של רמזים לחיתוך שמשמשים ליצירת חיתוכים חדשים כשמציגים תמונות.
| ייצוג ב-JSON | |
|---|---|
{
"cropHints": [
{
object ( |
|
| שדות | |
|---|---|
cropHints[] |
תוצאות של הצעות חיתוך. |
CropHint
רמז לחיתוך יחיד שמשמש ליצירת חיתוך חדש כשמציגים תמונה.
| ייצוג ב-JSON | |
|---|---|
{
"boundingPoly": {
object ( |
|
| שדות | |
|---|---|
boundingPoly |
המצולע התוחם של אזור החיתוך. הקואורדינטות של התיבה התוחמת הן בסקאלה של התמונה המקורית. |
confidence |
רמת הביטחון שמדובר באזור בולט. טווח [0, 1]. |
importanceFraction |
חלק החשיבות של האזור הבולט הזה ביחס לתמונה המקורית. |
WebDetection
מידע רלוונטי לתמונה מהאינטרנט.
| ייצוג ב-JSON | |
|---|---|
{ "webEntities": [ { object ( |
|
| שדות | |
|---|---|
webEntities[] |
ישות שהוסקה מתמונות דומות באינטרנט. |
fullMatchingImages[] |
תמונות זהות לחלוטין מהאינטרנט. יכול לכלול עותקים של תמונת השאילתה שגודלם שונה. |
partialMatchingImages[] |
התאמה חלקית של תמונות מהאינטרנט. התמונות האלה דומות מספיק כדי לחלוק כמה מאפיינים של נקודות מרכזיות. לדוגמה, סביר להניח שתמונה מקורית תהיה התאמה חלקית לתמונות חתוכות שלה. |
pagesWithMatchingImages[] |
דפי אינטרנט שמכילים את התמונות התואמות מהאינטרנט. |
visuallySimilarImages[] |
תוצאות של תמונות דומות מבחינה חזותית. |
bestGuessLabels[] |
הניחוש הכי טוב של השירות לגבי הנושא של התמונה שמופיעה בבקשה. המידע הזה נגזר מתמונות דומות באינטרנט הפתוח. |
WebEntity
הישות נגזרת מתמונות דומות באינטרנט.
| ייצוג ב-JSON | |
|---|---|
{ "entityId": string, "score": number, "description": string } |
|
| שדות | |
|---|---|
entityId |
מזהה ישות אטום. |
score |
ציון הרלוונטיות הכולל של הישות. לא מנורמלים ולא ניתנים להשוואה בין שאילתות שונות של תמונות. |
description |
תיאור קנוני של הישות, באנגלית. |
WebImage
מטא-נתונים של תמונות באינטרנט.
| ייצוג ב-JSON | |
|---|---|
{ "url": string, "score": number } |
|
| שדות | |
|---|---|
url |
כתובת ה-URL של תמונת התוצאה. |
score |
(הוצא משימוש) ציון הרלוונטיות הכולל של התמונה. |
WebPage
מטא-נתונים של דפי אינטרנט.
| ייצוג ב-JSON | |
|---|---|
{ "url": string, "score": number, "pageTitle": string, "fullMatchingImages": [ { object ( |
|
| שדות | |
|---|---|
url |
כתובת ה-URL של דף האינטרנט של התוצאה. |
score |
(הוצא משימוש) ציון הרלוונטיות הכולל של דף האינטרנט. |
pageTitle |
הכותרת של דף האינטרנט, יכולה להכיל תגי עיצוב של HTML. |
fullMatchingImages[] |
תמונות זהות בדף. יכול לכלול עותקים של תמונת השאילתה שגודלם שונה. |
partialMatchingImages[] |
תמונות תואמות חלקיות בדף. התמונות האלה דומות מספיק כדי לחלוק כמה מאפיינים של נקודות מרכזיות. לדוגמה, סביר להניח שתמונה מקורית תהיה התאמה חלקית לתמונות חתוכות שלה. |
WebLabel
תווית שמספקת מטא-נתונים נוספים לזיהוי באינטרנט.
| ייצוג ב-JSON | |
|---|---|
{ "label": string, "languageCode": string } |
|
| שדות | |
|---|---|
label |
תווית למטא-נתונים נוספים. |
languageCode |
קוד השפה בפורמט BCP-47 עבור |
ProductSearchResults
תוצאות של בקשת חיפוש מוצר.
| ייצוג ב-JSON | |
|---|---|
{ "indexTime": string, "results": [ { object ( |
|
| שדות | |
|---|---|
indexTime |
חותמת הזמן של האינדקס שממנו התקבלו התוצאות האלה. מוצרים שנוספו לסט המוצרים ומוצרים שהוסרו מסט המוצרים אחרי השעה הזו לא יופיעו בתוצאות הנוכחיות. חותמת זמן בפורמט RFC3339 UTC 'Zulu', מדויקת עד לרמת הננו-שנייה. דוגמה: |
results[] |
רשימת תוצאות, אחת לכל התאמה של מוצר. |
productGroupedResults[] |
רשימת תוצאות שמקובצות לפי מוצרים שזוהו בתמונת השאילתה. כל רשומה מתאימה לפוליגון תוחם אחד בתמונת השאילתה, ומכילה את המוצרים התואמים שספציפיים לאזור הזה. יכול להיות שיהיו כפילויות של התאמות מוצרים באיחוד של כל התוצאות לכל מוצר. |
תוצאה
מידע על מוצר.
| ייצוג ב-JSON | |
|---|---|
{
"product": {
object ( |
|
| שדות | |
|---|---|
product |
המוצר. |
score |
רמת המהימנות של ההתאמה, בין 0 (ללא מהימנות) ל-1 (מהימנות מלאה). |
image |
שם המשאב של התמונה מהמוצר שהכי מתאים לשאילתה. |
GroupedResult
מידע על מוצרים שדומים למוצר בודד בתמונה של שאילתה.
| ייצוג ב-JSON | |
|---|---|
{ "boundingPoly": { object ( |
|
| שדות | |
|---|---|
boundingPoly |
המצולע התוחם סביב המוצר שזוהה בתמונת השאילתה. |
results[] |
רשימת תוצאות, אחת לכל התאמה של מוצר. |
objectAnnotations[] |
רשימה של תחזיות כלליות לגבי האובייקט בתיבת התוחמת. |
ObjectAnnotation
תחזית לגבי האובייקט בתיבת התוחמת.
| ייצוג ב-JSON | |
|---|---|
{ "mid": string, "languageCode": string, "name": string, "score": number } |
|
| שדות | |
|---|---|
mid |
מזהה האובייקט שצריך להיות זהה ל-mid של EntityAnnotation. |
languageCode |
קוד השפה בפורמט BCP-47, כמו en-US או sr-Latn. מידע נוסף זמין בכתובת http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. |
name |
שם האובייקט, בשפה |
score |
הניקוד של התוצאה. טווח [0, 1]. |
ImageAnnotationContext
אם התמונה נוצרה מקובץ (למשל PDF), בהודעה הזו מופיע מידע על המקור של התמונה.
| ייצוג ב-JSON | |
|---|---|
{ "uri": string, "pageNumber": number } |
|
| שדות | |
|---|---|
uri |
ה-URI של הקובץ ששימש ליצירת התמונה. |
pageNumber |
אם הקובץ היה PDF או TIFF, בשדה הזה מצוין מספר הדף בקובץ ששימש ליצירת התמונה. |