Commit Graph
314 Commits
Author SHA1 Message Date
matlabbe c5057eb6b3 exportGraph: added RGBD-SLAM format (10) without motion capture coordinate transformation (#332) 2018-11-08 12:26:37 -05:00
matlabbe 09a63bbc5b Rtabmap::detectorMoreLoopClosures() added intraSession and interSession parameters 2018-11-05 18:40:08 -05:00
matlabbe 8e99291e13 0.18: Camera calibration and LaserScan Info refactoring (#324)
* Saving full camera calibration in database, added angle min/max/inc to LaserScan.

* Updated laserscan info save/load in db

* Database: added Tag table, added env_sensors field to Node

* fixed serialization/deserialization of stereo camera model

* fixed multi-calibration db saving

* fixed rebase errors

* Tango: Added saving environmental sensors option

* Memory: Save env sensors

* Tango: fixed env sensor ids

* DBViewer: show env sensors values

* DBViewer: added calibration details on tooltip

* increased package version to 0.18.0

* Fixed LaserScan copies when angleIncrement is valid

* fixed build error without OctoMap dependency
2018-10-23 14:35:14 -04:00
matlabbe 3bc8fc4c11 Integrated GPS into likelihood computation 2018-10-22 12:31:07 -04:00
matlabbe 4c7b565391 Refactored Optimizer::getConnectedGraph() to estimate poses based on links, we can then remove Optimizer::optimizeMultiSession(). Rtabmap: if poses and guess are not the same before optimization, do Optimizer::getConnectedGraph() to get pose estimates based on links instead of odom (to make optimization more robust to memory management and multi-session). 2018-10-16 18:55:36 -04:00
matlabbe f1546c1fca Replaced all optimizeIncremental() by optimizeMultiSession() to fix GTSAM errors when merging multiple maps together. DBReader: always publish saved stamp. DBViewer: added actions to set covariance of all neighbor or loop closure links. 2018-10-15 17:07:18 -04:00
matlabbe b2c012d8bc Updated g2o and toro saveGraph() to use Optimizer's parameters (#320, #319) 2018-10-15 13:41:44 -04:00
matlabbe b5dec56eaf Parameters: added RGBD/LoopCovLimited, refactored "detect more loop closures" in MainWindow/DBViewer/rtabmap 2018-10-01 20:22:20 -04:00
matlabbe 8b055752aa RegistrationIcp: Fixed invalid variance set when structural complexity is low and input doesn't have normals. DBViewer: added check on angular error after optimizing the graph when adding a new constraint. Memory: added warning if odom angular variance detected is very high. 2018-09-28 22:02:07 -04:00
matlabbe 124543c57d Fixed compilation errors with OpenCV 4.0.0 (#309) 2018-09-18 22:43:18 -04:00
matlabbe 3ce6de573d ImageView: added depth colormap menu option 2018-08-17 15:28:23 -04:00
matlabbe 67aa4cd28e DbViewer: added decimation parameter for cloud visualization. ImageView: adding scaling to height menu option. 2018-08-17 14:01:11 -04:00
matlabbe 714d95cc34 Removing redundant non null check before deleting a ptr in destructors #301 2018-08-09 15:53:47 -04:00
matlabbe 5e60a2596c DbViewer: show full covariance in Constraints View 2018-08-09 15:20:19 -04:00
matlabbe b63590bf1d Memory: Fixed features with no id (-1) ignored for triangulation from motion. Dictionary: matching with negative word ids is now allowed 2018-07-26 20:41:54 -04:00
matlabbe a39d0840ce fixed #279 2018-04-30 11:16:26 -04:00
matlabbe 637514d00d DbViewer: fixed odom pose not added to odomPoses_ when a location doesn't have any links 2018-04-27 19:07:43 -04:00
matlabbe b044bae304 DbViewer: added menu actions to view/update/export optimized mesh saved in database. CloudViewer: cubes can be added for convenience, fixed double-click not always working. util3d: added conversion function from LaserScan to PointCloud2, added conversion functions between polygons format saved in database and PCL polygons format with vertices. 2018-04-25 12:34:47 -04:00
matlabbe 592b7c66c5 0.17.0: saving optimized poses and last localization pose to database (https://github.com/introlab/rtabmap_ros/issues/220). Parameters: fixed Icp default parameters when not built with libpointmatcher, added RGBD/SavedLocalizationIgnored (default false). DbViewer: added Export/Import 2D map (https://github.com/introlab/rtabmap_ros/issues/213). 2018-04-04 19:14:13 -04:00
matlabbe ba011169b8 DbViewer: don't modify ground truth values (previously they were aligned with root) 2018-03-12 20:57:34 -04:00
matlabbe ffe50dad22 When exporting poses, set txt extension by default if not set 2018-03-12 20:26:34 -04:00
matlabbe dc289ba635 DbViewer: when align with ground truth is enabled, exported poses are those aligned with ground truth 2018-03-12 18:51:55 -04:00
matlabbe 69d28db660 DbViewer: optimized fetching wm states from db, added checkbox along graph iteration slider to generate intermediate graphes. 2018-02-23 10:12:36 -05:00
matlabbe 297cf3f51e 0.16.2: Added wm_state field to database's Statistics table. New parameter "Rtabmap/SaveWMState" (default false). DbViewer: added option in GraphView to show only poses of the root id that were in WM at that time 2018-02-21 18:19:20 -05:00
matlabbe 93e1d732c9 DbViewer: added option to align scans/clouds to ground truth for convenience 2018-02-21 15:13:02 -05:00
matlabbe 1bfde1f9f0 Neigbor refining can be done with any Registration approach. Memory::computeIcpTransformMulti(): correspondences ratio increased by two times to accept transform 2018-02-21 12:23:12 -05:00
matlabbe 489ab86ac7 dbviewer: fixed variance*100 for proximity by space links (multi-scan). 2018-02-21 10:08:48 -05:00
matlabbe e8f7746c87 dbviewer: removed voxel filtering from scan display 2018-02-21 08:38:35 -05:00
matlabbe db1139e89e Gui: fixed default color for scans from odom in MainWindow and constraint view in dbviewer. Recovery/reprocess: fixed triggering new map on covariance >=9999. Reg: repeatOnce not done if it has a child. Statistics: added time proximity by space visual info. 2018-02-20 17:33:48 -05:00
matlabbe 5c04ce257b DbViewer: can launch with a directory argument to set current workspace for convenience. 2018-02-19 16:37:17 -05:00
matlabbe 37cbf79b4c DbViewer: fixed occupancy grid color options. Reprocess: added grid total time including rtabmap stats 2018-02-18 21:32:19 -05:00
matlabbe 00559ce8d6 ground segmentaiton: adjusted cluster inlier with centroid below max height of biggest cluster 2018-02-18 15:30:20 -05:00
matlabbe 07244a8a73 Fixed occupancy grid created from PointNormal with RGB 2018-02-18 15:10:25 -05:00
matlabbe d181bedbfc Gui 3d rendering: added default color scheme option, added min and max range options for laser scans 2018-02-17 09:46:08 -05:00
matlabbe d24097f73d 0.16.1: Added LaserScan class with new "format" field to distinguish easier between all kind of laser scans (XYZ, XYZRGB, XYZI, XYZNormal...) 2018-02-16 19:20:54 -05:00
matlabbe bfb3a58c01 Optimizer: added optimizeIncremental() method to solve optimization error problems when re-opening the database (when graph should be re-optimized from raw odometry poses, not latest optimized poses, #172) 2018-02-13 18:18:42 -05:00
matlabbe 3dfe1ccb1a DbViewer: updated warning msg when graph optimization fails. 2018-02-13 14:14:08 -05:00
matlabbe 4c0a612ab5 util3d_filtering: refactored implementations using templates. Parameters: Changed Grid/DepthMin|Max to Grid/RangeMin|Max, added Grid/PreVoxelFiltering, added GridBlobal/OctoMapOccupancyThr. OccupancyGrid: supporting input clouds already having normals. Memory: don't save working directory parameter to database. 2018-02-13 10:16:48 -05:00
matlabbe 09cae9cbd3 DbViewer: added color selectors for obstacle, ground and empty cells. 2018-02-12 11:32:17 -05:00
matlabbe 1595405871 DbSqlite3: fixed Feature.depth_[x,y,z] not saving correctly NaN values (then NaNs were wrongly converted to 0 on reload). Gui: Added stereo exposure compensation option in Source panel. 2018-02-11 16:07:26 -05:00
matlabbe fced2c521c 0.16.0: Database updated with Data.empty_cells, Admin.opt_map, Admin.opt_map_x_min and Admin.opt_map_y_min fields. Changed Parameter Grid/ProjRayTracing to Grid/RayTracing (OctoMap ray tracing done for 3D local grids). Improved OctoMap performance. 2018-02-08 21:40:17 -05:00
matlabbe 42199eefd2 Added --poses option to report tool. Reprocess tool: Export ground/obstacles when 3d map is created. 2018-02-06 11:31:39 -05:00
matlabbe 977d21eed5 Update 0.15.4.
Parameters:
-Added "GridGlobal/MaxNodes=0", "Rtabmap/PublishRAMUsage=false", "Mem/DepthAsMask=true", "Kp/FlannRebalancingFactor=2.0", "Vis/DepthAsMask=true".
-Modified "Kp/DetectorStrategy=6", "Kp/MaxFeatures=500",  "Mem/UseOdomFeatures=true", "GFTT/QualityLevel=0.001", "GFTT/MinDistance=3", "RGBD/OptimizeMaxError=1", "RGBD/ProximityPathFilteringRadius=1", "Odom/GuessMotion=true", "Odom/VisKeyFrameThr=150", "OdomF2M/BundleAdjustment=1", "Vis/Iterations=300" if built with g2o, "OdomF2M/BundleAdjustmentMaxFrames=10", "OdomFovis/MinFeaturesForEstimate=20", "OdomORBSLAM2/MapSize=3000", "Reg/RepeatOnce=true", "Vis/PnPRefineIterations=0" if built with g2o, "Vis/CorGuessMatchToProjection=true", "Vis/BundleAdjustment=1" if built with g2o, "Icp/MaxCorrespondenceDistance=0.1", "Icp/PointToPlaneK=5", "Icp/PointToPlaneRadius=1", "Icp/PM=true" if built with libpointmatcher, "Stereo/MaxLevel=5", "Stereo/MinDisparity=0.5".

BayesFilter: optimized prediction matrix update. Use of new argument "ignoreLocalSpaceLoopIds" of Memory::getNeighborsId() to ignore loop closure link by space in prediction update.
CameraThread: Added stereo exposure compensation option.
CameraRGB: Added forceGroundNormalsUp option and added support of ground truth from EuRoC dataset.
Statistics: Added "Memory/RAM_usage/MB".
Transform: Added clone() method to do deep copy.
Graph::importPoses(): EuRoC format support (9).
Rtabmap: Local visual loop closures are now identified as GlobalClosure link type.
OccupancyGrid/OctoMap: updated how cache is used (old node retrieved can be re-added to map without re-assembling the whole map).
OdometryF2F: when using ICP, increasing correspondence distance for first two frames. If Vis/CorType=1 and registration fails, second guess without motion is done with Vis/CorType=0.
OdometryF2M/RegVis: updated how features are removed from the map, using new projectedIDs filled in RegistrationInfo by RegistrationVis.
OdometryORBSLAM2: Maximum size of the feature map can be set with "OdomORBSLAM2/MapSize" parameter.
CloudViewer: fixed opengl camera drifting in follow mode.
DatabaseViewer: Added optimization scale option. ConstraintsView: hide loop closure links if type is ignored in gui parameters.
MainWindow: Support of "GridGlobal/MaxNodes" parameters when updating the maps.
UPlot: don't show ellipses when not in graphics view mode, updated how "random" colors are attributed to curves
Added rtabmap-euroc_dataset tool. Updated rtabmap-kitti_dataset and rtabmap-rgbd_dataset tools.
Added rtabmap-reprocess tool.
2018-02-01 22:17:46 -05:00
matlabbe 775b80eff5 0.15.2: Fixed Transform's not orthogonal rotation matrix causing problems with GTSAM (normalize rotation each time transforms are multiplied, and for backward compatibility automatically normalize rotation of all transforms loaded from old databases prior to 0.15.2). Added Vis/CorGuessMatchToProjection, Icp/PMMatcherKnn and Icp/PMMatcherEpsilon parameters. CameraRGB: fixed max scans number when filtering. Link: transfering maximum covariance when merging. OptimizerGTSAM: updated how covariance are copied based on GTSAM official example. util3d::loadBINCloud(): fixed dim parameter not used. DatabaseViewer: Added option in graph view to ignore intermediate nodes when optimizing the graph. 2017-12-09 21:44:53 -05:00
matlabbe dafaac412f DbViewer: fit in view the graph when changing iterations. Limited to 900MB creation of the grid map (in case graph is very erroneous). 2017-12-01 11:56:27 -05:00
matlabbe 1df95702a3 DbViewer: Fixed octomap visualization when ground is not segmented 2017-11-21 13:24:21 -05:00
matlabbe 71d9816f4b 0.15: statistics are now compressed in database. Eigen issue: using linear() instead of rotation() to get rotation from affine3f. Increased loading speed of statistics in DatabaseViewer. Added graph:calcRMSE(). 2017-11-09 12:03:01 -05:00
matlabbe e40a7d6681 0.14.3: exposed all gui widgets to public API. CloudViewer: fixed camera orientation reset 2017-10-20 12:09:34 +02:00
matlabbe d4248385f0 Added rtabmap::databaseRecovery() function, added rtabmap-recovery tool, added "Database recovery" menu action in DbViewer 2017-10-11 19:36:00 -04:00
matlabbe 400952b327 ProximitySpace: extracting all paths inside local radius up to max graph depth, no length limit of the proximity space links. Fixed local scan matching assembling bug when laser local transform is set. DbViewer: we can now refine proximity detection by space (laser scan matching). 2017-10-09 18:45:42 -04:00