Examining Joint Demosaicing and Denoising for Single-, Quad-, and Nona-Bayer Patterns
SaiKiran Tedla, Abhijith Punnappurath, Luxi Zhao, Michael S. Brown
eess.IV
2025-04-09
现代手机多摄像头用不同色彩滤镜排列(Single/Quad/Nona-Bayer),现有深度模型每种各训一个。本文给输入拼一个标记排列的 one-hot 三通道,单模型在 Quad/Nona 上超过专用网络、在 Single 上持平,还更小更快。
相机传感器的像素上铺着彩色滤镜阵列(CFA),传统是 Bayer 排列,去马赛克(demosaicing)就是从单通道马赛克还原完整 RGB 图。现在的智能手机常带多个不同排列的传感器:Single-Bayer(1×1)、Quad-Bayer(2×2)、Nona-Bayer(3×3)。当前最强的去马赛克是深度网络,且和去噪一起做,通用做法是每种排列各训一个模型。问题在于多个模型占内存,用户变焦切换摄像头时还得在 NPU 上预加载或现场换模型,带来延迟。作者想用一个模型同时吃下三种排列。
他们先确认 JDNDM(一个基于 RCAN 的强 Single-Bayer 模型)用打乱后的 Quad、Nona 数据训,效果比专门的 BJDD、SAGAN 还好,这说明专门网络未必必要。于是以 JDNDM 为底座试了三种统一方案:基于重排的多头(SRUM)、共享隐空间的多头(LSUM)、以及最终胜出的 ESUM(基于嵌入的统一模型)。
ESUM 的做法很直接:把输入从单通道马赛克扩成 4 通道,第一通道是原始马赛克强度,后三通道是每个像素颜色滤镜的 one-hot 编码(红、绿、蓝),这样网络就明确知道每个像素来自哪种滤镜、整体是哪种排列,再去掉 JDNDM 里的 packing 卷积。他们还提了一个 mosaic maskout 增广:训练时随机丢弃 0 到 1% 或 0 到 5% 的像素并同步更新 one-hot 掩码,既提性能又顺带做坏点(dead pixel)校正,因为传感器约有 1% 的坏点,传统上要在去马赛克前单独插值修复。为做评估,他们还自建了 Hard Demosaicing Dataset(HDD):638 张 RAW 图,17 个场景,专门拍高频细节,因为现有 Pixelshift200 只有 200 张且缺硬细节。
| 对比 | ESUM 结果 |
| 对专用 BJDD/SAGAN | Quad、Nona 上更高,Single 持平 |
| 对统一方法 KLAP | 更小、更快、PSNR 更高(约 +1.5 dB) |
| 跨数据集 Pixelshift200 | 优于 KLAP 与最佳专用模型 |
对做移动端成像和 ISP 的人来说,这是条实用的工程结论:与其为每种新传感器排列各训各的网,不如用一个轻量嵌入把排列信息喂给一个统一网络,省内存、省切换开销、还更强。坏点校正顺带白送也是实打实的好处。这也是「简单嵌入能替代专门多头结构」的一个干净案例。
这是一个相当专门的任务,受众主要是计算摄影和手机 ISP 工程师,离通用 AI 较远。统一模型仍建立在 JDNDM 这种特定骨干上,是否对其他骨干同样有效没验证。坏点比例、噪声模型都基于特定传感器标定,跨设备的鲁棒性没有充分讨论。结论主要在自建 HDD 和 Pixelshift200 上,真实手机出图的端到端效果需要进一步验证。