Как робот рисует карту комнаты, которую видит впервые

Лидар выдаёт несколько сотен точек за оборот и ни малейшего понятия, где он находится. Один ползунок проходит путь от этого облака до плана помещения, где робот стоит в правильном месте.

Этап Облако точек
  1. 0
  2. 1
  3. 2
  4. 3
  5. 4

Нажмите на участок схемы, чтобы открыть этап.

Почему вся хитрость в петле

Одометрия умеет говорить только о том, что изменилось с прошлого кадра, поэтому её ошибка растёт с расстоянием и сама по себе никогда не уменьшается. Узнавание места, где ты уже был, — единственное измерение, которое сравнивает «сейчас» с «давно»: одно замыкание петли забирает обратно ошибку, накопленную за тысячу шагов.

Что внутри

  1. 1 Датчик возвращает расстояния, а не комнату — На следующем обороте каждая точка ляжет чуть иначе. Вся сложность именно в этом дрожании.
  2. 2 Оставляем только то, что можно узнать дважды — Ориентир — это не «интересное место», а место, которое вы сможете сопоставить снова, глядя под другим углом.
  3. 3 Робот находит себя по тому, как поехали углы — Ни один отдельный замер не ошибочен. Снос — это сумма множества честных мелких погрешностей.
  4. 4 Первый угол снова попадает в поле зрения — Поправка не знает, какой именно шаг был неверным, поэтому списывает с каждого пропорционально пройденному пути.
  5. 5 Облако превращается в план, внутри которого стоит робот — Картирование и локализация — одна задача. Ни одну из них нельзя решить первой.

Интерактивные статьи

Этап Облако точек
  1. 0
  2. 1
  3. 2
  4. 3
  5. 4
1 / 5