Як алгоритми SLAM обробляють мінливе середовище?


13

Я займаюся основою проекту, і у мене є питання про сучасний стан методик SLAM.

Коли пристрій, оснащений SLAM, виявляє об'єкт, положення цього об'єкта зберігається. Якщо ви подивитеся на хмару точок, яку генерує пристрій, ви побачите точки для цього об’єкта, і генеровані з нього моделі включатимуть тут геометрію.

Якщо об'єкт розміщений у раніше порожньому просторі, він виявляється, і додаються точки. Подальші моделі матимуть геометрію, що описує цей новий об’єкт.

Як пристрій реагує, якщо цей об’єкт видалено? Наскільки я бачив, системи SLAM, як правило, залишають точки на місці, в результаті чого "привидна" геометрія. Існують алгоритми, які не враховуватимуть самотні точки, викликані перехідними контактами, але об’єкти, які залишилися достатньо довгими для створення міцної моделі, залишаться в пам'яті пристрою. Чи є якісь системи, здатні виявити, що раніше зайнятий простір тепер порожній?


Це питання не має великого відношення до машинного навчання.
Джош Вандер Хук

Можливо, ні; Я не був на 100% впевнений, які теги підійдуть. Програма, яку я маю на увазі, здавалося, підходить, але, можливо, без цього контексту вона менш застосовна ...
anaximander

Відповіді:


5

Це дуже залежить. Оскільки SLAM - це проблема (або принаймні техніка), а не рішення, то немає остаточного алгоритму SLAM. Семантично ви повинні вирішити, що відбувається на "карті" навколишнього середовища, і це визначає, як ваш алгоритм повинен обробляти перехідні (інакше рухомі) сигнали. Але це відступ.

Постійні карти:

Постійні карти повинні містити достатню кількість інформації, щоб локалізувати себе щодо відомої геометрії. Зазвичай використовується в будівлях. Як правило, читабельний для людей. Дивіться роботу Віллоу-Гаража. або що-небудь від Трона в його досить відомому підручнику. Якщо ви втратите цю карту, вам доведеться її знову створювати.

  1. Видалення об’єктів. Так, об’єкт на час з’явиться на статичній карті. Якщо не буде вжито жодних заходів для видалення раніше виявлених об'єктів, то воно зберігатиметься. Типове 2D-представлення на основі сітки використовуватиме кожну комірку сітки для представлення ймовірності об’єкта, тому через час об’єкт буде «в’янути».

  2. Додавання об’єктів. Само, як і вище.

Місцеві карти:

Насправді SLAM зазвичай використовується для локалізації робота під час його переміщення, і карта не зберігається постійно (або, вона зберігається постійно, а використовуються лише найближчі функції Y). Локальні карти - це те, що робот повинен знати, щоб визначити, як він перемістився за останні X хвилини, де X залежить від програми. Якщо ви втратите карту, ви все одно можете літати просто чудово, використовуючи будь-які функції, які зараз видно.

  1. Пакетні методи, такі як регулювання розшарування з використанням візуальних особливостей, є дуже поширеною технікою в цьому напрямку. Функції можуть зберігатися з часом і навіть переглядатися, але рухома функція - це просто ненадійна функція, і вона буде ігноруватися при спробі з'ясувати, де знаходиться робот.

  2. Visual SLAM - це саме це. Це оцінювач delta-P (зміна пози), а не алгоритм локалізації на основі карти.

  3. Коротше кажучи, доки більшість речей зараз не рухається, не має значення, чи ви вилучаєте об’єкт, коли робот не "дивиться" на нього.

Приклад

Тож роби це. Коли ви читаєте папір SLAM, вирішіть наступне:

  1. Вони справді будують карту?

  2. Вони просто зберігають список функцій та локацій?

  3. Якщо так, то які "функції" перейдуть на карту? Рядки, точки, візуальні особливості?

  4. Чи можуть ці функції переміститися?

  5. Якщо так, то як вони впораються з цим?

  6. Нарешті, шум датчика часто «виглядає» як рухомі функції. Як вони поводяться з шумом датчиків? Тому що це часто визначає, що відбувається з рухомими ознаками.

Ви отримаєте різну відповідь для кожного документа / автора / книги / програми. Коротше кажучи, їх зазвичай опускають, оскільки вони не допомагають роботові значно локалізуватись, і цього можна уникнути, просто узявши кілька планувальників шляху низького рівня, який використовує лише локальну інформацію.

Удачі, слэм - величезна тема.


Спасибі! Чи знаєте ви які-небудь прийоми, які відстежують, де об’єкти були «придбані» та «втрачені»? Я розглядаю додатки підмножини алгоритмів типу SLAM, і одна цікава область - виявлення "перехідних" областей, таких як двері та закупорені кути, з яких можуть з'являтися об'єкти. Ця програма повертає звичайну метрику ймовірності вицвітання на голову - замість того, щоб об’єкти "зникали", коли їх не видно, непомічені ділянки повільно збільшують своє значення, щоб позначити, що ми не знаємо, що тут, тому що ми не дивилися останнім часом, тому слід бути обережними при русі в цей простір.
anaximander

Шлях складніше. Єдиний спосіб зробити це правильно - це однозначно ідентифікувати об'єкти. Мовляв, поставте на них штрих-код. В іншому випадку об'єкт A, можливо, перемістився в місце розташування B, а може бути, A і B помінялися місцями і т.д. Вам потрібен алгоритм, який може "визнати", що рухомі речі - це фактично "двері", які слід прикріпити до "стін", але лише тоді, коли я "всередині", але що означає "всередині" для робота? Я думаю, ви повинні прочитати більше і звітувати.
Джош Вандер Хук

Так, ідея полягає у тому, щоб уникнути проблеми семантики, просто виділивши "це область, де я продовжую бачити речі, яких раніше не було, або перестаю бачити речі, які там були". Швидше за все, ця область є деяким переходом - двері, коробка, вікно, закупорений кут. Хто з тих, з ким ми маємо справу, менш важливий; це виключно для уникнення зіткнень, тому ми хочемо уникати всіх цих областей. Крім того, нам особливо не потрібно знати, який це об'єкт; лише те, що істотна зміна загальної кількості місця, яке займає речі.
anaximander

Огляд. Література. Така проблема виникає при A) речі рухаються. В) робота, що рухається. В) Робот загубився. Г) неправильні карти. Кожна з цих 4 речей має 4 різних правильних рішення. Якщо ви не впораєтеся з усіма 4-ма, ви створите абсолютно неправильні карти. Ось чому SLAM не вирішено, і все ще важко. Прочитайте і поверніться з конкретними питаннями, пов'язаними з тим, що ви дізналися.
Josh Vander Hook

1
Ось що я роблю; чим більше я читаю, тим довше стає мій список речей для читання! Це було першим із багатьох питань, які я порушив. Вибачте за те, щоб поширити питання дещо в коментарях; Я не отримав багато відповідей, і SLAM - це така величезна тема ... ти, здавалося, знаєш, про що ти говориш, тому я сподівався, що я можу отримати кілька покажчиків. У моєму списку є документи семантичного картографування, але є кілька інших, які мені потрібно прочитати як основу для цього ... У будь-якому разі, я думаю, зараз повернувся до читання.
anaximander
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.