ITK
4.8.0
Insight Segmentation and Registration Toolkit
|
#include <itkAnnulusOperator.h>
A NeighborhoodOperator for performing a matched filtering with an annulus (two concentric circles, spheres, hyperspheres, etc.)
AnnulusOperator defines a non-directional NeighborhoodOperator representing two concentric circles, spheres, hyperspheres, etc. The inner radius and the thickness of the annulus can be specified.
The values for the annulus can be specified in a variety of manners:
1) The values for the interior of the annulus (interior of inner circle), the values for annulus (the region between the inner and outer circle), and the values for the exterior of the annulus can be specified. This mode is useful in correlation based matched filter applications. For instance, defining a hollow (or even filled) circle.
2) The values can defined automatically for normalized correlation. The values in the kernel will be defined to have mean zero and norm 1. The area outside the annulus will have values of zero. In this mode, you can also specify whether you want the center of the annulus to be bright (intensity > 0) or dark (intensity < 0).
1) Set the annulus parameters: InnerRadius and Thickness 2) Set the intensities to use for interior, wall, and exterior kernel positions for correlation based operations or call NormalizeOn() to define kernel values automatically for use in normalized correlation. 3) If NormalizedOn(), indicate whether you want the center of the annulus to be bright or dark. 4) call CreateOperator()
Definition at line 70 of file itkAnnulusOperator.h.
Public Types | |
typedef Superclass::OffsetType | OffsetType |
typedef AnnulusOperator | Self |
typedef Superclass::SizeType | SizeType |
typedef Vector< double, TDimension > | SpacingType |
typedef NeighborhoodOperator < TPixel, TDimension, TAllocator > | Superclass |
Public Types inherited from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator > | |
typedef NumericTraits< TPixel > ::RealType | PixelRealType |
typedef TPixel | PixelType |
typedef NeighborhoodOperator | Self |
typedef Superclass::SizeType | SizeType |
typedef SliceIterator< TPixel, Self > | SliceIteratorType |
typedef Neighborhood< TPixel, VDimension, TAllocator > | Superclass |
Public Types inherited from itk::Neighborhood< TPixel, VDimension, TAllocator > | |
typedef TAllocator | AllocatorType |
typedef AllocatorType::const_iterator | ConstIterator |
typedef unsigned int | DimensionValueType |
typedef AllocatorType::iterator | Iterator |
typedef SizeValueType | NeighborIndexType |
typedef Offset< VDimension > | OffsetType |
typedef TPixel | PixelType |
typedef Neighborhood | Self |
typedef SizeType::SizeValueType | SizeValueType |
typedef SliceIterator< TPixel, Self > | SliceIteratorType |
Protected Types | |
typedef Superclass::CoefficientVector | CoefficientVector |
typedef Superclass::PixelType | PixelType |
Protected Types inherited from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator > | |
typedef std::vector < PixelRealType > | CoefficientVector |
Protected Member Functions | |
void | Fill (const CoefficientVector &c) override |
CoefficientVector | GenerateCoefficients () override |
Protected Member Functions inherited from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator > | |
virtual void | FillCenteredDirectional (const CoefficientVector &) |
void | InitializeToZero () |
Protected Member Functions inherited from itk::Neighborhood< TPixel, VDimension, TAllocator > | |
virtual void | Allocate (NeighborIndexType i) |
virtual void | ComputeNeighborhoodOffsetTable () |
virtual void | ComputeNeighborhoodStrideTable () |
void | SetSize () |
Private Attributes | |
PixelType | m_AnnulusValue |
bool | m_BrightCenter |
PixelType | m_ExteriorValue |
double | m_InnerRadius |
PixelType | m_InteriorValue |
bool | m_Normalize |
SpacingType | m_Spacing |
double | m_Thickness |
Additional Inherited Members | |
Public Attributes inherited from itk::Neighborhood< TPixel, VDimension, TAllocator > | |
typedef::itk::Size< VDimension > | RadiusType |
typedef::itk::Size< VDimension > | SizeType |
Static Public Attributes inherited from itk::Neighborhood< TPixel, VDimension, TAllocator > | |
static const unsigned int | NeighborhoodDimension = VDimension |
|
protected |
Typedef support for coefficient vector type. Necessary to work around compiler bug on VC++.
Definition at line 221 of file itkAnnulusOperator.h.
typedef Superclass::OffsetType itk::AnnulusOperator< TPixel, TDimension, TAllocator >::OffsetType |
Definition at line 81 of file itkAnnulusOperator.h.
|
protected |
Definition at line 222 of file itkAnnulusOperator.h.
typedef AnnulusOperator itk::AnnulusOperator< TPixel, TDimension, TAllocator >::Self |
Standard typedefs
Definition at line 76 of file itkAnnulusOperator.h.
typedef Superclass::SizeType itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SizeType |
Additional typedefs
Definition at line 80 of file itkAnnulusOperator.h.
typedef Vector< double, TDimension > itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SpacingType |
Definition at line 82 of file itkAnnulusOperator.h.
typedef NeighborhoodOperator< TPixel, TDimension, TAllocator > itk::AnnulusOperator< TPixel, TDimension, TAllocator >::Superclass |
Definition at line 77 of file itkAnnulusOperator.h.
|
inline |
Definition at line 86 of file itkAnnulusOperator.h.
|
inline |
Definition at line 98 of file itkAnnulusOperator.h.
|
inline |
If Normalize is on, you define the annulus to have a bright center or a dark center.
Definition at line 160 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetBrightCenter().
|
inline |
If Normalize is on, you define the annulus to have a bright center or a dark center.
Definition at line 158 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetBrightCenter().
void itk::AnnulusOperator< TPixel, TDimension, TAllocator >::CreateOperator | ( | ) |
This function is called to create the operator. The radius of the operator is determine automatically.
|
overrideprotectedvirtual |
Arranges coefficients spatially in the memory buffer.
Implements itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >.
|
overrideprotectedvirtual |
Calculates operator coefficients.
Implements itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >.
|
inline |
If Normalize is off, the interior to annulus, the annulus (region between the two circles), and the region exterior to the annulus to be defined manually. Defauls are 0, 1, 0 respectively.
Definition at line 174 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_AnnulusValue.
|
inline |
If Normalize is on, you define the annulus to have a bright center or a dark center.
Definition at line 156 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_BrightCenter.
|
inline |
If Normalize is off, the interior to annulus, the annulus (region between the two circles), and the region exterior to the annulus to be defined manually. Defauls are 0, 1, 0 respectively.
Definition at line 178 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_ExteriorValue.
|
inline |
Set/Get the inner radius of the annulus. Radius is specified in physical units (mm).
Definition at line 119 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InnerRadius.
|
inline |
If Normalize is off, the interior to annulus, the annulus (region between the two circles), and the region exterior to the annulus to be defined manually. Defauls are 0, 1, 0 respectively.
Definition at line 170 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InteriorValue.
|
virtual |
Reimplemented from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >.
|
inline |
Set/Get whether kernel values are computed automatically or specified manually
Definition at line 144 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Normalize.
|
inline |
Set/Get the pixel spacings. Setting these ensures the annulus is round in physical space. Defaults to 1.
Definition at line 136 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Spacing.
|
inline |
Set/Get the thickness of the annulus. The outer radius of the annulus is defined as r = InnerRadius + Thickness. Thickness is specified in physical units (mm).
Definition at line 128 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Thickness.
|
inline |
Set/Get whether kernel values are computed automatically or specified manually
Definition at line 148 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetNormalize().
|
inline |
Set/Get whether kernel values are computed automatically or specified manually
Definition at line 146 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetNormalize().
|
inline |
Assignment operator
Definition at line 183 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_AnnulusValue, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_BrightCenter, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_ExteriorValue, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InnerRadius, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InteriorValue, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Normalize, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Spacing, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Thickness, and itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >::operator=().
|
inlineoverridevirtual |
Prints some debugging information
Reimplemented from itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >.
Definition at line 202 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_BrightCenter, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_ExteriorValue, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InnerRadius, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InteriorValue, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Normalize, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Spacing, itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Thickness, and itk::NeighborhoodOperator< TPixel, TDimension, TAllocator >::PrintSelf().
|
inline |
If Normalize is off, the interior to annulus, the annulus (region between the two circles), and the region exterior to the annulus to be defined manually. Defauls are 0, 1, 0 respectively.
Definition at line 172 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_AnnulusValue.
|
inline |
If Normalize is on, you define the annulus to have a bright center or a dark center.
Definition at line 154 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_BrightCenter.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::BrightCenterOff(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::BrightCenterOn().
|
inline |
If Normalize is off, the interior to annulus, the annulus (region between the two circles), and the region exterior to the annulus to be defined manually. Defauls are 0, 1, 0 respectively.
Definition at line 176 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_ExteriorValue.
|
inline |
Set/Get the inner radius of the annulus. Radius is specified in physical units (mm).
Definition at line 117 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InnerRadius.
|
inline |
If Normalize is off, the interior to annulus, the annulus (region between the two circles), and the region exterior to the annulus to be defined manually. Defauls are 0, 1, 0 respectively.
Definition at line 168 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_InteriorValue.
|
inline |
Set/Get whether kernel values are computed automatically or specified manually
Definition at line 142 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Normalize.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::NormalizeOff(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::NormalizeOn().
|
inline |
Set/Get the pixel spacings. Setting these ensures the annulus is round in physical space. Defaults to 1.
Definition at line 134 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Spacing.
|
inline |
Set/Get the thickness of the annulus. The outer radius of the annulus is defined as r = InnerRadius + Thickness. Thickness is specified in physical units (mm).
Definition at line 126 of file itkAnnulusOperator.h.
References itk::AnnulusOperator< TPixel, TDimension, TAllocator >::m_Thickness.
|
private |
|
private |
Definition at line 235 of file itkAnnulusOperator.h.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::GetBrightCenter(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::operator=(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::PrintSelf(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetBrightCenter().
|
private |
Definition at line 238 of file itkAnnulusOperator.h.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::GetExteriorValue(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::operator=(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::PrintSelf(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetExteriorValue().
|
private |
Definition at line 232 of file itkAnnulusOperator.h.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::GetInnerRadius(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::operator=(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::PrintSelf(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetInnerRadius().
|
private |
Definition at line 236 of file itkAnnulusOperator.h.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::GetInteriorValue(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::operator=(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::PrintSelf(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetInteriorValue().
|
private |
Definition at line 234 of file itkAnnulusOperator.h.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::GetNormalize(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::operator=(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::PrintSelf(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetNormalize().
|
private |
Definition at line 239 of file itkAnnulusOperator.h.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::GetSpacing(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::operator=(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::PrintSelf(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetSpacing().
|
private |
Definition at line 233 of file itkAnnulusOperator.h.
Referenced by itk::AnnulusOperator< TPixel, TDimension, TAllocator >::GetThickness(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::operator=(), itk::AnnulusOperator< TPixel, TDimension, TAllocator >::PrintSelf(), and itk::AnnulusOperator< TPixel, TDimension, TAllocator >::SetThickness().