Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عی

Amazon SageMaker Ground Truth میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ

LiDAR بڑھتی ہوئی خود مختار مارکیٹوں، جیسے روبوٹکس، صنعتی، انفراسٹرکچر، اور آٹوموٹیو میں ایک کلیدی قابل بنانے والی ٹیکنالوجی ہے۔ LiDAR خود مختار حل کے لیے "وژن" فراہم کرنے کے لیے حقیقی وقت میں اپنے ماحول کے بارے میں درست 3D ڈیٹا فراہم کرتا ہے۔ خود مختار گاڑیوں (AVs) کے لیے، تقریباً ہر کار ساز LiDAR کا استعمال کیمرہ اور ریڈار سسٹم کو بڑھانے کے لیے کرتا ہے تاکہ ایک جامع پرسیپشن اسٹیک ہو جو سڑک کے پیچیدہ ماحول میں محفوظ طریقے سے تشریف لے جا سکے۔ کمپیوٹر ویژن سسٹم آبجیکٹ کا پتہ لگانے، آبجیکٹ کی درجہ بندی، اور منظر کی تقسیم کے لیے LiDAR سینسر کے ذریعے تیار کردہ 3D نقشوں کا استعمال کر سکتے ہیں۔ کسی بھی دوسرے زیر نگرانی مشین لرننگ (ML) سسٹم کی طرح، LiDAR سینسر کے ذریعے تیار کردہ پوائنٹ کلاؤڈ ڈیٹا پر درست طریقے سے لیبل لگانا چاہیے تاکہ ML ماڈل درست اندازہ لگا سکے۔ یہ AVs کو آسانی سے اور مؤثر طریقے سے کام کرنے کی اجازت دیتا ہے، واقعات اور اشیاء، پیدل چلنے والوں، گاڑیوں اور دیگر سڑک استعمال کرنے والوں کے ساتھ تصادم سے بچتا ہے۔

اس پوسٹ میں، ہم یہ ظاہر کرتے ہیں کہ کس طرح 3D پوائنٹ کلاؤڈ ڈیٹا کو لیبل کرنا ہے۔ ویلوڈائن لیڈار سینسر کا استعمال کرتے ہوئے ایمیزون سیج میکر گراؤنڈ ٹروتھ. ہم تشریح کے لیے ڈیٹا بھیجنے کے عمل کو توڑ دیتے ہیں تاکہ آپ درست، اعلیٰ معیار کے نتائج حاصل کر سکیں۔

اس مثال کے لیے کوڈ پر دستیاب ہے۔ GitHub کے.

حل جائزہ

SageMaker Ground Truth ایک ڈیٹا لیبلنگ سروس ہے جسے آپ مختلف قسم کے ML استعمال کے کیسز کے لیے اعلیٰ معیار کے لیبل والے ڈیٹا سیٹس بنانے کے لیے استعمال کر سکتے ہیں۔ سیج میکر گراؤنڈ ٹروتھ میں ایک صلاحیت ہے۔ ایمیزون سیج میکرجو کہ ایک جامع اور مکمل طور پر منظم ML سروس ہے۔ SageMaker کے ساتھ، ڈیٹا سائنسدان اور ڈویلپرز ML ماڈلز کو تیزی سے اور آسانی سے بنا سکتے ہیں اور تربیت دے سکتے ہیں، اور پھر انہیں براہ راست پیداوار کے لیے تیار ماحول میں تعینات کر سکتے ہیں۔

LiDAR ڈیٹا کے علاوہ، ہم کیمرے کی تصاویر بھی شامل کرتے ہیں، SageMaker گراؤنڈ ٹروتھ میں سینسر فیوژن فیچر کا استعمال کرتے ہوئے ان مناظر کے بارے میں مضبوط بصری معلومات فراہم کرتے ہیں جن پر تشریح کرنے والے لیبل لگا رہے ہیں۔ سینسر فیوژن کے ذریعے، تشریح کرنے والے 3D منظر کے ساتھ ساتھ 2D امیجز میں لیبل کو ایڈجسٹ کر سکتے ہیں۔ یہ اس بات کو یقینی بنانے کے لیے منفرد صلاحیت فراہم کرتا ہے کہ LiDAR ڈیٹا میں تشریحات 2D امیجری میں آئینہ دار ہوں، اس عمل کو مزید موثر بناتی ہے۔

SageMaker گراؤنڈ ٹروتھ کے ساتھ، Velodyne LiDAR کے 3D پوائنٹ کلاؤڈ ڈیٹا کو جو Velodyne LiDAR سینسر کے ذریعے تیار کیا گیا ہے جو گاڑی پر لگے ہوئے ہیں، حرکت پذیر اشیاء کو ٹریک کرنے کے لیے لیبل لگایا جا سکتا ہے۔ اس چیلنجنگ استعمال کے معاملے میں، ہم متحرک ماحول میں کسی چیز جیسے کار یا پیدل چلنے والے کی رفتار کی پیروی کر سکتے ہیں، جبکہ ہمارا نقطہ نظر بھی متحرک ہے۔ اس معاملے میں، ہمارا نقطہ نظر ایک کار ہے جو Velodyne LiDAR سے لیس ہے۔

اس کام کو انجام دینے کے لیے، ہم درج ذیل عنوانات پر عمل کرتے ہیں:

  • ویلوڈین ٹیکنالوجی
  • ڈیٹاسیٹ
  • لیبلنگ کا کام بنانا
  • پوائنٹ کلاؤڈ سیکوینس ان پٹ مینی فیسٹ فائل
  • ترتیب ان پٹ مینی فیسٹ فائل کی تعمیر
  • زمرہ کنفیگریشن فائل پر لیبل لگانا
  • ملازمت کے وسائل کی وضاحت کرنا
  • لیبلنگ کا کام مکمل کرنا

