This tool performs a standard deviation contrast stretch on a raster image. This operation maps each grid cell value in the input raster image (zin) onto a new scale that ranges from a lower-tail clip value (`min_val`) to the upper-tail clip value (`max_val`), with the user-specified number of tonal values (`num_tones`), such that:

> zout = ((zin – min_val)/(max_val – min_val)) x num_tones

where zout is the output value. The values of `min_val` and `max_val` are determined based on the image mean and standard deviation. Specifically, the user must specify the number of standard deviations (clip or `stdev`) to be used in determining the min and max clip values. The tool will then calculate the input image mean and standard deviation and estimate the clip values from these statistics.

This is the same kind of stretch that is used to display raster type data on the fly in many GIS software packages.

## See Also

piecewise_contrast_stretch, gaussian_contrast_stretch, histogram_equalization, min_max_contrast_stretch, percentage_contrast_stretch, sigmoidal_contrast_stretch

## Function Signature

`def standard_deviation_contrast_stretch(self, raster: Raster, clip: float = 2.0, num_tones: int = 256) -> Raster: ...`

## Project Links

WbW Homepage User Manual Support WbW