#include <mrpt/vision/CFeatureExtraction.h>
Classes | |
struct | TOptions |
Public Types | |
enum | TMethodExtraction { extMethodKLT = 0, extMethodHarris, extMethodBCD, extMethodSIFT, extMethodSURF } |
enum | TSIFTImplementation { LoweBinary = 0, CSBinary, VedaldiBinary, Hess } |
Public Member Functions | |
CFeatureExtraction () | |
Constructor. | |
virtual | ~CFeatureExtraction () |
Virtual destructor. | |
void | detectFeatures (const CMRPTImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) |
Extract features from the image based on the method defined in TOptions. | |
void | computeSiftDescriptors (const CMRPTImage &in_img, CFeatureList &in_features) |
Compute the SIFT descriptor of the provided features into the input image. | |
void | findMoreFeatures (const CMRPTImage &img, const CFeatureList &inList, CFeatureList &outList, unsigned int nDesiredFeats=0) |
Extract more features from the image (apart from the provided ones) based on the method defined in TOptions . | |
Public Attributes | |
struct MRPTDLLIMPEXP mrpt::vision::CFeatureExtraction::TOptions | options |
Private Member Functions | |
void | selectGoodFeaturesKLT (const CMRPTImage &inImg, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, void *mask_=NULL) |
Extract features from the image based on the Harris method. | |
void | extractFeaturesKLT (const CMRPTImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, unsigned int x_min=0, unsigned int x_length=0, unsigned int y_min=0, unsigned int y_length=0) |
Extract features from the image based on the KLT method. | |
void | extractFeaturesKLT (const CMRPTImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) |
Extract features from the image based on the KLT method. | |
void | extractFeaturesBCD (const CMRPTImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) |
Extract features from the image based on the BCD method. | |
void | extractFeaturesSIFT (const CMRPTImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) |
Extract features from the image based on the SIFT method. | |
void | extractFeaturesSURF (const CMRPTImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) |
Extract features from the image based on the SURF method. | |
void * | my_scale_space_extrema (CFeatureList &featList, void *dog_pyr, int octvs, int intvls, double contr_thr, int curv_thr, void *storage) |
Computes extrema in the scale space. | |
void | my_adjust_for_img_dbl (void *features) |
Adjust scale if the image was initially doubled. | |
void | getTimesExtrema (void *dog_pyr, int octvs, int intvls, float row, float col, unsigned int &nMin, unsigned int &nMax) |
Gets the number of times that a point in the image is higher or lower than the surroundings in the image-scale space. | |
double | getLaplacianValue (void *dog_pyr, int octvs, int intvls, float row, float col) |
Computes the Laplacian value of the feature in the corresponing image in the pyramid. | |
void | insertCvSeqInCFeatureList (void *features, CFeatureList &list, unsigned int init_ID=0) |
Append a sequence of openCV features into an MRPT feature list. | |
void | convertCvSeqInCFeatureList (void *features, CFeatureList &list, unsigned int init_ID=0, const TImageROI &ROI=TImageROI()) |
Converts a sequence of openCV features into an MRPT feature list. | |
bool | launchExternalApp (char *command) |
Launch an external process (for internal use only). |
Definition at line 43 of file CFeatureExtraction.h.
Definition at line 48 of file CFeatureExtraction.h.
Definition at line 57 of file CFeatureExtraction.h.
mrpt::vision::CFeatureExtraction::CFeatureExtraction | ( | ) |
Constructor.
virtual mrpt::vision::CFeatureExtraction::~CFeatureExtraction | ( | ) | [virtual] |
Virtual destructor.
void mrpt::vision::CFeatureExtraction::computeSiftDescriptors | ( | const CMRPTImage & | in_img, | |
CFeatureList & | in_features | |||
) |
Compute the SIFT descriptor of the provided features into the input image.
in_img | (input) The image from where to compute the descriptors. | |
in_features | (input/output) The list of features whose descriptors are going to be computed. |
void mrpt::vision::CFeatureExtraction::convertCvSeqInCFeatureList | ( | void * | features, | |
CFeatureList & | list, | |||
unsigned int | init_ID = 0 , |
|||
const TImageROI & | ROI = TImageROI() | |||
) | [private] |
Converts a sequence of openCV features into an MRPT feature list.
features | The sequence of features. | |
list | [in-out] The list of MRPT features. | |
init_ID | [in][optional] The initial ID for the features (default = 0). | |
ROI | [in][optional] The initial ID for the features (default = empty ROI -> not used). |
void mrpt::vision::CFeatureExtraction::detectFeatures | ( | const CMRPTImage & | img, | |
CFeatureList & | feats, | |||
unsigned int | init_ID = 0 , |
|||
unsigned int | nDesiredFeatures = 0 , |
|||
const TImageROI & | ROI = TImageROI() | |||
) |
Extract features from the image based on the method defined in TOptions.
img | (input) The image from where to extract the images. | |
feats | (output) A complete list of features (containing a patch for each one of them). | |
nDesiredFeatures | (op. input) Number of features to be extracted. Default: authomatic. | |
ROI | (op. input) Region of Interest. Default: All the image. |
void mrpt::vision::CFeatureExtraction::extractFeaturesBCD | ( | const CMRPTImage & | img, | |
CFeatureList & | feats, | |||
unsigned int | init_ID = 0 , |
|||
unsigned int | nDesiredFeatures = 0 , |
|||
const TImageROI & | ROI = TImageROI() | |||
) | [private] |
Extract features from the image based on the BCD method.
img | The image from where to extract the images. | |
feats | The list of extracted features. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
ROI | (op. input) Region of Interest. Default: All the image. |
void mrpt::vision::CFeatureExtraction::extractFeaturesKLT | ( | const CMRPTImage & | img, | |
CFeatureList & | feats, | |||
unsigned int | init_ID = 0 , |
|||
unsigned int | nDesiredFeatures = 0 , |
|||
const TImageROI & | ROI = TImageROI() | |||
) | [private] |
Extract features from the image based on the KLT method.
img | The image from where to extract the images. | |
feats | The list of extracted features. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
ROI | (op. input) Region of Interest. Default: All the image. |
void mrpt::vision::CFeatureExtraction::extractFeaturesKLT | ( | const CMRPTImage & | img, | |
CFeatureList & | feats, | |||
unsigned int | init_ID = 0 , |
|||
unsigned int | nDesiredFeatures = 0 , |
|||
unsigned int | x_min = 0 , |
|||
unsigned int | x_length = 0 , |
|||
unsigned int | y_min = 0 , |
|||
unsigned int | y_length = 0 | |||
) | [private] |
Extract features from the image based on the KLT method.
img | The image from where to extract the images. | |
x | Vector containing the feature 'x' coordinates. | |
y | Vector containing the feature 'y' coordinates. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
x_min | Minimum x coordinate in the image where the extraction is performed. Default: All the image. | |
x_length | X Length of the region of interest. Default: All the image. | |
y_min | Minimum y coordinate in the image where the extraction is performed. Default: All the image. | |
y_length | X Length of the region of interest. Default: All the image. |
void mrpt::vision::CFeatureExtraction::extractFeaturesSIFT | ( | const CMRPTImage & | img, | |
CFeatureList & | feats, | |||
unsigned int | init_ID = 0 , |
|||
unsigned int | nDesiredFeatures = 0 , |
|||
const TImageROI & | ROI = TImageROI() | |||
) | [private] |
Extract features from the image based on the SIFT method.
img | The image from where to extract the images. | |
feats | The list of extracted features. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
ROI | (op. input) Region of Interest. Default: All the image. |
void mrpt::vision::CFeatureExtraction::extractFeaturesSURF | ( | const CMRPTImage & | img, | |
CFeatureList & | feats, | |||
unsigned int | init_ID = 0 , |
|||
unsigned int | nDesiredFeatures = 0 , |
|||
const TImageROI & | ROI = TImageROI() | |||
) | [private] |
Extract features from the image based on the SURF method.
img | The image from where to extract the images. | |
feats | The list of extracted features. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
ROI | (op. input) Region of Interest. Default: All the image. |
void mrpt::vision::CFeatureExtraction::findMoreFeatures | ( | const CMRPTImage & | img, | |
const CFeatureList & | inList, | |||
CFeatureList & | outList, | |||
unsigned int | nDesiredFeats = 0 | |||
) |
Extract more features from the image (apart from the provided ones) based on the method defined in TOptions .
img | (input) The image from where to extract the images. | |
inList | (input) The actual features in the image | |
outList | (output) The list of new features (containing a patch for each one of them). | |
nDesiredFeatures | (op. input) Number of features to be extracted. Default: authomatic. |
double mrpt::vision::CFeatureExtraction::getLaplacianValue | ( | void * | dog_pyr, | |
int | octvs, | |||
int | intvls, | |||
float | row, | |||
float | col | |||
) | [private] |
Computes the Laplacian value of the feature in the corresponing image in the pyramid.
dog_pyr | Pyramid of images. | |
octvs | Number of considered octaves. | |
intvls | Number of intervales in octaves. | |
row | The row of the feature in the original image. | |
col | The column of the feature in the original image. |
void mrpt::vision::CFeatureExtraction::getTimesExtrema | ( | void * | dog_pyr, | |
int | octvs, | |||
int | intvls, | |||
float | row, | |||
float | col, | |||
unsigned int & | nMin, | |||
unsigned int & | nMax | |||
) | [private] |
Gets the number of times that a point in the image is higher or lower than the surroundings in the image-scale space.
dog_pyr | Pyramid of images. | |
octvs | Number of considered octaves. | |
intvls | Number of intervales in octaves. | |
row | The row of the feature in the original image. | |
col | The column of the feature in the original image. | |
nMin | [out]: Times that the feature is lower than the surroundings. | |
nMax | [out]: Times that the feature is higher than the surroundings. |
void mrpt::vision::CFeatureExtraction::insertCvSeqInCFeatureList | ( | void * | features, | |
CFeatureList & | list, | |||
unsigned int | init_ID = 0 | |||
) | [private] |
Append a sequence of openCV features into an MRPT feature list.
features | The sequence of features. | |
list | [in-out] The list of MRPT features. | |
init_ID | [in] The initial ID for the new features. |
bool mrpt::vision::CFeatureExtraction::launchExternalApp | ( | char * | command | ) | [private] |
Launch an external process (for internal use only).
command | [in] The char array containing the command (with parameters) |
void mrpt::vision::CFeatureExtraction::my_adjust_for_img_dbl | ( | void * | features | ) | [private] |
Adjust scale if the image was initially doubled.
features | The sequence of features. |
void* mrpt::vision::CFeatureExtraction::my_scale_space_extrema | ( | CFeatureList & | featList, | |
void * | dog_pyr, | |||
int | octvs, | |||
int | intvls, | |||
double | contr_thr, | |||
int | curv_thr, | |||
void * | storage | |||
) | [private] |
Computes extrema in the scale space.
dog_pyr | Pyramid of images. | |
octvs | Number of considered octaves. | |
intvls | Number of intervales in octaves. |
void mrpt::vision::CFeatureExtraction::selectGoodFeaturesKLT | ( | const CMRPTImage & | inImg, | |
CFeatureList & | feats, | |||
unsigned int | init_ID = 0 , |
|||
unsigned int | nDesiredFeatures = 0 , |
|||
void * | mask_ = NULL | |||
) | [private] |
Extract features from the image based on the Harris method.
img | The image from where to extract the images. | |
x | Vector containing the feature 'x' coordinates. | |
y | Vector containing the feature 'y' coordinates. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
x_min | Minimum x coordinate in the image where the extraction is performed. Default: All the image. | |
x_length | X Length of the region of interest. Default: All the image. | |
y_min | Minimum y coordinate in the image where the extraction is performed. Default: All the image. | |
y_length | X Length of the region of interest. Default: All the image. / void extractFeaturesHarris( const CMRPTImageFloat &img, vector_float &x, vector_float &y, int nDesiredFeatures = -1, unsigned int x_min = 0, unsigned int x_length = 0, unsigned int y_min = 0, unsigned int y_length = 0); / Extract features from the image based on the Harris method employing the classical algorithm. | |
img | The image from where to extract the images. | |
x | Vector containing the feature 'x' coordinates. | |
y | Vector containing the feature 'y' coordinates. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
x_min | Minimum x coordinate in the image where the extraction is performed. Default: All the image. | |
y_min | Minimum y coordinate in the image where the extraction is performed. Default: All the image. / void HarrisCommon( const CMRPTImageFloat &imgR, vector_float &x, vector_float &y, int nDesiredFeatures, unsigned int x_min, unsigned int y_min); / Extract features from the image based on the Harris method and distributing the features over the image. | |
img | The image from where to extract the images. | |
x | Vector containing the feature 'x' coordinates. | |
y | Vector containing the feature 'y' coordinates. | |
nDesiredFeatures | Number of features to be extracted. Default: authomatic. | |
x_min | Minimum x coordinate in the image where the extraction is performed. Default: All the image. | |
y_min | Minimum y coordinate in the image where the extraction is performed. Default: All the image. / void HarrisMask( const CMRPTImageFloat &imgR, vector_float &x, vector_float &y, int nDesiredFeatures, unsigned int x_min, unsigned int y_min); / Select good features using the openCV implementation of the KLT method. | |
img | (input) The image from where to select extract the images. | |
feats | (output) A complete list of features (containing a patch for each one of them). | |
nDesiredFeatures | (op. input) Number of features to be extracted. Default: authomatic. | |
omitPixels | (op. input) A mask for determining the ROI. (0: do not omit this pixel, 1: omit this pixel) |
struct MRPTDLLIMPEXP mrpt::vision::CFeatureExtraction::TOptions mrpt::vision::CFeatureExtraction::options |
Page generated by Doxygen 1.5.8 for MRPT 0.6.5 SVN:exported at Mon Jan 12 13:00:16 UTC 2009 |