Commit Graph
155 Commits
Author SHA1 Message Date
Mathieu Labbe 5a37393a45 Only update weight on rehearsal if the displacement is too high (using parameters RGBD/LinearUpdate and RGBD/AngularUpdate) 2015-02-17 18:51:37 -05:00
Mathieu Labbe 2f6426f029 Updated how retrieved locations on the planned path are linked to local map.
Added new parameters: "RGBD/PlanWithNearNodesLinked" and "Mem/LocalSpaceLinksKeptInWM"
2015-02-17 17:30:47 -05:00
Mathieu Labbe 24155cdb7c Local space selection: compare maxDiff with margins to current node instead of ids 2015-02-13 18:21:26 -05:00
Mathieu Labbe ad05c5902a New parameter: Mem/ImageDecimation (save downscaled images in database), Updated default parameter RGBD/LocalLoopDetectionMaxDiffID to 50 2015-02-13 15:25:40 -05:00
Mathieu Labbe cff869ad03 accepting plan of only 1 node 2015-02-06 16:44:38 -05:00
Mathieu Labbe 695b7005d0 minor fix 2015-02-06 16:01:49 -05:00
Mathieu Labbe e3074d304c Added rtabmap::computePath() using a pose goal instead of node Id. Graph methods moved in rtabmap::graph namespace 2015-02-06 13:52:02 -05:00
Mathieu Labbe f8b625c7c7 Added DBDriver::setTimestampUpdateEnabled()
Don't update timestamps if only links are modified
2015-02-04 17:40:16 -05:00
Mathieu Labbe b2e5b7fbfc check if same node before adding virtual link 2015-02-03 14:11:57 -05:00
Mathieu Labbe ee885321aa Rtabmap: Added getPathNextPoses() and getPathNextNodes(). Local path is sent over statistics.
GUI: local path is shown in GraphViewer. Now handling stereo odometry data.
2015-02-03 11:09:10 -05:00
Mathieu Labbe a2dde36093 Integration of the path planner into rtabmap's memory management to actually retrieve nodes on the planned path on the graph.
Added Rtabmap::clearPath(), Rtabmap::computePath(), Rtabmap::getPathGoalId() and Rtabmap::updateGoalIndex() methods.
Added virtual links when path retrieval is activated (virtual links are not saved to database and removed when the path goal is reached).
New parameters: RGBD/GoalReachedRadius and RGBD/MaxAnticipatedNodes
Refactored how loop closure hypotheses are selected (fixed ratio between consecutive hypotheses, not the last loop closure).
Updated getNodesInRadius() to use all filtered scans.
GUI: window can be saved/loaded maximized
GUI: saving Graph View parameters to config.ini
2015-01-30 15:30:57 -05:00
Mathieu Labbe 7a6bf630ca Moved some util3d methods to Transform.h, Graph.h and Compression.h
Added computePath() method implementating A star on graph
GUI: SetWindowModified() and user should explicitly save the GUI config to keep them
Calibration: added mirror checkbox, added device id argument
2015-01-23 11:17:42 -05:00
Mathieu Labbe 6bd2a0926b Split RawDataKept parameter into Raw and Binary parameters to save RAM when keeping raw data in the core is not required 2015-01-12 18:23:25 -05:00
matlabbe 7f7d05e243 The graph is also sent in appearance-only mode. Added posterior hypotheses color on the graph view. Some minor fixes. 2015-01-07 17:30:20 -05:00
Mathieu Labbe 86a6fe202c rtabmap:
-Fixed map id not incremented on Odometry reset (identity transform was missed)
-Keeping maximum odometry variance between two loop closure updates
Odometry:
-removed parameters Odom/FeaturesRatio, Odom/LinearUpdate, Odom/AngularUpdate
-added parameter Odom/FillInfoData
-expended OdometryInfo class with features stuff
Gui:
-show inliers/outliers features in Odometry view
2014-12-18 16:54:46 -05:00
Mathieu Labbe 744e2fb3c7 Updated version to 0.8.0
Libraries are installed in lib directly with symbolic links, not in lib/rtabmap-0.8. Removed the need of RPATH in cmake.
Saving variance of each link in database (new field Link.variance). The variance is used to generate the constraint information matrices for TORO optimization.
ICP: computing variance instead of fitness.
ICP3: added correspondences ratio parameter
Added OdometryInfo class
Refactoring: renamed depth2d stuff to laserScan. rtabmap::Memory and rtabmap::Signature classes (no more distinct neighbor, loop closure or child loop closure links, only links with different types)
2014-12-14 16:42:10 -05:00
Mathieu Labbe 4126687625 Updated NNDR default for binary descriptors to 0.9. Delete log files by default if database doesn't exist on rtabmap init. 2014-12-04 16:34:39 -05:00
Mathieu Labbe 821c1602bf MainWindow: don't save empty database. Odometry: return null pose when not initialized. 2014-12-03 22:27:31 -05:00
Mathieu Labbe 72bac39943 fixed map ids not sent on loop closure detection-only mode 2014-12-01 15:56:49 -05:00
matlabbe 6bf271e04d updated local loop closure (space) map transform on localization
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@2054 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-11-20 16:47:18 +00:00
matlabbe faf43cc82c Odometry: added force2D option
Changed parameter RGBD/ScanMatchingSize to RGBD/PoseScanMatching

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@2050 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-11-19 23:38:15 +00:00
matlabbe 6608ee5ef6 rtabmap: don't publish statistics if process returns false. Also, don't return true when the displacement is too small (when the related parameters are set)
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1981 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-11-11 22:14:45 +00:00
matlabbe 080f31c8be fixed incremental memory when reextracting features
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1956 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-11-02 17:14:05 +00:00
matlabbe f12fc93639 Added option to show graphs in the 3D map view. (See "General Settings->3D rendering->Show Graphs" default true)
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1943 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-30 19:38:58 +00:00
matlabbe 9358234e44 removed virtual signature -1 in rtabmap::getMap() (to avoid error "[ERROR] DBDriverSqlite3.cpp:1103::loadSignaturesQuery() Signature -1 not found in database!")
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1942 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-30 15:15:20 +00:00
matlabbe 1597cfc293 GUI: Added "Edit->Post processing..." action to detect more loop closures and/or refine all links in the graph with ICP 3D.
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1940 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-30 14:43:43 +00:00
matlabbe 0f7cc38688 Memory efficiency: changed std::vector<unsigned char> bytes arrays to cv::Mat to avoid multiple copies when Signature objects are copied.
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1937 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-28 19:57:21 +00:00
matlabbe 9ffd103e69 Removed trailing separator from working directory. Replaced all slashes by QDir::separator().
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1935 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-28 05:00:10 +00:00
matlabbe 4340748fec fixed compilation error on Windows (on util3d::removeNaNFromPointCloud() method)
increased stability of new actions added (New/Open/Close database).

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1933 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-28 04:16:36 +00:00
matlabbe b56e03b463 -Updated File menu with new actions "New database...", "Open database", "Close database" and "Edit database". Each new session will be automatically saved when closing the database. The "play" action cannot be activated until a new database is created or a previous session database is opened.
-  Memory usage reviewed for the GUI: we don't uncompress data for downloaded nodes from "Download all clouds" action.
- Odometry: added optional argument "initialPose" to reset() method

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1930 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-28 01:20:57 +00:00
matlabbe 457c068e0f Refactored how visualization data are transfered between core and gui: using only Signature object instead of separated image,deph,fx,fy...
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1928 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-26 21:47:29 +00:00
matlabbe e03831e7db rtabmap: desactivate graph optimization when RGBD/ToroIterations=0
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1896 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-17 23:59:15 +00:00
matlabbe 85526ec106 added Rtabmap/StatisticLoggedHeaders to avoid headers in log files
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1869 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-16 18:35:00 +00:00
matlabbe 22ce2525fc Added parameter Kp/NewWordsComparedTogether for dictionary, always true but when comparing loop closures with Reextracting features, it is set to false to save time.
fixed crash when calling getMap without rtabmap yet initialized.
Parameter "LccReextract/LoopClosureFeatures" is now named "LccReextract/Activated"


