RTAB-Map 0.23.10
Real-Time Appearance-Based Mapping
Loading...
Searching...
No Matches
rtabmap::SIFT Class Reference

SIFT detector and descriptor (optional GPU / CudaSift). More...

#include <Features2d.h>

Inheritance diagram for rtabmap::SIFT:
Collaboration diagram for rtabmap::SIFT:

Public Member Functions

 SIFT (const ParametersMap &parameters=ParametersMap())
 
virtual void parseParameters (const ParametersMap &parameters) override
 
virtual Feature2D::Type getType () const override
 
virtual bool isGpuAvailable () const override
 Returns true when a GPU/CUDA code path could be used by this detector on this host: i.e. the build was compiled with the matching GPU support AND a CUDA-capable device is detected at runtime. This is a capability probe – it does NOT reflect whether the current instance is actually configured to run on GPU (that depends on per-detector parameters like SURF/GpuVersion). Defaults to false; subclasses with a GPU backend override it.
 
- Public Member Functions inherited from rtabmap::Feature2D
int getMaxFeatures () const
 
bool getSSC () const
 
float getMinDepth () const
 
float getMaxDepth () const
 
int getGridRows () const
 
int getGridCols () const
 
std::vector< cv::KeyPoint > generateKeypoints (const cv::Mat &image, const cv::Mat &mask=cv::Mat())
 Detects keypoints in a grayscale image (CV_8UC1); optional depth or 8U mask.
 
cv::Mat generateDescriptors (const cv::Mat &image, std::vector< cv::KeyPoint > &keypoints) const
 Computes descriptors for keypoints (may shrink the list in some detectors).
 
std::vector< cv::Point3f > generateKeypoints3D (const SensorData &data, const std::vector< cv::KeyPoint > &keypoints) const
 Back-projects keypoints to 3D using depth or stereo in data.
 
virtual const ParametersMapgetParameters () const
 

Additional Inherited Members

- Public Types inherited from rtabmap::Feature2D
enum  Type {
  kFeatureUndef =-1 , kFeatureSurf =0 , kFeatureSift =1 , kFeatureOrb =2 ,
  kFeatureFastFreak =3 , kFeatureFastBrief =4 , kFeatureGfttFreak =5 , kFeatureGfttBrief =6 ,
  kFeatureBrisk =7 , kFeatureGfttOrb =8 , kFeatureKaze =9 , kFeatureOrbOctree =10 ,
  kFeatureSuperPointTorch =11 , kFeatureSurfFreak =12 , kFeatureGfttDaisy =13 , kFeatureSurfDaisy =14 ,
  kFeaturePyDetector =15 , kFeatureSuperPointRpautrat =16 , kFeatureEnd
}
 Built-in detector/descriptor strategy (Kp/DetectorStrategy). More...
 
- Static Public Member Functions inherited from rtabmap::Feature2D
static std::string typeName (Type type)
 
static Feature2Dcreate (const ParametersMap &parameters=ParametersMap())
 Creates a detector from Kp/DetectorStrategy in parameters. Caller owns the pointer.
 
static Feature2Dcreate (Feature2D::Type type, const ParametersMap &parameters=ParametersMap())
 Creates a detector of the given type. Caller owns the pointer.
 
static bool isAvailable (Feature2D::Type type)
 Returns true if type is available (RTAB-Map is built with it).
 
static void filterKeypointsByDepth (std::vector< cv::KeyPoint > &keypoints, const cv::Mat &depth, float minDepth, float maxDepth)
 Keeps keypoints whose depth at (u,v) is in (minDepth, maxDepth).
 
static void filterKeypointsByDepth (std::vector< cv::KeyPoint > &keypoints, cv::Mat &descriptors, const cv::Mat &depth, float minDepth, float maxDepth)
 
static void filterKeypointsByDepth (std::vector< cv::KeyPoint > &keypoints, cv::Mat &descriptors, std::vector< cv::Point3f > &keypoints3D, float minDepth, float maxDepth)
 
static void filterKeypointsByDisparity (std::vector< cv::KeyPoint > &keypoints, const cv::Mat &disparity, float minDisparity)
 Keeps keypoints with stereo disparity ≥ minDisparity.
 
static void filterKeypointsByDisparity (std::vector< cv::KeyPoint > &keypoints, cv::Mat &descriptors, const cv::Mat &disparity, float minDisparity)
 
static void limitKeypoints (std::vector< cv::KeyPoint > &keypoints, int maxKeypoints, const cv::Size &imageSize=cv::Size(), bool ssc=false)
 Reduces keypoint count (by response or SSC spatial distribution).
 
static void limitKeypoints (std::vector< cv::KeyPoint > &keypoints, cv::Mat &descriptors, int maxKeypoints, const cv::Size &imageSize=cv::Size(), bool ssc=false)
 
static void limitKeypoints (std::vector< cv::KeyPoint > &keypoints, std::vector< cv::Point3f > &keypoints3D, cv::Mat &descriptors, int maxKeypoints, const cv::Size &imageSize=cv::Size(), bool ssc=false)
 
static void limitKeypoints (const std::vector< cv::KeyPoint > &keypoints, std::vector< bool > &inliers, int maxKeypoints, const cv::Size &imageSize=cv::Size(), bool ssc=false)
 
static void limitKeypoints (const std::vector< cv::KeyPoint > &keypoints, std::vector< bool > &inliers, int maxKeypoints, const cv::Size &imageSize, int gridRows, int gridCols, bool ssc=false)
 
static cv::Rect computeRoi (const cv::Mat &image, const std::string &roiRatios)
 ROI from Kp/RoiRatios string ("left top right bottom" fractions).
 
static cv::Rect computeRoi (const cv::Mat &image, const std::vector< float > &roiRatios)
 
- Protected Member Functions inherited from rtabmap::Feature2D
 Feature2D (const ParametersMap &parameters=ParametersMap())
 

Detailed Description

SIFT detector and descriptor (optional GPU / CudaSift).

Definition at line 348 of file Features2d.h.

Member Function Documentation

◆ parseParameters()

virtual void rtabmap::SIFT::parseParameters ( const ParametersMap parameters)
overridevirtual

Reimplemented from rtabmap::Feature2D.

◆ getType()

virtual Feature2D::Type rtabmap::SIFT::getType ( ) const
inlineoverridevirtual

Implements rtabmap::Feature2D.

Definition at line 355 of file Features2d.h.

◆ isGpuAvailable()

virtual bool rtabmap::SIFT::isGpuAvailable ( ) const
overridevirtual

Returns true when a GPU/CUDA code path could be used by this detector on this host: i.e. the build was compiled with the matching GPU support AND a CUDA-capable device is detected at runtime. This is a capability probe – it does NOT reflect whether the current instance is actually configured to run on GPU (that depends on per-detector parameters like SURF/GpuVersion). Defaults to false; subclasses with a GPU backend override it.

Reimplemented from rtabmap::Feature2D.


The documentation for this class was generated from the following file: