Classes | |
struct | Acc |
struct | AccCmp |
struct | Model |
struct | ModelTableEntry |
struct | TableEntry |
Public Member Functions | |
virtual | ~GeometricHashing () |
Destructor. | |
void | addModel (const Model &model) |
Add a model to search for. | |
std::vector< Point2D< float > > | changeBasis (const std::vector< Point2D< int > > &featureLoc, int p1, int p2) |
Change basis based on p1 and p2. | |
std::vector< Point2D< float > > | changeBasis (const std::vector< Point2D< int > > &featureLoc, Point2D< int > tl, Point2D< int > br) |
void | insertToHashTable (const Point2D< float > loc, int p1, int p2, int modelId, Point3D< float > rot) |
Add a feature to hash table. | |
Image< TableEntry >::iterator | findInHash (const Point2D< float > &loc) |
Find features in the hash table. | |
std::vector< Acc > | getVotes (std::vector< Point2D< int > > &input) |
Get votes for a given input. | |
Image< PixRGB< byte > > | getHashTableImage () |
Show the hash table. | |
void | writeTable (const char *filename) |
Write hash table to disk. | |
void | readTable (const char *filename) |
Read table from disk. |
Definition at line 50 of file GeometricHashing.H.
GeometricHashing::~GeometricHashing | ( | ) | [virtual] |
Destructor.
Definition at line 58 of file GeometricHashing.C.
void GeometricHashing::addModel | ( | const Model & | model | ) |
Add a model to search for.
Definition at line 89 of file GeometricHashing.C.
References changeBasis(), Point2D< T >::i, and insertToHashTable().
std::vector< Point2D< float > > GeometricHashing::changeBasis | ( | const std::vector< Point2D< int > > & | featureLoc, | |
int | p1, | |||
int | p2 | |||
) |
Change basis based on p1 and p2.
Definition at line 311 of file GeometricHashing.C.
References sqrt(), and squareOf().
Referenced by addModel(), and getVotes().
Image< GeometricHashing::TableEntry >::iterator GeometricHashing::findInHash | ( | const Point2D< float > & | loc | ) |
Find features in the hash table.
Definition at line 134 of file GeometricHashing.C.
References Image< T >::beginw(), Image< T >::coordsOk(), Image< T >::getHeight(), Image< T >::getWidth(), and Point2D< T >::i.
Referenced by getVotes(), and insertToHashTable().
Show the hash table.
Definition at line 280 of file GeometricHashing.C.
References drawCircle(), Image< T >::getDims(), Point2D< T >::i, Image< T >::size(), and ZEROS.
std::vector< GeometricHashing::Acc > GeometricHashing::getVotes | ( | std::vector< Point2D< int > > & | input | ) |
Get votes for a given input.
Definition at line 212 of file GeometricHashing.C.
References changeBasis(), findInHash(), and Point2D< T >::i.
void GeometricHashing::insertToHashTable | ( | const Point2D< float > | loc, | |
int | p1, | |||
int | p2, | |||
int | modelId, | |||
Point3D< float > | rot | |||
) |
Add a feature to hash table.
Definition at line 115 of file GeometricHashing.C.
References findInHash().
Referenced by addModel().
void GeometricHashing::readTable | ( | const char * | filename | ) |
Read table from disk.
Definition at line 407 of file GeometricHashing.C.
References Image< T >::beginw(), Image< T >::getWidth(), height, and ZEROS.
void GeometricHashing::writeTable | ( | const char * | filename | ) |
Write hash table to disk.
Definition at line 376 of file GeometricHashing.C.
References Image< T >::getHeight(), Image< T >::getVal(), Image< T >::getWidth(), and height.