Octomap: отслеживание неизвестного пространства - PullRequest
0 голосов
/ 24 июня 2019

Я новичок в Octomap, но у меня неплохой опыт работы с обработкой трехмерной геометрии (я один из двух основных авторов MeshLab). Я смог скомпилировать OctoMap как отдельную библиотеку C ++ (без необходимости заниматься интеграцией ROS). Я хотел бы использовать его для поддержки автоматического 3D-сканирования общего объекта среднего размера (объем 50 см x 50 см x 50 см). Мой 3d-сканер установлен на руке робота. Octomap octree должно быть базовой структурой данных, чтобы решить, какая из следующих областей объекта будет лучше всего выбрана. Как правило, по крайней мере в начале я должен потратить гораздо больше усилий на сканирование, чтобы дать начальный охват объекту и после того, как сфокусируюсь на уже покрытой части, которая может представлять некоторые дыры. На данный момент я хочу просто рассмотреть базовое покрытие объекта. Чтобы достичь этого, я должен отследить неизвестные части всего ограничивающего тома. В самом начале неизвестный ограничивающий объем будет 50 см х 50 см х 50 см. При первых данных сканирования, полученных со сканера, весь начальный объем должен быть разделен на 8 субкубов. Один содержит трехмерные точки, предоставленные сканером, и 7 кубов, представляющих оставшееся неизвестное пространство. Поэтому на следующем шаге я должен переместить сканер в один из этих 7 субкубов, чтобы получить некоторую начальную информацию о части объекта, содержащейся в этом неизвестном пространстве. К сожалению, я не понимаю, где я могу установить в Octomap весь начальный объем сканирования и установить его как неизвестный. Подскажите, пожалуйста, как это сделать? Должен ли я расширить базовую структуру данных Octree?

Заранее спасибо всем, кто может мне помочь.

...