Method: photoSequence.create

Setelah klien selesai mengupload PhotoSequence dengan UploadRef yang ditampilkan, photoSequence.create mengekstrak urutan foto 360 dari video atau Metadata Perangkat yang Dapat Diperluas (XDM, http://www.xdm.org/) untuk dipublikasikan ke Street View di Google Maps.

photoSequence.create menampilkan Operation, dengan Id PhotoSequence yang ditetapkan di kolom Operation.name.

Metode ini menampilkan kode error berikut:

Permintaan HTTP

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

URL ini menggunakan sintaksis gRPC Transcoding.

Parameter kueri

Parameter
inputType

enum (InputType)

Wajib. Formulir input PhotoSequence.

Isi permintaan

Isi permintaan memuat instance PhotoSequence.

Isi respons

Jika berhasil, isi respons memuat instance Operation yang baru dibuat.

Cakupan otorisasi

Memerlukan cakupan OAuth berikut:

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

Untuk mengetahui informasi selengkapnya, lihat OAuth 2.0 Overview.

PhotoSequence

Urutan foto 360 beserta metadata.

Representasi 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
}
Kolom
id

string

Hanya output. ID unik untuk urutan foto. Tindakan ini juga berfungsi sebagai ID operasi yang berjalan lama jika upload dilakukan secara asinkron.

photos[]

object (Photo)

Hanya output. Foto dengan stempel waktu yang meningkat.

uploadReference

object (UploadRef)

Hanya input. Diperlukan saat membuat urutan foto. Nama resource tempat byte urutan foto (dalam bentuk video) diupload.

captureTimeOverride

string (Timestamp format)

Opsional. Waktu absolut saat urutan foto mulai diambil. Jika urutan foto adalah video, ini adalah waktu mulai video. Jika kolom ini diisi dalam input, kolom ini akan menggantikan waktu pengambilan dalam file video atau XDM.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

uploadTime

string (Timestamp format)

Hanya output. Waktu urutan foto ini dibuat di layanan uSV Store.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

rawGpsTimeline[]

object (Pose)

Hanya input. Pengukuran GPS mentah dengan stempel waktu yang meningkat dari perangkat yang tidak disinkronkan waktunya dengan setiap foto. Pengukuran mentah ini akan digunakan untuk menyimpulkan pose setiap frame. Wajib ada di input jika InputType adalah VIDEO dan pengukuran GPS mentah tidak ada di Jalur Metadata Gerakan Kamera (CAMM). Pengguna dapat menunjukkan mana yang lebih diutamakan menggunakan gpsSource jika pengukuran GPS mentah disediakan di rawGpsTimeline dan Camera Motion Metadata Track (CAMM).

gpsSource

enum (GpsSource)

Hanya input. Jika rawGpsTimeline dan Camera Motion Metadata Track (CAMM) berisi pengukuran GPS, tunjukkan mana yang lebih diutamakan.

imu

object (Imu)

Hanya input. Data IMU tiga sumbu untuk pengumpulan. Jika data ini terlalu besar untuk dimasukkan dalam permintaan, data tersebut harus dimasukkan dalam jalur CAMM untuk video. Data ini selalu diprioritaskan daripada data CAMM yang setara, jika ada.

processingState

enum (ProcessingState)

Hanya output. Status pemrosesan urutan ini.

failureReason

enum (ProcessingFailureReason)

Hanya output. Jika urutan ini memiliki processingState = FAILED, urutan ini akan berisi alasan kegagalannya. Jika processingState adalah nilai lain, kolom ini tidak akan disetel.

failureDetails

object (ProcessingFailureDetails)

Hanya output. Jika urutan ini telah menetapkan failureReason, urutan ini dapat berisi detail tambahan tentang kegagalan.

distanceMeters

number

Hanya output. Jarak urutan foto yang dihitung dalam meter.

sequenceBounds

object (LatLngBounds)

Hanya output. Kotak persegi panjang yang mencakup setiap gambar dalam rangkaian foto ini.

viewCount

string (int64 format)

Hanya output. Jumlah total penayangan yang diterima semua gambar yang dipublikasikan dalam PhotoSequence ini.

filename

string

Hanya output. Nama file upload. Tidak menyertakan jalur direktori. Hanya tersedia jika urutan diupload di platform yang menyediakan nama file.

GpsSource

Sumber utama pengukuran GPS.

