scipy.ndimage.standard_deviation

scipy.ndimage.standard_deviation(input, labels=None, index=None)[source]

Calculate the standard deviation of the values of an N-D image array, optionally at specified sub-regions.

Parameters
inputarray_like

N-D image data to process.

labelsarray_like, optional

Labels to identify sub-regions in input. If not None, must be same shape as input.

indexint or sequence of ints, optional

labels to include in output. If None (default), all values where labels is non-zero are used.

Returns
standard_deviationfloat or ndarray

Values of standard deviation, for each sub-region if labels and index are specified.

Examples

>>> a = np.array([[1, 2, 0, 0],
...               [5, 3, 0, 4],
...               [0, 0, 0, 7],
...               [9, 3, 0, 0]])
>>> from scipy import ndimage
>>> ndimage.standard_deviation(a)
2.7585095613392387

Features to process can be specified using labels and index:

>>> lbl, nlbl = ndimage.label(a)
>>> ndimage.standard_deviation(a, lbl, index=np.arange(1, nlbl+1))
array([ 1.479,  1.5  ,  3.   ])

If no index is given, non-zero labels are processed:

>>> ndimage.standard_deviation(a, lbl)
2.4874685927665499