ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkDanielssonDistanceMapImageFilter.h>
This filter computes the distance map of the input image as an approximation with pixel accuracy to the Euclidean distance.
TInputImage | Input Image Type |
TOutputImage | Output Image Type |
TVoronoiImage | Voronoi Image Type. Note the default value is TInputImage. |
The input is assumed to contain numeric codes defining objects. The filter will produce as output the following images:
This filter is N-dimensional and known to be efficient in computational time. The algorithm is the N-dimensional version of the 4SED algorithm given for two dimensions in:
Danielsson, Per-Erik. Euclidean Distance Mapping. Computer Graphics and Image Processing 14, 227-248 (1980).
Definition at line 61 of file itkDanielssonDistanceMapImageFilter.h.
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArraySizeType = ProcessObject::DataObjectPointerArraySizeType |
using | IndexType = typename RegionType::IndexType |
using | InputImagePointer = typename InputImageType::ConstPointer |
using | InputImageType = TInputImage |
using | InputPixelType = typename InputImageType::PixelType |
using | OffsetType = typename InputImageType::OffsetType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageType = TOutputImage |
using | OutputPixelType = typename OutputImageType::PixelType |
using | Pointer = SmartPointer< Self > |
using | RegionType = typename InputImageType::RegionType |
using | Self = DanielssonDistanceMapImageFilter |
using | SizeType = typename RegionType::SizeType |
using | SizeValueType = typename SizeType::SizeValueType |
using | SpacingType = typename InputImageType::SpacingType |
using | SpacingValueType = typename InputImageType::SpacingValueType |
using | Superclass = ImageToImageFilter< TInputImage, TOutputImage > |
using | VectorImagePointer = typename VectorImageType::Pointer |
using | VectorImageType = Image< OffsetType, Self::InputImageDimension > |
using | VoronoiImagePointer = typename VoronoiImageType::Pointer |
using | VoronoiImageType = TVoronoiImage |
using | VoronoiPixelType = typename VoronoiImageType::PixelType |
Public Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePixelType = typename InputImageType::PixelType |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TInputImage |
using | OutputImagePixelType = typename Superclass::OutputImagePixelType |
using | OutputImageRegionType = typename Superclass::OutputImageRegionType |
using | Pointer = SmartPointer< Self > |
using | Self = ImageToImageFilter |
using | Superclass = ImageSource< TOutputImage > |
Public Types inherited from itk::ImageSource< TOutputImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = Superclass::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArraySizeType = Superclass::DataObjectPointerArraySizeType |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer< Self > |
using | Self = ImageSource |
using | Superclass = ProcessObject |
Public Types inherited from itk::ProcessObject | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = DataObject::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArray = std::vector< DataObjectPointer > |
using | DataObjectPointerArraySizeType = DataObjectPointerArray::size_type |
using | MultiThreaderType = MultiThreaderBase |
using | NameArray = std::vector< DataObjectIdentifierType > |
using | Pointer = SmartPointer< Self > |
using | Self = ProcessObject |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
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 constexpr unsigned int | InputImageDimension = InputImageType::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
static constexpr unsigned int | VoronoiImageDimension = TVoronoiImage::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 |
Private Attributes | |
bool | m_InputIsBinary |
SpacingType | m_InputSpacingCache |
bool | m_SquaredDistance |
bool | m_UseImageSpacing |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
using | InputToOutputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::OutputImageDimension, Self::InputImageDimension > |
using | OutputToInputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::InputImageDimension, Self::OutputImageDimension > |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ImageSource< TOutputImage > | |
bool | m_DynamicMultiThreading |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::ConstPointer = SmartPointer< const Self > |
Definition at line 71 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::DataObjectPointer = DataObject::Pointer |
Definition at line 73 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::DataObjectPointerArraySizeType = ProcessObject::DataObjectPointerArraySizeType |
Standard itk::ProcessObject subclass method.
Definition at line 185 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::IndexType = typename RegionType::IndexType |
Type for the index of the input image.
Definition at line 91 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::InputImagePointer = typename InputImageType::ConstPointer |
Pointer Type for input image.
Definition at line 125 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::InputImageType = TInputImage |
Type for input image.
Definition at line 82 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::InputPixelType = typename InputImageType::PixelType |
Type for input image pixel.
Definition at line 85 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::OffsetType = typename InputImageType::OffsetType |
Type for the index of the input image.
Definition at line 94 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::OutputImagePointer = typename OutputImageType::Pointer |
Pointer Type for the output image.
Definition at line 128 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::OutputImageType = TOutputImage |
Type for two of the three output images: the VoronoiMap and the DistanceMap.
Definition at line 108 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::OutputPixelType = typename OutputImageType::PixelType |
Type for output image pixel.
Definition at line 111 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::Pointer = SmartPointer< Self > |
Definition at line 70 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::RegionType = typename InputImageType::RegionType |
Type for the region of the input image.
Definition at line 88 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::Self = DanielssonDistanceMapImageFilter |
Standard class type aliases.
Definition at line 68 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::SizeType = typename RegionType::SizeType |
Type for the size of the input image.
Definition at line 101 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::SizeValueType = typename SizeType::SizeValueType |
Type for one size element of the input image.
Definition at line 104 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::SpacingType = typename InputImageType::SpacingType |
Type for the spacing of the input image.
Definition at line 97 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::SpacingValueType = typename InputImageType::SpacingValueType |
Definition at line 98 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::Superclass = ImageToImageFilter< TInputImage, TOutputImage > |
Definition at line 69 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::VectorImagePointer = typename VectorImageType::Pointer |
Pointer Type for the vector distance image.
Definition at line 131 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::VectorImageType = Image< OffsetType, Self::InputImageDimension > |
Pointer Type for the vector distance image
Definition at line 122 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::VoronoiImagePointer = typename VoronoiImageType::Pointer |
Definition at line 114 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::VoronoiImageType = TVoronoiImage |
Definition at line 113 of file itkDanielssonDistanceMapImageFilter.h.
using itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::VoronoiPixelType = typename VoronoiImageType::PixelType |
Definition at line 115 of file itkDanielssonDistanceMapImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
protected |
Compute Voronoi Map.
|
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.
|
overrideprotectedvirtual |
Compute Danielsson distance map and Voronoi Map.
Reimplemented from itk::ImageSource< TOutputImage >.
OutputImageType* itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::GetDistanceMap | ( | ) |
Get Distance map image. The distance map is shown as a gray value image depending on the pixel type of the output image. Regarding the source image, background should be dark (gray value = 0) and object should have a gray value larger than 0. The minimal distance is calculated on the object frontier, and the output image gives for each pixel its minimal distance from the object (if there is more than one object the closest object is considered).
|
virtual |
Get if the input is binary. See SetInputIsBinary().
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Get the distance squared.
|
virtual |
Get whether spacing is used.
VectorImageType* itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::GetVectorDistanceMap | ( | ) |
Get vector field of distances.
VoronoiImageType* itk::DanielssonDistanceMapImageFilter< TInputImage, TOutputImage, TVoronoiImage >::GetVoronoiMap | ( | ) |
Get Voronoi Map This map shows for each pixel what object is closest to it. Each object should be labeled by a number (larger than 0), so the map has a value for each pixel corresponding to the label of the closest object.
|
virtual |
|
virtual |
Set On/Off if the input is binary. See SetInputIsBinary().
|
overridevirtual |
Make a DataObject of the correct type to used as the specified output. Every ProcessObject subclass must be able to create a DataObject that can be used as a specified output. This method is automatically called when DataObject::DisconnectPipeline() is called. DataObject::DisconnectPipeline, disconnects a data object from being an output of its current source. When the data object is disconnected, the ProcessObject needs to construct a replacement output data object so that the ProcessObject is in a valid state. So DataObject::DisconnectPipeline eventually calls ProcessObject::MakeOutput. Note that MakeOutput always returns a SmartPointer to a DataObject. If a subclass of ImageSource has multiple outputs of different types, then that class must provide an implementation of MakeOutput().
Reimplemented from itk::ImageSource< TOutputImage >.
|
static |
Method for creation through the object factory
Referenced by itk::CannySegmentationLevelSetFunction< TImageType, TFeatureImageType >::CannySegmentationLevelSetFunction().
|
protected |
Prepare data.
|
overrideprotectedvirtual |
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 |
Set if the input is binary. If this variable is set, each nonzero pixel in the input image will be given a unique numeric code to be used by the Voronoi partition. If the image is binary but you are not interested in the Voronoi regions of the different nonzero pixels, then you need not set this.
|
virtual |
Set if the distance should be squared.
|
virtual |
Set if image spacing should be used in computing distances.
|
virtual |
|
virtual |
Set On/Off if the distance is squared.
|
protected |
Update distance map locally. Used by GenerateData().
|
virtual |
|
virtual |
Set On/Off whether spacing is used.
|
static |
The dimension of the input and output images.
Definition at line 118 of file itkDanielssonDistanceMapImageFilter.h.
|
private |
Definition at line 227 of file itkDanielssonDistanceMapImageFilter.h.
|
private |
Definition at line 230 of file itkDanielssonDistanceMapImageFilter.h.
|
private |
Definition at line 226 of file itkDanielssonDistanceMapImageFilter.h.
|
private |
Definition at line 228 of file itkDanielssonDistanceMapImageFilter.h.
|
static |
Definition at line 190 of file itkDanielssonDistanceMapImageFilter.h.
|
static |
Definition at line 191 of file itkDanielssonDistanceMapImageFilter.h.