ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkOpeningByReconstructionImageFilter.h>
Opening by reconstruction of an image.
This filter preserves regions, in the foreground, that can completely contain the structuring element. At the same time, this filter eliminates all other regions of foreground pixels. Contrary to the mophological opening, the opening by reconstruction preserves the shape of the components that are not removed by erosion. The opening by reconstruction of an image "f" is defined as:
OpeningByReconstruction(f) = DilationByRecontruction(f, Erosion(f)).
Opening by reconstruction not only removes structures destroyed by the erosion, but also levels down the contrast of the brightest regions. If PreserveIntensities is on, a subsequent reconstruction by dilation using a marker image that is the original image for all unaffected pixels.
Opening by reconstruction is described in Chapter 6.3.9 of Pierre Soille's book "Morphological Image Analysis: Principles and Applications", Second Edition, Springer, 2003.
Definition at line 55 of file itkOpeningByReconstructionImageFilter.h.
Public Types | |
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 | KernelType = TKernel |
using | OutputImageConstPointer = typename OutputImageType::ConstPointer |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TOutputImage |
using | Pointer = SmartPointer< Self > |
using | Self = OpeningByReconstructionImageFilter |
using | Superclass = ImageToImageFilter< TInputImage, TOutputImage > |
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 = 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 |
Private Attributes | |
bool | m_FullyConnected |
KernelType | m_Kernel |
bool | m_PreserveIntensities |
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::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::ConstPointer = SmartPointer< const Self > |
Definition at line 65 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::InputImageConstPointer = typename InputImageType::ConstPointer |
Definition at line 70 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::InputImagePixelType = typename InputImageType::PixelType |
Definition at line 72 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::InputImagePointer = typename InputImageType::Pointer |
Definition at line 69 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::InputImageRegionType = typename InputImageType::RegionType |
Definition at line 71 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::InputImageType = TInputImage |
Some convenient type alias.
Definition at line 68 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::KernelType = TKernel |
Kernel type alias.
Definition at line 80 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::OutputImageConstPointer = typename OutputImageType::ConstPointer |
Definition at line 75 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::OutputImagePixelType = typename OutputImageType::PixelType |
Definition at line 77 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::OutputImagePointer = typename OutputImageType::Pointer |
Definition at line 74 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::OutputImageRegionType = typename OutputImageType::RegionType |
Definition at line 76 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::OutputImageType = TOutputImage |
Definition at line 73 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::Pointer = SmartPointer< Self > |
Definition at line 64 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::Self = OpeningByReconstructionImageFilter |
Standard class type aliases.
Definition at line 62 of file itkOpeningByReconstructionImageFilter.h.
using itk::OpeningByReconstructionImageFilter< TInputImage, TOutputImage, TKernel >::Superclass = ImageToImageFilter< TInputImage, TOutputImage > |
Definition at line 63 of file itkOpeningByReconstructionImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
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 |
OpeningByReconstructionImageFilter will produce the entire output.
Reimplemented from itk::ProcessObject.
|
virtual |
Set/Get whether the connected components are defined strictly by face connectivity or by face+edge+vertex connectivity. Default is FullyConnectedOff. For objects that are 1 pixel wide, use FullyConnectedOn.
|
virtual |
Set/Get whether the connected components are defined strictly by face connectivity or by face+edge+vertex connectivity. Default is FullyConnectedOff. For objects that are 1 pixel wide, use FullyConnectedOn.
|
overrideprotectedvirtual |
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 DynamicThreadedGenerateData(). 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 can be threaded, it should NOT provide a GenerateData() method but should provide a DynamicThreadedGenerateData() instead.
Reimplemented from itk::ImageSource< TOutputImage >.
|
overrideprotectedvirtual |
OpeningByReconstructionImageFilter needs the entire input be available. Thus, it needs to provide an implementation of GenerateInputRequestedRegion().
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Set/Get whether the connected components are defined strictly by face connectivity or by face+edge+vertex connectivity. Default is FullyConnectedOff. For objects that are 1 pixel wide, use FullyConnectedOn.
|
virtual |
Get the kernel (structuring element).
|
virtual |
Runtime information support.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Set/Get whether the original intensities of the image retained for those pixels unaffected by the opening by reconstrcution. If Off, the output pixel contrast will be reduced.
|
static |
Standard New method.
|
virtual |
Set/Get whether the original intensities of the image retained for those pixels unaffected by the opening by reconstrcution. If Off, the output pixel contrast will be reduced.
|
virtual |
Set/Get whether the original intensities of the image retained for those pixels unaffected by the opening by reconstrcution. If Off, the output pixel contrast will be reduced.
|
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/Get whether the connected components are defined strictly by face connectivity or by face+edge+vertex connectivity. Default is FullyConnectedOff. For objects that are 1 pixel wide, use FullyConnectedOn.
|
virtual |
Set kernel (structuring element).
|
virtual |
Set/Get whether the original intensities of the image retained for those pixels unaffected by the opening by reconstrcution. If Off, the output pixel contrast will be reduced.
|
static |
ImageDimension constants
Definition at line 83 of file itkOpeningByReconstructionImageFilter.h.
|
private |
Definition at line 144 of file itkOpeningByReconstructionImageFilter.h.
|
private |
kernel or structuring element to use.
Definition at line 143 of file itkOpeningByReconstructionImageFilter.h.
|
private |
Definition at line 145 of file itkOpeningByReconstructionImageFilter.h.
|
static |
Definition at line 84 of file itkOpeningByReconstructionImageFilter.h.