00001 // This is brl/bseg/sdet/sdet_denoise_mrf_params.h 00002 #ifndef sdet_denoise_mrf_params_h_ 00003 #define sdet_denoise_mrf_params_h_ 00004 //: 00005 // \file 00006 // \brief parameter mixin for sdet_denoise_mrf 00007 // 00008 // \author 00009 // Joseph L. Mundy - March 22, 2011 00010 // Brown University 00011 // 00012 //----------------------------------------------------------------------------- 00013 #include <vbl/vbl_ref_count.h> 00014 #include <gevd/gevd_param_mixin.h> 00015 #include <vcl_iosfwd.h> 00016 00017 class sdet_denoise_mrf_params : public gevd_param_mixin, public vbl_ref_count 00018 { 00019 public: 00020 sdet_denoise_mrf_params(double radius=1.0, double kappa= 1.0, 00021 double beta = 1.0 ); 00022 00023 00024 sdet_denoise_mrf_params(const sdet_denoise_mrf_params& old_params); 00025 ~sdet_denoise_mrf_params() {} 00026 00027 bool SanityCheck(); 00028 friend 00029 vcl_ostream& operator<<(vcl_ostream& os, const sdet_denoise_mrf_params& imp); 00030 protected: 00031 void InitParams(double radius, double kappa, double beta); 00032 public: 00033 // 00034 // Parameter blocks and parameters 00035 // 00036 double radius_; //!< MRF neighborhood radius 00037 double kappa_; //!< parameter for variance weight 00038 double beta_; //!< parameter for height difference weight 00039 }; 00040 00041 #endif // sdet_denoise_mrf_params_h_