شرائط

اس پوسٹ میں حل کو نافذ کرنے کے لیے، آپ کو درج ذیل شرائط کا ہونا ضروری ہے:

  • کوڈ چلانے کے لیے AWS اکاؤنٹ۔
  • An ایمیزون سادہ اسٹوریج سروس (ایمیزون S3) بالٹی جس پر آپ لکھ سکتے ہیں۔ بالٹی اسی علاقے میں ہونی چاہیے جس میں SageMaker نوٹ بک مثال ہے۔ ہم ایک درست S3 سابقہ ​​کی بھی وضاحت کر سکتے ہیں۔ اس تجربے سے متعلق تمام فائلیں ہماری بالٹی کے اس سابقہ ​​میں محفوظ ہیں۔ ہمیں CORS پالیسی کو اس بالٹی کے ساتھ منسلک کرنا چاہیے۔ ہدایات کے لیے، رجوع کریں۔ کراس اوریجن ریسورس شیئرنگ کو ترتیب دینا (CORS). CORS کنفیگریشن ایڈیٹر میں درج ذیل پالیسی درج کریں:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>HEAD</AllowedMethod>
    <AllowedMethod>PUT</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <ExposeHeader>Access-Control-Allow-Origin</ExposeHeader>
    <AllowedHeader>*</AllowedHeader>
</CORSRule>
<CORSRule>
    <AllowedOrigin>*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
</CORSRule>
</CORSConfiguration>

ویلوڈین ٹیکنالوجی

LiDAR کو مختلف زمروں میں تقسیم کیا جا سکتا ہے، بشمول LiDAR اور فلیش LiDAR کو سکین کرنا۔ روایتی طور پر اسکیننگ LiDAR 360 ڈگری کا پتہ لگانے کے لیے سینسر کو گھمانے کے لیے مکینیکل گردش کا استعمال کرتی ہے۔ Velodyne، جس نے صنعت کا پہلا 3D LiDAR ایجاد کیا، جدید ترین ٹیکنالوجی کے ساتھ نئی گردشی مصنوعات کو اختراع اور لانچ کرنا جاری رکھے ہوئے ہے۔ Velodyne's Ultra Puck ایک سکیننگ LiDAR سینسر ہے جو Velodyne کی پیٹنٹ شدہ سراؤنڈ ویو ٹیکنالوجی کا استعمال کرتا ہے۔ یہ درست ریئل ٹائم 360D ڈیٹا فراہم کرنے کے لیے ایک مکمل 3 ڈگری ماحولیاتی منظر فراہم کرتا ہے۔ الٹرا پک ایک کمپیکٹ فارم فیکٹر رکھتا ہے اور محفوظ نیویگیشن اور قابل بھروسہ آپریشن کے لیے درکار ریئل ٹائم آبجیکٹ کا پتہ لگاتا ہے۔ زیادہ سے زیادہ طاقت اور اعلی کارکردگی کے امتزاج کے ساتھ، یہ سینسر تمام گردشی زاویوں پر فاصلہ اور کیلیبریٹڈ عکاسی پیمائش فراہم کرتا ہے۔ یہ روبوٹکس، نقشہ سازی، سیکورٹی، ڈرائیور کی مدد، اور خود مختار نیویگیشن کے لیے ایک مثالی حل ہے۔ خود LiDAR سینسر کے علاوہ، Velodyne نے Vella Development Kit (VDK) بنایا ہے، جو کہ ٹولز، ہارڈویئر، اور دستاویزات کا مجموعہ ہے جو Velodyne کے خود مختار سافٹ ویئر اسٹیک تک رسائی کی سہولت فراہم کرتا ہے۔ VDK کو مختلف حسب ضرورت انٹرفیس اور ماحول کے لیے ترتیب دیا جا سکتا ہے، جو آپ کو خود مختاری میں اضافہ اور بہتر حفاظت کے لیے ایپلی کیشنز کی ایک وسیع رینج فراہم کرتا ہے۔

مزید برآں، VDK اس پیشگی کام کو کم کر سکتا ہے جو آپ کو بصورت دیگر درج ذیل ضروری صلاحیتیں فراہم کر کے اختتام سے آخر تک ڈیٹا اکٹھا کرنے اور تشریحی پائپ لائن کو فعال کرنے کے لیے کرنا پڑے گا۔

  • LiDAR، odometry، اور کیمرے کے فریموں کے درمیان گھڑی کی مطابقت پذیری۔
  • LiDAR گاڑی 5-DOF بیرونی کیلیبریشن کے لیے کیلیبریشن (z قابل مشاہدہ نہیں ہے)
  • LiDAR کیمرے کے خارجی، اندرونی، اور مسخ پیرامیٹرز کے لیے کیلیبریشن
  • موشن معاوضہ جمع کریں (انٹرا فریم یا ملٹی فریم)، ​​مطابقت پذیر LiDAR پوائنٹ کلاؤڈز اور کیمرہ امیجز

گاڑی پر مبنی ادراک کی صلاحیتوں کو تیار کرنے کے لیے، Velodyne کی سافٹ ویئر ٹیم نے اپنے الٹرا پک LiDAR یونٹوں میں سے ایک، ایک کیمرہ اور گاڑی کے ہڈ پر نصب GPS/IMU سینسر کے ساتھ اپنی ڈیٹا اکٹھا کرنے والی گاڑی ترتیب دی ہے۔ بعد کے مراحل میں، ہم ان کے داخلی عمل کا حوالہ دیتے ہیں جو VDK کو اپنی گاڑی پر مبنی ادراک کی صلاحیتوں کو تیار کرنے کے لیے درکار ڈیٹا کو تیار کرنے، اکٹھا کرنے اور تشریح کرنے کے لیے استعمال کرتے ہیں ایک مثال کے طور پر دوسرے صارفین کے لیے جو ان کے اپنے ادراک کے استعمال کے معاملات کو حل کرنے کی کوشش کر رہے ہیں۔

گھڑی کی ہم وقت سازی

LiDAR، odometry، اور کیمرے کے آؤٹ پٹس کی درست گھڑی کی مطابقت پذیری کسی بھی ملٹی سینسر ایپلی کیشن کے لیے اہم ہو سکتی ہے جو ان ڈیٹا اسٹریمز کو یکجا کرتی ہے۔ بہترین نتائج کے لیے، آپ کو استعمال کرنا چاہیے۔ PTP ایک بنیادی گھڑی کے ساتھ ہم وقت سازی کا نظام اور تمام سینسر کی مدد سے۔ پی ٹی پی کا ایک فائدہ یہ ہے کہ متعدد آلات کو ایک ہی ٹائمنگ سورس کے ساتھ اعلیٰ درستگی کے ساتھ ہم آہنگ کرنے کی صلاحیت ہے۔ ایسا نظام 1 مائیکرو سیکنڈ سے بہتر مطابقت پذیری کی درستگی حاصل کر سکتا ہے۔ دیگر حلوں میں پی پی ایس کی تقسیم اور فی آلہ وقت کے ذرائع شامل ہیں۔ ایک متبادل آپشن کے طور پر، VDK آمد کے وقت کی ٹائم اسٹیمپنگ کو استعمال کرتے ہوئے سافٹ ویئر سنکرونائزیشن کی حمایت کرتا ہے، جو مناسب گھڑی کی مطابقت پذیری کے بنیادی ڈھانچے کی عدم موجودگی میں فوری طور پر کسی ایپلیکیشن کو زمین سے اتارنے کا ایک بہترین طریقہ ہو سکتا ہے۔ اس کے نتیجے میں نیٹ ورک انفراسٹرکچر اور میزبان آپریٹنگ سسٹم کی مختلف سطحوں پر تاخیر اور قطار میں تاخیر کے امتزاج کی وجہ سے 1–10 ملی سیکنڈ کے آرڈر پر ٹائم اسٹیمپنگ کی غلطیاں ہوسکتی ہیں، جو درخواست کے لحاظ سے قابل قبول بھی ہوسکتی ہیں یا نہیں بھی۔

LiDAR گاڑی کی انشانکن

LiDAR گاڑی کیلیبریشن پانچ محوروں کے ساتھ گاڑی کے فریم میں LiDAR کی خارجی پوزیشن کا تخمینہ لگاتی ہے۔ Z قدر ناقابل مشاہدہ ہے؛ لہذا آپ کو z کی قدر کو آزادانہ طور پر ناپنا چاہیے۔ ہمارا عمل ہدف کے بغیر کیلیبریشن تکنیک ہے لیکن یہ ایسے ماحول میں اچھی طرح سے کام کرتا ہے جہاں زمین نسبتاً ہموار ہو، اور ماحول میں متحرک (گاڑیوں، پیدل چلنے والوں) یا غیر متصل (جھاڑیوں اور جھاڑیوں) خصوصیات کے بجائے متضاد جامد اشیاء کی خصوصیات ہوں۔ چند رکاوٹوں اور فلیٹ اگواڑے والی عمارتوں والی پارکنگ کے بارے میں سوچئے۔ جیومیٹرک ڈھانچے کی موجودگی انشانکن معیار کو بہتر بنانے کے لیے مثالی ہے۔ زیادہ تر پیرامیٹرز کو بے نقاب کرنے کے لیے صارف کو VDK کی طرف سے اشارہ کردہ کچھ پہلے سے طے شدہ ڈرائیونگ پیٹرن میں گاڑی چلانے کی ضرورت ہے۔ اس کیلیبریشن کے لیے ایک منٹ کا ڈیٹا کافی ہے۔ ویلڈوئن کی پلیٹ فارم سروس پر ڈیٹا اپ لوڈ ہونے کے بعد، انشانکن کلاؤڈ پر ہوتا ہے اور نتیجہ 24 گھنٹے کے اندر دستیاب ہو جاتا ہے۔ اس نوٹ بک کے مقاصد کے لیے، انشانکن کے پیرامیٹرز پر پہلے ہی کارروائی اور فراہم کر دیے گئے ہیں۔

LiDAR ڈیٹاسیٹ

۔ ڈیٹاسیٹ اور وسائل اس نوٹ بک میں استعمال کیا جاتا ہے Velodyne کی طرف سے فراہم کی جاتی ہیں. اس ڈیٹاسیٹ میں کیلیفورنیا میں ایک ہائی وے پر گاڑی چلانے والے خود مختار گاڑی کے تجربے کا ایک مسلسل منظر شامل ہے۔ پورا منظر 60 فریموں پر مشتمل ہے۔ ڈیٹا سیٹ کے مندرجات درج ذیل ہیں:

  • lidar_cam_calib_vlp32_06_10_2021.yaml - کیمرہ کیلیبریشن کی معلومات، صرف ایک کیمرہ
  • تصاویر / - ہر فریم کے لیے کیمرہ فوٹیج
  • پوز/ - پوز JSON فائل جس میں ہر فریم کے لیے LiDAR ایکسٹرنسک میٹرکس ہو۔
  • rectified_scans_local/ - LiDAR سینسر مقامی کوآرڈینیٹ سسٹم میں pcb فائلیں۔

ڈیٹاسیٹ کو مقامی طور پر ڈاؤن لوڈ کرنے کے لیے درج ذیل کوڈ کو چلائیں اور پھر اپنے S3 بالٹی پر اپ لوڈ کریں، جس کی وضاحت ہم نے ابتدا کے سیکشن میں کی ہے۔

source_bucket = 'velodyne-blog'
source_prefix = 'highway_data_07'
source_data = f's3://{source_bucket}/{source_prefix}'

!aws s3 cp $source_data ./$PREFIX --recursive
target_s3 = f's3://{BUCKET}/{PREFIX}'
!aws s3 cp ./$PREFIX $target_s3 –recursive

لیبلنگ کا کام بنائیں

اگلے قدم کے طور پر، ہمیں سیج میکر گراؤنڈ ٹروتھ میں ڈیٹا لیبلنگ کا کام بنانے کی ضرورت ہے۔ ہم ٹاسک کی قسم کو آبجیکٹ ٹریکنگ کے طور پر منتخب کرتے ہیں۔ 3D پوائنٹ کلاؤڈ لیبلنگ ٹاسک کی اقسام کے بارے میں مزید معلومات کے لیے، رجوع کریں۔ 3D پوائنٹ کلاؤڈ ٹاسک کی اقسام. آبجیکٹ ٹریکنگ پوائنٹ کلاؤڈ لیبلنگ جاب بنانے کے لیے، ہمیں لیبلنگ جاب ان پٹس کے طور پر درج ذیل وسائل کو شامل کرنے کی ضرورت ہے:

  • پوائنٹ کلاؤڈ ترتیب ان پٹ مینی فیسٹ - ایک JSON فائل جو پوائنٹ کلاؤڈ فریم کی ترتیب اور متعلقہ سینسر فیوژن ڈیٹا کی وضاحت کرتی ہے۔ مزید معلومات کے لیے دیکھیں ایک پوائنٹ کلاؤڈ سیکوینس ان پٹ مینی فیسٹ بنائیں.
  • ان پٹ مینی فیسٹ فائل - لیبلنگ کے کام کے لیے ان پٹ فائل۔ مینی فیسٹ فائل کی ہر لائن میں پوائنٹ کلاؤڈ سیکوینس ان پٹ مینی فیسٹ میں بیان کردہ ترتیب فائل کا لنک ہوتا ہے۔
  • لیبل زمرہ کنفیگریشن فائل - یہ فائل آپ کے لیبلز، لیبل کے زمرے، فریم کی خصوصیات، اور کارکن کی ہدایات کی وضاحت کے لیے استعمال ہوتی ہے۔ مزید معلومات کے لیے دیکھیں لیبل کیٹیگری اور فریم انتساب کے ساتھ لیبلنگ کیٹیگری کنفیگریشن فائل بنائیں.
  • پہلے سے طے شدہ AWS وسائل - درج ذیل پر مشتمل ہے:
    • پری تشریح لیمبڈا اے آر این - کا حوالہ دیتے ہیں PreHumanTaskLambdaArn.
    • تشریح یکجہتی ARN - دی او ڈبلیو ایس لامبڈا۔ فنکشن مختلف کارکنوں کے لیبل کو مضبوط کرنے کے لیے استعمال ہوتا ہے۔ کا حوالہ دیتے ہیں AnnotationConsolidationLambdaArn.
    • افرادی قوت اے آر این - یہ بتاتا ہے کہ ہم کس قسم کے افرادی قوت کو استعمال کرنا چاہتے ہیں۔ کا حوالہ دیتے ہیں افرادی قوتیں بنائیں اور ان کا نظم کریں۔ مزید تفصیلات کے لئے.
    • HumanTaskUiArn - لیبلنگ کا کام کرنے کے لیے ورکر UI ٹیمپلیٹ کی وضاحت کرتا ہے۔ اس کا فارمیٹ جیسا ہونا چاہیے۔ arn:aws:sagemaker:<region>:123456789012:human-task-ui/PointCloudObjectTracking.

درج ذیل کو ذہن میں رکھیں:

  • کے لیے کوئی اندراج نہیں ہونا چاہیے۔ UiTemplateS3Uri پیرامیٹر
  • اور LabelAttributeName میں ختم ہونا چاہئے -ref. مثال کے طور پر، ot-labels-ref.
  • کارکنوں کی تعداد جس میں بیان کیا گیا ہے۔ NumberOfHumanWorkersPerDataObject 1 ہونا چاہئے.
  • 3D پوائنٹ کلاؤڈ لیبلنگ فعال سیکھنے کی حمایت نہیں کرتی ہے، لہذا ہمیں پیرامیٹرز کے لیے قدروں کی وضاحت نہیں کرنی چاہیے LabelingJobAlgorithmsConfig.
  • 3D پوائنٹ کلاؤڈ آبجیکٹ ٹریکنگ لیبلنگ جابز کو مکمل ہونے میں کئی گھنٹے لگ سکتے ہیں۔ آپ کو ان لیبلنگ جابز کے لیے ایک طویل وقت کی حد بتانی چاہیے۔ TaskTimeLimitInSeconds (7 دن، یا 604,800 سیکنڈ تک)۔
    #object tracking as our 3D Point Cloud Task Type. 
    task_type = "3DPointCloudObjectTracking"

