📡 LiDAR-сканування
Обертовий 2D LiDAR випускає промені, що марширують до стін, будуючи зашумлену хмару точок і log-odds сітку зайнятості (вільно вздовж променя, зайнято в точці влучання). Перетягуйте сенсор кімнатами й коридорами.
Про цю симуляцію
Ця симуляція моделює обертовий 2D-сенсор LiDAR, що вимірює відстань за допомогою трасування променів: під кожним кутом він перевіряє промінь на перетин з усіма відрізками стін за справжньою формулою перетину промінь-відрізок і залишає найближче влучання як дальність — так само, як дальномірний сенсор часу прольоту обирає першу поверхню, від якої відбивається лазерний імпульс. Кожне влучання стає точкою в зростаючій хмарі точок, тоді як клітинки вздовж променя позначаються вільними, а клітинка влучання — зайнятою в сітці зайнятості log-odds — той самий імовірнісний метод картографування, що застосовується в реальних системах SLAM. До кожного виміру дальності додається гаусів шум, що імітує реальну неточність сенсора.
🔬 Що показано
Обертовий промінь сканує на 360° навколо сенсора, розміщеного в одній із кількох планувань стін. Точка влучання кожного променя наноситься зліва як хмара точок і накопичується справа в сітку зайнятості, де зелені клітинки — зайняті (ймовірно стіна), а темні клітинки — вільний простір, крізь який промінь пройшов безперешкодно.
🎮 Як користуватись
Перетягуйте жовту точку сенсора по кімнаті, щоб пересканувати з нової позиції (це очищує карту). Використовуйте повзунки, щоб змінити кількість променів на скан (кутова роздільна здатність), максимальну дальність, шум дальності σ та швидкість обертання, і перемикайте середовища кнопками пресетів: Порожня кімната, Захаращена, Коридор та Одна перешкода. Натисніть «Очистити карту», щоб скинути накопичену хмару точок і сітку.
💡 Чи знали ви?
Реальні пристрої LiDAR у безпілотних автомобілях і роботах працюють за тим самим принципом, але значно швидше й точніше: вони випускають тисячі лазерних імпульсів за секунду, вимірюють час, за який кожен відбивається назад (або зсув фази), і перетворюють це на дальність. Об'єднання дальностей з багатьох кутів — саме так сітка зайнятості в цій симуляції, як і реальне програмне забезпечення картографування роботів, будує карту свого оточення.
Поширені запитання
Що означає LiDAR і як він вимірює відстань?
LiDAR означає Light Detection and Ranging («світлове виявлення та вимірювання відстані»). Він працює, випромінюючи лазерний імпульс і вимірюючи, скільки часу той летить до об'єкта та відбивається назад (час прольоту), або вимірюючи зсув фази неперервного променя. Оскільки світло рухається з відомою сталою швидкістю, цей час (або різниця фаз) безпосередньо перетворюється на вимір відстані. Ця симуляція наближено відтворює ту саму ідею у 2D за допомогою геометричного трасування променів замість реального вимірювання часу прольоту.
Що таке трасування променів і чому воно потребує перетину промінь-відрізок?
Трасування променів випускає уявну лінію від сенсора в обраному напрямку і знаходить, де вона вперше зустрічає перешкоду. Щоб знайти цю точку, симуляція розв'язує перетин між променем і кожним відрізком стіни в сцені за допомогою їхніх параметричних рівнянь прямої, а потім залишає лише найближчий дійсний перетин (t та u в межах діапазону). Це та сама базова геометрична операція, що використовується в рендерингу реального часу, 2D-іграх та моделях дальномірних сенсорів у робототехніці.
Що таке хмара точок?
Хмара точок — це просто набір 3D (або, тут, 2D) координат, у яких промені сенсора справді у щось влучили. Кожен промінь у цій симуляції, що влучає в стіну, додає одну точку в цьому місці; за багато обертів тисячі таких точок накопичуються у форму, яка окреслює контур кімнати та перешкод — саме так реальні пристрої LiDAR, що використовуються в робототехніці та автономних автомобілях, будують картину свого оточення.
Що таке сітка зайнятості і як вона будується з зашумлених показів?
Сітка зайнятості ділить середовище на клітинки й відстежує для кожної ймовірність того, що вона зайнята. Ця симуляція використовує подання log-odds: щоразу, коли промінь проходить крізь клітинку, не зупиняючись, до доказів вільного простору цієї клітинки додається значення; коли промінь завершується в клітинці, додається доказ зайнятості. Оскільки кожен вимір відстані містить гаусів шум, жодне окреме сканування не є ідеально надійним, але усереднення багатьох зашумлених сканувань з часом наближає сітку до точної карти — той самий принцип, що використовується в реальних системах SLAM (одночасна локалізація та картографування).
Чому збільшення кількості «променів на скан» покращує карту, і в чому компроміс?
Більше променів на скан означає вищу кутову роздільну здатність, тож тонкі перешкоди та гострі кути з меншою ймовірністю губляться між двома сусідніми променями, а результуюча хмара точок і сітка зайнятості виглядають детальнішими. Компроміс, як і в реальному обладнанні, — це вартість: більше променів за оберт вимагає більше вимірів, які потрібно виконати й обробити за той самий час, що у фізичному пристрої LiDAR означає швидший (і зазвичай дорожчий) механізм сканування або нижчу максимальну швидкість обертання.