00001 #ifndef vsrl_saliency_diffusion_h 00002 #define vsrl_saliency_diffusion_h 00003 00004 #include <vsrl/vsrl_diffusion.h> 00005 #include <vsrl/vsrl_token_saliency.h> 00006 00007 // This program will take the results of a step diffusion 00008 // algorithm and token saliency object and use diffusion 00009 // inorder to spread out the disparity from salient pixels 00010 // to non salient pixels. 00011 00012 class vsrl_saliency_diffusion : public vsrl_diffusion 00013 { 00014 protected: 00015 vsrl_token_saliency *saliency_; // the object that defines the salieny of each point 00016 00017 public: 00018 00019 // constructor 00020 vsrl_saliency_diffusion(vsrl_dense_matcher *matcher); 00021 00022 // destructor 00023 ~vsrl_saliency_diffusion(); 00024 00025 // set the initial disparity based on a step diffusion mechanism 00026 void set_initial_disparity(vsrl_diffusion *diffusion); 00027 00028 // set the saliency object 00029 void set_saliency(vsrl_token_saliency *saliency); 00030 00031 void execute(int num_iter=150); 00032 00033 protected: 00034 00035 // diffuse over the steps 00036 void diffuse_disparity(int num_iter); 00037 00038 // modify based on the the pixel saliency measures 00039 void consider_saliency(); 00040 }; 00041 00042 #endif
1.4.4