Как я могу использовать фильтр частиц MRPT с 3D данными вместо 2D? - PullRequest
1 голос
/ 29 октября 2019

Я создаю приложение локализации только для диапазона, для которого я хотел бы использовать фильтр частиц MRPT. Я смотрю на примеры приложений MRPT:

ro-localization
pf-localization
rbpf-slam

Все они отлично работают на данных образца, но полученная поза возвращается только в 2D. Сэмпл pf-localization имеет настройку use_3D_poses = true, но это просто добавляет возврат 0 для оси Z.

Я пытался добавить значения Z к маякам, но поза Z всегда равна нулю. Как я могу использовать фильтр частиц MRPT в трехмерном пространстве вместо 2D?

Меня интересуют только значения положения XYZ мобильного узла.

Как я могу использовать свои собственные живые данные? У меня есть:

Позиции привязки Расстояние от привязки до мобильного узла.

Я использую MRPT для окон, построенных из источника.

1 Ответ

1 голос
/ 30 октября 2019

Различные возможности RO-SLAM и RO-локализации теперь лучше описаны в этой странице документов MRPT.

При использовании pf-локализации со своими собственными данными вы можете напрямую использоватьпользовательская программа, использующая mrpt :: slam :: CMonteCarloLocalization3D . В качестве альтернативы вы можете остаться в курсе последней версии mrpt (git branch develop), где мы очень скоро перенесем существующее приложение CLI pf-localization в класс C ++ в mrpt::apps. Преимущество последнего заключается в повторном использовании всей записи файла журнала, захвата 3D-сцен, онлайн-визуализации и т. Д. Но ничто не мешает вам прыгнуть прямо вперед и создать собственное приложение, основанное на pf-локализации в качестве отправной точки.

(Отказ от ответственности: я ведущий разработчик MRPT)

...