Measure the anisotropy in a labeled region
#include "dip_measurement.h"
dip_Error dip_FeatureAnisotropy2DID ( dip_int * )
dip_FeatureAnisotropy2DID returns the ID value of this measurement function, that is registered by Initialise.
The grey value input image should contain an orienation field. For each labeled region, a tensor is constructed at each of the region's pixels. This tensor is as follow:
cos^2(phi) cos(phi)sin(phi) [ ] cos(phi)sin(phi) sin^2(phi)
The next step is to compute a new tensor, each element computed by averaging the corresponding elements of all the individual tensors. This average tensor represents the orientation information of the region as a whole. Eigenvalue analysis of this tensor yields two eigenvalues, the largest l0, the smallest l1. The anisotropy measure is:
( l0 - l1 ) / ( l0 + l1 )
which is zero for a fully isotropic regions (i.e. one where there is no prefered orientation), and one for a fully anisotropic region (i.e. when there is a single orientation).
FeatureDimension, FeatureSize, FeatureCenter, FeatureGravity, FeatureMaximum, FeatureMinimum, FeatureFeret, FeatureMaxVal, FeatureMinVal, FeatureMean, FeatureStdDev, FeatureSum, FeatureMass, FeaturePerimeter, FeatureP2A, FeatureShape, FeatureSurfaceArea, FeatureAnisotropy2D, FeatureInertia, FeatureGinertia, FeatureMu, FeatureGmu, FeatureBendingEnergy, FeatureChainCodeBendingEnergy, FeatureExcessKurtosis, FeatureLongestChaincodeRun, FeatureOrientation2D, FeatureSkewness