news 2026/9/2 17:14:30

(论文速读)Neighbor2Neighbor:从单张噪声图像中构造“邻居监督”

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
(论文速读)Neighbor2Neighbor:从单张噪声图像中构造“邻居监督”

论文题目:Neighbor2Neighbor: Self-Supervised Denoising from Single Noisy Images
中文翻译:Neighbor2Neighbor:从单张噪声图像进行自监督去噪
会议:CVPR 2021

摘要:近年来,图像去噪从神经网络的快速发展中受益良多。然而,大量噪声—干净图像对的监督需求限制了这些模型的广泛应用。尽管已有一些工作尝试仅使用单张噪声图像训练去噪模型,现有自监督去噪方法仍存在网络训练效率低、有效信息损失或依赖噪声建模等问题。本文提出一种非常简单而有效的方法 Neighbor2Neighbor,仅使用噪声图像即可训练有效的图像去噪模型。首先,作者提出随机邻居子采样器来生成训练图像对:网络的输入与目标均从同一张噪声图像中采样得到,并要求成对像素在原图中互为邻居,因此具有非常相似的外观。其次,利用第一阶段生成的子采样训练对训练去噪网络,并额外加入一个正则项以获得更好的性能。Neighbor2Neighbor 可以直接利用现有监督去噪网络在架构设计上的进展,同时避免对噪声分布假设的强依赖。作者从理论角度解释了该方法,并在 sRGB 空间不同合成噪声以及 raw-RGB 空间真实噪声数据上进行了广泛验证。

源码:GitHub - TaoHuang2018/Neighbor2Neighbor: Neighbor2Neighbor: Self-Supervised Denoising from Single Noisy Images · GitHub


一、研究背景:没有干净图像,甚至没有第二张噪声图,怎么训练?

监督式去噪通常需要成对数据:输入是噪声图像,目标是对应的干净图像。但真实摄影中获得大量严格对齐的 noisy-clean pair 很困难,而且用合成噪声训练出的模型还可能因为合成噪声与真实噪声存在 domain gap 而明显退化。

Noise2Noise 已经证明:如果同一场景能够获得两次独立噪声观测,那么可以直接用 noisy → noisy 训练。但它仍要求两张具有相同真实内容的图像。Noise2Void、Noise2Self 等进一步走向 single noisy image,通过 blind-spot 思想阻止网络直接看到当前像素,从而避免学成恒等映射。问题是,blind-spot 往往需要特殊结构或掩码机制,会牺牲中心像素信息,也可能带来计算负担;一些后续方法则依赖显式 Gaussian、Poisson 等噪声模型,在真实噪声分布未知时并不稳健。

Neighbor2Neighbor 的出发点很直接:既然拿不到第二张噪声图,能不能从同一张噪声图里“造”出一对足够像 Noise2Noise 的训练样本?

作者的答案是:可以,不去遮中心像素,而是利用相邻像素通常具有相近真实信号,但随机噪声彼此独立这一性质,在局部邻域内随机抽取两个位置,分别组成输入图和目标图。

论文 Figure 1:Neighbor2Neighbor 的整体训练与推理框架

Figure 1 最值得看的是训练和推理的差别。训练时,一张噪声图像 (y) 先经过 Neighbor Sub-Sampler 得到 () 和 (),前者送入普通去噪网络,后者作为 noisy target;除此之外,作者还用完整图像 (y) 的网络输出构造正则项。推理时则非常简单:不再做子采样,直接把完整噪声图输入训练好的网络得到去噪结果。

这也是它区别于 N2V/N2S 的一个重要点:Neighbor2Neighbor 不要求修改网络本身,任何表现良好的监督去噪网络原则上都可以放进这个训练框架。

二、核心思路:把一张噪声图拆成两张“近似 Noise2Noise”图像

2.1 从 Noise2Noise 推一步

设真实图像为 (x),两次独立噪声观测为 (y) 和 (z)。Noise2Noise 优化:

当 (y) 和 (z) 对应同一个真实 (x),并且噪声满足无偏等条件时,这个目标与使用 clean target 的监督训练具有相同最优解。

但 Neighbor2Neighbor 没有第二次观测,于是作者提出:从同一张 (y) 中用两个采样器 () 得到

然后尝试训练:

直觉上,() 和 () 中对应位置来自原图中的两个邻居。两个位置的真实内容通常接近,而噪声又可以视为独立,因此它们像是一对“近似相同内容、不同噪声”的 Noise2Noise 样本。

2.2 Random Neighbor Sub-Sampler 到底怎么采?

论文 Figure 2:Random Neighbor Sub-Sampler 生成训练图像对

论文默认令 (k=2),把原图划分成大量 2 × 2 小块。对于每个 2 × 2 cell,随机选择两个相邻位置,一个放进 (),另一个放进 ()。遍历所有 cell 后,就得到两张尺寸约为原图一半的子采样图。

例如一个 2 × 2 区域为:

10 12 11 9

可以随机选择 10 放入 (),11 放入 ()。下一个 cell 又重新随机选择。最终两张子图的同位置像素虽然不是同一个像素,却来自原图的邻近位置。

这里利用的不是“邻居是干净的”,而是两个条件:第一,相邻位置的真实信号通常接近;第二,在给定真实图像后,不同位置的噪声近似独立。因此两张子图具有相似内容,却携带不同噪声。

随机性也很重要。如果永远固定选择 2 × 2 中相同的两个位置,网络看到的数据组合会更单一;随机采样相当于不断生成新的 noisy-noisy training pairs。

三、关键难点:两个邻居毕竟不是同一个真实像素

Neighbor2Neighbor 如果只有上面的想法,其实还不够。

Noise2Noise 的两张图理想情况下具有完全相同的 ground truth;但 Neighbor2Neighbor 选择的是两个邻居像素。例如真实图像局部可能是:

10 11 10 12

即使没有任何噪声,相邻像素本身也不同。因此 () 与 () 存在真实信号差异。论文将这个差异记为 ()。作者在 Theorem 1 中说明:当 () 时,直接最小化 noisy pair 之间的 MSE 不再严格等价于监督训练;只有当这个差异足够小时,它才是一个合理近似。

直接训练会带来什么?过度平滑。

因为网络可能把邻居之间原本真实存在的细节差异也当成噪声消掉。于是论文真正关键的第二步不是 sub-sampling,而是为这个 ground-truth gap 加一个 correction。

四、Regularized Loss:为什么不能只做 Neighbor2Neighbor 重建?

作者最终的损失由两部分组成:

其中重建项为

它就是 Neighbor2Neighbor 版本的 Noise2Noise:用第一张子采样噪声图预测第二张。

正则项则为

直观理解比公式重要。(是网络对完整噪声图的当前去噪结果,可以把它视为对真实图像结构的估计。再对这个结果使用相同的 (),两张子图之间的差值

就在估计“两个邻居本来应该存在多少真实结构差异”。

因此正则项实际上在告诉模型:

不要把邻居之间所有不同都当成噪声。真正属于图像结构的局部差异,需要保留下来。

论文 Figure 1:重点观察 () 与 () 两条训练路径

Figure 1 中左侧路径负责 noisy-to-noisy reconstruction,右侧路径则利用完整图像的去噪结果估计邻居之间的结构差异。论文还对 () 和 () 停止梯度,并在训练过程中逐渐增大 (),以提高训练稳定性。

所以可以把整个方法压缩成:

单张 noisy image → 随机邻居拆成 noisy pair → 像 N2N 一样训练 → 用 regularizer 补偿邻居真实信号并不完全相同的问题。

五、实验结果:不用 clean target,也不用 blind-spot,效果如何?

论文在合成 sRGB 和真实 raw-RGB 两类场景上测试。合成实验包括固定/变化强度的 Gaussian 和 Poisson noise,测试集使用 Kodak、BSD300、Set14;真实噪声实验使用 SIDD。

论文 Table 1:Gaussian / Poisson 合成噪声下的 PSNR、SSIM 对比

Table 1 中,Neighbor2Neighbor 在不使用 clean image 的方法里表现很强。例如 Gaussian () 的 Kodak 上达到 32.08 dB,而 N2V 为 30.32 dB;Poisson () 时达到 31.44 dB,而 N2V 为 28.90 dB。它也明显优于 DIP、Self2Self、Noisier2Noise、Laine19-mu 和 DBSN,并接近需要显式噪声建模和 posterior mean estimation 的 Laine19-pme。

论文 Figure 3–4:Gaussian () 与 Poisson () 的可视化比较

两张图主要验证定量结果是否转化为视觉质量。Neighbor2Neighbor 在边缘、纹理和细节保留上具有竞争力,并没有因为使用邻居作为 target 就必然得到严重模糊的结果。

真实噪声更能体现这篇论文的价值。

论文 Table 2:SIDD Benchmark / Validation 上的真实 raw-RGB 去噪结果

使用相同 U-Net 时,Neighbor2Neighbor 在 SIDD Benchmark 上达到 50.47 dB / 0.990,明显高于 N2V 的 48.01 dB / 0.983,也优于 DBSN、BM3D 和 Laine19。更有意思的是,将 backbone 从 U-Net 换成更强的 RRGs 后,结果进一步提升到 50.76 dB / 0.991,甚至略高于表中的监督 N2C 基线 50.60 dB / 0.991。这里最重要的不是“超过监督”这一单个数字,而是说明Neighbor2Neighbor 与网络架构解耦,可以直接继承更强监督去噪网络的架构进步。

论文 Figure 5:SIDD Benchmark 上的真实噪声可视化结果

Figure 5 展示了真实手机噪声下的视觉比较,与 Table 2 一起说明方法并不依赖预先指定 Gaussian 或 Poisson 模型。论文还指出,在真实数据上,带显式概率后处理的方法反而可能下降,因为真实摄影噪声难以被简单分布准确描述。

5.1 Regularizer 是否真的必要?

论文 Table 3:不同 () 的正则项消融
论文 Figure 6:不同 () 下平滑程度与残余噪声的变化

这组实验非常关键。Gaussian (=25) 的 Kodak 上,(=0) 时只有 31.77 dB,(=2) 提升到 32.08 dB。Figure 6 更直观:没有正则项时结果偏平滑;随着 () 增大,细节逐渐变锐;但 () 太大又会留下更多噪声。

因此 () 实际上控制的是一个 trade-off:

() 太小 → 把真实邻居差异也抹掉,过平滑;() 太大 → 过度强调差异,残留噪声。

论文最终在合成实验取 (=2),真实实验取 (=1)。

5.2 为什么必须随机采样?

论文 Table 4:Fix-location 与 Random Neighbor Sampling 的消融

Table 4 比较固定位置采样与随机邻居采样。在 Kodak 的四种噪声设置以及 SIDD Validation 上,Random 都获得更好的结果,例如 SIDD Validation 从 50.92 dB 提升到 51.06 dB。提升幅度不算巨大,但趋势一致,说明随机性能够增加训练 pair 的多样性,是该 sampling strategy 的有效组成部分。

六、总结与思考

如果把 Neighbor2Neighbor 压缩成一句话:

它把“只有一张 noisy image”的问题,转换成了“从一张图中随机抽取相邻像素,人工构造近似 Noise2Noise 的 noisy-noisy pair”。

与 Noise2Void / Noise2Self 相比,它们都利用了“真实信号具有局部相关性,而随机噪声在不同像素间近似独立”这一核心统计性质,但实现路径不同。N2V/N2S 的思路是遮住当前像素,用其他位置预测它;Neighbor2Neighbor 则更像是从邻域中抽两个位置,让一个 noisy neighbor 去监督另一个 noisy neighbor。因此它不需要 blind-spot architecture,也不需要在推理时隐藏中心像素。

这篇论文真正巧妙的地方还在于作者意识到:“邻居相似”并不等于“邻居真实值相同”。如果直接模仿 Noise2Noise,ground-truth gap 会导致过平滑,所以又引入 regularization 去补偿这部分结构差异。Random Neighbor Sub-Sampler 解决“训练对从哪里来”,Regularizer 解决“这对训练样本为什么并不完全等价于 Noise2Noise”,两部分缺一不可。

它的边界也很明确:方法仍然依赖不同位置噪声近似独立,以及邻居真实信号足够相似。论文在结尾把 spatially-correlated noise 和 extremely dark images 作为未来方向,这意味着当噪声本身具有明显空间相关性,或者极暗场景下邻域信号质量过低时,当前假设仍可能受到挑战。

从方法演化来看,可以把几条路线理解为:

Noise2Noise:第二张独立 noisy image 提供监督 → Noise2Void / Noise2Self:遮掉自己,由上下文监督自己 → Neighbor2Neighbor:没有第二张图,就从同一张图的邻居中构造一对近似独立的 noisy observations。

它最值得记住的并不是复杂网络,而是一个很简单的数据构造思想:监督不一定来自额外标注,也可以从数据内部的局部统计关系中“造出来”。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 17:12:22

ESP32-S3与LVGL图形库实战:打造可动态编程的3.2寸透明桌面摆件

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 17:12:08

基于YOLOv8+PySide6的骨科骨折检测系统设计与实现

这次我们来看一个医学影像深度学习实战项目:基于 YOLOv8 / YOLOv5 PySide6 的骨科骨折诊断检测系统。它解决的问题很明确,就是把目标检测模型和桌面 GUI 串起来,让医生或研究人员能通过鼠标点击完成骨折区域的自动定位、置信度筛选和批量影像…

作者头像 李华
网站建设 2026/9/2 17:10:55

三角洲行动摩斯密码门破解:四步听译法与实战技巧

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 17:09:54

安川伺服Σ-7系列深度解析:从硬件原理到参数调优的工程实践指南

简介:本资源是面向工业自动化工程师、伺服系统开发者及高校机电专业师生的安川伺服7系深度技术资料包,聚焦于驱动器原理理解、软硬件协同开发与现场故障排查等核心问题。压缩包共含文档、源代码与原理图三类关键内容,总大小372.34MB&#xff…

作者头像 李华
网站建设 2026/9/2 17:07:58

文章目录 ———— 秋招、实习小知识点复习(C/C++/Linux)

秋招、实习小知识点复习(C/C/Linux)博客文章发布目录 五个知识分区已分别整合为完整文章;仅对篇幅特别大的分区进行少量拆分。 总目录 第一部分:C语言基础 第一部分:C语言基础(1/4)&#xff1a…

作者头像 李华
网站建设 2026/9/2 17:05:39

零基础打造专业级车模视频:GarageBand配乐与iMovie剪辑全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华