Image.decimate#
- Image.decimate(m: int = 2, sigma: float | None = None) Self[source]#
Decimate an image
- Parameters:
m (int) – decimation factor
sigma (float, optional) – standard deviation for Gaussian kernel smoothing, defaults to None
- Raises:
ValueError – decimation factor m must be an integer
- Returns:
decimated image
- Return type:
Return a decimated version of the image whose size is reduced by subsampling every
m(an integer) pixels in both dimensions.The image is smoothed with a Gaussian kernel with standard deviation
sigma. Ifsigmais None then a value ofm/2is used,sigmais zero then no smoothing is performed.
Note
If the image has multiple planes, each plane is decimated.
Smoothing is applied to the image _before_ decimation to reduce high-spatial-frequency components and hence reduce aliasing artifacts. The standard deviation should be chosen as a function of the maximum spatial-frequency in the image.
Example:
>>> from machinevisiontoolbox import Image >>> img = Image.Random(size=6) >>> img.print() 192 77 251 101 182 219 18 228 51 13 219 135 102 7 81 146 6 192 148 137 8 92 187 24 4 97 45 179 52 177 165 117 8 30 237 231 >>> img.decimate(2, sigma=0).print() 192 251 182 102 81 6 4 45 52
- References:
P. Corke, Robotics, Vision & Control for Python, Springer, 2023, Section 11.7.2.
- Seealso: