PANDORE Version 6 GREYC-IMAGE

pentropythresholding



Performs multi-thresholding on image based on the entropy value.



Synopsis

pentropythresholding length [-m mask] [im_in|-] [im_out|-]

Description

pentropythresholding classifies the input image pixels into a small number of clusters according to their value. Every pixel p of the input image is assigned to a cluster identified by the related threshold value:

   if threshold[k-1]<im_out[p]<=threshold[k].
   then im_out[p]=threshold[k]

The last threshold is equal to 255.

The number of clusters and the value of the thresholds are determined from the measure of the entropy. For each gray level i the entropy value is:

   Entropy(k) = - SUM(Tkl * Log (Tkl)) with l in [0..k].

The co-occurrence matrix Tkl contains the number of times the central pixel has the gray level k and the mean of its 8 neighbors is l.

Then the thresholds are located as regional maxima of the entropy function. The maxima are searched in the space of length gray levels around the gray level i.

Notice: This operator can only work on grayscale image of bytes.

Parameters

Inputs

Outputs

Result

Returns the number of thresholds.

Examples

Segments tangram.pan and displays the number of thresholds:

   pentropythresholding 10 tangram.pan out.pan
   pstatus

See also

Thresholding

C++ Prototype

Errc PEntropyThresholding( const Img2duc &im_in, Img2duc &im_out, int length );

Version française

Multiseuillage de l'image par analyse de l'entropie des régions.

Reference

C. Fernandez-Maloigne, "Segmentation et caractérisation d'images de textures à l'aide d'informations statistiques", PhD Thesis, University of Compiegne, 1989.


Author: Régis Clouard