MVE - Multi-View Environment mve-devel
|
Implementation of the SURF feature detector and descriptor as described in: More...
#include <surf.h>
Classes | |
struct | Descriptor |
Representation of a SURF descriptor. More... | |
struct | Keypoint |
Representation of a SURF keypoint. More... | |
struct | Octave |
struct | Options |
SURF options. More... | |
Public Types | |
typedef std::vector< Descriptor > | Descriptors |
typedef std::vector< Keypoint > | Keypoints |
Public Member Functions | |
Surf (Options const &options) | |
Descriptors const & | get_descriptors (void) const |
Returns the list of descriptors. | |
Keypoints const & | get_keypoints (void) const |
Returns the list of keypoints. | |
void | process (void) |
Starts Surf keypoint detection and descriptor extraction. | |
void | set_image (mve::ByteImage::ConstPtr image) |
Sets the input image. | |
Protected Types | |
typedef std::vector< Octave > | Octaves |
typedef mve::Image< SatType > | SatImage |
SAT image type. | |
typedef int64_t | SatType |
Signed type for the SAT image values. | |
Protected Member Functions | |
void | check_maximum (int o, int s, int x, int y) |
void | create_octaves (void) |
void | create_response_map (int o, int k) |
void | descriptor_assignment (void) |
bool | descriptor_computation (Descriptor *descr, bool upright) |
bool | descriptor_orientation (Descriptor *descr) |
void | extrema_detection (void) |
void | filter_dx_dy (int x, int y, int fs, float *dx, float *dy) |
SatType | filter_dxx (int fs, int x, int y) |
SatType | filter_dxy (int fs, int x, int y) |
SatType | filter_dyy (int fs, int x, int y) |
bool | keypoint_localization (Surf::Keypoint *kp) |
void | keypoint_localization_and_filtering (void) |
Implementation of the SURF feature detector and descriptor as described in:
Speeded-Up Robust Features (SURF) by Herbert Bay, Andreas Ess, Tinne Tuytelaars, and Luc Van Gool
Since SURF relies on summed area tables (SAT), it can currently only be used with integer images, in particular byte images. For floating point data types, SATs may be inaccurate due to possible large values in the lower-right region of the SAT.
typedef std::vector<Descriptor> sfm::Surf::Descriptors |
typedef std::vector<Keypoint> sfm::Surf::Keypoints |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
inline |
|
inline |
|
protected |
|
protected |
void sfm::Surf::process | ( | void | ) |
void sfm::Surf::set_image | ( | mve::ByteImage::ConstPtr | image | ) |