پوائنٹ کلاؤڈ ترتیب ان پٹ مینی فیسٹ فائل

سیکوینس ان پٹ مینی فیسٹ فائل بنانے کے لیے درج ذیل اہم ترین اقدامات:

  1. 3D پوائنٹس کو عالمی کوآرڈینیٹ سسٹم میں تبدیل کریں۔
  2. سیج میکر گراؤنڈ ٹروتھ میں سینسر فیوژن فیچر کو فعال کرنے کے لیے سینسر ایکسٹرنسک میٹرکس تیار کریں۔

LiDAR سینسر ایک چلتی گاڑی (ایگو وہیکل) پر لگا ہوا ہے، جو ڈیٹا کو اپنے فریم آف ریفرنس میں قید کرتا ہے۔ آبجیکٹ ٹریکنگ کو انجام دینے کے لیے، ہمیں اس ڈیٹا کو ایک عالمی فریم آف ریفرنس میں تبدیل کرنے کی ضرورت ہے تاکہ وہ خود چلتی انا گاڑی کے حساب سے ہو۔ یہ دنیا کا کوآرڈینیٹ سسٹم ہے۔

سینسر فیوژن سیج میکر گراؤنڈ ٹروتھ میں ایک خصوصیت ہے جو 3D پوائنٹ کلاؤڈ فریم کو کیمرے کے فریم کے ساتھ ساتھ ہم آہنگ کرتی ہے۔ یہ انسانی لیبلرز کے لیے بصری سیاق و سباق فراہم کرتا ہے اور لیبلرز کو 3D اور 2D امیجز میں ہم وقت سازی کے ساتھ تشریح کو ایڈجسٹ کرنے کی اجازت دیتا ہے۔ میٹرکس کی تبدیلی سے متعلق ہدایات کے لیے رجوع کریں۔ ایمیزون سیج میکر گراؤنڈ ٹروتھ میں 3D آبجیکٹ ٹریکنگ اور سینسر فیوژن کے لیے لیبلنگ ڈیٹا.

۔ generate_transformed_pcd_from_point_cloud فنکشن کوآرڈینیٹ ترجمہ کرتا ہے اور پھر 3D پوائنٹ ڈیٹا فائل تیار کرتا ہے، جسے SageMaker Ground Truth استعمال کر سکتا ہے۔

مقامی/سینسر گلوبل کوآرڈینیٹ سسٹم سے ڈیٹا کا ترجمہ کرنے کے لیے، LiDAR سینسر کے لیے ایکسٹرنسک میٹرکس کے ساتھ 3D فریم میں ہر پوائنٹ کو ضرب دیں۔

SageMaker Ground Truth 3D پوائنٹ کلاؤڈ ڈیٹا کو کمپیکٹ بائنری پیک (.bin) یا ASCII (.txt) فارمیٹ میں پیش کرتا ہے۔ ان فارمیٹس میں فائلوں کو ان تمام پوائنٹس کے مقام (x، y، اور z کوآرڈینیٹ) کے بارے میں معلومات پر مشتمل ہونا ضروری ہے جو اس فریم کو بناتے ہیں، اور اختیاری طور پر، رنگین پوائنٹ کلاؤڈز (i، r، g، b)۔

سیج میکر گراؤنڈ ٹروتھ کے قبول شدہ خام 3D ڈیٹا فارمیٹس کے بارے میں مزید پڑھنے کے لیے، دیکھیں قبول شدہ را 3D ڈیٹا فارمیٹس.

ترتیب ان پٹ مینی فیسٹ فائل بنائیں

اگلا مرحلہ پوائنٹ کلاؤڈ سیکوینس ان پٹ مینی فیسٹ فائل بنانا ہے۔ اس سیکشن میں درج مراحل نوٹ بک میں بھی دستیاب ہیں۔

  1. سے کلاؤڈ ڈیٹا کی طرف اشارہ کریں۔ .pcd فائل، پوز فائل سے LiDAR ایکسٹرنسک میٹرکس، اور کیمرہ کیلیبریشن سے کیمرہ خارجی، اندرونی، اور ڈسٹورشن ڈیٹا .yaml فائل.
  2. خام پوائنٹ کلاؤڈ کی عالمی فریم آف ریفرنس میں فی فریم تبدیلی انجام دیں۔ Amazon S3 پر ہر فریم کے لیے ASCII (.txt) بنائیں اور اسٹور کریں۔
  3. LiDAR ایکسٹرنسک میٹرکس سے انا گاڑی کے پوز کو نکالیں۔
  4. کیمرہ الٹا خارجی میٹرکس سے کیمرہ پوز نکال کر عالمی کوآرڈینیٹ سسٹم میں سینسر کی پوزیشن بنائیں۔
  5. کیمرے کیلیبریشن پیرامیٹرز فراہم کریں (جیسے مسخ اور ترچھا)۔
  6. ڈیٹا فریموں کی صف بنائیں۔ ASCII فائل لوکیشن کا حوالہ دیں، ورلڈ کوآرڈینیٹ سسٹم میں گاڑی کی پوزیشن کی وضاحت کریں، وغیرہ۔
  7. ترتیب مینی فیسٹ فائل بنائیں sequence.json.
  8. ہماری ان پٹ مینی فیسٹ فائل بنائیں۔ ہر لائن ایک واحد ترتیب فائل کی شناخت کرتی ہے جسے ہم نے ابھی اپ لوڈ کیا ہے۔

