#include <pol_locator_hough.h>
Inheritance diagram for mimas::pol_locator_hough:
Public Types | |
typedef boost::numeric::ublas::vector< double > | Vector |
Public Member Functions | |
pol_locator_hough () | |
pol_locator_hough (double t) | |
~pol_locator_hough () | |
virtual void | init (int numdims,...) |
Provide the standard interface defined functions. | |
virtual void | addEntry (double weight,...) |
virtual pol_match_ptr_list | getMatches () |
void | setOffset (double dx, double dy) |
Protected Member Functions | |
int | calcGaussBoxSize (double sigma, double accuracy) |
as in hough_transform.cc. | |
void | setLocation (int x, int y, double ca, double sa) |
make an entry at position x,y with weight w and angle a ca = w*cos(a) and sa = w*sin(a) | |
void | initFastGauss (double sigma, double precision) |
in order to plot gauss points faster, we calculate the required distribution first. | |
void | addGaussPointFast (const Vector &posn, double w, double angle) |
plot a point as position posn with weight 'w' and angle 'angle' replaced by addEntry now 200212 | |
Protected Attributes | |
image< double > * | bell_curve |
gauss curve. used to speed up plotting entries. | |
double | thres |
used to separate 'peaks' from the background noise. value depends on number of lines in the model | |
double | ox |
double | oy |
An image of pol_angle pixels. Essentially a hough transform used to assimilate estimates of the possible position and orientation of a model in a scene.
Definition at line 91 of file pol_locator_hough.h.
typedef boost::numeric::ublas::vector< double > mimas::pol_locator_hough::Vector |
Definition at line 99 of file pol_locator_hough.h.
mimas::pol_locator_hough::pol_locator_hough | ( | ) | [inline] |
Definition at line 100 of file pol_locator_hough.h.
mimas::pol_locator_hough::pol_locator_hough | ( | double | t | ) | [inline] |
Definition at line 103 of file pol_locator_hough.h.
mimas::pol_locator_hough::~pol_locator_hough | ( | ) | [inline] |
as in hough_transform.cc.
used to calculate the size of the gaussian dist. required to represent a curve with sigma 'sigma' to the accuracy given
make an entry at position x,y with weight w and angle a ca = w*cos(a) and sa = w*sin(a)
in order to plot gauss points faster, we calculate the required distribution first.
this assumes that all points will be equally accurate, but it's fast.
void mimas::pol_locator_hough::addGaussPointFast | ( | const Vector & | posn, | |
double | w, | |||
double | angle | |||
) | [protected] |
plot a point as position posn with weight 'w' and angle 'angle' replaced by addEntry now 200212
virtual void mimas::pol_locator_hough::init | ( | int | numdims, | |
... | ||||
) | [virtual] |
Provide the standard interface defined functions.
Implements mimas::pol_locator.
Reimplemented in mimas::pol_locator_scale.
virtual void mimas::pol_locator_hough::addEntry | ( | double | weight, | |
... | ||||
) | [virtual] |
virtual pol_match_ptr_list mimas::pol_locator_hough::getMatches | ( | ) | [virtual] |
image<double>* mimas::pol_locator_hough::bell_curve [protected] |
gauss curve. used to speed up plotting entries.
Definition at line 94 of file pol_locator_hough.h.
Referenced by ~pol_locator_hough().
double mimas::pol_locator_hough::thres [protected] |
used to separate 'peaks' from the background noise. value depends on number of lines in the model
Definition at line 95 of file pol_locator_hough.h.
double mimas::pol_locator_hough::ox [protected] |
double mimas::pol_locator_hough::oy [protected] |