- HTTP অনুরোধ
- কোয়েরি প্যারামিটার
- অনুরোধের মূল অংশ
- প্রতিক্রিয়া মূল অংশ
- অনুমোদনের সুযোগ
- ফটোসিকোয়েন্স
- জিপিএসসোর্স
- ইমু
- পরিমাপ 3d
- প্রক্রিয়াকরণ অবস্থা
- প্রক্রিয়াকরণব্যর্থতার কারণ
- প্রক্রিয়াকরণ ব্যর্থতাবিস্তারিত
- অপর্যাপ্ত জিপিএস ব্যর্থতাবিস্তারিত
- GpsDataGapFailureবিস্তারিত
- ইমুডেটাগ্যাপফেইলুরবিস্তারিত
- বাইরে ব্যর্থতাবিস্তারিত
- NoOverlapGpsFailureবিস্তারিত
- অক্ষাংশ সীমানা
- ইনপুট টাইপ
- চেষ্টা করে দেখুন!
ক্লায়েন্ট যখন UploadRef রিটার্ন করে PhotoSequence আপলোড করা শেষ করে, তখন photoSequence.create একটি ভিডিও বা এক্সটেনসিবল ডিভাইস মেটাডেটা (XDM, http://www.xdm.org/ ) থেকে 360 টি ছবির একটি সিকোয়েন্স বের করে Google Maps-এর Street View-এ প্রকাশ করে।
photoSequence.create একটি Operation প্রদান করে, যেখানে Operation.name ক্ষেত্রে PhotoSequence Id সেট করা থাকে।
এই পদ্ধতিটি নিম্নলিখিত ত্রুটি কোডগুলি ফেরত দেয়:
- অনুরোধটি ত্রুটিপূর্ণ হলে
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 .
ফটোসিকোয়েন্স
মেটাডেটা সহ ৩৬০° ছবির একটি ক্রম।
| JSON উপস্থাপনা |
|---|
{ "id": string, "photos": [ { object ( |
| ক্ষেত্র | |
|---|---|
id | শুধুমাত্র আউটপুট। ছবির সিকোয়েন্সের জন্য অনন্য শনাক্তকারী। আপলোডিং অ্যাসিঙ্ক্রোনাসভাবে করা হলে এটি দীর্ঘমেয়াদী অপারেশন আইডি হিসেবেও কাজ করে। |
photos[] | শুধুমাত্র আউটপুট। ক্রমবর্ধমান টাইমস্ট্যাম্প সহ ছবি। |
uploadReference | শুধুমাত্র ইনপুট। ছবির সিকোয়েন্স তৈরি করার সময় প্রয়োজন। রিসোর্সের নাম যেখানে ছবির সিকোয়েন্সের বাইট (ভিডিও আকারে) আপলোড করা হয়। |
captureTimeOverride | ঐচ্ছিক। ছবির ক্রমটি ধারণ শুরু হওয়ার পরম সময়। যদি ছবির ক্রমটি একটি ভিডিও হয়, তাহলে এটি ভিডিওর শুরুর সময়। যদি এই ক্ষেত্রটি ইনপুটে পূর্ণ করা হয়, তাহলে এটি ভিডিও বা XDM ফাইলের ক্যাপচার সময়কে ওভাররাইড করে। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: |
uploadTime | শুধুমাত্র আউটপুট। uSV স্টোর পরিষেবাতে এই ছবির ক্রমটি তৈরির সময়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: |
rawGpsTimeline[] | শুধুমাত্র ইনপুট। ডিভাইস থেকে বর্ধিত টাইমস্ট্যাম্প সহ কাঁচা জিপিএস পরিমাপ যা প্রতিটি ছবির সাথে সময় সিঙ্ক করা হয় না। এই কাঁচা পরিমাপগুলি প্রতিটি ফ্রেমের ভঙ্গি অনুমান করতে ব্যবহার করা হবে। ইনপুট টাইপ যখন VIDEO হয় এবং কাঁচা জিপিএস পরিমাপ ক্যামেরা মোশন মেটাডেটা ট্র্যাক (CAMM) তে না থাকে তখন ইনপুট প্রয়োজন। rawGpsTimeline এবং ক্যামেরা মোশন মেটাডেটা ট্র্যাক (CAMM) উভয় ক্ষেত্রে কাঁচা জিপিএস পরিমাপ সরবরাহ করা হলে ব্যবহারকারী gpsSource ব্যবহার করে কোনটি অগ্রাধিকার পাবে তা নির্দেশ করতে পারেন। |
gpsSource | শুধুমাত্র ইনপুট। যদি rawGpsTimeline এবং ক্যামেরা মোশন মেটাডেটা ট্র্যাক (CAMM) উভয়েই GPS পরিমাপ থাকে, তাহলে কোনটি অগ্রাধিকার পাবে তা নির্দেশ করুন। |
imu | শুধুমাত্র ইনপুট। সংগ্রহের জন্য তিন অক্ষের IMU ডেটা। যদি এই ডেটা অনুরোধে রাখার জন্য খুব বড় হয়, তাহলে এটি ভিডিওর CAMM ট্র্যাকে রাখা উচিত। এই ডেটা সর্বদা সমতুল্য CAMM ডেটার চেয়ে অগ্রাধিকার পায়, যদি এটি বিদ্যমান থাকে। |
processingState | শুধুমাত্র আউটপুট। এই ক্রমের প্রক্রিয়াকরণ অবস্থা। |
failureReason | শুধুমাত্র আউটপুট। যদি এই সিকোয়েন্সে processingState = FAILED থাকে, তাহলে এটি ব্যর্থ হওয়ার কারণ এতে থাকবে। যদি processingState অন্য কোনও মান হয়, তাহলে এই ক্ষেত্রটি আনসেট করা হবে। |
failureDetails | শুধুমাত্র আউটপুট। যদি এই ক্রমটিতে |
distanceMeters | শুধুমাত্র আউটপুট। ছবির ক্রমের গণনা করা দূরত্ব মিটারে। |
sequenceBounds | শুধুমাত্র আউটপুট। একটি আয়তক্ষেত্রাকার বাক্স যা এই ছবির ক্রমের প্রতিটি ছবিকে ধারণ করে। |
viewCount | শুধুমাত্র আউটপুট। এই ফটোসিকোয়েন্সের প্রকাশিত সমস্ত ছবি মোট কতবার দেখা হয়েছে। |
filename | শুধুমাত্র আউটপুট। আপলোডের ফাইলের নাম। ডিরেক্টরি পাথ অন্তর্ভুক্ত নয়। শুধুমাত্র তখনই উপলব্ধ যদি সিকোয়েন্সটি এমন একটি প্ল্যাটফর্মে আপলোড করা হয় যেখানে ফাইলের নাম দেওয়া আছে। |
জিপিএসসোর্স
জিপিএস পরিমাপের প্রাথমিক উৎস।
| এনামস | |
|---|---|
PHOTO_SEQUENCE | rawGpsTimeline-এ GPS থাকলে তা প্রাধান্য পায়। |
CAMERA_MOTION_METADATA_TRACK | ক্যামেরা মোশন মেটাডেটা ট্র্যাক (CAMM) তে GPS থাকলে তা প্রাধান্য পায়। |
ইমু
ডিভাইস সেন্সর থেকে IMU ডেটা।
| JSON উপস্থাপনা |
|---|
{ "accelMpsps": [ { object ( |
| ক্ষেত্র | |
|---|---|
accelMpsps[] | ডিভাইস থেকে ক্রমবর্ধমান টাইমস্ট্যাম্প সহ অ্যাক্সিলোমিটার পরিমাপ মিটার/সেকেন্ড^2 এ। |
gyroRps[] | ডিভাইস থেকে ক্রমবর্ধমান টাইমস্ট্যাম্প সহ জাইরোস্কোপ রেডিয়ান/সেকেন্ডে পরিমাপ করে। |
magUt[] | ডিভাইস থেকে ক্রমবর্ধমান টাইমস্ট্যাম্প সহ মাইক্রোটেসলা (uT) তে চৌম্বক ক্ষেত্রের ম্যাগনেটোমিটার পরিমাপ। |
পরিমাপ 3d
একটি জেনেরিক 3D পরিমাপের নমুনা।
| JSON উপস্থাপনা |
|---|
{ "captureTime": string, "x": number, "y": number, "z": number } |
| ক্ষেত্র | |
|---|---|
captureTime | IMU পরিমাপের টাইমস্ট্যাম্প। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: |
x | x অক্ষে সেন্সর পরিমাপ। |
y | y অক্ষে সেন্সর পরিমাপ। |
z | z অক্ষে সেন্সর পরিমাপ। |
প্রক্রিয়াকরণ অবস্থা
ক্রমের প্রক্রিয়াকরণ অবস্থা। অবস্থাগুলি নিম্নরূপে চলে:
+-------------------------+
| |
+---v---+ +----------+ +----+----+
|PENDING+-->PROCESSING+-->PROCESSED|
+---+---+ +----+-----+ +----+----+
| | |
| +--v---+ |
+-------->FAILED<---------+
+------+
ক্রমটি যেকোনো অবস্থা থেকে FAILED-তে স্থানান্তরিত হতে পারে। উপরন্তু, একটি প্রক্রিয়াকৃত ক্রম যেকোনো সময় পুনরায় প্রক্রিয়াজাত করা যেতে পারে।
| এনামস | |
|---|---|
PROCESSING_STATE_UNSPECIFIED | অবস্থাটি অনির্দিষ্ট, এটি ডিফল্ট মান। |
PENDING | ক্রমটি এখনও প্রক্রিয়াকরণ শুরু হয়নি। |
PROCESSING | ক্রমটি বর্তমানে প্রক্রিয়াধীন। |
PROCESSED | সিকোয়েন্সটি পরিশোধন অবস্থান সহ প্রক্রিয়াকরণ সম্পন্ন করেছে। |
FAILED | ক্রমটি প্রক্রিয়াকরণে ব্যর্থ হয়েছে। আরও বিস্তারিত জানার জন্য FailureReason দেখুন। |
প্রক্রিয়াকরণব্যর্থতার কারণ
এই PhotoSequence প্রক্রিয়া করতে ব্যর্থ হওয়ার সম্ভাব্য কারণগুলি।
| এনামস | |
|---|---|
PROCESSING_FAILURE_REASON_UNSPECIFIED | ব্যর্থতার কারণ নির্দিষ্ট করা নেই, এটি ডিফল্ট মান। |
LOW_RESOLUTION | ভিডিও ফ্রেমের রেজোলিউশন খুব ছোট। |
DUPLICATE | এই ভিডিওটি আগেও আপলোড করা হয়েছে। |
INSUFFICIENT_GPS | খুব কম জিপিএস পয়েন্ট। |
NO_OVERLAP_GPS | জিপিএস ট্র্যাকের সময়সীমা এবং ভিডিওর সময়সীমার মধ্যে কোনও ওভারল্যাপ নেই। |
INVALID_GPS | জিপিএস অবৈধ (যেমন সমস্ত জিপিএস পয়েন্ট (0,0) এ আছে) |
FAILED_TO_REFINE_POSITIONS | ছবির ক্রমটি পৃথিবীতে সঠিকভাবে অবস্থিত করা যায়নি। |
TAKEDOWN | নীতিগত কারণে ক্রমটি সরিয়ে ফেলা হয়েছে। |
CORRUPT_VIDEO | ভিডিও ফাইলটি দূষিত ছিল অথবা ডিকোড করা যায়নি। |
INTERNAL | অন্তর্নিহিত সিস্টেমে একটি স্থায়ী ব্যর্থতা দেখা দিয়েছে। |
INVALID_VIDEO_FORMAT | ভিডিও ফর্ম্যাটটি অবৈধ অথবা অসমর্থিত। |
INVALID_VIDEO_DIMENSIONS | ছবির আকৃতির অনুপাত অবৈধ। |
INVALID_CAPTURE_TIME | অবৈধ ক্যাপচার সময়। টাইমস্ট্যাম্পগুলি ভবিষ্যতের ছিল। |
GPS_DATA_GAP | জিপিএস ডেটার সময়কাল ৫ সেকেন্ডেরও বেশি। |
JUMPY_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 | ক্যামেরা ঢাকা। |
প্রক্রিয়াকরণ ব্যর্থতাবিস্তারিত
ProcessingFailureReason enum এর সাথে অতিরিক্ত বিবরণ থাকবে। এই বার্তাটি সর্বদা ProcessingFailureReason এর সাথে ব্যবহার করা হবে বলে আশা করা হচ্ছে, এবং এই বার্তায় সেট করা oneof মানটি FailureReason এর সাথে মিলিত হওয়া উচিত।
| JSON উপস্থাপনা |
|---|
{ // Union field |
| ক্ষেত্র | |
|---|---|
ইউনিয়ন ক্ষেত্রের details । শুধুমাত্র একটি সেট বিবরণ সেট করা হবে, এবং ProcessingFailureReason-এ সংশ্লিষ্ট enum-এর সাথে মিলতে হবে। details নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে: | |
insufficientGpsDetails | অপ্রতুল জিপিএস ব্যর্থতার বিবরণ দেখুন। |
gpsDataGapDetails | GpsDataGapFailureDetails দেখুন। |
imuDataGapDetails | ImuDataGapFailureDetails দেখুন। |
notOutdoorsDetails | NotOutdoorsFailureDetails দেখুন। |
noOverlapGpsDetails | NoOverlapGpsFailureDetails দেখুন। |
অপর্যাপ্ত জিপিএস ব্যর্থতাবিস্তারিত
ProcessingFailureReason#INSUFFICIENT_GPS সম্পর্কিত বিশদ বিবরণ।
| JSON উপস্থাপনা |
|---|
{ "gpsPointsFound": integer } |
| ক্ষেত্র | |
|---|---|
gpsPointsFound | ভিডিওতে পাওয়া জিপিএস পয়েন্টের সংখ্যা। |
GpsDataGapFailureবিস্তারিত
ProcessingFailureReason#GPS_DATA_GAP সম্পর্কিত বিশদ বিবরণ। যদি একাধিক GPS ডেটা ফাঁক থাকে, তাহলে শুধুমাত্র সবচেয়ে বেশি সময়কাল সহ একটি এখানে রিপোর্ট করা হবে।
| JSON উপস্থাপনা |
|---|
{ "gapDuration": string, "gapStartTime": string } |
| ক্ষেত্র | |
|---|---|
gapDuration | জিপিএস ডেটার ব্যবধানের সময়কাল যা পাওয়া গেছে। সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' |
gapStartTime | আপেক্ষিক সময় (ভিডিও স্ট্রিম শুরু হওয়ার পর থেকে) যখন ব্যবধান শুরু হয়েছিল। সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' |
ইমুডেটাগ্যাপফেইলুরবিস্তারিত
ProcessingFailureReason#IMU_DATA_GAP সম্পর্কিত বিশদ বিবরণ। যদি একাধিক IMU ডেটা ফাঁক থাকে, তাহলে শুধুমাত্র সবচেয়ে বেশি সময়কাল সহ একটি এখানে রিপোর্ট করা হবে।
| JSON উপস্থাপনা |
|---|
{ "gapDuration": string, "gapStartTime": string } |
| ক্ষেত্র | |
|---|---|
gapDuration | IMU ডেটাতে যে ব্যবধানটি পাওয়া গেছে তার সময়কাল। সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' |
gapStartTime | আপেক্ষিক সময় (ভিডিও স্ট্রিম শুরু হওয়ার পর থেকে) যখন ব্যবধান শুরু হয়েছিল। সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' |
বাইরে ব্যর্থতাবিস্তারিত
ProcessingFailureReason#NOT_OUTDOORS সম্পর্কিত বিশদ। যদি একাধিক ইনডোর ফ্রেম পাওয়া যায়, তাহলে প্রথম ফ্রেমটি এখানে রেকর্ড করা হয়।
| JSON উপস্থাপনা |
|---|
{ "startTime": string } |
| ক্ষেত্র | |
|---|---|
startTime | আপেক্ষিক সময় (ভিডিও স্ট্রিম শুরু হওয়ার পর থেকে) যখন একটি ইনডোর ফ্রেম পাওয়া গেছে। সেকেন্ডে একটি সময়কাল যার সর্বোচ্চ নয়টি ভগ্নাংশ সংখ্যা ' |
NoOverlapGpsFailureবিস্তারিত
ফটোসিকোয়েন্সপ্রসেসিংফেইল্যুরেশন#নো_ওভারল্যাপ_জিপিএস সম্পর্কিত বিশদ বিবরণ।
| JSON উপস্থাপনা |
|---|
{ "gpsStartTime": string, "gpsEndTime": string, "videoStartTime": string, "videoEndTime": string } |
| ক্ষেত্র | |
|---|---|
gpsStartTime | প্রথম রেকর্ড করা জিপিএস পয়েন্টের সময়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: |
gpsEndTime | শেষ রেকর্ড করা জিপিএস পয়েন্টের সময়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: |
videoStartTime | ভিডিও শুরুর সময়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: |
videoEndTime | ভিডিওর শেষ সময়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-স্বাভাবিক হবে এবং 0, 3, 6 অথবা 9 ভগ্নাংশ সংখ্যা ব্যবহার করবে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণযোগ্য। উদাহরণ: |
অক্ষাংশ সীমানা
ভৌগোলিক স্থানাঙ্কে একটি আয়তক্ষেত্র।
| JSON উপস্থাপনা |
|---|
{ "southwest": { object ( |
| ক্ষেত্র | |
|---|---|
southwest | এই সীমানার দক্ষিণ-পশ্চিম কোণ। |
northeast | এই সীমানার উত্তর-পূর্ব কোণ। |
ইনপুট টাইপ
PhotoSequence ইনপুট ফর্ম।
| এনামস | |
|---|---|
INPUT_TYPE_UNSPECIFIED | নির্দিষ্ট করা নেই। সার্ভার google.rpc.Code.INVALID_ARGUMENT ফেরত দেবে। |
VIDEO | ৩৬০ ভিডিও। |
XDM | এক্সটেনসিবল ডিভাইস মেটাডেটা, http://www.xdm.org |