PARP Research Group University of Murcia, Spain


examples/OpenCV/siftDetector/hess/sift.h File Reference

#include "cxcore.h"

Go to the source code of this file.

Classes

struct  detection_data

Defines

#define SIFT_INTVLS   3
#define SIFT_SIGMA   1.6
#define SIFT_CONTR_THR   0.04
#define SIFT_CURV_THR   10
#define SIFT_IMG_DBL   1
#define SIFT_DESCR_WIDTH   4
#define SIFT_DESCR_HIST_BINS   8
#define SIFT_INIT_SIGMA   0.5
#define SIFT_IMG_BORDER   5
#define SIFT_MAX_INTERP_STEPS   5
#define SIFT_ORI_HIST_BINS   36
#define SIFT_ORI_SIG_FCTR   1.5
#define SIFT_ORI_RADIUS   3.0 * SIFT_ORI_SIG_FCTR
#define SIFT_ORI_SMOOTH_PASSES   2
#define SIFT_ORI_PEAK_RATIO   0.8
#define SIFT_DESCR_SCL_FCTR   3.0
#define SIFT_DESCR_MAG_THR   0.2
#define SIFT_INT_DESCR_FCTR   512.0
#define feat_detection_data(f)   ( (struct detection_data*)(f->feature_data) )

Functions

int sift_features (IplImage *img, struct feature **feat)
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)


Detailed Description

Functions for detecting SIFT image features.

For more information, refer to:

Lowe, D. Distinctive image features from scale-invariant keypoints. International Journal of Computer Vision, 60, 2 (2004), pp.91--110.

Copyright (C) 2006-2007 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-20070913

Definition in file sift.h.


Define Documentation

#define SIFT_CONTR_THR   0.04

default threshold on keypoint contrast |D(x)|

Definition at line 52 of file sift.h.

Referenced by sift_features().

#define SIFT_CURV_THR   10

default threshold on keypoint ratio of principle curvatures

Definition at line 55 of file sift.h.

Referenced by sift_features().

#define SIFT_DESCR_HIST_BINS   8

default number of bins per histogram in descriptor array

Definition at line 64 of file sift.h.

Referenced by sift_features().

#define SIFT_DESCR_WIDTH   4

default width of descriptor histogram array

Definition at line 61 of file sift.h.

Referenced by sift_features().

#define SIFT_IMG_DBL   1

double image size before pyramid construction?

Definition at line 58 of file sift.h.

Referenced by sift_features().

#define SIFT_INTVLS   3

default number of sampled intervals per octave

Definition at line 46 of file sift.h.

Referenced by sift_features().

#define SIFT_SIGMA   1.6

default sigma for initial gaussian smoothing

Definition at line 49 of file sift.h.

Referenced by sift_features().


Function Documentation

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 
)

Finda SIFT features in an image using user-specified parameter values. All detected features are stored in the array pointed to by feat.

Parameters:
img the image in which to detect features
feat a pointer to an array in which to store detected features
intvls the number of intervals sampled per octave of scale space
sigma the amount of Gaussian smoothing applied to each image level before building the scale space representation for an octave
contr_thr a threshold on the value of the scale space function $\left|D(\hat{x})\right|$, where $\hat{x}$ is a vector specifying feature location and scale, used to reject unstable features; assumes pixel values in the range [0, 1]
curv_thr threshold on a feature's ratio of principle curvatures used to reject features that are too edge-like
img_dbl should be 1 if image doubling prior to scale space construction is desired or 0 if not
descr_width the width, $n$, of the $n \times n$ array of orientation histograms used to compute a feature's descriptor
descr_hist_bins the number of orientations in each of the histograms in the array used to compute a feature's descriptor
Returns:
Returns the number of keypoints stored in feat or -1 on failure
See also:
sift_features()
Finds SIFT features in an image using user-specified parameter values. All detected features are stored in the array pointed to by feat.

Parameters:
img the image in which to detect features
fea a pointer to an array in which to store detected features
intvls the number of intervals sampled per octave of scale space
sigma the amount of Gaussian smoothing applied to each image level before building the scale space representation for an octave
cont_thr a threshold on the value of the scale space function $\left|D(\hat{x})\right|$, where $\hat{x}$ is a vector specifying feature location and scale, used to reject unstable features; assumes pixel values in the range [0, 1]
curv_thr threshold on a feature's ratio of principle curvatures used to reject features that are too edge-like
img_dbl should be 1 if image doubling prior to scale space construction is desired or 0 if not
descr_width the width, $n$, of the $n \times n$ array of orientation histograms used to compute a feature's descriptor
descr_hist_bins the number of orientations in each of the histograms in the array used to compute a feature's descriptor
Returns:
Returns the number of keypoints stored in feat or -1 on failure
See also:
sift_keypoints()

Definition at line 109 of file sift.cpp.

int sift_features ( IplImage *  img,
struct feature **  feat 
)

Finds SIFT features in an image using default parameter values. All detected features are stored in the array pointed to by feat.

Parameters:
img the image in which to detect features
feat a pointer to an array in which to store detected features
Returns:
Returns the number of features stored in feat or -1 on failure
See also:
_sift_features()

Definition at line 75 of file sift.cpp.




QVision framework. PARP research group, copyright 2007, 2008.