#include <SiftPyramid.h>
Public Types | |
enum | { DATA_GAUSSIAN = 0, DATA_DOG = 1, DATA_KEYPOINT = 2, DATA_GRAD = 3, DATA_ROT = 4, DATA_NUM = 5 } |
enum | { SIFT_SKIP_FILTERING = 0x01, SIFT_SKIP_DETECTION = 0x02, SIFT_SKIP_ORIENTATION = 0x04, SIFT_RECT_DESCRIPTION = 0x08 } |
Public Member Functions | |
virtual void | BuildPyramid (GLTexInput *input)=0 |
virtual void | CleanUpAfterSIFT () |
void | CleanupBeforeSIFT () |
virtual void | ComputeGradient ()=0 |
virtual void | CopyFeatureVector (float *keys, float *descriptors) |
virtual void | DetectKeypointsEX ()=0 |
virtual void | DownloadKeypoints ()=0 |
virtual void | GenerateFeatureDisplayVBO ()=0 |
virtual void | GenerateFeatureList ()=0 |
virtual void | GenerateFeatureListCPU ()=0 |
virtual void | GenerateFeatureListTex ()=0 |
virtual void | GetFeatureDescriptors ()=0 |
const GLuint * | GetFeatureDipslayVBO () |
int | GetFeatureNum () |
virtual void | GetFeatureOrientations ()=0 |
int | GetHistLevelNum () |
const int * | GetLevelFeatureNum () |
virtual GLTexImage * | GetLevelTexture (int octave, int level)=0 |
virtual GLTexImage * | GetLevelTexture (int octave, int level, int dataName)=0 |
const GLuint * | GetPointDisplayVBO () |
void | GetPyramidTiming (float *timing) |
virtual void | GetSimplifiedOrientation ()=0 |
int | GetSucessStatus () |
virtual void | InitPyramid (int w, int h, int ds=0)=0 |
virtual int | IsUsingRectDescription () |
virtual void | ReshapeFeatureListCPU ()=0 |
virtual void | ResizePyramid (int w, int h)=0 |
virtual void | RunSIFT (GLTexInput *input) |
virtual void | SaveSIFT (const char *szFileName) |
void | SetFailStatus () |
inline functions, shared by all implementations | |
virtual void | SetKeypointList (int num, const float *keys, int run_on_current, int skip_orientation) |
SiftPyramid (SiftParam &sp) | |
virtual | ~SiftPyramid () |
Static Public Member Functions | |
static int | GetRequiredOctaveNum (int inputsz) |
Public Attributes | |
int | _alignment |
int | _allocated |
vector< float > | _descriptor_buffer |
int | _down_sample_factor |
vector< float > | _keypoint_buffer |
int | _octave_min |
int | _octave_num |
int | _pyramid_height |
int | _pyramid_octave_first |
int | _pyramid_octave_num |
int | _pyramid_width |
int | _siftgpu_failed |
float | _timing [8] |
Protected Attributes | |
int | _existing_keypoints |
GLuint * | _featureDisplayVBO |
int | _featureNum |
GLuint * | _featurePointVBO |
float * | _histo_buffer |
int | _hpLevelNum |
vector< int > | _keypoint_index |
int * | _levelFeatureNum |
SiftParam & | param |
Private Member Functions | |
void | LimitFeatureCount (int have_keylist=0) |
void | PrepareBuffer () |
Definition at line 49 of file SiftPyramid.h.
anonymous enum |
Definition at line 52 of file SiftPyramid.h.
anonymous enum |
Definition at line 60 of file SiftPyramid.h.
SiftPyramid::SiftPyramid | ( | SiftParam & | sp | ) | [inline] |
Definition at line 144 of file SiftPyramid.h.
virtual SiftPyramid::~SiftPyramid | ( | ) | [inline, virtual] |
Definition at line 165 of file SiftPyramid.h.
virtual void SiftPyramid::BuildPyramid | ( | GLTexInput * | input | ) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
virtual void SiftPyramid::CleanUpAfterSIFT | ( | ) | [inline, virtual] |
Reimplemented in PyramidGL.
Definition at line 126 of file SiftPyramid.h.
void SiftPyramid::CleanupBeforeSIFT | ( | ) | [inline] |
Definition at line 139 of file SiftPyramid.h.
virtual void SiftPyramid::ComputeGradient | ( | ) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
void SiftPyramid::CopyFeatureVector | ( | float * | keys, |
float * | descriptors | ||
) | [virtual] |
Definition at line 238 of file SiftPyramid.cpp.
virtual void SiftPyramid::DetectKeypointsEX | ( | ) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
virtual void SiftPyramid::DownloadKeypoints | ( | ) | [pure virtual] |
Implemented in PyramidGL.
virtual void SiftPyramid::GenerateFeatureDisplayVBO | ( | ) | [pure virtual] |
Implemented in PyramidGL.
virtual void SiftPyramid::GenerateFeatureList | ( | ) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
virtual void SiftPyramid::GenerateFeatureListCPU | ( | ) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
virtual void SiftPyramid::GenerateFeatureListTex | ( | ) | [pure virtual] |
Implemented in PyramidGL.
virtual void SiftPyramid::GetFeatureDescriptors | ( | ) | [pure virtual] |
Implemented in PyramidGL.
const GLuint* SiftPyramid::GetFeatureDipslayVBO | ( | ) | [inline] |
Definition at line 135 of file SiftPyramid.h.
int SiftPyramid::GetFeatureNum | ( | ) | [inline] |
Definition at line 133 of file SiftPyramid.h.
virtual void SiftPyramid::GetFeatureOrientations | ( | ) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
int SiftPyramid::GetHistLevelNum | ( | ) | [inline] |
Definition at line 134 of file SiftPyramid.h.
const int* SiftPyramid::GetLevelFeatureNum | ( | ) | [inline] |
Definition at line 137 of file SiftPyramid.h.
virtual GLTexImage* SiftPyramid::GetLevelTexture | ( | int | octave, |
int | level | ||
) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
virtual GLTexImage* SiftPyramid::GetLevelTexture | ( | int | octave, |
int | level, | ||
int | dataName | ||
) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
const GLuint* SiftPyramid::GetPointDisplayVBO | ( | ) | [inline] |
Definition at line 136 of file SiftPyramid.h.
void SiftPyramid::GetPyramidTiming | ( | float * | timing | ) | [inline] |
Definition at line 138 of file SiftPyramid.h.
int SiftPyramid::GetRequiredOctaveNum | ( | int | inputsz | ) | [static] |
Definition at line 230 of file SiftPyramid.cpp.
virtual void SiftPyramid::GetSimplifiedOrientation | ( | ) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
int SiftPyramid::GetSucessStatus | ( | ) | [inline] |
Definition at line 132 of file SiftPyramid.h.
virtual void SiftPyramid::InitPyramid | ( | int | w, |
int | h, | ||
int | ds = 0 |
||
) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
virtual int SiftPyramid::IsUsingRectDescription | ( | ) | [inline, virtual] |
Reimplemented in PyramidPacked.
Definition at line 127 of file SiftPyramid.h.
void SiftPyramid::LimitFeatureCount | ( | int | have_keylist = 0 | ) | [inline, private] |
Definition at line 170 of file SiftPyramid.cpp.
void SiftPyramid::PrepareBuffer | ( | ) | [inline, private] |
Definition at line 213 of file SiftPyramid.cpp.
virtual void SiftPyramid::ReshapeFeatureListCPU | ( | ) | [pure virtual] |
Implemented in PyramidGL.
virtual void SiftPyramid::ResizePyramid | ( | int | w, |
int | h | ||
) | [pure virtual] |
Implemented in PyramidPacked, and PyramidNaive.
void SiftPyramid::RunSIFT | ( | GLTexInput * | input | ) | [virtual] |
Definition at line 49 of file SiftPyramid.cpp.
void SiftPyramid::SaveSIFT | ( | const char * | szFileName | ) | [virtual] |
Definition at line 264 of file SiftPyramid.cpp.
void SiftPyramid::SetFailStatus | ( | ) | [inline] |
inline functions, shared by all implementations
Definition at line 131 of file SiftPyramid.h.
void SiftPyramid::SetKeypointList | ( | int | num, |
const float * | keys, | ||
int | run_on_current, | ||
int | skip_orientation | ||
) | [virtual] |
copy the keypoints
Definition at line 244 of file SiftPyramid.cpp.
Definition at line 93 of file SiftPyramid.h.
Definition at line 92 of file SiftPyramid.h.
vector<float> SiftPyramid::_descriptor_buffer |
Definition at line 97 of file SiftPyramid.h.
Definition at line 91 of file SiftPyramid.h.
int SiftPyramid::_existing_keypoints [protected] |
Definition at line 73 of file SiftPyramid.h.
GLuint* SiftPyramid::_featureDisplayVBO [protected] |
Definition at line 76 of file SiftPyramid.h.
int SiftPyramid::_featureNum [protected] |
Definition at line 70 of file SiftPyramid.h.
GLuint* SiftPyramid::_featurePointVBO [protected] |
Definition at line 77 of file SiftPyramid.h.
float* SiftPyramid::_histo_buffer [protected] |
Definition at line 71 of file SiftPyramid.h.
int SiftPyramid::_hpLevelNum [protected] |
Definition at line 68 of file SiftPyramid.h.
vector<float> SiftPyramid::_keypoint_buffer |
Definition at line 96 of file SiftPyramid.h.
vector<int> SiftPyramid::_keypoint_index [protected] |
Definition at line 74 of file SiftPyramid.h.
int* SiftPyramid::_levelFeatureNum [protected] |
Definition at line 69 of file SiftPyramid.h.
Definition at line 83 of file SiftPyramid.h.
Definition at line 85 of file SiftPyramid.h.
Definition at line 90 of file SiftPyramid.h.
Definition at line 88 of file SiftPyramid.h.
Definition at line 87 of file SiftPyramid.h.
Definition at line 89 of file SiftPyramid.h.
Definition at line 94 of file SiftPyramid.h.
float SiftPyramid::_timing[8] |
Definition at line 80 of file SiftPyramid.h.
SiftParam& SiftPyramid::param [protected] |
Definition at line 67 of file SiftPyramid.h.