21 #ifndef otbLocalGradientVectorImageFilter_h
22 #define otbLocalGradientVectorImageFilter_h
26 #include <itkNumericTraits.h>
38 template <
class TInput,
class TOutput>
54 unsigned int length = input.GetPixel(0).Size();
55 TOutput output(length);
56 for (
unsigned int i = 0; i < length; ++i)
58 output[i] =
static_cast<typename TOutput::ValueType
>(input.GetCenterPixel()[i] - input.GetPixel(5)[i] / 2. - input.GetPixel(7)[i] / 2.);
71 template <
class TInputImage,
class TOutputImage>
74 TInputImage, TOutputImage, Functor::LocalGradientOperator<typename itk::ConstNeighborhoodIterator<TInputImage>, typename TOutputImage::PixelType>>
95 this->SetRadius(radius);
Performs the calculation of LocalGradient derivation.
virtual ~LocalGradientOperator()
TOutput operator()(const TInput &input)
Implements the 3x3 Local Gradient to be processed on a vector image.
void operator=(const Self &)
LocalGradientVectorImageFilter(const Self &)
itk::SmartPointer< Self > Pointer
itk::SmartPointer< const Self > ConstPointer
LocalGradientVectorImageFilter()
LocalGradientVectorImageFilter Self
UnaryFunctorNeighborhoodVectorImageFilter< TInputImage, TOutputImage, Functor::LocalGradientOperator< typename itk::ConstNeighborhoodIterator< TInputImage >, typename TOutputImage::PixelType > > Superclass
~LocalGradientVectorImageFilter() override
Implements neighborhood-wise generic operation of one vector image.
NeighborhoodIteratorType::RadiusType RadiusType
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.