ITK
4.6.0
Insight Segmentation and Registration Toolkit
|
#include <itkGradientVectorFlowImageFilter.h>
This class computes a diffusion of the gradient vectors for graylevel or binary edge map derive from the image. It enlarges the capture range of the gradient force and make external force derived from the gradient work effectively in the framework of deformable model.
This implementation of GVF closely follows this paper: http://ww.vavlab.ee.boun.edu.tr/courses/574/materialx/Active%20Contours/xu_GVF.pdf
dx and dy are assumed to be 1 and the CFL restriction for convergence has been modified for multi-dimensional images
Definition at line 49 of file itkGradientVectorFlowImageFilter.h.
Public Member Functions | |
virtual ::itk::LightObject::Pointer | CreateAnother (void) const |
virtual int | GetIterationNum () const |
virtual const char * | GetNameOfClass () const |
virtual double | GetNoiseLevel () const |
virtual double | GetTimeStep () const |
virtual void | SetIterationNum (int _arg) |
virtual void | SetLaplacianFilter (LaplacianFilterPointer _arg) |
virtual void | SetNoiseLevel (double _arg) |
virtual void | SetTimeStep (double _arg) |
typedef (Concept::SameDimension< ImageDimension, OutputImageDimension >) SameDimensionCheck | |
typedef (Concept::HasNumericTraits< typename PixelType::ValueType >) InputHasNumericTraitsCheck | |
typedef (Concept::HasNumericTraits< typename TOutputImage::PixelType::ValueType >) OutputHasNumericTraitsCheck | |
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 () |
Static Public Attributes | |
static const unsigned int | ImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
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 |
Private Member Functions | |
GradientVectorFlowImageFilter (const Self &) | |
void | operator= (const Self &) |
typedef SmartPointer< const Self > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::ConstPointer |
Definition at line 60 of file itkGradientVectorFlowImageFilter.h.
typedef TInputImage::IndexType itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::IndexType |
Definition at line 72 of file itkGradientVectorFlowImageFilter.h.
typedef ImageRegionConstIterator< InputImageType > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InputImageConstIterator |
Definition at line 80 of file itkGradientVectorFlowImageFilter.h.
typedef ImageRegionIterator< InputImageType > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InputImageIterator |
Image and Image iterator definition.
Definition at line 79 of file itkGradientVectorFlowImageFilter.h.
typedef TInputImage itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InputImageType |
Some typedefs.
Definition at line 66 of file itkGradientVectorFlowImageFilter.h.
typedef ImageRegionConstIterator< InternalImageType > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InternalImageConstIterator |
Definition at line 94 of file itkGradientVectorFlowImageFilter.h.
typedef ImageRegionIterator< InternalImageType > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InternalImageIterator |
Definition at line 93 of file itkGradientVectorFlowImageFilter.h.
typedef InternalImageType::Pointer itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InternalImagePointer |
Definition at line 92 of file itkGradientVectorFlowImageFilter.h.
typedef itk::Image< InternalPixelType, itkGetStaticConstMacro(ImageDimension) > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InternalImageType |
Definition at line 91 of file itkGradientVectorFlowImageFilter.h.
typedef TInternalPixel itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::InternalPixelType |
Definition at line 90 of file itkGradientVectorFlowImageFilter.h.
typedef LaplacianFilterType::Pointer itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::LaplacianFilterPointer |
Definition at line 97 of file itkGradientVectorFlowImageFilter.h.
typedef LaplacianImageFilter< InternalImageType, InternalImageType > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::LaplacianFilterType |
Definition at line 96 of file itkGradientVectorFlowImageFilter.h.
typedef ImageRegionIterator< OutputImageType > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::OutputImageIterator |
Definition at line 81 of file itkGradientVectorFlowImageFilter.h.
typedef OutputImageType::Pointer itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::OutputImagePointer |
Definition at line 75 of file itkGradientVectorFlowImageFilter.h.
typedef TOutputImage itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::OutputImageType |
Definition at line 70 of file itkGradientVectorFlowImageFilter.h.
typedef TInputImage::PixelType itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::PixelType |
Definition at line 74 of file itkGradientVectorFlowImageFilter.h.
typedef SmartPointer< Self > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::Pointer |
Smart pointer typedef support
Definition at line 59 of file itkGradientVectorFlowImageFilter.h.
typedef OutputImageType::RegionType itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::RegionType |
Definition at line 76 of file itkGradientVectorFlowImageFilter.h.
typedef GradientVectorFlowImageFilter itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::Self |
Standard "Self" typedef.
Definition at line 53 of file itkGradientVectorFlowImageFilter.h.
typedef TInputImage::SizeType itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::SizeType |
Definition at line 73 of file itkGradientVectorFlowImageFilter.h.
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::Superclass |
Standard "Superclass" typedef.
Definition at line 56 of file itkGradientVectorFlowImageFilter.h.
|
protected |
|
inlineprotected |
Definition at line 125 of file itkGradientVectorFlowImageFilter.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 |
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
|
virtual |
|
protected |
Precompute m_BImage and m_CImage[i] and allocate memory for all the various internal images
|
static |
Method of 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 |
Routines.
|
virtual |
|
virtual |
itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::typedef | ( | Concept::SameDimension< ImageDimension, OutputImageDimension > | ) |
This class requires SameDimensionCheck in the form of ( Concept::SameDimension< ImageDimension, OutputImageDimension > )
itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::typedef | ( | Concept::HasNumericTraits< typename PixelType::ValueType > | ) |
This class requires InputHasNumericTraitsCheck in the form of ( Concept::HasNumericTraits< typename PixelType::ValueType > )
itk::GradientVectorFlowImageFilter< TInputImage, TOutputImage, TInternalPixel >::typedef | ( | Concept::HasNumericTraits< typename TOutputImage::PixelType::ValueType > | ) |
This class requires OutputHasNumericTraitsCheck in the form of ( Concept::HasNumericTraits< typename TOutputImage::PixelType::ValueType > )
|
protected |
Convenience function to split the m_IntermediateImage into its component images (m_InternalImages[i]
|
protected |
Calculate the next timestep and update the appropriate images
|
static |
Image dimension.
Definition at line 85 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 159 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 161 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 156 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 158 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 153 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 155 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 151 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 149 of file itkGradientVectorFlowImageFilter.h.
|
private |
Definition at line 147 of file itkGradientVectorFlowImageFilter.h.
|
static |
Image dimension.
Definition at line 87 of file itkGradientVectorFlowImageFilter.h.