ITK
4.9.0
Insight Segmentation and Registration Toolkit
|
#include <itkBinaryFunctorImageFilter.h>
Implements pixel-wise generic operation of two images, or of an image and a constant.
This class is parameterized over the types of the two input images and the type of the output image. It is also parameterized by the operation to be applied. A Functor style is used.
The constant must be of the same type than the pixel type of the corresponding image. It is wrapped in a SimpleDataObjectDecorator so it can be updated through the pipeline. The SetConstant() and GetConstant() methods are provided as shortcuts to set or get the constant value without manipulating the decorator.
Definition at line 51 of file itkBinaryFunctorImageFilter.h.
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static const unsigned int | InputImage1Dimension = TInputImage1::ImageDimension |
static const unsigned int | InputImage2Dimension = TInputImage2::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::InPlaceImageFilter< TInputImage1, TOutputImage > | |
static const unsigned int | InputImageDimension |
static const unsigned int | OutputImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage1, TOutputImage > | |
static const unsigned int | InputImageDimension |
static const unsigned int | OutputImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Member Functions | |
BinaryFunctorImageFilter (const Self &) ITK_DELETE_FUNCTION | |
void | operator= (const Self &) ITK_DELETE_FUNCTION |
Private Attributes | |
FunctorType | m_Functor |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage1, TOutputImage > | |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(OutputImageDimension), itkGetStaticConstMacro(InputImageDimension) > | InputToOutputRegionCopierType |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) > | OutputToInputRegionCopierType |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
AtomicInt< int > | m_ReferenceCount |
typedef SmartPointer< const Self > itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::ConstPointer |
Definition at line 59 of file itkBinaryFunctorImageFilter.h.
typedef SimpleDataObjectDecorator<Input1ImagePixelType> itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::DecoratedInput1ImagePixelType |
Definition at line 74 of file itkBinaryFunctorImageFilter.h.
typedef SimpleDataObjectDecorator<Input2ImagePixelType> itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::DecoratedInput2ImagePixelType |
Definition at line 81 of file itkBinaryFunctorImageFilter.h.
typedef TFunction itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::FunctorType |
Some convenient typedefs.
Definition at line 65 of file itkBinaryFunctorImageFilter.h.
typedef Input1ImageType::PixelType itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input1ImagePixelType |
Definition at line 72 of file itkBinaryFunctorImageFilter.h.
typedef Input1ImageType::ConstPointer itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input1ImagePointer |
Definition at line 70 of file itkBinaryFunctorImageFilter.h.
typedef Input1ImageType::RegionType itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input1ImageRegionType |
Definition at line 71 of file itkBinaryFunctorImageFilter.h.
typedef TInputImage1 itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input1ImageType |
Definition at line 69 of file itkBinaryFunctorImageFilter.h.
typedef Input2ImageType::PixelType itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input2ImagePixelType |
Definition at line 79 of file itkBinaryFunctorImageFilter.h.
typedef Input2ImageType::ConstPointer itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input2ImagePointer |
Definition at line 77 of file itkBinaryFunctorImageFilter.h.
typedef Input2ImageType::RegionType itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input2ImageRegionType |
Definition at line 78 of file itkBinaryFunctorImageFilter.h.
typedef TInputImage2 itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Input2ImageType |
Definition at line 76 of file itkBinaryFunctorImageFilter.h.
typedef OutputImageType::PixelType itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::OutputImagePixelType |
Definition at line 86 of file itkBinaryFunctorImageFilter.h.
typedef OutputImageType::Pointer itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::OutputImagePointer |
Definition at line 84 of file itkBinaryFunctorImageFilter.h.
typedef OutputImageType::RegionType itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::OutputImageRegionType |
Definition at line 85 of file itkBinaryFunctorImageFilter.h.
typedef TOutputImage itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::OutputImageType |
Definition at line 83 of file itkBinaryFunctorImageFilter.h.
typedef SmartPointer< Self > itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Pointer |
Definition at line 58 of file itkBinaryFunctorImageFilter.h.
typedef BinaryFunctorImageFilter itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Self |
Standard class typedefs.
Definition at line 56 of file itkBinaryFunctorImageFilter.h.
typedef InPlaceImageFilter< TInputImage1, TOutputImage > itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::Superclass |
Definition at line 57 of file itkBinaryFunctorImageFilter.h.
|
protected |
|
inlineprotectedvirtual |
Definition at line 178 of file itkBinaryFunctorImageFilter.h.
|
private |
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
Reimplemented in itk::AddImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >, itk::DivideImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >, itk::SubtractImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >, and itk::MultiplyImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >.
|
overrideprotectedvirtual |
Generate the information describing the output data. The default implementation of this method will copy information from the input to the output. A filter may override this method if its output will have different information than its input. For instance, a filter that shrinks an image will need to provide an implementation for this method that changes the spacing of the pixels. Such filters should call their superclass' implementation of this method prior to changing the information values they need (i.e. GenerateOutputInformation() should call Superclass::GenerateOutputInformation() prior to changing the information.
Reimplemented from itk::ProcessObject.
Reimplemented in itk::LabelOverlayImageFilter< TInputImage, TLabelImage, TOutputImage >.
|
inline |
Set the second operand as a constant
Definition at line 114 of file itkBinaryFunctorImageFilter.h.
|
virtual |
Get the constant value of the first operand. An exception is sent if the first operand is not a constant
|
virtual |
Get the constant value of the second operand. An exception is sent if the second operand is not a constant.
|
inline |
Get the functor object. The functor is returned by reference. (Functors do not have to derive from itk::LightObject, so they do not necessarily have a reference count. So we cannot return a SmartPointer.)
Definition at line 129 of file itkBinaryFunctorImageFilter.h.
|
inline |
Get the functor object. The functor is returned by reference. (Functors do not have to derive from itk::LightObject, so they do not necessarily have a reference count. So we cannot return a SmartPointer.)
Definition at line 135 of file itkBinaryFunctorImageFilter.h.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::InPlaceImageFilter< TInputImage1, TOutputImage >.
Reimplemented in itk::JoinImageFilter< TInputImage1, TInputImage2 >, itk::MaskImageFilter< TInputImage, TMaskImage, TOutputImage >, itk::ModulusImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::WeightedAddImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AddImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AddImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >, itk::ConstrainedValueAdditionImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::DivideImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MagnitudeAndPhaseToComplexImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::SubtractImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::DivideImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >, itk::SubtractImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >, itk::PowImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::ConstrainedValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AbsoluteValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::Atan2ImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::XorImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::SquaredDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::BinaryMagnitudeImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::OrImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AndImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::DivideOrZeroOutImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MaximumImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MinimumImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MultiplyImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MultiplyImageFilter< TInputImage, Image< TConstant, TInputImage::ImageDimension >, TOutputImage >, itk::LabelOverlayImageFilter< TInputImage, TLabelImage, TOutputImage >, itk::SubtractConstantFromImageFilter< TInputImage, TConstant, TOutputImage >, itk::DivideByConstantImageFilter< TInputImage, TConstant, TOutputImage >, itk::MultiplyByConstantImageFilter< TInputImage, TConstant, TOutputImage >, and itk::AddConstantToImageFilter< TInputImage, TConstant, TOutputImage >.
|
static |
Method for creation through the object factory.
|
private |
|
inline |
Set the second operand as a constant
Definition at line 110 of file itkBinaryFunctorImageFilter.h.
|
virtual |
Set the first operand as a constant
|
virtual |
Set the second operand as a constant
|
inline |
Set the functor object. This replaces the current Functor with a copy of the specified Functor. This allows the user to specify a functor that has ivars set differently than the default functor. This method requires an operator!=() be defined on the functor (or the compiler's default implementation of operator!=() being appropriate).
Definition at line 146 of file itkBinaryFunctorImageFilter.h.
|
virtual |
Connect one of the operands for pixel-wise operation
|
virtual |
Connect one of the operands for pixel-wise operation
|
virtual |
Connect one of the operands for pixel-wise operation
|
virtual |
Connect one of the operands for pixel-wise operation
|
virtual |
Connect one of the operands for pixel-wise operation
|
virtual |
Connect one of the operands for pixel-wise operation
|
overrideprotectedvirtual |
BinaryFunctorImageFilter can be implemented as a multithreaded filter. Therefore, this implementation provides a ThreadedGenerateData() routine which is called for each processing thread. The output image data is allocated automatically by the superclass prior to calling ThreadedGenerateData(). ThreadedGenerateData can only write to the portion of the output image specified by the parameter "outputRegionForThread"
Reimplemented from itk::ImageSource< TOutputImage >.
itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::typedef | ( | Concept::SameDimension< itkGetStaticConstMacro(InputImage1Dimension), itkGetStaticConstMacro(InputImage2Dimension) > | ) |
This class requires SameDimensionCheck1 in the form of ( Concept::SameDimension< itkGetStaticConstMacro(InputImage1Dimension), itkGetStaticConstMacro(InputImage2Dimension) > )
itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, TFunction >::typedef | ( | Concept::SameDimension< itkGetStaticConstMacro(InputImage1Dimension), itkGetStaticConstMacro(OutputImageDimension) > | ) |
This class requires SameDimensionCheck2 in the form of ( Concept::SameDimension< itkGetStaticConstMacro(InputImage1Dimension), itkGetStaticConstMacro(OutputImageDimension) > )
|
static |
ImageDimension constants
Definition at line 158 of file itkBinaryFunctorImageFilter.h.
|
static |
ImageDimension constants
Definition at line 160 of file itkBinaryFunctorImageFilter.h.
|
private |
Definition at line 201 of file itkBinaryFunctorImageFilter.h.
Referenced by itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::DivideOrZeroOut< TInputImage1::PixelType, TInputImage2::PixelType, TOutputImage::PixelType > >::GetFunctor(), and itk::BinaryFunctorImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::DivideOrZeroOut< TInputImage1::PixelType, TInputImage2::PixelType, TOutputImage::PixelType > >::SetFunctor().
|
static |
ImageDimension constants
Definition at line 162 of file itkBinaryFunctorImageFilter.h.