SensorData.h
Go to the documentation of this file.
1 /*
2 Copyright (c) 2010-2016, Mathieu Labbe - IntRoLab - Universite de Sherbrooke
3 All rights reserved.
4 
5 Redistribution and use in source and binary forms, with or without
6 modification, are permitted provided that the following conditions are met:
7  * Redistributions of source code must retain the above copyright
8  notice, this list of conditions and the following disclaimer.
9  * Redistributions in binary form must reproduce the above copyright
10  notice, this list of conditions and the following disclaimer in the
11  documentation and/or other materials provided with the distribution.
12  * Neither the name of the Universite de Sherbrooke nor the
13  names of its contributors may be used to endorse or promote products
14  derived from this software without specific prior written permission.
15 
16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY
20 DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27 
28 #ifndef SENSORDATA_H_
29 #define SENSORDATA_H_
30 
31 #include <rtabmap/core/rtabmap_core_export.h>
32 #include <rtabmap/core/Transform.h>
35 #include <rtabmap/core/Transform.h>
36 #include <opencv2/core/core.hpp>
37 #include <opencv2/features2d/features2d.hpp>
38 #include <rtabmap/core/LaserScan.h>
39 #include <rtabmap/core/IMU.h>
40 #include <rtabmap/core/GPS.h>
41 #include <rtabmap/core/EnvSensor.h>
42 #include <rtabmap/core/Landmark.h>
44 
45 namespace rtabmap
46 {
47 
51 class RTABMAP_CORE_EXPORT SensorData
52 {
53 public:
54  // empty constructor
55  SensorData();
56 
57  // Appearance-only constructor
58  SensorData(
59  const cv::Mat & image,
60  int id = 0,
61  double stamp = 0.0,
62  const cv::Mat & userData = cv::Mat());
63 
64  // Mono constructor
65  SensorData(
66  const cv::Mat & image,
67  const CameraModel & cameraModel,
68  int id = 0,
69  double stamp = 0.0,
70  const cv::Mat & userData = cv::Mat());
71 
72  // RGB-D constructor
73  SensorData(
74  const cv::Mat & rgb,
75  const cv::Mat & depth,
76  const CameraModel & cameraModel,
77  int id = 0,
78  double stamp = 0.0,
79  const cv::Mat & userData = cv::Mat());
80 
81  // RGB-D constructor + laser scan
82  SensorData(
83  const LaserScan & laserScan,
84  const cv::Mat & rgb,
85  const cv::Mat & depth,
86  const CameraModel & cameraModel,
87  int id = 0,
88  double stamp = 0.0,
89  const cv::Mat & userData = cv::Mat());
90 
91  // Multi-cameras RGB-D constructor
92  SensorData(
93  const cv::Mat & rgb,
94  const cv::Mat & depth,
95  const std::vector<CameraModel> & cameraModels,
96  int id = 0,
97  double stamp = 0.0,
98  const cv::Mat & userData = cv::Mat());
99 
100  // Multi-cameras RGB-D constructor + laser scan
101  SensorData(
102  const LaserScan & laserScan,
103  const cv::Mat & rgb,
104  const cv::Mat & depth,
105  const std::vector<CameraModel> & cameraModels,
106  int id = 0,
107  double stamp = 0.0,
108  const cv::Mat & userData = cv::Mat());
109 
110  // Stereo constructor
111  SensorData(
112  const cv::Mat & left,
113  const cv::Mat & right,
114  const StereoCameraModel & cameraModel,
115  int id = 0,
116  double stamp = 0.0,
117  const cv::Mat & userData = cv::Mat());
118 
119  // Stereo constructor + laser scan
120  SensorData(
121  const LaserScan & laserScan,
122  const cv::Mat & left,
123  const cv::Mat & right,
124  const StereoCameraModel & cameraModel,
125  int id = 0,
126  double stamp = 0.0,
127  const cv::Mat & userData = cv::Mat());
128 
129  // Multi-cameras stereo constructor
130  SensorData(
131  const cv::Mat & rgb,
132  const cv::Mat & depth,
133  const std::vector<StereoCameraModel> & cameraModels,
134  int id = 0,
135  double stamp = 0.0,
136  const cv::Mat & userData = cv::Mat());
137 
138  // Multi-cameras stereo constructor + laser scan
139  SensorData(
140  const LaserScan & laserScan,
141  const cv::Mat & rgb,
142  const cv::Mat & depth,
143  const std::vector<StereoCameraModel> & cameraModels,
144  int id = 0,
145  double stamp = 0.0,
146  const cv::Mat & userData = cv::Mat());
147 
148  // IMU constructor
149  SensorData(
150  const IMU & imu,
151  int id = 0,
152  double stamp = 0.0);
153 
154  virtual ~SensorData();
155 
156  bool isValid() const {
157  return !(_id == 0 &&
158  _stamp == 0.0 &&
159  _imageRaw.empty() &&
160  _imageCompressed.empty() &&
161  _depthOrRightRaw.empty() &&
162  _depthOrRightCompressed.empty() &&
163  _laserScanRaw.isEmpty() &&
164  _laserScanCompressed.isEmpty() &&
165  _cameraModels.empty() &&
166  _stereoCameraModels.empty() &&
167  _userDataRaw.empty() &&
168  _userDataCompressed.empty() &&
169  _keypoints.size() == 0 &&
170  _descriptors.empty() &&
171  imu_.empty());
172  }
173 
174  int id() const {return _id;}
175  void setId(int id) {_id = id;}
176  double stamp() const {return _stamp;}
177  void setStamp(double stamp) {_stamp = stamp;}
178 
179  const cv::Mat & imageCompressed() const {return _imageCompressed;}
180  const cv::Mat & depthOrRightCompressed() const {return _depthOrRightCompressed;}
181  const LaserScan & laserScanCompressed() const {return _laserScanCompressed;}
182 
183  const cv::Mat & imageRaw() const {return _imageRaw;}
184  const cv::Mat & depthOrRightRaw() const {return _depthOrRightRaw;}
185  const LaserScan & laserScanRaw() const {return _laserScanRaw;}
186 
192  void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const CameraModel & model, bool clearPreviousData = true);
193  void setRGBDImage(const cv::Mat & rgb, const cv::Mat & depth, const std::vector<CameraModel> & models, bool clearPreviousData = true);
194  void setStereoImage(const cv::Mat & left, const cv::Mat & right, const StereoCameraModel & stereoCameraModel, bool clearPreviousData = true);
195  void setStereoImage(const cv::Mat & left, const cv::Mat & right, const std::vector<StereoCameraModel> & stereoCameraModels, bool clearPreviousData = true);
196 
202  void setLaserScan(const LaserScan & laserScan, bool clearPreviousData = true);
203 
204  void setCameraModel(const CameraModel & model) {_cameraModels.clear(); _cameraModels.push_back(model);}
205  void setCameraModels(const std::vector<CameraModel> & models) {_cameraModels = models;}
206  void setStereoCameraModel(const StereoCameraModel & stereoCameraModel) {_stereoCameraModels.clear(); _stereoCameraModels.push_back(stereoCameraModel);}
207  void setStereoCameraModels(const std::vector<StereoCameraModel> & stereoCameraModels) {_stereoCameraModels = stereoCameraModels;}
208 
209  //for convenience
210  cv::Mat depthRaw() const {return _depthOrRightRaw.type()!=CV_8UC1?_depthOrRightRaw:cv::Mat();}
211  cv::Mat rightRaw() const {return _depthOrRightRaw.type()==CV_8UC1?_depthOrRightRaw:cv::Mat();}
212 
213  // Use setRGBDImage() or setStereoImage() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
214  RTABMAP_DEPRECATED void setImageRaw(const cv::Mat & image);
215  // Use setRGBDImage() or setStereoImage() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
216  RTABMAP_DEPRECATED void setDepthOrRightRaw(const cv::Mat & image);
217  // Use setLaserScan() with clearNotUpdated=false or removeRawData() instead. To be backward compatible, this function doesn't clear compressed data.
218  RTABMAP_DEPRECATED void setLaserScanRaw(const LaserScan & scan);
219  // Use setUserData() or removeRawData() instead.
220  RTABMAP_DEPRECATED void setUserDataRaw(const cv::Mat & data);
221 
222  void uncompressData();
223  void uncompressData(
224  cv::Mat * imageRaw,
225  cv::Mat * depthOrRightRaw,
226  LaserScan * laserScanRaw = 0,
227  cv::Mat * userDataRaw = 0,
228  cv::Mat * groundCellsRaw = 0,
229  cv::Mat * obstacleCellsRaw = 0,
230  cv::Mat * emptyCellsRaw = 0);
231  void uncompressDataConst(
232  cv::Mat * imageRaw,
233  cv::Mat * depthOrRightRaw,
234  LaserScan * laserScanRaw = 0,
235  cv::Mat * userDataRaw = 0,
236  cv::Mat * groundCellsRaw = 0,
237  cv::Mat * obstacleCellsRaw = 0,
238  cv::Mat * emptyCellsRaw = 0) const;
239 
240  const std::vector<CameraModel> & cameraModels() const {return _cameraModels;}
241  const std::vector<StereoCameraModel> & stereoCameraModels() const {return _stereoCameraModels;}
242 
251  void setUserData(const cv::Mat & userData, bool clearPreviousData = true);
252  const cv::Mat & userDataRaw() const {return _userDataRaw;}
253  const cv::Mat & userDataCompressed() const {return _userDataCompressed;}
254 
255  // detect automatically if raw or compressed. If raw, the data will be compressed.
256  void setOccupancyGrid(
257  const cv::Mat & ground,
258  const cv::Mat & obstacles,
259  const cv::Mat & empty,
260  float cellSize,
261  const cv::Point3f & viewPoint);
262  // remove raw occupancy grids
263  void clearOccupancyGridRaw() {_groundCellsRaw = cv::Mat(); _obstacleCellsRaw = cv::Mat();}
264  const cv::Mat & gridGroundCellsRaw() const {return _groundCellsRaw;}
265  const cv::Mat & gridGroundCellsCompressed() const {return _groundCellsCompressed;}
266  const cv::Mat & gridObstacleCellsRaw() const {return _obstacleCellsRaw;}
267  const cv::Mat & gridObstacleCellsCompressed() const {return _obstacleCellsCompressed;}
268  const cv::Mat & gridEmptyCellsRaw() const {return _emptyCellsRaw;}
269  const cv::Mat & gridEmptyCellsCompressed() const {return _emptyCellsCompressed;}
270  float gridCellSize() const {return _cellSize;}
271  const cv::Point3f & gridViewPoint() const {return _viewPoint;}
272 
273  void setFeatures(const std::vector<cv::KeyPoint> & keypoints, const std::vector<cv::Point3f> & keypoints3D, const cv::Mat & descriptors);
274  const std::vector<cv::KeyPoint> & keypoints() const {return _keypoints;}
275  const std::vector<cv::Point3f> & keypoints3D() const {return _keypoints3D;}
276  const cv::Mat & descriptors() const {return _descriptors;}
277 
278  void addGlobalDescriptor(const GlobalDescriptor & descriptor) {_globalDescriptors.push_back(descriptor);}
279  void setGlobalDescriptors(const std::vector<GlobalDescriptor> & descriptors) {_globalDescriptors = descriptors;}
280  void clearGlobalDescriptors() {_globalDescriptors.clear();}
281  const std::vector<GlobalDescriptor> & globalDescriptors() const {return _globalDescriptors;}
282 
283  void setGroundTruth(const Transform & pose) {groundTruth_ = pose;}
284  const Transform & groundTruth() const {return groundTruth_;}
285 
286  void setGlobalPose(const Transform & pose, const cv::Mat & covariance) {globalPose_ = pose; globalPoseCovariance_ = covariance;}
287  const Transform & globalPose() const {return globalPose_;}
288  const cv::Mat & globalPoseCovariance() const {return globalPoseCovariance_;}
289 
290  void setGPS(const GPS & gps) {gps_ = gps;}
291  const GPS & gps() const {return gps_;}
292 
293  void setIMU(const IMU & imu) {imu_ = imu; }
294  const IMU & imu() const {return imu_;}
295 
296  void setEnvSensors(const EnvSensors & sensors) {_envSensors = sensors;}
297  void addEnvSensor(const EnvSensor & sensor) {_envSensors.insert(std::make_pair(sensor.type(), sensor));}
298  const EnvSensors & envSensors() const {return _envSensors;}
299 
300  void setLandmarks(const Landmarks & landmarks) {_landmarks = landmarks;}
301  const Landmarks & landmarks() const {return _landmarks;}
302 
303  unsigned long getMemoryUsed() const; // Return memory usage in Bytes
308  void clearCompressedData(bool images = true, bool scan = true, bool userData = true);
313  void clearRawData(bool images = true, bool scan = true, bool userData = true);
314 
315  bool isPointVisibleFromCameras(const cv::Point3f & pt) const; // assuming point is in robot frame
316 
317 private:
318  int _id;
319  double _stamp;
320 
321  cv::Mat _imageCompressed; // compressed image
322  cv::Mat _depthOrRightCompressed; // compressed image
323  LaserScan _laserScanCompressed; // compressed data
324 
325  cv::Mat _imageRaw; // CV_8UC1 or CV_8UC3
326  cv::Mat _depthOrRightRaw; // depth CV_16UC1 or CV_32FC1, right image CV_8UC1
328 
329  std::vector<CameraModel> _cameraModels;
330  std::vector<StereoCameraModel> _stereoCameraModels;
331 
332  // user data
333  cv::Mat _userDataCompressed; // compressed data
334  cv::Mat _userDataRaw;
335 
336  // occupancy grid
342  cv::Mat _emptyCellsRaw;
343  float _cellSize;
344  cv::Point3f _viewPoint;
345 
346  // environmental sensors
348 
349  // landmarks
351 
352  // features
353  std::vector<cv::KeyPoint> _keypoints;
354  std::vector<cv::Point3f> _keypoints3D;
355  cv::Mat _descriptors;
356 
357  // global descriptors
358  std::vector<GlobalDescriptor> _globalDescriptors;
359 
361 
363  cv::Mat globalPoseCovariance_; // 6x6 double
364 
366 
368 };
369 
370 }
371 
372 
373 #endif /* SENSORDATA_H_ */
rtabmap::SensorData
Definition: SensorData.h:51
rtabmap::SensorData::_emptyCellsRaw
cv::Mat _emptyCellsRaw
Definition: SensorData.h:342
rtabmap::SensorData::gps_
GPS gps_
Definition: SensorData.h:365
rtabmap::SensorData::_landmarks
Landmarks _landmarks
Definition: SensorData.h:350
rtabmap::StereoCameraModel
Definition: StereoCameraModel.h:35
rtabmap::SensorData::_envSensors
EnvSensors _envSensors
Definition: SensorData.h:347
rtabmap::SensorData::globalPoseCovariance
const cv::Mat & globalPoseCovariance() const
Definition: SensorData.h:288
rtabmap::SensorData::_cellSize
float _cellSize
Definition: SensorData.h:343
rtabmap::SensorData::gridCellSize
float gridCellSize() const
Definition: SensorData.h:270
rtabmap_netvlad.descriptor
def descriptor
Definition: rtabmap_netvlad.py:81
rtabmap::SensorData::globalPoseCovariance_
cv::Mat globalPoseCovariance_
Definition: SensorData.h:363
rtabmap::SensorData::_viewPoint
cv::Point3f _viewPoint
Definition: SensorData.h:344
rtabmap::SensorData::laserScanCompressed
const LaserScan & laserScanCompressed() const
Definition: SensorData.h:181
rtabmap::SensorData::clearGlobalDescriptors
void clearGlobalDescriptors()
Definition: SensorData.h:280
rtabmap::CameraModel
Definition: CameraModel.h:38
rtabmap::SensorData::_stereoCameraModels
std::vector< StereoCameraModel > _stereoCameraModels
Definition: SensorData.h:330
rtabmap::RTABMAP_DEPRECATED
RTABMAP_DEPRECATED(typedef SensorData Image, "rtabmap::Image class is renamed to rtabmap::SensorData, use the last one instead.")
rtabmap::SensorData::_obstacleCellsCompressed
cv::Mat _obstacleCellsCompressed
Definition: SensorData.h:338
rtabmap::SensorData::landmarks
const Landmarks & landmarks() const
Definition: SensorData.h:301
rtabmap::SensorData::_globalDescriptors
std::vector< GlobalDescriptor > _globalDescriptors
Definition: SensorData.h:358
rtabmap::SensorData::isValid
bool isValid() const
Definition: SensorData.h:156
rtabmap::SensorData::_groundCellsCompressed
cv::Mat _groundCellsCompressed
Definition: SensorData.h:337
rtabmap::GPS
Definition: GPS.h:35
Transform.h
rtabmap::SensorData::imageCompressed
const cv::Mat & imageCompressed() const
Definition: SensorData.h:179
rtabmap::SensorData::stamp
double stamp() const
Definition: SensorData.h:176
rtabmap::SensorData::gridGroundCellsRaw
const cv::Mat & gridGroundCellsRaw() const
Definition: SensorData.h:264
rtabmap::SensorData::_imageRaw
cv::Mat _imageRaw
Definition: SensorData.h:325
rtabmap::SensorData::_laserScanCompressed
LaserScan _laserScanCompressed
Definition: SensorData.h:323
rtabmap::LaserScan
Definition: LaserScan.h:37
rtabmap::Landmarks
std::map< int, Landmark > Landmarks
Definition: Landmark.h:79
rtabmap::SensorData::cameraModels
const std::vector< CameraModel > & cameraModels() const
Definition: SensorData.h:240
rtabmap::SensorData::gridEmptyCellsCompressed
const cv::Mat & gridEmptyCellsCompressed() const
Definition: SensorData.h:269
rtabmap::SensorData::gridObstacleCellsCompressed
const cv::Mat & gridObstacleCellsCompressed() const
Definition: SensorData.h:267
rtabmap::SensorData::stereoCameraModels
const std::vector< StereoCameraModel > & stereoCameraModels() const
Definition: SensorData.h:241
rtabmap::SensorData::_userDataCompressed
cv::Mat _userDataCompressed
Definition: SensorData.h:333
rtabmap::SensorData::_cameraModels
std::vector< CameraModel > _cameraModels
Definition: SensorData.h:329
rtabmap::SensorData::globalPose
const Transform & globalPose() const
Definition: SensorData.h:287
rtabmap::SensorData::globalDescriptors
const std::vector< GlobalDescriptor > & globalDescriptors() const
Definition: SensorData.h:281
rtabmap::SensorData::userDataCompressed
const cv::Mat & userDataCompressed() const
Definition: SensorData.h:253
rtabmap::IMU
Definition: IMU.h:19
rtabmap::SensorData::groundTruth_
Transform groundTruth_
Definition: SensorData.h:360
rtabmap::SensorData::laserScanRaw
const LaserScan & laserScanRaw() const
Definition: SensorData.h:185
rtabmap::SensorData::addGlobalDescriptor
void addGlobalDescriptor(const GlobalDescriptor &descriptor)
Definition: SensorData.h:278
rtabmap::SensorData::setIMU
void setIMU(const IMU &imu)
Definition: SensorData.h:293
rtabmap::SensorData::_stamp
double _stamp
Definition: SensorData.h:319
rtabmap::SensorData::_keypoints3D
std::vector< cv::Point3f > _keypoints3D
Definition: SensorData.h:354
rtabmap::SensorData::descriptors
const cv::Mat & descriptors() const
Definition: SensorData.h:276
rtabmap::SensorData::_obstacleCellsRaw
cv::Mat _obstacleCellsRaw
Definition: SensorData.h:341
rtabmap::SensorData::_imageCompressed
cv::Mat _imageCompressed
Definition: SensorData.h:321
rtabmap::SensorData::_emptyCellsCompressed
cv::Mat _emptyCellsCompressed
Definition: SensorData.h:339
rtabmap::SensorData::_laserScanRaw
LaserScan _laserScanRaw
Definition: SensorData.h:327
rtabmap::SensorData::id
int id() const
Definition: SensorData.h:174
rtabmap::SensorData::_depthOrRightRaw
cv::Mat _depthOrRightRaw
Definition: SensorData.h:326
rtabmap::SensorData::rightRaw
cv::Mat rightRaw() const
Definition: SensorData.h:211
rtabmap::SensorData::_id
int _id
Definition: SensorData.h:318
rtabmap::SensorData::envSensors
const EnvSensors & envSensors() const
Definition: SensorData.h:298
rtabmap::EnvSensor::type
const Type & type() const
Definition: EnvSensor.h:71
rtabmap::SensorData::imu_
IMU imu_
Definition: SensorData.h:367
rtabmap::SensorData::_depthOrRightCompressed
cv::Mat _depthOrRightCompressed
Definition: SensorData.h:322
rtabmap::SensorData::setId
void setId(int id)
Definition: SensorData.h:175
rtabmap::SensorData::gridGroundCellsCompressed
const cv::Mat & gridGroundCellsCompressed() const
Definition: SensorData.h:265
rtabmap::SensorData::setGroundTruth
void setGroundTruth(const Transform &pose)
Definition: SensorData.h:283
StereoCameraModel.h
GPS.h
rtabmap::SensorData::gridViewPoint
const cv::Point3f & gridViewPoint() const
Definition: SensorData.h:271
Landmark.h
rtabmap::GlobalDescriptor
Definition: GlobalDescriptor.h:35
rtabmap::SensorData::setStereoCameraModels
void setStereoCameraModels(const std::vector< StereoCameraModel > &stereoCameraModels)
Definition: SensorData.h:207
rtabmap::SensorData::userDataRaw
const cv::Mat & userDataRaw() const
Definition: SensorData.h:252
rtabmap::SensorData::_keypoints
std::vector< cv::KeyPoint > _keypoints
Definition: SensorData.h:353
rtabmap::SensorData::globalPose_
Transform globalPose_
Definition: SensorData.h:362
rtabmap::SensorData::_groundCellsRaw
cv::Mat _groundCellsRaw
Definition: SensorData.h:340
rtabmap::SensorData::imageRaw
const cv::Mat & imageRaw() const
Definition: SensorData.h:183
rtabmap::Transform
Definition: Transform.h:41
empty
rtabmap::EnvSensors
std::map< EnvSensor::Type, EnvSensor > EnvSensors
Definition: EnvSensor.h:81
LaserScan.h
rtabmap::SensorData::depthRaw
cv::Mat depthRaw() const
Definition: SensorData.h:210
rtabmap::SensorData::gridObstacleCellsRaw
const cv::Mat & gridObstacleCellsRaw() const
Definition: SensorData.h:266
EnvSensor.h
rtabmap::SensorData::imu
const IMU & imu() const
Definition: SensorData.h:294
id
id
rtabmap::SensorData::setStereoCameraModel
void setStereoCameraModel(const StereoCameraModel &stereoCameraModel)
Definition: SensorData.h:206
rtabmap::SensorData::setCameraModel
void setCameraModel(const CameraModel &model)
Definition: SensorData.h:204
rtabmap::SensorData::addEnvSensor
void addEnvSensor(const EnvSensor &sensor)
Definition: SensorData.h:297
rtabmap::SensorData::_userDataRaw
cv::Mat _userDataRaw
Definition: SensorData.h:334
GlobalDescriptor.h
rtabmap::SensorData::keypoints
const std::vector< cv::KeyPoint > & keypoints() const
Definition: SensorData.h:274
rtabmap::SensorData::_descriptors
cv::Mat _descriptors
Definition: SensorData.h:355
CameraModel.h
rtabmap::SensorData::gps
const GPS & gps() const
Definition: SensorData.h:291
IMU.h
rtabmap::SensorData::clearOccupancyGridRaw
void clearOccupancyGridRaw()
Definition: SensorData.h:263
rtabmap::SensorData::depthOrRightRaw
const cv::Mat & depthOrRightRaw() const
Definition: SensorData.h:184
rtabmap::SensorData::setLandmarks
void setLandmarks(const Landmarks &landmarks)
Definition: SensorData.h:300
rtabmap::SensorData::setGPS
void setGPS(const GPS &gps)
Definition: SensorData.h:290
rtabmap::SensorData::setGlobalPose
void setGlobalPose(const Transform &pose, const cv::Mat &covariance)
Definition: SensorData.h:286
rtabmap
Definition: CameraARCore.cpp:35
rtabmap::SensorData::setGlobalDescriptors
void setGlobalDescriptors(const std::vector< GlobalDescriptor > &descriptors)
Definition: SensorData.h:279
rtabmap::SensorData::keypoints3D
const std::vector< cv::Point3f > & keypoints3D() const
Definition: SensorData.h:275
rtabmap::EnvSensor
Definition: EnvSensor.h:33
trace.model
model
Definition: trace.py:4
rtabmap::SensorData::gridEmptyCellsRaw
const cv::Mat & gridEmptyCellsRaw() const
Definition: SensorData.h:268
rtabmap::SensorData::setStamp
void setStamp(double stamp)
Definition: SensorData.h:177
rtabmap::SensorData::setCameraModels
void setCameraModels(const std::vector< CameraModel > &models)
Definition: SensorData.h:205
rtabmap::SensorData::setEnvSensors
void setEnvSensors(const EnvSensors &sensors)
Definition: SensorData.h:296
rtabmap::SensorData::depthOrRightCompressed
const cv::Mat & depthOrRightCompressed() const
Definition: SensorData.h:180
rtabmap::SensorData::groundTruth
const Transform & groundTruth() const
Definition: SensorData.h:284
rtabmap::uncompressData
cv::Mat RTABMAP_CORE_EXPORT uncompressData(const cv::Mat &bytes)
Definition: Compression.cpp:231


rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Jul 1 2024 02:42:33