The central class from which images can be analyzed in search of different kinds of interest points and descriptors computed for them.
To extract features from an image, create an instance of CFeatureExtraction, fill out its CFeatureExtraction::options field, including the algorithm to use (see CFeatureExtraction::TOptions::featsType), and call CFeatureExtraction::detectFeatures. This will return a set of features of the class mrpt::vision::CFeature, which include details for each interest point as well as the desired descriptors and/or patches.
By default, a 21x21 patch is extracted for each detected feature. If the patch is not needed, set patchSize to 0 in CFeatureExtraction::options
The implemented detection algorithms are (see CFeatureExtraction::TOptions::featsType):
Additionally, given a list of interest points onto an image, the following descriptors can be computed for each point by calling CFeatureExtraction::computeDescriptors :
Apart from the normal entry point detectFeatures(), these other low-level static methods are provided for convenience:
Definition at line 82 of file CFeatureExtraction.h.
#include <mrpt/vision/CFeatureExtraction.h>
Classes | |
struct | TOptions |
The set of parameters for all the detectors & descriptor algorithms. More... | |
Public Types | |
enum | TSIFTImplementation { LoweBinary = 0, CSBinary, VedaldiBinary, Hess, OpenCV } |
Public Member Functions | |
virtual | ~CFeatureExtraction () |
before calling "detectFeatures" More... | |
void | detectFeatures (const mrpt::img::CImage &img, CFeatureList &feats, const unsigned int init_ID=0, const unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the method defined in TOptions. More... | |
void | computeDescriptors (const mrpt::img::CImage &in_img, CFeatureList &inout_features, TDescriptorType in_descriptor_list) const |
Compute one (or more) descriptors for the given set of interest points onto the image, which may have been filled out manually or from detectFeatures. More... | |
Static Public Member Functions | |
Static methods with low-level detector functionality | |
static void | detectFeatures_SSE2_FASTER9 (const mrpt::img::CImage &img, TSimpleFeatureList &corners, const int threshold=20, bool append_to_list=false, uint8_t octave=0, std::vector< size_t > *out_feats_index_by_row=nullptr) |
A SSE2-optimized implementation of FASTER-9 (requires img to be grayscale). More... | |
static void | detectFeatures_SSE2_FASTER10 (const mrpt::img::CImage &img, TSimpleFeatureList &corners, const int threshold=20, bool append_to_list=false, uint8_t octave=0, std::vector< size_t > *out_feats_index_by_row=nullptr) |
Just like detectFeatures_SSE2_FASTER9() for another version of the detector. More... | |
static void | detectFeatures_SSE2_FASTER12 (const mrpt::img::CImage &img, TSimpleFeatureList &corners, const int threshold=20, bool append_to_list=false, uint8_t octave=0, std::vector< size_t > *out_feats_index_by_row=nullptr) |
Just like detectFeatures_SSE2_FASTER9() for another version of the detector. More... | |
Public Attributes | |
TOptions | options |
Set all the parameters of the desired method here. More... | |
Private Member Functions | |
void | internal_computeSiftDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute the SIFT descriptor of the provided features into the input image. More... | |
void | internal_computeSurfDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute the SURF descriptor of the provided features into the input image. More... | |
void | internal_computeORBDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute the ORB descriptor of the provided features into the input image. More... | |
void | internal_computeSpinImageDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute the intensity-domain spin images descriptor of the provided features into the input image. More... | |
void | internal_computePolarImageDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute a polar-image descriptor of the provided features into the input image. More... | |
void | internal_computeLogPolarImageDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute a log-polar image descriptor of the provided features into the input image. More... | |
void | internal_computeBLDLineDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute a BLD descriptor of the provided features into the input image. More... | |
void | internal_computeLATCHDescriptors (const mrpt::img::CImage &in_img, CFeatureList &in_features) const |
Compute a LATCH descriptor of the provided features into the input image. More... | |
void | extractFeaturesKLT (const mrpt::img::CImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the KLT method. More... | |
void | extractFeaturesBCD (const mrpt::img::CImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the BCD method. More... | |
void | extractFeaturesSIFT (const mrpt::img::CImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the SIFT method. More... | |
void | extractFeaturesORB (const mrpt::img::CImage &img, CFeatureList &feats, const unsigned int init_ID=0, const unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the ORB method. More... | |
void | extractFeaturesSURF (const mrpt::img::CImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the SURF method. More... | |
void | extractFeaturesFAST (const mrpt::img::CImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI(), const mrpt::math::CMatrixBool *mask=nullptr) const |
Extract features from the image based on the FAST method. More... | |
void | extractFeaturesFASTER_N (const int N, const mrpt::img::CImage &img, CFeatureList &feats, unsigned int init_ID=0, unsigned int nDesiredFeatures=0, const TImageROI &ROI=TImageROI()) const |
Edward's "FASTER & Better" detector, N=9,10,12. More... | |
void | extractFeaturesAKAZE (const mrpt::img::CImage &inImg, CFeatureList &feats, unsigned int init_ID, unsigned int nDesiredFeatures, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the AKAZE method. More... | |
void | extractFeaturesLSD (const mrpt::img::CImage &inImg, CFeatureList &feats, unsigned int init_ID, unsigned int nDesiredFeatures, const TImageROI &ROI=TImageROI()) const |
Extract features from the image based on the LSD method. More... | |
void * | my_scale_space_extrema (CFeatureList &featList, void *dog_pyr, int octvs, int intvls, double contr_thr, int curv_thr, void *storage) const |
Computes extrema in the scale space. More... | |
void | my_adjust_for_img_dbl (void *features) const |
Adjust scale if the image was initially doubled. More... | |
void | getTimesExtrema (void *dog_pyr, int octvs, int intvls, float row, float col, unsigned int &nMin, unsigned int &nMax) const |
Gets the number of times that a point in the image is higher or lower than the surroundings in the image-scale space. More... | |
double | getLaplacianValue (void *dog_pyr, int octvs, int intvls, float row, float col) const |
Computes the Laplacian value of the feature in the corresponing image in the pyramid. More... | |
void | insertCvSeqInCFeatureList (void *features, CFeatureList &list, unsigned int init_ID=0) const |
Append a sequence of openCV features into an MRPT feature list. More... | |
void | convertCvSeqInCFeatureList (void *features, CFeatureList &list, unsigned int init_ID=0, const TImageROI &ROI=TImageROI()) const |
Converts a sequence of openCV features into an MRPT feature list. More... | |
Enumerator | |
---|---|
LoweBinary | |
CSBinary | |
VedaldiBinary | |
Hess | |
OpenCV |
Definition at line 85 of file CFeatureExtraction.h.
|
virtual |
before calling "detectFeatures"
Virtual destructor.
Definition at line 24 of file CFeatureExtraction_common.cpp.
void CFeatureExtraction::computeDescriptors | ( | const mrpt::img::CImage & | in_img, |
CFeatureList & | inout_features, | ||
TDescriptorType | in_descriptor_list | ||
) | const |
Compute one (or more) descriptors for the given set of interest points onto the image, which may have been filled out manually or from detectFeatures.
in_img | (input) The image from where to compute the descriptors. |
inout_features | (input/output) The list of features whose descriptors are going to be computed. |
in_descriptor_list | (input) The bitwise OR of one or several descriptors defined in TDescriptorType. |
Each value in "in_descriptor_list" represents one descriptor to be computed, for example:
Definition at line 234 of file CFeatureExtraction_common.cpp.
References mrpt::vision::descBLD, mrpt::vision::descLATCH, mrpt::vision::descLogPolarImages, mrpt::vision::descORB, mrpt::vision::descPolarImages, mrpt::vision::descSIFT, mrpt::vision::descSpinImages, mrpt::vision::descSURF, MRPT_END, MRPT_START, and THROW_EXCEPTION_FMT.
Referenced by mrpt::slam::COccupancyGridMapFeatureExtractor::uncached_extractFeatures().
|
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). |
Definition at line 766 of file CFeatureExtraction_SIFT.cpp.
References ASSERT_, mrpt::vision::CFeatureList::clear(), feature::d, feature::descr, mrpt::vision::featSIFT, feature::ori, mrpt::vision::CFeatureList::push_back(), feature::scl, THROW_EXCEPTION, feature::x, mrpt::vision::TImageROI::xMax, mrpt::vision::TImageROI::xMin, feature::y, mrpt::vision::TImageROI::yMax, and mrpt::vision::TImageROI::yMin.
void CFeatureExtraction::detectFeatures | ( | const mrpt::img::CImage & | img, |
CFeatureList & | feats, | ||
const unsigned int | init_ID = 0 , |
||
const unsigned int | nDesiredFeatures = 0 , |
||
const TImageROI & | ROI = TImageROI() |
||
) | const |
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 if options.patchsize > 0). |
nDesiredFeatures | (op. input) Number of features to be extracted. Default: all possible. |
Definition at line 38 of file CFeatureExtraction_common.cpp.
References begin(), mrpt::vision::CFeatureList::clear(), mrpt::vision::featAKAZE, mrpt::vision::featBCD, mrpt::vision::featFAST, mrpt::vision::featFASTER10, mrpt::vision::featFASTER12, mrpt::vision::featFASTER9, mrpt::vision::featHarris, mrpt::vision::featKLT, mrpt::vision::featLSD, mrpt::vision::featORB, mrpt::vision::featSIFT, mrpt::vision::featSURF, MRPT_TODO, mrpt::vision::CFeatureList::push_back(), mrpt::system::CTicTac::Tac(), THROW_EXCEPTION, mrpt::system::CTicTac::Tic(), mrpt::vision::TImageROI::xMax, mrpt::vision::TImageROI::xMin, mrpt::vision::TImageROI::yMax, and mrpt::vision::TImageROI::yMin.
Referenced by mrpt::maps::CLandmarksMap::loadSiftFeaturesFromImageObservation(), mrpt::vision::StereoObs2BRObs(), and mrpt::slam::COccupancyGridMapFeatureExtractor::uncached_extractFeatures().
|
private |
Extract features from the image based on the AKAZE 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. |
Definition at line 31 of file CFeatureExtraction_AKAZE.cpp.
References mrpt::vision::CFeatureList::clear(), mrpt::img::CImage::extract_patch(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::vision::featAKAZE, mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), MRPT_END, MRPT_START, MRPT_UNUSED_PARAM, mrpt::vision::CFeatureList::push_back(), mrpt::round(), and THROW_EXCEPTION.
|
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. |
Definition at line 294 of file CFeatureExtraction_common.cpp.
References MRPT_UNUSED_PARAM, and THROW_EXCEPTION.
|
private |
Extract features from the image based on the FAST 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. |
Definition at line 29 of file CFeatureExtraction_FAST.cpp.
References ASSERT_, mrpt::vision::CFeatureList::clear(), mrpt::img::CImage::extract_patch(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::vision::featFAST, mrpt::math::CMatrixTemplate< T >::fillAll(), mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), mrpt::img::CImage::KLT_response(), MRPT_END, MRPT_START, MRPT_UNUSED_PARAM, ones(), mrpt::vision::CFeatureList::push_back(), mrpt::round(), mrpt::math::CMatrixTemplate< T >::set_unsafe(), and THROW_EXCEPTION.
|
private |
Edward's "FASTER & Better" detector, N=9,10,12.
Definition at line 83 of file CFeatureExtraction_FASTER.cpp.
References mrpt::vision::CFeatureList::clear(), mrpt::img::CImage::extract_patch(), fast_corner_detect_10(), fast_corner_detect_12(), fast_corner_detect_9(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::vision::featFASTER10, mrpt::vision::featFASTER12, mrpt::vision::featFASTER9, mrpt::math::CMatrixTemplate< T >::fillAll(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), MRPT_END, MRPT_START, MRPT_UNUSED_PARAM, mrpt::vision::TSimpleFeature_templ< PIXEL_COORD_TYPE >::pt, mrpt::vision::CFeatureList::push_back(), mrpt::vision::TSimpleFeature_templ< PIXEL_COORD_TYPE >::response, mrpt::round(), mrpt::math::CMatrixTemplate< T >::set_unsafe(), and THROW_EXCEPTION.
|
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. |
Definition at line 27 of file CFeatureExtraction_harris_KLT.cpp.
References mrpt::vision::CFeatureList::clear(), mrpt::img::CImage::extract_patch(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::vision::featHarris, mrpt::vision::featKLT, mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), min, MRPT_END, MRPT_START, mrpt::vision::CFeatureList::push_back(), mrpt::round(), mrpt::vision::status_TRACKED, mrpt::system::CTicTac::Tac(), THROW_EXCEPTION, and mrpt::system::CTicTac::Tic().
|
private |
Extract features from the image based on the LSD 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. |
Definition at line 43 of file CFeatureExtraction_LSD_BLD.cpp.
References mrpt::vision::CFeatureList::clear(), mrpt::img::CImage::extract_patch(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::vision::featLSD, mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), MRPT_END, MRPT_START, ones(), mrpt::vision::CFeatureList::push_back(), mrpt::round(), and THROW_EXCEPTION.
|
private |
Extract features from the image based on the ORB 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. |
Definition at line 28 of file CFeatureExtraction_ORB.cpp.
References mrpt::vision::CFeatureList::clear(), mrpt::img::CImage::extract_patch(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::vision::featORB, mrpt::math::CMatrixTemplate< T >::fillAll(), mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), min, MRPT_END, MRPT_START, MRPT_UNUSED_PARAM, mrpt::vision::CFeatureList::push_back(), mrpt::vision::CFeatureList::resize(), mrpt::round(), mrpt::math::CMatrixTemplate< T >::set_unsafe(), mrpt::vision::CFeatureList::size(), and THROW_EXCEPTION.
|
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. |
Definition at line 74 of file CFeatureExtraction_SIFT.cpp.
References ASSERT_, mrpt::vision::CFeatureList::begin(), mrpt::vision::CFeatureList::clear(), mrpt::vision::CFeatureList::end(), mrpt::img::CImage::extract_patch(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::system::os::fclose(), mrpt::vision::featSIFT, mrpt::system::os::fopen(), mrpt::format(), mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), mrpt::system::launchProcess(), mrpt::math::MATRIX_FORMAT_FIXED, mrpt::system::os::memcpy(), mrpt::vision::CFeatureList::push_back(), mrpt::vision::CFeatureList::resize(), mrpt::round(), mrpt::img::CImage::saveToFile(), SIFT_DESCR_HIST_BINS, SIFT_DESCR_WIDTH, SIFT_IMG_DBL, SIFT_INTVLS, SIFT_SIGMA, mrpt::vision::CFeatureList::size(), mrpt::system::os::strcat(), mrpt::system::os::strcpy(), mrpt::img::CImage::swap(), THROW_EXCEPTION, mrpt::vision::TImageROI::xMax, mrpt::vision::TImageROI::xMin, mrpt::vision::TImageROI::yMax, and mrpt::vision::TImageROI::yMin.
|
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. |
Definition at line 45 of file CFeatureExtraction_SURF.cpp.
References mrpt::vision::CFeatureList::clear(), mrpt::img::CImage::extract_patch(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::vision::featSURF, mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), min, mrpt::vision::CFeatureList::push_back(), mrpt::round(), and THROW_EXCEPTION.
|
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. |
Definition at line 956 of file CFeatureExtraction_SIFT.cpp.
References detection_data::intvl, detection_data::octv, pixval32f(), and THROW_EXCEPTION.
|
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. |
Definition at line 991 of file CFeatureExtraction_SIFT.cpp.
References detection_data::intvl, detection_data::octv, pixval32f(), THROW_EXCEPTION, and val.
|
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. |
Definition at line 807 of file CFeatureExtraction_SIFT.cpp.
References ASSERT_, mrpt::vision::CFeatureList::begin(), feature::d, feature::descr, mrpt::vision::CFeatureList::end(), feature::ori, feature::scl, THROW_EXCEPTION, feature::x, and feature::y.
|
private |
Compute a BLD 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. |
Definition at line 180 of file CFeatureExtraction_LSD_BLD.cpp.
References mrpt::vision::CFeatureList::begin(), mrpt::vision::CFeatureList::empty(), mrpt::vision::CFeatureList::end(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::img::CImage::getAs(), ones(), mrpt::vision::CFeatureList::size(), and THROW_EXCEPTION.
|
private |
Compute a LATCH 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. |
Definition at line 51 of file CFeatureExtraction_LATCH.cpp.
References mrpt::vision::CFeatureList::begin(), mrpt::vision::CFeatureList::empty(), mrpt::vision::CFeatureList::end(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::img::CImage::getAs(), MRPT_END, MRPT_START, mrpt::vision::CFeatureList::size(), and THROW_EXCEPTION.
|
private |
Compute a log-polar image 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. |
Definition at line 26 of file CFeatureExtraction_logPolarImg.cpp.
References ASSERT_, mrpt::vision::CFeatureList::begin(), mrpt::vision::CFeatureList::end(), mrpt::img::CImage::getAs(), mrpt::img::CImage::getAsMatrix(), mrpt::img::CImage::getChannelCount(), MRPT_END, MRPT_START, and THROW_EXCEPTION.
|
private |
Compute the ORB 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. |
Definition at line 238 of file CFeatureExtraction_ORB.cpp.
References mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::img::CImage::getAs(), mrpt::vision::CFeatureList::resize(), mrpt::vision::CFeatureList::size(), and THROW_EXCEPTION.
|
private |
Compute a polar-image 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. |
Definition at line 127 of file CFeatureExtraction_polarImg.cpp.
References ASSERT_, mrpt::vision::CFeatureList::begin(), mrpt::vision::CFeatureList::end(), mrpt::img::CImage::getAs(), mrpt::img::CImage::getAsMatrix(), mrpt::img::CImage::getChannelCount(), MRPT_END, MRPT_START, my_cvLinearPolar(), and THROW_EXCEPTION.
|
private |
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. |
Definition at line 570 of file CFeatureExtraction_SIFT.cpp.
References ASSERT_, mrpt::vision::CFeatureList::begin(), mrpt::vision::CFeatureList::end(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::system::os::fclose(), mrpt::vision::featSIFT, mrpt::system::os::fopen(), mrpt::system::os::fprintf(), mrpt::img::CImage::getAs(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), mrpt::system::launchProcess(), MRPT_END, MRPT_START, mrpt::img::CImage::saveToFile(), SIFT_DESCR_HIST_BINS, SIFT_DESCR_WIDTH, SIFT_IMG_DBL, SIFT_INTVLS, SIFT_SIGMA, mrpt::vision::CFeatureList::size(), mrpt::system::os::strcat(), mrpt::system::os::strcpy(), and THROW_EXCEPTION.
|
private |
Compute the intensity-domain spin images 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. |
Definition at line 26 of file CFeatureExtraction_spinImg.cpp.
References ASSERT_, mrpt::vision::CFeatureList::begin(), mrpt::img::CImage::drawCircle(), mrpt::vision::CFeatureList::end(), mrpt::format(), mrpt::img::CImage::get_unsafe(), mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), mrpt::img::CImage::isColor(), min, MRPT_END, MRPT_START, R, mrpt::round(), mrpt::img::CImage::saveToFile(), and mrpt::square().
|
private |
Compute the SURF 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. |
Definition at line 157 of file CFeatureExtraction_SURF.cpp.
References mrpt::vision::CFeatureList::begin(), mrpt::vision::CFeatureList::empty(), mrpt::vision::CFeatureList::end(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::img::CImage::getAs(), mrpt::vision::CFeatureList::size(), and THROW_EXCEPTION.
Adjust scale if the image was initially doubled.
features | The sequence of features. |
Definition at line 847 of file CFeatureExtraction_SIFT.cpp.
References feature::scl, and THROW_EXCEPTION.
|
private |
Computes extrema in the scale space.
dog_pyr | Pyramid of images. |
octvs | Number of considered octaves. |
intvls | Number of intervales in octaves. |
Definition at line 869 of file CFeatureExtraction_SIFT.cpp.
References mrpt::vision::CFeatureList::begin(), detection_data::c, mrpt::vision::CFeatureList::end(), feat_detection_data, feature::img_pt, detection_data::intvl, MRPT_UNUSED_PARAM, detection_data::octv, detection_data::r, SIFT_SIGMA, detection_data::subintvl, THROW_EXCEPTION, val, feature::x, and feature::y.
TOptions mrpt::vision::CFeatureExtraction::options |
Set all the parameters of the desired method here.
Definition at line 317 of file CFeatureExtraction.h.
Referenced by mrpt::maps::CLandmarksMap::loadSiftFeaturesFromImageObservation(), and mrpt::slam::COccupancyGridMapFeatureExtractor::uncached_extractFeatures().
Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST |