NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
itkBinariseUsingPaddingImageFilter.h
Go to the documentation of this file.
1 /*=============================================================================
2 
3  NifTK: A software platform for medical image computing.
4 
5  Copyright (c) University College London (UCL). All rights reserved.
6 
7  This software is distributed WITHOUT ANY WARRANTY; without even
8  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9  PURPOSE.
10 
11  See LICENSE.txt in the top level directory for details.
12 
13 =============================================================================*/
14 
15 #ifndef itkBinariseUsingPaddingImageFilter_h
16 #define itkBinariseUsingPaddingImageFilter_h
17 
18 #include <itkUnaryFunctorImageFilter.h>
19 
20 namespace itk
21 {
22 
23 namespace Functor {
24 
29 template<class TInput, class TOutput>
31 {
32 public:
35  bool operator!=(const BinariseUsingPadding&) const
36  {
37  return false;
38  }
39  bool operator==(const BinariseUsingPadding& other) const
40  {
41  return !(*this != other);
42  }
49  inline TOutput operator()(const TInput& value)
50  {
51  TOutput returnValue = 0;
52 
53  if (value != m_PaddingValue)
54  returnValue = 1;
55  return returnValue;
56  }
60  void SetPaddingValue(const TInput& paddingValue)
61  {
62  m_PaddingValue = paddingValue;
63  }
64  TInput GetPaddingValue() const
65  {
66  return m_PaddingValue;
67  }
68 
69 private:
73  TInput m_PaddingValue;
74 };
75 } // End of namespace functor.
76 
77 
86 template <class TInputImage, class TOutputImage>
88  public UnaryFunctorImageFilter<TInputImage,TOutputImage,
89  Functor::BinariseUsingPadding<
90  typename TInputImage::PixelType,
91  typename TOutputImage::PixelType> >
92 {
93 public:
98  typedef UnaryFunctorImageFilter<TInputImage,TOutputImage,
100  typename TInputImage::PixelType,
102  typedef SmartPointer<Self> Pointer;
103  typedef SmartPointer<const Self> ConstPointer;
107  itkNewMacro(Self);
111  itkTypeMacro(BinariseUsingPaddingImageFilter, UnaryFunctorImageFilter);
115  itkSetMacro(PaddingValue, typename TInputImage::PixelType);
116  itkGetMacro(PaddingValue, typename TInputImage::PixelType);
117 
118 protected:
120  {
121  m_PaddingValue = NumericTraits<typename TInputImage::PixelType>::Zero;
122  }
124  void PrintSelf(std::ostream& os, Indent indent) const;
125  void BeforeThreadedGenerateData();
126 
127 private:
128  BinariseUsingPaddingImageFilter(const Self&);
129  void operator=(const Self&);
133  typename TInputImage::PixelType m_PaddingValue;
134 
135 };
136 
137 } // end namespace itk
138 
139 #ifndef ITK_MANUAL_INSTANTIATION
140 #include "itkBinariseUsingPaddingImageFilter.txx"
141 #endif
142 
143 
144 #endif
~BinariseUsingPadding()
Definition: itkBinariseUsingPaddingImageFilter.h:34
virtual ~BinariseUsingPaddingImageFilter()
Definition: itkBinariseUsingPaddingImageFilter.h:123
bool operator==(const BinariseUsingPadding &other) const
Definition: itkBinariseUsingPaddingImageFilter.h:39
BinariseUsingPadding()
Definition: itkBinariseUsingPaddingImageFilter.h:33
BinariseUsingPaddingImageFilter Self
Definition: itkBinariseUsingPaddingImageFilter.h:97
Definition: niftkITKAffineResampleImage.cxx:74
TOutput operator()(const TInput &value)
Definition: itkBinariseUsingPaddingImageFilter.h:49
void SetPaddingValue(const TInput &paddingValue)
Definition: itkBinariseUsingPaddingImageFilter.h:60
GLsizei const GLfloat * value
Definition: glew.h:1833
Provide the operator to binarise a pixel: return 0, if the pixel is equal to the padding value...
Definition: itkBinariseUsingPaddingImageFilter.h:30
float PixelType
Definition: niftkBreastDCEandADC.cxx:88
UnaryFunctorImageFilter< TInputImage, TOutputImage, Functor::BinariseUsingPadding< typename TInputImage::PixelType, typename TOutputImage::PixelType > > Superclass
Definition: itkBinariseUsingPaddingImageFilter.h:101
TInput GetPaddingValue() const
Definition: itkBinariseUsingPaddingImageFilter.h:64
BinariseUsingPaddingImageFilter()
Definition: itkBinariseUsingPaddingImageFilter.h:119
SmartPointer< const Self > ConstPointer
Definition: itkBinariseUsingPaddingImageFilter.h:103
bool operator!=(const BinariseUsingPadding &) const
Definition: itkBinariseUsingPaddingImageFilter.h:35
SmartPointer< Self > Pointer
Definition: itkBinariseUsingPaddingImageFilter.h:102
Binarise the image using using padding value.
Definition: itkBinariseUsingPaddingImageFilter.h:87