HistogramTransformInterpolation

HistogramTransformInterpolation[{x1,x2,}]

finds a function so that the transformed values are distributed nearly uniformly.

HistogramTransformInterpolation[{x1,x2,},dist]

finds so that are distributed with distribution dist.

HistogramTransformInterpolation[image,]

finds a function that reshapes the histogram of image.

Details

Examples

open allclose all

Basic Examples  (4)

Find a function that distributes samples in a given dataset uniformly:

Reshape the histogram of a dataset to match the PDF of a normal distribution:

Find a function that equalizes the histogram of an image:

Find a function that equalizes the histogram of a 3D image:

Scope  (3)

Find equalizing functions for a list of datasets:

Find histogram reshaping functions for each color channel:

Apply the functions channel by channel:

Use a different number of quantiles when finding the transformation function:

Applications  (1)

Locally Adaptive Histogram Equalization  (1)

A full locally adaptive histogram equalization may give more appealing results for images with a variety of intensity levels, but takes much more time:

Bilinear interpolation between the equalization functions computed for non-overlapping blocks is a faster approximation:

Properties & Relations  (1)

The result of HistogramTransformInterpolation approximates the closed-form solution when it exists:

Introduced in 2012
 (9.0)
 |
Updated in 2014
 (10.0)