KJB
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | List of all members
kjb::mcmcda::Proposer< Track > Class Template Reference

#include <mcmcda_proposer.h>

Public Member Functions

 Proposer (const Categorical_distribution< size_t > &move_distribution, double v_bar, int d_bar, int b_bar, double gamma, const typename Data< Element >::Convert &convert_to_vector, const Avg &avg, double detection_noise_variance, const Track &empty_track)
 
 Proposer (const Categorical_distribution< size_t > &move_distribution, double v_bar, int d_bar, int b_bar, double gamma, const typename Data< Element >::Convert &convert_to_vector, const Avg &avg, const Feature_prob &feature_prob, double detection_noise_variance, const Track &empty_track)
 
ergo::mh_proposal_result operator() (const Assoc &w, Assoc &w_p) const
 
double v_bar () const
 Return maximum velocity of targets. More...
 
int d_bar () const
 Return maximum number of missed frames. More...
 
double gamma () const
 Return probability of stopping a growing track. More...
 
size_t sample_move (const Assoc &w) const
 Sample a move type. More...
 
double move_log_pdf (Move m, const Assoc &w) const
 Compute the log pdf of a move type. More...
 
double propose_birth (const Assoc &w, Assoc &w_p) const
 Propose birth. More...
 
double propose_death (const Assoc &w, Assoc &w_p) const
 Propose death. More...
 
double propose_split (const Assoc &w, Assoc &w_p) const
 Propose split. More...
 
double propose_merge (const Assoc &w, Assoc &w_p) const
 Propose merge. More...
 
double propose_extension (const Assoc &w, Assoc &w_p) const
 Propose exteision. More...
 
double propose_reduction (const Assoc &w, Assoc &w_p) const
 Propose reduction. More...
 
double propose_switch (const Assoc &w, Assoc &w_p) const
 Propose switch. More...
 
double propose_secretion (const Assoc &w, Assoc &w_p) const
 Propose secretion. More...
 
double propose_absorption (const Assoc &w, Assoc &w_p) const
 Propose absorption. More...
 
double p_birth (const Assoc &w, const Assoc &w_p) const
 Probability of birth. More...
 
double p_death (const Assoc &w, const Assoc &w_p) const
 Probability of death. More...
 
double p_split (const Assoc &w, const Assoc &w_p) const
 Probability of split. More...
 
double p_merge (const Assoc &w, const Assoc &w_p) const
 Probability of merge. More...
 
double p_extension (const Assoc &w, const Assoc &w_p) const
 Probability of extension. More...
 
double p_reduction (const Assoc &w, const Assoc &w_p) const
 Probability of reduction. More...
 
double p_switch (const Assoc &w, const Assoc &w_p) const
 Probability of switch. More...
 
double p_secretion (const Assoc &w, const Assoc &w_p) const
 Probability of secretion. More...
 
double p_absorption (const Assoc &w, const Assoc &w_p) const
 Probability of absorption. More...
 
void grow_track_forward (Track &track, const Assoc &w) const
 Grows a track forward according to MCMCDA. More...
 
void grow_track_backward (Track &track, const Assoc &w) const
 Grows a track backward according to MCMCDA. More...
 
double p_grow_track_forward (const Track &track, const Assoc &w, int t) const
 Probability of growing a track forward to what it is. More...
 
double p_grow_track_backward (const Track &track, const Assoc &w, int t) const
 Probability of growing a track backward to what it is. More...
 
double p_choose_nothing (const Probability_map &probs) const
 Probability of not choosing any detections. More...
 
void make_p_move (const Categorical_distribution< size_t > &move_distribution)
 Creates move distribution. More...
 
Probability_map get_growing_probabilities (const Track &track, int t, std::set< const Element * > &candidates, const Vector &x, const Vector &vel, int d) const
 Helper function that gives probabilities of growth candidates. More...
 
double get_velocity_noise_score (int d, const Vector &vel) const
 Helper function that gives score of a noise thingy. More...
 
std::pair< Vector, Vectortrack_future (const Track &track, int t=-1) const
 Estimate the velocity of the detections going forward. More...
 
std::pair< Vector, Vectortrack_past (const Track &track, int t=-1) const
 Estimate the velocity of the detections going backward. More...
 
std::pair< Vector, Vectortrack_future_ls (const Track &track, int t=-1) const
 Estimate the velocity of the detections going forward. More...
 
std::pair< Vector, Vectortrack_past_ls (const Track &track, int t=-1) const
 Estimate the velocity of the detections going backward. More...
 
std::pair< Vector, Vectortrack_future_tls (const Track &track, int t=-1) const
 Estimate the velocity of the detections going forward. More...
 
std::pair< Vector, Vectortrack_past_tls (const Track &track, int t=-1) const
 Estimate the velocity of the detections going backward. More...
 

Detailed Description

template<class Track>
class kjb::mcmcda::Proposer< Track >

brief MCMCDA proposer class. Chooses move and applies it.

Constructor & Destructor Documentation

template<class Track>
kjb::mcmcda::Proposer< Track >::Proposer ( const Categorical_distribution< size_t > &  move_distribution,
double  v_bar,
int  d_bar,
int  b_bar,
double  gamma,
const typename Data< Element >::Convert &  convert_to_vector,
const Avg &  avg,
double  detection_noise_variance,
const Track &  empty_track 
)
inline
template<class Track>
kjb::mcmcda::Proposer< Track >::Proposer ( const Categorical_distribution< size_t > &  move_distribution,
double  v_bar,
int  d_bar,
int  b_bar,
double  gamma,
const typename Data< Element >::Convert &  convert_to_vector,
const Avg &  avg,
const Feature_prob &  feature_prob,
double  detection_noise_variance,
const Track &  empty_track 
)
inline

