数字图像处理均值滤波处理代码
时间: 2024-10-15 11:30:16 浏览: 27
junzhilvbo.rar_图形图像处理_Visual_C++_
数字图像处理中的均值滤波是一种平滑滤波技术,主要用于去除图像噪声,提高图像质量。以下是Python中使用NumPy库实现简单均值滤波的一个基本例子:
```python
import numpy as np
from scipy import ndimage
def mean_filter(image, kernel_size):
# 检查输入是否为数组
if not isinstance(image, np.ndarray):
raise ValueError("Input must be a NumPy array")
# 确保图像维度是二维
if image.ndim != 2:
raise ValueError("Image should be 2D")
# 计算过滤器大小
filter_shape = (kernel_size, kernel_size)
# 使用ndimage.uniform_filter计算均值滤波
filtered_image = ndimage.uniform_filter(image, size=kernel_size)
return filtered_image
# 示例
# 假设img是你的图像数据
filtered_img = mean_filter(img, 3) # 选择3x3的滤波窗口
```
在这个示例中,`mean_filter`函数接收一个图像矩阵`image`和一个窗口大小`kernel_size`作为参数。它使用`ndimage.uniform_filter`函数对每个像素及其周围指定大小的邻域取平均值,从而实现均值滤波。
阅读全文