首页 > 解决方案 > 向图像添加像素级独立噪声

问题描述

我的问题很简单:我有一张图像,我想在图像中添加像素独立的噪声。噪声可以来自任何分布,例如高斯分布。numpy/scikit-learn 中有哪些可用模块可以做同样的事情?

我没有任何代码,但我正在学习 numpy.random.normal 等模块,我需要更多说明。没有一个模块明确表示如果我多次从分布中抽取样本,则抽取将是独立的。

谢谢你的建议。

标签: pythonnumpyimage-processingscikit-learnnoise-generator

解决方案


你有几个选择。如果您想使用替换随机抽样,只需使用 numpy 的内置随机模块之一(即 numpy.random.random)。您还可以使用 numpy.random.pareto 来获得更戏剧性/突发的噪音。这些方法生成独立样本。

如果您有一个集合或数组形式的分布,您想从中提取样本而不重复(例如,您有一个数组 [0.1, 0.3, 0.9] 并希望仅使用这些值生成噪声),您使用 python 的内置 random.random.choice([0.1, 0.3, 0.9]) 从您的自定义分布中提取独立样本。您还可以指定replace=False.


推荐阅读