زمرہ کنفیگریشن فائل پر لیبل لگائیں۔

ہماری لیبل کیٹیگری کنفیگریشن فائل کا استعمال ہمارے لیبلنگ کام کے لیے لیبل، یا کلاسز کی وضاحت کے لیے کیا جاتا ہے۔ جب ہم آبجیکٹ کا پتہ لگانے یا آبجیکٹ ٹریکنگ ٹاسک کی اقسام کا استعمال کرتے ہیں۔ ہم اپنے میں لیبل کی خصوصیات بھی شامل کر سکتے ہیں۔ لیبل زمرہ کنفیگریشن فائل. کارکن اس چیز کے بارے میں مزید معلومات دینے کے لیے ایک یا زیادہ صفات تفویض کر سکتے ہیں جو ہم تشریحات کو فراہم کرتے ہیں۔ مثال کے طور پر، ہم اس وصف کو استعمال کرنا چاہتے ہیں۔ occluded جب کسی چیز کو جزوی طور پر روکا جاتا ہے تو کارکنوں کو شناخت کرنے کے لیے۔ آئیے کسی آبجیکٹ کا پتہ لگانے یا آبجیکٹ ٹریکنگ لیبلنگ جاب کے لیے لیبل زمرہ کنفیگریشن فائل کی ایک مثال دیکھیں:

label_category = {
  "categoryGlobalAttributes": [
    {
      "enum": [
        "75-100%",
        "25-75%",
        "0-25%"
      ],
      "name": "Visibility",
      "type": "string"
    }
  ],
  "documentVersion": "2020-03-01",
  "instructions": {
    "fullInstruction": "Draw a tight Cuboid. You only need to annotate those in the first frame. Please make sure the direction of the cubiod is accurately representative of the direction of the vehicle it bounds.",
    "shortInstruction": "Draw a tight Cuboid. You only need to annotate those in the first frame."
  },
  "labels": [
    {
      "categoryAttributes": [],
      "label": "Car"
    },
    {
      "categoryAttributes": [],
      "label": "Truck"
    },
    {
      "categoryAttributes": [],
      "label": "Bus"
    },
    {
      "categoryAttributes": [],
      "label": "Pedestrian"
    },
    {
      "categoryAttributes": [],
      "label": "Cyclist"
    },
    {
      "categoryAttributes": [],
      "label": "Motorcyclist"
    },
  ]
}

category_key = f'{PREFIX}/manifests_categories/label_category.json'
write_json_to_s3(label_category, BUCKET, category_key)

label_category_file = f's3://{BUCKET}/{category_key}'
print(f"label category file uri: {label_category_file}")

ملازمت کے وسائل کی وضاحت کریں۔

اگلے مرحلے کے طور پر، ہم مختلف لیبلنگ جاب کے وسائل کی وضاحت کرتے ہیں:

  • انسانی کام UI ARN - HumanTaskUiArn ایک ایسا وسیلہ ہے جو ورکر ٹاسک ٹیمپلیٹ کی وضاحت کرتا ہے جو ورکر UI اور ٹولز کو لیبلنگ کے کام کے لیے پیش کرتا ہے۔ اس وصف کو ذیل میں بیان کیا گیا ہے۔ UiConfig اور وسائل کا نام علاقہ اور کام کی قسم کے لحاظ سے ترتیب دیا گیا ہے:
    human_task_ui_arn = (
        f"arn:aws:sagemaker:{region}:123456789012:human-task-ui/{task_type[2:]}"
    )

  • کام کا وسیلہ - اس مثال میں، ہم نجی ٹیم کے وسائل استعمال کرتے ہیں۔ ہدایات کے لیے، رجوع کریں۔ ایک نجی افرادی قوت بنائیں (ایمیزون کوگنیٹو کنسول). جب ہم کام کر لیں تو ہمیں اپنے وسائل ARN کو درج ذیل پیرامیٹر میں رکھنا چاہیے:
    workteam_arn = f"arn:aws:sagemaker:{region}:123456789012:workteam/private-crowd/test-team"#"<REPLACE W/ YOUR Private Team ARN>"

  • پہلے سے تشریح لیمبڈا اے آر این اور بعد از تشریح لیمبڈا اے آر این - درج ذیل کوڈ دیکھیں:
    ac_arn_map = {
        "us-west-2": "081040173940",
        "us-east-1": "432418664414",
        "us-east-2": "266458841044",
        "eu-west-1": "568282634449",
        "ap-northeast-1": "477331159723",
    }
    
    prehuman_arn = "arn:aws:lambda:{}:{}:function:PRE-{}".format(region, ac_arn_map[region], task_type)
    acs_arn = "arn:aws:lambda:{}:{}:function:ACS-{}".format(region, ac_arn_map[region], task_type)

  • HumanTaskConfig - ہم اسے اپنی ورک ٹیم کی وضاحت کرنے اور اپنے لیبلنگ جاب ٹاسک کو ترتیب دینے کے لیے استعمال کرتے ہیں۔ درج ذیل کوڈ میں کام کی تفصیل کو اپ ڈیٹ کرنے کے لیے آزاد محسوس کریں:
    job_name = f"velodyne-blog-test-{str(time.time()).split('.')[0]}"
    
    # Task description info =================
    task_description = "Draw 3D boxes around required objects"
    task_keywords = ['lidar', 'pointcloud']
    task_title = job_name
    
    human_task_config = {
        "AnnotationConsolidationConfig": {
            "AnnotationConsolidationLambdaArn": acs_arn,
        },
        "WorkteamArn": workteam_arn,
        "PreHumanTaskLambdaArn": prehuman_arn,
        "MaxConcurrentTaskCount": 200,
        "NumberOfHumanWorkersPerDataObject": 1,  # One worker will work on each task
        "TaskAvailabilityLifetimeInSeconds": 18000, # Your workteam has 5 hours to complete all pending tasks.
        "TaskDescription": task_description,
        "TaskKeywords": task_keywords,
        "TaskTimeLimitInSeconds": 36000, # Each seq must be labeled within 1 hour.
        "TaskTitle": task_title,
        "UiConfig": {
            "HumanTaskUiArn": human_task_ui_arn,
        },
    }

لیبلنگ کا کام بنائیں

اگلا، ہم لیبلنگ کی درخواست بناتے ہیں، جیسا کہ درج ذیل کوڈ میں دکھایا گیا ہے:

labelAttributeName = f"{job_name}-ref" #must end with -ref

output_path = f"s3://{BUCKET}/{PREFIX}/output"

ground_truth_request = {
    "InputConfig" : {
      "DataSource": {
        "S3DataSource": {
          "ManifestS3Uri": manifest_uri,
        }
      },
      "DataAttributes": {
        "ContentClassifiers": [
          "FreeOfPersonallyIdentifiableInformation",
          "FreeOfAdultContent"
        ]
      },  
    },
    "OutputConfig" : {
      "S3OutputPath": output_path,
    },
    "HumanTaskConfig" : human_task_config,
    "LabelingJobName": job_name,
    "RoleArn": role, 
    "LabelAttributeName": labelAttributeName,
    "LabelCategoryConfigS3Uri": label_category_file,
    "Tags": [],
}

آخر میں، ہم لیبلنگ کا کام بناتے ہیں:

sagemaker_client.create_labeling_job(**ground_truth_request)

لیبلنگ کا کام مکمل کریں۔

جب ہمارا لیبلنگ کا کام تیار ہو جاتا ہے، تو ہم خود کو اپنی پرائیویٹ ورک ٹیم میں شامل کر سکتے ہیں اور ورکرز پورٹل کے ساتھ تجربہ کر سکتے ہیں۔ ہمیں پورٹل لنک، اپنے صارف نام، اور ایک عارضی پاس ورڈ کے ساتھ ایک ای میل موصول ہونا چاہیے۔ جب ہم لاگ ان ہوتے ہیں، ہم فہرست سے لیبلنگ جاب کا انتخاب کرتے ہیں، اور پھر ہمیں مندرجہ ذیل اسکرین شاٹ کی طرح ورکر کا پورٹل دیکھنا چاہیے۔ (پورٹل میں لیبلنگ کے نئے کام کو ظاہر ہونے میں چند منٹ لگ سکتے ہیں)۔ کارکنوں کو ترتیب دینے کے طریقے کے بارے میں مزید معلومات اور ہدایات مل سکتی ہیں۔ یہاں اور یہاں بالترتیب.

تصویر

جب ہم لیبلنگ کا کام مکمل کر لیتے ہیں، تو ہم انتخاب کر سکتے ہیں۔ جمع کرائیں، اور پھر S3 آؤٹ پٹ لوکیشن میں آؤٹ پٹ ڈیٹا دیکھیں جس کی ہم نے پہلے وضاحت کی تھی۔

نتیجہ

اس پوسٹ میں، ہم نے دکھایا کہ ہم Velodyne کے LiDAR سینسر کا استعمال کرتے ہوئے پکڑے گئے ڈیٹا کے لیے آبجیکٹ ٹریکنگ کے لیے 3D پوائنٹ کلاؤڈ لیبلنگ جاب کیسے بنا سکتے ہیں۔ ہم نے اس پوسٹ میں مرحلہ وار ہدایات کی پیروی کی اور 3D پوائنٹ کلاؤڈ ڈیٹا کو لیبل کرنے کے لیے سیج میکر گراؤنڈ ٹروتھ لیبلنگ جاب بنانے کے لیے فراہم کردہ کوڈ کو چلایا۔ ML ماڈل اس کام کے ساتھ بنائے گئے لیبلز کو آبجیکٹ کا پتہ لگانے، آبجیکٹ کی شناخت، اور آبجیکٹ ٹریکنگ ماڈلز کو تربیت دینے کے لیے استعمال کر سکتے ہیں جو عام طور پر خود مختار گاڑیوں کے منظرناموں میں استعمال ہوتے ہیں۔

اگر آپ Velodyne کے LiDAR سینسر کے ذریعے پکڑے گئے 3D پوائنٹ کلاؤڈ ڈیٹا کو لیبل لگانے میں دلچسپی رکھتے ہیں، تو اس مضمون میں درج ذیل مراحل پر عمل کریں ایمیزون سیج میکر گراؤنڈ ٹروتھ.


