Обнаружение стены в имитации датчика MATLAB SLAM

Я работаю над простой симуляцией SLAM для проекта. Вот проблема:

Для симуляции я буду использовать мобильный робот, движущийся в комнате. Робот оснащен лазерными датчиками расстояния, поэтому он может определять расстояние от себя до стены изнутри под углом, как показано на первом рисунке: Робот, стена, которая будет обнаружена, и красным цветом обнаружены точки в стене

Код MATLAB, который я реализовал для симуляции, состоит в том, чтобы просто рассчитать углы от каждой точки стены до позы робота и вернуть все точки, угол которых находится внутри, например, [-60°,+60°].

Однако для более сложных конфигураций комнат его нельзя использовать, поскольку стены, которые не должны быть обнаружены (стены из других комнат), также будут обнаружены, как видно на втором рисунке:

Мне нужен лучший способ реализовать это обнаружение внутри симуляции, чтобы я мог использовать его для любых типов комнат, таких как эта, с такими результатами:

0 ответов

Другие вопросы по тегам