matlabbe
95a76cb696
gui: fixed wrongly showing landmark rejected when it was not (because a loop closure was rejected at the same time)
2022-09-22 15:16:08 -07:00
matlabbe
737675c6f1
fixed dereference end iterator assert ( #900 )
2022-09-19 07:34:48 -07:00
matlabbe
749cd096ff
Fixed map::at() seg fault when localizing on a database with multiple disjoint sessions
2022-09-13 06:19:23 +00:00
matlabbe and mathieu86
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 <[email protected] >
2022-07-20 15:20:14 -04:00
matlabbe
5d200a0799
Fixed _markerPriorsLinearVariance not intitialized
2022-05-05 11:08:44 -04: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
e6a5fe9c26
Don't do neighbor refining if fast movement has been detected
2022-02-20 18:09:39 -05:00
matlabbe
e297320dd5
Removed backward compatibility with RGBD/OptimizeMaxError to be able to use ratio lower than 1.
2022-02-20 13:44:53 -05: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
4776de7931
rtabmap: updated proximity paths check order when likehood is not available (use closest node). MainWindow: don't pause when error happens in monitoring mode / ROS. DbViewer: show local transform of scan.
2022-02-12 16:46:10 -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
f584f42ea4
rtabmap/dbreader: save odometry covariance in pose prior link when in localization mode and saving localization data.
2022-02-06 20:17:46 -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
matlabbe
32ad92e2d2
GraphView: added optional overlay to better see odometry cache constraints. rtabmap: keep global loop closure id in statistics when proximity is detected on same node.
2022-02-03 21:58:36 -05:00
matlabbe
315350dbfc
CCCorelib: updated wrong output check. Updated RGBD/MaxOdomCacheSize approach to work properly with Rtabmap/CreateIntermediateNodes=true.
2022-01-28 14:48:32 -05:00
matlabbe
5b3a7d5674
Localization: fixed always rejected localization when proximity and global loop closures are both detected at the same time at two different locations (clearing proximity detections from odometry cache if global loop closures are good).
2022-01-26 15:39:09 -05:00
matlabbe
83d1e27b81
Refactored graph::getPosesInRadius -> graph::findNearestPoses. Labels can be removed: added Remove label option in MainWindow. In localization mode, label set with id=0 is set to nearest node of current pose.
2022-01-20 18:56:38 -05:00
matlabbe
29a2b64a0c
RGBD/NeighborLinkRefining: do one proximity detection by time if intermediate nodes are added. Optimized radiusFiltering(). Updated default parameters of proportionalRadiusFiltering().
2022-01-14 18:47:57 -05:00
matlabbe
12c2dd707c
Localization with Reg/Force3DoF=true, fixed how graph optimization errors are computed (use only x,y,yaw).
2022-01-12 16:59:03 -05:00
matlabbe
fcec98105d
Added RGBD/ProximityMergedScanCovFactor parameter. Localization: fixed output height when Reg/Force3DoF=true but input poses are 6DoF. Transform: added is3DoF() and is4DoF() functions. GTSAM: when Reg/Force3DoF=true, copy input roll,pitch,z values for output poses. RegIcp: fixed working memory dir '~' conversion. RGBD/ProximityGlobalScanMap: fixed map::at error when some nodes don't have scans.
2022-01-12 16:14:42 -05:00
matlabbe
a4ec95963e
Fixed a debug information
2022-01-11 15:59:53 -05:00
matlabbe
49353b134c
LaserScan: fixed destination format when source is empty with operator+
2022-01-11 15:32:30 -05:00
matlabbe
a3823594a4
Converted an assert to an error.
2021-12-26 14:53:22 -05:00
matlabbe
93ee8f9b30
Working dir path: convert ~ to Home for convenience. Localization: don't show "cannot optimize" warning when RGBD/MaxOdomCacheSize=0
2021-12-24 18:24:44 -05:00
matlabbe
7ca881453e
RGBD/StartAtOrigin: set first node of the graph, not Identity
2021-12-20 17:01:08 -05:00
matlabbe
8662eb0dd7
Statistics: added OdomCache data for debugging
2021-12-18 18:53:59 -05:00
matlabbe
33130890fd
Localization: Improved resulting pose in case there are gravity constraints. iOS: clear odom trace when not visible, fixed opt mesh not correctly aligned with graph on loading when switching RGBD/OptimizeFromGraphEnd.
2021-12-18 15:37:49 -05:00
matlabbe
bca8b30832
Localization 2d Slam: automatically rotate landmark links to have z-axis up for correct 3DoF optimization. When RGBD/MaxOdomCacheSize is used, wait for at least 2 temporal localizations before adjusting the pose (to avoid big jumps when only one constraint is used).
2021-12-17 11:00:37 -05:00
matlabbe
0e62050824
rtabmap: fixed graph re-optimized with only virtual links in localization mode (which can make gtsam crash because of under constrained covariance)
2021-12-12 13:07:02 -05:00
matlabbe
cf5e90238b
Statistics: added LoopOdom_correction stats for landmark detections.
2021-12-10 21:58:11 -05:00
matlabbe
8cf12c6135
Improved localization mode accuracy (decreasing jumps on consecutive loop closures or landmark detections). Updated usage of parameter RGBD/MaxOdomCacheSize (default 0->10)
2021-12-10 17:48:36 -05:00
matlabbe
8682026396
Rtabmap: when optimizing graph, removed guess for rootid to avoid global rotation drift over time. CameraStereoImages: set BayerMode also to right image. GraphView: fixed 0 width for line inside NodeItem. Reprocess: added -loc_null and -gt options.
2021-10-23 11:17:42 -04:00
matlabbe
a901f20d06
0.20.14: added globalBundleAdjustment CLI, added Rtabmap/Memory::cleanupLocalGrids function, init with optimizedPoses from db even in mapping mode, reprocess: added -db option to save optimized 2d grid in database.
2021-09-11 11:35:43 -04:00
matlabbe
7338cb8a85
Localization: fixed initial graph optimization root id (based on RGBD/OptimizeFromGraphEnd) when optimized graph is not saved in db.
2021-07-09 14:57:15 -04:00
matlabbe
3da4bb9faa
For Icp/DebugExportFormat and RGBD/ProximityGlobalScanMap, use Rtabmap/WorkingDirectory as output directory for debugging files.
2021-06-27 20:37:42 -04:00
matlabbe
11e9837b82
Added RGBD/ProximityGlobalScanMap for proximity detection using the whole scan map in localization mode. Added Icp RMS statistics (CCCorelib). Updated how localization is corrected with gravity when available (simply use roll and pitch of current gravity constraint).
2021-06-23 17:13:07 -04:00
matlabbe
6342658ec5
iOS: fixed origin when we do New Scan while we were already mapping, improved FPV feedback in point cloud mode, showing camera overlay in visualization mode (pinch out to disable). Localization mode: Updated how marker detection transform are modified by gravity constraints.
2021-06-12 12:42:56 -04:00
matlabbe
289d4afd76
ios first release
2021-06-08 00:06:49 -04:00
matlabbe
8b1b874bf3
Statistics: added LoopOptimization_max_ang_error stats
2021-05-27 13:00:29 -04:00
matlabbe
21dbeed4b7
Odom sensor option ( #726 )
...
* Added Odom Sensor option
* Odom Sensor: Added pose time offset parameter
* Gui: fixed odom cloud not shown when rgb/depth doesn't have same size. Odom sensor: fixed rawImages set on non-stereo camera (because stereoRectify wrongly set to all cameras)
* Calibration: fixed rgb and depth suffixes not correctly set. OpenNI2: horizontal and vertical shifts can be also set for default calib.
* Fixed a warning
* OdomSensor: added option to use odom sensor output as ground truth (for comparison between odom sensor and rtabmap odom). Added scale factor option.
* FindG2O.cmake: updated path suffixes to find EXTERNAL csparse
* Pose3GravityFactor: fixed dllimport error on windows
* UI: Statistics panel not updated if not visible and keep stats in cache is unchecked. Added description to some timing debug logs in processStatistics().
* Removed vtkOutputWindow on Windows
* Odom Sensor: added zed sdk support
* bump version 0.20.11
2021-05-23 17:21:12 -04:00
matlabbe
ff956a725e
Fixed "localization won't be corrected with gravity" warning in localization mode and imu data are not used (while Optimizer/GravitySigma>0)
2021-05-02 19:42:59 -04:00
matlabbe
752509fb15
Rtabmap::detectMoreLoopClosures: added clusterRadiusMin parameter and update optimized poses after each accepted loop closure (also in MainWindow) like in DbViewer. Added graph::computeMinMax(poses). OdometryInfo: added guess transform. Export: added min/max axis ranges to filter nodes before expoting clouds.
2021-03-13 18:42:13 -05:00
matlabbe
f6e17be2b4
Added ViewPlane XY, XZ and YZ options to GraphViewer
...
Parameter RGBD/SavedLocalizationIgnored now called RGBD/StartAtOrigin (updated description, used only in localization mode)
IcpReg: if Force4DoF, set lower covariance values for roll and pitch
DbViewer: updated detectMoreLoopClosures with new minRadius option and update optimized poses between each new accepted loop closures.
MainWindow: suppressed warning if depth image is not found in current node data (when rgb is).
3D Map view: changed default map point size to 1 (was 2)
2021-03-12 17:47:36 -05:00
matlabbe
4f46d8e904
Updated some RGBD/Proximity**** parameter descriptions. Added parameter RGBD/LoopClosureIdentityGuess. Fixed local map cleared in localization when RGBD/SavedLocalizationIgnored is true (should then assume it is starting from origin).
2021-03-04 11:26:35 -05:00
matlabbe
d119487dd7
Coloring scan (camera projection on point cloud) ( #693 )
...
* ExportClouds: Added camera projection options
* ExportClouds: fixed ceiling/floor filtering options not saved in config
* ExportClouds: fixed colorless scan points still exported when option is unchecked.
* Export tool: added --bin, --poses, --images, --las and --cam_projection options; export with intensity with --scan option. PDALWriter: added binary option (only used for PLY an PCD formats). Rtabmap: Do graph optimization if neighbor link refined and Mem/UseOdomGravity is used.
2021-03-01 09:56:37 -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
7be22d1b67
Added check to make sure input odometry poses are invertible. Source/DB: added stereo to depth option.
2020-11-06 21:37:59 -05:00
matlabbe
e102243f0e
Fixed weight=-8 bug when moving rehearsed node to trash
2020-11-06 14:47:10 -05:00
matlabbe
bbb3c56008
Fixed android build
2020-10-16 14:55:50 -04:00