Adds an FAQ entry why the IMU is required in 3D (#328)
parent
b6fa20c9d5
commit
1d256adeb5
|
@ -34,3 +34,20 @@ measurements, for matching. Since there are two VLP-16s, 160 UDP packets is
|
||||||
enough for roughly 2 revolutions, one per VLP-16.
|
enough for roughly 2 revolutions, one per VLP-16.
|
||||||
|
|
||||||
__ https://github.com/googlecartographer/cartographer_ros/blob/master/cartographer_ros/configuration_files/backpack_3d.lua
|
__ https://github.com/googlecartographer/cartographer_ros/blob/master/cartographer_ros/configuration_files/backpack_3d.lua
|
||||||
|
|
||||||
|
Why is IMU data required for 3D SLAM, but not for 2D?
|
||||||
|
-----------------------------------------------------
|
||||||
|
|
||||||
|
In 2D, Cartographer supports running the correlative scan matcher, which is normally used for finding loop closure constraints, for local SLAM.
|
||||||
|
It is computationally expensive but can often render the incorporation of odometry or IMU data unnecessary.
|
||||||
|
2D also has the benefit of assuming a flat world, i.e. up is implicitly defined.
|
||||||
|
|
||||||
|
In 3D, an IMU is required mainly for measuring gravity.
|
||||||
|
Gravity is an attractive quantity to measure since it does not drift and is a very strong signal and typically comprises most of any measured accelerations.
|
||||||
|
Gravity is needed for two reasons:
|
||||||
|
|
||||||
|
1. There are no assumptions about the world in 3D.
|
||||||
|
To properly world align the resulting trajectory and map, gravity is used to define the z-direction.
|
||||||
|
|
||||||
|
2. Roll and pitch can be derived quite well from IMU readings once the direction of gravity has been established.
|
||||||
|
This saves work for the scan matcher by reducing the search window in these dimensions.
|
||||||
|
|
Loading…
Reference in New Issue