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() 232 53 93 36 8 220 85 48 0 65 131 35 3 141 22 129 212 78 39 37 10 187 251 49 206 191 198 9 24 250 24 50 190 160 46 201 >>> img.decimate(2, sigma=0).print() 232 93 8 3 22 212 206 198 24
- References:
P. Corke, Robotics, Vision & Control for Python, Springer, 2023, Section 11.7.2.
- Seealso: