CVB++ 15.0
Cvb::Foundation::Analysis Namespace Reference

Namespace for collection of miscellaneous image analysis functions. More...

Functions

void LocalEigenValuesAndVectors (const ImagePlane &plane, Filter::FixedFilterSize derivatorSize, Filter::FixedFilterSize blurSize, std::unique_ptr< Image > &lambda1, std::unique_ptr< Image > &lambda2, std::unique_ptr< Image > &eigenValue1x, std::unique_ptr< Image > &eigenValue1y, std::unique_ptr< Image > &eigenValue2x, std::unique_ptr< Image > &eigenValue2y)
 Calculate the local eigenvalues and eigenvectors of the Hesse matrix applied to the pixels of the input image.
 
std::unique_ptr< ImageLocalMinEigenValues (const ImagePlane &plane, Filter::FixedFilterSize derivatorSize, Filter::FixedFilterSize blurSize)
 Calculate the minimum local eigenvalues of the Hesse matrix applied to the pixels of the input image.
 
double WangQuality (const ImagePlane &plane1, const ImagePlane &plane2)
 Calculate the Wang quality for two images.
 

Detailed Description

Namespace for collection of miscellaneous image analysis functions.

Remarks
CMake users: Link to imported target CVB::CvbFoundationAnalysis

Function Documentation

◆ LocalEigenValuesAndVectors()

void LocalEigenValuesAndVectors ( const ImagePlane & plane,
Filter::FixedFilterSize derivatorSize,
Filter::FixedFilterSize blurSize,
std::unique_ptr< Image > & lambda1,
std::unique_ptr< Image > & lambda2,
std::unique_ptr< Image > & eigenValue1x,
std::unique_ptr< Image > & eigenValue1y,
std::unique_ptr< Image > & eigenValue2x,
std::unique_ptr< Image > & eigenValue2y )
inline

Calculate the local eigenvalues and eigenvectors of the Hesse matrix applied to the pixels of the input image.

Parameters
[in]planeImage plane to work on.
[in]derivatorSizeSize of the derivation operator (Sobel, valid inputs are Filter::FixedFilterSize::Kernel3x3 and Filter::FixedFilterSize::Kernel5x5).
[in]blurSizeSize of the blurring operator (valid inputs are Filter::FixedFilterSize::Kernel3x3 and Filter::FixedFilterSize::Kernel5x5).
[out]lambda1First eigenvalue for each pixel (output).
[out]lambda2Second eigenvalue for each pixel (output).
[out]eigenValue1xX-component of the first eigenvector (output).
[out]eigenValue1yY-component of the first eigenvector (output).
[out]eigenValue2xX-component of the second eigenvector (output).
[out]eigenValue2yY-component of the second eigenvector (output).
Exceptions
Anyexception derived from std::exception including CvbException.

◆ LocalMinEigenValues()

std::unique_ptr< Image > LocalMinEigenValues ( const ImagePlane & plane,
Filter::FixedFilterSize derivatorSize,
Filter::FixedFilterSize blurSize )
inline

Calculate the minimum local eigenvalues of the Hesse matrix applied to the pixels of the input image.

Parameters
[in]planeImage plane to work on.
[in]derivatorSizeSize of the derivation operator (Sobel, valid inputs are Filter::FixedFilterSize::Kernel3x3 and Filter::FixedFilterSize::Kernel5x5).
[in]blurSizeSize of the blurring operator (valid inputs are Filter::FixedFilterSize::Kernel3x3 and Filter::FixedFilterSize::Kernel5x5).
Returns
Image with the minimal local eigenvaluesThe filtered image
Exceptions
Anyexception derived from std::exception including CvbException.

This approach helps identify locations inside the image that contain curved edges.

◆ WangQuality()

double WangQuality ( const ImagePlane & plane1,
const ImagePlane & plane2 )
inline

Calculate the Wang quality for two images.

Parameters
[in]plane1Image plane 1 on which to calculate.
[in]plane2Image plane 2 on which to calculate.
Returns
The quality index (ranging from -1 to 1)
Exceptions
Anyexception derived from std::exception including CvbException.

The Wang Quality is a measure of similarity between two images as proposed in a publication by Z. Wang and A. C. Bovik (IEEE Signal Processing Letters, vol. 9, no. 3, pp. 81-84, March 2002).