26 #ifndef __GradientSimple_hh__
27 #define __GradientSimple_hh__
29 #include "FilterNTo2N.hh"
31 #include <Base/Math/Vector3.hh>
32 #include "Convolution.hh"
51 template <
class InputStorageType,
class OutputStorageType>
90 if (UseDirectNeighbors != useDirectNeighbors_) {
91 useDirectNeighbors_ = UseDirectNeighbors;
99 void BuildPolarCoordinateMap_();
128 virtual void GetBordersValid_(
int &border_x,
int &border_y)
const;
140 #endif // __GradientSimple_hh__
void UseDirectNeighbors(bool UseDirectNeighbors)
if true, we use a filter of [1 -1] otherwise [1 0 -1]
float ** pRadius_
polar coordinate transformation for char values
generic convolution class.
base class for simple n->2n filter implementations
simple gradient calculation gx(x,y) = I(x+1,y) - I(x-1,y) gy(x,y) = I(x,y+1) - I(x,y-1)
Convolution< InputStorageType, OutputStorageType > _Conv
computation object to execute the convolution
bool useDirectNeighbors_
if true, we use a filter of [-1 1] otherwise [-1 0 1]
virtual FilterNTo2N< InputStorageType, OutputStorageType > * Clone() const