Thanks @sksavant for your work testing dual quaternion global registration! I hope all is well with you. What follows are a few of my first questions about your tests and my attempts to duplicate them:
0. Format & initial conditions. From browsing your demo code, it seems that dual quaternion registration as written expects input as 'ballpark aligned' meshes -- that is, input that is already been aligned (via ICP, et cetera). Can this implementation handle point cloud input and/or randomly aligned input?
1. Other results. I note your testing with the Stanford bunny data set, but I'd love to know if you've tested with much larger data sets. Do you think this code is suitable for working with large numbers of large meshes? What general memory performance do you see in these cases?
2. Build issues. I've attempted to compile from your CMakeList.txt
, but as I compiled from the latest trunk (1.8) I do not have this header file:
#include <pcl/registration/dq_diffusion.h>
However, it does not appear that PCL 1.7.2 has a 'dq_diffusion' header file, either. Am I missing something?
Let me be clear that I did edit CMakeList.txt
as follows to account for my build environment:
#find_package(PCL 1.7.2 EXACT)
--> find_package(PCL 1.8)
#find_package(Eigen REQUIRED)
--> find_package(Eigen3 REQUIRED)
Thanks again,
-Kevin