SoEigenDecompositionProcessing3d Class Reference
[Arithmetic Operations]

ImageViz The SoEigenDecompositionProcessing3d engine computes the local eigenvectors and eigenvalues of a 3D matrix image. More...

#include <ImageViz/Engines/ArithmeticAndLogic/ArithmeticOperations/SoEigenDecompositionProcessing3d.h>

Inheritance diagram for SoEigenDecompositionProcessing3d:
SoImageVizEngine SoEngine SoFieldContainer SoBase SoRefCounter SoTypedObject

List of all members.

Public Types

enum  OutputSelection {
  EIGEN_VECTOR_1 = 1,
  EIGEN_VECTOR_2 = 2,
  EIGEN_VECTOR_3 = 4,
  EIGEN_VALUES = 8
}

Public Member Functions

 SoEigenDecompositionProcessing3d ()

Public Attributes

SoSFImageDataAdapter inSymmetricMatrixImage
SoSFBitMask outputSelection
SoImageVizEngineOutput
< SoSFImageDataAdapter,
SoImageDataAdapter * > 
outEigenVector1Image
SoImageVizEngineOutput
< SoSFImageDataAdapter,
SoImageDataAdapter * > 
outEigenVector2Image
SoImageVizEngineOutput
< SoSFImageDataAdapter,
SoImageDataAdapter * > 
outEigenVector3Image
SoImageVizEngineOutput
< SoSFImageDataAdapter,
SoImageDataAdapter * > 
outEigenValuesImage

Detailed Description

ImageViz The SoEigenDecompositionProcessing3d engine computes the local eigenvectors and eigenvalues of a 3D matrix image.

The input image must have six channels, where each channel contains one of the unique components of a 3x3 symmetric matrix. (The redundant components are not necessary.) This engine creates output images containing the eigenvectors and/or eigenvalues of the input matrix image.

Let $ A(X) $ be the 3x3 symetric matrix at position $ X=(x,y) $.
$ A(X)_{1,1} = I(X,0) $,
$ A(X)_{1,2} = I(X,1) $,
$ A(X)_{1,3} = I(X,2) $,
$ A(X)_{2,2} = I(X,3) $,
$ A(X)_{2,3} = I(X,4) $ and
$ A(X)_{3,3} = I(X,5) $
where $ I(X, s) $ is the spectral component value $ s $ at the spatial position $ X $.

SEE ALSO

SoEigenDecompositionProcessing2d, SoHessianMatrixProcessing2d, SoHessianMatrixProcessing3d

FILE FORMAT/DEFAULT


Library references: eigendecomposition3d


Member Enumeration Documentation

This enum defines the different outputs that can be selected.

Enumerator:
EIGEN_VECTOR_1 

Enable the computation of the first eigenvector (the largest value).

EIGEN_VECTOR_2 

Enable the computation of the second eigenvector (the medium value).

EIGEN_VECTOR_3 

Enable the computation of the third eigenvector (the smallest value).

EIGEN_VALUES 

Enable the computation of eigenvalues (from the largest to the smallest).


Constructor & Destructor Documentation

SoEigenDecompositionProcessing3d::SoEigenDecompositionProcessing3d (  ) 

Constructor.


Member Data Documentation

A matrix image containing symmetric 3x3 matrices.

The image type must be float. The number of channels must be 6 in the following order $($A_{11}, A_{12}, A_{13}, A_{22}, A_{23}, A_{33})$ where $ A $ is a symmetric 3x3 matrix.
Default value is NULL. Supported types include: grayscale color image.

Eigenvalues image.

The IJK dimensions of the output image are the same as the input but the number of channels is 3 (channel 0 = largest Eigen value, channel 1 = medium Eigen value, channel 2 = smallest Eigen value). The calibration (voxel size, origin, orientation) is forced to the same values as the input. The voxel type is forced to float. Default value is NULL. Supported types include: grayscale binary label color image.

Eigenvector image containing the largest eigen value.

The IJK dimensions of the output image are the same as the input but the number of channels is 3 (channel 0 = x, channel 1 = y, channel 2 = z). The calibration (voxel size, origin, orientation) is forced to the same values as the input. The voxel type is forced to float. Default value is NULL. Supported types include: grayscale binary label color image.

Eigenvector image containing the medium eigen value.

The IJK dimensions of the output image are the same as the input but the number of channels is 3 (channel 0 = x, channel 1 = y, channel 2 = z). The calibration (voxel size, origin, orientation) is forced to the same values as the input. The voxel type is forced to float. Default value is NULL. Supported types include: grayscale binary label color image.

Eigenvector image containing the smallest eigen value.

The IJK dimensions of the output image are the same as the input but the number of channels is 3 (channel 0 = x, channel 1 = y, channel 2 = z). The calibration (voxel size, origin, orientation) is forced to the same values as the input. The voxel type is forced to float. Default value is NULL. Supported types include: grayscale binary label color image.

Enable computation of selected outputs.

Use enum OutputSelection. Default is EIGEN_VECTOR_1 | EIGEN_VECTOR_2 | EIGEN_VECTOR_3 | EIGEN_VALUES


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

Open Inventor Toolkit reference manual, generated on 15 Mar 2023
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/