Enum
PHOTO_SEQUENCE GPS di rawGpsTimeline lebih diprioritaskan jika ada.
CAMERA_MOTION_METADATA_TRACK GPS di Jalur Metadata Gerakan Kamera (CAMM) lebih diutamakan jika ada.

Imu

Data IMU dari sensor perangkat.

Representasi JSON
{
  "accelMpsps": [
    {
      object (Measurement3d)
    }
  ],
  "gyroRps": [
    {
      object (Measurement3d)
    }
  ],
  "magUt": [
    {
      object (Measurement3d)
    }
  ]
}
Kolom
accelMpsps[]

object (Measurement3d)

Pengukuran akselerometer dalam meter/detik^2 dengan stempel waktu yang meningkat dari perangkat.

gyroRps[]

object (Measurement3d)

Pengukuran giroskop dalam radian/detik dengan stempel waktu yang meningkat dari perangkat.

magUt[]

object (Measurement3d)

Pengukuran magnetometer medan magnet dalam satuan mikrotesla (uT) dengan stempel waktu yang meningkat dari perangkat.

Measurement3d

Contoh pengukuran 3D generik.

Representasi JSON
{
  "captureTime": string,
  "x": number,
  "y": number,
  "z": number
}
Kolom
captureTime

string (Timestamp format)

Stempel waktu pengukuran IMU.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

x

number

Pengukuran sensor pada sumbu x.

y

number

Pengukuran sensor pada sumbu y.

z

number

Pengukuran sensor pada sumbu z.

ProcessingState

Status pemrosesan urutan. Statusnya berubah sebagai berikut:

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

Urutan dapat beralih ke GAGAL dari status apa pun. Selain itu, urutan yang diproses dapat diproses ulang kapan saja.

Enum
PROCESSING_STATE_UNSPECIFIED Status tidak ditentukan, ini adalah nilai default.
PENDING Urutan belum mulai diproses.
PROCESSING Urutan saat ini sedang diproses.
PROCESSED Urutan telah selesai diproses, termasuk menyempurnakan posisi.
FAILED Pemrosesan urutan gagal. Lihat FailureReason untuk mengetahui detail selengkapnya.

ProcessingFailureReason

Kemungkinan alasan PhotoSequence ini gagal diproses.

Enum
PROCESSING_FAILURE_REASON_UNSPECIFIED Alasan kegagalan tidak ditentukan, ini adalah nilai default.
LOW_RESOLUTION Resolusi frame video terlalu kecil.
DUPLICATE Video ini telah diupload sebelumnya.
INSUFFICIENT_GPS Titik GPS terlalu sedikit.
NO_OVERLAP_GPS Tidak ada tumpang-tindih antara jangka waktu trek GPS dan jangka waktu video.
INVALID_GPS GPS tidak valid (misalnya, semua titik GPS berada di (0,0))
FAILED_TO_REFINE_POSITIONS Urutan foto tidak dapat ditemukan secara akurat di dunia.
TAKEDOWN Urutan dihapus karena alasan kebijakan.
CORRUPT_VIDEO File video rusak atau tidak dapat didekode.
INTERNAL Terjadi kegagalan permanen di sistem pokok.
INVALID_VIDEO_FORMAT Format video tidak valid atau tidak didukung.
INVALID_VIDEO_DIMENSIONS Rasio lebar tinggi gambar tidak valid ditemukan.
INVALID_CAPTURE_TIME Waktu pengambilan tidak valid. Stempel waktu tidak boleh berupa waktu yang akan datang.
GPS_DATA_GAP Data GPS berisi bagian kosong berdurasi lebih dari 5 detik.
JUMPY_GPS Data GPS terlalu tidak menentu untuk diproses.
INVALID_IMU Data IMU (Akselerometer, Giroskop, dll.) tidak valid. Data mungkin tidak memiliki kolom wajib diisi (x, y, z, atau waktu), mungkin tidak diformat dengan benar, atau masalah lain yang mencegah sistem kami memprosesnya.
INSUFFICIENT_IMU Poin IMU terlalu sedikit.
INSUFFICIENT_OVERLAP_TIME_SERIES Tumpang-tindih yang tidak memadai dalam jangka waktu antara GPS, IMU, dan data deret waktu lainnya.
IMU_DATA_GAP Data IMU (Akselerometer, Giroskop, dll.) berisi bagian kosong berdurasi lebih dari 0,1 detik.
UNSUPPORTED_CAMERA Kamera tidak didukung.
NOT_OUTDOORS Beberapa frame berada di dalam ruangan, yang tidak didukung.
INSUFFICIENT_VIDEO_FRAMES Frame video tidak cukup.
INSUFFICIENT_MOVEMENT Data pergerakan tidak cukup.
MAST_DOWN Tiang turun.
CAMERA_COVERED Kamera terhalang.

