diff --git a/api/latest/SensorData_8h_source.html b/api/latest/SensorData_8h_source.html index 61dfc314..e88c65ab 100644 --- a/api/latest/SensorData_8h_source.html +++ b/api/latest/SensorData_8h_source.html @@ -288,268 +288,273 @@ $(document).ready(function(){initNavTree('SensorData_8h_source.html',''); initRe
463
467 virtual ~SensorData();
468
-
-
485 bool isValid() const {
-
486 return !(_id == 0 &&
-
487 _stamp == 0.0 &&
-
488 _imageRaw.empty() &&
-
489 _imageCompressed.empty() &&
-
490 _depthOrRightRaw.empty() &&
-
491 _depthOrRightCompressed.empty() &&
-
492 _depthConfidenceRaw.empty() &&
-
493 _depthConfidenceCompressed.empty() &&
-
494 _laserScanRaw.isEmpty() &&
-
495 _laserScanCompressed.isEmpty() &&
-
496 _cameraModels.empty() &&
-
497 _stereoCameraModels.empty() &&
-
498 _userDataRaw.empty() &&
-
499 _userDataCompressed.empty() &&
-
500 _keypoints.size() == 0 &&
-
501 _descriptors.empty() &&
-
502 _groundCellsRaw.empty() &&
-
503 _groundCellsCompressed.empty() &&
-
504 _obstacleCellsRaw.empty() &&
-
505 _obstacleCellsCompressed.empty() &&
-
506 _emptyCellsRaw.empty() &&
-
507 _emptyCellsCompressed.empty() &&
-
508 imu_.empty());
-
509 }
+
+
491 bool isValid() const {
+
492 bool hasCameraModel = false;
+
493 for (size_t i=0; i < _cameraModels.size() && !hasCameraModel; ++i)
+
494 hasCameraModel = _cameraModels[i].isValidForProjection();
+
495 if (!hasCameraModel)
+
496 for (size_t i=0; i < _stereoCameraModels.size() && !hasCameraModel; ++i)
+
497 hasCameraModel = _stereoCameraModels[i].isValidForProjection();
+
498
+
499 return !(_id == 0 &&
+
500 _imageRaw.empty() &&
+
501 _imageCompressed.empty() &&
+
502 _depthOrRightRaw.empty() &&
+
503 _depthOrRightCompressed.empty() &&
+
504 _depthConfidenceRaw.empty() &&
+
505 _depthConfidenceCompressed.empty() &&
+
506 _laserScanRaw.isEmpty() &&
+
507 _laserScanCompressed.isEmpty() &&
+
508 !hasCameraModel &&
+
509 _userDataRaw.empty() &&
+
510 _userDataCompressed.empty() &&
+
511 _keypoints.size() == 0 &&
+
512 _descriptors.empty() &&
+
513 _groundCellsRaw.empty() &&
+
514 _groundCellsCompressed.empty() &&
+
515 _obstacleCellsRaw.empty() &&
+
516 _obstacleCellsCompressed.empty() &&
+
517 _emptyCellsRaw.empty() &&
+
518 _emptyCellsCompressed.empty() &&
+
519 imu_.empty());
+
520 }
-
510
-
515 int id() const {return _id;}
-
516
-
521 void setId(int id) {_id = id;}
-
522
-
527 double stamp() const {return _stamp;}
-
528
-
533 void setStamp(double stamp) {_stamp = stamp;}
-
534
-
540 const cv::Mat & imageCompressed() const {return _imageCompressed;}
-
541
-
547 const cv::Mat & depthOrRightCompressed() const {return _depthOrRightCompressed;}
-
548
-
554 const cv::Mat & depthConfidenceCompressed() const {return _depthConfidenceCompressed;}
-
555
-
560 const LaserScan & laserScanCompressed() const {return _laserScanCompressed;}
-
561
-
566 const cv::Mat & imageRaw() const {return _imageRaw;}
-
567
-
573 const cv::Mat & depthOrRightRaw() const {return _depthOrRightRaw;}
-
574
-
579 const cv::Mat & depthConfidenceRaw() const {return _depthConfidenceRaw;}
-
580
-
585 const LaserScan & laserScanRaw() const {return _laserScanRaw;}
-
586
-
592 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const CameraModel & model, bool clearPreviousData = true);
-
593 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const cv::Mat & depth_confidence, const CameraModel & model, bool clearPreviousData = true);
-
594 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const std::vector<CameraModel> & models, bool clearPreviousData = true);
-
595 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const cv::Mat & depth_confidence, const std::vector<CameraModel> & models, bool clearPreviousData = true);
-
596 void setStereoImage(const cv::Mat & left, const cv::Mat & right, const StereoCameraModel & stereoCameraModel, bool clearPreviousData = true);
-
597 void setStereoImage(const cv::Mat & left, const cv::Mat & right, const std::vector<StereoCameraModel> & stereoCameraModels, bool clearPreviousData = true);
-
598
-
604 void setLaserScan(const LaserScan & laserScan, bool clearPreviousData = true);
-
605
-
610 void setCameraModel(const CameraModel & model) {_cameraModels.clear(); _cameraModels.push_back(model);}
-
611
-
616 void setCameraModels(const std::vector<CameraModel> & models) {_cameraModels = models;}
-
617
-
622 void setStereoCameraModel(const StereoCameraModel & stereoCameraModel) {_stereoCameraModels.clear(); _stereoCameraModels.push_back(stereoCameraModel);}
-
623
-
628 void setStereoCameraModels(const std::vector<StereoCameraModel> & stereoCameraModels) {_stereoCameraModels = stereoCameraModels;}
-
629
-
639 cv::Mat depthRaw() const {return !(_depthOrRightRaw.type()==CV_8UC1 || _depthOrRightRaw.type()==CV_8UC3) ? _depthOrRightRaw : cv::Mat();}
-
640
-
650 cv::Mat rightRaw() const {return _depthOrRightRaw.type()==CV_8UC1 || _depthOrRightRaw.type()==CV_8UC3 ? _depthOrRightRaw : cv::Mat();}
-
651
-
652 // Use setRGBDImage() or setStereoImage() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
-
653 RTABMAP_DEPRECATED void setImageRaw(const cv::Mat & image);
-
654 // Use setRGBDImage() or setStereoImage() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
-
655 RTABMAP_DEPRECATED void setDepthOrRightRaw(const cv::Mat & image);
-
656 // Use setLaserScan() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
-
657 RTABMAP_DEPRECATED void setLaserScanRaw(const LaserScan & scan);
-
658 // Use setUserData() or removeRawData() instead.
-
659 RTABMAP_DEPRECATED void setUserDataRaw(const cv::Mat & data);
-
660
-
667 void uncompressData();
-
668
-
686 void uncompressData(
-
687 cv::Mat * imageRaw,
-
688 cv::Mat * depthOrRightRaw,
-
689 LaserScan * laserScanRaw = 0,
-
690 cv::Mat * userDataRaw = 0,
-
691 cv::Mat * groundCellsRaw = 0,
-
692 cv::Mat * obstacleCellsRaw = 0,
-
693 cv::Mat * emptyCellsRaw = 0,
-
694 cv::Mat * depthConfidenceRaw = 0);
-
695
-
710 void uncompressDataConst(
-
711 cv::Mat * imageRaw,
-
712 cv::Mat * depthOrRightRaw,
-
713 LaserScan * laserScanRaw = 0,
-
714 cv::Mat * userDataRaw = 0,
-
715 cv::Mat * groundCellsRaw = 0,
-
716 cv::Mat * obstacleCellsRaw = 0,
-
717 cv::Mat * emptyCellsRaw = 0,
-
718 cv::Mat * depthConfidenceRaw = 0) const;
-
719
-
724 const std::vector<CameraModel> & cameraModels() const {return _cameraModels;}
-
725
-
730 const std::vector<StereoCameraModel> & stereoCameraModels() const {return _stereoCameraModels;}
-
731
-
744 void setUserData(const cv::Mat & userData, bool clearPreviousData = true);
-
745 const cv::Mat & userDataRaw() const {return _userDataRaw;}
-
746 const cv::Mat & userDataCompressed() const {return _userDataCompressed;}
-
747
-
761 void setOccupancyGrid(
-
762 const cv::Mat & ground,
-
763 const cv::Mat & obstacles,
-
764 const cv::Mat & empty,
-
765 float cellSize,
-
766 const cv::Point3f & viewPoint);
-
771 const cv::Mat & gridGroundCellsRaw() const {return _groundCellsRaw;}
-
772
-
778 const cv::Mat & gridGroundCellsCompressed() const {return _groundCellsCompressed;}
-
779
-
784 const cv::Mat & gridObstacleCellsRaw() const {return _obstacleCellsRaw;}
-
785
-
791 const cv::Mat & gridObstacleCellsCompressed() const {return _obstacleCellsCompressed;}
-
792
-
797 const cv::Mat & gridEmptyCellsRaw() const {return _emptyCellsRaw;}
-
798
-
804 const cv::Mat & gridEmptyCellsCompressed() const {return _emptyCellsCompressed;}
-
805
-
810 float gridCellSize() const {return _cellSize;}
-
811
-
816 const cv::Point3f & gridViewPoint() const {return _viewPoint;}
-
817
-
828 void setFeatures(const std::vector<cv::KeyPoint> & keypoints, const std::vector<cv::Point3f> & keypoints3D, const cv::Mat & descriptors);
-
829
-
834 const std::vector<cv::KeyPoint> & keypoints() const {return _keypoints;}
-
835
-
840 const std::vector<cv::Point3f> & keypoints3D() const {return _keypoints3D;}
-
841
-
846 const cv::Mat & descriptors() const {return _descriptors;}
-
847
-
852 void addGlobalDescriptor(const GlobalDescriptor & descriptor) {_globalDescriptors.push_back(descriptor);}
-
853
-
858 void setGlobalDescriptors(const std::vector<GlobalDescriptor> & descriptors) {_globalDescriptors = descriptors;}
-
859
-
863 void clearGlobalDescriptors() {_globalDescriptors.clear();}
+
521
+
526 int id() const {return _id;}
+
527
+
532 void setId(int id) {_id = id;}
+
533
+
538 double stamp() const {return _stamp;}
+
539
+
544 void setStamp(double stamp) {_stamp = stamp;}
+
545
+
551 const cv::Mat & imageCompressed() const {return _imageCompressed;}
+
552
+
558 const cv::Mat & depthOrRightCompressed() const {return _depthOrRightCompressed;}
+
559
+
565 const cv::Mat & depthConfidenceCompressed() const {return _depthConfidenceCompressed;}
+
566
+
571 const LaserScan & laserScanCompressed() const {return _laserScanCompressed;}
+
572
+
577 const cv::Mat & imageRaw() const {return _imageRaw;}
+
578
+
584 const cv::Mat & depthOrRightRaw() const {return _depthOrRightRaw;}
+
585
+
590 const cv::Mat & depthConfidenceRaw() const {return _depthConfidenceRaw;}
+
591
+
596 const LaserScan & laserScanRaw() const {return _laserScanRaw;}
+
597
+
603 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const CameraModel & model, bool clearPreviousData = true);
+
604 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const cv::Mat & depth_confidence, const CameraModel & model, bool clearPreviousData = true);
+
605 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const std::vector<CameraModel> & models, bool clearPreviousData = true);
+
606 void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const cv::Mat & depth_confidence, const std::vector<CameraModel> & models, bool clearPreviousData = true);
+
607 void setStereoImage(const cv::Mat & left, const cv::Mat & right, const StereoCameraModel & stereoCameraModel, bool clearPreviousData = true);
+
608 void setStereoImage(const cv::Mat & left, const cv::Mat & right, const std::vector<StereoCameraModel> & stereoCameraModels, bool clearPreviousData = true);
+
609
+
615 void setLaserScan(const LaserScan & laserScan, bool clearPreviousData = true);
+
616
+
621 void setCameraModel(const CameraModel & model) {_cameraModels.clear(); _cameraModels.push_back(model);}
+
622
+
627 void setCameraModels(const std::vector<CameraModel> & models) {_cameraModels = models;}
+
628
+
633 void setStereoCameraModel(const StereoCameraModel & stereoCameraModel) {_stereoCameraModels.clear(); _stereoCameraModels.push_back(stereoCameraModel);}
+
634
+
639 void setStereoCameraModels(const std::vector<StereoCameraModel> & stereoCameraModels) {_stereoCameraModels = stereoCameraModels;}
+
640
+
650 cv::Mat depthRaw() const {return !(_depthOrRightRaw.type()==CV_8UC1 || _depthOrRightRaw.type()==CV_8UC3) ? _depthOrRightRaw : cv::Mat();}
+
651
+
661 cv::Mat rightRaw() const {return _depthOrRightRaw.type()==CV_8UC1 || _depthOrRightRaw.type()==CV_8UC3 ? _depthOrRightRaw : cv::Mat();}
+
662
+
663 // Use setRGBDImage() or setStereoImage() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
+
664 RTABMAP_DEPRECATED void setImageRaw(const cv::Mat & image);
+
665 // Use setRGBDImage() or setStereoImage() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
+
666 RTABMAP_DEPRECATED void setDepthOrRightRaw(const cv::Mat & image);
+
667 // Use setLaserScan() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
+
668 RTABMAP_DEPRECATED void setLaserScanRaw(const LaserScan & scan);
+
669 // Use setUserData() or removeRawData() instead.
+
670 RTABMAP_DEPRECATED void setUserDataRaw(const cv::Mat & data);
+
671
+
678 void uncompressData();
+
679
+
697 void uncompressData(
+
698 cv::Mat * imageRaw,
+
699 cv::Mat * depthOrRightRaw,
+
700 LaserScan * laserScanRaw = 0,
+
701 cv::Mat * userDataRaw = 0,
+
702 cv::Mat * groundCellsRaw = 0,
+
703 cv::Mat * obstacleCellsRaw = 0,
+
704 cv::Mat * emptyCellsRaw = 0,
+
705 cv::Mat * depthConfidenceRaw = 0);
+
706
+
721 void uncompressDataConst(
+
722 cv::Mat * imageRaw,
+
723 cv::Mat * depthOrRightRaw,
+
724 LaserScan * laserScanRaw = 0,
+
725 cv::Mat * userDataRaw = 0,
+
726 cv::Mat * groundCellsRaw = 0,
+
727 cv::Mat * obstacleCellsRaw = 0,
+
728 cv::Mat * emptyCellsRaw = 0,
+
729 cv::Mat * depthConfidenceRaw = 0) const;
+
730
+
735 const std::vector<CameraModel> & cameraModels() const {return _cameraModels;}
+
736
+
741 const std::vector<StereoCameraModel> & stereoCameraModels() const {return _stereoCameraModels;}
+
742
+
755 void setUserData(const cv::Mat & userData, bool clearPreviousData = true);
+
756 const cv::Mat & userDataRaw() const {return _userDataRaw;}
+
757 const cv::Mat & userDataCompressed() const {return _userDataCompressed;}
+
758
+
772 void setOccupancyGrid(
+
773 const cv::Mat & ground,
+
774 const cv::Mat & obstacles,
+
775 const cv::Mat & empty,
+
776 float cellSize,
+
777 const cv::Point3f & viewPoint);
+
782 const cv::Mat & gridGroundCellsRaw() const {return _groundCellsRaw;}
+
783
+
789 const cv::Mat & gridGroundCellsCompressed() const {return _groundCellsCompressed;}
+
790
+
795 const cv::Mat & gridObstacleCellsRaw() const {return _obstacleCellsRaw;}
+
796
+
802 const cv::Mat & gridObstacleCellsCompressed() const {return _obstacleCellsCompressed;}
+
803
+
808 const cv::Mat & gridEmptyCellsRaw() const {return _emptyCellsRaw;}
+
809
+
815 const cv::Mat & gridEmptyCellsCompressed() const {return _emptyCellsCompressed;}
+
816
+
821 float gridCellSize() const {return _cellSize;}
+
822
+
827 const cv::Point3f & gridViewPoint() const {return _viewPoint;}
+
828
+
839 void setFeatures(const std::vector<cv::KeyPoint> & keypoints, const std::vector<cv::Point3f> & keypoints3D, const cv::Mat & descriptors);
+
840
+
845 const std::vector<cv::KeyPoint> & keypoints() const {return _keypoints;}
+
846
+
851 const std::vector<cv::Point3f> & keypoints3D() const {return _keypoints3D;}
+
852
+
857 const cv::Mat & descriptors() const {return _descriptors;}
+
858
+
863 void addGlobalDescriptor(const GlobalDescriptor & descriptor) {_globalDescriptors.push_back(descriptor);}
864
-
869 const std::vector<GlobalDescriptor> & globalDescriptors() const {return _globalDescriptors;}
-
870
-
875 void setGroundTruth(const Transform & pose) {groundTruth_ = pose;}
-
876
-
881 const Transform & groundTruth() const {return groundTruth_;}
-
882
-
888 void setGlobalPose(const Transform & pose, const cv::Mat & covariance) {globalPose_ = pose; globalPoseCovariance_ = covariance;}
-
889
-
894 const Transform & globalPose() const {return globalPose_;}
-
895
-
900 const cv::Mat & globalPoseCovariance() const {return globalPoseCovariance_;}
-
901
-
906 void setGPS(const GPS & gps) {gps_ = gps;}
-
907
-
912 const GPS & gps() const {return gps_;}
-
913
-
920 void setIMU(const IMU & imu);
-
921
-
926 const IMU & imu() const {return imu_;}
-
927
-
932 void setEnvSensors(const EnvSensors & sensors) {_envSensors = sensors;}
-
933
-
938 void addEnvSensor(const EnvSensor & sensor) {_envSensors.insert(std::make_pair(sensor.type(), sensor));}
-
939
-
944 const EnvSensors & envSensors() const {return _envSensors;}
-
945
-
951 void setLandmarks(const Landmarks & landmarks) {_landmarks = landmarks;}
-
952
-
957 const Landmarks & landmarks() const {return _landmarks;}
-
958
-
967 unsigned long getMemoryUsed() const;
-
972 void clearCompressedData(bool images = true, bool scan = true, bool userData = true, bool occupancyGrid = true);
-
977 void clearRawData(bool images = true, bool scan = true, bool userData = true, bool occupancyGrid = true);
-
978
-
988 int isPointVisibleFromCameras(const cv::Point3f & pt) const;
+
869 void setGlobalDescriptors(const std::vector<GlobalDescriptor> & descriptors) {_globalDescriptors = descriptors;}
+
870
+
874 void clearGlobalDescriptors() {_globalDescriptors.clear();}
+
875
+
880 const std::vector<GlobalDescriptor> & globalDescriptors() const {return _globalDescriptors;}
+
881
+
886 void setGroundTruth(const Transform & pose) {groundTruth_ = pose;}
+
887
+
892 const Transform & groundTruth() const {return groundTruth_;}
+
893
+
899 void setGlobalPose(const Transform & pose, const cv::Mat & covariance) {globalPose_ = pose; globalPoseCovariance_ = covariance;}
+
900
+
905 const Transform & globalPose() const {return globalPose_;}
+
906
+
911 const cv::Mat & globalPoseCovariance() const {return globalPoseCovariance_;}
+
912
+
917 void setGPS(const GPS & gps) {gps_ = gps;}
+
918
+
923 const GPS & gps() const {return gps_;}
+
924
+
931 void setIMU(const IMU & imu);
+
932
+
937 const IMU & imu() const {return imu_;}
+
938
+
943 void setEnvSensors(const EnvSensors & sensors) {_envSensors = sensors;}
+
944
+
949 void addEnvSensor(const EnvSensor & sensor) {_envSensors.insert(std::make_pair(sensor.type(), sensor));}
+
950
+
955 const EnvSensors & envSensors() const {return _envSensors;}
+
956
+
962 void setLandmarks(const Landmarks & landmarks) {_landmarks = landmarks;}
+
963
+
968 const Landmarks & landmarks() const {return _landmarks;}
+
969
+
978 unsigned long getMemoryUsed() const;
+
983 void clearCompressedData(bool images = true, bool scan = true, bool userData = true, bool occupancyGrid = true);
+
988 void clearRawData(bool images = true, bool scan = true, bool userData = true, bool occupancyGrid = true);
989
-
990#ifdef HAVE_OPENCV_CUDEV
-
995 const cv::cuda::GpuMat & imageRawGpu() const {return _imageRawGpu;}
-
996
-
1001 void setImageRawGpu(const cv::cuda::GpuMat & image) {_imageRawGpu = image;}
-
1002
-
1007 const cv::cuda::GpuMat & depthOrRightRawGpu() const {return _depthOrRightRawGpu;}
-
1008
-
1013 void setDepthOrRightRawGpu(const cv::cuda::GpuMat & image) {_depthOrRightRawGpu = image;}
-
1014#endif
-
1015
-
1016private:
-
1017 int _id;
-
1018 double _stamp;
-
1019
-
1020 // Compressed data
-
1021 cv::Mat _imageCompressed;
-
1022 cv::Mat _depthOrRightCompressed;
-
1023 cv::Mat _depthConfidenceCompressed;
-
1024 LaserScan _laserScanCompressed;
-
1025
-
1026 // Raw data
-
1027 cv::Mat _imageRaw;
-
1028 cv::Mat _depthOrRightRaw;
-
1029 cv::Mat _depthConfidenceRaw;
-
1030 LaserScan _laserScanRaw;
-
1031
-
1032 // Camera models
-
1033 std::vector<CameraModel> _cameraModels;
-
1034 std::vector<StereoCameraModel> _stereoCameraModels;
-
1035
-
1036 // User data
-
1037 cv::Mat _userDataCompressed;
-
1038 cv::Mat _userDataRaw;
-
1039
-
1040 // Occupancy grid
-
1041 cv::Mat _groundCellsCompressed;
-
1042 cv::Mat _obstacleCellsCompressed;
-
1043 cv::Mat _emptyCellsCompressed;
-
1044 cv::Mat _groundCellsRaw;
-
1045 cv::Mat _obstacleCellsRaw;
-
1046 cv::Mat _emptyCellsRaw;
-
1047 float _cellSize;
-
1048 cv::Point3f _viewPoint;
-
1049
-
1050 // Environmental sensors
-
1051 EnvSensors _envSensors;
-
1052
-
1053 // Landmarks
-
1054 Landmarks _landmarks;
-
1055
-
1056 // Visual features
-
1057 std::vector<cv::KeyPoint> _keypoints;
-
1058 std::vector<cv::Point3f> _keypoints3D;
-
1059 cv::Mat _descriptors;
+
999 int isPointVisibleFromCameras(const cv::Point3f & pt) const;
+
1000
+
1001#ifdef HAVE_OPENCV_CUDEV
+
1006 const cv::cuda::GpuMat & imageRawGpu() const {return _imageRawGpu;}
+
1007
+
1012 void setImageRawGpu(const cv::cuda::GpuMat & image) {_imageRawGpu = image;}
+
1013
+
1018 const cv::cuda::GpuMat & depthOrRightRawGpu() const {return _depthOrRightRawGpu;}
+
1019
+
1024 void setDepthOrRightRawGpu(const cv::cuda::GpuMat & image) {_depthOrRightRawGpu = image;}
+
1025#endif
+
1026
+
1027private:
+
1028 int _id;
+
1029 double _stamp;
+
1030
+
1031 // Compressed data
+
1032 cv::Mat _imageCompressed;
+
1033 cv::Mat _depthOrRightCompressed;
+
1034 cv::Mat _depthConfidenceCompressed;
+
1035 LaserScan _laserScanCompressed;
+
1036
+
1037 // Raw data
+
1038 cv::Mat _imageRaw;
+
1039 cv::Mat _depthOrRightRaw;
+
1040 cv::Mat _depthConfidenceRaw;
+
1041 LaserScan _laserScanRaw;
+
1042
+
1043 // Camera models
+
1044 std::vector<CameraModel> _cameraModels;
+
1045 std::vector<StereoCameraModel> _stereoCameraModels;
+
1046
+
1047 // User data
+
1048 cv::Mat _userDataCompressed;
+
1049 cv::Mat _userDataRaw;
+
1050
+
1051 // Occupancy grid
+
1052 cv::Mat _groundCellsCompressed;
+
1053 cv::Mat _obstacleCellsCompressed;
+
1054 cv::Mat _emptyCellsCompressed;
+
1055 cv::Mat _groundCellsRaw;
+
1056 cv::Mat _obstacleCellsRaw;
+
1057 cv::Mat _emptyCellsRaw;
+
1058 float _cellSize;
+
1059 cv::Point3f _viewPoint;
1060
-
1061 // Global descriptors
-
1062 std::vector<GlobalDescriptor> _globalDescriptors;
+
1061 // Environmental sensors
+
1062 EnvSensors _envSensors;
1063
-
1064 // Poses
-
1065 Transform groundTruth_;
-
1066 Transform globalPose_;
-
1067 cv::Mat globalPoseCovariance_;
-
1068
-
1069 // Sensor fusion
-
1070 GPS gps_;
-
1071 IMU imu_;
-
1072
-
1073#ifdef HAVE_OPENCV_CUDEV
-
1080 cv::cuda::GpuMat _imageRawGpu;
-
1081 cv::cuda::GpuMat _depthOrRightRawGpu;
-
1082#endif
-
1083};
+
1064 // Landmarks
+
1065 Landmarks _landmarks;
+
1066
+
1067 // Visual features
+
1068 std::vector<cv::KeyPoint> _keypoints;
+
1069 std::vector<cv::Point3f> _keypoints3D;
+
1070 cv::Mat _descriptors;
+
1071
+
1072 // Global descriptors
+
1073 std::vector<GlobalDescriptor> _globalDescriptors;
+
1074
+
1075 // Poses
+
1076 Transform groundTruth_;
+
1077 Transform globalPose_;
+
1078 cv::Mat globalPoseCovariance_;
+
1079
+
1080 // Sensor fusion
+
1081 GPS gps_;
+
1082 IMU imu_;
+
1083
+
1084#ifdef HAVE_OPENCV_CUDEV
+
1091 cv::cuda::GpuMat _imageRawGpu;
+
1092 cv::cuda::GpuMat _depthOrRightRawGpu;
+
1093#endif
+
1094};
-
1084
-
1085}
-
1086
-
1087
-
1088#endif /* SENSORDATA_H_ */
+
1095
+
1096}
+
1097
+
1098
+
1099#endif /* SENSORDATA_H_ */
rtabmap::CameraModel
Represents a pinhole camera model containing intrinsic and extrinsic parameters, used for projection,...
Definition CameraModel.h:53
rtabmap::EnvSensor
Single environmental measurement (type, value, timestamp).
Definition EnvSensor.h:51
rtabmap::EnvSensor::type
const Type & type() const
Definition EnvSensor.h:101
@@ -558,85 +563,85 @@ $(document).ready(function(){initNavTree('SensorData_8h_source.html',''); initRe
rtabmap::IMU
Inertial measurement sample (ROS sensor_msgs/Imu-like fields).
Definition IMU.h:57
rtabmap::LaserScan
Represents 2D or 3D laser scan data with support for multiple point data formats.
Definition LaserScan.h:46
rtabmap::SensorData
Container class for all sensor data captured at a specific time.
Definition SensorData.h:97
-
rtabmap::SensorData::imu
const IMU & imu() const
Returns IMU data.
Definition SensorData.h:926
-
rtabmap::SensorData::depthConfidenceRaw
const cv::Mat & depthConfidenceRaw() const
Returns the raw depth confidence map.
Definition SensorData.h:579
-
rtabmap::SensorData::gridObstacleCellsRaw
const cv::Mat & gridObstacleCellsRaw() const
Returns raw obstacle cells.
Definition SensorData.h:784
-
rtabmap::SensorData::addEnvSensor
void addEnvSensor(const EnvSensor &sensor)
Adds a single environmental sensor.
Definition SensorData.h:938
+
rtabmap::SensorData::imu
const IMU & imu() const
Returns IMU data.
Definition SensorData.h:937
+
rtabmap::SensorData::depthConfidenceRaw
const cv::Mat & depthConfidenceRaw() const
Returns the raw depth confidence map.
Definition SensorData.h:590
+
rtabmap::SensorData::gridObstacleCellsRaw
const cv::Mat & gridObstacleCellsRaw() const
Returns raw obstacle cells.
Definition SensorData.h:795
+
rtabmap::SensorData::addEnvSensor
void addEnvSensor(const EnvSensor &sensor)
Adds a single environmental sensor.
Definition SensorData.h:949
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &image, const CameraModel &cameraModel, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Mono camera constructor.
-
rtabmap::SensorData::laserScanCompressed
const LaserScan & laserScanCompressed() const
Returns the compressed laser scan.
Definition SensorData.h:560
+
rtabmap::SensorData::laserScanCompressed
const LaserScan & laserScanCompressed() const
Returns the compressed laser scan.
Definition SensorData.h:571
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &left, const cv::Mat &right, const StereoCameraModel &cameraModel, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Stereo camera constructor.
-
rtabmap::SensorData::gps
const GPS & gps() const
Returns GPS data.
Definition SensorData.h:912
-
rtabmap::SensorData::depthRaw
cv::Mat depthRaw() const
Returns the depth image (convenience method)
Definition SensorData.h:639
+
rtabmap::SensorData::gps
const GPS & gps() const
Returns GPS data.
Definition SensorData.h:923
+
rtabmap::SensorData::depthRaw
cv::Mat depthRaw() const
Returns the depth image (convenience method)
Definition SensorData.h:650
rtabmap::SensorData::setRGBDImage
void setRGBDImage(const cv::Mat &rgb, const cv::Mat &depth, const CameraModel &model, bool clearPreviousData=true)
rtabmap::SensorData::setIMU
void setIMU(const IMU &imu)
Sets IMU data.
-
rtabmap::SensorData::depthOrRightRaw
const cv::Mat & depthOrRightRaw() const
Returns the raw depth or right stereo image.
Definition SensorData.h:573
+
rtabmap::SensorData::depthOrRightRaw
const cv::Mat & depthOrRightRaw() const
Returns the raw depth or right stereo image.
Definition SensorData.h:584
rtabmap::SensorData::SensorData
SensorData(const IMU &imu, int id=0, double stamp=0.0)
IMU-only constructor.
-
rtabmap::SensorData::gridGroundCellsRaw
const cv::Mat & gridGroundCellsRaw() const
Returns raw ground cells.
Definition SensorData.h:771
+
rtabmap::SensorData::gridGroundCellsRaw
const cv::Mat & gridGroundCellsRaw() const
Returns raw ground cells.
Definition SensorData.h:782
rtabmap::SensorData::uncompressDataConst
void uncompressDataConst(cv::Mat *imageRaw, cv::Mat *depthOrRightRaw, LaserScan *laserScanRaw=0, cv::Mat *userDataRaw=0, cv::Mat *groundCellsRaw=0, cv::Mat *obstacleCellsRaw=0, cv::Mat *emptyCellsRaw=0, cv::Mat *depthConfidenceRaw=0) const
Uncompresses compressed data into provided output buffers (const version)
rtabmap::SensorData::isPointVisibleFromCameras
int isPointVisibleFromCameras(const cv::Point3f &pt) const
Checks if a 3D point is visible from any camera.
rtabmap::SensorData::clearCompressedData
void clearCompressedData(bool images=true, bool scan=true, bool userData=true, bool occupancyGrid=true)
-
rtabmap::SensorData::clearGlobalDescriptors
void clearGlobalDescriptors()
Clears all global descriptors.
Definition SensorData.h:863
-
rtabmap::SensorData::gridEmptyCellsRaw
const cv::Mat & gridEmptyCellsRaw() const
Returns raw empty cells.
Definition SensorData.h:797
-
rtabmap::SensorData::envSensors
const EnvSensors & envSensors() const
Returns all environmental sensors.
Definition SensorData.h:944
-
rtabmap::SensorData::setId
void setId(int id)
Sets the sensor data ID.
Definition SensorData.h:521
-
rtabmap::SensorData::gridObstacleCellsCompressed
const cv::Mat & gridObstacleCellsCompressed() const
Returns compressed obstacle cells.
Definition SensorData.h:791
-
rtabmap::SensorData::gridViewPoint
const cv::Point3f & gridViewPoint() const
Returns the occupancy grid viewpoint.
Definition SensorData.h:816
+
rtabmap::SensorData::clearGlobalDescriptors
void clearGlobalDescriptors()
Clears all global descriptors.
Definition SensorData.h:874
+
rtabmap::SensorData::gridEmptyCellsRaw
const cv::Mat & gridEmptyCellsRaw() const
Returns raw empty cells.
Definition SensorData.h:808
+
rtabmap::SensorData::envSensors
const EnvSensors & envSensors() const
Returns all environmental sensors.
Definition SensorData.h:955
+
rtabmap::SensorData::setId
void setId(int id)
Sets the sensor data ID.
Definition SensorData.h:532
+
rtabmap::SensorData::gridObstacleCellsCompressed
const cv::Mat & gridObstacleCellsCompressed() const
Returns compressed obstacle cells.
Definition SensorData.h:802
+
rtabmap::SensorData::gridViewPoint
const cv::Point3f & gridViewPoint() const
Returns the occupancy grid viewpoint.
Definition SensorData.h:827
rtabmap::SensorData::SensorData
SensorData(const LaserScan &laserScan, const cv::Mat &rgb, const cv::Mat &depth, const cv::Mat &depthConfidence, const CameraModel &cameraModel, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
RGB-D constructor with depth confidence and laser scan.
rtabmap::SensorData::clearRawData
void clearRawData(bool images=true, bool scan=true, bool userData=true, bool occupancyGrid=true)
-
rtabmap::SensorData::globalPose
const Transform & globalPose() const
Returns the global pose.
Definition SensorData.h:894
-
rtabmap::SensorData::stamp
double stamp() const
Returns the timestamp.
Definition SensorData.h:527
-
rtabmap::SensorData::globalPoseCovariance
const cv::Mat & globalPoseCovariance() const
Returns the global pose covariance.
Definition SensorData.h:900
-
rtabmap::SensorData::setStamp
void setStamp(double stamp)
Sets the timestamp.
Definition SensorData.h:533
+
rtabmap::SensorData::globalPose
const Transform & globalPose() const
Returns the global pose.
Definition SensorData.h:905
+
rtabmap::SensorData::stamp
double stamp() const
Returns the timestamp.
Definition SensorData.h:538
+
rtabmap::SensorData::globalPoseCovariance
const cv::Mat & globalPoseCovariance() const
Returns the global pose covariance.
Definition SensorData.h:911
+
rtabmap::SensorData::setStamp
void setStamp(double stamp)
Sets the timestamp.
Definition SensorData.h:544
rtabmap::SensorData::setOccupancyGrid
void setOccupancyGrid(const cv::Mat &ground, const cv::Mat &obstacles, const cv::Mat &empty, float cellSize, const cv::Point3f &viewPoint)
Sets occupancy grid data.
-
rtabmap::SensorData::descriptors
const cv::Mat & descriptors() const
Returns the feature descriptors.
Definition SensorData.h:846
+
rtabmap::SensorData::descriptors
const cv::Mat & descriptors() const
Returns the feature descriptors.
Definition SensorData.h:857
rtabmap::SensorData::getMemoryUsed
unsigned long getMemoryUsed() const
Computes the memory usage of this sensor data.
-
rtabmap::SensorData::cameraModels
const std::vector< CameraModel > & cameraModels() const
Returns the camera models.
Definition SensorData.h:724
+
rtabmap::SensorData::cameraModels
const std::vector< CameraModel > & cameraModels() const
Returns the camera models.
Definition SensorData.h:735
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &rgb, const cv::Mat &depth, const std::vector< StereoCameraModel > &cameraModels, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Multi-camera stereo constructor.
-
rtabmap::SensorData::setGroundTruth
void setGroundTruth(const Transform &pose)
Sets the ground truth pose.
Definition SensorData.h:875
+
rtabmap::SensorData::setGroundTruth
void setGroundTruth(const Transform &pose)
Sets the ground truth pose.
Definition SensorData.h:886
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &rgb, const cv::Mat &depth, const cv::Mat &depthConfidence, const std::vector< CameraModel > &cameraModels, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Multi-camera RGB-D constructor with depth confidence.
-
rtabmap::SensorData::setGlobalPose
void setGlobalPose(const Transform &pose, const cv::Mat &covariance)
Sets the global pose with covariance.
Definition SensorData.h:888
-
rtabmap::SensorData::landmarks
const Landmarks & landmarks() const
Returns landmarks.
Definition SensorData.h:957
-
rtabmap::SensorData::id
int id() const
Returns the sensor data ID.
Definition SensorData.h:515
-
rtabmap::SensorData::depthOrRightCompressed
const cv::Mat & depthOrRightCompressed() const
Returns the compressed depth or right stereo image.
Definition SensorData.h:547
+
rtabmap::SensorData::setGlobalPose
void setGlobalPose(const Transform &pose, const cv::Mat &covariance)
Sets the global pose with covariance.
Definition SensorData.h:899
+
rtabmap::SensorData::landmarks
const Landmarks & landmarks() const
Returns landmarks.
Definition SensorData.h:968
+
rtabmap::SensorData::id
int id() const
Returns the sensor data ID.
Definition SensorData.h:526
+
rtabmap::SensorData::depthOrRightCompressed
const cv::Mat & depthOrRightCompressed() const
Returns the compressed depth or right stereo image.
Definition SensorData.h:558
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &rgb, const cv::Mat &depth, const cv::Mat &depth_confidence, const CameraModel &cameraModel, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
RGB-D constructor with depth confidence.
rtabmap::SensorData::uncompressData
void uncompressData(cv::Mat *imageRaw, cv::Mat *depthOrRightRaw, LaserScan *laserScanRaw=0, cv::Mat *userDataRaw=0, cv::Mat *groundCellsRaw=0, cv::Mat *obstacleCellsRaw=0, cv::Mat *emptyCellsRaw=0, cv::Mat *depthConfidenceRaw=0)
Uncompresses compressed data into provided output buffers.
rtabmap::SensorData::setLaserScan
void setLaserScan(const LaserScan &laserScan, bool clearPreviousData=true)
rtabmap::SensorData::SensorData
SensorData()
Default constructor.
rtabmap::SensorData::~SensorData
virtual ~SensorData()
Virtual destructor.
-
rtabmap::SensorData::gridCellSize
float gridCellSize() const
Returns the occupancy grid cell size.
Definition SensorData.h:810
+
rtabmap::SensorData::gridCellSize
float gridCellSize() const
Returns the occupancy grid cell size.
Definition SensorData.h:821
rtabmap::SensorData::uncompressData
void uncompressData()
Uncompresses all compressed data in-place.
-
rtabmap::SensorData::rightRaw
cv::Mat rightRaw() const
Returns the right stereo image (convenience method)
Definition SensorData.h:650
-
rtabmap::SensorData::imageCompressed
const cv::Mat & imageCompressed() const
Returns the compressed RGB/grayscale image.
Definition SensorData.h:540
-
rtabmap::SensorData::stereoCameraModels
const std::vector< StereoCameraModel > & stereoCameraModels() const
Returns the stereo camera models.
Definition SensorData.h:730
-
rtabmap::SensorData::keypoints3D
const std::vector< cv::Point3f > & keypoints3D() const
Returns the 3D keypoints.
Definition SensorData.h:840
-
rtabmap::SensorData::setStereoCameraModel
void setStereoCameraModel(const StereoCameraModel &stereoCameraModel)
Sets a single stereo camera model (clears previous models)
Definition SensorData.h:622
-
rtabmap::SensorData::setEnvSensors
void setEnvSensors(const EnvSensors &sensors)
Sets all environmental sensors.
Definition SensorData.h:932
-
rtabmap::SensorData::gridGroundCellsCompressed
const cv::Mat & gridGroundCellsCompressed() const
Returns compressed ground cells.
Definition SensorData.h:778
-
rtabmap::SensorData::setStereoCameraModels
void setStereoCameraModels(const std::vector< StereoCameraModel > &stereoCameraModels)
Sets multiple stereo camera models.
Definition SensorData.h:628
+
rtabmap::SensorData::rightRaw
cv::Mat rightRaw() const
Returns the right stereo image (convenience method)
Definition SensorData.h:661
+
rtabmap::SensorData::imageCompressed
const cv::Mat & imageCompressed() const
Returns the compressed RGB/grayscale image.
Definition SensorData.h:551
+
rtabmap::SensorData::stereoCameraModels
const std::vector< StereoCameraModel > & stereoCameraModels() const
Returns the stereo camera models.
Definition SensorData.h:741
+
rtabmap::SensorData::keypoints3D
const std::vector< cv::Point3f > & keypoints3D() const
Returns the 3D keypoints.
Definition SensorData.h:851
+
rtabmap::SensorData::setStereoCameraModel
void setStereoCameraModel(const StereoCameraModel &stereoCameraModel)
Sets a single stereo camera model (clears previous models)
Definition SensorData.h:633
+
rtabmap::SensorData::setEnvSensors
void setEnvSensors(const EnvSensors &sensors)
Sets all environmental sensors.
Definition SensorData.h:943
+
rtabmap::SensorData::gridGroundCellsCompressed
const cv::Mat & gridGroundCellsCompressed() const
Returns compressed ground cells.
Definition SensorData.h:789
+
rtabmap::SensorData::setStereoCameraModels
void setStereoCameraModels(const std::vector< StereoCameraModel > &stereoCameraModels)
Sets multiple stereo camera models.
Definition SensorData.h:639
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &image, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Appearance-only constructor.
-
rtabmap::SensorData::setGlobalDescriptors
void setGlobalDescriptors(const std::vector< GlobalDescriptor > &descriptors)
Sets all global descriptors.
Definition SensorData.h:858
+
rtabmap::SensorData::setGlobalDescriptors
void setGlobalDescriptors(const std::vector< GlobalDescriptor > &descriptors)
Sets all global descriptors.
Definition SensorData.h:869
rtabmap::SensorData::SensorData
SensorData(const LaserScan &laserScan, const cv::Mat &left, const cv::Mat &right, const StereoCameraModel &cameraModel, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Stereo camera constructor with laser scan.
rtabmap::SensorData::SensorData
SensorData(const LaserScan &laserScan, const cv::Mat &rgb, const cv::Mat &depth, const CameraModel &cameraModel, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
RGB-D constructor with laser scan.
-
rtabmap::SensorData::gridEmptyCellsCompressed
const cv::Mat & gridEmptyCellsCompressed() const
Returns compressed empty cells.
Definition SensorData.h:804
-
rtabmap::SensorData::addGlobalDescriptor
void addGlobalDescriptor(const GlobalDescriptor &descriptor)
Adds a global descriptor.
Definition SensorData.h:852
+
rtabmap::SensorData::gridEmptyCellsCompressed
const cv::Mat & gridEmptyCellsCompressed() const
Returns compressed empty cells.
Definition SensorData.h:815
+
rtabmap::SensorData::addGlobalDescriptor
void addGlobalDescriptor(const GlobalDescriptor &descriptor)
Adds a global descriptor.
Definition SensorData.h:863
rtabmap::SensorData::setUserData
void setUserData(const cv::Mat &userData, bool clearPreviousData=true)
-
rtabmap::SensorData::globalDescriptors
const std::vector< GlobalDescriptor > & globalDescriptors() const
Returns all global descriptors.
Definition SensorData.h:869
+
rtabmap::SensorData::globalDescriptors
const std::vector< GlobalDescriptor > & globalDescriptors() const
Returns all global descriptors.
Definition SensorData.h:880
rtabmap::SensorData::setFeatures
void setFeatures(const std::vector< cv::KeyPoint > &keypoints, const std::vector< cv::Point3f > &keypoints3D, const cv::Mat &descriptors)
Sets visual features (keypoints, 3D points, descriptors)
-
rtabmap::SensorData::setGPS
void setGPS(const GPS &gps)
Sets GPS data.
Definition SensorData.h:906
+
rtabmap::SensorData::setGPS
void setGPS(const GPS &gps)
Sets GPS data.
Definition SensorData.h:917
rtabmap::SensorData::SensorData
SensorData(const LaserScan &laserScan, const cv::Mat &rgb, const cv::Mat &depth, const std::vector< StereoCameraModel > &cameraModels, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Multi-camera stereo constructor with laser scan.
-
rtabmap::SensorData::isValid
bool isValid() const
Checks if the sensor data is valid.
Definition SensorData.h:485
-
rtabmap::SensorData::setCameraModel
void setCameraModel(const CameraModel &model)
Sets a single camera model (clears previous models)
Definition SensorData.h:610
+
rtabmap::SensorData::isValid
bool isValid() const
Checks if the sensor data is valid.
Definition SensorData.h:491
+
rtabmap::SensorData::setCameraModel
void setCameraModel(const CameraModel &model)
Sets a single camera model (clears previous models)
Definition SensorData.h:621
rtabmap::SensorData::SensorData
SensorData(const LaserScan &laserScan, const cv::Mat &rgb, const cv::Mat &depth, const std::vector< CameraModel > &cameraModels, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Multi-camera RGB-D constructor with laser scan.
rtabmap::SensorData::SensorData
SensorData(const LaserScan &laserScan, const cv::Mat &rgb, const cv::Mat &depth, const cv::Mat &depthConfidence, const std::vector< CameraModel > &cameraModels, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Multi-camera RGB-D constructor with depth confidence and laser scan.
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &rgb, const cv::Mat &depth, const std::vector< CameraModel > &cameraModels, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
Multi-camera RGB-D constructor.
-
rtabmap::SensorData::imageRaw
const cv::Mat & imageRaw() const
Returns the raw RGB/grayscale image.
Definition SensorData.h:566
+
rtabmap::SensorData::imageRaw
const cv::Mat & imageRaw() const
Returns the raw RGB/grayscale image.
Definition SensorData.h:577
rtabmap::SensorData::SensorData
SensorData(const cv::Mat &rgb, const cv::Mat &depth, const CameraModel &cameraModel, int id=0, double stamp=0.0, const cv::Mat &userData=cv::Mat())
RGB-D constructor.
-
rtabmap::SensorData::depthConfidenceCompressed
const cv::Mat & depthConfidenceCompressed() const
Returns the compressed depth confidence map.
Definition SensorData.h:554
-
rtabmap::SensorData::laserScanRaw
const LaserScan & laserScanRaw() const
Returns the raw laser scan.
Definition SensorData.h:585
-
rtabmap::SensorData::groundTruth
const Transform & groundTruth() const
Returns the ground truth pose.
Definition SensorData.h:881
-
rtabmap::SensorData::setLandmarks
void setLandmarks(const Landmarks &landmarks)
Sets landmarks.
Definition SensorData.h:951
-
rtabmap::SensorData::setCameraModels
void setCameraModels(const std::vector< CameraModel > &models)
Sets multiple camera models.
Definition SensorData.h:616
-
rtabmap::SensorData::keypoints
const std::vector< cv::KeyPoint > & keypoints() const
Returns the 2D keypoints.
Definition SensorData.h:834
+
rtabmap::SensorData::depthConfidenceCompressed
const cv::Mat & depthConfidenceCompressed() const
Returns the compressed depth confidence map.
Definition SensorData.h:565
+
rtabmap::SensorData::laserScanRaw
const LaserScan & laserScanRaw() const
Returns the raw laser scan.
Definition SensorData.h:596
+
rtabmap::SensorData::groundTruth
const Transform & groundTruth() const
Returns the ground truth pose.
Definition SensorData.h:892
+
rtabmap::SensorData::setLandmarks
void setLandmarks(const Landmarks &landmarks)
Sets landmarks.
Definition SensorData.h:962
+
rtabmap::SensorData::setCameraModels
void setCameraModels(const std::vector< CameraModel > &models)
Sets multiple camera models.
Definition SensorData.h:627
+
rtabmap::SensorData::keypoints
const std::vector< cv::KeyPoint > & keypoints() const
Returns the 2D keypoints.
Definition SensorData.h:845
rtabmap::StereoCameraModel
A class representing a calibrated stereo camera system.
Definition StereoCameraModel.h:54
rtabmap::Transform
Represents a 3D rigid body transformation (rotation + translation).
Definition Transform.h:53
rtabmap
Definition BayesFilter.h:42
diff --git a/api/latest/classrtabmap_1_1SensorData.html b/api/latest/classrtabmap_1_1SensorData.html index aafadaf9..8e387c26 100644 --- a/api/latest/classrtabmap_1_1SensorData.html +++ b/api/latest/classrtabmap_1_1SensorData.html @@ -944,10 +944,10 @@ The class manages memory efficiently by storing either raw or compressed data (o
SensorData stitchedData(stitchedRgb, stitchedDepth, models, 0, data1.stamp());
rtabmap::Camera
Definition Camera.h:44
rtabmap::SensorData
Container class for all sensor data captured at a specific time.
Definition SensorData.h:97
-
rtabmap::SensorData::depthOrRightRaw
const cv::Mat & depthOrRightRaw() const
Returns the raw depth or right stereo image.
Definition SensorData.h:573
-
rtabmap::SensorData::stamp
double stamp() const
Returns the timestamp.
Definition SensorData.h:527
-
rtabmap::SensorData::cameraModels
const std::vector< CameraModel > & cameraModels() const
Returns the camera models.
Definition SensorData.h:724
-
rtabmap::SensorData::imageRaw
const cv::Mat & imageRaw() const
Returns the raw RGB/grayscale image.
Definition SensorData.h:566
+
rtabmap::SensorData::depthOrRightRaw
const cv::Mat & depthOrRightRaw() const
Returns the raw depth or right stereo image.
Definition SensorData.h:584
+
rtabmap::SensorData::stamp
double stamp() const
Returns the timestamp.
Definition SensorData.h:538
+
rtabmap::SensorData::cameraModels
const std::vector< CameraModel > & cameraModels() const
Returns the camera models.
Definition SensorData.h:735
+
rtabmap::SensorData::imageRaw
const cv::Mat & imageRaw() const
Returns the raw RGB/grayscale image.
Definition SensorData.h:577
@@ -1531,19 +1531,21 @@ The class manages memory efficiently by storing either raw or compressed data (o

Checks if the sensor data is valid.

Returns true if the sensor data contains at least one of:

+
Note
The stamp is not considered: a SensorData with only a stamp set is not valid (e.g., an empty message converted from ROS still has its header stamp and a camera model created from an empty camera info).
Returns
True if the sensor data contains any valid information, false otherwise
-

Definition at line 485 of file SensorData.h.

+

Definition at line 491 of file SensorData.h.

@@ -1573,7 +1575,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the sensor data ID.

Returns
The unique sensor data ID (0 if invalid/uninitialized)
-

Definition at line 515 of file SensorData.h.

+

Definition at line 526 of file SensorData.h.

@@ -1609,7 +1611,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 521 of file SensorData.h.

+

Definition at line 532 of file SensorData.h.

@@ -1639,7 +1641,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the timestamp.

Returns
Timestamp in seconds (typically seconds since epoch)
-

Definition at line 527 of file SensorData.h.

+

Definition at line 538 of file SensorData.h.

@@ -1675,7 +1677,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 533 of file SensorData.h.

+

Definition at line 544 of file SensorData.h.

@@ -1706,7 +1708,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
Returns
Compressed image (CV_8UC1 with 1 row, JPEG/PNG-compressed bytes)
Note
Use Compression::uncompressImage() to uncompress the image.
-

Definition at line 540 of file SensorData.h.

+

Definition at line 551 of file SensorData.h.

@@ -1737,7 +1739,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
Returns
Compressed depth/right image (CV_8UC1 with 1 row, compressed bytes)
Note
Use Compression::uncompressImage() to uncompress the image.
-

Definition at line 547 of file SensorData.h.

+

Definition at line 558 of file SensorData.h.

@@ -1768,7 +1770,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
Returns
Compressed depth confidence (CV_8UC1 with 1 row, compressed bytes)
Note
Use Compression::uncompressData() to uncompress the data.
-

Definition at line 554 of file SensorData.h.

+

Definition at line 565 of file SensorData.h.

@@ -1798,7 +1800,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the compressed laser scan.

Returns
Compressed laser scan
-

Definition at line 560 of file SensorData.h.

+

Definition at line 571 of file SensorData.h.

@@ -1828,7 +1830,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the raw RGB/grayscale image.

Returns
Raw image (CV_8UC1 for grayscale or CV_8UC3 for RGB)
-

Definition at line 566 of file SensorData.h.

+

Definition at line 577 of file SensorData.h.

@@ -1858,7 +1860,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the raw depth or right stereo image.

Returns
Raw depth (CV_16UC1 for millimeters or CV_32FC1 for meters) or right stereo image (CV_8UC1 or CV_8UC3)
-

Definition at line 573 of file SensorData.h.

+

Definition at line 584 of file SensorData.h.

@@ -1888,7 +1890,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the raw depth confidence map.

Returns
Raw depth confidence (CV_8UC1, typically 0-100)
-

Definition at line 579 of file SensorData.h.

+

Definition at line 590 of file SensorData.h.

@@ -1918,7 +1920,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the raw laser scan.

Returns
Raw laser scan (2D or 3D)
-

Definition at line 585 of file SensorData.h.

+

Definition at line 596 of file SensorData.h.

@@ -2034,7 +2036,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 610 of file SensorData.h.

+

Definition at line 621 of file SensorData.h.

@@ -2070,7 +2072,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 616 of file SensorData.h.

+

Definition at line 627 of file SensorData.h.

@@ -2106,7 +2108,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 622 of file SensorData.h.

+

Definition at line 633 of file SensorData.h.

@@ -2142,7 +2144,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 628 of file SensorData.h.

+

Definition at line 639 of file SensorData.h.

@@ -2173,7 +2175,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the depth image if _depthOrRightRaw contains depth data (not a right stereo image). Depth images are CV_16UC1 or CV_32FC1, while right stereo images are CV_8UC1 or CV_8UC3.

Returns
Depth image if available, empty Mat if right stereo image or empty
-

Definition at line 639 of file SensorData.h.

+

Definition at line 650 of file SensorData.h.

@@ -2204,7 +2206,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the right stereo image if _depthOrRightRaw contains stereo data (not a depth image). Right stereo images are CV_8UC1 or CV_8UC3, while depth images are CV_16UC1 or CV_32FC1.

Returns
Right stereo image if available, empty Mat if depth image or empty
-

Definition at line 650 of file SensorData.h.

+

Definition at line 661 of file SensorData.h.

@@ -2414,7 +2416,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the camera models.

Returns
Const reference to vector of mono camera models
-

Definition at line 724 of file SensorData.h.

+

Definition at line 735 of file SensorData.h.

@@ -2444,7 +2446,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the stereo camera models.

Returns
Const reference to vector of stereo camera models
-

Definition at line 730 of file SensorData.h.

+

Definition at line 741 of file SensorData.h.

@@ -2505,7 +2507,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
-

Definition at line 745 of file SensorData.h.

+

Definition at line 756 of file SensorData.h.

@@ -2532,7 +2534,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
-

Definition at line 746 of file SensorData.h.

+

Definition at line 757 of file SensorData.h.

@@ -2621,7 +2623,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns raw ground cells.

Returns
Const reference to raw ground cells matrix
-

Definition at line 771 of file SensorData.h.

+

Definition at line 782 of file SensorData.h.

@@ -2652,7 +2654,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
Returns
Const reference to compressed ground cells matrix
Note
Use Compression::uncompressData() to uncompress the data.
-

Definition at line 778 of file SensorData.h.

+

Definition at line 789 of file SensorData.h.

@@ -2682,7 +2684,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns raw obstacle cells.

Returns
Const reference to raw obstacle cells matrix
-

Definition at line 784 of file SensorData.h.

+

Definition at line 795 of file SensorData.h.

@@ -2713,7 +2715,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
Returns
Const reference to compressed obstacle cells matrix
Note
Use Compression::uncompressData() to uncompress the data.
-

Definition at line 791 of file SensorData.h.

+

Definition at line 802 of file SensorData.h.

@@ -2743,7 +2745,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns raw empty cells.

Returns
Const reference to raw empty cells matrix
-

Definition at line 797 of file SensorData.h.

+

Definition at line 808 of file SensorData.h.

@@ -2774,7 +2776,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
Returns
Const reference to compressed empty cells matrix
Note
Use Compression::uncompressData() to uncompress the data.
-

Definition at line 804 of file SensorData.h.

+

Definition at line 815 of file SensorData.h.

@@ -2804,7 +2806,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the occupancy grid cell size.

Returns
Cell size in meters
-

Definition at line 810 of file SensorData.h.

+

Definition at line 821 of file SensorData.h.

@@ -2834,7 +2836,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the occupancy grid viewpoint.

Returns
Const reference to viewpoint/origin 3D point
-

Definition at line 816 of file SensorData.h.

+

Definition at line 827 of file SensorData.h.

@@ -2909,7 +2911,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the 2D keypoints.

Returns
Const reference to vector of 2D keypoints
-

Definition at line 834 of file SensorData.h.

+

Definition at line 845 of file SensorData.h.

@@ -2939,7 +2941,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the 3D keypoints.

Returns
Const reference to vector of 3D points (in base_link frame)
-

Definition at line 840 of file SensorData.h.

+

Definition at line 851 of file SensorData.h.

@@ -2969,7 +2971,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the feature descriptors.

Returns
Const reference to descriptors matrix (one row per keypoint)
-

Definition at line 846 of file SensorData.h.

+

Definition at line 857 of file SensorData.h.

@@ -3005,7 +3007,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 852 of file SensorData.h.

+

Definition at line 863 of file SensorData.h.

@@ -3041,7 +3043,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 858 of file SensorData.h.

+

Definition at line 869 of file SensorData.h.

@@ -3070,7 +3072,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Clears all global descriptors.

-

Definition at line 863 of file SensorData.h.

+

Definition at line 874 of file SensorData.h.

@@ -3100,7 +3102,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns all global descriptors.

Returns
Const reference to vector of global descriptors
-

Definition at line 869 of file SensorData.h.

+

Definition at line 880 of file SensorData.h.

@@ -3136,7 +3138,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 875 of file SensorData.h.

+

Definition at line 886 of file SensorData.h.

@@ -3166,7 +3168,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the ground truth pose.

Returns
Const reference to ground truth transform
-

Definition at line 881 of file SensorData.h.

+

Definition at line 892 of file SensorData.h.

@@ -3213,7 +3215,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 888 of file SensorData.h.

+

Definition at line 899 of file SensorData.h.

@@ -3243,7 +3245,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the global pose.

Returns
Const reference to global pose transform
-

Definition at line 894 of file SensorData.h.

+

Definition at line 905 of file SensorData.h.

@@ -3273,7 +3275,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns the global pose covariance.

Returns
Const reference to pose covariance matrix (6x6, CV_64FC1)
-

Definition at line 900 of file SensorData.h.

+

Definition at line 911 of file SensorData.h.

@@ -3309,7 +3311,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 906 of file SensorData.h.

+

Definition at line 917 of file SensorData.h.

@@ -3339,7 +3341,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns GPS data.

Returns
Const reference to GPS data
-

Definition at line 912 of file SensorData.h.

+

Definition at line 923 of file SensorData.h.

@@ -3396,7 +3398,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns IMU data.

Returns
Const reference to IMU data
-

Definition at line 926 of file SensorData.h.

+

Definition at line 937 of file SensorData.h.

@@ -3432,7 +3434,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 932 of file SensorData.h.

+

Definition at line 943 of file SensorData.h.

@@ -3468,7 +3470,7 @@ The class manages memory efficiently by storing either raw or compressed data (o -

Definition at line 938 of file SensorData.h.

+

Definition at line 949 of file SensorData.h.

@@ -3498,7 +3500,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns all environmental sensors.

Returns
Const reference to map of environmental sensors
-

Definition at line 944 of file SensorData.h.

+

Definition at line 955 of file SensorData.h.

@@ -3535,7 +3537,7 @@ The class manages memory efficiently by storing either raw or compressed data (o
Note
Landmark IDs should be positive and non-zero.
-

Definition at line 951 of file SensorData.h.

+

Definition at line 962 of file SensorData.h.

@@ -3565,7 +3567,7 @@ The class manages memory efficiently by storing either raw or compressed data (o

Returns landmarks.

Returns
Const reference to map of landmarks
-

Definition at line 957 of file SensorData.h.

+

Definition at line 968 of file SensorData.h.

diff --git a/api/latest/index.html b/api/latest/index.html index 5735afdf..00d952da 100644 --- a/api/latest/index.html +++ b/api/latest/index.html @@ -162,7 +162,7 @@ Start here
rtabmap::Odometry::create
static Odometry * create(const ParametersMap &parameters=ParametersMap())
Creates an odometry instance from Parameters::kOdomStrategy() in parameters.
rtabmap::Rtabmap
Top-level RTAB-Map SLAM pipeline (mapping, localization and loop closure).
Definition Rtabmap.h:194
rtabmap::SensorData
Container class for all sensor data captured at a specific time.
Definition SensorData.h:97
-
rtabmap::SensorData::stamp
double stamp() const
Returns the timestamp.
Definition SensorData.h:527
+
rtabmap::SensorData::stamp
double stamp() const
Returns the timestamp.
Definition SensorData.h:538
rtabmap::Statistics
Collects and manages runtime statistics for RTAB-Map.
Definition Statistics.h:108
rtabmap::Statistics::mapCorrection
const Transform & mapCorrection() const
Returns the map correction transform.
Definition Statistics.h:657
rtabmap::Transform
Represents a 3D rigid body transformation (rotation + translation).
Definition Transform.h:53
@@ -217,8 +217,8 @@ Occupancy grid
rtabmap::LocalGridCache::add
void add(int nodeId, const cv::Mat &ground, const cv::Mat &obstacles, const cv::Mat &empty, float cellSize, const cv::Point3f &viewPoint=cv::Point3f(0, 0, 0))
Inserts or replaces the grid for nodeId (from separate cell mats).
rtabmap::OccupancyGrid
Definition OccupancyGrid.h:41
rtabmap::SensorData::uncompressDataConst
void uncompressDataConst(cv::Mat *imageRaw, cv::Mat *depthOrRightRaw, LaserScan *laserScanRaw=0, cv::Mat *userDataRaw=0, cv::Mat *groundCellsRaw=0, cv::Mat *obstacleCellsRaw=0, cv::Mat *emptyCellsRaw=0, cv::Mat *depthConfidenceRaw=0) const
Uncompresses compressed data into provided output buffers (const version)
-
rtabmap::SensorData::gridViewPoint
const cv::Point3f & gridViewPoint() const
Returns the occupancy grid viewpoint.
Definition SensorData.h:816
-
rtabmap::SensorData::gridCellSize
float gridCellSize() const
Returns the occupancy grid cell size.
Definition SensorData.h:810
+
rtabmap::SensorData::gridViewPoint
const cv::Point3f & gridViewPoint() const
Returns the occupancy grid viewpoint.
Definition SensorData.h:827
+
rtabmap::SensorData::gridCellSize
float gridCellSize() const
Returns the occupancy grid cell size.
Definition SensorData.h:821
rtabmap::Signature
Represents a node in RTAB-Map's pose graph.
Definition Signature.h:84
rtabmap::Signature::sensorData
SensorData & sensorData()
Returns mutable access to the sensor data.
Definition Signature.h:597
rtabmap::Signature::id
int id() const
Returns the signature ID.
Definition Signature.h:168
diff --git a/index.html b/index.html index e9968f3c..16aaf68b 100644 --- a/index.html +++ b/index.html @@ -5,7 +5,7 @@ - + RTAB-Map | Real-Time Appearance-Based Mapping