Method: photoSequence.create

Setelah klien selesai mengupload PhotoSequence dengan UploadRef yang ditampilkan, photoSequence.create mengekstrak urutan foto 360 dari video atau Extensible Device Metadata (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 akan menampilkan kode error berikut:

Permintaan HTTP

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

URL menggunakan sintaksis gRPC Transcoding.

Parameter kueri

Parameter
inputType

enum (InputType)

Wajib. Bentuk 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 informasi selengkapnya, lihat Ringkasan OAuth 2.0.

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. ID ini juga berfungsi sebagai ID operasi yang berjalan lama jika upload dilakukan secara asinkron.

photos[]

object (Photo)

Hanya output. Foto dengan stempel waktu yang bertambah.

uploadReference

object (UploadRef)

Input saja. Wajib diisi 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 di input, kolom ini akan menggantikan waktu pengambilan dalam file video atau XDM.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

uploadTime

string (Timestamp format)

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

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

rawGpsTimeline[]

object (Pose)

Input saja. Pengukuran GPS mentah dengan peningkatan stempel waktu dari perangkat yang tidak disinkronkan dengan setiap foto sesuai waktu. Pengukuran mentah ini akan digunakan untuk menyimpulkan pose setiap frame. Wajib dalam input jika InputType adalah VIDEO dan pengukuran GPS mentah tidak dalam Trek Metadata Gerakan Kamera (CAMM). Pengguna dapat menunjukkan mana yang diprioritaskan menggunakan gpsSource jika pengukuran GPS mentah disediakan di rawGpsTimeline dan Camera Motion Metadata Track (CAMM).

gpsSource

enum (GpsSource)

Input saja. Jika rawGpsTimeline dan Camera Motion Metadata Track (CAMM) berisi pengukuran GPS, tunjukkan mana yang diprioritaskan.

imu

object (Imu)

Input saja. Data IMU tiga sumbu untuk koleksi. Jika data ini terlalu besar untuk dimasukkan ke dalam permintaan, data tersebut harus ditempatkan di trek 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, ini akan berisi alasan kegagalannya. Jika processingState adalah nilai lain, kolom ini akan dibatalkan penetapannya.

failureDetails

object (ProcessingFailureDetails)

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

distanceMeters

number

Hanya output. Jarak yang dihitung dari urutan foto dalam meter.

sequenceBounds

object (LatLngBounds)

Hanya output. Kotak persegi panjang yang merangkum setiap gambar dalam urutan foto ini.

viewCount

string (int64 format)

Hanya output. Total jumlah tampilan yang telah diterima oleh semua gambar yang dipublikasikan di PhotoSequence ini.

filename

string

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

GpsSource

Sumber utama pengukuran GPS.

Enum
PHOTO_SEQUENCE GPS di rawGpsTimeline akan diprioritaskan jika ada.
CAMERA_MOTION_METADATA_TRACK GPS di Trek Metadata Gerakan Kamera (CAMM) akan diprioritaskan jika ada.

Imu

Data IMU dari sensor perangkat.

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

object (Measurement3d)

Akselerometer mengukur dalam meter/dtk^2 dengan peningkatan stempel waktu dari perangkat.

gyroRps[]

object (Measurement3d)

Pengukuran giroskop dalam radian/dtk dengan peningkatan stempel waktu dari perangkat.

magUt[]

object (Measurement3d)

Pengukuran magnetometer medan magnet dalam mikrotesla (uT) dengan peningkatan stempel waktu dari perangkat.

Pengukuran3d

Contoh pengukuran 3D umum.

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

string (Timestamp format)

Stempel waktu pengukuran IMU.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

x

number

Pengukuran sensor pada sumbu x.

y

number

Pengukuran sensor dalam sumbu y.

z

number

Pengukuran sensor dalam sumbu z.

ProcessingState

Status pemrosesan urutan. Status tersebut bergerak sebagai berikut:

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

Urutan dapat berpindah ke FAILED dari keadaan mana 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 posisi penyempurnaan.
FAILED Urutan gagal diproses. Lihat FailureAlasan 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 tersebut dihapus karena alasan kebijakan.
CORRUPT_VIDEO File video rusak atau tidak dapat didekode.
INTERNAL Terjadi kegagalan permanen pada sistem yang mendasarinya.
INVALID_VIDEO_FORMAT Format video tidak valid atau tidak didukung.
INVALID_VIDEO_DIMENSIONS Rasio tinggi lebar gambar yang tidak valid ditemukan.
INVALID_CAPTURE_TIME Waktu pengambilan tidak valid. Stempel waktu berasal dari waktu yang akan datang.
GPS_DATA_GAP Data GPS berisi jeda lebih dari 5 detik.
JUMPY_GPS Data GPS terlalu tidak menentu untuk diproses.
INVALID_IMU Data IMU (Akselerometer, Giroskop, dll.) tidak valid. Kolom tersebut mungkin tidak memiliki kolom yang wajib diisi (x, y, z, atau waktu), tidak diformat dengan benar, atau ada masalah lain yang mencegah sistem kami menguraikannya.
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 celah dengan durasi lebih dari 0,1 detik.
UNSUPPORTED_CAMERA Kamera tidak didukung.
NOT_OUTDOORS Beberapa bingkai berada di dalam ruangan, dan ini tidak didukung.
INSUFFICIENT_VIDEO_FRAMES Frame video tidak cukup.
INSUFFICIENT_MOVEMENT Data pemindahan tidak cukup.

ProcessingFailureDetails

Detail tambahan untuk menyertai enum ProcessingFailureAlasan. Pesan ini diharapkan selalu digunakan bersamaan dengan ProcessingFailureAlasan, dan salah satu nilai yang ditetapkan dalam pesan ini harus cocok dengan FailureAlasan.

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 kumpulan detail yang akan ditetapkan, dan harus cocok dengan enum yang sesuai di ProcessingFailureAlasan. details hanya dapat berupa salah satu dari berikut:
insufficientGpsDetails

object (InsufficientGpsFailureDetails)

Lihat Tidak MemadaiGpsFailureDetails.

gpsDataGapDetails

object (GpsDataGapFailureDetails)

Lihat GpsDataGapFailureDetails.

imuDataGapDetails

object (ImuDataGapFailureDetails)

Lihat ImuDataGapFailureDetails.

notOutdoorsDetails

object (NotOutdoorsFailureDetails)

Lihat NotOutdoorsFailureDetails.

noOverlapGpsDetails

object (NoOverlapGpsFailureDetails)

Lihat NoOverlapGpsFailureDetails.

InsufficientGpsFailureDetails

Detail terkait ProcessingFailureAlasan#INSUFFICIENT_GPS.

Representasi JSON
{
  "gpsPointsFound": integer
}
Kolom
gpsPointsFound

integer

Jumlah titik GPS yang ditemukan di video.

GpsDataGapFailureDetails

Detail terkait ProcessingFailureAlasan#GPS_DATA_GAP. Jika ada beberapa kesenjangan data GPS, hanya kesenjangan dengan durasi terbesar yang dilaporkan di sini.

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

string (Duration format)

Durasi celah 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 ProcessingFailureAlasan#IMU_DATA_GAP. Jika ada beberapa kesenjangan data IMU, hanya kesenjangan data dengan durasi terbesar yang dilaporkan di sini.

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

string (Duration format)

Durasi celah 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 terkait ProcessingFailureAlasan#NOT_OUTDOORS. Jika ada beberapa bingkai dalam ruangan, 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 PhotoSequenceProcessingFailureAlasan#NO_OVERLAP_GPS.

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

string (Timestamp format)

Waktu titik GPS pertama yang direkam.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

gpsEndTime

string (Timestamp format)

Waktu titik GPS yang terakhir direkam.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

videoStartTime

string (Timestamp format)

Waktu mulai video.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

videoEndTime

string (Timestamp format)

Waktu berakhir video.

Stempel waktu dalam RFC3339 UTC "Zulu" , dengan resolusi nanodetik dan hingga sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

LatLngBounds

Persegi panjang dalam koordinat geografis.

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

object (LatLng)

Sudut barat daya dari batas tersebut.

northeast

object (LatLng)

Sudut timur laut batas tersebut.

InputType

Bentuk input PhotoSequence.

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