Method: photoSequence.create

クライアントが返された UploadRef を使用して PhotoSequence のアップロードを完了すると、photoSequence.create は動画または拡張デバイス メタデータ(XDM、http://www.xdm.org/)から 360 度写真のシーケンスを抽出し、Google マップのストリートビューに公開します。

photoSequence.createOperation を返します。この OperationOperation.name フィールドには PhotoSequence Id が設定されています。

このメソッドは、次のエラーコードを返します。

HTTP リクエスト

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

この URL は gRPC Transcoding 構文を使用します。

クエリ パラメータ

パラメータ
inputType

enum (InputType)

必須。PhotoSequence の入力形式。

リクエストの本文

リクエストの本文には PhotoSequence のインスタンスが含まれます。

レスポンスの本文

成功した場合、レスポンスの本文には、新しく作成された Operation のインスタンスが含まれます。

認可スコープ

次の OAuth スコープが必要です。

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

詳細については、OAuth 2.0 Overview をご覧ください。

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

出力専用。フォト シーケンスの一意の識別子。アップロードが非同期で実行される場合、これは長時間実行オペレーション ID としても機能します。

photos[]

object (Photo)

出力専用。タイムスタンプが増加している写真。

uploadReference

object (UploadRef)

入力専用。フォト シーケンスを作成する際に必要です。写真シーケンス(動画形式)のバイトがアップロードされるリソース名。

captureTimeOverride

string (Timestamp format)

省略可。写真シーケンスのキャプチャが開始される絶対時刻。写真シーケンスが動画の場合、これは動画の開始時間です。このフィールドが入力で指定されている場合、動画または XDM ファイルのキャプチャ時間がオーバーライドされます。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

uploadTime

string (Timestamp format)

出力専用。このフォト シーケンスが uSV Store サービスで作成された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

rawGpsTimeline[]

object (Pose)

入力専用。各写真と時刻が同期されていない、タイムスタンプが増加するデバイスからの GPS 生データ。これらの生の測定値は、各フレームのポーズを推測するために使用されます。InputType が VIDEO で、未加工の GPS 測定値が Camera Motion Metadata Track(CAMM)にない場合、入力で必須です。ユーザーは、rawGpsTimeline と Camera Motion Metadata Track(CAMM)の両方で未加工の GPS 測定値が提供されている場合、gpsSource を使用してどちらを優先するかを指定できます。

gpsSource

enum (GpsSource)

入力専用。rawGpsTimeline とカメラ モーション メタデータ トラック(CAMM)の両方に GPS 測定値が含まれている場合は、どちらが優先されるかを示します。

imu

object (Imu)

入力専用。収集用の 3 軸 IMU データ。このデータがリクエストに含めるには大きすぎる場合は、動画の CAMM トラックに含める必要があります。このデータは、同等の CAMM データが存在する場合、常にそのデータよりも優先されます。

processingState

enum (ProcessingState)

出力専用。このシーケンスの処理ステータス。

failureReason

enum (ProcessingFailureReason)

出力専用。このシーケンスの processingState が FAILED の場合、失敗した理由が含まれます。processingState が他の値の場合、このフィールドは設定されません。

failureDetails

object (ProcessingFailureDetails)

出力専用。このシーケンスで failureReason が設定されている場合、失敗に関する追加の詳細が含まれていることがあります。

distanceMeters

number

出力専用。写真シーケンスの計算された距離(メートル単位)。

sequenceBounds

object (LatLngBounds)

出力専用。この写真シーケンス内のすべての画像を囲む長方形のボックス。

viewCount

string (int64 format)

出力専用。この PhotoSequence 内の公開済み画像の合計閲覧数。

filename

string

出力専用。アップロードのファイル名。ディレクトリ パスは含まれません。ファイル名を提供するプラットフォームでシーケンスがアップロードされた場合にのみ使用できます。

GpsSource

GPS 測定の主なソース。

列挙型
PHOTO_SEQUENCE GPS が存在する場合は、rawGpsTimeline の GPS が優先されます。
CAMERA_MOTION_METADATA_TRACK カメラ モーション メタデータ トラック(CAMM)の GPS が存在する場合は、それが優先されます。

Imu

デバイス センサーからの IMU データ。

JSON 表現
{
  "accelMpsps": [
    {
      object (Measurement3d)
    }
  ],
  "gyroRps": [
    {
      object (Measurement3d)
    }
  ],
  "magUt": [
    {
      object (Measurement3d)
    }
  ]
}
フィールド
accelMpsps[]

object (Measurement3d)

デバイスからタイムスタンプが増加する順に取得された加速度計の測定値(メートル毎秒の 2 乗)。

gyroRps[]

object (Measurement3d)

デバイスから取得したタイムスタンプが増加するジャイロスコープの測定値(ラジアン/秒)。

magUt[]

object (Measurement3d)

デバイスからタイムスタンプが増加する磁場の強さをマイクロテスラ(uT)で測定した値。

Measurement3d

一般的な 3D 測定のサンプル。

JSON 表現
{
  "captureTime": string,
  "x": number,
  "y": number,
  "z": number
}
フィールド
captureTime

string (Timestamp format)

IMU 測定のタイムスタンプ。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

x

number

x 軸のセンサー測定値。

y

number

センサーの測定値(y 軸)。

z

number

z 軸のセンサー測定値。

ProcessingState

シーケンスの処理ステータス。状態は次のように移行します。

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

シーケンスは、どの状態からでも FAILED に移行する可能性があります。また、処理済みのシーケンスはいつでも再処理できます。

列挙型
PROCESSING_STATE_UNSPECIFIED 状態が指定されていません。これがデフォルト値です。
PENDING シーケンスの処理はまだ開始されていません。
PROCESSING シーケンスは現在処理中です。
PROCESSED シーケンスの処理(位置の調整を含む)が完了しました。
FAILED シーケンスの処理が失敗しました。詳細については、FailureReason をご覧ください。

ProcessingFailureReason

この PhotoSequence の処理が失敗した理由。

列挙型
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

ProcessingFailureReason 列挙型に付随する追加の詳細。このメッセージは常に ProcessingFailureReason と組み合わせて使用されることが想定されており、このメッセージで設定された oneof 値は 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。設定される詳細のセットは 1 つのみで、ProcessingFailureReason の対応する列挙型と一致する必要があります。details は次のいずれかになります。
insufficientGpsDetails

object (InsufficientGpsFailureDetails)

InsufficientGpsFailureDetails をご覧ください。

gpsDataGapDetails

object (GpsDataGapFailureDetails)

GpsDataGapFailureDetails をご覧ください。

imuDataGapDetails

object (ImuDataGapFailureDetails)

ImuDataGapFailureDetails をご覧ください。

notOutdoorsDetails

object (NotOutdoorsFailureDetails)

NotOutdoorsFailureDetails をご覧ください。

noOverlapGpsDetails

object (NoOverlapGpsFailureDetails)

NoOverlapGpsFailureDetails をご覧ください。

InsufficientGpsFailureDetails

ProcessingFailureReason#INSUFFICIENT_GPS に関連する詳細。

JSON 表現
{
  "gpsPointsFound": integer
}
フィールド
gpsPointsFound

integer

動画内で検出された GPS ポイントの数。

GpsDataGapFailureDetails

ProcessingFailureReason#GPS_DATA_GAP に関連する詳細。GPS データのギャップが複数ある場合は、最も期間の長いギャップのみがここに報告されます。

JSON 表現
{
  "gapDuration": string,
  "gapStartTime": string
}
フィールド
gapDuration

string (Duration format)

検出された GPS データのギャップの期間。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

gapStartTime

string (Duration format)

ギャップが開始した相対時間(動画ストリームの開始からの時間)。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

ImuDataGapFailureDetails

ProcessingFailureReason#IMU_DATA_GAP に関連する詳細。IMU データのギャップが複数ある場合は、最も期間の長いギャップのみがここに報告されます。

JSON 表現
{
  "gapDuration": string,
  "gapStartTime": string
}
フィールド
gapDuration

string (Duration format)

検出された IMU データのギャップの期間。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

gapStartTime

string (Duration format)

ギャップが開始した相対時間(動画ストリームの開始からの時間)。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

NotOutdoorsFailureDetails

ProcessingFailureReason#NOT_OUTDOORS に関連する詳細。複数の屋内フレームが見つかった場合は、最初のフレームがここに記録されます。

JSON 表現
{
  "startTime": string
}
フィールド
startTime

string (Duration format)

屋内フレームが見つかった相対時間(動画ストリームの開始からの時間)。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

NoOverlapGpsFailureDetails

PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS に関連する詳細。

JSON 表現
{
  "gpsStartTime": string,
  "gpsEndTime": string,
  "videoStartTime": string,
  "videoEndTime": string
}
フィールド
gpsStartTime

string (Timestamp format)

最初に記録された GPS ポイントの時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

gpsEndTime

string (Timestamp format)

最後に記録された GPS ポイントの時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

videoStartTime

string (Timestamp format)

動画の開始時間。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

videoEndTime

string (Timestamp format)

動画の終了時間。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

LatLngBounds

地理座標の長方形。

JSON 表現
{
  "southwest": {
    object (LatLng)
  },
  "northeast": {
    object (LatLng)
  }
}
フィールド
southwest

object (LatLng)

この境界の南西隅。

northeast

object (LatLng)

この境界の北東隅。

InputType

PhotoSequence の入力形式。

列挙型
INPUT_TYPE_UNSPECIFIED 指定なし。サーバーは google.rpc.Code.INVALID_ARGUMENT を返します。
VIDEO 360°動画。
XDM Extensible Device Metadata、http://www.xdm.org