mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-12 04:29:49 +08:00
rtabmap_demos tests and docs (#1462)
* rtabmap_demos tests and docs * added bag testing * added rtabmap_examples launch tests * updating demo bag download paths * added netherdrone demo * Fixed rgb-only callback with lidar rejected. Updated lidar params * Added back OrbitOriented rviz view to ros2, with optional octomap wll clipping * fixing ci * lidar demo added intermediate_nodes option * added netherdrone as demo test * running rtabmap_demos tests on ci * added rtabmap_launch tests, fixed ground_truth_base_frame_id usage * ficing rolling * updating demo test harnest * densify golden trajectories to avoid tf missing * fixing tf steps * updated min icp ratio for netherdrone demo * fixing image_transport arg->params * export pose opt=0 * lets process all frames * updated netherdrone golden * fixing publishers queue size just for tests * added playdback demo doc * Adding more logs to debug ci * Fixing QOS for CI to reliable, added find-object demo test * name threads * fixing camera info expected transient on lyrical/rolling. Fixing find_object not appearing idle * 30 Hz polling backward comp * fixing test tf sim lock * fixing lyrical qos bag parsing * faster replay * lockstep * fixing clock deadlock * Added test on shutdown * updated netherdrone golden poses * Extended stereo outdoor test * updated shutdown test * updated test * multi-thread flaky test * adding backtrace when test fails * increased closure slack for netherdrone * g2o gauss newton on stereo * adjusted maximum optimizer iterations * updated default iterations * Added netherdrone in list of demos
This commit is contained in:
@@ -1,4 +1,7 @@
|
||||
# rtabmap_demos
|
||||
|
||||
Ready-to-run demos of RTAB-Map. Each launch file sets up a complete pipeline for one of the demo bags or one simulated robot, so you can watch RTAB-Map map, close loops and navigate without any hardware. The bags can be downloaded from the [0.23.13 release](https://github.com/introlab/rtabmap_ros/releases/tag/0.23.13).
|
||||
|
||||
+ [Outdoor Stereo VSLAM](#outdoor-stereo-vslam)
|
||||
+ [Indoor 2D LiDAR and RGB-D SLAM](#indoor-2d-lidar-and-rgb-d-slam)
|
||||
+ [Multi-Session Indoor 2D LiDAR and RGB-D SLAM](#multi-session-indoor-2d-lidar-and-rgb-d-slam)
|
||||
@@ -36,6 +39,11 @@
|
||||
|
||||

|
||||
|
||||
### Netherdrone 3D LiDAR SLAM
|
||||
[netherdrone_lidar3d_demo.launch.py](https://github.com/introlab/rtabmap_ros/blob/ros2/rtabmap_demos/launch/netherdrone_lidar3d_demo.launch.py)
|
||||
|
||||

|
||||
|
||||
### Turtlebot4 Nav2, 2D LiDAR and RGB-D SLAM
|
||||
[turtlebot4_sim_demo.launch.py](https://github.com/introlab/rtabmap_ros/blob/ros2/rtabmap_demos/launch/turtlebot4/turtlebot4_sim_demo.launch.py)
|
||||
|
||||
@@ -90,3 +98,16 @@ FusionCore (wheel + IMU UKF) and `icp_odometry` run in a feedback loop: FusionCo
|
||||
[isaac_sim_vslam_demo.launch.py](https://github.com/introlab/rtabmap_ros/blob/ros2/rtabmap_demos/launch/isaac/isaac_sim_vslam_demo.launch.py) stereo:=false vo:=rtabmap
|
||||
|
||||

|
||||
|
||||
## Tests
|
||||
|
||||
`colcon test --packages-select rtabmap_demos` runs two tests:
|
||||
|
||||
* `test_launch_files` loads every launch file of this package, with its default arguments and with each of its switches flipped, without starting anything. It checks that the files, executables, components and included launch files exist, that the arguments passed to our own launch files are declared, and that RTAB-Map's parameters exist in the installed library. Packages that are not installed (simulators, robots) are stubbed and named in a warning.
|
||||
* `test_demo_playback` replays demo bags through the demo launch files and compares the resulting graphs with the golden ones in `test/golden` (number of nodes and of loop closures, and the trajectory error rtabmap computes against the golden trajectory, replayed as ground truth). It is skipped unless the bags were downloaded first (a few GB):
|
||||
|
||||
```bash
|
||||
rtabmap_demos/test/fetch_test_data.sh # or set RTABMAP_DEMOS_TEST_DATA to download elsewhere
|
||||
```
|
||||
|
||||
The bags are replayed in lockstep with the demo's nodes: each sensor message is published only once every node is idle, so results do not depend on how loaded the machine is. A replay takes a few minutes per bag. To keep a run's graph, database and log, set `RTABMAP_DEMOS_TEST_RESULTS` to a directory. After a change that is expected to change the results, regenerate the golden graphs with `RTABMAP_DEMOS_UPDATE_GOLDEN=1` and commit them.
|
||||
|
||||
Reference in New Issue
Block a user