آقا فقط هندسه رو اضافه کن! تشخیص سه‌بعدی بدون دردسر و بدون دخالت انسان 😎

Fall Back

بذار یه قصه جالب برات تعریف کنم از یه ایده جدید توی دنیای هوش مصنوعی که احتمالاً می‌تونه خیلی چیزها رو روونه‌تر و بزرگ‌تر کنه. الان اگه بخوای سیستم‌هایی بسازی که بتونن توی دنیای سه‌بعدی (۳D) اشیا رو تشخیص بدن، باید کلی عکس سه‌بعدی رو دستی برچسب بزنی. یعنی بشینی دونه‌دونه بگی هر شیء کجاست و چی هست. این کار نه تنها واقعاً وقت‌گیر و گرون درمیاد، بلکه دسته‌بندی هم معمولاً محدوده و فقط شامل چندتا شیء خاص میشه. خلاصه، هزار تا چیز مانع میشه که سیستم‌ها رو توی دنیای واقعی و بزرگ اجرا کنی.

حالا بیایم یه نگاه بندازیم به مدل‌های جدید ۲ بعدی که با تصویر و متن کار می‌کنن؛ مثلاً سیستم‌هایی که با یه سرچی شات زده و متن توضیح، کلی عکس رو می‌تونن بفهمن. مثلاً مدل‌های Vision-Language 2D همون مدل‌هایی هستن که عکس‌ها و متن‌های زیادی (از کل اینترنت!) دیدن و حالا تقریباً هر چیزی رو که با یه جمله بش بگی، می‌تونن تو عکسها پیدا کنن—این یعنی open vocabulary detection؛ یعنی لزومی نداره فقط مثلاً «مهتابی» یا «کارتن» رو بشناسه، هر چیزی که توی دیتا نبود رو هم می‌شناسه!

حالا بنداز دور اون همه کار دستی و برچسب‌زدن سه‌بعدی رو! یک سری محقق باهوش اومدن و از همین مدل‌های پیشرفته ۲ بعدی استفاده کردن تا سه‌بعدی‌ها رو هم بی‌دردسر هندل کنن. قشنگیش اینجاست که نیاز به هیچ آموزش خیلی خاص و خاک برسری نداره! کل داستان اینطوریه:

۱. اول میرن سراغ یه مدل بینایی-زبانی (همون vision-language detector) که هرجور شی‌ای رو با یه توضیح متنی می‌تونه پیدا کنه؛ مثلاً بهش میگی «صندلی قرمز» و خودش تو تصویر پیدا می‌کنه.
۲. بخش‌های مورد نظر تو عکس با استفاده از SAM جدا میشن — SAM یه مدل بریدن و تیکه‌تیکه کردن تصویر هست.
۳. حالا با استفاده از ریاضی و هندسه دوربین و اطلاعات عمق، مثلا عمق مصنوعی (pseudo-depth) یا سیستم‌هایی مثل LiDAR (که با لیزر فاصله‌های سه‌بعدی رو اندازه می‌گیره)، اون تیکه‌ها رو از ۲بعد می‌برن تو ۳بعد.
۴. برای اینکه بتونن دور هر شیء یه جعبه سه‌بعدی بکشن (همون 3D bounding box)، اومدن یه روش هندسی جدید ساختن که اصلاً نیاز به آموزش و داده برچسب زده شده نداره. این روش اسمش Geometric Inflation Strategy هست که با الگوریتم‌هایی مثل DBSCAN (یک مدل خوشه‌بندی که داده‌ها رو گروه‌بندی می‌کنه) و Rotating Calipers کار می‌کنه. مثلاً DBSCAN یعنی داده‌ها رو بر اساس نزدیکی‌شون به هم، تو یه دسته می‌ذاره.

خلاصه کار پیچیده اما خیلی جالبه: هیچ‌کس نمیاد دستی چیزی برچسب بزنه، همه‌چیز اتوماتیک و فقط با همون مدل‌های قوی بینایی-متنی انجام میشه و سیستم سه‌بعدی هم درمیاد، بدون حتی یک دور آموزش خاص!

برای اینکه نشون بدن این روش الکی نیست و تو شرایط سخت هم جواب میده (مثلاً جاهایی که مه زیاده و تصویر رو تار می‌کنه)، یه دیتاست جدید ساختن به اسم Pseudo-nuScenes. این همون دیتاست معروف nuScenes هست، ولی روش مه مصنوعی انداختن و فقط تصاویر RGB (یعنی اون‌هایی که فقط رنگ رو دارن، نه اطلاعات عمق) رو استفاده کردن، یعنی نه LiDAR، فقط با عکس ساده.

نتایج؟ تقریباً توی همه حالت‌هایی که تست کردن، چه وقتی اطلاعات LiDAR داشتن و چه فقط با RGB و عمق مصنوعی کار می‌کردن، عملکردشون با بقیه سیستم‌های قدر قاطی می‌کنه. یعنی شما دیگه به آموزش جدید و کلی لیبل انسانی نیاز نداری و هر وقت دوست داشتی، می‌تونی هر شیء عجیب و غریبی رو حتی اگه تو دیتاست نبود، راحت تو سه‌بعدی پیدا کنی!

پیام مهمشون اینه که مدل‌های پایه ۲بعدی (foundation models) که کلی اطلاعات قبلاً دیدن واقعاً پتانسیل عظیمی دارن تا کارهای سخت مثل درک سه‌بعدی دنیا رو بدون دردسر و زحمت مقیاس‌پذیر کنن.

راستی اگه دلت خواست خودت امتحانش کنی یا بیشتر سرک بکشی، کل کدها و منابعشون رو رایگان گذاشتن تو گیت‌هاب:
https://github.com/atharv0goel/open-world-3D-det

پس اگه دنبال یه راه آسون، منعطف و مقیاس‌پذیر برای تشخیص سه‌بعدی می‌گردی که نیاز به سرباز صفر نداره (!) این کار رو حتماً یه نگاه بنداز. به قول خودشون: فقط هندسه رو اضافه کن، بقیش آماده‌ست! 🚀

منبع: +