Stokes-Informed Diffusion for Robust Linear Polarization Estimation¶
会议: ECCV2026
论文: ECCV 原文
领域: 图像恢复 / 偏振成像
关键词: 线偏振估计、Stokes 参数、可观测性感知监督、分布匹配蒸馏、低秩适配
一句话总结¶
GenPolar 把单张 RGB 到偏振的病态逆问题改写为逐通道 Stokes 分量预测,在可靠区域监督偏振角,并通过单步蒸馏支持 VAE 编码器适配,在三类测试集上同时改善偏振强度与角度估计。
研究背景与动机¶
偏振记录了普通颜色图像不直接显露的材质和几何信息,可以帮助区分金属与介电材料、分离玻璃反射。 但真实采集通常依赖旋转线偏振片或焦平面分割式偏振相机:前者需要多次曝光,后者需要特殊传感器及去马赛克处理。 因此,本文希望从与总强度成比例的 RGB 图像中估计这些线索,而不是要求部署端额外采集多个偏振方向。 困难在于,强度并不能唯一确定偏振状态;相同外观可能对应不同材料、法线、光照和传播路径。 扩散模型提供的是从数据中学到的先验,不能把缺失观测变成唯一可解的物理测量。
尤其需要区别偏振强度与偏振方向:线偏振度 DoLP 很小时,偏振角 AoP 几乎不可观测。 这时强制拟合每个像素的角度,会把测量噪声也当作监督信号,即使用正弦和余弦绕开角度周期,也不能消除弱信号的不稳定性。 另一方面,RGB 三个波段的偏振强度可能不同,把它们压成灰度会丢掉有意义的光谱差异。 直接换成 Stokes 表示仍不够,因为自然图像预训练 VAE 对偏振场存在编码再解码偏差,误差会继续传入 DoLP 和 AoP。 这些问题分别发生在输出表示、监督可靠性和潜空间,而非只靠换一个更大的生成模型就能解决。
本文用 Mueller 传输解释为什么强度与线偏振分量可以存在场景相关的映射,但不宣称从 RGB 可以恢复完整 Mueller 矩阵。 它先学习有物理监督的多步条件扩散,再把生成路径蒸馏为一步,以便稳定调整偏振目标的编码表示。 核心 idea:预测保留颜色通道的 Stokes 分量,只在可观测区域约束偏振角,再用单步蒸馏与编码器适配共同减少潜空间误差。
方法详解¶
整体框架¶
训练输入是一对 RGB 强度条件与偏振真值,真值来自实际偏振测量,而不是由 RGB 自行构造标签。 模型输出 RGB 各通道的两个线偏振分量,再结合输入强度解析计算 DoLP 和 AoP。 四个设计依次是逐通道 Stokes 表示、可观测性感知监督、单步分布匹配蒸馏、编码器低秩适配;最后两个在第二阶段联合优化。 第一阶段固定 VAE、训练扩散 UNet 与 ControlNet,第二阶段保留冻结教师和解码器,训练单步生成器与编码器 LoRA。 部署时只需要 RGB 条件和高斯噪声,不需要偏振真值、可观测性掩码或编码真值的分支。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
Input["训练配对数据"] --> Stokes["逐通道 Stokes 表示"]
Stokes --> Physics["可观测性感知监督"]
Physics -->|第一阶段教师| Distill["单步分布匹配蒸馏"]
Distill --> Adapt["编码器低秩适配"]
Adapt -. 第二阶段联合优化 .-> Distill
Adapt -. 训练后生成器 .-> Infer["单步生成器与固定解码器"]
RGB["推理:RGB 与高斯噪声"] --> Infer
Infer --> Output["Stokes 分量与 DoLP/AoP"]
关键设计¶
1. 逐通道 Stokes 表示:把强度和方向放回同一个物理表示
Stokes 向量的总强度是 \(S_0\),\(S_1\) 和 \(S_2\) 分别描述两个线偏振基底上的差异,本文忽略圆偏振分量 \(S_3\)。 训练时,四个分析器方向的观测提供线偏振真值,其中 \(S_1=I_{0^\circ}-I_{90^\circ}\)、\(S_2=I_{45^\circ}-I_{135^\circ}\)。 在非偏振入射光近似下,Mueller 矩阵第一列决定输出强度和线偏振;局部材料、几何与照明决定相应的传输系数比。 因此,网络学习的是随空间变化的强度到线偏振映射,而不是全图共享的常数比例,也不是显式求解全部光学参数。 这个物理解释说明参数化具有合理性,却不能保证单幅强度图足以识别真实偏振状态。
对每个颜色通道 \(\lambda\in\{R,G,B\}\),输出分量转换为标准偏振线索:
这对应原文式 (2),保留通道意味着模型可以表达随波长变化的偏振强度,而不强迫三个颜色共享一个灰度偏振场。 原文以跨通道 AoP 一致性作为可靠性的实用代理,但这不是说所有场景下三个通道的角度必须完全相同。 实现上,三通道 \(S_1\) 与三通道 \(S_2\) 分别通过同一个 VAE 编码器,各自得到 4 通道潜变量,再拼成 8 通道。 空间分辨率降为输入的 \(1/8\),UNet 随之适配为处理这个联合潜变量,ControlNet 注入 RGB 结构条件。 解码时把两部分重新拆开,使用同一个固定解码器还原两个三通道分量,避免把六通道目标直接塞进原有 RGB VAE。
2. 可观测性感知监督:不把弱偏振角度当作可靠标签
角度来自两个 Stokes 分量的方向;当二者的幅度接近零时,微小扰动就足以造成很大的角度变化。 本文因此对所有像素监督 Stokes 分量,却只对真值 DoLP 超过阈值的区域增加角度约束。 掩码由真值生成非常关键:训练网络不能通过降低自己的预测 DoLP,把困难像素移出角度损失。 角距离采用 \(\pi\) 周期,意味着物理上等价的方向不会被误判为相差一个完整直角范围之外的普通数值误差。 为避免误解,周期处理与可靠性筛选承担不同职责,前者处理方向的等价性,后者处理信号是否足够强。
原文的监督结构可以保留为:
这里 \(\mathcal{L}_{s}\) 是全图 Stokes 误差,\(\mathcal{L}_{\mathrm{AoP}}\) 是掩码内的周期角误差,\(\mathcal{L}_{\mathrm{diff}}\) 监督干净潜变量预测。 缓存中的式 (8)、(9) 局部字符损坏,因此这里不猜补其精确范数或归一化细节,仅保留正文明确说明的结构。 低 DoLP 区域并非完全不训练,而是仍有 Stokes 和潜变量监督,不再追逐不可靠的角度标签。 图 7 的训练阈值分析支持 \(\tau_{\mathrm{train}}=0.05\);测试也采用固定真值阈值,而非按照每个方法的输出挑选像素。 这种设计改善的是可靠区域角度估计与整体输出一致性,不能解读为已经恢复所有弱偏振区域的真实方向。
3. 单步分布匹配蒸馏:缩短生成路径,也缩短适配的反向传播路径
第一阶段从 SD1.5 初始化,固定 VAE 编码器与解码器,对真值潜变量加噪,学习在 RGB 条件下预测干净潜变量。 它使用的是干净潜变量预测,而非把论文的训练目标笼统改写为噪声预测。 预测潜变量经固定解码器还原后再计算物理损失,使训练同时看到潜空间误差和实际偏振误差。 多步模型提供生成先验,但若编码器也在这一过程中不断变化,长去噪路径会让端到端适配昂贵且不稳定。 作者用第二阶段把教师能力迁移到单步生成器,因而一步生成不是单纯为了加速而附加的压缩技巧。
分布匹配蒸馏 DMD 固定第一阶段教师,并在线训练一个辅助模型来估计当前生成分布的分数。 对生成结果重新加噪后,教师分数与生成分布分数之间的差异提供分布级更新方向,而非只要求逐像素模仿某张教师输出。 辅助分数模型只服务于训练,不能把它误画成部署时必经的第二个生成网络。 第二阶段仍对解码结果使用物理损失,其中 Stokes 监督也承担蒸馏中的回归约束。 这解释了为什么用同一个 UNet 直接做单次端到端回归,不等同于先训练扩散教师再蒸馏。
4. 编码器低秩适配:改变偏振目标的潜空间入口,保持解码坐标稳定
自然图像预训练 VAE 对偏振场的编码再解码会产生结构性误差,图 5 用误差图展示了这种领域错配。 本文在第二阶段向 VAE 编码器插入 LoRA,固定解码器,从而寻找更适合偏振目标、但仍能被现有解码器解释的潜表示。 这不是给解码器加一个自由度很大的图像修补模块,也不是只微调 ControlNet 的同义说法。 生成器和 LoRA 联合训练,物理损失作用于二者,编码器后验还通过 KL 项约束到标准高斯先验。 该 KL 正则防止适配后的潜变量分布任意漂移,使目标重建与原有潜空间结构保持联系。
把 LoRA 提前用于独立重建预训练,或者直接放入第一阶段,都没有获得完整方法的效果。 因此,本文支持的结论是适配时机和生成训练方式需要配合,而不是 LoRA 在任何偏振网络中都天然有效。 推理不需要把未知的真实 \(S_1,S_2\) 输入编码器;生成器从高斯噪声和 RGB 条件直接得到潜变量,再用固定解码器产生偏振分量。 编码器适配改变了训练期间的目标潜表示和学习路径,最终收益由已训练生成器承接。 这一区别避免了把图中的训练目标编码分支误读成测试时需要偏振相机。
一个完整示例¶
考虑一张同时包含强反射边缘和低偏振漫反射区域的 RGB 图像,以下仅用于解释流程,不是新增实验。 训练阶段,配对偏振测量提供三通道 Stokes 真值,两个三通道分量被编码并合并为 8 通道目标潜变量。 如果某个像素的真值 DoLP 为 0.02,而另一个为 0.20,在阈值 0.05 下只有后者参与角度损失,两者都参与 Stokes 监督。 第一阶段学习如何利用 RGB 结构从有噪潜变量恢复目标,第二阶段用教师分数、物理损失及编码器适配训练一步生成。 部署时输入同类 RGB 图像和噪声,一次生成后拆分解码,最后用输入强度计算 DoLP 与 AoP。 低偏振像素仍会输出角度,但笔记中的示例和论文的掩码机制都不赋予该角度额外的可靠性保证。
损失函数 / 训练策略¶
第一阶段训练 100 个 epoch,学习率为 \(4\times10^{-5}\);第二阶段训练 30 个 epoch,学习率为 \(10^{-5}\)。 优化器为 AdamW,betas 为 (0.9, 0.999),权重衰减为 \(10^{-3}\),两项物理监督权重均设为 0.5。 LoRA rank 为 4,patch size 为 512,batch size 为 1,训练使用 4 张 A40 GPU。 \(S_1,S_2\) 直接使用 \([-1,1]\) 范围,\(S_0\in[0,2]\) 缩放至 \([-1,1]\) 作为条件输入。 第一阶段推理采用 20 步,最终生成器采用一步;这只是步骤数比较,不等价于已报告 20 倍墙钟加速。 原文正文将第二阶段时间步描述为固定的最大噪声时间步,但算法 1 第 17 行写作采样 \(t^*\),实现细节需要原始代码澄清。
实验关键数据¶
主实验¶
表 1,原文第 12 页;DoLP 报告 PSNR(dB)与 SSIM,AoP 报告 MeanAE(度),三个颜色通道分别计算后平均。 AoP 只在真值 DoLP 大于 0.05 的共享掩码上评价,作者称该设置保留约 70% 像素,不能与全图角误差直接比较。 RLP 共 598 个样本,其中 363 个来自既有数据、235 个由作者采集;DoFP 共 2188 个,RSP 共 2000 个。 每组独立随机留出 50 个测试样本,其余组成联合训练集,所有基线均在同一训练集重训。 这属于不同采集模态测试组上的评价,并不是训练完全不见某种模态的留一域泛化实验。
| 测试组 | 方法 | DoLP PSNR ↑ | DoLP SSIM ↑ | AoP MeanAE ↓ |
|---|---|---|---|---|
| RLP | Restormer | 20.64 | 0.540 | 35.35 |
| RLP | MAE | 26.98 | 0.638 | 28.23 |
| RLP | PolarAnything | 19.77 | 0.563 | 33.56 |
| RLP | GenPolar | 29.54 | 0.741 | 20.15 |
| DoFP | Restormer | 16.82 | 0.532 | 32.72 |
| DoFP | MAE | 21.40 | 0.598 | 29.82 |
| DoFP | PolarAnything | 17.85 | 0.572 | 29.33 |
| DoFP | GenPolar | 24.01 | 0.666 | 18.77 |
| RSP | Restormer | 15.15 | 0.588 | 35.17 |
| RSP | MAE | 16.67 | 0.616 | 33.51 |
| RSP | PolarAnything | 15.47 | 0.604 | 30.45 |
| RSP | GenPolar | 21.29 | 0.676 | 27.60 |
消融实验¶
表 2,原文第 13 页;全部采用 RLP 测试集,指标定义和评价掩码与主实验相同。 直接回归一行在实现上预测 DoLP 与双角正余弦,而非未经周期处理的裸 AoP 数值。
| 配置 | DoLP PSNR ↑ | DoLP SSIM ↑ | AoP MeanAE ↓ |
|---|---|---|---|
| 仅第一阶段 | 28.84 | 0.684 | 22.61 |
| 预先 LoRA 适配 | 27.92 | 0.674 | 23.49 |
| 第一阶段加入 LoRA | 19.78 | 0.460 | 50.03 |
| 单步但无 LoRA | 28.49 | 0.681 | 23.12 |
| 端到端回归 + 物理损失 | 24.15 | 0.553 | 30.73 |
| 无角度损失 | 27.21 | 0.668 | 23.96 |
| 训练阈值为 0 | 29.47 | 0.724 | 21.89 |
| 灰度 Stokes | 27.43 | 0.621 | 23.56 |
| 直接 DoLP/AoP 回归 | 22.84 | 0.502 | 35.40 |
| 完整模型 | 29.54 | 0.741 | 20.15 |
关键发现¶
- RLP 上相对 MAE,DoLP PSNR 从 26.98 提高至 29.54 dB,增益 2.56 dB;AoP MeanAE 从 28.23 降至 20.15 度。
- 单步但无 LoRA 的角误差是 23.12 度,完整模型为 20.15 度;第一阶段直接加入 LoRA 则恶化到 50.03 度,支持联合训练时机的重要性。
- 原文第 14 页表 3 固定 SfPUEL,仅替换偏振输入:GenPolar 材料检测准确率 90.12%,MAE 为 82.75%,真实采集输入为 93.75%。
- 同页表 4 固定 PolarFree:GenPolar 去反射结果为 22.41 dB / 0.127 LPIPS,真实采集为 22.44 dB / 0.133;仅 LPIPS 更好,不能说全部超过实测输入。
- 数值冲突:第 2 页图 1 的直接回归角误差标为 31.40 度,第 13 页表 2 为 35.40 度;这里保留表 2 数值,不推测差异原因。
亮点与洞察¶
- 监督可靠性与变量表示共同设计:Stokes 保留幅度和方向耦合,角度掩码再避免把弱信号噪声当作精确信息。单独把角度换成正余弦并不能替代这两步。
- 单步蒸馏的收益不止推理步数:它还让目标编码器具备更短的端到端优化路径。消融说明更快的生成和更准确的潜表示可以相互促进,但不能据此宣称必然的加速比例。
- 下游固定模型的输入替换实验比单看偏振伪彩图更有说服力。它检验估计线索能否被既有任务网络使用,同时也保留了与真实采集输入的差距。
局限与展望¶
- 作者明确只估计线偏振,不恢复 \(S_3\);偏振照明、天光、透明或多次散射路径可能削弱所用物理近似。
- RGB 到偏振仍是非唯一逆问题。读者应将输出视为受物理监督约束的估计,而不是无需偏振相机即可获得等价测量。
- AoP 指标屏蔽弱偏振像素,论文也承认 DoLP 低估会连带损害方向可观测性;后续可以联合报告角度误差、覆盖率与预测不确定性,此为读者建议。
- 三组各 50 个测试样本且训练使用各组其余样本,不能据此认定对新传感器、全新场景分布都稳健;还需要独立跨设备划分。
- 当前缓存包含主文与参考文献,不含补充材料失败案例,也未解析出代码链接;部分损失公式及时间步表述存在上述不确定性,不能声称实现已复核。
相关工作与启发¶
- RGB-to-Polarization Estimation(原文参考文献 19):提供任务与基线背景。GenPolar 同样使用强度条件,但把可靠性筛选和潜空间适配纳入训练机制。
- PolarAnything(参考文献 40):直接生成灰度偏振线索,而本文保留 RGB Stokes 分量。统一输出为 DoLP/AoP 后评价仍不消除表示容量的差别,应连同灰度消融一起理解。
- DMD(参考文献 38)与 LoRA(参考文献 7):都是借用的成熟组件,本文的贡献在于把分布蒸馏与偏振域编码适配结合,而不是提出新的蒸馏算法。
- 可迁移启发:对弱信号下不稳定的方向变量,可以先学习携带幅度的表示,再按可观测性选择方向监督。迁移前必须用目标任务的噪声模型验证可靠性判据,不能直接照搬 DoLP 阈值。
评分¶
- 新颖性: 4/5,物理表示、角度可靠性和编码器适配形成了针对性组合,主要组件并非全新。
- 实验充分度: 4/5,覆盖三种数据组、关键消融和两个固定下游任务,但独立跨域及不确定性评价仍不足。
- 写作质量: 3/5,机制主线明确,但直接回归数字冲突和第二阶段时间步描述需要澄清,缓存公式损坏进一步限制复核。
- 价值: 4/5,说明无额外偏振硬件的估计可以改善实际任务,但不能替代物理测量的准确性保证。