KingEasternSun的专栏

OpenCV中ORB的类定义class ORB{public:/** The patch sizes that can be used (only one right now) */struct CommonParams{enum { DEFAULT_N_LEVELS = 3, DEFAULT_FIRST_LEVEL = 0};/** default constructor */CommonParams(float scale_factor = 1.2f, unsigned int n_levels = DEFAULT_N_LEVELS,int edge_threshold = 31, unsigned int first_level = DEFAULT_FIRST_LEVEL);void read(const FileNode& fn);void write(FileStorage& fs) const;/** Coefficient by which we divide the dimensions from one scale pyramid level to the next */float scale_factor_;/** The number of levels in the scale pyramid */unsigned int n_levels_;/** The level at which the image is given* if 1, that means we will also look at the image scale_factor_ times bigger*/unsigned int first_level_;/** How far from the boundary the points should be */int edge_threshold_;};// c:function::default constructorORB();// constructor that initializes all the algorithm parametersORB( const CommonParams detector_params );// returns the number of elements in each descriptor (32 bytes)int descriptorSize() const;// detects keypoints using ORBvoid operator()(const Mat& img, const Mat& mask,vector<KeyPoint>& keypoints) const;// detects ORB keypoints and computes the ORB descriptors for them;// output vector "descriptors" stores elements of descriptors and has size// equal descriptorSize()*keypoints.size() as each descriptor is// descriptorSize() elements of this vector.void operator()(const Mat& img, const Mat& mask,vector<KeyPoint>& keypoints,cv::Mat& descriptors,bool useProvidedKeypoints=false) const;};

我们可以看到参数主要有4个

由文献中

In our implementation, smoothing is achieved using an integral image, where each test point is a 5 × 5 subwindow of a 31 × 31 pixel patch

可以知道edge_threshold对应的pixel patch

,享受每一刻的感觉,欣赏每一处的风景,这就是人生。

KingEasternSun的专栏

相关文章:

你感兴趣的文章:

标签云: