চিত্র বিভাজন একটি চিত্রের মধ্যে আগ্রহের বস্তুগুলিকে সঠিকভাবে সনাক্ত করতে এবং বর্ণনা করার ক্ষেত্রে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। স্বায়ত্তশাসিত ড্রাইভিংয়ে, কম্পিউটার ভিশন অ্যালগরিদমগুলি রাস্তার পৃষ্ঠের বিভাজনের কাজটি সমাধান করতে প্রয়োগ করা হয়। এই কাজটি চ্যালেঞ্জিং কারণ আপনি শুধুমাত্র এক ধরনের ছবির উপর নির্ভর করতে পারবেন না — ক্যামেরা এবং LiDAR উভয়েরই তাদের শক্তি এবং ত্রুটি রয়েছে। উদাহরণস্বরূপ, LiDARs সঠিক গভীরতার তথ্য প্রদান করে, কিন্তু তারা সাধারণত স্পার্স পয়েন্ট ক্লাউড তৈরি করে, তাই তারা দৃশ্যের মধ্যে বস্তুগুলিকে সুনির্দিষ্টভাবে ভাগ করতে পারে না। এবং যখন তারা স্বচ্ছ বা প্রতিফলিত পৃষ্ঠের মুখোমুখি হয় তখন তারা বিকৃত মেঘ তৈরি করতে পারে। ক্যামেরা গভীরতা ক্যাপচার করে না, তবে তারা বস্তুর আকৃতি, টেক্সচার এবং রঙ সম্পর্কে সম্পূর্ণ তথ্য প্রদান করে। এটি আমাদেরকে একটি সহজ ধারণার দিকে নিয়ে যায় যে 2D রোড সেগমেন্টেশন প্রশিক্ষণে পয়েন্ট ক্লাউড এবং চিত্রগুলির একটি কার্যকর ফিউশন প্রতিটি ডেটা ডোমেনের সুবিধাগুলিকে কাজে লাগাতে পারে। সমস্যা হল এই ধরনের ফিউশনের জন্য উভয় ডেটাসেটের শ্রম-নিবিড় টীকা প্রয়োজন। সুতরাং, রাস্তা বিভাজনের জন্য মাল্টি-সেন্সর সেটআপের সুবিধাগুলি উপভোগ করতে আমরা কি ডেটা টীকাকে আরও দক্ষ করে তুলতে পারি?
আমি বর্তমানে কাজ করি
এই পোস্টে, আমি আমাদের পদ্ধতির ধাপে ধাপে বর্ণনা করব এবং কিছু পরীক্ষার ফলাফল দেখাব। আপনি যদি আমাদের কাজ, অন্যান্য পদ্ধতির গবেষণা এবং আমাদের পরীক্ষার ফলাফলের গভীরে যেতে চান, তাহলে আমাদের নিবন্ধটি পড়ুন
আমাদের পদ্ধতির সামগ্রিক পাইপলাইন চারটি প্রধান অংশ নিয়ে গঠিত: পয়েন্ট ক্লাউড রোড টীকা, ডেটা প্রস্তুতি, মুখোশযুক্ত ক্ষতি, এবং সেগমেন্টেশন মডেল নিজেই।
প্রথমত, আমরা পয়েন্ট ক্লাউড ডোমেনে রোড টীকা সহ ডেটা পাই। এর পরে, আমরা সমজাতীয় রূপান্তর এবং ক্যামেরা পরামিতি ব্যবহার করে পয়েন্টগুলি প্রজেক্ট করি। তারপরে, প্রজেক্টেড পয়েন্টগুলি ব্যবহার করে আমরা যোগ র্যান্ডম নয়েজ সহ ক্ষতি গণনার জন্য রোড গ্রাউন্ড ট্রুথ মাস্ক পাই। ক্যামেরা থেকে ছবিগুলি সেগমেন্টেশন মডেল দ্বারা প্রক্রিয়া করা হয়। পূর্ববর্তী ধাপের ভবিষ্যদ্বাণী এবং মুখোশগুলি মাস্কড লস দ্বারা ব্যবহার করা হয়, যা স্পার্স গ্রাউন্ড ট্রুথ ডেটা ব্যবহার করে মডেলটিকে প্রশিক্ষণের অনুমতি দেয়। অবশেষে, মডেল প্রশিক্ষণের পরে, আমরা একটি খণ্ডিত রাস্তা সহ একটি চিত্র পাই। প্রশিক্ষণ পদ্ধতির পাশাপাশি মাস্কড লস প্রজেক্টেড গ্রাউন্ড ট্রুথকে প্রথাগত 2D মুখোশের সাথে মিশ্রিত করার অনুমতি দেয়, যা ডেটার পরিপ্রেক্ষিতে পদ্ধতিটিকে নমনীয় করে তোলে।
এখন এর প্রতিটি অংশ ঘনিষ্ঠভাবে তাকান.
1 পয়েন্ট ক্লাউড ডেটা টীকা
প্রশিক্ষণের সময় লিডার ডেটা ব্যবহার করতে, আমাদের পয়েন্ট ক্লাউডের জন্য শব্দার্থিক বিভাজন টীকা দরকার। এটি ম্যানুয়ালি একটি ওপেন সোর্স পয়েন্ট ক্লাউড টীকা টুল ব্যবহার করে করা যেতে পারে, যেমন
2 ডেটা প্রস্তুতি
একটি প্রাপ্ত বিন্দু ক্লাউড চিত্র সমতলে প্রজেক্ট করা হয় সমজাতীয় রূপান্তর ব্যবহার করে আমাদের প্রয়োজনীয় ক্লাস লেবেল সহ একটি চিত্র বিভাজন মাস্ক পেতে, আমাদের ক্ষেত্রে এটি একটি রাস্তা। এই ধরনের প্রজেকশনের জন্য, আমরা সিঙ্ক্রোনাইজড ক্যামেরা এবং লিডার ফ্রেম ব্যবহার করি, ক্যামেরা প্যারামিটার সহ, এবং লিডার থেকে ক্যামেরা ফ্রেমে একটি রূপান্তর ম্যাট্রিক্স। লিডার ফ্রেমে সমজাতীয় বিন্দু x = (x, y, z, 1)ᵀ
বিন্দু y = (u, v, 1)ᵀ
বিন্দুতে একটি চিত্র সমতলে প্রজেক্ট করতে, আমরা সমীকরণটি ব্যবহার করি:
রূপান্তরের পরে, আমরা রাস্তার শ্রেণী এবং লিডার স্ক্যান থেকে অন্যান্য সমস্ত পয়েন্টের জন্য পিক্সেলের মুখোশ হিসাবে চিত্রটিতে পয়েন্ট পাই। আমাদের অন্যান্য লিডার স্ক্যান পয়েন্টের প্রয়োজন, কারণ লিডার পয়েন্টগুলি বেশিরভাগই ছবির নীচে অবস্থিত এবং ছবির শীর্ষে কোনও বিন্দু নেই যা সম্ভাব্যভাবে সেই এলাকায় ভুল ভবিষ্যদ্বাণীর দিকে পরিচালিত করে৷ এই প্রভাবটি দূর করার জন্য, আমরা মাস্কের উপরের অর্ধেক (নেতিবাচক শ্রেণী) এলোমেলো পয়েন্টগুলি যোগ করি যেখানে আমরা ক্ষতি গণনা করব পয়েন্টগুলির বন্টনের ভারসাম্য বজায় রাখতে।
3 মুখোশযুক্ত ক্ষতি
আমাদের পদ্ধতির একটি গুরুত্বপূর্ণ উপাদান হল মডেল প্রশিক্ষণের সময় একটি মুখোশযুক্ত ক্ষতি ফাংশনের প্রয়োগ। এই পদ্ধতিটি লিডার থেকে প্রাপ্ত গ্রাউন্ড-ট্রুথ মাস্কের অন্তর্নিহিত স্প্যার্সিটি দূর করে। প্রচলিত লস ফাংশনগুলির বিপরীতে, যা ত্রুটিগুলি গণনা করার জন্য সম্পূর্ণ চিত্রের মুখোশগুলিকে বিবেচনা করে, মুখোশযুক্ত ক্ষতি শুধুমাত্র সেই অঞ্চলগুলিতে ফোকাস করে যেখানে লিডার পয়েন্টগুলি উপস্থিত রয়েছে৷ এই লক্ষ্যযুক্ত ক্ষতির গণনা নিশ্চিত করে যে মডেলের শিক্ষা প্রাসঙ্গিক অঞ্চলে কেন্দ্রীভূত হয়, রাস্তা বিভাজন নির্ভুলতা উন্নত করতে lidar দ্বারা প্রদত্ত তথ্য ব্যবহার করে। অন্য কথায়, আমরা পয়েন্টের গ্রিডে ভবিষ্যদ্বাণীর ত্রুটি পরিমাপ করে মডেলটিকে রাস্তার বিভাজন শিখতে বাধ্য করি। এটি শাটার চশমা (শাটার শেড) ব্যবহার করে ছবিটি দেখার সাথে তুলনা করা যেতে পারে।
প্রতিটি ছবির জন্য মুখোশের ক্ষতি এইভাবে প্রণয়ন করা যেতে পারে:
প্রশিক্ষণের চিত্রগুলিতে একটি বাইনারি মাস্ক প্রয়োগ করে মুখোশের ক্ষতি করা হয়। এই মুখোশটি সেই অঞ্চলগুলির রূপরেখা দেয় যেখানে লিডার পয়েন্টগুলি অবস্থিত এবং চিত্র সমতলের উপর প্রক্ষিপ্ত। প্রশিক্ষণ পর্বের সময়, ক্ষতি শুধুমাত্র সেই পিক্সেলগুলির জন্য গণনা করা হয় যেগুলি মুখোশের নীচে রয়েছে, কার্যকরভাবে চিত্রের বৃহৎ অব্যক্ত অংশগুলিকে উপেক্ষা করে৷ এই পদ্ধতিটি শুধুমাত্র প্রশিক্ষণ প্রক্রিয়ার কার্যকারিতাই উন্নত করে না, তবে লিডার ডেটার বিরল প্রকৃতির দ্বারা উপস্থাপিত সমস্যাগুলিকেও প্রশমিত করে।
4 মডেল প্রশিক্ষণ
চূড়ান্ত ধাপে তৈরি করা ডেটাসেটে সেগমেন্টেশন মডেলের প্রশিক্ষণ অন্তর্ভুক্ত। প্রশিক্ষণ প্রক্রিয়া যেকোন সেগমেন্টেশন মডেলের জন্য উপযুক্ত হতে পারে এবং আমাদের গবেষণায় আমরা PSPNet ব্যবহার করেছি। এই পর্যায়ে, সবকিছু আপনার ডেটার গুণমান, এর পরিমাণ এবং উপলব্ধ কম্পিউটিং শক্তির উপর নির্ভর করে।
আমরা ওপেন-সোর্স সহ বিভিন্ন ডেটাসেটে আমাদের পদ্ধতির পরীক্ষা করেছি, যেমন পারসেপশন ওয়েমো ওপেন ডেটাসেট এবং KITTI-360 ডেটাসেট। প্রতিবার আমরা তিনটি পরীক্ষার একটি সেট পরিচালনা করেছি: শুধুমাত্র 2D রোড গ্রাউন্ড ট্রুথ ব্যবহার করে, গ্রাউন্ড ট্রুথ হিসেবে শুধুমাত্র প্রজেক্টেড পয়েন্ট এবং এই ধরনের গ্রাউন্ড ট্রুথের মিশ্রণ। এবং রাস্তা বিভাজন (IoU এর%) ফলাফল আশাব্যঞ্জক দেখাচ্ছে:
পরীক্ষা | KITTI-360 ডেটাসেটে প্রশিক্ষিত | Waymo ডেটাসেটে প্রশিক্ষিত |
---|---|---|
শুধুমাত্র 2D (বেসলাইন) | 92.3 | 96.1 |
শুধুমাত্র প্রজেক্টেড 3D | ৮৯.৬ | 94.7 |
2D + প্রজেক্টেড 3D মিশ্রিত করুন | 92.7 | 96.3 |
এই সংখ্যাগুলির মানে হল যে আপনার যদি শুধুমাত্র লিডার সেগমেন্টেশন থাকে এবং আপনি 2D ইমেজ টীকাগুলিতে অতিরিক্ত সংস্থান ব্যয় করতে না চান তবে ঠিক আছে। শুধুমাত্র 2D ইমেজ মাস্কে প্রশিক্ষণের তুলনায় মানের হ্রাস তুচ্ছ হতে পারে। যদি আপনার কাছে উভয় সেন্সর থেকে ডেটা টীকা করার সংস্থান থাকে, তাহলে প্রশিক্ষণ প্রক্রিয়া চলাকালীন এই দুটি ধরণের টীকা একত্রিত করুন এবং মেট্রিক্স বৃদ্ধি পান।
গবেষণার সময় আমরা যে পদ্ধতিটি পর্যবেক্ষণ করেছি তার সর্বোপরি সুবিধাগুলি হল: