matlabbe
5b5b594f4a
Fixed assert when Mem/DepthAsMash=false and Vis/MaxDepth or Vis/MinDepth are set
2019-05-07 21:09:46 -04:00
matlabbe
f9b7b54454
Dictionary: new bin descriptor to 32f conversion. RegVis: removed octave comparisons.
2019-04-24 01:24:55 -04:00
matlabbe
d4585960fc
RegVis: fixed orboctree descriptor extractions. KeypointItem: fixed placeholder gray scale for yellow features.
2019-04-22 19:50:41 -04:00
matlabbe
cf4db63226
New parameter: OdomF2M/ValidDepthRatio
2019-03-06 12:35:54 -05:00
matlabbe
d45b77c0b7
Vis: fixed assert when doing bundle adjustment with SignatureTo having no 3d words
2019-01-16 19:29:57 -05:00
matlabbe
12a7349165
Removed Optimizer:computeBACorrespondences() duplicated 3d points (more than 2 frames can reference a 3D point), added option to rematch features. Bundler: added more options to export dialog, fixed inverted colors.
2018-10-25 16:31:13 -04:00
matlabbe
c14e20330f
Fixed SIFT octave issue causing registration to always fail. Added Bundler export points option.
2018-10-24 20:01:57 -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
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
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
9f80f4ac42
RegVis: convert to 3dof before SBA
2017-12-21 10:16:46 -05:00
matlabbe
d6058768fc
RegVis: fixed out-of-range vector error when guess is used and we match to projections. ImageView: Added right-click menu option to set a fixed size for features
2017-12-18 14:38:54 -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
4452e637ad
0.15.1: CameraImages: added ground truth time diff, fixed memory leak when loading binary scans. CameraRGBDImages and CameraStereoImages: fixed start id. Feature2D: added grid rows and cols parameters (Kp/GridRows, Kp/GridCols, Vis/GridRows, Vis/GridCols). OdomInfo: publish bundle frames. OdometryORBSLAM2: added OdomORBSLAM2/Fps and OdomORBSLAM2/MaxFeatures parameters. Registration: added Reg/RepeatOnce parameter and removed variance normalization. For util2d::getDepth() and util3d::projectDepthTo3D(), maxZError parameter is now depthErrorRatio to be dependent of the sensor range. Database: save image width and height from stereo calibration. OptimizerG2O: fixed SBA optimization when using g2o built from ORBSLAM2 library. OptimizerGTSAM: to increase optimization stability, all rotations in information matrix are divided by 100000. Added rtabmap-report tool.
2017-11-30 16:52:03 -05:00
matlabbe
274e7c579e
Added some warnings
2017-11-14 16:28:47 -05:00
matlabbe
3443c3b8ea
RegistrationVis: fixed assert covariance in bundle adjustement when transform is perfect (covariance is null) by setting an epsilon to generated covariance is null or very close to 0
2017-07-26 15:27:54 -04:00
matlabbe
e361abcecd
Reg: normalize covariance angle /10
2017-05-22 21:11:36 -04:00
matlabbe
385b7e3389
Parameters: Added "Reg/VarianceNormalized". Registration: Transforms are now only normalized in Registration. Added rgbd_dataset tool. MainWindow: odom inliers-only shown option. ExportCloudsDialog: ignoring intermediate nodes for texturing (if they don't have data). DatabaseViewer: "optimized" checkbox enabled in Constraints view for non-neighbor links too.
2017-05-22 11:48:01 -04:00
matlabbe
104c1e6945
0.13.0 Database: Added velocity field to Node table, renamed Map_Node_Word table to Feature, added information_matrix field to Link table (replacing rot_variance and trans_variance). Added graph::calcKittiSequenceErrors().Added "Mem/IntermediateNodeDataKept" parameter (default false). Updated all interfaces using rotVariance and transVariance values with covariance matrix instead. g2o SBA: always use covariance in links. kitti-dataset tool: added --disp option and kitti statistics are shown at the end. StatsToolBox: units can have "/".
2017-05-11 15:02:18 -04:00
matlabbe
af1cdadabd
Tango: updated export workflow, added sketchfab activity, added graph optimization parameters, fixed raw images kept in memory (disabled reexctract words on loop closure while updating memory to be able to create more features for transform estimation than needed in vocabulary), portrait/landscape orientation, updated to Eisa TangoSDK. DBReader: fixed high variance when node has no links (if not the first in the current map id). MainWindow: remove frustums not in the current graph.
2017-02-15 19:07:10 -05:00
matlabbe
0d0577a886
3D Rendering: Added option to show graph's frustums, added option to filter floor and/or ceiling.
2017-02-09 18:32:44 -05:00
matlabbe
8895173a2b
Memory::computeTransform(): Fixed empty "from" image when reextract features is true and ICP-only registration is used
2017-01-05 19:31:18 -05:00
matlabbe
ac1c5f81ae
fixed some compilation warnings
2017-01-03 22:14:21 -05:00
matlabbe
6abed48af6
0.11.13. OdometryF2M: fixed/improved bundle adjustment option. OptimizerG2O: now doing stereo BA instead of mono BA (interface of Optimizer::optimzeBA() has slightly changed to include depth in word references). Registration and Odometry set angular and linear variances separately. RegistrationVis set x100 smaller variance for rotation. Added keypoints3D member to SensorData. Added Transform::getAngle() for convenience. Odometry normalizes variances. RtabmapThread does variance summation when frames are discarded. Updated how variance is computed by util3d::estimateMotion3Dto2D(), ignoring very large variance from the computation (stereo issue with very far matched features). MainWindow: added option to align with ground truth or not (default true as before), added for odometry statistics (including bundle stuff), update ground truth statistics every time a graph is loaded/optimized. CameraRGB can now load odometry files (to fake an input odometry). PreferencesDialog: Added option to Odometry so it can use a different registration approach than the default one (the one used for loop closure). Parameters: added new g2o/Solver option 3 (Eigen), added g2o/RobustKernelDelta, g2o/Baseline and Odom/VisKeyFrameThr. Database: from 0.11.13, ignoring patch version when comparing is database version is newer than app version used.
2017-01-03 21:05:00 -05:00
matlabbe
3363772ce5
CloudViewer: added backface culling option on right-click menu. MainWindow: removed error msg on wrong decimation (util3d already handle this case)
2016-11-27 20:10:05 -05:00
matlabbe
121446d648
Removed parameter "OdomF2M/FixedMapPath". GUI: added odometry disabled option. Rtabmap can now localize even if odometry input is null (only in localization mode).
2016-11-27 14:30:11 -05:00
matlabbe
693f623e5e
Fixed GUI crash when using rectified RGB only (with odometry). Fixed empty local map when loading a fixed local map for OdometryF2M.
2016-11-25 19:52:34 -05:00
matlabbe
9276607920
Added Bundle Adjustment options to OdometryF2M (OdomF2M/BundleAdjustment) and RegistrationVis (Vis/BundleAdjustment). Added logger thread filter. RegistrationVis: Copy back corresponding input word IDs to output words when available. Memory::computeTransform() added option to use already computed corespondences if possible (proximity detection by time uses this). Updated Optimizer::optimizeBA() interface.
2016-11-14 19:54:31 -05:00
matlabbe
edcd92fbb7
DBViewer: merged Refine (visual) and Refine (ICP) in the same Refine action (registration used is defined by Reg/Strategy value). Updated how detect more loop closures work in MainWindow and DBViewer (using current registration parameters, visual and/or icp)
2016-11-09 16:44:08 -05:00
matlabbe
fe6eb01404
Fixed opencv setSize assert error (RegistrationVis):
...
[DEBUG] (2016-08-29 10:26:03.821) RegistrationVis.cpp:460::computeTransformationImpl() kptsFrom=0
[DEBUG] (2016-08-29 10:26:03.821) RegistrationVis.cpp:461::computeTransformationImpl() kptsTo=0
OpenCV Error: Assertion failed (s >= 0) in setSize, file /home/mathieu/workspace/opencv-2.4.11/modules/core/src/matrix.cpp, line 116
terminate called after throwing an instance of 'cv::Exception'
what(): /home/mathieu/workspace/opencv-2.4.11/modules/core/src/matrix.cpp:116: error: (-215) s >= 0 in function setSize
2016-08-31 12:43:54 -04:00
matlabbe
a0d76eabe5
RegistrationVis: don't assert if descriptorsFrom is 0, only if kptsFrom and descriptorsFrom are non null and not equal
2016-08-12 10:59:43 -04:00
matlabbe
ca6cd19fb1
Updated Copyright year and About dialog summary
2016-07-17 21:57:10 -04:00
matlabbe
1398b71b60
Merge branch 'master' of github.com:introlab/rtabmap into devel
2016-06-27 12:17:55 -04:00
matlabbe
f69ca56179
Features2D: Using 255 mask values for ORB ( #89 ). Fixed ignored mask by FAST when called from ORB.
2016-06-27 11:54:21 -04:00
matlabbe
798c3cb373
Registration: added warning when GuessFlowSize is set and multi-camera is detected instead of crashing on an assert
2016-06-15 18:13:11 -04:00
matlabbe
dece54ca3e
Added parameters: Mem/ImagePreDecimation Mem/ImagePostDecimation Odom/ImageDecimation
2016-04-08 16:15:08 -04:00
matlabbe
04df6ba41c
Stereo: Fixed min/max depth filtering
2016-03-13 16:58:36 -04:00
matlabbe
6c15cb8b25
Fixed multi-kinects keypoint projection
2016-03-11 23:27:41 -05:00
matlabbe
609cc3dc59
Fixed some missing rgb conversions before descriptor extractions. RegVis: re-extracting 3D kpts if Signature.words3() and actual kpts are not the same size. Updated fast visual guess on Memory::computeTransform().
2016-03-09 19:17:29 -05:00
matlabbe
0f477d6853
RegVis: if calibration is not found, local features matching using guess is not done, global matching is done instead. CameraModel/StereoCameraModel: added imageSize argument to constructors
2016-03-09 17:15:05 -05:00
matlabbe
62c8be40b9
Added ORB+FastGrid implementation (only with OpenCV2). Updated default parameters: Odom/GuessFromMotion=false, Vis/CorNNType=1. RegistrationVis: octave aware on features matching with motion
2016-03-08 12:31:32 -05:00
matlabbe
eefd557ab4
Added parameter "RGBD/ProximityAngle"
...
Updated default of GuessMotion parameters
Proximity detection by time: added guess transform based on optimized poses
RegistrationVis: ByPass OpticalFlow if no images are detected (use features matching instead if features are set)
solvePnPRansac() refining: using std dev instead of variance
Statistics panel: creating Camera/GUI/Odometry panels without the need to start detection (issue #51 )
Statistics: Adding a GT panel when ground truth poses are detected with RMSE info
2016-03-02 18:11:19 -05:00
matlabbe
b6fb947310
3D->3D estimation refining: using 3x sqrt(variance) instead of sqrt(9x variance). GUI: added features cloud rendering option. CloudViewer: fixed slow updateCameraTargetPosition()
2016-03-01 17:33:27 -05:00
matlabbe
a89b8cb4fe
Removed parameters Vis/UseDepthAsMask and Mem/UseDepthAsMask (just always do it when a depth is detected)
2016-03-01 14:40:40 -05:00
matlabbe
e6e9c61c38
RegistraitonVis: generate always 3D keypoints if possible
2016-02-29 16:41:37 -05:00
matlabbe
a8d1b91083
OdometryF2F: Fixed broken OpticalFlow approach
2016-02-24 17:42:23 -05:00
matlabbe
172e9857c7
Fixed RegistrationVis feature matching behavior when NaN 3D keypoints are found
2016-02-24 12:45:00 -05:00
matlabbe
061211b1b6
OodmetryF2M: Added getter to last frame
2016-02-23 11:46:07 -05:00
matlabbe
9e446aab7a
Fixed some signed/unsigned comparison warnings
2016-02-23 11:06:24 -05:00
matlabbe
ccc4b4a6c2
Parameters renamed: "OdomLocalMap" group is now "OdomF2M" for Frame to Map odometry. Visual registration feature matching: using guess transform to limit the radius of correspondences "Vis/CorGuessWinSize=16"
2016-02-22 16:13:14 -05:00