ProcessingFailureDetails

Detail tambahan untuk menyertai enum ProcessingFailureReason. Pesan ini diharapkan selalu digunakan bersama dengan ProcessingFailureReason, dan nilai oneof yang ditetapkan dalam pesan ini harus cocok dengan FailureReason.

Representasi 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.
}
Kolom
Kolom union details. Hanya satu set detail yang akan ditetapkan, dan harus cocok dengan enum yang sesuai di ProcessingFailureReason. details hanya dapat berupa salah satu dari berikut:
insufficientGpsDetails

object (InsufficientGpsFailureDetails)

Lihat InsufficientGpsFailureDetails.

gpsDataGapDetails

object (GpsDataGapFailureDetails)

Lihat GpsDataGapFailureDetails.

imuDataGapDetails

object (ImuDataGapFailureDetails)

Lihat ImuDataGapFailureDetails.

notOutdoorsDetails

object (NotOutdoorsFailureDetails)

Lihat NotOutdoorsFailureDetails.

noOverlapGpsDetails

object (NoOverlapGpsFailureDetails)

Lihat NoOverlapGpsFailureDetails.

InsufficientGpsFailureDetails

Detail terkait ProcessingFailureReason#INSUFFICIENT_GPS.

Representasi JSON
{
  "gpsPointsFound": integer
}
Kolom
gpsPointsFound

integer

Jumlah titik GPS yang ditemukan dalam video.

GpsDataGapFailureDetails

Detail terkait ProcessingFailureReason#GPS_DATA_GAP. Jika ada beberapa bagian kosong data GPS, hanya bagian dengan durasi terpanjang yang dilaporkan di sini.

Representasi JSON
{
  "gapDuration": string,
  "gapStartTime": string
}
Kolom
gapDuration

string (Duration format)

Durasi kesenjangan dalam data GPS yang ditemukan.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

gapStartTime

string (Duration format)

Waktu relatif (dari awal streaming video) saat jeda dimulai.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

ImuDataGapFailureDetails

Detail terkait ProcessingFailureReason#IMU_DATA_GAP. Jika ada beberapa jeda data IMU, hanya jeda dengan durasi terpanjang yang dilaporkan di sini.

Representasi JSON
{
  "gapDuration": string,
  "gapStartTime": string
}
Kolom
gapDuration

string (Duration format)

Durasi kesenjangan dalam data IMU yang ditemukan.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

gapStartTime

string (Duration format)

Waktu relatif (dari awal streaming video) saat jeda dimulai.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

NotOutdoorsFailureDetails

Detail yang terkait dengan ProcessingFailureReason#NOT_OUTDOORS. Jika ada beberapa frame dalam ruangan yang ditemukan, frame pertama akan direkam di sini.

Representasi JSON
{
  "startTime": string
}
Kolom
startTime

string (Duration format)

Waktu relatif (dari awal streaming video) saat frame dalam ruangan ditemukan.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

NoOverlapGpsFailureDetails

Detail terkait PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS.

Representasi JSON
{
  "gpsStartTime": string,
  "gpsEndTime": string,
  "videoStartTime": string,
  "videoEndTime": string
}
Kolom
gpsStartTime

string (Timestamp format)

Waktu titik GPS pertama direkam.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

gpsEndTime

string (Timestamp format)

Waktu titik GPS terakhir yang direkam.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

videoStartTime

string (Timestamp format)

Waktu mulai video.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

videoEndTime

string (Timestamp format)

Waktu berakhir video.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

LatLngBounds

Persegi panjang dalam koordinat geografis.

Representasi JSON
{
  "southwest": {
    object (LatLng)
  },
  "northeast": {
    object (LatLng)
  }
}
Kolom
southwest

object (LatLng)

Sudut barat daya batas ini.

northeast

object (LatLng)

Sudut timur laut batas ini.

InputType

Bentuk input PhotoSequence.

Enum
INPUT_TYPE_UNSPECIFIED Tidak ditentukan. Server akan menampilkan google.rpc.Code.INVALID_ARGUMENT.
VIDEO Video 360.
XDM Metadata Perangkat yang Dapat Diperluas, http://www.xdm.org