PonyPC
50a0961f4e
Update OdometryORBSLAM.cpp ( #991 )
...
Fix RGBD with ORB SLAM
2023-03-20 19:35:39 -07:00
matlabbe
e3ceb8a572
VINS-Fusion: Fixed error wrongly logged when only imu is processed by vins.
2023-01-08 15:22:46 -08:00
matlabbe
6e8f43916c
floam: republish input scan with features
2022-10-16 21:31:43 -07:00
matlabbe
30bf5895ca
Fixed #909
2022-09-30 14:17:23 -07:00
matlabbe
74c6e9cfec
Fixed compilation error about stereoCameraModel() not found ( #905 ) with OpenVINS odometry
2022-09-27 13:48:57 -07:00
matlabbe
675dad5f76
Fixed compilation error about stereoCameraModel() not found ( #905 ) with odometry approaches: Fovis, MSCKF, Okvis, VINS, Viso2.
2022-09-27 18:56:05 +00:00
matlabbe
8cd4a6feff
OdomF2M: fixed lidar-only broken from commit 9797918d52
2022-07-28 11:48:55 -04:00
matlabbe
9797918d52
fixed https://github.com/introlab/rtabmap_ros/issues/790
2022-07-27 10:15:21 -04: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
dc58266eda
ORBSLAM2: fixed build
2022-04-10 19:42:15 -04: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
matlabbe
7a5c50cb0e
Fixed compilation warnings
2022-01-16 15:27:52 -05:00
matlabbe
6c07a670ee
Added OdometryOpen3D
2021-11-13 19:45:57 -05:00
matlabbe
467ea42981
OdometryFLOAM: fixed published local scan map local transform
2021-09-30 10:05:56 -04:00
matlabbe
77d947d4fb
Fixed FLOAM not working when local transform is not Identity. DBViewer: warn user when scan from dpeth is checked and there are no depth images in db.
2021-09-30 09:53:50 -04:00
matlabbe
533d78d570
Fixed OdometryOpenVINS build errors with latest OpenVINS code.
2021-09-28 17:12:08 -04:00
matlabbe
bccc5b13af
FLOAM: added some debug logs
2021-09-24 11:32:25 -04:00
matlabbe
5f65618d40
Added OdomLOAM/Resolution parameter
2021-09-22 10:48:59 -04:00
matlabbe
cff0d15460
Fixed "wrong scan number" error when OdomLOAM/Sensor is 0 (VLP16)
2021-09-22 10:06:34 -04:00
matlabbe
3ba02d2ef6
Added OdometryFLOAM (Odom/Strategy=11)
2021-09-09 17:38:54 -04:00
matlabbe
c43118cde8
Fixed F2F-Optical flow not creating keyframes bug
2021-09-03 15:33:22 -04:00
matlabbe
f88ce1618b
OdometryORBSLAM3: fixed re-initilisation of camera parameters when restarting camera with different config.
2021-08-26 15:34:48 -04:00
matlabbe
ae92ec40d7
Fixed build with LOAM dependency
2021-07-14 13:22:47 -04:00
matlabbe
4c1e72d82e
Added OpenVINS minimal support (tested with EuRoC dataset)
2021-03-28 23:51:02 -04:00
matlabbe
06e85e140c
Refactored RegistrationIcp: libpointmatcher yaml config usage / integrated CCCoreLib ( #704 )
...
* Refactored RegistrationIcp so that libpointmatcher yaml can work with icp odometry (we can then avoid refiltering data with local map of F2M). All data filtering (including libpointmatcher DataFilters) are done at the beginning of the function.
* ICP: Restored ref and data scans order for libpointmatcher (seems more stable this way).
* Fixed compilation error without libpointmatcher
* CCCoreLib integration (Icp/Strategy=2). Icp/PMForce4DoF is now Icp/Force4DoF. Icp/PM is now Icp/Strategy. Icp/PMOutlierRatio is now Icp/OutlierRatio.
* Fixed build without CCCoreLib
* Cleanup RegistrationIcp from third party functions.
* Preferences: disable libpointmatcher and cccorlib options if not available
2021-03-27 15:11:20 -04:00
matlabbe
db43479e44
Added ORB_SLAM3 support. IMU Filter: added base frame conversion option. ( #698 )
...
Referred issues:
#655
https://github.com/introlab/rtabmap_ros/issues/492
Note: IMU not supported yet with ORB_SLAM3.
Commits:
* Added orbslam3 support. UI-Source->IMU filtering: Added base frame conversion option of IMU data to uniformize yaw initialization. Madgwick: fixed yaw initialization accordingly to Z acc.
* fixed regression build error with ORB_SLAM2
* Renamed OdometryORBSLAM2 to OdometryORBSLAM (can be 2 or 3 now)
2021-03-09 16:00:41 -05:00
matlabbe
ea4cc7cb6c
Refactored how IMU is used in odometry (if guess is not set, use imu orientation for guess). Changed canProcessIMU() to canProcessAsynIMU() to make it more clear for odometry approaches able to process IMU between image frames (VIO approaches). ZedOC: fixed device closed if imu is not detected.
2021-03-01 19:27:24 -05:00
matlabbe
cad184e82b
Added Icp/PMForce4DoF parameter (works only with libpointmatcher > April 2020). Fixed some deprecated warnings.
2021-02-24 09:43:22 -05:00
matlabbe
b759b1b4d1
DBReader: set calibrated true when only scans in db. RegIcp: added intensity matching option when complexity is low. OdomF2M: accept first key frame on low complexity if a guess is provided. DbViewer: added gravity visualization in 3D view.
2021-02-01 11:31:45 -05:00
matlabbe
d733029565
Increased version to 0.20.7. OdometryF2M: added support for intensity field, removed ignored key frames when there is low scan complexity. RegistrationIcp: added Icp/PMMatcherIntensity, Icp/PointToPlaneGroundNormalsUp and Icp/PointToPlaneLowComplexityStrategy parameters. Rtabmap: when graph optimized from end, increased optimization error before warning that resulting map correction is not identity (this could happen with GTSAM as the root is not perfectly fixed). CloudViewer: added coordinate frame scaling option, added rainbow colormap option for scan intensity. DBViewer: fixed local proximity merged scans not shown modified after refining those links, show intensity, fixed constraints view not updated after rejecting a link. MainWindow: added intesity support with odometry scans.
2020-11-28 17:28:34 -05:00
matlabbe
a80e062bef
Fixed build error in Trusty
2020-10-05 18:17:18 -04:00
matlabbe
bbccbd63e4
Increased version to 0.20.5
...
Refactored how features are stored in Signature (significative memory optimization, causing major refactoring in Memory, RegistrationVis, OdometryF2M)
FLANN: optimized memory usage when Kp/IncrementalFlann is false
Added memory usage functions
Added statistics Loop/Visual_inliers_ratio/ and Memory/RAM_estimated/MB
EpipolarGeometry: templated findPairs functions
graph::filterLinks: added inverted option
LocalBundleOnLoopClosure: Force to use only neighbor links
MainWindow: fixed max depth filtering for map's features
Rtabmap::getSignatureCopy() fixed links not returned
Added UPlot::getAllCurveDataAsText() function.
DbViewer: fixed features not rendered in right view when failing ro refine a constraint
report: added --export and --export_prefix options (to export figures data)
2020-10-05 17:34:32 -04:00
matlabbe
f263d560b4
OdomF2M: fixed complexity null for first scan is not having normals already
2020-08-21 14:32:08 -04:00
matlabbe
07d21e6b03
VINS update log: printf to UDEBUG
2020-07-30 12:34:58 -04:00
matlabbe
c7be9a23ee
OdometryF2M: refactored imu buffer
2020-05-31 14:33:20 -04:00
matlabbe
415a2778f1
Added Features2d::limitKeypoints() with grid options. Odometry: if imu is provided and no guess is provided, the change of orientation of imu is used for rotation guess (overwrite rotation from Odom/GuessFromMotion). OdometryInfo: added gravity errors when imu is used. Preferences: added a second GravitySigma parameter (overwritting Optimizer/GravitySigma for odometry is not negative) for F2M odometry panel.
2020-05-31 11:22:12 -04:00
matlabbe
208f1e5b7c
OdomF2M: fixed complexity check on 2d scans ( https://github.com/introlab/rtabmap_ros/issues/412 )
2020-05-25 20:07:58 -04:00
matlabbe
c7b84c60bc
Parameters: added Mem/StereoFromMotion (default false) and RGBD/ProximityOdomGuess (default false). Visual proximity detection is done before computing the loop closure transform (the later is ignored if visual proximity succeeded with a node close to loop closure, add Loop/Suppressed_hypothesis_id statistics to know when this happens). Changed Loop/Map_correction to Loop/Odom_correction (to better see the actual jumps of localization about /base_link frame, not /odom frame). util3d::generateWords3DMono() is now using openCV's implementation of five-point algorithm (this fixed some cases for which the older approach couldn't find any solution). UPlot: added scrolling area on the legend, added global legend option to show all curve statistics (mean, stddev,max). MainWindow's open dialog: reopen last directory when reopening a different database. ParametersToolBox: show default parameter value in tooltip. rtabmap-report: add --start option. rtabmap-reprocess: show details about proximity and loop detections, reset all localization statistics after changing database.
2020-05-19 15:01:50 -04:00
matlabbe
607dc67135
IMU: removing yaw from local imu transform when creating gravity links
2020-04-10 19:24:45 -04:00
matlabbe
43df2a05da
OdomF2M: fixed roll/pitch ignored in imu local transform
2020-04-09 19:22:57 -04:00
matlabbe
18ff5bb410
OdomF2M/Icp: fixed substracting points when normals are not used
2020-04-09 09:59:22 -04:00
matlabbe
06caa328a4
Lidar low complexity update. util3d::computeNormalsComplexity(): added optional transform (used in RegistrationIcp to get normal vectors in right coordinate frame). RegistrationIcp: Fixed PointToPoint ICP not used with PM when recomputing transform from low complexity. Added more info in warning messages when low complexity happens. OdometryF2M: avoid adding key frame when scan has low complexity. Same for the first frame to init the local scan map.
2020-03-28 16:25:27 -04:00
matlabbe
af9e113112
Gui: added missing OdomF2M/ScanRange parameter
2019-12-11 17:17:29 -05:00
PrescilliaA
4479a6f7e8
Odometry local map can be limited by range ( #482 )
...
* Odometry local map is now dependent on robot range and not on time, recalculating normals after adding new scan to the map as well
2019-12-11 13:43:38 -05:00
matlabbe
1e298dcfa2
CameraRealSense2: updated how imu are published in inter mode and fixed some local transforms. GUI-VINS: features are shown in Odometry view.
2019-10-13 14:48:11 -04:00
matlabbe
955660ba2a
CameraRealSense2: added stereo ir support for D400 cameras, added publishInterIMU parameter (required for VINS fusion).
2019-09-18 20:55:48 -04:00
matlabbe
b2b1977f8b
Deprecated getClosestTransform(), use getTransform() instead. OdometryF2M: removed patch about forcing roll/pitch from IMU (BA is already doing the job).
2019-09-15 17:31:58 -04:00
matlabbe
350d3cd85f
CameraRealSense2: fixed wrong IR image index. DBReader: fixed imu not published. OdometryF2M: use IMU roll/pitch values when IMU is used (reducing variance on those angles before BA).
2019-09-13 21:45:13 -04:00
matlabbe
536f001479
Added OptimizerCeres class (Optimizer/Strategy=3)
2019-08-17 03:55:04 -04:00
matlabbe
2a1b737470
OdometryVINS: fixed output pose orientation (D435i and euroc compatible)
2019-08-15 16:46:56 -04:00