kzampog / cilantro

A lean C++ library for working with point cloud data
MIT License
1.03k stars 208 forks source link

A error in non_rigid_icp.cpp for Example 2: Compute a densely supported warp field #53

Closed Gaoqinghong91 closed 3 years ago

Gaoqinghong91 commented 4 years ago

when i make non_rigid_icp.cpp for Example 2: Compute a densely supported warp field, i get some error,like : cilantro-master/examples/non_rigid_icp.cpp:123:23: error: missing template arguments before ‘(’ token cilantro::KDTree3f(src.points).search(src.points, cilantro::kNNNeighborhood ^ /home/eva/Documents/cilantro-master/examples/non_rigid_icp.cpp:123:55: error: ‘kNNNeighborhood’ is not a member of ‘cilantro’ cilantro::KDTree3f(src.points).search(src.points, cilantro::kNNNeighborhood ^ /home/eva/Documents/cilantro-master/examples/non_rigid_icp.cpp:123:81: error: expected primary-expression before ‘float’ ::KDTree3f(src.points).search(src.points, cilantro::kNNNeighborhood<float>(12), ^ examples/CMakeFiles/non_rigid_icp.dir/build.make:82: recipe for target 'examples/CMakeFiles/non_rigid_icp.dir/non_rigid_icp.cpp.o' failed make[2]: *** [examples/CMakeFiles/non_rigid_icp.dir/non_rigid_icp.cpp.o] Error 1 CMakeFiles/Makefile2:810: recipe for target 'examples/CMakeFiles/non_rigid_icp.dir/all' failed make[1]: *** [examples/CMakeFiles/non_rigid_icp.dir/all] Error 2 Makefile:149: recipe for target 'all' failed make: *** [all] Error 2 how to modify the code, thank you very much!!

Gaoqinghong91 commented 4 years ago

I change the code from
cilantro::KDTree3f(src.points).search(src.points, cilantro::KNNNeighborhoodSpecification<>(12), regularization_nn); to

cilantro::KDTree<float,3> control_tree(src.points);
cilantro::NeighborhoodSet<float> regularization_nn=control_tree.search(src.points, cilantro::KNNNeighborhoodSpecification<>(12));

and i don't get this error.