人生心得

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

2020-07-07  本文已影响0人  小小老书童

图像模糊的方法

实现部分(均值滤波)

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
上一篇下一篇

猜你喜欢

热点阅读