Method: photoSequence.create

หลังจากไคลเอ็นต์อัปโหลด PhotoSequence พร้อม UploadRef ที่ส่งคืนแล้ว photoSequence.create จะดึงลำดับภาพถ่าย 360 จากวิดีโอหรือ Extensible Device Metadata (XDM, http://www.xdm.org/) เพื่อเผยแพร่ไปยัง Street View ใน Google Maps

photoSequence.create จะแสดง Operation โดยมีรหัส PhotoSequence ที่ตั้งค่าไว้ในช่อง Operation.name

เมธอดนี้จะแสดงรหัสข้อผิดพลาดต่อไปนี้

คำขอ 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 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

เอาต์พุตเท่านั้น ตัวระบุที่ไม่ซ้ำกันสำหรับลำดับภาพ นอกจากนี้ยังทำหน้าที่เป็นรหัสการดำเนินการที่ใช้เวลานานหากอัปโหลดแบบไม่พร้อมกัน

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 ดิบไม่ได้อยู่ในแทร็กข้อมูลเมตาการเคลื่อนไหวของกล้อง (CAMM) ผู้ใช้สามารถระบุว่าควรใช้ข้อมูลใดก่อนโดยใช้ gpsSource หากมีการวัด GPS ดิบทั้งใน rawGpsTimeline และแทร็กข้อมูลเมตาการเคลื่อนไหวของกล้อง (CAMM)

gpsSource

enum (GpsSource)

อินพุตเท่านั้น หากทั้งไทม์ไลน์ rawGps และแทร็กข้อมูลเมตาการเคลื่อนไหวของกล้อง (CAMM) มีการวัด GPS ให้ระบุว่ารายการใดมีความสำคัญเหนือกว่า

imu

object (Imu)

อินพุตเท่านั้น ข้อมูล IMU แบบ 3 แกนสำหรับการเก็บรวบรวม หากข้อมูลนี้มีขนาดใหญ่เกินกว่าจะใส่ในคำขอได้ คุณควรใส่ข้อมูลนี้ในแทร็ก 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

Enum
PHOTO_SEQUENCE GPS ใน rawGpsTimeline จะมีความสำคัญเหนือกว่าหากมีอยู่
CAMERA_MOTION_METADATA_TRACK GPS ในแทร็กข้อมูลเมตาการเคลื่อนไหวของกล้อง (CAMM) จะมีความสำคัญเหนือกว่าหากมีอยู่

Imu

ข้อมูล IMU จากเซ็นเซอร์ของอุปกรณ์

การแสดง JSON
{
  "accelMpsps": [
    {
      object (Measurement3d)
    }
  ],
  "gyroRps": [
    {
      object (Measurement3d)
    }
  ],
  "magUt": [
    {
      object (Measurement3d)
    }
  ]
}
ช่อง
accelMpsps[]

object (Measurement3d)

การวัดค่าตัวตรวจวัดความเร่งในหน่วยเมตร/วินาที^2 พร้อมการประทับเวลาที่เพิ่มขึ้นจากอุปกรณ์

gyroRps[]

object (Measurement3d)

การวัดไจโรสโคปในหน่วยเรเดียน/วินาทีพร้อมการประทับเวลาที่เพิ่มขึ้นจากอุปกรณ์

magUt[]

object (Measurement3d)

การวัดสนามแม่เหล็กของแมกนีโตมิเตอร์ในหน่วยไมโครเทสลา (uT) โดยมีการประทับเวลาที่เพิ่มขึ้นจากอุปกรณ์

Measurement3d

ตัวอย่างการวัด 3 มิติทั่วไป

การแสดง 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<---------+
              +------+

ลำดับอาจเปลี่ยนจากสถานะใดก็ได้เป็น "ล้มเหลว" นอกจากนี้ คุณยังประมวลผลลำดับที่ประมวลผลแล้วอีกครั้งได้ทุกเมื่อ

Enum
PROCESSING_STATE_UNSPECIFIED ไม่ได้ระบุสถานะ ซึ่งเป็นค่าเริ่มต้น
PENDING ลำดับยังไม่เริ่มประมวลผล
PROCESSING ขณะนี้ระบบกำลังประมวลผลลำดับ
PROCESSED ลำดับประมวลผลเสร็จแล้ว รวมถึงการปรับตำแหน่ง
FAILED การประมวลผลลำดับไม่สำเร็จ ดูรายละเอียดเพิ่มเติมได้ที่ FailureReason

ProcessingFailureReason

สาเหตุที่เป็นไปได้ที่ทำให้ PhotoSequence ประมวลผลไม่สำเร็จ

Enum
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

รายละเอียดเพิ่มเติมที่มาพร้อมกับ Enum 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.
}
ช่อง
ฟิลด์ Union details ระบบจะตั้งค่ารายละเอียดเพียงชุดเดียว และต้องตรงกับ Enum ที่เกี่ยวข้องใน 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 ที่พบ

ระยะเวลาเป็นวินาทีที่มีเศษทศนิยมได้สูงสุด 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 แรกที่บันทึก

ใช้ 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

Enum
INPUT_TYPE_UNSPECIFIED ไม่ได้ระบุ เซิร์ฟเวอร์จะแสดง google.rpc.Code.INVALID_ARGUMENT
VIDEO วิดีโอ 360
XDM Extensible Device Metadata, http://www.xdm.org