Commit Graph

985 Commits

Author SHA1 Message Date
matlabbe
d135ef02e2 DBViewer: updated refine constraints menu action with more options, DBDriver: added updateCalibration for convenience 2023-12-20 14:39:49 -08:00
matlabbe
71415992ac GridMap integration (#1180)
* GridMap integration

* Removed GridGlobal/FullUpdate parameter. Bump version 0.21.3. Mvoed specialized global map classes under global_map sub dir. Renamed Map -> GlobalMap.

* UI: Added elevation map visualization

* Added LocalGridCache class to share cache between global maps

* Fixed OctoMap nans. DbViewer: Added frontiers visualization.

* convenient functions for ros

* Small fix

* fixed build without GridMap

* CI disabled fail-fast

* CI updated checkout action to v4
2023-12-17 22:44:11 -08:00
Borong Yuan
45392fcfc6 Add RGBD mode for OAK camera (#1179)
* update depthai params

* add color+depth mode

* workarounds to avoid performance issues
2023-12-14 09:59:35 -08:00
matlabbe
be3e6c538c Adding util3d::cloudsFromSensorData to be able to show in DBViewer individual clouds for each camera (#1182)
* splitting multicam generated clouds

* make sure returned cloud is valid (can be empty)
2023-12-13 12:15:29 -08:00
Borong Yuan
07c24e95ba start outputting data after static initialization (#1171)
* start outputting data after static initialization

* restore pixel noise to 1
2023-11-28 13:20:45 -08:00
matlabbe
aaff1abc4f Updating orbslam3 v1 support (#1152)
* Refactoring ORB_SLAM3 integration. Fixed realsense2 inter IMU stamps.

* Renamed OdometryORBSLAM -> OdometryORBSLAM2

* revert a change

* Fixed build without orb_slam

* Source camera: added feature detection option

* Fixed jfr2018 docker files
2023-11-19 01:05:52 -08:00
matlabbe
9c56a429cc Localization: Refactored getConnectedGraph() for 2d slam and tags (https://github.com/introlab/rtabmap_ros/issues/1057). Transform: Fixed is3DoF() and is 4DoF() 2023-11-16 22:44:32 -08:00
matlabbe
4812ce4eaf Optimizer: fixed some constraints between same nodes with different type ignored. GraphViewer: fixed display of links between same nodes with different type 2023-11-12 17:14:17 -08:00
matlabbe
56552afa6c Tuning localization priors (added RGBD/LocalizationPriorError parameter) (#1156)
* tuning localization priors (for https://github.com/introlab/rtabmap_ros/issues/1057)

* Set prior error value to same than old default value
2023-11-05 15:14:11 -08:00
Borong Yuan
948e15c72c Supplement and Adjust OpenVINS Parameters (#1145)
* set the PrintLevel of OpenVINS to be equivalent to that of ULogger

* use global FAST settings

* add online calibration params

* add dynamic initialization params

* add necessary feature initializer options

* fix segfault of OdomImageDecimation

* add mask settings

* use depth as mask in OpenVINS

* set twist covariance

* restore default values of VisMinDepth and VisMaxDepth
2023-10-21 14:24:51 -07:00
Borong Yuan
f06cc0b17f OAK bug fixes and improvements (#1143)
* *fix distortion correction problem of small FOV devices
*remove deprecated IMU firmware update API
*add useSpecTranslation option

* reduce depth image noise and simplify calculation for compressed transport
2023-10-07 20:40:30 -07:00
Borong Yuan
67c6a15b93 OpenVINS Update (#1107)
* fix openvins build

* Add OpenVINS params to UI

* update OdometryOpenVINS implementation

* the pixel noise of most cameras should be less than 3 after factory calibration

* propagation and update are only performed after camera measurement feeding

* fix openvins feature reprojection
2023-10-02 07:53:29 -07:00
Borong Yuan
afd10b1aa6 add histogram equalization (#1137) 2023-09-21 15:46:10 -07:00
matlabbe
f1cd819673 Fixed superglue deadlock on standalone (#896). Fixed some elemSize opencv asserts in debug build (876) 2023-09-17 01:19:59 -07:00
matlabbe
424dc90dce Added Vis/PnPVarianceMedianRatio parameter (to tune pnp computed covariance) 2023-07-27 16:13:30 -07:00
matlabbe
3feb03cf35 Added Vis/PnPSamplingPolicy parameter (opengv "multi" ransac) 2023-07-22 11:05:21 -04:00
Borong Yuan
0b4f5d2925 remove unnecessary conversion function 2023-07-17 17:00:43 +08:00
Borong Yuan
6d690a315a Using VideoEncoder on PoE devices 2023-07-17 03:32:18 +08:00
Borong Yuan
ce81fe445a specify device using MXID or IP/USB name 2023-07-15 20:58:00 +08:00
Borong Yuan
55a84cfdaa add depthai superpoint detector 2023-06-17 16:53:25 +08:00
Borong Yuan
2dd64a6283 move NMS to util2d 2023-06-17 13:06:54 +08:00
Borong Yuan
d031d79369 add depthai gftt detector (#1047)
* add depthai feature detector draft

* update depthai gftt config

* optimize to detect more features
2023-06-11 12:57:26 -07:00
Borong Yuan
31d975acd5 Add alphaScaling option 2023-05-31 22:15:16 +08:00
Borong Yuan
8d6c809c3c Update data sync implementation for DepthAI 2023-05-27 21:28:43 +08:00
Borong Yuan
ff83b14b49 Add options to enable IR featues on OAK Pro models 2023-05-18 01:48:38 +08:00
matlabbe
ba33c080bc Added RGBD/LocalizationSmoothing parameter and fixed related issues (#1032)
* removed code

* added landmark in graph optimization checks

* reverted smoothing, only if there is already a previous localization link

* Added RGBDLocalizationSmoothing parameter

* Update .appveyor.yml

* Update .appveyor.yml

* Update .appveyor.yml

* Update .appveyor.yml

* Update .appveyor.yml

* Update .appveyor.yml

* Update .appveyor.yml

* Update .appveyor.yml

* Update .appveyor.yml
2023-05-14 13:03:52 -07:00
matlabbe
e54195c47f ZED SDK 4 support (#1013) 2023-04-16 18:47:15 -07:00
matlabbe
e300d4c5c1 Added IMU support for camera images source with odom approach not supporting async imu 2023-04-16 17:32:32 -07:00
matlabbe
8b8a512cbb Added Icp/ReciprocalCorrespondences (new default true) 2023-04-06 20:57:35 -07:00
matlabbe
e3b7e9378d integrating c++17 fixes from #959 (ref:https://github.com/flann-lib/flann/pull/392), fixed pop_t error (b6e37553de) 2023-03-16 17:48:40 -07:00
matlabbe
89e3e10d89 Refactoring RTABMapConfig.cmake with targets (#904)
* Config: Using cmake targets

* fixed RTABMAP_DEPRECATED build error

* fixed melodic build

* cleanup

* Fixed qhull exported library error

* Update svg depend private

* removed g2o from public interface

* Fixed Windows with external project

* removed some required dep

* Fixed nsis error (also fixed unspecified components)

* updated workflow rules
2023-02-12 16:18:01 -08:00
matlabbe
437ed09335 DBReader: added ignore priors option (added to gui and reprocess), Statistics: added info about distance/angle of the localization, RegVis: fixed inliers mean distance on multicam setup, About: added MRPT info 2023-02-10 17:29:10 -08:00
matlabbe
dcedd8bb6b Added MRPT optional dependency. Updated localization_pose + its covariance to be always published. 2023-02-03 17:25:38 -08:00
matlabbe
e4edee33eb Fixed build with cvsba and ceres 2023-01-28 18:49:58 -08:00
matlabbe
6b9f7de782 Fixed a -pedantic warning 2023-01-16 14:14:25 -08:00
matlabbe
a4761ad397 Fixed #940 2022-12-11 01:12:21 -08:00
matlabbe
467dc738c7 Fixed deprecated warning not set to right function 2022-12-05 20:32:53 -08:00
matlabbe
8a8c360f89 fixed compilation warning 2022-11-27 16:20:56 -08:00
matlabbe
1297714271 Bump version 0.20.22. Refactored RtabmapThread commands handling. MainWindow/RtabmapThread/Statistics/UVariant: added new option to republish missing data on GUI side. MainWindow: fixed 1 sec lag when waypoints are used. Parameters: added Rtabmap/MaxRepublished (moved from rtabmap_ros). OccupancyGrid: fixed ground cells ignored if there are empty cells, also don't add pose in addedNodes if corresponding node was not in cache. 2022-10-28 12:25:48 -07:00
matlabbe
769ace86ce Added oak-d lite menu option (depthai: imu is now optionnal) 2022-10-23 18:15:23 -07:00
matlabbe
fdb78d33b0 DBViewer: added optimzed and prior poses in node details. Reprocess: add start_s, stop_s and pub_loops options. 2022-10-12 13:05:01 -07:00
matlabbe
fa31affea0 Pnp multicam refactoring (#902)
* gui: fixed wrongly showing landmark rejected when it was not (because a loop closure was rejected at the same time)

* Added Vis/PnPMaxVariance and RGBD/InvertedReg parameters. Implemented inlier distribution computation for multicam.

* On loc/small displacement: don't remove from odom cache if loop is rejected (maybe first loc)

* Loc: don't prune odom cache on small movement if delayed loc is enabled

* loc/small movement: cleanup bidirectional links

* Cov/PnP: fixed objPt transform to estimate depth

Co-authored-by: mathieu86 <mathieu@robust.ai>
2022-09-24 12:29:42 -07:00
matlabbe
4d6bc78e3d implement multi camera marker detection #898 (#899)
* Added multicamera marker detection support

* Fixed marker detection on camera index> 0

Co-authored-by: mathieu86 <mathieu@robust.ai>
2022-09-14 17:13:59 -07:00
matlabbe
5943a8b065 Added stereo multi-camera support (#884)
* Integrated OpenGV

* Fixed build without opengv

* Cmake: moved OpenGV dependency status under solvers group

* Added multi-stereocamera models support

* Fixed OpenGV 0 sample error when one of the camera doesn't have features. Fixed g2o BA id offset with multi-camera.

* Fixed multicam 3d points generated from stereo correspondences

* db: Fixed multi stereo models not loaded correctly

* gui: fixed stereo rectification option, RegVis: fixed projection error with old databases (image size not set in calibration)

* OdomF2M: Fixed map.at error when bundle adjustment is not used

* depthai: added imu firmware update option for convenience

* Fixed various refactor errors

* Moved "large number stereo correspondences rejected" warning outside computeCorrespondences function for multicam

* Added error log if ba correspondences are computed with empty signatures

* fixed compilation errors with latest opencv

Co-authored-by: mathieu86 <mathieu@robust.ai>
2022-07-20 15:20:14 -04:00
matlabbe
83c1adfd1e Updated illumination invariant paper documentation 2022-06-26 20:46:08 -07:00
matlabbe
b646c5e1db Marker priors (#859)
* Added MarkerPriors parameter

* Fixed Marker/Priors format to use '|' instead ';'. Fixed landmark priors not used.

* Marker: added priors variance parameters

* g2o: refactored backward compatibility includes

* fixed build with old g2o
2022-04-28 09:18:30 -04:00
matlabbe
190071678f Statistics: Added Memory/New_landmark. Rtabmap: don't remove node on small movements when a new landmark has been just detected. DbViewer: fixed missing statistics when ignored nodes are not saved in database. 2022-04-25 12:19:22 -04:00
matlabbe
9bd758a62c SuperPoint: return at minimum 2 features or 0 (fixed crash when only one feature). Python: added main python instance from Rtabmap object (to get python instancied once for ROS). MultiSessionWidget: Fixed layout warning. Memory::computeTransform() avoid re-instanciating RegistrationVis when Reg/Strategy=1 for guess transform (to fix PyMatcher re-initialized every time). CMake: added video module to opencv required components. 2022-02-15 01:28:38 -05:00
matlabbe
191e165a28 GUI: Added Multi-Session Localization view. CameraModel: set localTransform to optical rotation in default constructor (fixed matrix invertion errors with code ignoring setting local transform), save/read local transform in/from camera calibration yaml file (so that local transform is also exported when extracting rgb/depth images). Rtabmap: in localization mode, ignore landmarks farther than RGBD/LocalRadius if no global loop closures are already in odometry cache. 2022-02-12 13:35:23 -05:00
matlabbe
b44b212218 Bump 0.20.19. OdomF2M: scale x0.1 covariance when local bundle adjustment is done. Rtabmap: fixed GT localization error when RGBD/MaxOdomCacheSize is used. 2022-02-06 17:41:53 -05:00