对图片采用理想低通滤波器取半径15进行平滑并显示结果用python实现
时间: 2024-05-03 08:20:41 浏览: 185
一个关于图像平滑过滤的算法
3星 · 编辑精心推荐
好的,这是一个关于图像处理的问题,我可以回答。你可以使用Python的OpenCV库来实现这个操作。以下是代码示例:
```python
import cv2
import numpy as np
# 读取图片
img = cv2.imread('image.jpg')
# 获取图像的尺寸
rows, cols, channels = img.shape
# 定义低通滤波器
k = 15
lowpass_filter = np.ones((k, k)) / k ** 2
# 进行卷积运算
smoothed_img = cv2.filter2D(img, -1, lowpass_filter)
# 显示结果
cv2.imshow('Original Image', img)
cv2.imshow('Smoothed Image', smoothed_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这段代码使用了 `cv2.filter2D` 函数来进行卷积运算,使用 `np.ones` 函数来定义一个全一矩阵作为低通滤波器。最后使用 `cv2.imshow` 函数来显示原始图片和平滑后的图片。
阅读全文