مصنفین کے بارے میں

Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عی شرتھ نائر کمپیوٹر ویژن ٹیم کی قیادت کرتا ہے جو Velodyne کے کچھ سافٹ ویئر پروڈکٹس جیسے آبجیکٹ ڈیٹیکشن اینڈ ٹریکنگ، سیمنٹک سیگمنٹیشن، SLAM وغیرہ کے لیے پرسیپشن الگورتھم بنانے پر توجہ مرکوز کرتی ہے۔ Velodyne سے پہلے، شرتھ نے خود مختار گاڑیوں اور روبوٹکس پر کام کیا تھا اور اس جگہ میں شامل رہے ہیں۔ گزشتہ 6 سال.

Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عیاولیور مونسن Velodyne Lidar میں ایک سینئر ڈیٹا آپریشنز مینیجر ہے، جو ڈیٹا پائپ لائنز اور حصول کی حکمت عملیوں کے لیے ذمہ دار ہے جو پرسیپشن سافٹ ویئر کی ترقی میں معاون ہے۔ Velodyne سے پہلے، Oliver نے HD میپنگ، جغرافیائی، اور آثار قدیمہ کی ایپلی کیشنز پر عمل کرنے والی آپریشنل ٹیموں کا انتظام کیا ہے۔

Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عیجان کوا Velodyne میں سافٹ ویئر انجینئرنگ کے ڈائریکٹر ہیں، سسٹم انٹیگریشن اور روبوٹکس، Vella Go، اور سافٹ ویئر پروڈکشن ٹیموں کی نگرانی کرتے ہیں۔ Velodyne میں شامل ہونے سے پہلے، جان نے تجارتی اور سرکاری ایپلی کیشنز میں وسیع پیمانے پر 3D لوکلائزیشن اور میپنگ ایپلی کیشنز کے لیے ملٹی موڈل سینسر پلیٹ فارم بنانے میں ایک دہائی سے زیادہ وقت گزارا۔ ان پلیٹ فارمز میں سینسرز کی ایک وسیع صف شامل تھی جس میں مرئی روشنی، تھرمل، اور ہائپر اسپیکٹرل کیمرے، lidar، GPS، IMUs، اور یہاں تک کہ گاما رے سپیکٹرو میٹر اور امیجرز بھی شامل ہیں۔

Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عیسیلی فریک مین, Velodyne میں چیف مارکیٹنگ آفیسر، عالمی مارکیٹنگ اور کمیونیکیشن پروگراموں کی اسٹریٹجک ترقی اور عملدرآمد کی نگرانی کرتا ہے جو کمپنی کے اختراعی وژن اور اہداف کو آگے بڑھاتے ہیں۔ اس کے کثیر جہتی کردار میں بہت ساری ذمہ داریاں شامل ہیں، جن میں ویلوڈائن برانڈ کی تشہیر، سوچ کی قیادت کی ترقی، اور انتہائی مصروف ڈیجیٹل مارکیٹنگ کے ذریعے مضبوط سیلز لیڈ جنریشن شامل ہے۔ اس سے پہلے سیلی عوامی تعلیم اور سماجی کاموں میں کام کرتی تھیں۔

Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عینتن واگھ ایمیزون اے آئی کے سینئر بزنس ڈویلپمنٹ مینیجر ہیں۔ وہ صارفین کو AWS کلاؤڈ میں مشین لرننگ اور Augmented AI کی طاقت کو سمجھنے میں مدد کرنے کا موقع پسند کرتا ہے۔ اپنے فارغ وقت میں، وہ باہر کی سرگرمیوں میں خاندان کے ساتھ وقت گزارنا پسند کرتا ہے۔

Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عیجیمز وو AWS میں ایک سینئر AI/ML ماہر حل آرکیٹیکٹ ہے۔ AI/ML سلوشنز کو ڈیزائن اور بنانے میں صارفین کی مدد کرنا۔ جیمز کا کام ایم ایل کے استعمال کے کیسز کی ایک وسیع رینج پر محیط ہے، جس میں کمپیوٹر ویژن، گہری سیکھنے، اور پورے انٹرپرائز میں ایم ایل کی پیمائش میں بنیادی دلچسپی ہے۔ AWS میں شامل ہونے سے پہلے، جیمز 10 سال سے زائد عرصے تک ایک معمار، ڈویلپر، اور ٹیکنالوجی لیڈر تھے، جس میں 6 سال انجینئرنگ اور 4 سال مارکیٹنگ اور اشتہاری صنعتوں میں شامل تھے۔

Amazon SageMaker Ground Truth PlatoBlockchain Data Intelligence میں Velodyne LiDAR سینسر کے ساتھ LiDAR 3D پوائنٹ کلاؤڈ لیبلنگ۔ عمودی تلاش۔ عیفاروق صابر AWS میں ایک سینئر مصنوعی ذہانت اور مشین لرننگ اسپیشلسٹ سولیوشن آرکیٹیکٹ ہیں۔ انہوں نے آسٹن کی یونیورسٹی آف ٹیکساس سے الیکٹریکل انجینئرنگ میں پی ایچ ڈی اور ایم ایس کی ڈگریاں اور جارجیا انسٹی ٹیوٹ آف ٹیکنالوجی سے کمپیوٹر سائنس میں ایم ایس کی ڈگریاں حاصل کیں۔ اس کے پاس 15 سال سے زیادہ کام کا تجربہ ہے اور وہ کالج کے طلباء کو پڑھانا اور ان کی رہنمائی کرنا بھی پسند کرتا ہے۔ AWS میں، وہ صارفین کو ڈیٹا سائنس، مشین لرننگ، کمپیوٹر ویژن، مصنوعی ذہانت، عددی اصلاح اور متعلقہ ڈومینز میں ان کے کاروباری مسائل کی تشکیل اور حل کرنے میں مدد کرتا ہے۔ ڈیلاس، ٹیکساس میں مقیم، وہ اور اس کا خاندان سفر کرنا اور طویل سڑک کے سفر کرنا پسند کرتے ہیں۔

ٹائم اسٹیمپ:

سے زیادہ AWS مشین لرننگ