ITK
5.2.0
Insight Toolkit
|
#include <itkNarrowBandImageFilterBase.h>
Classes | |
struct | ThreadRegionType |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = Superclass::ImageDimension |
Static Public Attributes inherited from itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | ImageDimension = OutputImageType::ImageDimension |
Static Public Attributes inherited from itk::InPlaceImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | OutputImageDimension = 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 |
NarrowBandPointer | m_NarrowBand |
std::vector< RegionType > | m_RegionList |
IdentifierType | m_ReinitializationFrequency |
IdentifierType | m_Step |
bool | m_Touched |
std::vector< bool > | m_TouchedForThread |
ValueType | m_IsoSurfaceValue |
virtual void | SetIsoSurfaceValue (ValueType _arg) |
virtual ValueType | GetIsoSurfaceValue () const |
void | InsertNarrowBandNode (const BandNodeType &node) |
void | InsertNarrowBandNode (const IndexType &index) |
void | InsertNarrowBandNode (const IndexType &index, const PixelType &value, const signed char &nodestate) |
void | SetNarrowBandTotalRadius (const float &val) |
float | GetNarrowBandTotalRadius () const |
void | SetNarrowBandInnerRadius (const float &val) |
float | GetNarrowBandInnerRadius () const |
virtual void | CreateNarrowBand () |
virtual void | SetNarrowBand (NarrowBandType *ptr) |
void | CopyInputToOutput () override |
NarrowBandImageFilterBase () | |
~NarrowBandImageFilterBase () override=default | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
void | GetSplitRegion (const vcl_size_t &i, ThreadRegionType &splitRegion) |
void | Initialize () override |
void | InitializeIteration () override |
void | PostProcessOutput () override |
void | ClearNarrowBand () |
void | GenerateData () override |
void | AllocateUpdateBuffer () override |
virtual void | ThreadedApplyUpdate (const TimeStepType &dt, const ThreadRegionType ®ionToProcess, ThreadIdType threadId) |
void | ApplyUpdate (const TimeStepType &) override |
virtual TimeStepType | ThreadedCalculateChange (const ThreadRegionType ®ionToProcess) |
TimeStepType | CalculateChange () override |
This class implements a multi-threaded finite difference image to image solver that can be applied to an arbitrary list of pixels.
Definition at line 69 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::BandNodeType = BandNode<IndexType, PixelType> |
This is the storage type for the nodes on the narrow band.
Definition at line 107 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::ConstPointer = SmartPointer<const Self> |
Definition at line 78 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::FiniteDifferenceFunctionType = typename Superclass::FiniteDifferenceFunctionType |
Definition at line 86 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::IndexType = typename OutputImageType::IndexType |
The index type for the output image.
Definition at line 100 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::InputImageType = typename Superclass::InputImageType |
Typedefs from the superclass
Definition at line 84 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::NarrowBandIterator = typename NarrowBandType::Iterator |
Definition at line 113 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::NarrowBandPointer = typename NarrowBandType::Pointer |
Definition at line 111 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::NarrowBandType = NarrowBand<BandNodeType> |
The list type for storing the narrow band.
Definition at line 110 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::OutputImageType = typename Superclass::OutputImageType |
Definition at line 85 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::PixelType = typename Superclass::PixelType |
The pixel type of the output image will be used in computations. Inherited from the superclass.
Definition at line 94 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::Pointer = SmartPointer<Self> |
Definition at line 77 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::RegionType = typename NarrowBandType::RegionType |
Definition at line 112 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::Self = NarrowBandImageFilterBase |
Standard class type aliases
Definition at line 75 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::Superclass = FiniteDifferenceImageFilter<TInputImage, TOutputImage> |
Definition at line 76 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::TimeStepType = typename Superclass::TimeStepType |
The value type of a time step. Inherited from the superclass.
Definition at line 97 of file itkNarrowBandImageFilterBase.h.
using itk::NarrowBandImageFilterBase< TInputImage, TOutputImage >::ValueType = typename OutputImageType::ValueType |
The data type used in numerical computations. Derived from the output image type.
Definition at line 104 of file itkNarrowBandImageFilterBase.h.
|
inlineprotected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 222 of file itkNarrowBandImageFilterBase.h.
|
overrideprotecteddefault |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
|
inlineoverrideprivatevirtual |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Implements itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
Definition at line 311 of file itkNarrowBandImageFilterBase.h.
|
inlineoverrideprivatevirtual |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Implements itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
Definition at line 321 of file itkNarrowBandImageFilterBase.h.
|
inlineoverrideprivatevirtual |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Implements itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
Definition at line 331 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
|
overridevirtual |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Implements itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
|
inlinevirtual |
This is the virtual method called by Initialize to set the band of operation. It is left to the subclasses to define this functionality. This function can make use of above InsertNarrowBandNode function to create a band.
Reimplemented in itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, TOutputImage >, and itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >.
Definition at line 205 of file itkNarrowBandImageFilterBase.h.
|
overrideprotectedvirtual |
This is the default, high-level algorithm for calculating finite difference solutions. It calls virtual methods in its subclasses to implement the major steps of the algorithm.
This method is a thread implementation of the iterative scheme implemented in itkFiniteDifferenceImageFilter::GenerateData. It relies on ThreadedApplyUpdate and ThreadedCalculateChange to update the solution at every iteration.
Reimplemented from itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, TOutputImage >, and itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >.
|
virtual |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
|
virtual |
Run-time type information (and related methods)
Reimplemented from itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, TOutputImage >, itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >, itk::NarrowBandCurvesLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >, and itk::NarrowBandThresholdSegmentationLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType >.
|
inline |
Get the narrow band inner radius.
Definition at line 194 of file itkNarrowBandImageFilterBase.h.
|
inline |
Get the narrow band total radius.
Definition at line 174 of file itkNarrowBandImageFilterBase.h.
|
protected |
This function returns a single region (of the narrow band list) for use in multi-threading
|
overrideprotectedvirtual |
This function clears the existing narrow band, calls CreateNarrowBand to create a band, and calls the SplitRegions function of NarrowBand to pre-partition the band for multi-threading.
Reimplemented from itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
|
overrideprotectedvirtual |
This method check the narrow band state each iteration and reinitialize the narrow band if it is appropriate calling CreateNarrowBand and SplitRegions to pre-partition the band for multi-threading.
Reimplemented from itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, TOutputImage >, and itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >.
|
inline |
Root Mean Square Change between successive iterations This function is used to insert a pixel index into the narrow band The entire narrow band can be constructed using this method. Usually, however, the narrow band is initialized and reinitialized automatically by the subclass.
Definition at line 128 of file itkNarrowBandImageFilterBase.h.
|
inline |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 136 of file itkNarrowBandImageFilterBase.h.
|
inline |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 146 of file itkNarrowBandImageFilterBase.h.
|
overrideprotectedvirtual |
This method allows deallocation of data and further post processing
Reimplemented from itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
|
overrideprotectedvirtual |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Reimplemented from itk::FiniteDifferenceImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, TOutputImage >, and itk::NarrowBandLevelSetImageFilter< TInputImage, TFeatureImage, TOutputPixelType, Image< TOutputPixelType, TInputImage::ImageDimension > >.
|
virtual |
Set/Get IsoSurfaceValue to use in the input image
|
inlinevirtual |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 209 of file itkNarrowBandImageFilterBase.h.
|
inline |
Set the narrow band inner radius. The inner radius is the safe are where the level set can be computed. The default value is 1.
Definition at line 182 of file itkNarrowBandImageFilterBase.h.
|
inline |
Set the narrow band total radius. The narrow band width will be twice this value (positive and negative distance to the zero level set). The default value is 3.
Definition at line 162 of file itkNarrowBandImageFilterBase.h.
|
privatevirtual |
This method applies changes from the m_NarrowBand to the output using the ThreadedApplyUpdate() method and a multithreading mechanism. "dt" is the time step to use for the update of each pixel.
|
privatevirtual |
This method populates m_NarrowBand with changes for each pixel in the output using the ThreadedCalculateChange() method and a multithreading mechanism. Returns value is a time step to be used for the update.
|
staticconstexpr |
Dimensionality of input and output data is assumed to be the same. It is inherited from the superclass.
Definition at line 90 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 302 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 237 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 254 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 295 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 296 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 298 of file itkNarrowBandImageFilterBase.h.
|
protected |
A list of subregions of the narrowband which are passed to each thread for parallel processing.
Definition at line 300 of file itkNarrowBandImageFilterBase.h.