- HTTP 요청
- 쿼리 매개변수
- 요청 본문
- 응답 본문
- 승인 범위
- PhotoSequence
- GpsSource
- Imu
- Measurement3d
- ProcessingState
- ProcessingFailureReason
- ProcessingFailureDetails
- InsufficientGpsFailureDetails
- GpsDataGapFailureDetails
- ImuDataGapFailureDetails
- NotOutdoorsFailureDetails
- NoOverlapGpsFailureDetails
- LatLngBounds
- InputType
- 사용해 보기
클라이언트가 반환된 UploadRef으로 PhotoSequence 업로드를 완료하면 photoSequence.create는 Google 지도에서 스트리트 뷰에 게시할 동영상 또는 확장 가능한 기기 메타데이터 (XDM, http://www.xdm.org/)에서 360도 사진 시퀀스를 추출합니다.
photoSequence.create는 Operation.name 필드에 설정된 PhotoSequence ID가 있는 Operation를 반환합니다.
이 메서드는 다음 오류 코드를 반환합니다.
- 요청 형식이 잘못된 경우
google.rpc.Code.INVALID_ARGUMENT - 업로드 참조가 없는 경우
google.rpc.Code.NOT_FOUND
HTTP 요청
POST https://streetviewpublish.googleapis.com/v1/photoSequence
URL은 gRPC 트랜스코딩 구문을 사용합니다.
쿼리 매개변수
| 매개변수 | |
|---|---|
inputType |
필수 항목입니다. |
요청 본문
요청 본문에 PhotoSequence의 인스턴스가 포함됩니다.
응답 본문
성공한 경우 응답 본문에 새로 생성된 Operation의 인스턴스가 포함됩니다.
승인 범위
다음 OAuth 범위가 필요합니다.
https://www.googleapis.com/auth/streetviewpublish
자세한 내용은 OAuth 2.0 Overview를 참조하세요.
PhotoSequence
메타데이터와 함께 제공되는 360도 사진 시퀀스
| JSON 표현 |
|---|
{ "id": string, "photos": [ { object ( |
| 필드 | |
|---|---|
id |
출력 전용입니다. 사진 시퀀스의 고유 식별자입니다. 비동기식으로 업로드하는 경우 장기 실행 작업 ID로도 사용됩니다. |
photos[] |
출력 전용입니다. 타임스탬프가 증가하는 사진 |
uploadReference |
입력 전용입니다. 사진 시퀀스를 만들 때 필요합니다. 사진 시퀀스 (동영상 형식)의 바이트가 업로드되는 리소스 이름입니다. |
captureTimeOverride |
선택사항입니다. 사진 시퀀스 캡처가 시작되는 절대 시간입니다. 사진 시퀀스가 동영상인 경우 동영상의 시작 시간입니다. 이 필드가 입력에 채워지면 동영상 또는 XDM 파일의 캡처 시간이 재정의됩니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
uploadTime |
출력 전용입니다. 이 사진 시퀀스가 uSV 스토어 서비스에서 생성된 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
rawGpsTimeline[] |
입력 전용입니다. 각 사진과 시간 동기화되지 않고 타임스탬프가 증가하는 기기의 원시 GPS 측정값입니다. 이러한 원시 측정값은 각 프레임의 포즈를 추론하는 데 사용됩니다. InputType이 VIDEO이고 원시 GPS 측정이 카메라 모션 메타데이터 트랙 (CAMM)에 없는 경우 입력에 필요합니다. 사용자는 원시 GPS 측정값이 rawGpsTimeline과 카메라 모션 메타데이터 트랙 (CAMM) 모두에 제공되는 경우 gpsSource를 사용하여 우선순위를 지정할 수 있습니다. |
gpsSource |
입력 전용입니다. rawGpsTimeline과 카메라 모션 메타데이터 트랙 (CAMM)에 모두 GPS 측정이 포함된 경우 우선하는 항목을 나타냅니다. |
imu |
입력 전용입니다. 수집을 위한 3축 IMU 데이터입니다. 이 데이터가 너무 커서 요청에 넣을 수 없는 경우 동영상의 CAMM 트랙에 넣어야 합니다. 이 데이터는 해당하는 CAMM 데이터가 있는 경우 항상 우선합니다. |
processingState |
출력 전용입니다. 이 시퀀스의 처리 상태입니다. |
failureReason |
출력 전용입니다. 이 시퀀스의 processingState가 FAILED인 경우 실패 이유가 포함됩니다. processingState가 다른 값인 경우 이 필드는 설정되지 않습니다. |
failureDetails |
출력 전용입니다. 이 시퀀스에 |
distanceMeters |
출력 전용입니다. 사진 시퀀스의 계산된 거리(미터)입니다. |
sequenceBounds |
출력 전용입니다. 이 사진 시퀀스의 모든 이미지를 캡슐화하는 직사각형 상자입니다. |
viewCount |
출력 전용입니다. 이 PhotoSequence에 게시된 모든 이미지가 받은 총 조회수입니다. |
filename |
출력 전용입니다. 업로드 파일의 파일 이름입니다. 디렉터리 경로는 포함되지 않습니다. 파일 이름을 제공하는 플랫폼에 시퀀스가 업로드된 경우에만 사용할 수 있습니다. |
GpsSource
GPS 측정의 기본 소스입니다.
| 열거형 | |
|---|---|
PHOTO_SEQUENCE |
rawGpsTimeline의 GPS가 있는 경우 우선 적용됩니다. |
CAMERA_MOTION_METADATA_TRACK |
카메라 모션 메타데이터 트랙 (CAMM)의 GPS가 있는 경우 우선합니다. |
Imu
기기 센서의 IMU 데이터입니다.
| JSON 표현 |
|---|
{ "accelMpsps": [ { object ( |
| 필드 | |
|---|---|
accelMpsps[] |
기기에서 타임스탬프가 증가하는 가속도계 측정값(미터/초^2)입니다. |
gyroRps[] |
기기에서 타임스탬프가 증가하는 자이로스코프 측정값(라디안/초)입니다. |
magUt[] |
기기에서 타임스탬프가 증가하는 자기장의 자기계 측정값(마이크로테슬라(uT))입니다. |
Measurement3d
일반 3D 측정 샘플입니다.
| JSON 표현 |
|---|
{ "captureTime": string, "x": number, "y": number, "z": number } |
| 필드 | |
|---|---|
captureTime |
IMU 측정의 타임스탬프입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
x |
x축의 센서 측정값입니다. |
y |
y축의 센서 측정값입니다. |
z |
z축의 센서 측정값입니다. |
ProcessingState
시퀀스의 처리 상태입니다. 상태는 다음과 같이 이동합니다.
+-------------------------+
| |
+---v---+ +----------+ +----+----+
|PENDING+-->PROCESSING+-->PROCESSED|
+---+---+ +----+-----+ +----+----+
| | |
| +--v---+ |
+-------->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 |
이동 데이터가 충분하지 않습니다. |
MAST_DOWN |
마스트가 내려져 있습니다. |
CAMERA_COVERED |
카메라가 가려져 있습니다. |
ProcessingFailureDetails
ProcessingFailureReason enum에 추가되는 세부정보입니다. 이 메시지는 항상 ProcessingFailureReason과 함께 사용해야 하며 이 메시지에 설정된 oneof 값은 FailureReason과 일치해야 합니다.
| JSON 표현 |
|---|
{ // Union field |
| 필드 | |
|---|---|
통합 필드 details. 세부정보는 하나만 설정되며 ProcessingFailureReason의 해당 enum과 일치해야 합니다. details은 다음 중 하나여야 합니다. |
|
insufficientGpsDetails |
InsufficientGpsFailureDetails를 참고하세요. |
gpsDataGapDetails |
GpsDataGapFailureDetails를 참고하세요. |
imuDataGapDetails |
ImuDataGapFailureDetails를 참고하세요. |
notOutdoorsDetails |
NotOutdoorsFailureDetails를 참고하세요. |
noOverlapGpsDetails |
NoOverlapGpsFailureDetails를 참고하세요. |
InsufficientGpsFailureDetails
ProcessingFailureReason#INSUFFICIENT_GPS와 관련된 세부정보입니다.
| JSON 표현 |
|---|
{ "gpsPointsFound": integer } |
| 필드 | |
|---|---|
gpsPointsFound |
동영상에서 발견된 GPS 포인트 수입니다. |
GpsDataGapFailureDetails
ProcessingFailureReason#GPS_DATA_GAP과 관련된 세부정보입니다. GPS 데이터 간격이 여러 개 있는 경우 기간이 가장 긴 간격만 여기에 보고됩니다.
| JSON 표현 |
|---|
{ "gapDuration": string, "gapStartTime": string } |
| 필드 | |
|---|---|
gapDuration |
발견된 GPS 데이터의 간격 기간입니다. 소수점 아래가 최대 9자리까지이고 ' |
gapStartTime |
격차가 시작된 시점의 상대 시간 (동영상 스트림 시작부터)입니다. 소수점 아래가 최대 9자리까지이고 ' |
ImuDataGapFailureDetails
ProcessingFailureReason#IMU_DATA_GAP과 관련된 세부정보입니다. IMU 데이터 격차가 여러 개 있는 경우 기간이 가장 긴 격차만 여기에 보고됩니다.
| JSON 표현 |
|---|
{ "gapDuration": string, "gapStartTime": string } |
| 필드 | |
|---|---|
gapDuration |
발견된 IMU 데이터의 간격 기간입니다. 소수점 아래가 최대 9자리까지이고 ' |
gapStartTime |
격차가 시작된 시점의 상대 시간 (동영상 스트림 시작부터)입니다. 소수점 아래가 최대 9자리까지이고 ' |
NotOutdoorsFailureDetails
ProcessingFailureReason#NOT_OUTDOORS와 관련된 세부정보입니다. 실내 프레임이 여러 개 발견되면 첫 번째 프레임이 여기에 기록됩니다.
| JSON 표현 |
|---|
{ "startTime": string } |
| 필드 | |
|---|---|
startTime |
실내 프레임이 발견된 시점의 상대 시간 (동영상 스트림 시작부터)입니다. 소수점 아래가 최대 9자리까지이고 ' |
NoOverlapGpsFailureDetails
PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS와 관련된 세부정보입니다.
| JSON 표현 |
|---|
{ "gpsStartTime": string, "gpsEndTime": string, "videoStartTime": string, "videoEndTime": string } |
| 필드 | |
|---|---|
gpsStartTime |
처음 기록된 GPS 포인트의 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
gpsEndTime |
마지막으로 기록된 GPS 포인트의 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
videoStartTime |
동영상의 시작 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
videoEndTime |
동영상 종료 시간입니다. 생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 |
LatLngBounds
지리 좌표의 직사각형입니다.
| JSON 표현 |
|---|
{ "southwest": { object ( |
| 필드 | |
|---|---|
southwest |
이 경계의 남서쪽 모서리입니다. |
northeast |
이 경계의 북동쪽 모서리입니다. |
InputType
PhotoSequence의 입력 형식입니다.
| 열거형 | |
|---|---|
INPUT_TYPE_UNSPECIFIED |
지정되지 않음 서버는 google.rpc.Code.INVALID_ARGUMENT를 반환합니다. |
VIDEO |
360도 동영상 |
XDM |
Extensible Device Metadata, http://www.xdm.org |