18 #ifndef itkSquaredDifferenceImageFilter_h
19 #define itkSquaredDifferenceImageFilter_h
55 template<
typename TInput1,
typename TInput2,
typename TOutput >
68 return !( *
this != other );
72 const TInput2 & B)
const
74 const double dA =
static_cast< double >( A );
75 const double dB =
static_cast< double >( B );
76 const double diff = dA - dB;
78 return static_cast< TOutput
>( diff * diff );
83 template<
typename TInputImage1,
typename TInputImage2,
typename TOutputImage >
87 Functor::SquaredDifference2<
88 typename TInputImage1::PixelType,
89 typename TInputImage2::PixelType,
90 typename TOutputImage::PixelType > >
96 TInputImage1, TInputImage2, TOutputImage,
98 typename TInputImage1::PixelType,
99 typename TInputImage2::PixelType,
100 typename TOutputImage::PixelType >
113 #ifdef ITK_USE_CONCEPT_CHECKING
130 void operator=(const
Self &) ITK_DELETE_FUNCTION;
SquaredDifferenceImageFilter()
bool operator==(const SquaredDifference2 &other) const
Base class for all process objects that output image data.
BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::SquaredDifference2< typename TInputImage1::PixelType, typename TInputImage2::PixelType, typename TOutputImage::PixelType > > Superclass
virtual ~SquaredDifferenceImageFilter()
SquaredDifferenceImageFilter Self
SmartPointer< Self > Pointer
bool operator!=(const SquaredDifference2 &) const
Implements pixel-wise the computation of squared difference.
TOutput operator()(const TInput1 &A, const TInput2 &B) const
#define itkConceptMacro(name, concept)
SmartPointer< const Self > ConstPointer
Implements pixel-wise generic operation of two images, or of an image and a constant.