Into

Modules

Documentation

classPiiWaveletTextureOperation

#include <PiiWaveletTextureOperation.h>

An operation that extracts texture features with discrete wavelet decomposition.

Inherits PiiDefaultOperation

Description

The feature vector contains the norm of some of the decomposition results. The feature extraction method is a generalization of that used by R. Porter and N. Canagarajah. For details see Porter, R., Canagarajah, N., 1997. Robust rotation-invariant texture classification: wavelet, gabor filter and gmrf based schemes. IEE Proc. Vis. Image Signal Process. 144 (3), 180-188.

Inputs

imagean image whose texture features are to be calculated. (Any gray-scale image)

Outputs

featuresfeature vector. For each image, four values are calculated and output as as 1-by-4 matrix. (PiiMatrix<float>)

Properties

int

The number of features to calculate for each decomposition level.

int

The number of wavelet decomposition levels.

int

The norm used in extracting features from the decomposition coefficients.

The name of the wavelet to use.

Constructors and destructor

Public member functions

int
int
( )
int
( )
void
(
  • int features
)
void
(
  • int levels
)
void
(
  • int norm
)
void
( )

Protected member functions

virtual void

Executes one round of processing.

Property details

  • int featuresPerLevel

    [read, write]

    The number of features to calculate for each decomposition level.

    Feature counts have the following meanings:

    • 1 - rotation invariant texture descriptor as described in the aforementioned paper.

    • 2 - consider only horizontal and vertical details

    • 3 - consider also diagonal details (default value)

    • 4 - use also the approximation coefficients on each level. This information is redundant.

  • int levels

    [read, write]

    The number of wavelet decomposition levels.

    Must be larger than zero. The default is three. The number of features is equal to the levels * featuresPerLevel + 1.

  • int norm

    [read, write]

    The norm used in extracting features from the decomposition coefficients.

    The L1 norm is used by default, L2 is commonly referred to as the "energy" of texture. Any norm larger than 0 will do.

  • QString wavelet

    [read, write]

    The name of the wavelet to use.

    Known values are "Haar" and "Daubechies1" ... "Daubechies10". The default is "Daubechies2".

Function details

  • PiiWaveletTextureOperation

    ()
  • int featuresPerLevel

    ()
  • int levels

    ()
  • int norm

    ()
  • void setFeaturesPerLevel

    (
    • int features
    )
  • void setLevels

    (
    • int levels
    )
  • void setNorm

    (
    • int norm
    )
  • void setWavelet

    ( )
  • QString wavelet

    ()
  • virtual void process

    ()
    [protected, virtual]

    Executes one round of processing.

    This function is invoked by the processor if the necessary preconditions for a new processing round are met. This function does all the necessary calculations to create output objects and sends them to output sockets.

    Calls to process(), syncEvent(), and setProperty() are synchronized and cannot occur simultaneously. PiiDefaultOperation ensures this by locking processLock() for reading before calling process().

    Note: With time-consuming operations, one should occasionally check that the operation hasn't been interrupted, i.e. that state() returns Running.

    Exceptions
    PiiExecutionException

    whenever an unrecoverable error occurs during a processing round, the operation is interrupted, or finishes execution due to end of input data.

    Reimplemented from PiiDefaultOperation.

Notes (0)

Add a note

Not a single note added yet. Be the first, add yours.