从BM3D到深度学习:图像去噪的‘非局部’思想是如何演变的?

张开发
2026/4/18 2:51:17 15 分钟阅读

分享文章

从BM3D到深度学习:图像去噪的‘非局部’思想是如何演变的?
从BM3D到深度学习图像去噪的‘非局部’思想是如何演变的在数字图像处理领域噪声消除一直是基础而关键的挑战。无论是医学影像的清晰呈现还是卫星图像的精准分析去噪质量直接影响着后续处理的可靠性。传统算法时代BM3DBlock-Matching and 3D Filtering以其创新的非局部自相似性思想成为里程碑式的方法。而今天深度学习模型如DnCNN、U-Net等已主导了这一领域但细究其核心架构BM3D的思想精髓仍在以新的形式延续。本文将带您穿越技术演进的时空隧道揭示这一思想如何在算法迭代中不断焕发新生。1. BM3D传统去噪的巅峰之作2007年问世的BM3D算法将图像去噪性能提升到了传统方法的极限。其核心创新在于突破了局部邻域处理的局限通过非局部自相似性挖掘图像中的全局结构信息。1.1 非局部自相似性的数学表达BM3D的核心假设是自然图像中存在着大量跨区域的相似结构。这种相似性不是像素级的而是块级的。用数学语言描述对于图像中的任意参考块$P_r$存在一组相似块${P_s}$满足 $$ d(P_r, P_s) \sum_{i1}^{N} (P_r^i - P_s^i)^2 \epsilon $$ 其中$N$是块中的像素数量$\epsilon$为相似性阈值。关键突破在于相似块搜索范围可达整幅图像非局部相似性比较在变换域进行抗噪性更强3D协同处理充分利用了块间相关性1.2 两次估计的协同滤波流程BM3D的精妙之处在于其两次估计的迭代架构基础估计阶段块匹配在噪声图像中寻找相似块组3D变换对块组进行二维空间一维块间的联合变换硬阈值滤波保留显著系数抑制噪声逆变换重建初步去噪结果最终估计阶段利用基础结果重新匹配更准确的相似块采用维纳滤波替代硬阈值实现自适应收缩最终聚合得到高质量去噪图像# BM3D算法伪代码示例 def BM3D(noisy_img): # 第一次估计 basic_estimate first_step(noisy_img) # 第二次估计 final_estimate second_step(noisy_img, basic_estimate) return final_estimate def first_step(img): groups block_matching(img) filtered collaborative_filtering(groups, hard_threshold) return aggregation(filtered) def second_step(img, basic): groups improved_block_matching(img, basic) filtered collaborative_filtering(groups, wiener) return aggregation(filtered)提示BM3D的两次估计过程类似于深度学习中常见的粗糙到精细coarse-to-fine策略这种思想在后续的深度网络设计中频繁出现。2. 从传统方法到深度学习的范式转变随着GPU计算能力的提升和深度学习理论的成熟图像去噪领域在2015年后发生了根本性的范式转变。传统基于手工设计特征的方法逐渐被数据驱动的深度网络所取代。2.1 深度去噪网络的早期探索早期的深度去噪网络直接借鉴了BM3D的某些设计理念网络架构创新点BM3D对应思想DnCNN (2016)残差学习批量归一化噪声估计与图像恢复分离RED-Net (2016)编码器-解码器结构多尺度特征提取MemNet (2017)记忆模块保留长期依赖非局部相似性利用性能对比在BSD68数据集上σ25BM3D: PSNR28.56dBDnCNN: PSNR29.23dBMemNet: PSNR29.42dB2.2 非局部神经网络的兴起2018年Wang等人提出的Non-local Neural Networks将BM3D的非局部思想明确引入深度学习$$ y_i \frac{1}{C(x)}\sum_{\forall j}f(x_i,x_j)g(x_j) $$ 其中$f(x_i,x_j)$计算位置$i$与$j$的相似度$g(x_j)$是特征变换$C(x)$为归一化因子这种非局部操作与BM3D的块匹配有惊人的相似性但具有以下优势相似性计算通过端到端学习自动优化可嵌入网络的任意层次与卷积操作自然融合3. 注意力机制非局部思想的新形态近年来注意力机制已成为深度学习中的基础模块其本质是非局部思想的进一步发展和泛化。3.1 从非局部操作到自注意力自注意力机制可视为非局部操作的扩展形式$$ Attention(Q,K,V) softmax(\frac{QK^T}{\sqrt{d_k}})V $$与BM3D的对应关系$QK^T$相当于块相似性计算$softmax$实现自适应权重分配$V$对应相似块的特征表示3.2 典型注意力去噪网络剖析**SADNet (2020)**的创新架构空间注意力模块捕捉非局部依赖通道注意力模块建模特征间关系混合注意力二者结合提升表征能力# 简化版空间注意力实现 class SpatialAttention(nn.Module): def __init__(self): super().__init__() self.conv nn.Conv2d(2, 1, kernel_size7, padding3) def forward(self, x): avg_out torch.mean(x, dim1, keepdimTrue) max_out, _ torch.max(x, dim1, keepdimTrue) concat torch.cat([avg_out, max_out], dim1) sa_map torch.sigmoid(self.conv(concat)) return x * sa_map注意现代注意力机制通常结合局部和非局部操作这与BM3D中局部变换与非局部匹配的结合思路一脉相承。4. 当前前沿与未来方向图像去噪技术仍在快速发展新兴方法在继承非局部思想的同时不断突破性能边界。4.1 基于扩散模型的新型去噪扩散模型通过逐步去噪的过程实现图像恢复其迭代去噪的思想与BM3D的两次估计有异曲同工之妙前向过程逐步加噪 $q(x_t|x_{t-1})$反向过程学习去噪 $p_\theta(x_{t-1}|x_t)$优势对比方法优势局限BM3D理论明确手工参数多扩散模型生成质量高计算成本大4.2 轻量化与实时去噪尽管BM3D的计算效率曾是瓶颈但其思想在轻量化网络中仍有价值MobileDenoise结合深度可分离卷积与非局部注意力TinyNet使用神经架构搜索优化计算路径Edge-optimized专为移动设备设计的量化模型在实际项目中我们发现将非局部注意力与局部操作适当组合能在保持性能的同时显著降低计算量。例如采用稀疏注意力或窗口注意力机制可以平衡计算成本和去噪效果。

更多文章