git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1855 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-14 21:48:50 +00:00
matlabbe 8b67633b34 Refactored Odometry class:
-new odometry parameters
-new Optical flow strategy
-Stereo data support 
Refactored SensorData class to support stereo images
Updated default parameters (mostly odometry ones)
util3d: new methods to handle/reconstruct 3D clouds from disparity image / stereo images
PreferencesDialog: added Odometry/BOW and Odometry/OpticalFLow panels.
DatabaseViewer: fixed a crash when database is empty. Added cloud reconstruction of stereo images if saved in database
Camera: added 1 second delay to avoid dark images at the starting


git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1849 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-13 19:10:22 +00:00
matlabbe a3f7415821 Refactored OdometryBOW class
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1846 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-08 00:32:43 +00:00
matlabbe 2badfb5faf Upgraded trunk version to 0.7.1
Added version in ini config file
Fixed rtabmap-console for loop closure detection-only

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1823 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-02 15:12:56 +00:00
matlabbe 317d382a24 New parameter: Rtabmap/StartNewMapOnLoopClosure, when activated and creating a new map, the nodes of the new map will be ignored until a loop closure is found.
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1812 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-01 19:52:46 +00:00
matlabbe ebeb116c0d added new statistics (features extracted current image, local map size) shown in GUI for Odometry
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1719 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-09-25 15:04:35 +00:00
matlabbe c5eedd9a9d rtabmap::getGraph() returning mapIds too
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1681 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-09-22 18:02:07 +00:00
matlabbe a98f819821 Binary descriptors (ORB, BRIEF, FREAK) can now be used for the visual dictionnary: maybe not as discriminative as SIFT/SURF on large environments, the advantage is that RTAB-Map will work without Patent/noncommercial licenses of SIFT and SURF.
A new option is added to re-extract features when a loop closure hypothesis is found. 
Another new option is to force 2D (3DoF) transform on visual odometry and loop closures.

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1679 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-09-21 16:51:51 +00:00
matlabbe e687302ce0 Don't publish new node data when in localization mode
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1676 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-09-09 18:47:04 +00:00
matlabbe e460cb592f Refactoring: Renamed rtabmap::Image to rtabmap::SensorData
removed keypoints and descriptors stuff from CameraEvent and Image/SensorData
removed keypoints3 from Image/SensorData

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1653 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-08-18 23:14:04 +00:00
matlabbe 7cf89b6d76 Added mapIds to rtabmap::get3DMap()
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1644 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-08-13 18:57:17 +00:00
matlabbe 29097c023e Changed license to BSD
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1633 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-08-11 17:00:55 +00:00
matlabbe f090c81aaf Added CalibrationDialog in Preferences->source for convenience. The database is also changed to handle new FX, FY, CX and CY intrinsic parameters instead of only depthConstant parameter. Added version of the database in a new table Admin. Updated to version 0.7.0.
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1613 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-07-26 04:36:00 +00:00
matlabbe 1d7d2a1847 rtabmap: set mapTransform on local loop closures too
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1547 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-07-13 16:57:31 +00:00
matlabbe 8da1d61a71 fixed issue 10
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1544 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-07-11 19:03:11 +00:00
matlabbe 0fa8b401c4 just changed a variable name
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1458 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-07-06 19:11:49 +00:00
matlabbe f34907f92f Added optimizeFromGraphEnd (default true) parameter. It can be used to keep the map referential from the oldest node in the current graph
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1441 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-06-25 23:00:35 +00:00