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() 14 80 122 233 183 234 122 94 46 152 179 84 98 234 129 207 90 13 3 213 227 118 41 86 198 203 94 120 104 236 184 142 140 43 24 181 >>> img.decimate(2, sigma=0).print() 14 122 183 98 129 90 198 94 104
- References:
P. Corke, Robotics, Vision & Control for Python, Springer, 2023, Section 11.7.2.
- Seealso: