הצעות חיתוך מציעות קודקודים לאזור חיתוך בתמונה.
הצעת חיתוך שהוחלה (יחס של 2:1):

בקשות לזיהוי רמזים לחיתוך
הגדרת הפרויקט והאימות ב- Google Cloud
זיהוי הצעות לחיתוך בתמונה מקומית
אתם יכולים להשתמש ב-Vision API כדי לבצע זיהוי תכונות בקובץ תמונה מקומי.
בבקשות REST, שולחים את תוכן קובץ התמונה כמחרוזת בקידוד base64 בגוף הבקשה.
בבקשות של gcloud וספריות לקוח, מציינים את הנתיב לתמונה מקומית בבקשה.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- BASE64_ENCODED_IMAGE: ייצוג base64 (מחרוזת ASCII) של נתוני התמונה הבינאריים. המחרוזת הזו צריכה להיראות כמו המחרוזת הבאה:
/9j/4QAYRXhpZgAA...9tAVx/zDQDlGxn//2Q==
- PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
שיקולים ספציפיים לשדה:
-
cropHintsParams.aspectRatios– מספר עשרוני שמתאים ליחסים שציינתם לתמונות (רוחב:גובה). אפשר לספק עד 16 יחסי חיתוך.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://vision.googleapis.com/v1/images:annotate
גוף בקשת JSON:
{
"requests": [
{
"image": {
"content": "BASE64_ENCODED_IMAGE"
},
"features": [
{
"type": "CROP_HINTS"
}
],
"imageContext": {
"cropHintsParams": {
"aspectRatios": [
2.0
]
}
}
}
]
}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://vision.googleapis.com/v1/images:annotate"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/images:annotate" | Select-Object -Expand Content
אם הבקשה מצליחה, השרת מחזיר קוד סטטוס 200 OK של HTTP ואת התשובה בפורמט JSON.
תשובה:
{
"responses": [
{
"cropHintsAnnotation": {
"cropHints": [
{
"boundingPoly": {
"vertices": [
{
"y": 520
},
{
"x": 2369,
"y": 520
},
{
"x": 2369,
"y": 1729
},
{
"y": 1729
}
]
},
"confidence": 0.79999995,
"importanceFraction": 0.66999996
}
]
}
}
]
}
Go
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goהוראות ההגדרה שבמדריך לתחילת העבודה עם Vision באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של Vision Go API.
כדי לבצע אימות ב-Vision, צריך להגדיר את Application Default Credentials. למידע נוסף, ראו הגדרת אימות לסביבת פיתוח מקומית.
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במאמר התחלת העבודה עם Vision API באמצעות ספריות לקוח. מידע נוסף מופיע ב מאמרי העזרה של Vision API Java.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Vision באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Vision Node.js API.
כדי לבצע אימות ב-Vision, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Pythonהוראות ההגדרה שבמדריך לתחילת העבודה עם Vision באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של Vision Python API.
כדי לבצע אימות ב-Vision, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
שפות נוספות
C#: פעלו לפי הוראות ההגדרה של C# בדף ספריות הלקוח, ואז עיינו ב מאמרי העזרה של Vision ל- .NET.
PHP: פועלים לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז עוברים אל מסמכי העזר של Vision ל-PHP.
Ruby: פועלים לפי הוראות ההגדרה של Ruby בדף של ספריות הלקוח ואז עוברים אל מאמרי העזרה בנושא Vision ל-Ruby.
זיהוי רמזים לחיתוך בתמונה מרוחקת
אתם יכולים להשתמש ב-Vision API כדי לבצע זיהוי תכונות בקובץ תמונה מרוחק שנמצא ב-Cloud Storage או באינטרנט. כדי לשלוח בקשה לקובץ מרוחק, מציינים את כתובת ה-URL של הקובץ באינטרנט או את ה-URI של Cloud Storage בגוף הבקשה.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- CLOUD_STORAGE_IMAGE_URI: הנתיב לקובץ תמונה תקין בקטגוריה של Cloud Storage. צריכות להיות לכם לפחות הרשאות קריאה בקובץ.
לדוגמה:
gs://cloud-samples-data/vision/crop_hints/bubble.jpeg
- PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
שיקולים ספציפיים לשדה:
-
cropHintsParams.aspectRatios– מספר עשרוני שמתאים ליחסים שציינתם לתמונות (רוחב:גובה). אפשר לספק עד 16 יחסי חיתוך.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://vision.googleapis.com/v1/images:annotate
גוף בקשת JSON:
{
"requests": [
{
"image": {
"source": {
"gcsImageUri": "CLOUD_STORAGE_IMAGE_URI"
}
},
"features": [
{
"type": "CROP_HINTS"
}
],
"imageContext": {
"cropHintsParams": {
"aspectRatios": [
2.0
]
}
}
}
]
}
כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:
curl
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://vision.googleapis.com/v1/images:annotate"
PowerShell
שומרים את גוף הבקשה בקובץ בשם request.json ומריצים את הפקודה הבאה:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "PROJECT_ID" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/images:annotate" | Select-Object -Expand Content
אם הבקשה מצליחה, השרת מחזיר קוד סטטוס 200 OK של HTTP ואת התשובה בפורמט JSON.
תשובה:
{
"responses": [
{
"cropHintsAnnotation": {
"cropHints": [
{
"boundingPoly": {
"vertices": [
{
"y": 520
},
{
"x": 2369,
"y": 520
},
{
"x": 2369,
"y": 1729
},
{
"y": 1729
}
]
},
"confidence": 0.79999995,
"importanceFraction": 0.66999996
}
]
}
}
]
}
Java
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Java במדריך למתחילים של Vision באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Vision Java API.
כדי לבצע אימות ב-Vision, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Go
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי Goהוראות ההגדרה שבמדריך לתחילת העבודה עם Vision באמצעות ספריות לקוח. מידע נוסף מופיע במאמרי העזרה של Vision Go API.
כדי לבצע אימות ב-Vision, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Node.js במדריך למתחילים של Vision באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של Vision Node.js API.
כדי לבצע אימות ב-Vision, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
לפני שמנסים את הדוגמה הזו, צריך לפעול לפי הוראות ההגדרה של Python במדריך למתחילים של Vision באמצעות ספריות לקוח. למידע נוסף, קראו את מאמרי העזרה של Vision Python API.
כדי לבצע אימות ב-Vision, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
gcloud
כדי לזהות טקסט, משתמשים בפקודה gcloud ml vision suggest-crop, כמו בדוגמה הבאה:
gcloud ml vision suggest-crop gs://cloud-samples-data/vision/crop_hints/bubble.jpeg
שפות נוספות
C#: צריך לפעול לפי הוראות ההגדרה של C# בדף של ספריות הלקוח ואז לעבור אל מאמרי העזרה של Vision בנושא .NET.
PHP: פועלים לפי הוראות ההגדרה של PHP בדף של ספריות הלקוח ואז עוברים אל מסמכי העזר של Vision ל-PHP.
Ruby: פועלים לפי הוראות ההגדרה של Ruby בדף ספריות הלקוח, ואז עוברים אל מאמרי העזרה של Vision ל-Ruby.
התנסות בתכונה באמצעות Google APIs Explorer
אפשר לנסות לזהות רמזים לחיתוך ב-Google APIs Explorer. אפשר להשתמש בתמונה שכבר צוינה (gs://cloud-samples-data/vision/crop_hints/bubble.jpeg) או לציין תמונה משלכם במקומה. לוחצים על Execute (הפעלה) כדי לשלוח את הבקשה.
גוף הבקשה:
{
"requests": [
{
"image": {
"source": {
"gcsImageUri": "gs://cloud-samples-data/vision/crop_hints/bubble.jpeg"
}
},
"features": [
{
"type": "CROP_HINTS"
}
],
"imageContext": {
"cropHintsParams": {
"aspectRatios": [
2
]
}
}
}
]
}פותחים את Google APIs Explorer ושולחים את הבקשה
כדי לפתוח את Google APIs Explorer, לוחצים על Try it!.
זה שינוי אופציונלי. משנים את גוף הבקשה הקיים.
כדי לשלוח את הבקשה, לוחצים על Execute.