分形/图像噪声
外观
< 分形
图像噪声 [1]
- 所有未正确渲染的像素的集合
- "异常像素。这意味着像素没有正确地代表颜色......" Barry J Brady[2]
噪声可能出现在不同的情况下。这里只包括渲染图像中的噪声。所以没有原始图像[3],没有照片,没有信号,...
- 像素间距
- 在 mathworks [4]
- snibgo 的 ImageMagick 页面:噪声
"众所周知,均匀网格会因细密的近乎平行的线条与规则间隔的采样点相互作用而产生莫尔纹。"[5]
" Our images look noisy and grainy near the boundary of the Mandelbrot set. The escape time bands get closer and closer, while the pixel spacing is fixed. The pixel grid samples isolated points of a mathematically abstract image defined on the continuous plane. The Nyquist-Shannon sampling theorem shows that sampling isolated points from a continuum is a valid approximation only so long as the values don’t change too quickly between the points. Aliasing occurs when the values do change too quickly compared to the sampling rate, with the grainy noisy visual effects as we have been. Because the escape time bands increase in number without bound as we approach the boundary of the Mandelbrot set, no sampling rate can be high enough." Claude Heiland-Allen[6]
-
曼德布罗集外部的水平集的二元分解
-
使用水平集方法的曼德布罗集
- PSNR (峰值信噪比)
- SSIM (结构相似度)
- NIQE (自然图像质量评估器)
"To detect noise you first need to know the properties of your useful data. So if you have no prior knowledge of the input images then you Can not reliably detect noise." Spektre[7]
- "基于结构相似度"的图像质量客观测量。 [8]
- 噪声率 = 被识别为噪声的像素数量。“为了区分正常像素和噪声像素,我只计算了其相邻像素的中值,如果其值大于某个临界值,我们就会说该像素是噪声。"[9]
- " 而不是在像素超过某个阈值时将其归类为噪声,你可以测量“误差”并计算图像中所有像素的方差或标准差。这将有助于你区分 n 个像素刚好超过阈值和 n 个像素完全不正常。它还避免了选择阈值的必要性。" Adrian McCarthy
- 估计噪声方差[10] 如果得到 sigma > 10.0,那么你的图像就存在噪声(只针对灰度图像)。
// https://stackoverflow.com/questions/8960462/how-can-i-measure-image-noise
// noise rate by Vitalii Boiarskyi
if (ABS(1 - (currentPixel.R+currentPixel.G+currentPixel.B)/(neigborsMediumValues.R + neigboursMediumValues.G + neigboursMediumValues.B))) > criticalValue)
then
{
currentPixelIsNoise = TRUE;
}
# https://stackoverflow.com/questions/2440504/noise-estimation-noise-measurement-in-image
# J. Immerkær, “Fast Noise Variance Estimation”, Computer Vision and Image Understanding, Vol. 64, No. 2, pp. 300-302, Sep. 1996
import math,
import numpy as np
from scipy.signal import convolve2d
def estimate_noise(I):
H, W = I.shape # Tuple of image array dimensions.
M = [[1, -2, 1],
[-2, 4, -2],
[1, -2, 1]]
sigma = np.sum(np.sum(np.absolute(convolve2d(I, M))))
sigma = sigma * math.sqrt(0.5 * math.pi) / (6 * (W-2) * (H-2))
return sigma
"Noise reduction therefore quickly becomes an ‘AI-complete’ problem " Mark Scott Abeln [11]
名称
- 降噪[12]
- 去除噪声
- 降噪
软件
方法
时,将其归类为内部并停止迭代。
- 提高精度
- 增加采样(亚像素精度)[14]
- 抖动采样点[15][16]
- 泊松圆盘采样[17]
- 在 matlab 中
将 6×6 像素光栅图形放大到 11×11 像素(本示例中的低图像分辨率是为了更好地说明;对于更高的分辨率,原理相同)。
- 1:输入图像;像素在此以圆圈表示。
- 2:输出图像的像素网格,在此以黄色十字表示,叠加在输入图像上。
- 3:输出图像的颜色值由输入图像的附近像素计算得出。
- 4:输出图像。
- 使用 Image Magic[18]
- 从混叠中屏蔽颗粒状噪声(淡出)。
抖动是一种有意应用的噪声形式,用于随机化量化误差,防止图像中出现大尺度图案,如颜色带状现象。 [19][20]
抖动可以更准确地显示包含比显示硬件所能显示的更大范围颜色的图形。
- 8 位 (s)RGB 的有限精度意味着可能会出现明显的带状现象,尤其是在具有平滑渐变的较暗区域。添加抖动会牺牲空间分辨率换取颜色分辨率,将量化误差分散开来,因此最终结果在感知上更均匀。[21]
它简单易实现[22]
迭代可以用二元线性函数逼近(具有两个变量的线性函数称为二元线性函数)
对于曼德布罗特集
对于曼德布罗特集,当“完整扰动迭代的非线性部分非常小,以至于省略它会导致的问题比低精度数据类型的舍入误差更少”时,这是有效的[23]
BLA 可以用于
- 加速
- 避免故障
变体
- 步骤
- 单步 BLA
- 多步 BLA
- 非共形 BLA
- ABS 变体 BLA
- 混合 BLA
- 多个临界点
故障
故障类型:[26]
- 噪声 = 孤立像素
- 实心 = 此类像素集合中最大的连通分量
参见
- 公共分类
- 程序噪声
- 带限是处理噪声函数的良好解决方案(Inigo Quilez)
- ↑ 维基百科:图像噪声
- ↑ digital-photography-school : 如何避免和减少图像中的噪声
- ↑ scikit-image.org 文档:降噪
- ↑ mathworks:imnoise
- ↑ fractalforums.org : 抖动以减少摩尔纹
- ↑ mandelbrot-book:噪声
- ↑ stackoverflow 问题:javascript-image-noise-detection
- ↑ 周旺等人著《图像质量评估:从错误可见性到结构相似性》
- ↑ stackoverflow 问题:如何测量图像噪声
- ↑ stackoverflow 问题 : 噪声估计 - 图像中的噪声测量
- ↑ Mark Scott Abeln 撰写的 there-is-detail-in-noise
- ↑ wenbihan:可重复的图像降噪 - 最先进技术
- ↑ fractalforums.org:另一种解决扰动故障的方法
- ↑ fractalforums.org : 限制迭代次数增加时重新计算的区域
- ↑ fractalforums.org:抖动以减少摩尔纹
- ↑ fractalforums.org 采样
- ↑ Cem Yuksel 撰写的 poisson_disk_sampling
- ↑ fractalforums.org:使用 imagemagick 后处理的 analytic-logde
- ↑ 维基百科中的抖动
- ↑ Marek Fiser:Is-16-million-colors-enough
- ↑ fractalforums:抖动以提高图像质量
- ↑ Øyvind Kolås 撰写的抖动,[email protected],2013 年 8 月
- ↑ Claude Heiland-Allen 撰写的 fraktaler
- ↑ dinkydauset 在 deviantar 上:Perturbation-for-the-Mandelbrot-set-450766847
- ↑ math.stackexchange 问题:选择使用扰动理论进行分形渲染的参考轨道
- ↑ fractalforums.org : 使用扰动理论时如何获取第二个参考
- ↑ fractalforums.org:生成的曼德布罗特集在外观上是否与实际集合不同
- ↑ 维基百科中的抖动
- ↑ matteo-basei : 噪声