#include <itkRegionBasedLevelSetFunctionSharedData.h>
Helper class used to share data in the ScalarChanAndVeseLevelSetFunction.
This class holds cache data used during the computation of the LevelSet updates.
Based on the paper [22].
This code was taken from the Insight Journal paper [88] that is based on the papers [87] and [86].
Definition at line 49 of file itkRegionBasedLevelSetFunctionSharedData.h.
Inheritance diagram for itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >:
Collaboration diagram for itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >:Public Types | |
| using | CentroidVectorType = Vector<float, Self::ImageDimension> |
| using | ConstPointer = SmartPointer<const Self> |
| using | FeatureImageConstPointer = typename FeatureImageType::ConstPointer |
| using | FeatureImagePointer = typename FeatureImageType::Pointer |
| using | FeatureImageType = TFeatureImage |
| using | FeatureIndexType = typename FeatureImageType::IndexType |
| using | FeaturePixelType = typename FeatureImageType::PixelType |
| using | FeaturePointType = typename FeatureImageType::PointType |
| using | FeatureRegionType = typename FeatureImageType::RegionType |
| using | FeatureSizeType = typename FeatureImageType::SizeType |
| using | FeatureSizeValueType = typename FeatureSizeType::SizeValueType |
| using | FeatureSpacingType = typename FeatureImageType::SpacingType |
| using | InputImageConstPointer = typename InputImageType::ConstPointer |
| using | InputImagePointer = typename InputImageType::Pointer |
| using | InputImageType = TInputImage |
| using | InputIndexType = typename InputImageType::IndexType |
| using | InputIndexValueType = typename InputIndexType::IndexValueType |
| using | InputPixelType = typename InputImageType::PixelType |
| using | InputPointType = typename InputImageType::PointType |
| using | InputRegionType = typename InputImageType::RegionType |
| using | InputSizeType = typename InputImageType::SizeType |
| using | InputSizeValueType = typename InputSizeType::SizeValueType |
| using | InputSpacingType = typename InputImageType::SpacingType |
| using | KdTreePointer = typename TreeType::Pointer |
| using | LevelSetDataPointer = typename LevelSetDataType::Pointer |
| using | LevelSetDataPointerVector = std::vector<LevelSetDataPointer> |
| using | LevelSetDataPointerVectorIterator = typename LevelSetDataPointerVector::iterator |
| using | LevelSetDataType = TSingleData |
| using | ListImageConstPointer = typename ListImageType::ConstPointer |
| using | ListImagePointer = typename ListImageType::Pointer |
| using | ListImageType = Image<ListPixelType, Self::ImageDimension> |
| using | ListIndexType = typename ListImageType::IndexType |
| using | ListIndexValueType = typename ListIndexType::IndexValueType |
| using | ListIteratorType = ImageRegionIteratorWithIndex<ListImageType> |
| using | ListPixelType = std::list<unsigned int> |
| using | ListPointType = typename ListImageType::PointType |
| using | ListRegionType = typename ListImageType::RegionType |
| using | ListSizeType = typename ListImageType::SizeType |
| using | ListSizeValueType = typename ListSizeType::SizeValueType |
| using | ListSpacingType = typename ListImageType::SpacingType |
| using | Pointer = SmartPointer<Self> |
| using | SampleType = itk::Statistics::ListSample<CentroidVectorType> |
| using | Self = RegionBasedLevelSetFunctionSharedData |
| using | Superclass = LightObject |
| using | TreeGeneratorType = itk::Statistics::KdTreeGenerator<SampleType> |
| using | TreePointer = typename TreeGeneratorType::Pointer |
| using | TreeType = typename TreeGeneratorType::KdTreeType |
Public Types inherited from itk::LightObject | |
| using | ConstPointer = SmartPointer<const Self> |
| using | Pointer = SmartPointer<Self> |
| using | Self = LightObject |
Public Member Functions | |
| void | AllocateListImage (const FeatureImageType *featureImage) |
| void | CreateHeavisideFunctionOfLevelSetImage (const unsigned int j, const InputImageType *image) |
| virtual const char * | GetNameOfClass () const |
| virtual void | PopulateListImage ()=0 |
| void | SetFunctionCount (const unsigned int n) |
| void | SetKdTree (KdTreePointer kdtree) |
| void | SetNumberOfNeighbors (const unsigned int n) |
Public Member Functions inherited from itk::LightObject | |
| Pointer | Clone () const |
| virtual Pointer | CreateAnother () const |
| virtual void | Delete () |
| virtual int | GetReferenceCount () const |
| void | Print (std::ostream &os, Indent indent=0) const |
| virtual void | Register () const |
| virtual void | SetReferenceCount (int) |
| virtual void | UnRegister () const noexcept |
Public Attributes | |
| unsigned int | m_FunctionCount {} |
| KdTreePointer | m_KdTree {} |
| LevelSetDataPointerVector | m_LevelSetDataPointerVector {} |
| ListImagePointer | m_NearestNeighborListImage {} |
| unsigned int | m_NumberOfNeighbors { 6 } |
Static Public Attributes | |
| static constexpr unsigned int | ImageDimension = TFeatureImage::ImageDimension |
Protected Member Functions | |
| RegionBasedLevelSetFunctionSharedData () | |
| ~RegionBasedLevelSetFunctionSharedData () override=default | |
Protected Member Functions inherited from itk::LightObject | |
| virtual LightObject::Pointer | InternalClone () const |
| LightObject () | |
| virtual void | PrintHeader (std::ostream &os, Indent indent) const |
| virtual void | PrintSelf (std::ostream &os, Indent indent) const |
| virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
| virtual | ~LightObject () |
Additional Inherited Members | |
Static Public Member Functions inherited from itk::LightObject | |
| static void | BreakOnError () |
| static Pointer | New () |
Protected Attributes inherited from itk::LightObject | |
| std::atomic< int > | m_ReferenceCount {} |
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::CentroidVectorType = Vector<float, Self::ImageDimension> |
Definition at line 99 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ConstPointer = SmartPointer<const Self> |
Definition at line 57 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureImageConstPointer = typename FeatureImageType::ConstPointer |
Definition at line 77 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureImagePointer = typename FeatureImageType::Pointer |
Definition at line 76 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureImageType = TFeatureImage |
Definition at line 75 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureIndexType = typename FeatureImageType::IndexType |
Definition at line 83 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeaturePixelType = typename FeatureImageType::PixelType |
Definition at line 78 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeaturePointType = typename FeatureImageType::PointType |
Definition at line 84 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureRegionType = typename FeatureImageType::RegionType |
Definition at line 79 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureSizeType = typename FeatureImageType::SizeType |
Definition at line 80 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureSizeValueType = typename FeatureSizeType::SizeValueType |
Definition at line 81 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureSpacingType = typename FeatureImageType::SpacingType |
Definition at line 82 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputImageConstPointer = typename InputImageType::ConstPointer |
Definition at line 65 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputImagePointer = typename InputImageType::Pointer |
Definition at line 64 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputImageType = TInputImage |
Definition at line 63 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputIndexType = typename InputImageType::IndexType |
Definition at line 71 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputIndexValueType = typename InputIndexType::IndexValueType |
Definition at line 72 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputPixelType = typename InputImageType::PixelType |
Definition at line 66 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputPointType = typename InputImageType::PointType |
Definition at line 73 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputRegionType = typename InputImageType::RegionType |
Definition at line 67 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputSizeType = typename InputImageType::SizeType |
Definition at line 68 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputSizeValueType = typename InputSizeType::SizeValueType |
Definition at line 69 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputSpacingType = typename InputImageType::SpacingType |
Definition at line 70 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::KdTreePointer = typename TreeType::Pointer |
Definition at line 104 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataPointer = typename LevelSetDataType::Pointer |
Definition at line 107 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataPointerVector = std::vector<LevelSetDataPointer> |
Definition at line 108 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataPointerVectorIterator = typename LevelSetDataPointerVector::iterator |
Definition at line 109 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataType = TSingleData |
Definition at line 106 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListImageConstPointer = typename ListImageType::ConstPointer |
Definition at line 89 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListImagePointer = typename ListImageType::Pointer |
Definition at line 88 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListImageType = Image<ListPixelType, Self::ImageDimension> |
Definition at line 87 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListIndexType = typename ListImageType::IndexType |
Definition at line 94 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListIndexValueType = typename ListIndexType::IndexValueType |
Definition at line 95 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListIteratorType = ImageRegionIteratorWithIndex<ListImageType> |
Definition at line 97 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListPixelType = std::list<unsigned int> |
Definition at line 86 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListPointType = typename ListImageType::PointType |
Definition at line 96 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListRegionType = typename ListImageType::RegionType |
Definition at line 90 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListSizeType = typename ListImageType::SizeType |
Definition at line 91 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListSizeValueType = typename ListSizeType::SizeValueType |
Definition at line 92 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListSpacingType = typename ListImageType::SpacingType |
Definition at line 93 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::Pointer = SmartPointer<Self> |
Definition at line 56 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::SampleType = itk::Statistics::ListSample<CentroidVectorType> |
Definition at line 100 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::Self = RegionBasedLevelSetFunctionSharedData |
Definition at line 54 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::Superclass = LightObject |
Definition at line 55 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::TreeGeneratorType = itk::Statistics::KdTreeGenerator<SampleType> |
Definition at line 101 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::TreePointer = typename TreeGeneratorType::Pointer |
Definition at line 102 of file itkRegionBasedLevelSetFunctionSharedData.h.
| using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::TreeType = typename TreeGeneratorType::KdTreeType |
Definition at line 103 of file itkRegionBasedLevelSetFunctionSharedData.h.
|
inlineprotected |
Definition at line 164 of file itkRegionBasedLevelSetFunctionSharedData.h.
References m_KdTree.
Referenced by GetNameOfClass().
|
overrideprotecteddefault |
|
inline |
Definition at line 145 of file itkRegionBasedLevelSetFunctionSharedData.h.
References m_NearestNeighborListImage, and itk::Image< ListPixelType, Self::ImageDimension >::New().
|
inline |
Definition at line 133 of file itkRegionBasedLevelSetFunctionSharedData.h.
References m_LevelSetDataPointerVector.
|
virtual |
Return the name of this class as a string. Used by the object factory (implemented in New()) to instantiate objects of a named type. Also used for debugging and other output information.
Reimplemented from itk::LightObject.
Reimplemented in itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >, and itk::UnconstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >.
References RegionBasedLevelSetFunctionSharedData().
|
pure virtual |
|
inline |
Definition at line 112 of file itkRegionBasedLevelSetFunctionSharedData.h.
References m_FunctionCount, and m_LevelSetDataPointerVector.
|
inline |
Definition at line 139 of file itkRegionBasedLevelSetFunctionSharedData.h.
References m_KdTree.
|
inline |
Definition at line 127 of file itkRegionBasedLevelSetFunctionSharedData.h.
References m_NumberOfNeighbors.
|
staticconstexpr |
Definition at line 59 of file itkRegionBasedLevelSetFunctionSharedData.h.
| unsigned int itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_FunctionCount {} |
Definition at line 158 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), itk::UnconstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and SetFunctionCount().
| KdTreePointer itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_KdTree {} |
Definition at line 161 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), RegionBasedLevelSetFunctionSharedData(), and SetKdTree().
| LevelSetDataPointerVector itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_LevelSetDataPointerVector {} |
| ListImagePointer itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_NearestNeighborListImage {} |
Definition at line 160 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by AllocateListImage(), itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and itk::UnconstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage().
| unsigned int itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_NumberOfNeighbors { 6 } |
Definition at line 159 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and SetNumberOfNeighbors().