ITK
5.2.0
Insight Toolkit
|
#include <itkRGBGibbsPriorFilter.h>
Public Types | |
using | ClassifiedImageType = TClassifiedImage |
using | ClassifierType = ImageClassifierBase< TInputImage, TClassifiedImage > |
using | ConstPointer = SmartPointer< const Self > |
using | IndexType = typename TInputImage::IndexType |
using | IndexValueType = typename Superclass::IndexValueType |
using | InputImageConstPointer = typename TInputImage::ConstPointer |
using | InputImagePixelType = typename Superclass::InputImagePixelType |
using | InputImagePointer = typename TInputImage::Pointer |
using | InputImageRegionConstIterator = typename Superclass::InputImageRegionConstIterator |
using | InputImageRegionIterator = typename Superclass::InputImageRegionIterator |
using | InputImageType = TInputImage |
using | InputImageVecType = typename TInputImage::PixelType |
using | InputPixelType = typename TInputImage::PixelType |
using | LabelledImageIndexType = typename TClassifiedImage::IndexType |
using | LabelledImagePixelType = typename Superclass::LabelledImagePixelType |
using | LabelledImageRegionIterator = typename Superclass::LabelledImageRegionIterator |
using | LabelledImageType = typename TClassifiedImage::Pointer |
using | LabelType = unsigned int |
using | Pointer = SmartPointer< Self > |
using | Self = RGBGibbsPriorFilter |
using | Superclass = MRFImageFilter< TInputImage, TClassifiedImage > |
using | TrainingImageType = typename TClassifiedImage::Pointer |
Public Types inherited from itk::MRFImageFilter< TInputImage, TClassifiedImage > | |
using | ClassifierType = ImageClassifierBase< TInputImage, TClassifiedImage > |
using | ConstPointer = SmartPointer< const Self > |
using | IndexValueType = typename LabelledImageIndexType::IndexValueType |
using | InputImageConstPointer = typename TInputImage::ConstPointer |
using | InputImageFaceListIterator = typename InputImageFaceListType::iterator |
using | InputImageFaceListType = typename InputImageFacesCalculator::FaceListType |
using | InputImageFacesCalculator = NeighborhoodAlgorithm::ImageBoundaryFacesCalculator< TInputImage > |
using | InputImageNeighborhoodIterator = ConstNeighborhoodIterator< TInputImage > |
using | InputImageNeighborhoodRadiusType = typename InputImageNeighborhoodIterator::RadiusType |
using | InputImagePixelType = typename TInputImage::PixelType |
using | InputImagePointer = typename TInputImage::Pointer |
using | InputImageRegionConstIterator = ImageRegionConstIterator< TInputImage > |
using | InputImageRegionIterator = ImageRegionIterator< TInputImage > |
using | InputImageRegionType = typename TInputImage::RegionType |
using | InputImageType = TInputImage |
using | LabelledImageFaceListIterator = typename LabelledImageFaceListType::iterator |
using | LabelledImageFaceListType = typename LabelledImageFacesCalculator::FaceListType |
using | LabelledImageFacesCalculator = NeighborhoodAlgorithm::ImageBoundaryFacesCalculator< TClassifiedImage > |
using | LabelledImageIndexType = typename TClassifiedImage::IndexType |
using | LabelledImageNeighborhoodIterator = NeighborhoodIterator< TClassifiedImage > |
using | LabelledImageNeighborhoodRadiusType = typename LabelledImageNeighborhoodIterator::RadiusType |
using | LabelledImageOffsetType = typename TClassifiedImage::OffsetType |
using | LabelledImagePixelType = typename TClassifiedImage::PixelType |
using | LabelledImagePointer = typename TClassifiedImage::Pointer |
using | LabelledImageRegionIterator = ImageRegionIterator< TClassifiedImage > |
using | LabelledImageRegionType = typename TClassifiedImage::RegionType |
using | NeighborhoodRadiusType = typename TInputImage::SizeType |
using | OutputImagePointer = typename Superclass::OutputImagePointer |
using | Pointer = SmartPointer< Self > |
using | Self = MRFImageFilter |
using | SizeType = typename TInputImage::SizeType |
using | Superclass = ImageToImageFilter< TInputImage, TClassifiedImage > |
using | TrainingImagePixelType = typename TClassifiedImage::PixelType |
using | TrainingImagePointer = typename TClassifiedImage::Pointer |
using | MRFStopEnum = MRFImageFilterEnums::MRFStop |
Public Types inherited from itk::ImageToImageFilter< TInputImage, TClassifiedImage > | |
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< TClassifiedImage > |
Public Types inherited from itk::ImageSource< TClassifiedImage > | |
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 = TClassifiedImage |
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::MRFImageFilter< TInputImage, TClassifiedImage > | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ImageToImageFilter< TInputImage, TClassifiedImage > | |
static void | SetGlobalDefaultDirectionTolerance (double) |
static double | GetGlobalDefaultDirectionTolerance () |
static void | SetGlobalDefaultCoordinateTolerance (double) |
static double | GetGlobalDefaultCoordinateTolerance () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
using | MatrixType = vnl_matrix< double > |
using | InputImageSizeType = typename TInputImage::SizeType |
static constexpr unsigned int | ImageDimension = TInputImage::ImageDimension |
ClassifierType::Pointer | m_ClassifierPtr |
unsigned int | m_ImageHeight { 0 } |
unsigned int | m_ImageDepth { 0 } |
int unsigned int void void void double | m_ObjectThreshold { 5.0 } |
void | SetNumberOfClasses (const unsigned int numberOfClasses) override |
unsigned int | GetNumberOfClasses () const override |
void | SetMaximumNumberOfIterations (const unsigned int numberOfIterations) override |
unsigned int | GetMaximumNumberOfIterations () const override |
virtual void | SetClusterSize (unsigned int _arg) |
virtual void | SetObjectLabel (LabelType _arg) |
virtual void | SetStartPoint (IndexType _arg) |
virtual void | SetBoundaryGradient (unsigned int _arg) |
virtual void | SetObjectThreshold (double _arg) |
virtual void | SetCliqueWeight_1 (double _arg) |
virtual double | GetCliqueWeight_1 () const |
virtual void | SetCliqueWeight_2 (double _arg) |
virtual double | GetCliqueWeight_2 () const |
virtual void | SetCliqueWeight_3 (double _arg) |
virtual double | GetCliqueWeight_3 () const |
virtual void | SetCliqueWeight_4 (double _arg) |
virtual double | GetCliqueWeight_4 () const |
virtual void | SetCliqueWeight_5 (double _arg) |
virtual double | GetCliqueWeight_5 () const |
virtual void | SetCliqueWeight_6 (double _arg) |
virtual double | GetCliqueWeight_6 () const |
RGBGibbsPriorFilter () | |
~RGBGibbsPriorFilter () override | |
void | PrintSelf (std::ostream &os, Indent indent) const override |
void void | MinimizeFunctional () override |
void | GenerateData () override |
virtual void | ApplyGibbsLabeller () |
virtual void | ApplyGPImageFilter () |
void | GibbsTotalEnergy (int i) |
double | GibbsEnergy (unsigned int i, unsigned int k, unsigned int k1) |
The RGBGibbsPriorFilter applies Gibbs Prior model for the segmentation of MRF images.
The core of the method is based on the minimization of a Gibbsian energy function. This energy function f can be divided into three part: f = f_1 + f_2 + f_3; f_1 is related to the object homogeneity, f_2 is related to the boundary smoothness, f_3 is related to the constraint of the observation (or the noise model). The two force components f_1 and f_3 are minimized by the GradientEnergy method while f_2 is minimized by the GibbsTotalEnergy method.
This filter only works with 3D images.
Definition at line 48 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::ClassifiedImageType = TClassifiedImage |
Type definitions for the training image.
Definition at line 83 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::ClassifierType = ImageClassifierBase<TInputImage, TClassifiedImage> |
Type definitions for classifier to be used for the MRF labeling.
Definition at line 99 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::ConstPointer = SmartPointer<const Self> |
Definition at line 58 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::IndexType = typename TInputImage::IndexType |
Definition at line 103 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::IndexValueType = typename Superclass::IndexValueType |
Definition at line 72 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputImageConstPointer = typename TInputImage::ConstPointer |
Definition at line 77 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputImagePixelType = typename Superclass::InputImagePixelType |
Types from superclass.
Definition at line 67 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputImagePointer = typename TInputImage::Pointer |
Definition at line 76 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputImageRegionConstIterator = typename Superclass::InputImageRegionConstIterator |
Definition at line 68 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputImageRegionIterator = typename Superclass::InputImageRegionIterator |
Definition at line 69 of file itkRGBGibbsPriorFilter.h.
|
private |
Specify the type of matrix to use.
Definition at line 230 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputImageType = TInputImage |
A smart pointer to the input image type.
Definition at line 75 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputImageVecType = typename TInputImage::PixelType |
The type of input pixel.
Definition at line 102 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::InputPixelType = typename TInputImage::PixelType |
Type definition for the input image pixel type.
Definition at line 80 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::LabelledImageIndexType = typename TClassifiedImage::IndexType |
Type definition for the classified image index type.
Definition at line 91 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::LabelledImagePixelType = typename Superclass::LabelledImagePixelType |
Definition at line 71 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::LabelledImageRegionIterator = typename Superclass::LabelledImageRegionIterator |
Definition at line 70 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::LabelledImageType = typename TClassifiedImage::Pointer |
Type definitions for the labelled image. It is derived from the training image.
Definition at line 88 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::LabelType = unsigned int |
Type used as identifier for the Labels
Definition at line 96 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::MatrixType = vnl_matrix<double> |
Specify the type of matrix to use.
Definition at line 197 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::Pointer = SmartPointer<Self> |
Definition at line 57 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::Self = RGBGibbsPriorFilter |
Standard "Self" type alias.
Definition at line 55 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::Superclass = MRFImageFilter<TInputImage, TClassifiedImage> |
Definition at line 56 of file itkRGBGibbsPriorFilter.h.
using itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::TrainingImageType = typename TClassifiedImage::Pointer |
Definition at line 84 of file itkRGBGibbsPriorFilter.h.
|
protected |
Specify the type of matrix to use.
|
overrideprotected |
Specify the type of matrix to use.
|
protectedvirtual |
Specify the type of matrix to use.
|
protectedvirtual |
Specify the type of matrix to use.
|
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::MRFImageFilter< TInputImage, TClassifiedImage >.
|
overrideprotectedvirtual |
Specify the type of matrix to use.
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
inline |
Get the labelled image.
Definition at line 115 of file itkRGBGibbsPriorFilter.h.
|
inlineoverridevirtual |
Get the number of iterations of the Iterated Conditional Mode (ICM) algorithm.
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
Definition at line 161 of file itkRGBGibbsPriorFilter.h.
|
virtual |
Run-time type information (and related methods).
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
|
inlineoverridevirtual |
Get the Number of classes.
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
Definition at line 139 of file itkRGBGibbsPriorFilter.h.
|
private |
calculate the energy in each cluster.
|
private |
region size smaller than the threshold will be erased. the label for object region. the channel number in the image. the point give lowest value of H-1 in neighbor. for region erase. for region erase. weights for different clique configuration. weight for cliques that v/h smooth boundary weight for clique that has an intermadiate smooth boundary weight for clique that has a diagonal smooth boundary weight for clique consists only object pixels weight for clique consists only background pixels weight for clique other than these calculate H_2.
|
overrideprotectedvirtual |
allocate memory space for the filter.
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
Specify the type of matrix to use.
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
|
virtual |
Specify the type of matrix to use.
void itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::SetClassifier | ( | typename ClassifierType::Pointer | ptrToClassifier | ) |
Set the pointer to the classifier being used.
|
virtual |
set and get the value for Clique weights
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Set the threshold for the object size.
void itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::SetLabelledImage | ( | LabelledImageType | image | ) |
Set the labelled image.
|
inlineoverridevirtual |
Set/Get the number of iteration of the Iterated Conditional Mode (ICM) algorithm. A default value is set at 50 iterations.
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
Definition at line 147 of file itkRGBGibbsPriorFilter.h.
|
inlineoverridevirtual |
Set the Number of classes.
Reimplemented from itk::MRFImageFilter< TInputImage, TClassifiedImage >.
Definition at line 126 of file itkRGBGibbsPriorFilter.h.
|
virtual |
Set the label for the object region.
|
virtual |
Specify the type of matrix to use.
|
virtual |
Specify the type of matrix to use.
void itk::RGBGibbsPriorFilter< TInputImage, TClassifiedImage >::SetTrainingImage | ( | TrainingImageType | image | ) |
Set the image required for training type classifiers.
|
staticconstexpr |
Extract the input image dimension.
Definition at line 173 of file itkRGBGibbsPriorFilter.h.
|
private |
the input image to train the filter. output the number of class need to be classified. number of the iteration.
Definition at line 246 of file itkRGBGibbsPriorFilter.h.
|
private |
Specify the type of matrix to use.
Definition at line 270 of file itkRGBGibbsPriorFilter.h.
|
private |
the threshold for the existence of a boundary. weight for H_1 weight for H_2 define the start region of the object. number of SA iterations. array for the state of each pixel. the medium image to store intermedium result for SA algo. the seed of object image size.
Definition at line 269 of file itkRGBGibbsPriorFilter.h.
|
private |
method to return 1 when a equal to b. help to erase the small region. erase the small region. create the intermedium image. calculate H_1.
Definition at line 329 of file itkRGBGibbsPriorFilter.h.