1 #ifndef gevd_region_proc_params_h_
2 #define gevd_region_proc_params_h_
3 //:
4 // \file
5 // \brief parameter mixin for vdgl_region_proc
6 //
7 // \author
8 //             Joseph L. Mundy - Apr. 11, 2001
9 //             GE Corporate Research and Development
10 //
11 //-----------------------------------------------------------------------------
12 #include <iostream>
13 #include <iosfwd>
14 #include <gevd/gevd_param_mixin.h>
15 #include <gevd/gevd_detector_params.h>
16 #ifdef _MSC_VER
17 #  include <vcl_msvc_warnings.h>
18 #endif
19 
20 class gevd_region_proc_params;
21 std::ostream& operator<<(std::ostream& os, const gevd_region_proc_params& rpp);
22 
23 class gevd_region_proc_params : public gevd_param_mixin
24 {
25  public :
26   gevd_region_proc_params(float expand_scale = 2.0f,
27                           float burt_adelson_factor = .4f,
28                           bool debug = false,
29                           bool verbose = false,
30                           gevd_detector_params const& = gevd_detector_params());
31 
32   gevd_region_proc_params(const gevd_region_proc_params& old_params);
33   ~gevd_region_proc_params() override = default;
34 
35   bool SanityCheck() override;
36   friend
37     std::ostream& operator<<(std::ostream&, const gevd_region_proc_params& rpp);
38  protected:
39   void InitParams(float expand_scale,
40                   float burt_adelson_factor,
41                   bool debug,
42                   bool verbose,
43                   const gevd_detector_params& dp);
44  public:
45   //
46   // Parameter blocks and parameters
47   //
48   float expand_scale_;       //!< the scale factor for image expansion
49   float burt_adelson_factor_;//!< the "sigma" of the interpolating kernel
50   bool debug_;               //!< Carry out debug processing
51   bool verbose_;             //!< Print detailed output
52   gevd_detector_params dp_;  //!< parameters associated with step and fold detection
53 };
54 
55 #endif // gevd_region_proc_params_h_
56