数字图像噪声_Python

本文探讨了数字图像噪声的来源,并通过Python详细展示了如何在灰度图和彩色图中加入高斯噪声、椒盐噪声,以及指数分布、均匀分布和伽马(爱尔兰)噪声的模拟过程。
摘要由CSDN通过智能技术生成

一:数字图像噪声来源

图像的获取(数字化过程)和传输过程,当使用相机获取图像时,光照程度和传感器温度是生成图像大量噪点的主要因素。

二:灰度图加入高斯噪声(正态噪声)

def GaussianNoise(src,mean,sigma):
    NoiseImg=src
    rows,cols=NoiseImg.shape
    for i in range(rows):
        for j in range(cols):
            NoiseImg[i,j]=NoiseImg[i,j]+random.gauss(mean,sigma)
            if NoiseImg[i,j]<0:
                NoiseImg[i,j]=0
            elif NoiseImg[i,j]>255:
                NoiseImg[i,j]=255
    return NoiseImg

img=cv2.imread('IMG_4470.JPG',0)
img=GaussianNoise(img,2,4)
cv2.imwrite('IMG_4470_GaussianNoise.jpg',img)
cv2.imshow('IMG_4470_GaussianNoise',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
cv2.waitKey(1)

输出结果为:
在这里插入图片描述原图为:
在这里插入图片描述

三:彩色图加入高斯噪声

def GaussianNoise_color(src,mean,sigma):
    NoiseImg=src
    rows,cols,_=NoiseImg.shape
    for i in range(rows):
        for j in range(cols):
            NoiseImg[i,j]=NoiseImg[i,j]+random.gauss(mean,sigma)
    return NoiseImg

img=cv2.imread('IMG_4470.JPG')
img=GaussianNoise_color_percentage(img,2,4)
cv2.imwrite('IMG_4470_GaussianNoise_color_1.jpg',img)
cv2.imshow('IMG_4470_GaussianNoise_color_1',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
cv2.waitKey(1)

输出为:
在这里插入图片描述

四:部分像素点加入高斯噪声

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值