#include <strk_info_model_tracker.h>
Public Member Functions | |
| strk_info_model_tracker (strk_info_model_tracker_params &tp) | |
| constructor from a parameter block (the only way). | |
| ~strk_info_model_tracker () | |
| Default Destructor. | |
| void | set_image_0 (vil1_image &image) |
| Set the previous frame image. | |
| void | set_image_i (vil1_image &image) |
| Set the next frame image. | |
| void | set_initial_model (vcl_vector< vtol_face_2d_sptr > const &faces) |
| strk_art_info_model_sptr | get_best_sample () |
| because of sorting, the best sample will be the first current sample. | |
| void | get_samples (vcl_vector< strk_art_info_model_sptr > &samples) |
| because of sorting the samples will be in descending order of mutual info. | |
| strk_art_info_model_sptr | tf (int i) |
| void | init () |
| Initialize the info_tracker. | |
| void | generate_samples () |
| generate a random set of new faces from the existing samples. | |
| void | cull_samples () |
| cull out the best N hypothesized samples to become the current samples. | |
| void | track () |
| Main tracking method. | |
| void | clear () |
| bool | SanityCheck () |
| Checks that parameters are within acceptable bounds. | |
Public Attributes | |
| int | n_samples_ |
| number of samples generated per iteration | |
| float | stem_trans_radius_ |
| translation range for stem | |
| float | long_arm_tip_trans_radius_ |
| translation range for long arm tip | |
| float | short_arm_tip_trans_radius_ |
| translation range for short arm tip | |
| float | stem_angle_range_ |
| angle range for stem | |
| float | long_arm_angle_range_ |
| angle range for long arm shoulder joint | |
| float | short_arm_angle_range_ |
| angle range for short arm shoulder joint | |
| float | long_arm_tip_angle_range_ |
| angle range for long arm tip | |
| float | short_arm_tip_angle_range_ |
| angle range for short arm tip | |
| float | sigma_ |
| scale range for generating samples | |
| bool | gradient_info_ |
| Combine gradient and intensity info. | |
| bool | verbose_ |
| informative messages to cout | |
Protected Member Functions | |
| void | fill_face (vtol_intensity_face_sptr const &face, vil1_memory_image_of< float > const &image) |
| fill the pixels in the input face from the input image. | |
| void | set_gradient (strk_art_info_model_sptr tf, vil1_memory_image_of< float > const &Ix, vil1_memory_image_of< float > const &Iy) |
| set the gradient values in the model face. | |
| strk_art_info_model_sptr | generate_model (strk_art_info_model_sptr const &seed) |
| Generate a random sample. | |
| double | compute_intensity_mutual_information (strk_art_info_model_sptr tf) |
| double | compute_gradient_mutual_information (strk_art_info_model_sptr tf) |
| void | InitParams (int n_samples, float stem_trans_radius, float long_arm_tip_trans_radius, float short_arm_tip_trans_radius, float stem_angle_range, float long_arm_angle_range, float short_arm_angle_range, float long_arm_tip_angle_range, float short_arm_tip_angle_range, float sigma, bool gradient_info, bool verbose) |
Protected Attributes | |
| vil1_memory_image_of< float > | image_0_ |
| vil1_memory_image_of< float > | image_i_ |
| vil1_memory_image_of< float > | Ix_0_ |
| vil1_memory_image_of< float > | Iy_0_ |
| vil1_memory_image_of< float > | Ix_i_ |
| vil1_memory_image_of< float > | Iy_i_ |
| vcl_vector< vtol_face_2d_sptr > | initial_model_ |
| vcl_vector < strk_art_info_model_sptr > | current_samples_ |
| vcl_vector < strk_art_info_model_sptr > | hypothesized_samples_ |
| double | model_intensity_entropy_ |
| double | model_gradient_dir_entropy_ |
Friends | |
| vcl_ostream & | operator<< (vcl_ostream &, const strk_info_model_tracker_params &) |
Definition at line 33 of file strk_info_model_tracker.h.
| strk_info_model_tracker::strk_info_model_tracker | ( | strk_info_model_tracker_params & | tp | ) |
constructor from a parameter block (the only way).
Definition at line 30 of file strk_info_model_tracker.cxx.
| strk_info_model_tracker::~strk_info_model_tracker | ( | ) |
Default Destructor.
Definition at line 36 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker::clear | ( | ) |
Definition at line 202 of file strk_info_model_tracker.cxx.
| double strk_info_model_tracker::compute_gradient_mutual_information | ( | strk_art_info_model_sptr | tf | ) | [protected] |
| double strk_info_model_tracker::compute_intensity_mutual_information | ( | strk_art_info_model_sptr | tf | ) | [protected] |
| void strk_info_model_tracker::cull_samples | ( | ) |
cull out the best N hypothesized samples to become the current samples.
Definition at line 159 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker::fill_face | ( | vtol_intensity_face_sptr const & | face, |
| vil1_memory_image_of< float > const & | image | ||
| ) | [protected] |
fill the pixels in the input face from the input image.
| strk_art_info_model_sptr strk_info_model_tracker::generate_model | ( | strk_art_info_model_sptr const & | seed | ) | [protected] |
Generate a random sample.
generate a randomly positioned articulated model.
Definition at line 108 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker::generate_samples | ( | ) |
generate a random set of new faces from the existing samples.
Definition at line 130 of file strk_info_model_tracker.cxx.
| strk_art_info_model_sptr strk_info_model_tracker::get_best_sample | ( | ) |
because of sorting, the best sample will be the first current sample.
Definition at line 174 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker::get_samples | ( | vcl_vector< strk_art_info_model_sptr > & | samples | ) |
because of sorting the samples will be in descending order of mutual info.
Definition at line 183 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker::init | ( | ) |
Initialize the info_tracker.
Definition at line 84 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker_params::InitParams | ( | int | n_samples, |
| float | stem_trans_radius, | ||
| float | long_arm_tip_trans_radius, | ||
| float | short_arm_tip_trans_radius, | ||
| float | stem_angle_range, | ||
| float | long_arm_angle_range, | ||
| float | short_arm_angle_range, | ||
| float | long_arm_tip_angle_range, | ||
| float | short_arm_tip_angle_range, | ||
| float | sigma, | ||
| bool | gradient_info, | ||
| bool | verbose | ||
| ) | [protected, inherited] |
Definition at line 61 of file strk_info_model_tracker_params.cxx.
| bool strk_info_model_tracker_params::SanityCheck | ( | ) | [inherited] |
Checks that parameters are within acceptable bounds.
Note that msg << ends seems to restart the string and erase the previous string. We should only use it as the last call use; vcl_endl otherwise.
Definition at line 94 of file strk_info_model_tracker_params.cxx.
| void strk_info_model_tracker::set_gradient | ( | strk_art_info_model_sptr | tf, |
| vil1_memory_image_of< float > const & | Ix, | ||
| vil1_memory_image_of< float > const & | Iy | ||
| ) | [protected] |
set the gradient values in the model face.
| void strk_info_model_tracker::set_image_0 | ( | vil1_image & | image | ) |
Set the previous frame image.
Definition at line 43 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker::set_image_i | ( | vil1_image & | image | ) |
Set the next frame image.
Definition at line 64 of file strk_info_model_tracker.cxx.
| void strk_info_model_tracker::set_initial_model | ( | vcl_vector< vtol_face_2d_sptr > const & | faces | ) | [inline] |
Definition at line 43 of file strk_info_model_tracker.h.
| strk_art_info_model_sptr strk_info_model_tracker::tf | ( | int | i | ) | [inline] |
Definition at line 47 of file strk_info_model_tracker.h.
| void strk_info_model_tracker::track | ( | ) |
Main tracking method.
Definition at line 193 of file strk_info_model_tracker.cxx.
| vcl_ostream& operator<< | ( | vcl_ostream & | os, |
| const strk_info_model_tracker_params & | tp | ||
| ) | [friend, inherited] |
Definition at line 105 of file strk_info_model_tracker_params.cxx.
vcl_vector<strk_art_info_model_sptr> strk_info_model_tracker::current_samples_ [protected] |
Definition at line 83 of file strk_info_model_tracker.h.
bool strk_info_model_tracker_params::gradient_info_ [inherited] |
Combine gradient and intensity info.
Definition at line 64 of file strk_info_model_tracker_params.h.
vcl_vector<strk_art_info_model_sptr> strk_info_model_tracker::hypothesized_samples_ [protected] |
Definition at line 84 of file strk_info_model_tracker.h.
vil1_memory_image_of<float> strk_info_model_tracker::image_0_ [protected] |
Definition at line 75 of file strk_info_model_tracker.h.
vil1_memory_image_of<float> strk_info_model_tracker::image_i_ [protected] |
Definition at line 76 of file strk_info_model_tracker.h.
vcl_vector<vtol_face_2d_sptr> strk_info_model_tracker::initial_model_ [protected] |
Definition at line 82 of file strk_info_model_tracker.h.
vil1_memory_image_of<float> strk_info_model_tracker::Ix_0_ [protected] |
Definition at line 77 of file strk_info_model_tracker.h.
vil1_memory_image_of<float> strk_info_model_tracker::Ix_i_ [protected] |
Definition at line 79 of file strk_info_model_tracker.h.
vil1_memory_image_of<float> strk_info_model_tracker::Iy_0_ [protected] |
Definition at line 78 of file strk_info_model_tracker.h.
vil1_memory_image_of<float> strk_info_model_tracker::Iy_i_ [protected] |
Definition at line 80 of file strk_info_model_tracker.h.
float strk_info_model_tracker_params::long_arm_angle_range_ [inherited] |
angle range for long arm shoulder joint
Definition at line 59 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::long_arm_tip_angle_range_ [inherited] |
angle range for long arm tip
Definition at line 61 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::long_arm_tip_trans_radius_ [inherited] |
translation range for long arm tip
Definition at line 56 of file strk_info_model_tracker_params.h.
double strk_info_model_tracker::model_gradient_dir_entropy_ [protected] |
Definition at line 86 of file strk_info_model_tracker.h.
double strk_info_model_tracker::model_intensity_entropy_ [protected] |
Definition at line 85 of file strk_info_model_tracker.h.
int strk_info_model_tracker_params::n_samples_ [inherited] |
number of samples generated per iteration
Definition at line 54 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::short_arm_angle_range_ [inherited] |
angle range for short arm shoulder joint
Definition at line 60 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::short_arm_tip_angle_range_ [inherited] |
angle range for short arm tip
Definition at line 62 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::short_arm_tip_trans_radius_ [inherited] |
translation range for short arm tip
Definition at line 57 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::sigma_ [inherited] |
scale range for generating samples
Definition at line 63 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::stem_angle_range_ [inherited] |
angle range for stem
Definition at line 58 of file strk_info_model_tracker_params.h.
float strk_info_model_tracker_params::stem_trans_radius_ [inherited] |
translation range for stem
Definition at line 55 of file strk_info_model_tracker_params.h.
bool strk_info_model_tracker_params::verbose_ [inherited] |
informative messages to cout
Definition at line 65 of file strk_info_model_tracker_params.h.
1.7.5.1