ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#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:
"An active contour model without edges" T. Chan and L. Vese. In Scale-Space Theories in Computer Vision, pages 141-151, 1999.
This code was taken from the Insight Journal paper:
"Cell Tracking using Coupled Active Surfaces for Nuclei and Membranes" http://www.insight-journal.org/browse/publication/642 https://hdl.handle.net/10380/3055
That is based on the papers:
"Level Set Segmentation: Active Contours without edge" http://www.insight-journal.org/browse/publication/322 https://hdl.handle.net/1926/1532 and "Level set segmentation using coupled active surfaces" http://www.insight-journal.org/browse/publication/323 https://hdl.handle.net/1926/1533
Definition at line 68 of file itkRegionBasedLevelSetFunctionSharedData.h.
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 | |
virtual Pointer | CreateAnother () const |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
itkCloneMacro (Self) | |
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 |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = TFeatureImage::ImageDimension |
Protected Member Functions | |
RegionBasedLevelSetFunctionSharedData () | |
~RegionBasedLevelSetFunctionSharedData () override | |
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 120 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ConstPointer = SmartPointer< const Self > |
Definition at line 76 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureImageConstPointer = typename FeatureImageType::ConstPointer |
Definition at line 96 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureImagePointer = typename FeatureImageType::Pointer |
Definition at line 95 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureImageType = TFeatureImage |
Definition at line 94 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureIndexType = typename FeatureImageType::IndexType |
Definition at line 102 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeaturePixelType = typename FeatureImageType::PixelType |
Definition at line 97 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeaturePointType = typename FeatureImageType::PointType |
Definition at line 103 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureRegionType = typename FeatureImageType::RegionType |
Definition at line 98 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureSizeType = typename FeatureImageType::SizeType |
Definition at line 99 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureSizeValueType = typename FeatureSizeType::SizeValueType |
Definition at line 100 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::FeatureSpacingType = typename FeatureImageType::SpacingType |
Definition at line 101 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputImageConstPointer = typename InputImageType::ConstPointer |
Definition at line 84 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputImagePointer = typename InputImageType::Pointer |
Definition at line 83 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputImageType = TInputImage |
Definition at line 82 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputIndexType = typename InputImageType::IndexType |
Definition at line 90 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputIndexValueType = typename InputIndexType::IndexValueType |
Definition at line 91 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputPixelType = typename InputImageType::PixelType |
Definition at line 85 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputPointType = typename InputImageType::PointType |
Definition at line 92 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputRegionType = typename InputImageType::RegionType |
Definition at line 86 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputSizeType = typename InputImageType::SizeType |
Definition at line 87 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputSizeValueType = typename InputSizeType::SizeValueType |
Definition at line 88 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::InputSpacingType = typename InputImageType::SpacingType |
Definition at line 89 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::KdTreePointer = typename TreeType::Pointer |
Definition at line 125 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataPointer = typename LevelSetDataType::Pointer |
Definition at line 128 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataPointerVector = std::vector< LevelSetDataPointer > |
Definition at line 129 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataPointerVectorIterator = typename LevelSetDataPointerVector::iterator |
Definition at line 130 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::LevelSetDataType = TSingleData |
Definition at line 127 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListImageConstPointer = typename ListImageType::ConstPointer |
Definition at line 109 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListImagePointer = typename ListImageType::Pointer |
Definition at line 108 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListImageType = Image< ListPixelType, Self::ImageDimension > |
Definition at line 107 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListIndexType = typename ListImageType::IndexType |
Definition at line 114 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListIndexValueType = typename ListIndexType::IndexValueType |
Definition at line 115 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListIteratorType = ImageRegionIteratorWithIndex< ListImageType > |
Definition at line 117 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListPixelType = std::list< unsigned int > |
Definition at line 105 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListPointType = typename ListImageType::PointType |
Definition at line 116 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListRegionType = typename ListImageType::RegionType |
Definition at line 110 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListSizeType = typename ListImageType::SizeType |
Definition at line 111 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListSizeValueType = typename ListSizeType::SizeValueType |
Definition at line 112 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::ListSpacingType = typename ListImageType::SpacingType |
Definition at line 113 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::Pointer = SmartPointer< Self > |
Definition at line 75 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::SampleType = itk::Statistics::ListSample< CentroidVectorType > |
Definition at line 121 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::Self = RegionBasedLevelSetFunctionSharedData |
Definition at line 73 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::Superclass = LightObject |
Definition at line 74 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::TreeGeneratorType = itk::Statistics::KdTreeGenerator< SampleType > |
Definition at line 122 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::TreePointer = typename TreeGeneratorType::Pointer |
Definition at line 123 of file itkRegionBasedLevelSetFunctionSharedData.h.
using itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::TreeType = typename TreeGeneratorType::KdTreeType |
Definition at line 124 of file itkRegionBasedLevelSetFunctionSharedData.h.
|
inlineprotected |
Definition at line 179 of file itkRegionBasedLevelSetFunctionSharedData.h.
|
inlineoverrideprotected |
Definition at line 180 of file itkRegionBasedLevelSetFunctionSharedData.h.
|
inline |
|
inline |
Definition at line 151 of file itkRegionBasedLevelSetFunctionSharedData.h.
|
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 >.
|
pure virtual |
|
inline |
Definition at line 132 of file itkRegionBasedLevelSetFunctionSharedData.h.
References itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_FunctionCount, and itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_LevelSetDataPointerVector.
|
inline |
Definition at line 156 of file itkRegionBasedLevelSetFunctionSharedData.h.
References itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_KdTree.
|
inline |
Definition at line 146 of file itkRegionBasedLevelSetFunctionSharedData.h.
References itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_NumberOfNeighbors.
|
static |
Definition at line 78 of file itkRegionBasedLevelSetFunctionSharedData.h.
unsigned int itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_FunctionCount |
Definition at line 173 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), itk::UnconstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::SetFunctionCount().
KdTreePointer itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_KdTree |
Definition at line 176 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::SetKdTree().
LevelSetDataPointerVector itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_LevelSetDataPointerVector |
Definition at line 171 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::CreateHeavisideFunctionOfLevelSetImage(), itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::SetFunctionCount().
ListImagePointer itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_NearestNeighborListImage |
Definition at line 175 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::AllocateListImage(), itk::UnconstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage().
unsigned int itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::m_NumberOfNeighbors |
Definition at line 174 of file itkRegionBasedLevelSetFunctionSharedData.h.
Referenced by itk::ConstrainedRegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::PopulateListImage(), and itk::RegionBasedLevelSetFunctionSharedData< TInputImage, TFeatureImage, TSingleData >::SetNumberOfNeighbors().