Redundant use of local information in robot_localization when fusing local and global data?

asked 2019-09-09 10:49:08 -0500

Phgo gravatar image

I am using robot_localization to fuse both local and global sensor information for a 2d differential drive robot. More precisely odometry, imu and when available global pose information are fused.

My configuration basically follows this tutorials: ros-sensor-fusion-tutorial

According to that I have set up two separated r_l nodes for local and global fusion, with the local fusion node only taking odom and imu and the global one additionally using the global pose information. The local fusion node also provides the (fused) odom->base_link tf.

However, I am wondering whether the proposed configuration may lead to redundant use of the local sensor information, which should be avoided in sensor fusion as this may lead to biased results. As far as I understand, the global r_l node takes the raw sensor msgs but first transforms them into the world frame (map_frame) implicitly using the odom->base_link tf provided by the local r_l node.

Does not this mean, that the local information is used twice in the global r_l node, once in form of the original data and once as the fused odom->base_link tf?

If this is not the case, can someone please point me in the right direction?

edit retag flag offensive close merge delete