ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkBinaryGeneratorImageFilter.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.
This filter allows per-pixel operations to be specified in several way:
The constant must be of the same type as 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 57 of file itkBinaryGeneratorImageFilter.h.
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | ConstRefFunctionType = OutputImagePixelType(const Input1ImagePixelType &, const Input2ImagePixelType &) |
using | DecoratedInput1ImagePixelType = SimpleDataObjectDecorator< Input1ImagePixelType > |
using | DecoratedInput2ImagePixelType = SimpleDataObjectDecorator< Input2ImagePixelType > |
using | FunctionType = OutputImagePixelType(*)(const Input1ImagePixelType &, const Input2ImagePixelType &) |
using | Input1ImagePixelType = typename Input1ImageType::PixelType |
using | Input1ImagePointer = typename Input1ImageType::ConstPointer |
using | Input1ImageRegionType = typename Input1ImageType::RegionType |
using | Input1ImageType = TInputImage1 |
using | Input2ImagePixelType = typename Input2ImageType::PixelType |
using | Input2ImagePointer = typename Input2ImageType::ConstPointer |
using | Input2ImageRegionType = typename Input2ImageType::RegionType |
using | Input2ImageType = TInputImage2 |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer< Self > |
using | Self = BinaryGeneratorImageFilter |
using | Superclass = InPlaceImageFilter< TInputImage1, TOutputImage > |
using | ValueFunctionType = OutputImagePixelType(Input1ImagePixelType, Input2ImagePixelType) |
Public Types inherited from itk::InPlaceImageFilter< TInputImage1, TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePixelType = typename InputImageType::PixelType |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage1 |
using | OutputImagePixelType = typename Superclass::OutputImagePixelType |
using | OutputImagePointer = typename Superclass::OutputImagePointer |
using | OutputImageRegionType = typename Superclass::OutputImageRegionType |
using | OutputImageType = typename Superclass::OutputImageType |
using | Pointer = SmartPointer< Self > |
using | Self = InPlaceImageFilter |
using | Superclass = ImageToImageFilter< TInputImage1, TOutputImage > |
Public Types inherited from itk::ImageToImageFilter< TInputImage1, TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePixelType = typename InputImageType::PixelType |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage1 |
using | OutputImagePixelType = typename Superclass::OutputImagePixelType |
using | OutputImageRegionType = typename Superclass::OutputImageRegionType |
using | Pointer = SmartPointer< Self > |
using | Self = ImageToImageFilter |
using | Superclass = ImageSource< TOutputImage > |
Public Types inherited from itk::ImageSource< TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = Superclass::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArraySizeType = Superclass::DataObjectPointerArraySizeType |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer< Self > |
using | Self = ImageSource |
using | Superclass = ProcessObject |
Public Types inherited from itk::ProcessObject | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = DataObject::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArray = std::vector< DataObjectPointer > |
using | DataObjectPointerArraySizeType = DataObjectPointerArray::size_type |
using | MultiThreaderType = MultiThreaderBase |
using | NameArray = std::vector< DataObjectIdentifierType > |
using | Pointer = SmartPointer< Self > |
using | Self = ProcessObject |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
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 constexpr unsigned int | InputImage1Dimension = TInputImage1::ImageDimension |
static constexpr unsigned int | InputImage2Dimension = TInputImage2::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::InPlaceImageFilter< TInputImage1, TOutputImage > | |
static constexpr unsigned int | InputImageDimension |
static constexpr unsigned int | OutputImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage1, TOutputImage > | |
static constexpr unsigned int | InputImageDimension |
static constexpr unsigned int | OutputImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Attributes | |
std::function< void(const OutputImageRegionType &)> | m_DynamicThreadedGenerateDataFunction |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage1, TOutputImage > | |
using | InputToOutputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::OutputImageDimension, Self::InputImageDimension > |
using | OutputToInputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::InputImageDimension, Self::OutputImageDimension > |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ImageSource< TOutputImage > | |
bool | m_DynamicMultiThreading |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::ConstPointer = SmartPointer< const Self > |
Definition at line 67 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::ConstRefFunctionType = OutputImagePixelType (const Input1ImagePixelType &, const Input2ImagePixelType &) |
Definition at line 97 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::DecoratedInput1ImagePixelType = SimpleDataObjectDecorator<Input1ImagePixelType> |
Definition at line 80 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::DecoratedInput2ImagePixelType = SimpleDataObjectDecorator<Input2ImagePixelType> |
Definition at line 86 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::FunctionType = OutputImagePixelType (*)(const Input1ImagePixelType &, const Input2ImagePixelType &) |
Definition at line 94 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input1ImagePixelType = typename Input1ImageType::PixelType |
Definition at line 79 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input1ImagePointer = typename Input1ImageType::ConstPointer |
Definition at line 77 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input1ImageRegionType = typename Input1ImageType::RegionType |
Definition at line 78 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input1ImageType = TInputImage1 |
Some convenient type alias.
Definition at line 76 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input2ImagePixelType = typename Input2ImageType::PixelType |
Definition at line 85 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input2ImagePointer = typename Input2ImageType::ConstPointer |
Definition at line 83 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input2ImageRegionType = typename Input2ImageType::RegionType |
Definition at line 84 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Input2ImageType = TInputImage2 |
Definition at line 82 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::OutputImagePixelType = typename OutputImageType::PixelType |
Definition at line 91 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::OutputImagePointer = typename OutputImageType::Pointer |
Definition at line 89 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::OutputImageRegionType = typename OutputImageType::RegionType |
Definition at line 90 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::OutputImageType = TOutputImage |
Definition at line 88 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Pointer = SmartPointer< Self > |
Definition at line 66 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Self = BinaryGeneratorImageFilter |
Standard class type aliases.
Definition at line 64 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::Superclass = InPlaceImageFilter< TInputImage1, TOutputImage > |
Definition at line 65 of file itkBinaryGeneratorImageFilter.h.
using itk::BinaryGeneratorImageFilter< TInputImage1, TInputImage2, TOutputImage >::ValueFunctionType = OutputImagePixelType (Input1ImagePixelType, Input2ImagePixelType) |
Definition at line 99 of file itkBinaryGeneratorImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
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::WeightedAddImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::ConstrainedValueAdditionImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::PowImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MagnitudeAndPhaseToComplexImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::ConstrainedValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AbsoluteValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::Atan2ImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::BinaryMagnitudeImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::SquaredDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AddImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MaximumImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MinimumImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::SubtractImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::DivideImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::XorImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AndImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::OrImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::DivideOrZeroOutImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::ModulusImageFilter< TInputImage1, TInputImage2, TOutputImage >, and itk::MultiplyImageFilter< TInputImage1, TInputImage2, TOutputImage >.
|
overrideprotectedvirtual |
BinaryGeneratorImageFilter can be implemented as a multithreaded filter. Therefore, this implementation provides a ThreadedGenerateData() routine which is called for each processing thread.
The template method is instantiated by the SetFunctor method, and the generated code is run during the update.
Reimplemented from itk::ImageSource< TOutputImage >.
|
protected |
BinaryGeneratorImageFilter can be implemented as a multithreaded filter. Therefore, this implementation provides a ThreadedGenerateData() routine which is called for each processing thread.
The template method is instantiated by the SetFunctor method, and the generated code is run during the update.
|
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.
|
inline |
Set the second operand as a constant.
Definition at line 127 of file itkBinaryGeneratorImageFilter.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.
|
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::MaskNegatedImageFilter< TInputImage, TMaskImage, TOutputImage >, itk::WeightedAddImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::ConstrainedValueAdditionImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::PowImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MagnitudeAndPhaseToComplexImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::ConstrainedValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AbsoluteValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::Atan2ImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::BinaryMagnitudeImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::SquaredDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AddImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MaximumImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::MinimumImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::SubtractImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::LabelOverlayImageFilter< TInputImage, TLabelImage, TOutputImage >, itk::DivideImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::XorImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::AndImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::OrImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::ModulusImageFilter< TInputImage1, TInputImage2, TOutputImage >, itk::DivideOrZeroOutImageFilter< TInputImage1, TInputImage2, TOutputImage >, and itk::MultiplyImageFilter< TInputImage1, TInputImage2, TOutputImage >.
|
static |
Method for creation through the object factory.
|
inline |
Set the second operand as a constant.
Definition at line 123 of file itkBinaryGeneratorImageFilter.h.
|
virtual |
Set the first operand as a constant.
|
virtual |
Set the second operand as a constant.
|
inline |
Set the pixel functor
The functor defines an operation done per pixel.
Definition at line 142 of file itkBinaryGeneratorImageFilter.h.
Referenced by itk::AbsoluteValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >::AbsoluteValueDifferenceImageFilter(), itk::AndImageFilter< TInputImage1, TInputImage2, TOutputImage >::AndImageFilter(), itk::Atan2ImageFilter< TInputImage1, TInputImage2, TOutputImage >::Atan2ImageFilter(), itk::DivideOrZeroOutImageFilter< TInputImage1, TInputImage2, TOutputImage >::BeforeThreadedGenerateData(), itk::WeightedAddImageFilter< TInputImage1, TInputImage2, TOutputImage >::BeforeThreadedGenerateData(), itk::BinaryMagnitudeImageFilter< TInputImage1, TInputImage2, TOutputImage >::BinaryMagnitudeImageFilter(), itk::ConstrainedValueAdditionImageFilter< TInputImage1, TInputImage2, TOutputImage >::ConstrainedValueAdditionImageFilter(), itk::ConstrainedValueDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >::ConstrainedValueDifferenceImageFilter(), itk::JoinImageFilter< TInputImage1, TInputImage2 >::JoinImageFilter(), itk::MagnitudeAndPhaseToComplexImageFilter< TInputImage1, TInputImage2, TOutputImage >::MagnitudeAndPhaseToComplexImageFilter(), itk::MaximumImageFilter< TInputImage1, TInputImage2, TOutputImage >::MaximumImageFilter(), itk::MinimumImageFilter< TInputImage1, TInputImage2, TOutputImage >::MinimumImageFilter(), itk::OrImageFilter< TInputImage1, TInputImage2, TOutputImage >::OrImageFilter(), itk::PowImageFilter< TInputImage1, TInputImage2, TOutputImage >::PowImageFilter(), itk::SquaredDifferenceImageFilter< TInputImage1, TInputImage2, TOutputImage >::SquaredDifferenceImageFilter(), itk::SubtractImageFilter< TInputImage1, TInputImage2, TOutputImage >::SubtractImageFilter(), and itk::XorImageFilter< TInputImage1, TInputImage2, TOutputImage >::XorImageFilter().
|
inline |
Definition at line 150 of file itkBinaryGeneratorImageFilter.h.
|
inline |
Set the pixel functor by a C function pointer
The functor defines an operation done per pixel.
Definition at line 163 of file itkBinaryGeneratorImageFilter.h.
|
inline |
Definition at line 172 of file itkBinaryGeneratorImageFilter.h.
|
inline |
Set the pixel functor by a "Functor Object"
The functor defines an operation done per pixel. A single copy of the argument is created an used for all threads, so the functor must be concurrent thread-safe. The functor must a have an operator() method which accept arguments of Input1ImagePixelType, Input2ImagePixelType.
Definition at line 190 of file itkBinaryGeneratorImageFilter.h.
|
virtual |
Connect the first operand for pixel-wise operation.
|
virtual |
Connect the first operand for pixel-wise operation.
|
virtual |
Connect the first operand for pixel-wise operation.
|
virtual |
Connect the second operand for pixel-wise operation.
|
virtual |
Connect the second operand for pixel-wise operation.
|
virtual |
Connect the second operand for pixel-wise operation.
|
static |
ImageDimension constants
Definition at line 203 of file itkBinaryGeneratorImageFilter.h.
|
static |
ImageDimension constants
Definition at line 205 of file itkBinaryGeneratorImageFilter.h.
|
private |
Definition at line 244 of file itkBinaryGeneratorImageFilter.h.
|
static |
ImageDimension constants
Definition at line 207 of file itkBinaryGeneratorImageFilter.h.