# entropy

Entropy of grayscale image

## Syntax

``e = entropy(I)``

## Description

example

````e = entropy(I)` returns the entropy of grayscale image `I`. Entropy is a statistical measure of randomness that can be used to characterize the texture of the input image.```

## Examples

collapse all

`I = imread('circuit.tif');`

Calculate the entropy.

`J = entropy(I)`
```J = 6.9439 ```

## Input Arguments

collapse all

Grayscale image, specified as a numeric array or logical array of any dimension. The `entropy` function expects images of data type `double` and `single` to have values in the range [0, 1]. If `I` has values outside the range [0, 1], then you can rescale values to the expected range by using the `rescale` function.

Data Types: `double` | `uint8` | `uint16` | `uint32` | `logical`

## Output Arguments

collapse all

Entropy of image `I`, returned as a numeric scalar.

Data Types: `double`

collapse all

### Entropy

Entropy is defined as `-sum(p.*log2(p))`, where `p` contains the normalized histogram counts returned from `imhist`.

By default, `entropy` uses two bins for logical arrays and 256 bins for `uint8`, `uint16`, or `double` arrays. `entropy` converts any data type other than `logical` to `uint8` for the histogram count calculation so that the pixel values are discrete and directly correspond to a bin value.

## References

[1] Gonzalez, R. C., R. E. Woods, and S. L. Eddins. Digital Image Processing Using MATLAB. New Jersey, Prentice Hall, 2003, Chapter 11.

## Version History

Introduced before R2006a

expand all