class Distribution More...
#include <Distribution.h>
Public Member Functions | |
void | calcLikelihood (int convergence=5) |
void | calcMean () |
Calculates weighted mean and stores it in m_meanParticle. | |
void | clear () |
Drops all particles of the ParticleList. | |
float | confidenceFunction (const float &m, const float &e) |
Functional for confidence value. | |
void | copy (ParticleList &list) |
Copy ParticleList representing distribution std::vector<Particle> | |
void | copyParticle (Particle &p, unsigned int id) |
Copy a particle from the distribution. | |
Distribution () | |
void | drawParticlesEdges (TrackerModel &model, Shader *shadeCompare, bool showparticles=false) |
void | drawParticlesTextured (TrackerModel &model, Shader *shadeCompare, bool showparticles=false) |
float | getC (int id) |
gets confidence level of a particle by id | |
float | getMaxC () |
Gets maximum confidence level of last likelihood measure. | |
float | getMaxW () |
Gets maximum weighted likelihood of last likelihood measure. | |
Particle | getMean () |
Gets weighted mean of likelihood distribution. | |
float | getMeanC () |
Gets mean confidence of last likelihood measure. | |
float | getMinC () |
Gets minimum confidence level of last likelihood measure. | |
Particle | getParticle (int id) |
Gets particle from distribution by id. | |
double | getVarianceC () |
Calculates variance confidence level of likelihood distribution. | |
double | getVariancePt () |
Calculates variance of pose of likelihood distribution. | |
float | getW (int id) |
Gets weighted likelihood of a particle by id. | |
void | normalizeW () |
Recalculates weights of particlelist to sum up to 1. | |
void | push_back (Particle p) |
Adds a particle to the ParticleList of the distribution. | |
int | size () |
Number of particles representing the distribution. | |
void | updateLikelihood (TrackerModel &model, Shader *shadeCompare, bool textured, int convergence=5, bool showparticles=false) |
Update confidence levels and weighted likelihoods of distribution. | |
void | updateLikelihood (TrackerModel &model, Shader *shadeCompare, TomGine::tgCamera *cam, Texture *tex_edge, int res=256) |
void | updateQueries () |
Resize Occlusion Queries on GPU. | |
~Distribution () | |
Public Attributes | |
float | c_max |
Maximum confidence level in one likelihood measure. | |
float | c_mean |
float | c_min |
TomGine::tgVector3 | m_cam_view |
Particle | m_meanParticle |
Particle representing weighted mean of particle distribution. | |
ParticleList | m_particlelist |
List of particles forming the likelihood distribution. | |
std::vector< unsigned int > | queryEdges |
OpenGL Occlussion Query for counting overall edge pixels. | |
std::vector< unsigned int > | queryMatches |
OpenGL Occlussion Query for counting matching pixels. | |
int | v_max |
Maximum number of overall edge pixels of current view. | |
float | w_max |
Maximum weighted likelihood in one likelihood measure. | |
float | w_sum |
Sum of all weights, before normalisation (afterwards its 1) |
class Distribution
Definition at line 26 of file Distribution.h.
Definition at line 72 of file Distribution.cpp.
Definition at line 77 of file Distribution.cpp.
void Distribution::calcLikelihood | ( | int | convergence = 5 | ) |
Definition at line 229 of file Distribution.cpp.
void Distribution::calcMean | ( | ) |
Calculates weighted mean and stores it in m_meanParticle.
Definition at line 33 of file Distribution.cpp.
void Tracking::Distribution::clear | ( | ) | [inline] |
Drops all particles of the ParticleList.
Definition at line 101 of file Distribution.h.
float Distribution::confidenceFunction | ( | const float & | m, |
const float & | e | ||
) |
Functional for confidence value.
m | Number of matching pixels |
e | Number of edge pixels of model in curren view |
Definition at line 211 of file Distribution.cpp.
void Tracking::Distribution::copy | ( | ParticleList & | list | ) | [inline] |
Copy ParticleList representing distribution std::vector<Particle>
Definition at line 95 of file Distribution.h.
void Tracking::Distribution::copyParticle | ( | Particle & | p, |
unsigned int | id | ||
) | [inline] |
Copy a particle from the distribution.
Definition at line 98 of file Distribution.h.
void Distribution::drawParticlesEdges | ( | TrackerModel & | model, |
Shader * | shadeCompare, | ||
bool | showparticles = false |
||
) |
Definition at line 138 of file Distribution.cpp.
void Distribution::drawParticlesTextured | ( | TrackerModel & | model, |
Shader * | shadeCompare, | ||
bool | showparticles = false |
||
) |
Definition at line 171 of file Distribution.cpp.
float Tracking::Distribution::getC | ( | int | id | ) | [inline] |
gets confidence level of a particle by id
Definition at line 89 of file Distribution.h.
float Tracking::Distribution::getMaxC | ( | ) | [inline] |
Gets maximum confidence level of last likelihood measure.
Definition at line 80 of file Distribution.h.
float Tracking::Distribution::getMaxW | ( | ) | [inline] |
Gets maximum weighted likelihood of last likelihood measure.
Definition at line 77 of file Distribution.h.
Particle Tracking::Distribution::getMean | ( | ) | [inline] |
Gets weighted mean of likelihood distribution.
Definition at line 59 of file Distribution.h.
float Tracking::Distribution::getMeanC | ( | ) | [inline] |
Gets mean confidence of last likelihood measure.
Definition at line 62 of file Distribution.h.
float Tracking::Distribution::getMinC | ( | ) | [inline] |
Gets minimum confidence level of last likelihood measure.
Definition at line 83 of file Distribution.h.
Particle Tracking::Distribution::getParticle | ( | int | id | ) | [inline] |
Gets particle from distribution by id.
Definition at line 65 of file Distribution.h.
double Distribution::getVarianceC | ( | ) |
Calculates variance confidence level of likelihood distribution.
Definition at line 84 of file Distribution.cpp.
double Distribution::getVariancePt | ( | ) |
Calculates variance of pose of likelihood distribution.
Definition at line 101 of file Distribution.cpp.
float Tracking::Distribution::getW | ( | int | id | ) | [inline] |
Gets weighted likelihood of a particle by id.
Definition at line 86 of file Distribution.h.
void Distribution::normalizeW | ( | ) |
Recalculates weights of particlelist to sum up to 1.
Definition at line 117 of file Distribution.cpp.
void Tracking::Distribution::push_back | ( | Particle | p | ) | [inline] |
Adds a particle to the ParticleList of the distribution.
Definition at line 104 of file Distribution.h.
int Tracking::Distribution::size | ( | ) | [inline] |
Number of particles representing the distribution.
Definition at line 92 of file Distribution.h.
void Distribution::updateLikelihood | ( | TrackerModel & | model, |
Shader * | shadeCompare, | ||
bool | textured, | ||
int | convergence = 5 , |
||
bool | showparticles = false |
||
) |
Update confidence levels and weighted likelihoods of distribution.
TrackerModel | 3D model to be rendered and compared to camera image |
Shader | comparisson shader which draws only pixels matching with the corresponding pixel of the camera image |
textured | flag wether to use textured models or edge models (TextureTracker / EdgeTracker) |
convergence | convergence of weight distribution |
showparticles | makes particle distribution visible on screen |
Definition at line 275 of file Distribution.cpp.
void Distribution::updateLikelihood | ( | TrackerModel & | model, |
Shader * | shadeCompare, | ||
TomGine::tgCamera * | cam, | ||
Texture * | tex_edge, | ||
int | res = 256 |
||
) |
Definition at line 307 of file Distribution.cpp.
void Distribution::updateQueries | ( | ) |
Resize Occlusion Queries on GPU.
Definition at line 8 of file Distribution.cpp.
Maximum confidence level in one likelihood measure.
Definition at line 38 of file Distribution.h.
Definition at line 39 of file Distribution.h.
Definition at line 40 of file Distribution.h.
Definition at line 41 of file Distribution.h.
Particle representing weighted mean of particle distribution.
Definition at line 33 of file Distribution.h.
List of particles forming the likelihood distribution.
Definition at line 30 of file Distribution.h.
std::vector<unsigned int> Tracking::Distribution::queryEdges |
OpenGL Occlussion Query for counting overall edge pixels.
Definition at line 32 of file Distribution.h.
std::vector<unsigned int> Tracking::Distribution::queryMatches |
OpenGL Occlussion Query for counting matching pixels.
Definition at line 31 of file Distribution.h.
Maximum number of overall edge pixels of current view.
Definition at line 35 of file Distribution.h.
Maximum weighted likelihood in one likelihood measure.
Definition at line 37 of file Distribution.h.
Sum of all weights, before normalisation (afterwards its 1)
Definition at line 36 of file Distribution.h.