#include <strk_tracker.h>
Inheritance diagram for strk_tracker:
Definition at line 51 of file strk_tracker.h.
Public Member Functions | |
| strk_tracker (strk_tracker_params &tp) | |
| constructor from a parameter block (the only way). | |
| ~strk_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 (vtol_face_2d_sptr const &face) |
| Set the initial model position. | |
| vtol_face_2d_sptr | get_best_sample () |
| because of sorting, the best sample will be the first current sample. | |
| void | get_samples (vcl_vector< vtol_face_2d_sptr > &samples) |
| because of sorting the samples will be in descending order of correlation. | |
| void | init () |
| Initialize the 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 | search_radius_ |
| window size for generating samples | |
| float | angle_range_ |
| angle range for generating samples | |
| float | scale_range_ |
| scale range for generating samples | |
| float | sigma_ |
| Gaussian smoothing kernel stddev for estimating gradient. | |
| bool | gradient_info_ |
| Combine gradient and intensity info. | |
Protected Member Functions | |
| vtol_intensity_face_sptr | transform_face (vtol_intensity_face_sptr const &face, double tx, double ty, double theta, double scale) |
| translate the input face by tx and ty. | |
| 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_correlated_face *cf, vil1_memory_image_of< float > const &Ix, vil1_memory_image_of< float > const &Iy) |
| void | correlate_face (strk_correlated_face *cf) |
| compute a distance between a face and the underlying image. | |
| vtol_intensity_face_sptr | generate_sample (vtol_intensity_face_sptr const &seed) |
| Generate a random sample for face translation. | |
| strk_correlated_face * | generate_cf_sample (strk_correlated_face *seed) |
| Generate a more informative face using the previous method. | |
| strk_correlated_face * | regenerate_cf_sample (strk_correlated_face *sample) |
| Form a new sample from the current image. | |
| void | transform_sample_in_place (strk_correlated_face *sample, double tx, double ty, double theta, double scale) |
| Form a new sample from the current image. | |
| bool | compute_motion (strk_correlated_face *cf, double &tx, double &ty, double &theta, double &scale) |
| Compute the optical flow motion. | |
| double | compute_correlation (strk_correlated_face *cf) |
| double | compute_gradient_angle (strk_correlated_face *cf) |
| double | compute_angle_motion (strk_correlated_face *cf) |
| bool | compute_scale_motion (strk_correlated_face *cf, double &sx, double &sy) |
| void | InitParams (int n_samples, float search_radius, float angle_range, float scale_range, float sigma, bool gradient_info) |
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_ |
| vtol_face_2d_sptr | initial_model_ |
| vcl_vector< strk_correlated_face * > | current_samples_ |
| vcl_vector< strk_correlated_face * > | hypothesized_samples_ |
| vcl_vector< double > | sample_scores_ |
Friends | |
| vcl_ostream & | operator<< (vcl_ostream &os, const strk_tracker_params &tp) |
|
|
constructor from a parameter block (the only way).
Definition at line 56 of file strk_tracker.cxx. |
|
|
Default Destructor.
Definition at line 63 of file strk_tracker.cxx. |
|
|
Definition at line 636 of file strk_tracker.cxx. |
|
|
Definition at line 343 of file strk_tracker.cxx. |
|
|
Definition at line 404 of file strk_tracker.cxx. |
|
|
Definition at line 314 of file strk_tracker.cxx. |
|
||||||||||||||||||||||||
|
Compute the optical flow motion.
Definition at line 258 of file strk_tracker.cxx. |
|
||||||||||||||||
|
Definition at line 369 of file strk_tracker.cxx. |
|
|
compute a distance between a face and the underlying image.
Definition at line 430 of file strk_tracker.cxx. |
|
|
cull out the best N hypothesized samples to become the current samples.
Definition at line 584 of file strk_tracker.cxx. |
|
||||||||||||
|
fill the pixels in the input face from the input image.
Definition at line 140 of file strk_tracker.cxx. |
|
|
Generate a more informative face using the previous method.
Definition at line 498 of file strk_tracker.cxx. |
|
|
Generate a random sample for face translation.
Definition at line 485 of file strk_tracker.cxx. |
|
|
generate a random set of new faces from the existing samples.
Definition at line 566 of file strk_tracker.cxx. |
|
|
because of sorting, the best sample will be the first current sample.
Definition at line 608 of file strk_tracker.cxx. |
|
|
because of sorting the samples will be in descending order of correlation.
Definition at line 617 of file strk_tracker.cxx. |
|
|
Initialize the tracker.
Definition at line 183 of file strk_tracker.cxx. |
|
||||||||||||||||||||||||||||
|
Definition at line 42 of file strk_tracker_params.cxx. |
|
|
Form a new sample from the current image.
Definition at line 518 of file strk_tracker.cxx. |
|
|
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 63 of file strk_tracker_params.cxx. |
|
||||||||||||||||
|
Definition at line 78 of file strk_tracker.cxx. |
|
|
Set the previous frame image.
Definition at line 97 of file strk_tracker.cxx. |
|
|
Set the next frame image.
Definition at line 118 of file strk_tracker.cxx. |
|
|
Set the initial model position.
Definition at line 133 of file strk_tracker.cxx. |
|
|
Main tracking method.
Definition at line 627 of file strk_tracker.cxx. |
|
||||||||||||||||||||||||
|
translate the input face by tx and ty.
Definition at line 200 of file strk_tracker.cxx. |
|
||||||||||||||||||||||||
|
Form a new sample from the current image.
Definition at line 533 of file strk_tracker.cxx. |
|
||||||||||||
|
Definition at line 74 of file strk_tracker_params.cxx. |
|
|
angle range for generating samples
Definition at line 44 of file strk_tracker_params.h. |
|
|
Definition at line 124 of file strk_tracker.h. |
|
|
Combine gradient and intensity info.
Definition at line 47 of file strk_tracker_params.h. |
|
|
Definition at line 125 of file strk_tracker.h. |
|
|
Definition at line 117 of file strk_tracker.h. |
|
|
Definition at line 118 of file strk_tracker.h. |
|
|
Definition at line 123 of file strk_tracker.h. |
|
|
Definition at line 119 of file strk_tracker.h. |
|
|
Definition at line 121 of file strk_tracker.h. |
|
|
Definition at line 120 of file strk_tracker.h. |
|
|
Definition at line 122 of file strk_tracker.h. |
|
|
number of samples generated per iteration
Definition at line 42 of file strk_tracker_params.h. |
|
|
Definition at line 126 of file strk_tracker.h. |
|
|
scale range for generating samples
Definition at line 45 of file strk_tracker_params.h. |
|
|
window size for generating samples
Definition at line 43 of file strk_tracker_params.h. |
|
|
Gaussian smoothing kernel stddev for estimating gradient.
Definition at line 46 of file strk_tracker_params.h. |
1.4.4