ITK
4.6.0
Insight Segmentation and Registration Toolkit
|
#include <itkIterativeInverseDisplacementFieldImageFilter.h>
Computes the inverse of a displacement field.
IterativeInverseDisplacementFieldImageFilter takes a displacement field as input and computes the displacement field that is its inverse. If the input displacement field was mapping coordinates from a space A into a space B, the output of this filter will map coordinates from the space B into the space A.
The algorithm implemented in this filter uses an iterative method for progresively refining the values of the inverse field. Starting from the direct field, at every pixel the direct mapping of this point is found, and a the nevative of the current displacement is stored in the inverse field at the nearest pixel. Then, subsequent iterations verify if any of the neigbor pixels provide a better return to the current pixel, in which case its value is taken for updating the vector in the inverse field.
This method was discussed in the users-list during February 2004.
Definition at line 52 of file itkIterativeInverseDisplacementFieldImageFilter.h.
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual const char * | GetNameOfClass () const |
virtual unsigned int | GetNumberOfIterations () const |
virtual double | GetStopValue () const |
virtual void | SetNumberOfIterations (unsigned int _arg) |
virtual void | SetStopValue (double _arg) |
typedef (Concept::HasNumericTraits< OutputImageValueType >) OutputHasNumericTraitsCheck | |
typedef (Concept::SameDimension< TInputImage::ImageDimension, TOutputImage::ImageDimension >) SameDimensionCheck | |
Public Member Functions inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
const InputImageType * | GetInput (void) const |
const InputImageType * | GetInput (unsigned int idx) const |
virtual void | PopBackInput () |
virtual void | PopFrontInput () |
virtual void | PushBackInput (const InputImageType *image) |
virtual void | PushFrontInput (const InputImageType *image) |
virtual void | SetInput (const InputImageType *image) |
virtual void | SetInput (unsigned int, const TInputImage *image) |
virtual void | SetCoordinateTolerance (double _arg) |
virtual double | GetCoordinateTolerance () const |
virtual void | SetDirectionTolerance (double _arg) |
virtual double | GetDirectionTolerance () const |
Public Member Functions inherited from itk::ImageSource< TOutputImage > | |
OutputImageType * | GetOutput (unsigned int idx) |
virtual void | GraftNthOutput (unsigned int idx, DataObject *output) |
virtual void | GraftOutput (DataObject *output) |
virtual void | GraftOutput (const DataObjectIdentifierType &key, DataObject *output) |
OutputImageType * | GetOutput (void) |
const OutputImageType * | GetOutput (void) const |
virtual ProcessObject::DataObjectPointer | MakeOutput (ProcessObject::DataObjectPointerArraySizeType idx) ITK_OVERRIDE |
Public Member Functions inherited from itk::ProcessObject | |
virtual void | AbortGenerateDataOff () |
virtual void | AbortGenerateDataOn () |
virtual void | EnlargeOutputRequestedRegion (DataObject *) |
virtual const bool & | GetAbortGenerateData () const |
NameArray | GetInputNames () const |
MultiThreader * | GetMultiThreader () const |
DataObjectPointerArraySizeType | GetNumberOfIndexedInputs () const |
DataObjectPointerArraySizeType | GetNumberOfInputs () const |
DataObjectPointerArraySizeType | GetNumberOfOutputs () const |
virtual DataObjectPointerArraySizeType | GetNumberOfValidRequiredInputs () const |
NameArray | GetOutputNames () const |
virtual const float & | GetProgress () const |
NameArray | GetRequiredInputNames () const |
bool | HasInput (const DataObjectIdentifierType &key) const |
bool | HasOutput (const DataObjectIdentifierType &key) const |
virtual DataObjectPointer | MakeOutput (const DataObjectIdentifierType &) |
virtual void | PrepareOutputs () |
virtual void | PropagateRequestedRegion (DataObject *output) |
virtual void | ResetPipeline () |
virtual void | SetAbortGenerateData (bool _arg) |
virtual void | Update () |
virtual void | UpdateLargestPossibleRegion () |
virtual void | UpdateOutputData (DataObject *output) |
virtual void | UpdateOutputInformation () |
void | UpdateProgress (float progress) |
DataObjectPointerArray | GetInputs () |
DataObjectPointerArray | GetOutputs () |
DataObjectPointerArray | GetIndexedInputs () |
DataObjectPointerArray | GetIndexedOutputs () |
DataObjectPointerArraySizeType | GetNumberOfIndexedOutputs () const |
void | SetProgress (float progress) |
virtual void | SetReleaseDataFlag (bool flag) |
virtual bool | GetReleaseDataFlag () const |
void | ReleaseDataFlagOn () |
void | ReleaseDataFlagOff () |
virtual void | SetReleaseDataBeforeUpdateFlag (bool _arg) |
virtual const bool & | GetReleaseDataBeforeUpdateFlag () const |
virtual void | ReleaseDataBeforeUpdateFlagOn () |
virtual void | ReleaseDataBeforeUpdateFlagOff () |
virtual void | SetNumberOfThreads (ThreadIdType _arg) |
virtual const ThreadIdType & | GetNumberOfThreads () const |
Public Member Functions inherited from itk::Object | |
unsigned long | AddObserver (const EventObject &event, Command *) |
unsigned long | AddObserver (const EventObject &event, Command *) const |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary (void) |
const MetaDataDictionary & | GetMetaDataDictionary (void) const |
virtual ModifiedTimeType | GetMTime () const |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
virtual void | Register () const ITK_OVERRIDE |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) |
void | SetDebug (bool debugFlag) const |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
virtual void | SetReferenceCount (int) ITK_OVERRIDE |
virtual void | UnRegister () const ITK_OVERRIDE |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
Public Member Functions inherited from itk::LightObject | |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
void | Print (std::ostream &os, Indent indent=0) const |
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 () |
Protected Attributes | |
unsigned int | m_NumberOfIterations |
double | m_StopValue |
double | m_Time |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
InternalReferenceCountType | m_ReferenceCount |
SimpleFastMutexLock | m_ReferenceCountLock |
Private Member Functions | |
IterativeInverseDisplacementFieldImageFilter (const Self &) | |
void | operator= (const Self &) |
Additional Inherited Members | |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(OutputImageDimension), itkGetStaticConstMacro(InputImageDimension) > | InputToOutputRegionCopierType |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) > | OutputToInputRegionCopierType |
Protected Types inherited from itk::LightObject | |
typedef int | InternalReferenceCountType |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
typedef SmartPointer< const Self > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::ConstPointer |
Definition at line 60 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef FieldInterpolatorType::OutputType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::FieldInterpolatorOutputType |
Definition at line 92 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef FieldInterpolatorType::Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::FieldInterpolatorPointer |
Definition at line 91 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef VectorLinearInterpolateImageFunction< TInputImage, double > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::FieldInterpolatorType |
Definition at line 90 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef ImageRegionConstIterator< InputImageType > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputConstIterator |
Definition at line 84 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef InputImageType::ConstPointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageConstPointer |
Definition at line 70 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef InputImageType::Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImagePointer |
Definition at line 71 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef InputImageType::PointType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImagePointType |
Definition at line 72 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef InputImageType::RegionType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageRegionType |
Definition at line 73 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef InputImageType::SpacingType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageSpacingType |
Definition at line 74 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef TInputImage itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageType |
Some typedefs.
Definition at line 66 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef ImageRegionIterator< InputImageType > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputIterator |
Definition at line 85 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef OutputImageType::IndexType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImageIndexType |
Definition at line 79 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef OutputImageType::PixelType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImagePixelType |
Definition at line 77 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef OutputImageType::Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImagePointer |
Definition at line 76 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef OutputImageType::PointType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImagePointType |
Definition at line 78 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef TOutputImage itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImageType |
Definition at line 75 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef OutputImagePixelType::ValueType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImageValueType |
Definition at line 80 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef ImageRegionIterator< OutputImageType > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputIterator |
Definition at line 86 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef SmartPointer< Self > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::Pointer |
Definition at line 59 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef IterativeInverseDisplacementFieldImageFilter itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::Self |
Standard class typedefs.
Definition at line 57 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::Superclass |
Definition at line 58 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef TimeProbe itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::TimeType |
Definition at line 82 of file itkIterativeInverseDisplacementFieldImageFilter.h.
typedef WarpVectorImageFilter< TOutputImage, TInputImage, TOutputImage > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::VectorWarperType |
Definition at line 88 of file itkIterativeInverseDisplacementFieldImageFilter.h.
|
protected |
|
inlineprotected |
Definition at line 116 of file itkIterativeInverseDisplacementFieldImageFilter.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.
|
protectedvirtual |
A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling ThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter an be threaded, it should NOT provide a GenerateData() method but should provide a ThreadedGenerateData() instead.
Reimplemented from itk::ImageSource< TOutputImage >.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
|
virtual |
|
static |
Method for creation through the object factory.
|
private |
|
protectedvirtual |
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 |
|
virtual |
itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::typedef | ( | Concept::HasNumericTraits< OutputImageValueType > | ) |
This class requires OutputHasNumericTraitsCheck in the form of ( Concept::HasNumericTraits< OutputImageValueType > )
itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::typedef | ( | Concept::SameDimension< TInputImage::ImageDimension, TOutputImage::ImageDimension > | ) |
This class requires SameDimensionCheck in the form of ( Concept::SameDimension< TInputImage::ImageDimension, TOutputImage::ImageDimension > )
|
protected |
Definition at line 122 of file itkIterativeInverseDisplacementFieldImageFilter.h.
|
protected |
Definition at line 124 of file itkIterativeInverseDisplacementFieldImageFilter.h.
|
protected |
Definition at line 125 of file itkIterativeInverseDisplacementFieldImageFilter.h.