【发布时间】:2020-12-11 06:08:08
【问题描述】:
我想将眼睛区域中任何像素强度值的 5% 作为噪声添加到整个图像中,所以我想要做的是选择眼睛区域内的任何像素并给定它们的简单像素强度添加 5%整个图像的高斯噪声。
def generate_noisy_image(x, variance):
noise = np.random.normal(0, variance, (1, x.shape[0]))
return x + noise
def loadimage(path):
filepath_list = listdir(path)
for filepath in filepath_list:
img = Image.open(path + filepath)
img = img.resize((81, 150))
img = np.asarray(img)
generate_noisy_image(img, 0.025)
img = Image.fromarray(img)
img.save('C:/Users/noisy-images/'+filepath, 'JPEG')
loadimage('C:/Users/my_images/')
ValueError:操作数无法与形状一起广播 (150,81) (1,150)
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-96-1bebb687f5e7> in <module>
11
12
---> 13 loadimage('source path from images')
14
<ipython-input-96-1bebb687f5e7> in loadimage(path)
5 img = img.resize((81, 150))
6 img = np.asarray(img)
----> 7 generate_noisy_image(img, 0.025)
8 print(generate_noisy_image.shape)
9 img = Image.fromarray(img)
<ipython-input-95-7cc3346953f6> in generate_noisy_image(x, variance)
1 def generate_noisy_image(x, variance):
2 noise = np.random.normal(0, variance, (1, x.shape[0]))
----> 3 return x + noise
【问题讨论】:
-
您需要的第一件事是您将用作参考的 RGB 值。您需要进行并非微不足道的功能识别。
-
图像是灰度的,特征已经被识别,我只是拍了这张照片,因为我想不出其他任何东西,呵呵,例如我只需要一个例子,它取任意像素的值图像并根据该灰度值向整个图像添加一些百分比的噪声,我应该能够从那里抓住问题
-
我编辑了问题,以简单的方式指定我的目标
-
复制粘贴错误消息时,请复制粘贴整个内容,包括堆栈跟踪和有关哪行代码产生错误的信息。这让我更容易理解我可能出错的地方。
-
好的,我用堆栈跟踪更新了问题。
标签: python image-processing python-imaging-library noise noise-generator