- בקשת HTTP
- פרמטרים של שאילתה
- גוף הבקשה
- גוף התשובה
- היקפי הרשאה
- PhotoSequence
- GpsSource
- Imu
- Measurement3d
- ProcessingState
- ProcessingFailureReason
- ProcessingFailureDetails
- InsufficientGpsFailureDetails
- GpsDataGapFailureDetails
- ImuDataGapFailureDetails
- NotOutdoorsFailureDetails
- NoOverlapGpsFailureDetails
- LatLngBounds
- InputType
- כדאי לנסות!
אחרי שהלקוח מסיים להעלות את PhotoSequence עם UploadRef שהוחזר, photoSequence.create מחלץ רצף של תמונות 360 מסרטון או מ-Extensible Device Metadata (מטא-נתונים של מכשיר שניתן להרחבה, XDM, http://www.xdm.org/) כדי לפרסם אותם ב-Street View במפות Google.
photoSequence.create מחזירה Operation, עם מזהה PhotoSequence שמוגדר בשדה Operation.name.
השיטה הזו מחזירה את קודי השגיאה הבאים:
-
google.rpc.Code.INVALID_ARGUMENTאם הבקשה לא תקינה. -
google.rpc.Code.NOT_FOUNDאם ההפניה להעלאה לא קיימת.
בקשת HTTP
POST https://streetviewpublish.googleapis.com/v1/photoSequence
כתובת ה-URL כתובה בתחביר של gRPC Transcoding.
פרמטרים של שאילתה
| פרמטרים | |
|---|---|
inputType |
חובה. טופס הקלט של |
גוף הבקשה
גוף הבקשה מכיל מופע של PhotoSequence.
גוף התשובה
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל מופע חדש של Operation.
היקפי הרשאה
נדרש היקף ההרשאות הבא של OAuth:
https://www.googleapis.com/auth/streetviewpublish
ניתן למצוא מידע נוסף כאן: OAuth 2.0 Overview.
PhotoSequence
רצף של תמונות 360 עם מטא-נתונים.
| ייצוג ב-JSON |
|---|
{ "id": string, "photos": [ { object ( |
| שדות | |
|---|---|
id |
פלט בלבד. מזהה ייחודי של רצף התמונות. הוא משמש גם כמזהה פעולה ממושכת אם ההעלאה מתבצעת באופן אסינכרוני. |
photos[] |
פלט בלבד. תמונות עם חותמות זמן עולות. |
uploadReference |
קלט בלבד. חובה כשיוצרים רצף תמונות. שם המשאב שאליו מועלים הבייטים של רצף התמונות (בפורמט של סרטון). |
captureTimeOverride |
אופציונלי. השעה המדויקת שבה מתחילים לצלם את רצף התמונות. אם רצף התמונות הוא סרטון, זהו זמן ההתחלה של הסרטון. אם השדה הזה מאוכלס בקלט, הוא מבטל את זמן הצילום בסרטון או בקובץ XDM. הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
uploadTime |
פלט בלבד. השעה שבה רצף התמונות הזה נוצר בשירות uSV Store. הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
rawGpsTimeline[] |
קלט בלבד. מדידות GPS גולמיות עם חותמות זמן עולות מהמכשיר שלא מסונכרנות בזמן עם כל תמונה. הנתונים הגולמיים האלה ישמשו להסקת התנוחה של כל פריים. חובה להזין את הערך הזה כש-InputType הוא VIDEO ומדידות ה-GPS הגולמיות לא נמצאות ב-Camera Motion Metadata Track (CAMM). המשתמש יכול לציין איזו מדידה מקבלת עדיפות באמצעות gpsSource אם מדידות GPS גולמיות מסופקות גם ב-rawGpsTimeline וגם ב-Camera Motion Metadata Track (CAMM). |
gpsSource |
קלט בלבד. אם גם rawGpsTimeline וגם Camera Motion Metadata Track (CAMM) מכילים מדידות GPS, צריך לציין למי מהם יש עדיפות. |
imu |
קלט בלבד. נתוני IMU של שלושה צירים לאוסף. אם הנתונים האלה גדולים מדי בשביל להוסיף אותם לבקשה, צריך להוסיף אותם ל-CAMM track של הסרטון. הנתונים האלה תמיד מקבלים עדיפות על פני נתוני CAMM מקבילים, אם יש כאלה. |
processingState |
פלט בלבד. מצב העיבוד של הרצף הזה. |
failureReason |
פלט בלבד. אם הרצף הזה כולל processingState = FAILED, הוא יכיל את הסיבה לכך שהעיבוד נכשל. אם הערך של processingState הוא ערך אחר, השדה הזה לא יוגדר. |
failureDetails |
פלט בלבד. אם הרצף הזה כולל את ההגדרה |
distanceMeters |
פלט בלבד. המרחק המחושב של רצף התמונות במטרים. |
sequenceBounds |
פלט בלבד. תיבה מלבנית שמקיפה כל תמונה ברצף התמונות הזה. |
viewCount |
פלט בלבד. מספר הצפיות הכולל שקיבלו כל התמונות שפורסמו ברצף התמונות הזה. |
filename |
פלט בלבד. שם הקובץ של ההעלאה. היא לא כוללת את נתיב הספריה. האפשרות הזו זמינה רק אם הרצף הועלה לפלטפורמה שמספקת את שם הקובץ. |
GpsSource
המקור הראשי של מדידות GPS.
| טיפוסים בני מנייה (enum) | |
|---|---|
PHOTO_SEQUENCE |
אם יש נתוני GPS ב-rawGpsTimeline, הם מקבלים עדיפות. |
CAMERA_MOTION_METADATA_TRACK |
אם יש נתוני GPS ב-Camera Motion Metadata Track (CAMM), הם מקבלים עדיפות. |
Imu
נתוני IMU מחיישני המכשיר.
| ייצוג ב-JSON |
|---|
{ "accelMpsps": [ { object ( |
| שדות | |
|---|---|
accelMpsps[] |
מדידות התאוצה במטרים לשנייה בריבוע עם חותמות זמן עולות מהמכשירים. |
gyroRps[] |
מדידות הג'ירוסקופ ברדיאנים לשנייה עם חותמות זמן עולות מהמכשירים. |
magUt[] |
מדידות המגנטומטר של השדה המגנטי במיקרוטסלה (uT) עם חותמות זמן עולות מהמכשירים. |
Measurement3d
דוגמה כללית למדידה בתלת-ממד.
| ייצוג ב-JSON |
|---|
{ "captureTime": string, "x": number, "y": number, "z": number } |
| שדות | |
|---|---|
captureTime |
חותמת הזמן של מדידת ה-IMU. הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
x |
הערך של מדידת החיישן בציר X. |
y |
מדידת החיישן בציר Y. |
z |
מדידת החיישן בציר Z. |
ProcessingState
סטטוס העיבוד של הרצף. המעבר בין הסטטוסים מתבצע באופן הבא:
+-------------------------+
| |
+---v---+ +----------+ +----+----+
|PENDING+-->PROCESSING+-->PROCESSED|
+---+---+ +----+-----+ +----+----+
| | |
| +--v---+ |
+-------->FAILED<---------+
+------+
הרצף יכול לעבור למצב FAILED מכל מצב. בנוסף, אפשר לעבד מחדש רצף מעובד בכל שלב.
| טיפוסים בני מנייה (enum) | |
|---|---|
PROCESSING_STATE_UNSPECIFIED |
המצב לא צוין, זה ערך ברירת המחדל. |
PENDING |
העיבוד של הרצף עדיין לא התחיל. |
PROCESSING |
הרצף נמצא כרגע בתהליך עיבוד. |
PROCESSED |
העיבוד של הרצף הסתיים, כולל שיפור המיקום. |
FAILED |
העיבוד של הרצף נכשל. פרטים נוספים מופיעים ב-FailureReason. |
ProcessingFailureReason
הסיבות האפשריות לכך שעיבוד PhotoSequence נכשל.
| טיפוסים בני מנייה (enum) | |
|---|---|
PROCESSING_FAILURE_REASON_UNSPECIFIED |
סיבת הכשל לא צוינה. זה ערך ברירת המחדל. |
LOW_RESOLUTION |
הרזולוציה של פריים הווידאו קטנה מדי. |
DUPLICATE |
הסרטון הזה כבר הועלה בעבר. |
INSUFFICIENT_GPS |
יש מעט מדי נקודות GPS. |
NO_OVERLAP_GPS |
אין חפיפה בין מסגרת הזמן של מסלול ה-GPS לבין מסגרת הזמן של הסרטון. |
INVALID_GPS |
ה-GPS לא תקין (לדוגמה, כל נקודות ה-GPS הן (0,0)) |
FAILED_TO_REFINE_POSITIONS |
לא הייתה אפשרות לאתר במדויק את רצף התמונות בעולם. |
TAKEDOWN |
הרצף הוסר בגלל הפרת מדיניות. |
CORRUPT_VIDEO |
קובץ הסרטון פגום או שלא ניתן לפענח אותו. |
INTERNAL |
אירעה שגיאה קבועה במערכת הבסיסית. |
INVALID_VIDEO_FORMAT |
פורמט הסרטון לא תקין או שאין בו תמיכה. |
INVALID_VIDEO_DIMENSIONS |
זוהה יחס גובה-רוחב לא חוקי של התמונה. |
INVALID_CAPTURE_TIME |
חותמת הזמן של הצילום לא תקינה. הן מוגדרות לזמן בעתיד. |
GPS_DATA_GAP |
בנתוני ה-GPS יש פער של יותר מ-5 שניות. |
JUMPY_GPS |
נתוני ה-GPS לא יציבים מדי, ולכן אי אפשר לעבד אותם. |
INVALID_IMU |
הנתונים של IMU (מד תאוצה, ג'ירוסקופ וכו') לא תקינים. יכול להיות שחסרים בהם שדות חובה (x, y, z או שעה), שהפורמט שלהם לא נכון או כל בעיה אחרת שמונעת מהמערכות שלנו לנתח אותם. |
INSUFFICIENT_IMU |
יש מעט מדי נקודות IMU. |
INSUFFICIENT_OVERLAP_TIME_SERIES |
אין חפיפה מספקת בטווח הזמן בין נתוני ה-GPS, נתוני ה-IMU ונתונים אחרים של סדרות זמן. |
IMU_DATA_GAP |
בנתוני IMU (מד תאוצה, ג'ירוסקופ וכו') יש פערים של יותר מ-0.1 שניות. |
UNSUPPORTED_CAMERA |
המצלמה לא נתמכת. |
NOT_OUTDOORS |
חלק מהפריימים צולמו בתוך מבנה, וזה לא נתמך. |
INSUFFICIENT_VIDEO_FRAMES |
אין מספיק פריימים של סרטונים. |
INSUFFICIENT_MOVEMENT |
אין מספיק נתונים על תנועה. |
MAST_DOWN |
העמוד לא הורם. |
CAMERA_COVERED |
המצלמה מכוסה. |
ProcessingFailureDetails
פרטים נוספים שמתלווים ל-enum ProcessingFailureReason. ההודעה הזו תמיד צריכה לשמש בשילוב עם ProcessingFailureReason, והערך oneof שמוגדר בהודעה הזו צריך להיות זהה ל-FailureReason.
| ייצוג ב-JSON |
|---|
{ // Union field |
| שדות | |
|---|---|
שדה איחוד details. רק קבוצה אחת של פרטים תוגדר, והיא חייבת להתאים לערך ה-enum המתאים ב-ProcessingFailureReason. הערך details יכול להיות רק אחד מהבאים: |
|
insufficientGpsDetails |
ראו InsufficientGpsFailureDetails. |
gpsDataGapDetails |
מידע נוסף זמין במאמר בנושא GpsDataGapFailureDetails. |
imuDataGapDetails |
ראו ImuDataGapFailureDetails. |
notOutdoorsDetails |
ראו NotOutdoorsFailureDetails. |
noOverlapGpsDetails |
ראו NoOverlapGpsFailureDetails. |
InsufficientGpsFailureDetails
פרטים שקשורים אל ProcessingFailureReason#INSUFFICIENT_GPS.
| ייצוג ב-JSON |
|---|
{ "gpsPointsFound": integer } |
| שדות | |
|---|---|
gpsPointsFound |
מספר נקודות ה-GPS שנמצאו בסרטון. |
GpsDataGapFailureDetails
פרטים שקשורים ל-ProcessingFailureReason#GPS_DATA_GAP. אם יש כמה פערים בנתוני ה-GPS, בדוח הזה מופיע רק הפער עם משך הזמן הכי ארוך.
| ייצוג ב-JSON |
|---|
{ "gapDuration": string, "gapStartTime": string } |
| שדות | |
|---|---|
gapDuration |
משך הפער בנתוני ה-GPS שנמצא. משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב-' |
gapStartTime |
הזמן היחסי (מתחילת שידור הווידאו) שבו התחיל הפער. משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב-' |
ImuDataGapFailureDetails
פרטים שקשורים ל-ProcessingFailureReason#IMU_DATA_GAP. אם יש כמה פערים בנתוני IMU, רק הפער עם משך הזמן הכי ארוך מדווח כאן.
| ייצוג ב-JSON |
|---|
{ "gapDuration": string, "gapStartTime": string } |
| שדות | |
|---|---|
gapDuration |
משך הפער בנתוני IMU שנמצא. משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב-' |
gapStartTime |
הזמן היחסי (מתחילת שידור הווידאו) שבו התחיל הפער. משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב-' |
NotOutdoorsFailureDetails
פרטים שקשורים אל ProcessingFailureReason#NOT_OUTDOORS. אם נמצאו כמה מסגרות פנימיות, המסגרת הראשונה מתועדת כאן.
| ייצוג ב-JSON |
|---|
{ "startTime": string } |
| שדות | |
|---|---|
startTime |
הזמן היחסי (מתחילת שידור הסרטון) שבו נמצא פריים של סרטון שצולם בתוך מבנה. משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, שמסתיים ב-' |
NoOverlapGpsFailureDetails
פרטים שקשורים אל PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS.
| ייצוג ב-JSON |
|---|
{ "gpsStartTime": string, "gpsEndTime": string, "videoStartTime": string, "videoEndTime": string } |
| שדות | |
|---|---|
gpsStartTime |
השעה של נקודת ה-GPS המתועדת הראשונה. הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
gpsEndTime |
השעה של נקודת ה-GPS המתועדת האחרונה. הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
videoStartTime |
שעת ההתחלה של הסרטון. הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
videoEndTime |
שעת הסיום של הסרטון. הפלט שנוצר תמיד יהיה בפורמט RFC 3339, עם נורמליזציה של Z ושימוש ב-0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: |
LatLngBounds
מלבן בקואורדינטות גיאוגרפיות.
| ייצוג ב-JSON |
|---|
{ "southwest": { object ( |
| שדות | |
|---|---|
southwest |
הפינה הדרום-מערבית של הגבולות האלה. |
northeast |
הפינה הצפון-מזרחית של הגבולות האלה. |
InputType
הזנת טפסים של PhotoSequence.
| טיפוסים בני מנייה (enum) | |
|---|---|
INPUT_TYPE_UNSPECIFIED |
לא צוין. השרת יחזיר google.rpc.Code.INVALID_ARGUMENT. |
VIDEO |
סרטון ב-360 מעלות. |
XDM |
מטא נתונים של מכשירים שניתנים להרחבה, http://www.xdm.org |