Tracore
Filter2D.h
1 //
2 // Created by wrede on 11.07.16.
3 //
4 
5 #ifndef GBMOT_FILTER_H
6 #define GBMOT_FILTER_H
7 
8 
9 #include <vector>
10 #include <string>
11 
12 namespace util
13 {
17  class Filter2D
18  {
19  public:
23  Filter2D();
24 
34  Filter2D(double multiplier, std::vector<double> mask);
35 
36  // Example:
37  // mask_string = multiplier, m00, m01, m02, ..., m10, m11, m12, ..., mnn
38  // delimiter = ,
48  Filter2D(std::string const & mask_string, char delimiter);
49 
57  double Get(int x, int y) const;
58 
65  double Get(int i) const;
66 
72  double GetMultiplier() const;
73 
81  int GetVicinity() const;
82 
88  int GetDimension() const;
89 
94  void Normalize();
95 
96  private:
105  int Index(int x, int y) const;
106 
115  int Vicinity(int size) const;
116 
123  int Dimension(int size) const;
124 
128  std::vector<double> mask_;
129 
133  double multiplier_;
134 
138  int dimension_;
139 
144  int vicinity_;
145  };
146 }
147 
148 
149 #endif //GBMOT_FILTER_H
Definition: FileIO.cpp:11
Definition: Filter2D.h:17
double GetMultiplier() const
Definition: Filter2D.cpp:77
double Get(int x, int y) const
Definition: Filter2D.cpp:67
Filter2D()
Definition: Filter2D.cpp:11
int GetDimension() const
Definition: Filter2D.cpp:87
void Normalize()
Definition: Filter2D.cpp:92
int GetVicinity() const
Definition: Filter2D.cpp:82