图像压缩与图像去噪

信息处理 图像处理 去噪 压缩
2022-02-21 08:57:40

基于小波的图像去噪可以通过阈值处理(选择一个阈值,并丢弃所有低于阈值的值。基于小波的图像压缩也可以通过类似的方式进行。那么这两种操作有什么区别?我们可以考虑去噪某种类型的压缩?在去噪的情况下丢弃意味着删除低于阈值的系数,而在压缩中,所有低于阈值的值都设置为零?为什么将值设置为零会降低熵?它们不会被删除,如果图像通过无线信道传输,零值被编码和传输。

3个回答

感知无损(但实际上是有损)图像压缩旨在保持视觉上相同的图像,同时减少表示它所需的位数。但是,如果您尝试积极压缩,则会出现视觉上明显的压缩伪影。

基于小波的图像去噪旨在通过去除被认为是噪声的东西来改变图像的外观。与噪声版本相比,我们希望去噪图像看起来更好。

图像去噪的一个副作用也是减小图像的大小,因为您有效地丢弃了图像中的一些数据。但它永远不会像压缩算法那样高效。

此外,由于噪声始终被视为无关信息,因此在压缩图像之前对图像进行去噪(如有必要)会很有用,可让您获得更高的压缩比。

但是,请注意,图像降噪器在从真实图像数据中区分噪声方面并不是完美的算法,它们不仅可能会丢弃噪声,还会丢弃一些非常关键的图像信息(尤其是在高频下,纹理和边缘)。

压缩=减少必要的比特。

因此,如果这样做,那就是压缩。如果不是,则不是压缩。

就其本身而言,您不清楚“丢弃”是什么意思。如果您的意思是“设置为零”,那并没有减少位数;如果您的意思是“根据定义假设它们为零并且不存储/传输这些系数”的意义上的“丢弃”,那就是压缩。

此外,将许多系数设置为零可以使熵编码(例如霍夫曼)更好地工作,但同样,这是一个额外的步骤。

所以,这归结为:你需要定义丢弃对你意味着什么,然后你就会清楚地看到它。

压缩可以(在某些情况下)是一种去噪反之则不太明显。因为虽然去噪“只”需要保留有意义的信息,但压缩需要有效地打包它(这需要巧妙的位级管理)。

这个问题在数据方面是一个先验的更通用的问题:不仅在图像上,它还与字符串、信号、视频、点云、网格或一般较少结构化的数据有关。它在处理方面也更通用:如何“将数据转换为可以将有用信息与噪声分离或压缩的域”?

该讨论与以下经典假设有关(但很少陈述):

  1. 我们获得的数据拥有结构化信息,可以与更多随机的东西(噪声)区分开来,
  2. 一些处理可以区分另一个。

为这些假设设计优化标准很复杂,因为它们似乎需要大量关于什么是数据以及什么是噪声的背景信息。然而,随着 90 年代的进展,一篇论文(至少对我而言)提供了一个开创性的裂痕:确定性数据可以被压缩,噪声不是(我的话)论文是:Filtering Random Noise from Deterministic Signals via Data Compression,BK Natarajan,IEEE Transactions on Signal Processing,1995。

我们提出了一种用于设计随机噪声滤波器的新技术,从而产生了一类称为 Occam 滤波器的滤波器。该技术的本质是,当将有损数据压缩算法应用于允许损失集等于噪声强度的噪声信号时,损失和噪声倾向于抵消而不是相加。我们给出了该技术对单变量信号的两个说明性应用。我们还证明了奥卡姆滤波器有效性的渐近收敛界

奥卡姆在这里指的是奥卡姆的威廉,他被认为是经济法则或简约原则,现在称为稀疏条件。它促进了比数据本身更稀疏(更容易描述)的模型/分解/特征。Balas K. Natarajan 还是 1995 年有影响力的论文的作者:Sparse Approximate Solutions to Linear Systems

使用小波,尤其是非线性近似的概念,将(噪声)数据投影到向量集(基数、帧)上变得更加自然,其系数使得幅度越高最重要。具有最低幅度的系数被认为是嘈杂的。如果我们可以轻松地在低系数和高系数之间设置一个阈值,那么工作就完成了。由于数据是结构化的,噪声更随机,我们可以希望对数据的变换可以改善数据系数和噪声系数在幅度上的差距或跨度。这就是稀疏化背后的原因

更具体地说:当正弦被大量噪声(肉眼)所掩埋时,傅里叶变换可以提取频率噪声基底之上的单个峰值,因为正弦的能量只集中在一个频率上,而非相干噪声仍然分散在所有频率上。在这方面,傅里叶稀疏化了嘈杂的正弦。

由于许多有用的信号(局部平滑、颠簸或摆动)可以看作是分段规则的,因此一些小波在提供它们的稀疏或可压缩表示方面并不是那么糟糕。换句话说,一个明智的基础或框架中的几个系数可以非常接近地再现原始数据。这体现在:图像去噪和压缩的自适应小波阈值,Chang, SG 和 Yu, B. 和 Vetterli, M.,2000,IEEE 图像处理事务:

本文的第一部分通过小波软阈值提出了一种自适应的、数据驱动的图像去噪阈值。阈值是在贝叶斯框架中导出的,小波系数上使用的先验是广泛用于图像处理应用的广义高斯分布 (GGD)。所提出的阈值简单且封闭形式,并且适用于每个子带,因为它取决于参数的数据驱动估计。实验结果表明,所提出的方法,称为 BayesShrink,在假设图像已知的情况下,通常在最佳软阈值基准的 MSE 的 5% 以内。在大多数情况下,它的性能也优于 SureShrink(Donoho 和 Johnstone 1994、1995;Donoho 1995)。论文的第二部分试图进一步验证有损压缩可用于去噪的说法。BayesShrink 阈值可以帮助设计以去噪为目的的编码器的参数选择,从而实现同时去噪和压缩。具体而言,压缩量化步骤中的零区类似于阈值函数中的阈值。其余编码器设计参数的选择基于从 Rissanen 的最小描述长度 (MDL) 原则得出的标准。实验表明,这种压缩方法确实可以显着去除噪声,尤其是对于较大的噪声功率。但是,它引入了量化噪声,只有在比特率是去噪的额外考虑因素时才应使用。BayesShrink 阈值可以帮助设计以去噪为目的的编码器的参数选择,从而实现同时去噪和压缩。具体而言,压缩量化步骤中的零区类似于阈值函数中的阈值。其余编码器设计参数的选择基于从 Rissanen 的最小描述长度 (MDL) 原则得出的标准。实验表明,这种压缩方法确实可以显着去除噪声,尤其是对于较大的噪声功率。但是,它引入了量化噪声,只有在比特率是去噪的额外考虑因素时才应使用。BayesShrink 阈值可以帮助设计以去噪为目的的编码器的参数选择,从而实现同时去噪和压缩。具体而言,压缩量化步骤中的零区类似于阈值函数中的阈值。其余编码器设计参数的选择基于从 Rissanen 的最小描述长度 (MDL) 原则得出的标准。实验表明,这种压缩方法确实可以显着去除噪声,尤其是对于较大的噪声功率。但是,它引入了量化噪声,只有在比特率是去噪的额外考虑因素时才应使用。从而实现同时去噪和压缩。具体而言,压缩量化步骤中的零区类似于阈值函数中的阈值。其余编码器设计参数的选择基于从 Rissanen 的最小描述长度 (MDL) 原则得出的标准。实验表明,这种压缩方法确实可以显着去除噪声,尤其是对于较大的噪声功率。但是,它引入了量化噪声,只有在比特率是去噪的额外考虑因素时才应使用。从而实现同时去噪和压缩。具体而言,压缩量化步骤中的零区类似于阈值函数中的阈值。其余编码器设计参数的选择基于从 Rissanen 的最小描述长度 (MDL) 原则得出的标准。实验表明,这种压缩方法确实可以显着去除噪声,尤其是对于较大的噪声功率。但是,它引入了量化噪声,只有在比特率是去噪的额外考虑因素时才应使用。s 最小描述长度(MDL)原则。实验表明,这种压缩方法确实可以显着去除噪声,尤其是对于较大的噪声功率。但是,它引入了量化噪声,只有在比特率是去噪的额外考虑因素时才应使用。s 最小描述长度(MDL)原则。实验表明,这种压缩方法确实可以显着去除噪声,尤其是对于较大的噪声功率。但是,它引入了量化噪声,只有在比特率是去噪的额外考虑因素时才应使用。

保持小波基或帧的最高系数可以有效地去噪图像。我通常将数据的“集中”或“浓缩”称为值的子集。但要超越压缩,这里有一个问题。要真正压缩,我们还需要:

  • 记录保留的小波系数的 2D 空间位置,这可以使系数的存储需求增加三倍(因为您将高于阈值的值和两个坐标)(x,y)
  • 只保留与量化有关的必要位
  • 在阈值化/量化的系数和位置上使用残差冗余,这称为编码或编码。

因此,图像去噪并没有真正压缩。但是图像压缩算法(如 JPEG 2000)以数量级量化值并停止在某个适当的水平,实际上可以对包含噪声的数据(噪声图像、地震数据、根据我的经验的引擎实验)进行去噪。

所以反直觉的说法是:如果数据是结构化的并且有些嘈杂,那么仔细压缩确实可以对其进行去噪