为了账号安全,请及时绑定邮箱和手机立即绑定

高斯噪声未覆盖主图像-Python

高斯噪声未覆盖主图像-Python

扬帆大鱼 2021-09-11 20:41:50
我正在尝试向图像添加高斯噪声(“pepper.jpg”)。它有效,如结果所示(“noisy Pepper.png”);但噪音并没有覆盖“辣椒”,它就在它周围。我在应用噪音时缺少什么吗?任何意见,将不胜感激。import cv2import numpy as npimg = cv2.imread("pepper.jpg",0)row, col = img.shapemean = 0var = 0.3sigma = var ** 0.5gauss = np.random.normal(mean, sigma, (row, col))gauss = gauss.reshape(row, col)noisyp = gauss + imgnoisyp = noisyp.astype('uint8')cv2.imwrite('noisy pepper.png', noisyp)
查看完整描述

1 回答

?
摇曳的蔷薇

TA贡献1793条经验 获得超6个赞

您转换为uint8并不复杂。这是您要寻找的内容:


import cv2

import numpy as np



def convert_to_uint8(image_in):

    temp_image = np.float64(np.copy(image_in))

    cv2.normalize(temp_image, temp_image, 0, 255, cv2.NORM_MINMAX, dtype=-1)


    return temp_image.astype(np.uint8)



img = cv2.imread("pepper.jpg", 0)

row, col = img.shape

mean = 0

var = 0.3

sigma = var ** 0.5

gauss = np.random.normal(mean, sigma, (row, col))

gauss = gauss.reshape(row, col)

noisy_pepper = gauss + img


cv2.imwrite('noisy pepper.png', convert_to_uint8(noisy_pepper))

//img1.sycdn.imooc.com//613ca43a0001244102220223.jpg

当然,巫婆这样的西格玛你是不会看到噪音的。请看一下这个(sigma 将在 14 左右):


..

var = 200

sigma = var ** 0.5

..

//img1.sycdn.imooc.com//613ca44800016ee002210223.jpg

查看完整回答
反对 回复 2021-09-11
  • 1 回答
  • 0 关注
  • 161 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信