Class ObjectnessMeasureImageFilter
java.lang.Object
org.itk.simple.ProcessObject
org.itk.simple.ImageFilter
org.itk.simple.ObjectnessMeasureImageFilter
Enhance M-dimensional objects in N-dimensional images.
This filter is a generalization of Frangi's vesselness measurement for
detecting M-dimensional object in N-dimensional space. For example a
vessel is a 1-D object in 3-D space. The filter can enhance blob-like
structures (M=0), vessel-like structures (M=1), 2D plate-like
structures (M=2), hyper-plate-like structures (M=3) in N-dimensional
images, with M<N.
This filter takes a scalar image as input and produces a real valued
image as output which contains the objectness measure at each pixel.
Internally, it computes a Hessian via discrete central differences.
Before applying this filter it is expected that a Gaussian smoothing
filter at an appropriate scale (sigma) was applied to the input image.
The enhancement is based on the eigenvalues of the Hessian matrix. For
the Frangi's vesselness case were M=1 and N=3 we have the 3
eigenvalues such that $ | \\lambda_1 | < | \\lambda_2 | < |\\lambda_3 | $ . The formula follows:
\\[ R_A = \\frac{|\\lambda_2|}{|\\lambda_3|}, \\; R_B =
\\frac{|\\lambda_2|}{|\\lambda_2\\lambda_3|}, \\; S =
\\sqrt{\\lambda_1^2+\\lambda_2^2+\\lambda_3^2} \\] \\[ V_{\\sigma}= \\begin{cases}
(1-e^{-\\frac{R_A^2}{2\\alpha^2}}) \\cdot
e^{\\frac{R_B^2}{2\\beta^2}} \\cdot
(1-e^{-\\frac{S^2}{2\\gamma^2}}) & \\text{if }
\\lambda_2<0 \\text{ and } \\lambda_3<0
\\text{,}\\\\ 0 & \\text{otherwise} \\end{cases} \\]
References
Antiga, L. Generalizing vesselness with respect to dimensionality and
shape. https://hdl.handle.net/1926/576
Frangi, AF, Niessen, WJ, Vincken, KL, & Viergever, MA (1998).
Multiscale Vessel Enhancement Filtering. In Wells, WM, Colchester, A,
& Delp, S, Editors, MICCAI '98 Medical Image Computing and Computer-Assisted Intervention, Lecture Notes in
Computer Science, pages 130-137, Springer Verlag, 1998.
See:
 itk::HessianToObjectnessMeasureImageFilter
 itk::simple::ObjectnessMeasure for the procedural interface
 itk::ObjectnessMeasureImageFilter for the Doxygen on the original ITK
