随笔 - 1762  文章 - 0  评论 - 109  阅读 - 431万

cv2.bilateralFilter 双边滤波

双边滤波是一种非线性的滤波方法,是结合图像的空间邻近度和像素值相似度的一种折衷处理,同时考虑空间与信息和灰度相似性,达到保边去噪的目的,具有简单、非迭代、局部处理的特点。之所以能够达到保边去噪的滤波效果是因为滤波器由两个函数构成:一个函数是由几何空间距离决定滤波器系数,另一个是由像素差值决定滤波器系数.
 
1 Python: cv2.bilateralFilter(src, d, sigmaColor, sigmaSpace[, dst[, borderType]]) → dst

 

 
参数解释:
  • src:输入图像
  • d:过滤时周围每个像素领域的直径
  • sigmaColor:在color space中过滤sigma。参数越大,临近像素将会在越远的地方mix。
  • sigmaSpace:在coordinate space中过滤sigma。参数越大,那些颜色足够相近的的颜色的影响越大。
 
使用方法:
复制代码
1 import cv2 as cv
 2 import numpy as np
 3 cv.namedWindow("image")
 4 cv.createTrackbar("d","image",0,255,nothing)
 5 cv.createTrackbar("sigmaColor","image",0,255,nothing)
 6 cv.ctrateTrackbar("sigmaSpace","image",0,255,nothing)
 7 img = cv.imread("test.jpg",0)
 8 while(1):
 9     d = cv.getTrackbarPos("d","image")
10     sigmaColor = cv.getTrackbarPos("sigmaColor","image")
11     sigmaSpace = cv.getTrackbarPos("sigmaSpace","image")
12     out_img = cv.bilateralFilter(img,d,sigmaColor,sigmaSpace)
13     cv.imshow("out",out_img)
14     k = cv.waitKey(1) & 0xFF
15     if k ==27:
16         break
17 cv.destroyAllWindows()
复制代码

来源:https://www.cnblogs.com/aoru45/p/9763999.html

 
 
 
 
 
posted on   一杯明月  阅读(7209)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示