Method: photoSequence.create

클라이언트가 반환된 UploadRefPhotoSequence의 업로드를 완료하면 photoSequence.create는 동영상 또는 확장 가능 기기 메타데이터 (XDM, http://www.xdm.org/)에서 360도 파노라마 사진 시퀀스를 추출하여 Google 지도의 스트리트 뷰에 게시합니다.

photoSequence.createOperation.name 필드에 PhotoSequence ID가 설정된 Operation를 반환합니다.

이 메서드는 다음 오류 코드를 반환합니다.

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

출력 전용입니다. 사진 시퀀스의 고유 식별자입니다. 업로드가 비동기식으로 수행되는 경우 장기 실행 작업 ID 역할도 합니다.

photos[]

object (Photo)

출력 전용입니다. 타임스탬프가 증가하는 사진

uploadReference

object (UploadRef)

입력 전용입니다. 사진 시퀀스를 만들 때 필요합니다. 사진 시퀀스의 바이트 (동영상 형식)가 업로드된 리소스 이름입니다.

captureTimeOverride

string (Timestamp format)

선택사항입니다. 사진 시퀀스 캡처가 시작되는 절대 시간입니다. 사진 시퀀스가 동영상인 경우 동영상의 시작 시간입니다. 이 필드가 입력에 채워져 있으면 동영상 또는 XDM 파일의 캡처 시간이 재정의됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

uploadTime

string (Timestamp format)

출력 전용입니다. uSV 스토어 서비스에서 사진 시퀀스가 생성된 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

rawGpsTimeline[]

object (Pose)

입력 전용입니다. 각 사진과 시간이 동기화되지 않은 기기의 타임스탬프가 증가하는 원본 GPS 측정 이러한 원시 측정값은 각 프레임의 포즈를 추론하는 데 사용됩니다. InputType이 VIDEO이고 원시 GPS 측정값이 카메라 모션 메타데이터 트랙 (CAMM)에 없는 경우 입력에 필요합니다. 사용자는 원본 GPS 측정값이 원본 GpsTimeline과 카메라 모션 메타데이터 트랙 (CAMM)에 모두 제공되는 경우 gpsSource를 사용하여 우선 순위를 표시할 수 있습니다.

gpsSource

enum (GpsSource)

입력 전용입니다. 원본 GpsTimeline 및 카메라 모션 메타데이터 트랙 (CAMM)에 모두 GPS 측정값이 포함되어 있으면 어느 것이 우선하는지 표시합니다.

imu

object (Imu)

입력 전용입니다. 컬렉션의 3축 IMU 데이터 이 데이터가 너무 커서 요청에 넣을 수 없으면 동영상의 CAMM 트랙에 배치되어야 합니다. 이 데이터는 상응하는 CAMM 데이터(있는 경우)보다 항상 우선합니다.

processingState

enum (ProcessingState)

출력 전용입니다. 이 시퀀스의 처리 상태입니다.

failureReason

enum (ProcessingFailureReason)

출력 전용입니다. 이 시퀀스에 processState = FAILED가 있으면 실패 이유가 포함됩니다. ProcessingState가 다른 값인 경우 이 필드는 설정 해제됩니다.

failureDetails

object (ProcessingFailureDetails)

출력 전용입니다. 이 시퀀스에 failureReason가 설정된 경우 실패에 관한 추가 세부정보가 포함될 수 있습니다.

distanceMeters

number

출력 전용입니다. 사진 시퀀스의 계산된 거리입니다(단위: 미터).

sequenceBounds

object (LatLngBounds)

출력 전용입니다. 사진 시퀀스의 모든 이미지를 캡슐화하는 직사각형 상자입니다.

viewCount

string (int64 format)

출력 전용입니다. 이 PhotoSequence에 게시된 모든 이미지가 받은 총 조회수입니다.

filename

string

출력 전용입니다. 업로드 파일 이름입니다. 디렉터리 경로는 포함되지 않습니다. 파일 이름을 제공하는 플랫폼에 시퀀스를 업로드한 경우에만 사용할 수 있습니다.

GpsSource

GPS 측정의 기본 소스입니다.

열거형
PHOTO_SEQUENCE 원본 GpsTimeline의 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))입니다.

3일 측정

일반 3D 측정 샘플입니다.

JSON 표현
{
  "captureTime": string,
  "x": number,
  "y": number,
  "z": number
}
필드
captureTime

string (Timestamp format)

IMU 측정의 타임스탬프입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "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<---------+
              +------+

시퀀스는 모든 상태에서 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, 시간)가 누락되었거나 형식이 잘못되었거나 Google 시스템에서 파싱하지 못하는 기타 문제가 있을 수 있습니다.
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

ProcessingFailureReason 열거형에 수반되는 추가 세부정보입니다. 이 메시지는 항상 ProcessingFailureReason과 함께 사용해야 하며 이 메시지에 설정된 값 중 하나가 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. 세부정보 세트 하나만 설정되며, ProcessingFailureReason에 있는 enum과 일치해야 합니다. details은 다음 중 하나여야 합니다.
insufficientGpsDetails

object (InsufficientGpsFailureDetails)

불충분한 GpsFailureDetails를 참고하세요.

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 데이터에서 발견된 간격의 지속 시간입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

gapStartTime

string (Duration format)

간격이 시작된 상대적 시간 (동영상 스트림 시작 부분부터)입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

ImuDataGapFailureDetails

ProcessingFailureReason#IMU_DATA_GAP와 관련된 세부정보입니다. IMU 데이터 공백이 여러 개 있는 경우 기간이 가장 긴 데이터 공백만 여기에 보고됩니다.

JSON 표현
{
  "gapDuration": string,
  "gapStartTime": string
}
필드
gapDuration

string (Duration format)

발견된 IMU 데이터에서 간격의 지속 시간입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

gapStartTime

string (Duration format)

간격이 시작된 상대적 시간 (동영상 스트림 시작 부분부터)입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

NotOutdoorsFailureDetails

ProcessingFailureReason#NOT_OUTDOORS와 관련된 세부정보입니다. 실내 프레임이 여러 개 발견되면 첫 번째 프레임이 여기에 기록됩니다.

JSON 표현
{
  "startTime": string
}
필드
startTime

string (Duration format)

실내 프레임이 발견된 상대 시간 (동영상 스트림 시작 부분부터)입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

NoOverlapGpsFailureDetails

PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS와 관련된 세부정보입니다.

JSON 표현
{
  "gpsStartTime": string,
  "gpsEndTime": string,
  "videoStartTime": string,
  "videoEndTime": string
}
필드
gpsStartTime

string (Timestamp format)

처음 기록된 GPS 지점의 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

gpsEndTime

string (Timestamp format)

마지막으로 기록된 GPS 지점의 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

videoStartTime

string (Timestamp format)

동영상의 시작 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

videoEndTime

string (Timestamp format)

동영상의 종료 시간입니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "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의 입력 형식.

열거형
INPUT_TYPE_UNSPECIFIED 지정되지 않음 서버가 google.rpc.Code.INVALID_ARGUMENT를 반환합니다.
VIDEO 360도 동영상
XDM 확장 가능 기기 메타데이터, http://www.xdm.org