Commit Graph
100 Commits
Author SHA1 Message Date
matlabbe 1ef19d6ac4 Added GTSAM BA, updated Ceres to use g2o ba parameters. Renamed g2o's ba related parameters to Optimizer group and used by both gtsam and ceres. 2026-05-31 00:03:18 -07:00
matlabbe 0b0779079f Added Optimizer doc 2026-05-30 21:42:45 -07:00
matlabbe 3ecddfb583 fixing flaky tests in mac and windows 2026-05-30 21:28:53 -07:00
matlabbe e8eabc1538 Added Optimizer tests and discovered some bugs (fixed) 2026-05-30 20:55:06 -07:00
matlabbe bcd39ab2e9 fxing temp dir on windows 2026-05-29 10:15:33 -07:00
matlabbe d9ef6ad231 fixing more ci erros 2026-05-29 09:35:14 -07:00
matlabbe 71b259a884 windows slow test 2026-05-29 09:21:08 -07:00
matlabbe f49d7318e4 flaky thread test on slow mac VM 2026-05-29 09:17:19 -07:00
matlabbe 1c4b838403 fixing flaky tests on windows and mac 2026-05-29 08:41:30 -07:00
matlabbe ac930c2ac2 flakiness 2026-05-28 22:50:44 -07:00
matlabbe ef1df73deb bigger 2D2D registration error on opencv 4.6.0 2026-05-28 21:41:30 -07:00
matlabbe 8551e69f4f fixed some macos flakiness 2026-05-28 21:27:05 -07:00
matlabbe 10a3949b6a Fixing windows pcl link error 2026-05-28 21:21:14 -07:00
matlabbe 875de7ae53 Added test to detect regression 2026-05-28 20:48:08 -07:00
matlabbe 10403d4a34 fixing multi platform flakiness 2026-05-28 20:29:02 -07:00
matlabbe 1ce10ef6e7 Added RANSAC rejection filter to PCL ICP 2026-05-28 10:14:49 -07:00
matlabbe 28007e36f3 Fixing tests without libpointmatcher 2026-05-28 09:05:10 -07:00
matlabbe 1a841e8754 more flaky fixes 2026-05-27 23:00:53 -07:00
matlabbe 0cd144069c fixed ceres tests 2026-05-27 21:51:38 -07:00
matlabbe 0bc0a8cf43 suppressed some third party related warnings 2026-05-27 21:05:43 -07:00
matlabbe 4c5bdffe76 fixed some flaky tests 2026-05-27 20:41:22 -07:00
matlabbe 499e4796ae Merge branch 'master' of github.com:introlab/rtabmap into gtest 2026-05-27 19:41:49 -07:00
matlabbe bb95cc081a Fixed backward compatibility with bionic (Qt::ItemFlags) (#1710)
* Fixed backward compatibility with bionic (Qt::ItemFlags)

* dont remove occupancy grid with not publish last signature data
2026-05-27 17:42:21 -07:00
matlabbe 35dbb4f20a Added python tests 2026-05-27 00:48:11 -07:00
matlabbe f49157b4e2 Merge branch 'python_singleton' of github.com:introlab/rtabmap into gtest 2026-05-26 20:52:31 -07:00
matlabbe fbea556380 Merge branch 'master' of github.com:introlab/rtabmap into gtest 2026-05-26 20:50:54 -07:00
matlabbe 4756474367 Adding support for AprilTag v3 library (#1702)
* Adding support for AprilTag v3 library

* New parameter: Marker/Strategy (default opencv-aruco as before). Optimized multicameras marker detection (do only once with stitched image)

* Exposed all AprilTag parameters. Sharing Marker/Dictionary between opencv and apriltag implementation. Added new Marker/Lengths parameter.

* Support AprilTAg library not built with aruco

* cleanup

* Added marker range support

* Make apriltag detection in same orientation than opencv

* fixed shenanigans when rendering markers with multi cameras

* Don't update odom cache (localization mode) when not moving (detecting loop/landmark or not)

* fixed some quirks (camera viewer + tag working)

* Setting quad decimate to 1 by default

* typo

* Implemented OptimizerG2O::loadGraph()

* added apriltag's aruco support info in the cmake config summary

* fixed warning

* fixed isam2 assert when using landmarks

* Fixed homography on multicam

* Adding marker detection time for convenience

* Added missing MIP 36h12 tag family in UI
2026-05-26 17:43:34 -07:00
matlabbe 7681e83c32 Refactored how/when python interpretor is created to simplify library usage 2026-05-26 11:01:04 -07:00
matlabbe 919990ea1f More octomap checks 2026-05-25 21:10:24 -07:00
matlabbe 0286eb65be Added integration tests (RGB-D, Stereo, Lidar2d, Lidar3d) 2026-05-25 20:15:37 -07:00
matlabbe 422d065e75 updated compatible tool arguments 2026-05-24 22:49:45 -07:00
matlabbe 8caae61978 lcov 1.14 support 2026-05-24 22:42:48 -07:00
matlabbe 828a7ed100 making some tests less flaky 2026-05-24 22:39:04 -07:00
matlabbe e9c0194546 Added Memory and Rtabmap tests 2026-05-24 20:49:49 -07:00
matlabbe 5786a8796d Added doc for Rtabmap and Memory classes 2026-05-23 19:01:25 -07:00
matlabbe 5aff0721e9 Merge branch 'master' of github.com:introlab/rtabmap into gtest 2026-05-23 15:24:44 -07:00
matlabbe 49aa566613 Fixed empty global map on ros (regression from #1698) (#1709) 2026-05-23 13:36:15 -07:00
matlabbe a9146f5be6 Fix #1698 (#1708) 2026-05-22 09:33:17 -07:00
matlabbe 5959fe3505 Added RegistrationVis tests 2026-05-17 22:51:46 -07:00
matlabbe da27557787 Added Registration tests 2026-05-17 17:53:16 -07:00
matlabbe a9cc4fcebf Added Features2D tests 2026-05-17 17:47:13 -07:00
matlabbe 9a8b99f361 Added doc for EnvSensor 2026-05-17 17:12:35 -07:00
matlabbe d5deecaf1a Added GlobalMap tests 2026-05-17 17:10:08 -07:00
matlabbe 3cc21c636f fixing ci errors 2026-05-17 16:58:30 -07:00
matlabbe 77fb48a5af Added LocalGridMaker tests 2026-05-17 16:54:44 -07:00
matlabbe b62a113d0b Added LocalGrid tests 2026-05-17 15:17:31 -07:00
matlabbe 30605f690d fixing flaky macos timing tests 2026-05-17 15:05:00 -07:00
matlabbe 417f9aa494 fixing seed flaky test 2026-05-17 15:02:18 -07:00
matlabbe 7ccc41de12 Added LASWriter tests 2026-05-17 14:58:35 -07:00
matlabbe 057d385404 Added Landmarks tests 2026-05-17 14:24:40 -07:00
matlabbe 7fdf3a13f2 Added IMUThread and IMUFilter tests 2026-05-17 14:20:34 -07:00
matlabbe b0e0498e19 fixing flaky macos test 2026-05-17 13:58:13 -07:00
matlabbe ffe2482cfb Added Graph tests 2026-05-17 13:57:59 -07:00
matlabbe c498a71bc1 Added IMU tests 2026-05-17 10:03:13 -07:00
matlabbe c102c687d9 Added DBDriverSqlite3 tests 2026-05-17 09:53:57 -07:00
matlabbe 59ba6e54bd fixing windows and mac ci errors 2026-05-17 09:19:22 -07:00
matlabbe 1e73868716 added doc CI job 2026-05-17 00:00:42 -07:00
matlabbe f58e0a5023 updated coverage config 2026-05-16 23:00:54 -07:00
matlabbe e638569ea8 updated coverage option 2026-05-16 22:05:30 -07:00
matlabbe 408514b09f fixed report tool rebuilt without qt compilation error 2026-05-16 21:41:11 -07:00
matlabbe 4a5109c1bc dont built tools, examples and app for coverage build 2026-05-16 21:37:06 -07:00
matlabbe c7bb107d2e fixing concurancy and coverage ci 2026-05-16 21:31:11 -07:00
matlabbe c295b35a8a uniformized test names 2026-05-16 21:21:27 -07:00
matlabbe f40ea246f5 Added coverage report 2026-05-16 21:11:02 -07:00
matlabbe f6ba3e6d7d Added DBDriver tests 2026-05-16 18:51:17 -07:00
matlabbe 551c9e8a0f Added Odometry tests (base class only) 2026-05-16 17:55:03 -07:00
matlabbe a0d891bff0 Added tests for compression 2026-05-16 17:36:56 -07:00
matlabbe 69e943f80c Added GPS and GeodeticCoords tests 2026-05-16 17:19:33 -07:00
matlabbe 3c7895e1f0 fixed ThreadHandle error on macos ci 2026-05-16 17:02:36 -07:00
matlabbe c6a2d9721a fixed unresolved on windows 2026-05-16 17:00:35 -07:00
matlabbe 7e06eb7fe4 added test_link 2026-05-16 16:57:14 -07:00
matlabbe 6a7f90557f Enabled testing on mac, updated windows testing like on linux 2026-05-16 15:44:29 -07:00
matlabbe f6a0d63f3d Added doc and tests for BayesFilter class 2026-05-16 15:40:32 -07:00
matlabbe 425371a3d9 updated SSC test and doc 2026-05-16 15:40:19 -07:00
matlabbe 614cd925b3 fixed sensordata test 2026-05-16 15:40:00 -07:00
matlabbe 46cf7ec344 Merge branch 'master' of github.com:introlab/rtabmap into gtest 2026-05-16 10:15:18 -07:00
matlabbe 27ca7ec058 Fixing libpng warning: iCCP: known incorrect sRGB profile (#1703) 2026-05-15 07:18:15 -07:00
matlabbeandBorong Yuan 8d0692eab0 Save intermediate node input features (#1698)
* Avoid removing nodes from STM when using CreateIntermediateNodes

* Clean up the data of the intermediate node when IntermediateNodeDataKept is false

* Save intermediate node input features

* Don't delete intermediate nodes

* comment typo

* Updated parameter description, bump patch for DBReader API chang

* When ID is not udpated to new one, don't disable words because that signature is still used in the bayes filter

* updated comment

* rtabmap-reprocess: support Rtabmap/DetectionRate when intermediate nodes are created and -skip option is not used

* Fixed smallMovement when rehearsal is not trigdered at the same time

* GUI: visualize rehearsal darkblue when intermediate nodes are used

* Fixed RtabmapThread not transfering input features on intermediate nodes

* Do not override smallMovement and fastMovement when converting to intermediate nodes to keep GUI visualization color working

---------

Co-authored-by: Borong Yuan <[email protected]>
2026-05-14 09:20:09 -07:00
matlabbe afe8aadff1 Remove macos ci cache (#1701)
* removed macos caching
2026-05-10 21:46:37 -07:00
matlabbe 440e143d87 Adding CI Macos status in readme (#1700)
* Added macos-15-intel and macos-15 build

* Cache brew pkgs

* added tahoe build, adding debug logs

* g2o csparse optional

* removed ls

* build package on

* disabling bundle for now

* updated cache name

* Added MacOS CI status in README.md
2026-05-10 20:07:46 -07:00
matlabbe 72833c89bb Adding macos CI (#1699)
* Added macos-15-intel and macos-15 build

* Cache brew pkgs

* added tahoe build, adding debug logs

* g2o csparse optional

* removed ls

* build package on

* disabling bundle for now

* updated cache name
2026-05-10 20:04:30 -07:00
matlabbe f04067fa16 Fixing Rolling CI on Noble (#1696)
* Fixing Rolling CI on Noble

* setup env var correctly
2026-05-05 11:15:34 -07:00
matlabbe c1ef13a8d6 Various QoL (refactored RTABMAP_VERSION_COMPARE) (#1695) 2026-05-04 20:12:31 -07:00
matlabbe 37f8fa63c5 Auto graph repairing (#1691)
* Auto graph repairing: detect and remove bad loop closures accepted in the past that block new good loop closures to be accepted

* Added parameter RGBD/OptimizeMaxErrorRepairRadius: added approach to repair the graph (remove bad loop closures added in the past). Refactored max optimization error function, split repairGraph to its own function.

* Handling optimization from graph end in repair

* MaxGraphErrors: changed link's pointers to copy directly to avoid seg fault down the road if not used properly

* Dont publish optimization statistics if it was not computed.
2026-05-04 16:02:55 -07:00
matlabbe f48db0ee51 Fixing GUI warning when SIFT/MaxGaussianThreshold=0 2026-04-26 15:43:04 -07:00
matlabbe 2314c4dfa5 Updated noble dev container with nvidia runtime example 2026-04-26 15:40:26 -07:00
matlabbe aa6d20775f Init python interface if built with python (related to #1693) 2026-04-25 14:55:59 -07:00
matlabbe 9cbe84e445 Support intermediate nodes with memory management enabled (#1687)
* Support intermediate nodes with memory management enabled

* Adding fix from #1686

* Fixed odomCache overlay shown in mapping mode

* Fixed local retrieval with intermediate nodes

* bumping version for updating API. Fixed getting graph error.

* Disable planning if intermediate nodes are there. Updated usage of Kp/BadSignRatio to support intermediate nodes.
2026-04-19 16:08:03 -07:00
matlabbe cc86af4399 GraphViewer: Fixed ground truth and gps context menu option disabled even if there are there, after hiding them, saving and reopening UI 2026-04-18 12:57:35 -07:00
matlabbe 79ff91d293 Added Statisics: Loop/Optimization_max_error_from_id and Loop/Optimization_max_error_to_id to help with debugging rejected loop closures 2026-04-16 17:39:58 -07:00
matlabbe aa7546ec62 Enable WITH_PYTHON on CI (#1689)
* Enable WITH_PYTHON on CI

* add python-dev

* use python3-dev instead of libpython3-dev

* use action to instlal python

* pybind now missing

* Fixed python build on linux

* warning

* try to install compatible pybind

* explicitly set where to find pybind
2026-04-14 12:09:41 -07:00
matlabbe a8fd7f043d CloudViewer: fixed rendering camera rotation not normalized warning 2026-04-13 01:16:58 +00:00
matlabbe 0405949ff4 merged master->branch 2026-04-05 14:20:35 -07:00
matlabbe 8fd701aabe Fixing prior and gravity constraints support for SBA with orbslam dep… (#1683)
* Fixing prior and gravity constraints support for SBA with orbslam dependency

* Updated an error log msg
2026-04-05 12:36:54 -07:00
matlabbe 1ea8fa2e06 New rtabmap-reduceGraph CLI tool (#1655)
* New rtabmap-reduceGraph CLI tool

* fixed some edge cases

* Regenerating optimized map if there was one before reducing the graph

* addMoreLoopClosures: refactored how ctrl-c is handled to stop faster when no loop closures are added

* Added kilted status

* Make offline tool always propagate neighbor merged links

* removed a parameter

* fixed disconnected graph

* fixed --help

* Added error log on Kp/NNStrategy not compatible with huge vocabulary. ReduceGraph/DetectMoreLoopClosures: Make sure original parameters are saved back on closing. g2o: fixing optimizer to Levenberg for SBA to avoid [SetJac] infinite jac fatal error.

* exposing neighbor merged ratio parameter to the tool

* show param in log

* refactored detectMoreLoopClosures to ignore too close nodes in terms of neighbor links based on Mem/STMSize parameter. Reduce graph: added direction parameter.

* Simplified: removed ratio parameter, removed recursive reduction. Just don't reduce if a NM link is longer than maxDistance.

* Removed NNStrategy override, as it was still done on closing when we changed back to original params

* DBViewer: show missing links when showing OptimizedPoses in GraphView, fixed clicking on landmark links

* DetectMoreLoopClosures: Added support for min graph distance option in MainWindow and DbViewer

* slight renaming of ROS jobs

* reprocess: added option --params_last
2026-04-04 19:48:03 -07:00
matlabbe 51cfc37923 Update CI badges (#1681)
* OptimizerG2O: adding support for priors in SBA

* Fixed computeError

* don't fix root id roll/pitch if gravity constraints are fed (SBA)

* changed number_t to double

* forward compatibility

* cleanup

* log

* Updated CI status

* split cmake workflow in linux and windows

* bump release badge version

* uniformize name

* fixing android build
2026-03-29 12:34:09 -07:00
matlabbe 26bab2ba15 OptimizerG2O: adding support for priors in SBA (#1670)
* OptimizerG2O: adding support for priors in SBA

* Fixed computeError

* don't fix root id roll/pitch if gravity constraints are fed (SBA)

* changed number_t to double

* forward compatibility

* cleanup

* log
2026-03-29 11:30:33 -07:00
matlabbe 20409d2bf6 Cudasift tuning and SSC supporting multicameras (#1677)
* CudaSIFT: filter doubles

* removed fixed threshold

* SSC can be used with multicameras. Refactored CudaSIFT to support SSC. Add new parameter SIFT/MaxGaussianThreshold. DbViewer: show negative features with gray color (so that we can know which features are in the vocabulary)

* Added SIFT/MaxGaussianThreshold parameter

* Updated parameter description
2026-03-28 18:47:46 -07:00
matlabbe 94bd3601fc rtabmap-matcher: Added option to recfify raw images for convenience (#1663) 2026-03-28 18:47:18 -07:00
matlabbe f94a963463 CID-SIMS support (#1676)
* cid-sims dataset support

* Added cli tool to test CID-SIMS dataset

* removed debug log
2026-03-28 14:33:26 -07:00