⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sift.h

📁 opencv下的图像sift特征提取以及匹配
💻 H
字号:
/**@fileFunctions for detecting SIFT image features.For more information, refer to:Lowe, D.  Distinctive image features from scale-invariant keypoints.<EM>International Journal of Computer Vision, 60</EM>, 2 (2004),pp.91--110.

Copyright (C) 2006  Rob Hess <hess@eecs.oregonstate.edu>
Note: The SIFT algorithm is patented in the United States and cannot be
used in commercial products without a license from the University of
British Columbia.  For more information, refer to the file LICENSE.ubc
that accompanied this distribution.

@version 1.1.1-20070330*/#ifndef SIFT_H#define SIFT_H#include "cxcore.h"/******************************** Structures *********************************//** holds feature data relevant to detection */struct detection_data{	int r;	int c;	int octv;	int intvl;	double subintvl;	double scl_octv;};struct feature;/******************************* Defs and macros *****************************//** default number of sampled intervals per octave */#define SIFT_INTVLS 3/** default sigma for initial gaussian smoothing */#define SIFT_SIGMA 1.6/** default threshold on keypoint contrast |D(x)| */#define SIFT_CONTR_THR 0.04/** default threshold on keypoint ratio of principle curvatures */#define SIFT_CURV_THR 10/** double image size before pyramid construction? */#define SIFT_IMG_DBL 1/** default width of descriptor histogram array */#define SIFT_DESCR_WIDTH 4/** default number of bins per histogram in descriptor array */#define SIFT_DESCR_HIST_BINS 8/* assumed gaussian blur for input image */#define SIFT_INIT_SIGMA 0.5/* width of border in which to ignore keypoints */#define SIFT_IMG_BORDER 5/* maximum steps of keypoint interpolation before failure */#define SIFT_MAX_INTERP_STEPS 5/* default number of bins in histogram for orientation assignment */#define SIFT_ORI_HIST_BINS 36/* determines gaussian sigma for orientation assignment */#define SIFT_ORI_SIG_FCTR 1.5/* determines the radius of the region used in orientation assignment */#define SIFT_ORI_RADIUS 3.0 * SIFT_ORI_SIG_FCTR/* number of passes of orientation histogram smoothing */#define SIFT_ORI_SMOOTH_PASSES 2/* orientation magnitude relative to max that results in new feature */#define SIFT_ORI_PEAK_RATIO 0.8/* determines the size of a single descriptor orientation histogram */#define SIFT_DESCR_SCL_FCTR 3.0/* threshold on magnitude of elements of descriptor vector */#define SIFT_DESCR_MAG_THR 0.2/* factor used to convert floating-point descriptor to unsigned char */#define SIFT_INT_DESCR_FCTR 512.0/* returns a feature's detection data */#define feat_detection_data(f) ( (struct detection_data*)(f->feature_data) )/*************************** Function Prototypes *****************************//**Finds SIFT features in an image using default parameter values.  Alldetected features are stored in the array pointed to by \a feat.@param img the image in which to detect features@param feat a pointer to an array in which to store detected features@return Returns the number of features stored in \a feat or -1 on failure@see _sift_features()*/extern int sift_features( IplImage* img, struct feature** feat );/**Finda SIFT features in an image using user-specified parameter values.  Alldetected features are stored in the array pointed to by \a feat.@param img the image in which to detect features@param feat a pointer to an array in which to store detected features@param intvls the number of intervals sampled per octave of scale space@param sigma the amount of Gaussian smoothing applied to each image level	before building the scale space representation for an octave@param contr_thr a threshold on the value of the scale space function	\f$\left|D(\hat{x})\right|\f$, where \f$\hat{x}\f$ is a vector specifying	feature location and scale, used to reject unstable features;  assumespixel values in the range [0, 1]@param curv_thr threshold on a feature's ratio of principle curvatures	used to reject features that are too edge-like@param img_dbl should be 1 if image doubling prior to scale space	construction is desired or 0 if not@param descr_width the width, \f$n\f$, of the \f$n \times n\f$ array of	orientation histograms used to compute a feature's descriptor@param descr_hist_bins the number of orientations in each of the	histograms in the array used to compute a feature's descriptor@return Returns the number of keypoints stored in \a feat or -1 on failure@see sift_features()*/extern int _sift_features( IplImage* img, struct feature** feat, int intvls,						  double sigma, double contr_thr, int curv_thr,						  int img_dbl, int descr_width, int descr_hist_bins );#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -