Description
In the case shown in the image below, I couldn't find a way to make the scan matcher give me a correct relative pose between the two scans (Reference scan shown in red here, lidar scan from the robot shown in yellow). What I think happens is that there are so many coplanar points corresponding to the walls on the left and right of the robot that they lead icp to ignore the few points portruding (points that are very relevant to estimating the x offset). The relative offset in y direction is always precise, but in x direction, as long as both scans have an offset of 10cm or more, the scan matcher fails. I tried tweaking some parameters to no avail. Any hints?
What I am trying to achieve is using the laser scan matcher class in order to estimate the robot pose relative to a reference pose based on the lidar scan observed on that reference pose. Vanilla ICP might be enough for this but I couldn't find a better implementation than laser_scan_matcher that is already integrated in the ROS framework.