Как объединить облако точек одного и того же объекта, сканирование рук - PullRequest
0 голосов
/ 06 февраля 2019

Я работаю над школьным проектом, и одна из вещей, которые мне нужно сделать, это объединить несколько сканов одного и того же объекта.Эти сканы или файлы .obj, и я хочу объединить их, чтобы получить более качественный объект сканирования.

Я ищу решения в Интернете, но не нахожу приемлемого решения, поэтому, если у кого-то есть идея илитрек, чтобы следовать, я буду признателен.

Если у вас есть какие-либо вопросы о моей проблеме, спросите меня, может быть, мой английский не правильный, я француз.

Спасибо!

1 Ответ

0 голосов
/ 07 февраля 2019

У вас есть коллекция из N облаков точек, представляющих один и тот же объект, возможно, все в другом пространстве (заданном матрицей преобразования), и вы хотите объединить их только в одно облако точек.Это правильно?

Я могу упустить момент, потому что единственный метод, который я могу придумать, довольно прост.Так что поправьте меня, если я ошибаюсь.

Поместите все облака точек в одно пространство.Теперь все ваши точки находятся в одном пространстве, и объединение ваших преобразованных облаков точек является тривиальным.

Возможно, вы захотите удалить дубликаты точек, поскольку они могут раздражать алгоритмы, использующие окрестности.Для этого вы можете использовать дерево kdt и выполнить поиск по радиусу вокруг каждой точки с очень маленьким радиусом для обнаружения кластеров: оставьте только одну точку для каждого найденного кластера.С разрешением сканирования вы могли бы догадаться, каково типичное расстояние d между двумя соседними точками.В противном случае вы можете оценить его, рассчитав среднее расстояние между точкой и ее ближайшей / второй ближайшей точкой для каждого преобразованного облака точек.Теперь «маленький радиус» - это небольшая часть этого типичного расстояния d.

...