Ask Your Question

More information for multisensor fusion needed.

asked 2012-12-06 18:04:30 -0600

barrybear gravatar image

Hello there,

I'm a beginner at ROS and I've some questions regarding multisensor fusion. I am currently working on a robot (Pioneer P3-AT) with a monocular vision and Hokuyo LRF without an a priori map. However, I am unclear about how to apply the proposed algorithms like EKF, Bayesian, etc. I've read many journals about applying feature extraction, where the camera extracts vertical edges and segmentation technique applied on the LRF.

It'll be awesome if I can get some explanation about which algorithms to use and if there are any libraries around. And also, isit possible to obtain the fused data and use the available libraries (e.g. GMapping, GridSLAM, OctoMap) to create a map, localize and navigate?


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2012-12-07 13:49:24 -0600

There are many possible ways to build your pipeline. However, there are several tools that already exist in ROS, to get you started:

  • viso2_ros: A library for visual odometry from a monocular camera
  • laser_scan_matcher: A tool for laser-based odometry via scan matching
  • hector_mapping: A tool for laser-based odometry and SLAM
  • robot_pose_ekf: An EKF filter capable of fusing different odometry sources
  • gmapping: A laser-based algorithm for SLAM, requiring an odometric estimate

The general pipeline is to gather available sources of odometry (laser, camera, wheels, IMU) and fuse them using the EKF filter. Next, feed the fused output, together with laser scans, to a SLAM/mapping algorithm, in order to build a metric grid map.

edit flag offensive delete link more


Wow thanks! Thats alot of information provided :) However if I may ask, the laser_scan_matcher library is able to obtain input from not only the laser range scanner, but also wheel odometry, velocity model, etc but the hector_mapping only uses laser range scanner right?

barrybear gravatar imagebarrybear ( 2012-12-08 02:03:23 -0600 )edit

So, does that mean I can just use either one of these libraries? And also, would a pan-tilt-unit be signifcant in obtaining more accurate results but also may cause complex programming for the sensor fusion?

barrybear gravatar imagebarrybear ( 2012-12-08 02:05:02 -0600 )edit

laser_scan_matcher accepts these as inputs to help the scan matching, but doesn't fuse them in the filter sense. I believe hector_mapping accepts IMU. You can try either any laser / camera odometry package and see what performance you get.

Ivan Dryanovski gravatar imageIvan Dryanovski ( 2012-12-08 05:15:57 -0600 )edit

Lasers scanners operate on the 2D assumption, so a pan-tilt laser probably wouldn't improve anything. A camera mounted on a Pan-tilt might give you pmore freedom, but it would certainly come at the cost of a more complicated pipeline. I'm not sure how viso2 handls that.

Ivan Dryanovski gravatar imageIvan Dryanovski ( 2012-12-08 05:19:02 -0600 )edit

Oh alright. I guess I'll try to get it working first without so many complications involved :p Thanks Ivan Dryanovski for an awesome insight! :)

barrybear gravatar imagebarrybear ( 2012-12-08 05:39:20 -0600 )edit

Oh alright. I guess I'll try to get it working first without so many complications involved :p

barrybear gravatar imagebarrybear ( 2012-12-08 05:39:24 -0600 )edit

Oh alright. I guess I'll try to get it working first without so many complications involved :p

barrybear gravatar imagebarrybear ( 2012-12-08 05:39:29 -0600 )edit

Hello @Ivan Dryanovski! I was continue working on the ROS nodes as you described above, but I am kinda confused as to which TF/sensor msgs to send from laser & cam to the ROS_Pose_EKF. And then what's next to send to the Hector_Mapping or GMapping..

barrybear gravatar imagebarrybear ( 2013-05-19 16:46:00 -0600 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools



Asked: 2012-12-06 18:04:30 -0600

Seen: 934 times

Last updated: Dec 07 '12