HALCON Reference Manual 10.0.2
Table of Contents / Image / Features ClassesClassesClasses | | | Operators

fuzzy_entropyfuzzy_entropyfuzzy_entropyFuzzyEntropyFuzzyEntropy (Operator)

Name

fuzzy_entropyfuzzy_entropyfuzzy_entropyFuzzyEntropyFuzzyEntropy — Determine the fuzzy entropy of regions.

Signature

fuzzy_entropy(Regions, Image : : Apar, Cpar : Entropy)

Herror fuzzy_entropy(const Hobject Regions, const Hobject Image, const Hlong Apar, const Hlong Cpar, double* Entropy)

Herror T_fuzzy_entropy(const Hobject Regions, const Hobject Image, const Htuple Apar, const Htuple Cpar, Htuple* Entropy)

Herror fuzzy_entropy(Hobject Regions, Hobject Image, const HTuple& Apar, const HTuple& Cpar, double* Entropy)

Herror fuzzy_entropy(Hobject Regions, Hobject Image, const HTuple& Apar, const HTuple& Cpar, HTuple* Entropy)

double HRegion::FuzzyEntropy(const HImage& Image, const HTuple& Apar, const HTuple& Cpar) const

HTuple HRegionArray::FuzzyEntropy(const HImage& Image, const HTuple& Apar, const HTuple& Cpar) const

void HOperatorSetX.FuzzyEntropy(
[in] IHUntypedObjectX* Regions, [in] IHUntypedObjectX* Image, [in] VARIANT Apar, [in] VARIANT Cpar, [out] VARIANT* Entropy)

VARIANT HImageX.FuzzyEntropy(
[in] IHRegionX* Regions, [in] Hlong Apar, [in] Hlong Cpar)

VARIANT HRegionX.FuzzyEntropy(
[in] IHImageX* Image, [in] Hlong Apar, [in] Hlong Cpar)

static void HOperatorSet.FuzzyEntropy(HObject regions, HObject image, HTuple apar, HTuple cpar, out HTuple entropy)

HTuple HImage.FuzzyEntropy(HRegion regions, int apar, int cpar)

HTuple HRegion.FuzzyEntropy(HImage image, int apar, int cpar)

Description

fuzzy_entropyfuzzy_entropyfuzzy_entropyFuzzyEntropyFuzzyEntropy calculates the fuzzy entropy of a fuzzy set. To do so, the image is regarded as a fuzzy set. The entropy then is a measure of how well the image approximates a white or black image. It is defined as follows:


             1     ----
  h(x) = --------- \    T (l) h(l)
         M N ln(2) /     e
                   ----

where MxN is the size of the image, and h(l) is the histogram of the image. Furthermore,

  T (l) = -u(l) ln(u(l)) - (1-u(l)) ln(1-u(l))
   e

Here, u(x(m,n)) is a fuzzy membership function defining the fuzzy set (see fuzzy_perimeterfuzzy_perimeterfuzzy_perimeterFuzzyPerimeterFuzzyPerimeter). The same restrictions hold as in fuzzy_perimeterfuzzy_perimeterfuzzy_perimeterFuzzyPerimeterFuzzyPerimeter.

Parallelization

Parameters

RegionsRegionsRegionsRegionsregions (input_object)  region(-array) objectHRegionHRegionHRegionXHobject

Regions for which the fuzzy entropy is to be calculated.

ImageImageImageImageimage (input_object)  image objectHImageHImageHImageXHobject (byte)

Input image containing the fuzzy membership values.

AparAparAparAparapar (input_control)  integer HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Start of the fuzzy function.

Default value: 0

Suggested values: 0, 5, 10, 20, 50, 100

Typical range of values: 0 ≤ Apar Apar Apar Apar apar ≤ 255 (lin)

Minimum increment: 1

Recommended increment: 5

CparCparCparCparcpar (input_control)  integer HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

End of the fuzzy function.

Default value: 255

Suggested values: 50, 100, 150, 200, 220, 255

Typical range of values: 0 ≤ Cpar Cpar Cpar Cpar cpar ≤ 255 (lin)

Minimum increment: 1

Recommended increment: 5

Restriction: Apar <= Cpar

EntropyEntropyEntropyEntropyentropy (output_control)  real(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Fuzzy entropy of a region.

Example (HDevelop)

* To find a Fuzzy Entropy from an Image
read_image(Image,'monkey')
fuzzy_entropy(Trans,Trans,0,255,Entro)

Example (C)

/* To find a Fuzzy Entropy from an Image */
read_image(&Image,'monkey') ;
fuzzy_entropy(Trans,Trans,0,255,&Entro) ;

Example (HDevelop)

* To find a Fuzzy Entropy from an Image
read_image(Image,'monkey')
fuzzy_entropy(Trans,Trans,0,255,Entro)

Example (HDevelop)

* To find a Fuzzy Entropy from an Image
read_image(Image,'monkey')
fuzzy_entropy(Trans,Trans,0,255,Entro)

Example (HDevelop)

* To find a Fuzzy Entropy from an Image
read_image(Image,'monkey')
fuzzy_entropy(Trans,Trans,0,255,Entro)

Result

The operator fuzzy_entropyfuzzy_entropyfuzzy_entropyFuzzyEntropyFuzzyEntropy returns the value 2 (H_MSG_TRUE) if the parameters are correct. Otherwise an exception is raised.

See also

fuzzy_perimeterfuzzy_perimeterfuzzy_perimeterFuzzyPerimeterFuzzyPerimeter

References

M.K. Kundu, S.K. Pal: “Automatic selection of object enhancement operator with quantitative justification based on fuzzy set theoretic measures”; Pattern Recognition Letters 11; 1990; pp. 811-829.

Module

Foundation


Table of Contents / Image / Features ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH