SoEigenDecompositionProcessing2d Class Reference
[Arithmetic Operations]

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

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

Inheritance diagram for SoEigenDecompositionProcessing2d:
SoImageVizEngine SoEngine SoFieldContainer SoBase SoRefCounter SoTypedObject

List of all members.

Public Types

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

Public Member Functions

 SoEigenDecompositionProcessing2d ()

Public Attributes

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

Detailed Description

ImageViz The SoEigenDecompositionProcessing2d engine computes the local eigenvectors and eigenvalues of a 2D matrix image.

The input image must have three channels, where each channel contains one of the unique components of a 2x2 symmetric matrix. (The redundant fourth component is not necessary.) This engine creates output images containing the eigenvectors and/or eigenvalues of the input matrix image.

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

SEE ALSO

SoEigenDecompositionProcessing3d, SoHessianMatrixProcessing2d, SoHessianMatrixProcessing3d

FILE FORMAT/DEFAULT


Library references: eigendecomposition

See related examples:

HessianImage


Member Enumeration Documentation

This enum defines the different outputs that can be selected.

Enumerator:
EIGEN_VECTOR_1 

Enable computation of first eigenvector (the largest value).

EIGEN_VECTOR_2 

Enable computation of second eigenvector (the smallest value).

EIGEN_VALUES 

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


Constructor & Destructor Documentation

SoEigenDecompositionProcessing2d::SoEigenDecompositionProcessing2d (  ) 

Constructor.


Member Data Documentation

A matrix image containing symmetric 2x2 matrices.

The image type must be float. The number of channels must be 3 in the following order: $($A_{11}, A_{12}, A_{22})$ where $ A $ is a symmetric 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 2 (channel 0 = largest Eigen value, channel 1 = 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 2 (channel 0 = x, channel 1 = y). 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 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 2 (channel 0 = x, channel 1 = y). 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 image.

Enable computation of selected outputs.

Use enum OutputSelection. Default is EIGEN_VECTOR_1 | EIGEN_VECTOR_2 | EIGEN_VALUES


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

Open Inventor Toolkit reference manual, generated on 12 Feb 2024
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/