Предполагая, что все Kinect являются стационарными, я полагаю, вам нужно будет пойти в следующем порядке:
- решить, какой Kinect использовать в качестве глобальной ссылки,
- получить параметры для3D-преобразование для каждого из других Kinects - я бы попытался использовать PMatrix3D и applyMatrix (), хотя это может быть медленным,
- применить преобразования к каждому из облаков точек других Kinects и нарисоватьоблака
Я (пока) не знаю, как получить параметры преобразования для преобразования Прокруста , но, если они не изменятся, вам, вероятно, придется установитьдо нескольких опорных точек, возможно, путем отображения облаков точек из каждой пары Kinects и регистрации точек, которые, как вы знаете, одинаковы в обоих облаках точек.Получив их достаточно, создайте PMatrix3D и примените его внутри push / popMatrix.Этот подход используется этим парнем: http://www.youtube.com/watch?v=ujUNj1RDL4I
Альтернативный подход заключается в использовании алгоритма итеративной ближайшей точки и построении трехмерного преобразования из его выходных данных.Мне бы очень хотелось, чтобы для обработки была библиотека ICP или PCL, если кто-нибудь знает хорошую.