Method: photoSequence.create

לאחר שהלקוח יסיים להעלות את PhotoSequence עם ה-UploadRef שהוחזר, photoSequence.create שולף רצף של תמונות 360 מסרטון או מטא-נתונים של מכשיר שניתן להרחבה (XDM, http://www.xdm.org/) כדי לפרסם אותם ב-Street View במפות Google.

photoSequence.create מחזירה Operation, כאשר המזהה של PhotoSequence מוגדר בשדה Operation.name.

השיטה הזו מחזירה את קודי השגיאה הבאים:

בקשת HTTP

POST https://streetviewpublish.googleapis.com/v1/photoSequence

בכתובת ה-URL נעשה שימוש בתחביר המרת gRPC.

פרמטרים של שאילתה

פרמטרים
inputType

enum (InputType)

חובה. צורת הקלט של PhotoSequence.

גוף הבקשה

גוף הבקשה מכיל מופע של PhotoSequence.

גוף התגובה

אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכלול מופע חדש של Operation שנוצר.

היקפי הרשאות

נדרש היקף OAuth הבא:

  • https://www.googleapis.com/auth/streetviewpublish

למידע נוסף, עיין בסקירה הכללית על OAuth 2.0.

PhotoSequence

רצף של תמונות 360 עם מטא-נתונים.

ייצוג JSON
{
  "id": string,
  "photos": [
    {
      object (Photo)
    }
  ],
  "uploadReference": {
    object (UploadRef)
  },
  "captureTimeOverride": string,
  "uploadTime": string,
  "rawGpsTimeline": [
    {
      object (Pose)
    }
  ],
  "gpsSource": enum (GpsSource),
  "imu": {
    object (Imu)
  },
  "processingState": enum (ProcessingState),
  "failureReason": enum (ProcessingFailureReason),
  "failureDetails": {
    object (ProcessingFailureDetails)
  },
  "distanceMeters": number,
  "sequenceBounds": {
    object (LatLngBounds)
  },
  "viewCount": string,
  "filename": string
}
שדות
id

string

פלט בלבד. המזהה הייחודי של רצף התמונות. מזהה זה משמש גם כמזהה פעולה ארוך אם ההעלאה מתבצעת באופן אסינכרוני.

photos[]

object (Photo)

פלט בלבד. תמונות עם חותמות זמן שעולות בהדרגה.

uploadReference

object (UploadRef)

קלט בלבד. נדרש כשיוצרים רצף תמונות. שם המשאב שאליו מועלים הבייטים של רצף התמונות (כסרטון).

captureTimeOverride

string (Timestamp format)

אפשרות. הזמן המוחלט מרגע התחלת הצילום של רצף התמונות. אם רצף התמונות הוא סרטון, זוהי שעת ההתחלה של הסרטון. אם השדה הזה מאוכלס בקלט, הוא מבטל את זמן הצילום של הסרטון או בקובץ ה-XDM.

חותמת זמן בפורמט "זולו" RFC3339 UTC, ברזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

uploadTime

string (Timestamp format)

פלט בלבד. השעה שבה רצף התמונות הזה נוצר בשירות החנות של uSV.

חותמת זמן בפורמט "זולו" RFC3339 UTC, ברזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

rawGpsTimeline[]

object (Pose)

קלט בלבד. מדידות GPS גולמיות עם חותמות זמן שגדלות ועולות מהמכשיר, שלא מסתנכרנות עם כל תמונה בזמן. המדידות הגולמיות האלה ישמשו כדי להסיק את התנוחה של כל מסגרת. נדרש בקלט כאשר שיטת הקלט היא VIDEO ומדידות GPS גולמיות לא נכללות במעקב המטא-נתונים של תנועת המצלמה (CAMM). המשתמש יכול לציין איזו מהן מקבלת עדיפות באמצעות gpsSource, אם מדידות GPS גולמיות זמינות גם ב-RAWGTimeline וגם ב-camera Motion Metadata Track (CAMM).

gpsSource

enum (GpsSource)

קלט בלבד. אם גם RAWGpsTimeline וגם ה- Camera Motion Metadata Track (CAMM) מכילים מדידות GPS, יש לציין איזו מהן מקבלת עדיפות.

imu

object (Imu)

קלט בלבד. נתוני IMU עם שלושה צירים לאוסף. אם הנתונים האלה גדולים מדי ולא ניתן לכלול אותם בבקשה, צריך להוסיף אותם למסלול CAMM של הסרטון. הנתונים האלה תמיד מקבלים עדיפות על פני נתוני CAMM מקבילים, אם הם קיימים.

processingState

enum (ProcessingState)

פלט בלבד. מצב העיבוד של הרצף הזה.

failureReason

enum (ProcessingFailureReason)

פלט בלבד. אם הרצף הזה מכיל paymentState = FAILED, תוצג בו הסיבה לכך. אם ה-processingState הוא ערך אחר כלשהו, השדה הזה לא יוגדר.

failureDetails

object (ProcessingFailureDetails)

פלט בלבד. אם הרצף הזה מוגדר כ-failureReason, ייתכן שיהיו פרטים נוספים על הכשל.

distanceMeters

number

פלט בלבד. המרחק המחושב של רצף התמונות במטרים.

sequenceBounds

object (LatLngBounds)

פלט בלבד. תיבה מלבנית המקיפה כל תמונה ברצף התמונות הזה.

viewCount

string (int64 format)

פלט בלבד. מספר הצפיות הכולל שקיבלו כל התמונות שפורסמו ברצף התמונות הזה.

filename

string

פלט בלבד. שם הקובץ של ההעלאה. לא כולל את נתיב הספרייה. האפשרות הזו זמינה רק אם הרצף הועלה לפלטפורמה שמספקת את שם הקובץ.

GpsSource

המקור העיקרי של מדידות GPS.

טיפוסים בני מנייה (enums)
PHOTO_SEQUENCE ל-GPS ב-RAWGpsTimeline יש עדיפות אם הוא קיים.
CAMERA_MOTION_METADATA_TRACK ל-GPS בערוץ המטא-נתונים של המצלמה (CAMM) יש עדיפות אם הוא קיים.

אימו

נתוני IMU מחיישני המכשיר.

ייצוג JSON
{
  "accelMpsps": [
    {
      object (Measurement3d)
    }
  ],
  "gyroRps": [
    {
      object (Measurement3d)
    }
  ],
  "magUt": [
    {
      object (Measurement3d)
    }
  ]
}
שדות
accelMpsps[]

object (Measurement3d)

מד התאוצה נמדד במטרים לשנייה ב^2 עם חותמות זמן גדלות ממכשירים.

gyroRps[]

object (Measurement3d)

מדידות הג'ירוסקופ ברדיאנים לשנייה עם חותמות זמן במכשירים שגדלות.

magUt[]

object (Measurement3d)

מדידות המגנטומטר של השדה המגנטי במיקרו-טסלה (uT) עם עלייה בחותמות הזמן ממכשירים.

מדידה3d

דגימה כללית של מדידת תלת ממד.

ייצוג JSON
{
  "captureTime": string,
  "x": number,
  "y": number,
  "z": number
}
שדות
captureTime

string (Timestamp format)

חותמת הזמן של מדידת ה-IMU.

חותמת זמן בפורמט "זולו" RFC3339 UTC, ברזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

x

number

מדידת החיישן בציר ה-x.

y

number

מדידת החיישן בציר ה-y.

z

number

מדידת החיישן בציר ה-z.

ProcessingState

מצב העיבוד של הרצף. המצבים משתנים באופן הבא:

     +-------------------------+
     |                         |
 +---v---+  +----------+  +----+----+
 |PENDING+-->PROCESSING+-->PROCESSED|
 +---+---+  +----+-----+  +----+----+
     |           |             |
     |        +--v---+         |
     +-------->FAILED<---------+
              +------+

הרצף עשוי לעבור לסטטוס 'נכשל' מכל מצב. בנוסף, בכל שלב ניתן לעבד מחדש רצף שעבר עיבוד.

טיפוסים בני מנייה (enums)
PROCESSING_STATE_UNSPECIFIED לא צוין מצב, זהו ערך ברירת המחדל.
PENDING עיבוד הרצף עוד לא התחיל.
PROCESSING הרצף נמצא כרגע בתהליך עיבוד.
PROCESSED העיבוד של הרצף הסתיים, כולל מיקום הצמצום.
FAILED עיבוד הרצף נכשל. לפרטים נוספים, אפשר לעיין ב'סיבת הכשל'.

ProcessingFailureReason

הסיבות האפשריות לכך שהעיבוד של PhotoSequence נכשל.

טיפוסים בני מנייה (enums)
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 אין מספיק נתונים בהעברה.

ProcessingFailureDetails

פרטים נוספים שנלווים לטיפוסים של אי-העיבוד. יש להשתמש תמיד בהודעה הזו בשילוב עם AcceptFailureReason, והערך שמוגדר בהודעה הזו צריך להתאים ל-failureReason.

ייצוג JSON
{

  // Union field details can be only one of the following:
  "insufficientGpsDetails": {
    object (InsufficientGpsFailureDetails)
  },
  "gpsDataGapDetails": {
    object (GpsDataGapFailureDetails)
  },
  "imuDataGapDetails": {
    object (ImuDataGapFailureDetails)
  },
  "notOutdoorsDetails": {
    object (NotOutdoorsFailureDetails)
  },
  "noOverlapGpsDetails": {
    object (NoOverlapGpsFailureDetails)
  }
  // End of list of possible types for union field details.
}
שדות
שדה איחוד details. רק קבוצה אחת של פרטים תוגדר, והיא חייבת להתאים לטיפוסים הטיפוסיים (enum) המתאימים ב-processingFailureReason. הערך של details יכול להיות רק אחת מהאפשרויות הבאות:
insufficientGpsDetails

object (InsufficientGpsFailureDetails)

למידע נוסף, ניתן לעיין בקטע InsufficientGpsFailureDetails.

gpsDataGapDetails

object (GpsDataGapFailureDetails)

פרטים נוספים זמינים בקטע GpsDataGapFailureDetails.

imuDataGapDetails

object (ImuDataGapFailureDetails)

מידע נוסף זמין ב-ImuDataGapFailureDetails.

notOutdoorsDetails

object (NotOutdoorsFailureDetails)

ראו NotOutdoorsFailureDetails.

noOverlapGpsDetails

object (NoOverlapGpsFailureDetails)

מידע נוסף זמין ב-NoOverlapGpsFailureDetails.

InsufficientGpsFailureDetails

פרטים שקשורים לעיבודFailureReason#INSUFFICIENT_GPS.

ייצוג JSON
{
  "gpsPointsFound": integer
}
שדות
gpsPointsFound

integer

מספר נקודות ה-GPS שנמצאו בסרטון.

GpsDataGapFailureDetails

פרטים שקשורים לעיבודFailureReason#GPS_DATA_GAP. אם קיימים מספר פערים בנתוני ה-GPS, יוצג כאן רק היעד עם משך הזמן הגבוה ביותר.

ייצוג JSON
{
  "gapDuration": string,
  "gapStartTime": string
}
שדות
gapDuration

string (Duration format)

משך הזמן של הפער בנתוני ה-GPS שנמצאו.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, המסתיים ב-'s'. דוגמה: "3.5s".

gapStartTime

string (Duration format)

הזמן היחסי (מתחילת שידור הווידאו) מרגע שהפער התחיל.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, המסתיים ב-'s'. דוגמה: "3.5s".

ImuDataGapFailureDetails

פרטים הקשורים לעיבודFailureReason#IMU_DATA_GAP. אם יש כמה פערים בנתונים של מכשיר IMU, רק המדד עם משך הזמן הארוך ביותר מדווח כאן.

ייצוג JSON
{
  "gapDuration": string,
  "gapStartTime": string
}
שדות
gapDuration

string (Duration format)

משך הפער בנתוני ה-IMU שנמצא.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, המסתיים ב-'s'. דוגמה: "3.5s".

gapStartTime

string (Duration format)

הזמן היחסי (מתחילת שידור הווידאו) מרגע שהפער התחיל.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, המסתיים ב-'s'. דוגמה: "3.5s".

NotOutdoorsFailureDetails

פרטים הקשורים לעיבודFailureReason#NOT_OUTDOORS. אם נמצאו כמה מסגרות מקורות, הפריים הראשון מתועד כאן.

ייצוג JSON
{
  "startTime": string
}
שדות
startTime

string (Duration format)

זמן יחסי (מתחילת שידור הווידאו) כאשר נמצאה פריים מקורה.

משך זמן בשניות עם עד תשע ספרות אחרי הנקודה העשרונית, המסתיים ב-'s'. דוגמה: "3.5s".

NoOverlapGpsFailureDetails

פרטים הקשורים ל-PhotoSequenceSequenceFailureReason#NO_OVERLAP_GPS.

ייצוג JSON
{
  "gpsStartTime": string,
  "gpsEndTime": string,
  "videoStartTime": string,
  "videoEndTime": string
}
שדות
gpsStartTime

string (Timestamp format)

שעת ההקלטה הראשונה של נקודת ה-GPS.

חותמת זמן בפורמט "זולו" RFC3339 UTC, ברזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

gpsEndTime

string (Timestamp format)

שעת ההקלטה האחרונה של נקודת ה-GPS.

חותמת זמן בפורמט "זולו" RFC3339 UTC, ברזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

videoStartTime

string (Timestamp format)

שעת ההתחלה של הסרטון.

חותמת זמן בפורמט "זולו" RFC3339 UTC, ברזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

videoEndTime

string (Timestamp format)

שעת הסיום של הסרטון.

חותמת זמן בפורמט "זולו" RFC3339 UTC, ברזולוציה של ננו-שנייה ועד תשע ספרות עשרוניות. דוגמאות: "2014-10-02T15:01:23Z" ו-"2014-10-02T15:01:23.045123456Z".

LatLngBounds

מלבן בקואורדינטות גיאוגרפיות.

ייצוג JSON
{
  "southwest": {
    object (LatLng)
  },
  "northeast": {
    object (LatLng)
  }
}
שדות
southwest

object (LatLng)

הפינה הדרום-מערבית של גבולות אלה.

northeast

object (LatLng)

הפינה הצפון-מזרחית של גבולות אלה.

InputType

צורות קלט של PhotoSequence.

טיפוסים בני מנייה (enums)
INPUT_TYPE_UNSPECIFIED לא צוין. השרת יחזיר google.rpc.Code.INVALID_ARGUMENT.
VIDEO וידאו 360.
XDM מטא-נתונים של מכשירים מורחבים, http://www.xdm.org