ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkVectorResampleImageFilter.h>
Resample an image via a coordinate transform.
VectorResampleImageFilter resamples an existing image through some coordinate transform, interpolating via some image function. The class is templated over the types of the input and output images.
Note that the choice of interpolator function can be important. This function is set via SetInterpolator(). The default is itk::VectorLinearInterpolateImageFunction<InputImageType, TInterpolatorPrecisionType>, which is reasonable for ordinary medical images.
Since this filter produces an image which is a different size than its input, it needs to override several of the methods defined in ProcessObject in order to properly manage the pipeline execution model. In particular, this filter overrides ProcessObject::GenerateInputRequestedRegion() and ProcessObject::GenerateOutputInformation().
This filter is implemented as a multithreaded filter. It provides a DynamicThreadedGenerateData() method for its implementation.
Definition at line 62 of file itkVectorResampleImageFilter.h.
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | DirectionType = typename TOutputImage::DirectionType |
using | IndexType = typename TOutputImage::IndexType |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage |
using | InterpolatorPointerType = typename InterpolatorType::Pointer |
using | InterpolatorType = VectorInterpolateImageFunction< InputImageType, TInterpolatorPrecisionType > |
using | OriginPointType = typename TOutputImage::PointType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename TOutputImage::RegionType |
using | OutputImageType = TOutputImage |
using | PixelComponentType = typename PixelType::ValueType |
using | PixelType = typename TOutputImage::PixelType |
using | Pointer = SmartPointer< Self > |
using | PointType = typename InterpolatorType::PointType |
using | Self = VectorResampleImageFilter |
using | SizeType = Size< Self::ImageDimension > |
using | SpacingType = typename TOutputImage::SpacingType |
using | Superclass = ImageToImageFilter< TInputImage, TOutputImage > |
using | TransformPointerType = typename TransformType::ConstPointer |
using | TransformType = Transform< TInterpolatorPrecisionType, Self::ImageDimension, Self::ImageDimension > |
Public Types inherited from itk::ImageToImageFilter< TInputImage, 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 = TInputImage |
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 | ImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, 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::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::ConstPointer = SmartPointer< const Self > |
Definition at line 72 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::DirectionType = typename TOutputImage::DirectionType |
Definition at line 122 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::IndexType = typename TOutputImage::IndexType |
Image index type alias.
Definition at line 107 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::InputImageConstPointer = typename InputImageType::ConstPointer |
Definition at line 77 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::InputImagePointer = typename InputImageType::Pointer |
Definition at line 76 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::InputImageRegionType = typename InputImageType::RegionType |
Definition at line 79 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::InputImageType = TInputImage |
Definition at line 74 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::InterpolatorPointerType = typename InterpolatorType::Pointer |
Definition at line 101 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::InterpolatorType = VectorInterpolateImageFunction< InputImageType, TInterpolatorPrecisionType > |
Interpolator type alias.
Definition at line 100 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::OriginPointType = typename TOutputImage::PointType |
Definition at line 121 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::OutputImagePointer = typename OutputImageType::Pointer |
Definition at line 78 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::OutputImageRegionType = typename TOutputImage::RegionType |
Typedef to describe the output image region type.
Definition at line 117 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::OutputImageType = TOutputImage |
Definition at line 75 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::PixelComponentType = typename PixelType::ValueType |
Definition at line 114 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::PixelType = typename TOutputImage::PixelType |
Image pixel value type alias.
Definition at line 113 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::Pointer = SmartPointer< Self > |
Definition at line 71 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::PointType = typename InterpolatorType::PointType |
Image point type alias.
Definition at line 110 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::Self = VectorResampleImageFilter |
Standard class type aliases.
Definition at line 69 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::SizeType = Size< Self::ImageDimension > |
Image size type alias.
Definition at line 104 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::SpacingType = typename TOutputImage::SpacingType |
Image spacing, origin and direction type alias.
Definition at line 120 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::Superclass = ImageToImageFilter< TInputImage, TOutputImage > |
Definition at line 70 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::TransformPointerType = typename TransformType::ConstPointer |
Definition at line 97 of file itkVectorResampleImageFilter.h.
using itk::VectorResampleImageFilter< TInputImage, TOutputImage, TInterpolatorPrecisionType >::TransformType = Transform< TInterpolatorPrecisionType, Self::ImageDimension, Self::ImageDimension > |
Transform type alias.
Definition at line 96 of file itkVectorResampleImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
overridevirtual |
Set the state of the filter after multi-threading.
Reimplemented from itk::ImageSource< TOutputImage >.
|
overridevirtual |
Set the state of the filter before multi-threading. Note that InterpolatorType::SetInputImage is not thread-safe and hence has to be set up before DynamicThreadedGenerateData.
Reimplemented from itk::ImageSource< TOutputImage >.
|
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.
|
overrideprotectedvirtual |
VectorResampleImageFilter can be implemented as a multithreaded filter. Therefore, this implementation provides a DynamicThreadedGenerateData() routine which is called for each processing thread. The output image data is allocated automatically by the superclass prior to calling DynamicThreadedGenerateData(). DynamicThreadedGenerateData can only write to the portion of the output image specified by the parameter "outputRegionForThread"
Reimplemented from itk::ImageSource< TOutputImage >.
|
overridevirtual |
VectorResampleImageFilter needs a different input requested region than the output requested region. As such, VectorResampleImageFilter needs to provide an implementation for GenerateInputRequestedRegion() in order to inform the pipeline execution model.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
overridevirtual |
VectorResampleImageFilter produces an image which is a different size than its input. As such, it needs to provide an implementation for GenerateOutputInformation() in order to inform the pipeline execution model. The original documentation of this method is below.
Reimplemented from itk::ProcessObject.
|
virtual |
Get the pixel value when a transformed pixel is outside of the image
|
virtual |
|
virtual |
Get a pointer to the interpolator function.
|
overridevirtual |
Compute the Modified Time based on changed to the components.
Reimplemented from itk::Object.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Set/Get the output direction cosine matrix.
|
virtual |
Get the output image origin.
|
virtual |
Get the output image spacing.
|
virtual |
Get the start index of the output largest possible region.
|
virtual |
Get the size of the output image.
|
virtual |
Set/Get the coordinate transformation. Set the coordinate transform to use for resampling. Note that this must be in index coordinates and is the output-to-input transform, NOT the input-to-output transform that you might naively expect. The default is itk::AffineTransform<TInterpolatorPrecisionType, ImageDimension>.
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Set the pixel value when a transformed pixel is outside of the image. The default default pixel value is 0.
|
virtual |
Set the interpolator function. The default is itk::VectorLinearInterpolateImageFunction<InputImageType, TInterpolatorPrecisionType>.
|
virtual |
Set/Get the output direction cosine matrix.
|
virtual |
Set the output image origin.
|
virtual |
Set the output image origin.
|
virtual |
Set the output image spacing.
|
virtual |
Set the output image spacing.
|
virtual |
Set the start index of the output largest possible region. The default is an index of all zeros.
|
virtual |
Set the size of the output image.
|
virtual |
Set/Get the coordinate transformation. Set the coordinate transform to use for resampling. Note that this must be in index coordinates and is the output-to-input transform, NOT the input-to-output transform that you might naively expect. The default is itk::AffineTransform<TInterpolatorPrecisionType, ImageDimension>.
|
static |
Number of dimensions.
Definition at line 88 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 235 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 234 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 238 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 237 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 236 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 239 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 232 of file itkVectorResampleImageFilter.h.
|
private |
Definition at line 233 of file itkVectorResampleImageFilter.h.