median_filter#
- ndfilters.median_filter(array, size, axis=None, where=True, mode='mirror')[source]#
Calculate a multidimensional rolling median.
- Parameters:
size (int | tuple[int, ...]) – The shape of the kernel over which the mean will be calculated.
axis (None | int | tuple[int, ...]) – The axes over which to apply the kernel. Should either be a scalar or have the same number of items as size. If
None(the default) the kernel spans every axis of the array.where (bool | ndarray) – An optional mask that can be used to exclude parts of the array during filtering.
mode (Literal['mirror', 'nearest', 'wrap', 'truncate']) – The method used to extend the input array beyond its boundaries. See
scipy.ndimage.generic_filter()for the definitions. Currently, only “mirror”, “nearest”, “wrap”, and “truncate” modes are supported.
- Return type:
A copy of the array with the mean filter applied.
Examples
import matplotlib.pyplot as plt import scipy.datasets import ndfilters img = scipy.datasets.ascent() img_filtered = ndfilters.median_filter(img, size=21) fig, axs = plt.subplots(ncols=2, sharex=True, sharey=True) axs[0].set_title("original image"); axs[0].imshow(img, cmap="gray"); axs[1].set_title("filtered image"); axs[1].imshow(img_filtered, cmap="gray");