SoEigenvaluesToStructurenessProcessing3d Class Reference
[Edge Marking]

ImageViz SoEigenvaluesToStructurenessProcessing3d engine computes a structure score image More...

#include <ImageViz/Engines/EdgeDetection/EdgeMarking/SoEigenvaluesToStructurenessProcessing3d.h>

Inheritance diagram for SoEigenvaluesToStructurenessProcessing3d:
SoImageVizEngine SoEngine SoFieldContainer SoBase SoRefCounter SoTypedObject

List of all members.

Public Types

enum  Lightness {
  BRIGHT = 0,
  DARK = 1
}
enum  StructureType {
  ROD = 0,
  BALL = 1,
  PLANE = 2
}

Public Member Functions

 SoEigenvaluesToStructurenessProcessing3d ()

Public Attributes

SoSFImageDataAdapter inEigenvaluesImage
SoSFEnum lightness
SoSFEnum structureType
SoSFFloat alpha
SoSFFloat beta
SoSFFloat noiseCutoff
SoImageVizEngineOutput
< SoSFImageDataAdapter,
SoImageDataAdapter * > 
outImage

Detailed Description

ImageViz SoEigenvaluesToStructurenessProcessing3d engine computes a structure score image

It allows to extract tubular, blob-like and plate-like structures from dark or bright background.

The computation is based on eigen values $\lambda_{1}$, $\lambda_{2}$ and $\lambda_{3}$ where $\mid \lambda_{1} \mid \geq \mid \lambda_{2} \mid \geq \mid \lambda_{3} \mid $.

The structure score for bright tubular structures corresponds to :

\[ score = \begin{cases} 0 & \text{ if } \lambda_1 >0 \text{ or } \lambda_2 >0 \\ (1-\exp(-\frac{\mathcal{R}_a^2}{2\alpha^2}))\exp(-\frac{\mathcal{R}_b^2}{2\beta^2})(1-\exp(-\frac{S^2}{2c^2})) & \end{cases} \]

and the score for bright blob-like structures is computed as follow :

\[ score = \begin{cases} 0 & \text{ if } \lambda_1 >0 \text{ or} \lambda_2 >0 \text{ or} \lambda_3 >0\\ (1-\exp(-\frac{\mathcal{R}_a^2}{2\alpha^2}))(1-\exp(-\frac{\mathcal{R}_b^2}{2\beta^2}))(1-\exp(-\frac{S^2}{2c^2})) \end{cases} \]

and the score for bright plate-like structures is computed as follow :

\[ score = \begin{cases} 0 & \text{ if } \lambda_1 >0 \\ \exp(-\frac{\mathcal{R}_a^2}{2\alpha^2})\exp(-\frac{\mathcal{R}_b^2}{2\beta^2})(1-\exp(-\frac{S^2}{2c^2})) & \end{cases} \]

where $S$ is the Hessian norm

\[S = \left \| \mathcal{H} \right \| = \sqrt{\sum \lambda_i^2}\]

$\alpha$ is a threshold which controls the flatness sensitivity, $\beta$ is a threshold which controls the blobness sensitivity, and c is a sensitivity threshold which controls the noise influence. $c = noiseCutoff*S_{max}$ with $S_{max}$ the maximum Hessian norm in the image.

For dark objects the conditions on $\lambda_{1}$, $\lambda_{2}$ and $\lambda_{3}$ are reversed.

The method is referenced by Frangi publication :

A.F.Frangi, W.J.Niessen, K.L.Vincken, M.A.Viergever, "Multiscale vessel enhancement filtering"
Lecture Notes in Computer Science(MICCAI), vol. 1496, pp. 130-137, 1998.

This filter provides output float grayscale image where each voxel intensity represents a structure score.

FILE FORMAT/DEFAULT


Library references: EigenvaluesToStructureness3d


Member Enumeration Documentation

Enumerator:
BRIGHT 

Extracts bright structures from dark background.

DARK 

Extracts dark structures from bright background.

Enumerator:
ROD 

Extracts tubular structures.

BALL 

Extracts blob-like structures.

PLANE 

Extracts plate-like structures.


Constructor & Destructor Documentation

SoEigenvaluesToStructurenessProcessing3d::SoEigenvaluesToStructurenessProcessing3d (  ) 

Constructor.


Member Data Documentation

Flatness sensitivity threshold.

It corresponds to the $\alpha$ term of the score equation. Default value is 0.75f.

Blobness sensitivity threshold.

It corresponds to the $\beta$ term of the score equation. Default value is 0.75f.

Image containing input eigenvalues field.

Type must be float.

Spectral series size is 3:

  • channel 0 = largest Eigen value ($\lambda_1$),
  • channel 1 = medium Eigen value ($\lambda_2$).
  • channel 2 = smallest Eigen value ($\lambda_3$). Default value is NULL. Supported types include: grayscale color image.

The type of structure lightness to extract.

Use enum Lightness. Default is BRIGHT

Noise scale factor.

It is used for computing the c term of the score equation. Default value is 0.5f.

Output image.

Size (except spectral series, only one), calibration, type and interpretation of the outImage image are forced to the same values as inEigenvaluesImage. All values are between 0 and 1. Default value is NULL. Supported types include: grayscale binary label color image.

The type of structure lightness to extract.

Use enum StructureType. Default is ROD


The documentation for this class was generated from the following file:

Open Inventor Toolkit reference manual, generated on 4 Sep 2023
Copyright © Thermo Fisher Scientific All rights reserved.
https://www.openinventor.com/