Commit Graph

48 Commits

Author SHA1 Message Date
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
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
3ce6de573d ImageView: added depth colormap menu option 2018-08-17 15:28:23 -04:00
matlabbe
173bd49a26 Handling intial odometry pose in all odometry approaches. For VIO approaches, gravity initialization is handled too. (#298) 2018-07-19 14:10:36 -04:00
matlabbe
9ae47b79f9 Working MSCKF 2018-07-18 16:15:41 -04:00
matlabbe
4969ece356 0.16.3: Added OKVIS support (tested only on EuRoC dataset). Added IMU/IMUThread classes. Added OdomOKVIS/ConfigPath and Rtabmap/ImagesAlreadyRectified parameters. MainWindow, limited odom local feature map to maximum 50 meters from current pose (to avoid VTK glitching with near/far clipping plane). 2018-03-07 19:43:30 -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
aca005c287 Added parameter "IcpPointToPlaneMaxComplexity". Added util3d::computeNormalsComplexity(). OdomInfo has now RegistrationInfo field to avoid duplicating members. 2017-09-11 13:17:53 -04:00
matlabbe
c4ca6a0bac Integrated ORB_SLAM2 as an odometry approach Odom/Strategy=5. 2017-06-05 19:04:23 -04:00
matlabbe
21e716b08a Updated default Vis/EstimationType=1 (PnP). Added all fovis and viso2 parameters. 2017-05-30 18:29:49 -04:00
matlabbe
d21ae76fff 0.12.3: Increased Tango rendering performance, modified all handleEvent() with new interface (now returning bool) 2017-03-12 21:21:09 -04:00
matlabbe
ca6cd19fb1 Updated Copyright year and About dialog summary 2016-07-17 21:57:10 -04:00
matlabbe
6f1f490370 0.11.7: Added ZED sdk support 2016-05-31 19:09:49 -04:00
matlabbe
684e9fb8b9 0.11.4: API change: added minDepth parameter to cloudFromXXXXX() methods and removed voxel parameter 2016-04-12 15:14:04 -04:00
matlabbe
0ae17ff17d Added Parameters::parseArguments() and Parameters::showUsage() functions for convenience. Updated OdometryViewer and Console tools to use parseArguments(). 2016-03-11 16:54:54 -05:00
matlabbe
c6a46a7238 0.11.2: First Google Tango release 2016-02-15 19:35:24 -05:00
matlabbe
eb21280f04 Changed CameraModel::isValid() to CameraModel::isValidForProjection() for clarity (in contrast to CameraModel::isValidForRectification()) 2016-01-19 21:01:56 -05:00
matlabbe
0cf1ea8777 Moved some common include files to public headers folder 2015-08-25 10:32:27 -04:00
matlabbe
b686103765 using map instead of multimap for motion estimation methods (only unique words were used) 2015-07-28 23:48:50 -04:00
matlabbe
6df403ed42 Refactored Camera classes and Preferences->Source menu 2015-06-26 18:21:32 -04:00
Mathieu Labbe
50eeda5b95 merged multicamera branch into devel branch 2015-06-16 17:41:51 -04:00
matlabbe
b8dccc2228 Added CameraStereoImages class to read stereo images from a directory. Added a particle filter to smooth odometry trajectory. Added parameter RGBD/OptimizeEpsilon to limit TORO iterations when error improvement is small. Added Rtabmap/CreateIntermediateNodes parameter: this can be used to keep all odometry poses 'between' nodes used for loop closure detection. Added PnP approach to loop closure constraint estimation. Fixed decimation of stereo images when image size is odd. 2015-06-11 16:57:16 -04:00
Mathieu Labbe
c6d0d47b1c Added multi-camera feature 2015-05-29 14:46:48 -04:00
Mathieu Labbe
9fde57843f Increased version to 0.9.0. Refactoring: Split util3d.h into multiple files util3d_****.h to reduce compilation time. Also removed all PCL templates to reduce memory used while compiling. 2015-05-13 19:54:23 -04:00
Mathieu Labbe
b2bfa91153 Added Depth information to ImageView's keypoint items 2015-05-05 11:39:30 -04:00
Mathieu Labbe
fa3a2421f6 Added Monocular SLAM (experimental), Odometry classes refactoring 2015-04-23 22:01:41 -04:00
matlabbe
0e21be7f67 Added Kinect v2 calibration and registration 2015-04-10 17:36:13 -04:00
Mathieu Labbe
39ef8c0f0a fixed OdometryViewer where clouds were not all removed or shown 2015-04-06 14:32:32 -04:00
matlabbe
5b5a32839c Added close buttons to CameraViewer and OdometryViewer dialogs 2015-04-06 13:35:44 -04:00
Mathieu Labbe
321b3f65ab Merge branch 'master' of https://github.com/Tobias-Fischer/rtabmap into Tobias-Fischer-master 2015-03-17 15:12:29 -04:00
Mathieu Labbe
6979c0d4b8 CloudViewer: fixed save/load background color 2015-03-17 15:11:05 -04:00
Tobias Fischer
b5e015ec8f Add QT5 Support 2015-03-16 22:54:19 +00:00
Mathieu Labbe
d97ae60e6c CloudViewer: using QWidget::update() call instead of render directly the window 2015-01-30 17:02:02 -05:00
Mathieu Labbe
fb0b23ae06 saving CloudViewer settings (Camera,Trajectory,Grid) in the config file 2015-01-13 18:11:34 -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
matlabbe
60b0fd2e98 Added util3d::segmentObstaclesFromGround() method, templated some PCL methods (new rtabmap/core/impl/util3d.hpp)
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1921 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-24 16:58:32 +00:00
matlabbe
fcd3301665 Stereo! The memory can now handle directly stereo images. Disparity can be computed on the fly by keeping left and right images, so for features extraction (and for re-extraction on loop closure), we can compute 3D points precisely. New parameters can be found under "RGB-D Mapping->Stereo". Full image disparity is reconstructed in the GUI (not the core).
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1861 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-16 00:14:23 +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
0a807e8cde Found a workaround for Issue 5 to avoid segmentation faults. The data included in the created window are cleared, but the window itself is not destroyed, only when its parent is deleted -> here the MainWindow. It seems that child CloudViewer windows don't crash when deleted on application exit.
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1826 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-10-02 19:33:51 +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
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
18f84febc1 OdometryEvent: set quality to -1 when not set.
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1611 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-07-24 17:27:43 +00:00
matlabbe
65b79cd7a2 Refactored OdometryBOW class to handle binary descriptors too (removed OdometryBin).
Odometry: added "local map history" option to increase precision
Added new Nearest neighbor options (LSH, brute Force, GPU brute Force)
Added FREAK/ORB features
Increased version to 0.6.5

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1431 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-06-22 03:33:56 +00:00
matlabbe
c18f1501d4 Refactoring CameraRGBD class (now including OpenNI, OpenNI2, OpenNI from OpenCV and Freenect)
Added tool to test RGB-D camera: rtabmap-rgbd_camera
Fixed Freenect corrupted depth image (after some time)

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1366 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-06-15 03:31:35 +00:00
matlabbe
df0f9d60d5 Added a quality odometry threshold, turning the background yellow when the mapping area has too low features
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1334 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-06-06 18:06:49 +00:00
matlabbe
eea38736b4 Fixed some bugs on Windows...
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1179 f169173b-cf89-36c8-b27e-44dbe73f0c83
2014-02-25 21:07:32 +00:00
matlabbe
8b8511e154 Merged pcl_integration branch to trunk
git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1014 f169173b-cf89-36c8-b27e-44dbe73f0c83
2013-12-11 00:12:44 +00:00