DCT去噪和硬阈值

信息处理 图像处理 去噪 dct 阈值 稀疏模型
2022-01-04 12:55:54

如果我有一个图像并且我找到了 DCT,然后对系数应用硬阈值,然后是 IDCT,那么我已经减弱了噪声。

有人可以详细解释或指出我为什么会这样吗?

我理解为什么阻止高频的滤波器会在去噪中起作用(因为我们假设噪声由高频分量组成),但为什么幅度阈值有效?

3个回答

低通滤波基于“自然”图像在低频系数中比在高频系数中具有更多能量的假设;而噪声将同样影响所有系数。因此,去除高频系数将相对消除比信号更多的噪声。问题在于图像中存在“合法”的高频系数,例如边缘。通过低通滤波去噪会衰减这些系数并导致边缘模糊。

幅度阈值化中使用的属性是稀疏性——“自然”图像很可能在频域中只有一小组高非零系数。添加均匀(且独立于像素与像素)噪声等效于向所有频率系数添加一个小的随机值。结果是原始图像中所有为 0 的系数现在都有一个小值;而原始图像中较高的系数相对未受影响。对小幅度系数进行阈值处理将消除噪声对这些系数的影响——尽管它不会恢复噪声对高系数的影响。

如果你用瞬变/起音代替边缘,同样的事情也适用于声音。

看看下面的优化问题:

argminx12Axy+λx0

哪里正在计算非零元素的数量。0

众所周知,可以使用迭代硬阈值来解决这个问题,并且在某些情况下可以保证找到正确的解决方案(请参阅用于压缩感知的迭代硬阈值)。

现在,如果你使用作为 DCT 字典(你可以并且很多人都这样做),那么基本上你所做的就是试图解决这个问题。A

这是优化的观点。
它之所以如此有效,是因为稀​​疏(低自由度)表示的想法?
嗯,简单的直觉就是效率。
当使用正确的工具来描述它们时,事情应该很简单。

深入研究的好地方是eDx - 信号和图像处理中的稀疏表示:Michael Elad 的基础

DCT 在能量压缩方面非常有用,因此只需将图像的 DCT 解析为某些基函数的加权后即可。在 DCT 之后,生成的矩阵将包含每个基函数的乘数。可以不失一般性地说,高值系数是对人眼对图像的心理视觉感知有显着贡献的系数。

低频噪声将添加到低频系数中,但是高频噪声将导致生成的变换矩阵的高频系数的幅度较小。

因此,当我们对变换后的矩阵进行幅度阈值处理时,我们消除了所有不属于高幅度系数的噪声。因此,在 IDCT 之后可能会出现的一些噪声仍然存在。

但是这里的主要思想是在高频数据最少的图像中,DCT,然后是幅度阈值可能会比典型的高通滤波器做得更好。如果可以想象一幅图像,其中图像中的任何频率都具有真实图像分量和噪声分量,其中真实图像分量很小或为零,那么 DCT 后跟幅度阈值将消除该频率分量,从而主要针对噪声分量.