美文网首页人生心得
使用Opencv(Python)实现图像模糊

使用Opencv(Python)实现图像模糊

作者: 小小老书童 | 来源:发表于2020-07-07 21:08 被阅读0次

    图像模糊的方法

    • 均值滤波(对高斯随机噪声有一定的抑制作用)---cv.blur()
    • 中值滤波(对椒盐噪声有很好的抑制作用)---cv.median_blur()
    • 高斯滤波(对高斯随机噪声有很好的抗性)---cv.gaussian_blur()

    实现部分(均值滤波)

    • 均值滤波cv.blur()
    image = cv.blur(image,(5,5))    #cv.blur(src, ksize, dst=None, anchor=None, borderType=None)
    

    效果(均值滤波)

    image.png
    image.png

    实现部分(中值滤波)

    cv.median_blur(image, 5) #medianBlur(src, ksize, dst=None)
    

    效果(中值滤波)

    image.png
    image.png

    实现部分(高斯滤波)

    cv.GaussianBlur(image,(5,5),0)  #GaussianBlur(src, ksize, sigmaX, dst=None, sigmaY=None, borderType=None)
    

    高斯噪声的制作

    def clamp(pv):
        if pv > 255 :
            return 255
        if pv <0
            return 0
        else :
            return pv
    
    
    def Gaussian_noise_demo(image):
        h, w, c = image.shape
        for row in range(h):
            for col in range(w):
                gn = np.random.normal(0,30,4)
                b = image[row, col, 0]
                g = image[row, col, 1]
                r = image[row, col, 2]
                image[row, col, 0] = clamp(b + gn[0])
                image[row, col, 1] = clamp(g + gn[1])
                image[row, col, 2] = clamp(r + gn[2])
        cv.imshow("Gaussian_noise",image)
    

    高斯噪声的制作的效果:

    原图:


    image.png

    高斯噪声图:


    image.png

    相关文章

      网友评论

        本文标题:使用Opencv(Python)实现图像模糊

        本文链接:https://www.haomeiwen.com/subject/dgnnqktx.html