32 #include "rtabmap/core/Version.h"
34 #ifdef RTABMAP_DEPTHAI
35 #ifndef DEPTHAI_OPENCV_SUPPORT
36 #define DEPTHAI_OPENCV_SUPPORT
38 #include <depthai/depthai.hpp>
48 static bool available();
52 const std::string & mxidOrName =
"",
53 int imageWidth = 1280,
54 float imageRate = 0.0
f,
58 void setOutputMode(
int outputMode = 0);
59 void setDepthProfile(
int confThreshold = 200,
int lrcThreshold = 5);
60 void setExtendedDisparity(
bool extendedDisparity =
false,
bool enableCompanding =
false);
61 void setSubpixelMode(
bool enabled =
false,
int fractionalBits = 3);
62 void setDisparityWidthAndFilter(
int disparityWidth = 96,
int medianFilter = 5);
63 void setRectification(
bool useSpecTranslation =
false,
float alphaScaling = 0.0
f,
bool enabled =
true);
64 void setIMU(
bool imuPublished,
bool publishInterIMU);
65 void setIrIntensity(
float dotIntensity = 0.0
f,
float floodIntensity = 0.0
f);
66 void setDetectFeatures(
int detectFeatures = 0,
const std::string & blobPath =
"");
67 void setGFTTDetector(
bool useHarrisDetector =
false,
float minDistance = 7.0
f,
int numTargetFeatures = 1000);
68 void setSuperPointDetector(
float threshold = 0.01
f,
bool nms =
true,
int nmsRadius = 4);
70 virtual bool init(
const std::string & calibrationFolder =
".",
const std::string & cameraName =
"");
71 virtual bool isCalibrated()
const;
72 virtual std::string getSerial()
const;
78 #ifdef RTABMAP_DEPTHAI
82 std::string mxidOrName_;
87 bool extendedDisparity_;
88 bool enableCompanding_;
89 int subpixelFractionalBits_;
92 bool useSpecTranslation_;
94 bool imagesRectified_;
96 bool publishInterIMU_;
98 float floodIntensity_;
100 bool useHarrisDetector_;
102 int numTargetFeatures_;
106 std::string blobPath_;
107 std::unique_ptr<dai::Device> device_;
108 std::shared_ptr<dai::DataOutputQueue> cameraQueue_;
109 std::map<double, cv::Vec3f> accBuffer_;
110 std::map<double, cv::Vec3f> gyroBuffer_;