Open strmichael opened 8 years ago
In general, it is very hard for me to do support for specific applications because it would require me to much time to analyse your data and figure out what are the particularities of your setup, noise on your data and environments.
In general:
force2D
for the errorMinimizer
should force the transformation on roll, pitch and z to zero during the minimization. For a more details explanation on different use cases, I suggest you to read: A Review of Point Cloud Registration Algorithms for Mobile Robotics.
Hi,
I am trying to do 3D SLAM with pose graph with a hokuyo 2D laser and need to match the pointclouds of the nodes. Therefore I thought the ethzasl_icp_mapping is a good starting point.
The 3D sweeping of the hokuyo is similar to the railyard- and multifloor-mapping of the nifti. At the beginning I stand still, make a 3D sweep, publish the pointcloud, put the laser back in horizontal position, drive x meters, stand still, make a 3D sweep etc.
Currently I try to simulate the mapping with gazebo but it seems that when I yaw the robot about 20 degrees it doesn't match the point clouds anymore. Perhaps around 10 degrees are fine but I thought that this should work better. I tried different configurations, the nifti-railyard-icp-configuration, the velodyne-icp-configuration, tried my own configurations but it doesn't seem to get much better. Additionally when entering a small corridor from a large room it also seems to disturb the matcher. Shouldn't it consider the odometry to get an initial guess between 2 pointclouds where the matcher should start to look? Is there a bagfile of the nifti-railyard- or nfiti-multifloor-mapping available to find out what I do wrong?
Because my tries didn't work very well, I thought perhaps it is possible to use the 2D laser for matching the 2D information with the created 3D map. Is that possible (because it doesn't seem to work)? When I use the VLP-16 instead of the hokuyo everything works fine but I don't have a 3D laser, just the hokuyo.
Do you have any suggestions what I do wrong or what I could do to improve the pointcloud matching in my case?
Thanks in advance.