cv2联合双边滤波函数
时间: 2023-07-24 07:42:47 浏览: 155
cv2.bilateralFilter() 是opencv中的联合双边滤波函数,可以用于图像去噪,可以保留边缘信息,同时减少噪声的影响。
函数原型如下:
```python
cv2.bilateralFilter(src, d, sigmaColor, sigmaSpace[, dst[, borderType]]) → dst
```
参数说明:
- `src`:输入图像,可以为单通道或多通道图像,数据类型为 uint8 或 float32。
- `d`:过滤模板的大小,必须为正奇数。
- `sigmaColor`:颜色空间滤波器的sigma值,一般取10-150之间。
- `sigmaSpace`:坐标空间滤波器的sigma值,一般取10-150之间。
- `dst`:输出图像,与输入图像 src 大小、类型相同。
- `borderType`:边界像素插值方式,默认值为cv2.BORDER_DEFAULT。
示例代码:
```python
import cv2
import numpy as np
img = cv2.imread('test.jpg')
dst = cv2.bilateralFilter(img, 9, 75, 75)
cv2.imshow('original', img)
cv2.imshow('bilateral filter', dst)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在这个示例代码中,我们读取了一张图片,然后使用cv2.bilateralFilter()函数进行双边滤波处理。最后将原始图像和处理后的图像进行对比展示。
阅读全文