Commit Graph

1212 Commits

Author SHA1 Message Date
matlabbe
2b9ae3a2ad Added Icp/DebugExportFormat parameter 2021-06-26 16:06:25 -04:00
matlabbe
1a64e05e2f fixed code merged 2021-06-26 13:47:49 -04:00
matlabbe
350f995ee9 merged master to scan_map branch 2021-06-25 16:38:03 -04:00
matlabbe
eabf3e3d57 Decimation parameters for feature detection cannot be negative anymore (always done based to RGB image and depth image is decimated only if it is bigger than decimated rgb image). MainWindow: fixed light blue screen-only on full rehearsal merge. 2021-06-25 12:54:52 -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
dddf6378ae MainWindow: fixed currentVisiblePosesMap 2021-06-22 08:16:39 -04:00
matlabbe
5167927d01 report: added --ignore_inter_nodes option. CloudViewer: set max absolute scan intensity to 100 (was 0=auto). reprocess/replay db: ignore intermediate nodes if Rtabmap/CreateIntermediateNodes is false. 2021-06-21 17:23:53 -04:00
matlabbe
9fccb8703a Merge branch 'master' of https://github.com/introlab/rtabmap into ios 2021-06-21 09:41:11 -04:00
matlabbe
62b5f13dd8 MainWindow: added currentVisiblePosesMap() 2021-06-20 23:05:24 -04:00
matlabbe
d75cc04ad2 CloudViewer: fixed opengl not refreshed on update (VTK9). Fixed File Explorer hanging (Qt 5.12). Fixed backup database not deleted after a recovery. 2021-06-18 12:43:08 -04:00
matlabbe
289d4afd76 ios first release 2021-06-08 00:06:49 -04:00
matlabbe
12c46286f6 CameraRealSense2: added support for device id like D435, t265, L515, d435i, d415 for convenience (if we have multiple D435, we still need to use on of the serials shown in log info when starting the driver) 2021-06-01 11:40:46 -04:00
chameau5050
f94f9cbb9b improve flood fill and move it to update function (#727)
* add flood fill filter

* change to use unordoned_multiset

* remove recursivity in flood fill and move the flood fill into the update

* Refactoring of OctoMap constructors (keeping only one). Simplified floodfill parameters to only one and added it to UI.

* Fixed ray tracing not done in local 3D maps (OctoMap)

Co-authored-by: MarcLeclercGit <marcantoine.leclerc96@gmail.com>
Co-authored-by: matlabbe <matlabbe@gmail.com>
2021-05-30 10:12:07 -04:00
matlabbe
127a41a53e MainWindow::createCamera() fixed parameters not passed by reference 2021-05-26 21:13:14 -04:00
matlabbe
ada3e75005 Camera class: localTransform parameter should not have optical rotation anymore (it is added afterwards in the constructor). OdomSensor: the extrinsics should not contain optical rotation anymore. These 2 changes make it more convenient to set transfomation parameters in the UI. MainWindow::createCamera() now has odomSensor argument for convenience (for inherited classes to set both camera and odom sensor in the same function). 2021-05-26 13:40:46 -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
56bc15d7cd MainWindow: fixed bg color not shown on loop closures when only scans are used. 2021-05-16 11:15:05 -04:00
matlabbe
e9d7fcd7ae Vtk9 support (#722)
* Fixed build with VTK9

* Fixed VTK9 build with OctoMap dependency (vtkRenderingVolumeOpenGL2 missing)
2021-05-15 19:43:47 -04:00
matlabbe
8c336e1e39 Voxel filter: added support for very large clouds. Gui/Export: added footprint filtering option. Moved all filtering options under Cloud Filtering group. 2021-05-14 21:02:09 -04:00
matlabbe
3b7c6cd1f4 DBViewer: added camera projection on scan option (GUI params). Fixed some deprecated warnings. 2021-04-19 18:14:20 -04:00
matlabbe
2fcef88016 Export: added --poses_format option (default 10=RGBD-SLAM format). Added new pose format 11=RGBD-SLAM + ID. 2021-04-13 15:49:04 -04:00
matlabbe
a8f0abf892 MainWindow::processOdometry() rectify images if Rtabmap/ImagesAlreadyRectified is false. 2021-04-02 19:06:03 -04:00
matlabbe
54267b1b33 Preferences: fixed backward compatibility error "Conversion failed from true for parameter Icp/Strategy" when loading old database with Icp/PM 2021-03-31 12:02:56 -04:00
matlabbe
4c1e72d82e Added OpenVINS minimal support (tested with EuRoC dataset) 2021-03-28 23:51:02 -04:00
matlabbe
06e85e140c Refactored RegistrationIcp: libpointmatcher yaml config usage / integrated CCCoreLib (#704)
* Refactored RegistrationIcp so that libpointmatcher yaml can work with icp odometry (we can then avoid refiltering data with local map of F2M). All data filtering (including libpointmatcher DataFilters) are done at the beginning of the function.

* ICP: Restored ref and data scans order for libpointmatcher (seems more stable this way).

* Fixed compilation error without libpointmatcher

* CCCoreLib integration (Icp/Strategy=2). Icp/PMForce4DoF is now Icp/Force4DoF. Icp/PM is now Icp/Strategy. Icp/PMOutlierRatio is now Icp/OutlierRatio.

* Fixed build without CCCoreLib

* Cleanup RegistrationIcp from third party functions.

* Preferences: disable libpointmatcher and cccorlib options if not available
2021-03-27 15:11:20 -04:00
matlabbe
1e4b172a7d Export: added poisson polygon size option 2021-03-13 19:01:09 -05: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
800d087b07 Added archive directory to put paper related scripts 2021-03-09 17:08:42 -05: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
351c659beb Integrated DepthAI (gen2) (#696)
* Added OAK-D camera support (DepthAI)

* Fixed build without DepthAI dependency

* Added minimum version 2 for depthai

* fixed trusty build
2021-03-07 12:27:21 -05:00
matlabbe
ab8f0e2b34 Fixed #695 (footprint not cleared correctly when GridGlobal/OccupancyThr>0) 2021-03-05 18:35:49 -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
ea4cc7cb6c Refactored how IMU is used in odometry (if guess is not set, use imu orientation for guess). Changed canProcessIMU() to canProcessAsynIMU() to make it more clear for odometry approaches able to process IMU between image frames (VIO approaches). ZedOC: fixed device closed if imu is not detected. 2021-03-01 19:27:24 -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
967c57d165 Added CameraStereoZedOC (Zed Open Capture driver).
* Added CameraStereoZedOC (Zed Open Capture driver). Calibration: added stereo baseline option, show warning if fx is very different after stereo calibration.

* Fixed build without Zed Open Capture. Fixed "any" prefix added to all tools when WITH_ZEDOC=ON. UI: fixed Zed Open Capture action not disabled when not built with it.
2021-02-28 10:31:18 -05:00
matlabbe
862eb0a90a CameraStereoVideo: added resolution options for usb camera 2021-02-25 22:22:44 -05:00
matlabbe
cad184e82b Added Icp/PMForce4DoF parameter (works only with libpointmatcher > April 2020). Fixed some deprecated warnings. 2021-02-24 09:43:22 -05:00
matlabbe
d61e463595 Updated About dialog with opencv license 2021-02-21 13:59:36 -05:00
matlabbe
5cdb346a35 Updated opencv license to Apache2 when version >= 4.5 2021-02-21 13:03:19 -05:00
matlabbe
8696a38343 Added parameter GridGlobal/AltitudeDelta 2021-02-21 13:00:16 -05:00
matlabbe
9bf12742b1 fixed #688 2021-02-18 21:04:00 -05:00
matlabbe
03cfaf2063 DBViewer: Added option to export odometry poses 2021-02-12 11:22:02 -05:00
matlabbe
481a140f84 util3d: Refactored laserScanFromPointCloud() functions to return LaserScan with correct format instead of cv::Mat. 2021-02-07 17:27:55 -05:00
matlabbe
c1a22609f3 Extract images: added timestamp.jpg/.png filname options (to match RGBD-SLAM pose format). Fixed wrong calibration file when first node is an intermdediate node. Export poses: ignore intermediate nodes when output frame is camera or scan. 2021-02-02 09:36:12 -05:00
matlabbe
b759b1b4d1 DBReader: set calibrated true when only scans in db. RegIcp: added intensity matching option when complexity is low. OdomF2M: accept first key frame on low complexity if a guess is provided. DbViewer: added gravity visualization in 3D view. 2021-02-01 11:31:45 -05:00
matlabbe
6b119c1f90 Camera test view: show intensity/rgb/normals if input scans have them 2021-01-25 17:16:46 -05:00
matlabbe
c9472962d7 bumpt 0.20.9 version 2021-01-24 13:48:05 -05:00
matlabbe
47e40ef34d MainWindow: add fake frustum when only lidar is received 2021-01-22 12:51:47 -05:00
matlabbe
731b073ed8 Cleanup ObjDeletionHandler not used. Zed: fixed assert "qual >= sl::DEPTH_MODE::NONE && qual < sl::DEPTH_MODE::LAST" with latest sdk. 2021-01-19 17:24:38 -05:00