用python实现图像低通滤波和高通滤波
时间: 2024-05-11 10:14:51 浏览: 103
以下是使用Python实现图像低通滤波和高通滤波的代码示例:
低通滤波:
```python
import numpy as np
import cv2
#读取图像
img = cv2.imread('image.jpg')
#定义低通滤波器
kernel = np.ones((5,5),np.float32)/25
#应用低通滤波器
dst = cv2.filter2D(img,-1,kernel)
#显示图像
cv2.imshow('Original',img)
cv2.imshow('Low Pass Filtered',dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
高通滤波:
```python
import numpy as np
import cv2
#读取图像
img = cv2.imread('image.jpg')
#定义高通滤波器
kernel = np.array([[-1,-1,-1],[-1,9,-1],[-1,-1,-1]])
#应用高通滤波器
dst = cv2.filter2D(img,-1,kernel)
#显示图像
cv2.imshow('Original',img)
cv2.imshow('High Pass Filtered',dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这些示例中,我们使用OpenCV库读取图像。我们定义了一个低通滤波器和一个高通滤波器,并使用filter2D函数应用它们。最后,我们使用imshow函数显示原始图像和滤波后的图像。
阅读全文