Member Function Documentation

template<class Track>
int kjb::mcmcda::Proposer< Track >::d_bar ( ) const
inline

Return maximum number of missed frames.

template<class Track>
double kjb::mcmcda::Proposer< Track >::gamma ( ) const
inline

Return probability of stopping a growing track.

template<class Track >
Proposer< Track >::Probability_map kjb::mcmcda::Proposer< Track >::get_growing_probabilities ( const Track &  track,
int  t,
std::set< const Element * > &  candidates,
const Vector x,
const Vector vel,
int  d 
) const

Helper function that gives probabilities of growth candidates.

template<class Track>
double kjb::mcmcda::Proposer< Track >::get_velocity_noise_score ( int  d,
const Vector vel 
) const
inline

Helper function that gives score of a noise thingy.

template<class Track >
void kjb::mcmcda::Proposer< Track >::grow_track_backward ( Track &  track,
const Assoc w 
) const

Grows a track backward according to MCMCDA.

template<class Track >
void kjb::mcmcda::Proposer< Track >::grow_track_forward ( Track &  track,
const Assoc w 
) const

Grows a track forward according to MCMCDA.

template<class Track>
void kjb::mcmcda::Proposer< Track >::make_p_move ( const Categorical_distribution< size_t > &  move_distribution)
inline

Creates move distribution.

template<class Track>
double kjb::mcmcda::Proposer< Track >::move_log_pdf ( Move  m,
const Assoc w 
) const
inline

Compute the log pdf of a move type.

template<class Track >
ergo::mh_proposal_result kjb::mcmcda::Proposer< Track >::operator() ( const Assoc w,
Assoc w_p 
) const
template<class Track >
double kjb::mcmcda::Proposer< Track >::p_absorption ( const Assoc w,
const Assoc w_p 
) const

Probability of absorption.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_birth ( const Assoc w,
const Assoc w_p 
) const

Probability of birth.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_choose_nothing ( const Probability_map &  probs) const

Probability of not choosing any detections.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_death ( const Assoc w,
const Assoc w_p 
) const

Probability of death.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_extension ( const Assoc w,
const Assoc w_p 
) const

Probability of extension.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_grow_track_backward ( const Track &  track,
const Assoc w,
int  t 
) const

Probability of growing a track backward to what it is.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_grow_track_forward ( const Track &  track,
const Assoc w,
int  t 
) const

Probability of growing a track forward to what it is.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_merge ( const Assoc w,
const Assoc w_p 
) const

Probability of merge.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_reduction ( const Assoc w,
const Assoc w_p 
) const

Probability of reduction.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_secretion ( const Assoc w,
const Assoc w_p 
) const

Probability of secretion.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_split ( const Assoc w,
const Assoc w_p 
) const

Probability of split.

template<class Track >
double kjb::mcmcda::Proposer< Track >::p_switch ( const Assoc w,
const Assoc w_p 
) const

Probability of switch.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_absorption ( const Assoc w,
Assoc w_p 
) const

Propose absorption.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_birth ( const Assoc w,
Assoc w_p 
) const

Propose birth.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_death ( const Assoc w,
Assoc w_p 
) const

Propose death.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_extension ( const Assoc w,
Assoc w_p 
) const

Propose exteision.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_merge ( const Assoc w,
Assoc w_p 
) const

Propose merge.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_reduction ( const Assoc w,
Assoc w_p 
) const

Propose reduction.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_secretion ( const Assoc w,
Assoc w_p 
) const

Propose secretion.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_split ( const Assoc w,
Assoc w_p 
) const

Propose split.

template<class Track >
double kjb::mcmcda::Proposer< Track >::propose_switch ( const Assoc w,
Assoc w_p 
) const

Propose switch.

template<class Track>
size_t kjb::mcmcda::Proposer< Track >::sample_move ( const Assoc w) const
inline

Sample a move type.

template<class Track >
std::pair< Vector, Vector > kjb::mcmcda::Proposer< Track >::track_future ( const Track &  track,
int  t = -1 
) const

Estimate the velocity of the detections going forward.

template<class Track >
std::pair< Vector, Vector > kjb::mcmcda::Proposer< Track >::track_future_ls ( const Track &  track,
int  t = -1 
) const

Estimate the velocity of the detections going forward.

template<class Track >
std::pair< Vector, Vector > kjb::mcmcda::Proposer< Track >::track_future_tls ( const Track &  track,
int  t = -1 
) const

Estimate the velocity of the detections going forward.

template<class Track >
std::pair< Vector, Vector > kjb::mcmcda::Proposer< Track >::track_past ( const Track &  track,
int  t = -1 
) const

Estimate the velocity of the detections going backward.

template<class Track >
std::pair< Vector, Vector > kjb::mcmcda::Proposer< Track >::track_past_ls ( const Track &  track,
int  t = -1 
) const

Estimate the velocity of the detections going backward.

template<class Track >
std::pair< Vector, Vector > kjb::mcmcda::Proposer< Track >::track_past_tls ( const Track &  track,
int  t = -1 
) const

Estimate the velocity of the detections going backward.

template<class Track>
double kjb::mcmcda::Proposer< Track >::v_bar ( ) const
inline

Return maximum velocity of targets.


The documentation for this class was generated from the following file: