ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I am not sure why, but i am not able to access pointclouds.org or either their tutorials...As far as I remember the tutorial..I ll try to get this solved for you.

It can be seen that you are trying to give kinect point clouds. In the PCL tutorial , the inputs are filtered/sampled so that less number of points can be processed to reduce the computational time. They use a voxel grid/approximate filter with a leaf size of 0.1 meter, i guess. This wont be meaningful for Kinect point clouds. A leaf size of 0.01 meter is the best you can keep for kinect point clouds.

This should leave you with enough points for other modules to work. Next, the Kdtree is using a radius search and not able to find any neighbor in that radius and I think thats the cause of the error. If there is any parameter for normal estimation or nearest neighbor, try to give it as 0.05 m.

You have to go through the PCL tutorial carefully to change the parameters according to the point clouds you give as the input.

There is also an initial guess given to NDT in the PCL tutorial. They get the guess from odometry which is a good estimate. In your case, first I would ask you capture a first point cloud, translate the kinect by 15 cm and then capture another point cloud. GIven an initial estimate as some value in 10 - 20 cm range and see if it works. Then, see if it works with out initial guess at all. Without any guess, it can estimate small transformations only i guess (I am not sure)

Hope this helps!

Good day!