class.
C++ includes: sitkObjectnessMeasureImageFilter.h
- 
Field SummaryFields inherited from class org.itk.simple.ProcessObjectswigCMemOwn
- 
Constructor SummaryConstructorsModifierConstructorDescriptionitk::simple::ObjectnessMeasureImageFilter::ObjectnessMeasureImageFilter() Default Constructor that takes no arguments and initializes default parametersprotectedObjectnessMeasureImageFilter(long cPtr, boolean cMemoryOwn) 
- 
Method SummaryModifier and TypeMethodDescriptionvoidSelf& itk::simple::ObjectnessMeasureImageFilter::BrightObjectOff()voidSelf& itk::simple::ObjectnessMeasureImageFilter::BrightObjectOn() Set the value of BrightObject to true or false respectfully.voiddelete()virtual itk::simple::ObjectnessMeasureImageFilter::~ObjectnessMeasureImageFilter() DestructorImage itk::simple::ObjectnessMeasureImageFilter::Execute(const Image &image1) Execute the filter on the input imageprotected voidfinalize()doublegetAlpha()double itk::simple::ObjectnessMeasureImageFilter::GetAlpha() const Set/Get Alpha, the weight corresponding to R_A (the ratio of the smallest eigenvalue that has to be large to the larger ones).doublegetBeta()double itk::simple::ObjectnessMeasureImageFilter::GetBeta() const Set/Get Beta, the weight corresponding to R_B (the ratio of the largest eigenvalue that has to be small to the larger ones).booleanbool itk::simple::ObjectnessMeasureImageFilter::GetBrightObject() const Enhance bright structures on a dark background if true, the opposite if false.protected static longdoublegetGamma()double itk::simple::ObjectnessMeasureImageFilter::GetGamma() const Set/Get Gamma, the weight corresponding to S (the Frobenius norm of the Hessian matrix, or second-order structureness)getName()std::string itk::simple::ObjectnessMeasureImageFilter::GetName() const Name of this classlongunsigned int itk::simple::ObjectnessMeasureImageFilter::GetObjectDimension() const Set/Get the dimensionality of the object (0: points (blobs), 1: lines (vessels), 2: planes (plate-like structures), 3: hyper-planes.booleanbool itk::simple::ObjectnessMeasureImageFilter::GetScaleObjectnessMeasure() const Toggle scaling the objectness measure with the magnitude of the largest absolute eigenvaluevoidSelf& itk::simple::ObjectnessMeasureImageFilter::ScaleObjectnessMeasureOff()voidSelf& itk::simple::ObjectnessMeasureImageFilter::ScaleObjectnessMeasureOn() Set the value of ScaleObjectnessMeasure to true or false respectfully.voidsetAlpha(double Alpha) Self& itk::simple::ObjectnessMeasureImageFilter::SetAlpha(double Alpha) Set/Get Alpha, the weight corresponding to R_A (the ratio of the smallest eigenvalue that has to be large to the larger ones).voidsetBeta(double Beta) Self& itk::simple::ObjectnessMeasureImageFilter::SetBeta(double Beta) Set/Get Beta, the weight corresponding to R_B (the ratio of the largest eigenvalue that has to be small to the larger ones).voidsetBrightObject(boolean BrightObject) Self& itk::simple::ObjectnessMeasureImageFilter::SetBrightObject(bool BrightObject) Enhance bright structures on a dark background if true, the opposite if false.voidsetGamma(double Gamma) Self& itk::simple::ObjectnessMeasureImageFilter::SetGamma(double Gamma) Set/Get Gamma, the weight corresponding to S (the Frobenius norm of the Hessian matrix, or second-order structureness)voidsetObjectDimension(long ObjectDimension) Self& itk::simple::ObjectnessMeasureImageFilter::SetObjectDimension(unsigned int ObjectDimension) Set/Get the dimensionality of the object (0: points (blobs), 1: lines (vessels), 2: planes (plate-like structures), 3: hyper-planes.voidsetScaleObjectnessMeasure(boolean ScaleObjectnessMeasure) Self& itk::simple::ObjectnessMeasureImageFilter::SetScaleObjectnessMeasure(bool ScaleObjectnessMeasure) Toggle scaling the objectness measure with the magnitude of the largest absolute eigenvalueprotected static longtoString()std::string itk::simple::ObjectnessMeasureImageFilter::ToString() const Print ourselves outMethods inherited from class org.itk.simple.ImageFiltergetCPtr, swigReleaseMethods inherited from class org.itk.simple.ProcessObjectabort, addCommand, debugOff, debugOn, getCPtr, getDebug, getGlobalDefaultCoordinateTolerance, getGlobalDefaultDebug, getGlobalDefaultDirectionTolerance, getGlobalDefaultNumberOfThreads, getGlobalDefaultThreader, getGlobalWarningDisplay, getNumberOfThreads, getNumberOfWorkUnits, getProgress, globalDefaultDebugOff, globalDefaultDebugOn, globalWarningDisplayOff, globalWarningDisplayOn, hasCommand, removeAllCommands, setDebug, setGlobalDefaultCoordinateTolerance, setGlobalDefaultDebug, setGlobalDefaultDirectionTolerance, setGlobalDefaultNumberOfThreads, setGlobalDefaultThreader, setGlobalWarningDisplay, setNumberOfThreads, setNumberOfWorkUnits, swigRelease
- 
Constructor Details- 
ObjectnessMeasureImageFilterprotected ObjectnessMeasureImageFilter(long cPtr, boolean cMemoryOwn) 
- 
ObjectnessMeasureImageFilterpublic ObjectnessMeasureImageFilter()itk::simple::ObjectnessMeasureImageFilter::ObjectnessMeasureImageFilter() Default Constructor that takes no arguments and initializes default parameters
 
- 
- 
Method Details- 
getCPtr
- 
swigRelease
- 
finalizeprotected void finalize()- Overrides:
- finalizein class- ImageFilter
 
- 
deletepublic void delete()virtual itk::simple::ObjectnessMeasureImageFilter::~ObjectnessMeasureImageFilter() Destructor- Overrides:
- deletein class- ImageFilter
 
- 
setAlphapublic void setAlpha(double Alpha) Self& itk::simple::ObjectnessMeasureImageFilter::SetAlpha(double Alpha) Set/Get Alpha, the weight corresponding to R_A (the ratio of the smallest eigenvalue that has to be large to the larger ones). Smaller values lead to increased sensitivity to the object dimensionality.
- 
getAlphapublic double getAlpha()double itk::simple::ObjectnessMeasureImageFilter::GetAlpha() const Set/Get Alpha, the weight corresponding to R_A (the ratio of the smallest eigenvalue that has to be large to the larger ones). Smaller values lead to increased sensitivity to the object dimensionality.
- 
setBetapublic void setBeta(double Beta) Self& itk::simple::ObjectnessMeasureImageFilter::SetBeta(double Beta) Set/Get Beta, the weight corresponding to R_B (the ratio of the largest eigenvalue that has to be small to the larger ones). Smaller values lead to increased sensitivity to the object dimensionality.
- 
getBetapublic double getBeta()double itk::simple::ObjectnessMeasureImageFilter::GetBeta() const Set/Get Beta, the weight corresponding to R_B (the ratio of the largest eigenvalue that has to be small to the larger ones). Smaller values lead to increased sensitivity to the object dimensionality.
- 
setGammapublic void setGamma(double Gamma) Self& itk::simple::ObjectnessMeasureImageFilter::SetGamma(double Gamma) Set/Get Gamma, the weight corresponding to S (the Frobenius norm of the Hessian matrix, or second-order structureness)
- 
getGammapublic double getGamma()double itk::simple::ObjectnessMeasureImageFilter::GetGamma() const Set/Get Gamma, the weight corresponding to S (the Frobenius norm of the Hessian matrix, or second-order structureness)
- 
setScaleObjectnessMeasurepublic void setScaleObjectnessMeasure(boolean ScaleObjectnessMeasure) Self& itk::simple::ObjectnessMeasureImageFilter::SetScaleObjectnessMeasure(bool ScaleObjectnessMeasure) Toggle scaling the objectness measure with the magnitude of the largest absolute eigenvalue
- 
scaleObjectnessMeasureOnpublic void scaleObjectnessMeasureOn()Self& itk::simple::ObjectnessMeasureImageFilter::ScaleObjectnessMeasureOn() Set the value of ScaleObjectnessMeasure to true or false respectfully.
- 
scaleObjectnessMeasureOffpublic void scaleObjectnessMeasureOff()Self& itk::simple::ObjectnessMeasureImageFilter::ScaleObjectnessMeasureOff()
- 
getScaleObjectnessMeasurepublic boolean getScaleObjectnessMeasure()bool itk::simple::ObjectnessMeasureImageFilter::GetScaleObjectnessMeasure() const Toggle scaling the objectness measure with the magnitude of the largest absolute eigenvalue
- 
setObjectDimensionpublic void setObjectDimension(long ObjectDimension) Self& itk::simple::ObjectnessMeasureImageFilter::SetObjectDimension(unsigned int ObjectDimension) Set/Get the dimensionality of the object (0: points (blobs), 1: lines (vessels), 2: planes (plate-like structures), 3: hyper-planes. ObjectDimension must be smaller than ImageDimension.
- 
getObjectDimensionpublic long getObjectDimension()unsigned int itk::simple::ObjectnessMeasureImageFilter::GetObjectDimension() const Set/Get the dimensionality of the object (0: points (blobs), 1: lines (vessels), 2: planes (plate-like structures), 3: hyper-planes. ObjectDimension must be smaller than ImageDimension.
- 
setBrightObjectpublic void setBrightObject(boolean BrightObject) Self& itk::simple::ObjectnessMeasureImageFilter::SetBrightObject(bool BrightObject) Enhance bright structures on a dark background if true, the opposite if false.
- 
brightObjectOnpublic void brightObjectOn()Self& itk::simple::ObjectnessMeasureImageFilter::BrightObjectOn() Set the value of BrightObject to true or false respectfully.
- 
brightObjectOffpublic void brightObjectOff()Self& itk::simple::ObjectnessMeasureImageFilter::BrightObjectOff()
- 
getBrightObjectpublic boolean getBrightObject()bool itk::simple::ObjectnessMeasureImageFilter::GetBrightObject() const Enhance bright structures on a dark background if true, the opposite if false.
- 
getNamestd::string itk::simple::ObjectnessMeasureImageFilter::GetName() const Name of this class- Overrides:
- getNamein class- ProcessObject
 
- 
toStringstd::string itk::simple::ObjectnessMeasureImageFilter::ToString() const Print ourselves out- Overrides:
- toStringin class- ProcessObject
 
- 
execute
 
-