遥感影像均值滤波代码
时间: 2024-12-30 18:29:58 浏览: 10
### 遥感影像均值滤波实现
对于遥感影像中的噪声去除和平滑处理,均值滤波是一种简单而有效的方法。该方法通过对邻域内的像素取平均来平滑图像,在一定程度上可以减少随机噪声的影响。
#### Python 实现代码
以下是使用Python和OpenCV库实现均值滤波的例子:
```python
import cv2
import numpy as np
def mean_filter(image_path, kernel_size=3):
# 读取输入图片
img = cv2.imread(image_path)
# 应用均值滤波
filtered_img = cv2.blur(img,(kernel_size,kernel_size))
return filtered_img
# 使用示例
filtered_image = mean_filter('path_to_your_remote_sensing_image.jpg', 5)
cv2.imwrite('output_filtered_image.png', filtered_image)
```
这段代码展示了如何加载一张遥感影像并应用大小为`kernel_size×kernel_size`的窗口进行均值滤波[^1]。
#### MATLAB 实现代码
如果倾向于MATLAB环境,则可以通过内置函数轻松完成相同的操作:
```matlab
% 加载原始遥感影像数据
I = imread('your_remote_sensing_image.tif');
% 定义卷积核尺寸
filterSize = [5 5];
% 执行均值滤波操作
J = imfilter(I, fspecial('average', filterSize));
% 显示结果
figure;
subplot(1,2,1); imshow(I); title('Original Image');
subplot(1,2,2); imshow(J); title('Mean Filtered Image');
```
此脚本首先读入一幅遥感影像文件,接着创建了一个指定大小的平均模板,并调用了`imfilter()`来进行实际的过滤过程。
阅读全文