传奇网站一般怎么做的,建设银行行号查询网站,电商主题wordpress,联合年检怎么做网站上1、中值滤波
使用中值滤波去除图像的异常像素点#xff0c;使用cv2.cv2.medianBlur(img, 3)表示再图像在中值滤波窗口3*3的范围内#xff0c;从下到大排序#xff0c;将当前值替换为排序中值#xff08;如下图所示#xff09;将56替换为#xff08;56#xff0c;66,90,…1、中值滤波
使用中值滤波去除图像的异常像素点使用cv2.cv2.medianBlur(img, 3)表示再图像在中值滤波窗口3*3的范围内从下到大排序将当前值替换为排序中值如下图所示将56替换为5666,90,91,93,95,97,101中的中值93。 Python代码如下
将输入图像经过中值滤波后
noise_img ./noiseimg.png
image cv2.imread(noise_img)
image cv2.medianBlur(image, 5)
cv2.imwrite(./img.png, image)
原图与中值滤波后得到对比 注意中值滤波较大的核尺寸会考虑更大的邻域虽然能更有效地去除噪声但也会更加模糊图像细节和边缘。
2、均值滤波
均值滤波是指任意一点的像素值都是周围 N×M 个像素值的均值。opencv中使用cv2.blur()
实现代码与效果如下
def mean_denoise(noise_image./noiseimg1.png, result_path./mean_result1.png, kernel_size(7,7)):image cv2.imread(noise_image)image cv2.blur(image, kernel_size)cv2.imwrite(result_path, image)
原图与均值滤波效果对比 注意kernel_size越大滤波范围越大去噪效果强但会导致图象边缘模糊。
3、双边滤波
参考https://blog.csdn.net/qq_49478668/article/details/123488527
去噪的同时考虑到了图像边缘信息。
def bilateral_filter_noise(noise_image./noiseimg1.png, result_path./bilateral_result1.png):image cv2.imread(noise_image)filtered_image cv2.bilateralFilter(image, 9,200,200)cv2.imwrite(result_path, filtered_image)
原图与双边滤波效果对比 注意 cv2.bilateralFilter(image, d9,sigmaColor200,sigmaSpace200) ● d是在滤波时选取的空间距离参数这里表示以当前像素点为中心点的直径。如果该值为非正数则会自动从参数 sigmaSpace 计算得到。如果滤波空间较大d5则速度较慢。因此在实时应用中推荐d5。对于较大噪声的离线滤波可以选择d9。 ● sigmaColor是滤波处理时选取的颜色差值范围该值决定了周围哪些像素点能够参与到滤波中来。与当前像素点的像素值差值小于 sigmaColor 的像素点能够参与到当前的滤波中。该值越大就说明周围有越多的像素点可以参与到运算中。该值为0时滤波失去意义该值为255时指定直径内的所有点都能够参与运算。 ● sigmaSpace是坐标空间中的sigma值。它的值越大说明有越多的点能够参与到滤波计算中来。当d0时无论sigmaSpace的值如何d都指定邻域大小否则d与 sigmaSpace的值成比例。 原文链接https://blog.csdn.net/qq_49478668/article/details/123488527