DA-Flow:基于扩散模型的退化感知光流估计 DA-Flow: Degradation-Aware Optical Flow Estimation with Diffusion Models
利用图像复原扩散模型的退化感知特征实现退化视频的光流估计
前置知识
光流估计(Optical Flow Estimation)
光流估计是计算机视觉中的基础任务,目标是计算连续视频帧之间每个像素的运动向量场 $\mathbf{f} \in \mathbb{R}^{H \times W \times 2}$,其中每个像素的运动用二维位移向量表示。现代光流方法通常遵循三阶段流程:特征编码器 $\mathcal{E}$ 提取帧特征,相关算子 $\mathcal{C}$ 构建代价体(cost volume),迭代更新算子 $\mathcal{U}$ 通过循环单元反复查询代价体来精化光流估计。RAFT 是这一范式的代表性工作,通过全对相关和迭代精化取得了优异性能。
理解光流估计的基本流程是理解 DA-Flow 如何在特征编码阶段引入退化感知能力的前提
扩散模型(Diffusion Models)
扩散模型是一类基于迭代去噪的生成模型。在图像复原任务中,给定低质量图像 $\mathbf{I}_{\text{LQ}}$ 作为条件,扩散模型从纯噪声出发,通过学习的速度场逐步去噪,最终生成高质量图像。基于 DiT(Diffusion Transformer)的复原模型如 DiT4SR 使用 MM-DiT 架构,将潜变量 token、条件 token 和文本 token 通过多模态注意力机制联合处理。扩散过程的中间表征已被证明编码了丰富的结构和语义信息。
论文的核心发现是图像复原扩散模型的中间特征天然具有退化感知能力,这是 DA-Flow 的理论基础
MM-DiT(Multi-Modal Diffusion Transformer)
MM-DiT 是 Stable Diffusion 3 引入的多模态扩散 Transformer 架构。每个层内,三种模态(HQ 潜变量、LQ 条件、文本)分别通过模态特定的投影生成 Query、Key、Value,然后沿 token 维度拼接进行联合注意力计算。对于每帧独立处理时,注意力计算在每帧内部独立进行,无法捕捉跨帧对应关系。DA-Flow 通过将时间维度从 batch 轴解压到 token 轴,实现全时空注意力。
MM-DiT 是 DA-Flow 所依赖的 backbone 架构,理解其注意力机制是理解 lifting 技术的关键
代价体(Cost Volume)
代价体是光流估计中的核心数据结构,通过计算两帧特征图之间的逐像素相似度构建。对于帧 $k$ 的每个位置 $(i,j)$,代价体 $\mathbf{C}(i,j) = \tilde{\mathbf{Q}}^k_{\text{HQ}}(i) \cdot \tilde{\mathbf{K}}^{k+1}_{\text{HQ}}(j)$ 记录了与帧 $k+1$ 所有位置的相似度。通过 softargmax 操作可以从代价体中提取光流场。代价体的质量直接取决于输入特征的表示能力。
DA-Flow 的混合特征编码策略直接影响代价体质量,是理解方法有效性的关键
图像复原(Image Restoration)
图像复原是从退化观测中恢复干净图像的任务,是一个高度不适定的逆问题。真实视频中的退化包括运动模糊、传感器噪声、压缩伪影和低分辨率等。Real-ESRGAN 等方法使用合成退化管线生成训练数据对。图像复原模型必须学习从退化输入中恢复干净结构,因此其特征天然编码退化模式。
论文选择图像复原扩散模型而非视频复原模型作为 backbone,正是因为其保留了逐帧空间结构
DPT(Dense Prediction Transformer)
DPT 是一种多尺度特征融合架构,最初用于单目深度估计。它从 Transformer 的不同层提取特征,构建特征金字塔,通过逐级上采样和融合生成高分辨率的稠密预测。在 DA-Flow 中,DPT 用于将粗粒度的扩散特征(1/16 分辨率)上采样到与 CNN 特征兼容的分辨率(1/8 分辨率),分别使用 Query 头、Key 头和 Context 头处理不同类型的特征。
DPT 上采样是 DA-Flow 处理扩散特征与 CNN 特征分辨率差异的关键组件
研究动机
光流估计模型在高质量合成数据上训练后,在面对真实世界的退化(如运动模糊、传感器噪声、压缩伪影、低分辨率)时性能会严重下降。RobustSpring 基准测试首次系统研究了稠密匹配模型的鲁棒性问题,发现从干净合成训练数据泛化到广泛的真实世界退化时,现有光流方法会产生大量错误。具体而言,在退化输入下,RAFT 的 EPE 在 Sintel 上达到 10.693,SEA-RAFT 为 10.185,FlowSeek 为 10.241,而 DA-Flow 仅为 6.912。现有方法的失败模式集中在运动边界和细粒度结构周围产生噪声和不一致的光流场,这对于原本设计用于干净输入的方法来说是预期的失败模式。
本文的目标是本文提出了一个全新的任务——退化感知光流估计(Degradation-Aware Optical Flow),目标是从严重退化的视频中准确估计稠密对应关系。与传统的鲁棒性研究不同,本文不是研究现有方法在退化数据上的泛化能力,而是直接针对退化输入设计新的特征表示,使得光流估计能够在视觉证据严重不足的情况下仍然准确。具体目标是构建一个退化感知的光流模型 $\mathcal{M}$,使其能够从低质量输入 $\mathbf{I}_{\text{LQ}}^k, \mathbf{I}_{\text{LQ}}^{k+1}$ 准确估计光流 $\hat{\mathbf{f}}_{k \to k+1}$。
与已有工作不同的是,本文的独特切入角度在于利用图像复原扩散模型的中间表征。核心洞察是:图像复原扩散模型的中间表征天然具有退化感知能力(因为复原任务本身就是从退化输入恢复干净结构),但缺乏时间感知能力。而视频复原扩散模型虽然同时建模退化和时间动态,但其通过 3D 卷积或时间注意力将多帧压缩为共享的时间-空间潜在表示,破坏了逐帧的空间结构,不适合稠密匹配。DA-Flow 通过 lifting 技术——在预训练的图像复原扩散模型中注入跨帧注意力——来同时获得退化感知能力和时间感知能力,同时保持逐帧的空间结构完整性。这一设计在退化感知表征和稠密匹配的结构要求之间找到了平衡点。
核心方法
DA-Flow 的整体思路可以分为两个直觉层面。第一个直觉是:图像复原扩散模型在处理退化图像时,其中间特征编码了退化模式和场景几何信息,这些特征对于在退化条件下进行稠密匹配是有价值的。第二个直觉是:虽然图像复原模型缺乏跨帧时间建模,但通过在所有层注入跨帧注意力(lifting),可以使其获得时间感知能力,同时保持逐帧的空间结构。技术路线分为三个关键步骤:首先,将预训练的 DiT4SR 图像复原模型通过全时空注意力 lifting 到视频域;其次,分析 lifted 模型各层特征的几何对应质量,选择最优层;最后,将 lifted 扩散特征与 RAFT 的 CNN 特征融合,构建 DA-Flow 混合架构。
DA-Flow 的核心创新点在于提出了一种 lifting 机制,将预训练的图像复原扩散模型扩展到视频域。与现有方法的本质区别在于:(1) 与直接使用视频复原扩散模型(如 FlashVSR)不同,DA-Flow 从图像复原模型出发,避免了时间潜在表示压缩导致的逐帧空间结构丢失;(2) 与简单地将图像级扩散特征用于对应估计不同,DA-Flow 通过全时空注意力 finetuning 使特征获得时间感知能力;(3) 与直接 finetune RAFT 等传统光流网络不同,DA-Flow 利用扩散模型的生成先验来处理退化输入。实验表明,lifted 特征在零样本评估中的 EPE 始终低于未 finetune 的 baseline,且在去噪轨迹上保持稳定。
方法步骤详情
DA-Flow 的方法包含以下步骤:第一步,Lifting 图像复原扩散模型。将 MM-DiT 的注意力机制从逐帧独立处理改为全时空处理:将帧维度从 batch 轴解压到 token 轴,使 $\tilde{\mathbf{F}}_m \in \mathbb{R}^{B \times (FT) \times C}$,其中 $F$ 是帧数,$T$ 是每帧 token 数。这样每个 token 可以 attend 到所有帧的所有空间位置。在 YouHQ 数据集上使用扩散损失 $\mathcal{L}_{\text{diff}}$ 进行 finetuning。第二步,特征层选择。通过零样本几何对应评估,计算各层特征的 EPE,选择 top-4 层 $\{3, 13, 16, 17\}$ 作为特征提取层。第三步,特征上采样。使用 DPT 架构将 1/16 分辨率的扩散特征上采样到 1/8 分辨率,分别使用 Query 头、Key 头和 Context 头处理不同特征。第四步,混合特征编码。将上采样后的扩散特征 $\mathcal{F}^{k,\uparrow}_Q$、$\mathcal{F}^{k+1,\uparrow}_K$、$\mathcal{F}^{k,\uparrow}_{\text{ctx}}$ 与 RAFT CNN 编码器特征沿通道维度拼接。第五步,光流估计。使用 RAFT 的相关算子和迭代更新算子,通过 $M=12$ 次迭代精化生成最终光流估计。训练使用多尺度光流损失 $\mathcal{L}_{\text{flow}} = \sum_{i=1}^{M} \gamma^{M-i} \|\mathbf{f}_{k \to k+1}^{(i)} - \mathbf{f}^*_{k \to k+1}\|$。
技术新颖性
DA-Flow 的技术新颖性体现在多个方面。首先,提出了退化感知光流估计这一全新任务定义,将研究焦点从鲁棒性转向准确性。其次,发现了图像复原扩散模型的中间特征具有零样本几何对应能力——这一发现具有独立价值,因为之前的工作主要关注图像生成扩散模型的对应能力。第三,提出了 lifting 技术,通过全时空注意力将图像级扩散模型扩展到视频域,这是一种轻量级的跨帧建模方案,相比视频扩散模型更高效且更适合稠密匹配。第四,设计了混合特征编码架构,将退化感知的扩散特征与局部细节丰富的 CNN 特征融合,实现了全局语义和局部细节的互补。第五,使用 DPT 架构进行特征上采样,并为 Query、Key、Context 分别设计独立的上采样头,保留了注意力特征的不同语义。
实验结果
DA-Flow 在三个光流基准测试上进行了全面评估。在 Sintel 数据集上,DA-Flow 的 EPE 为 6.912,相比 RAFT 的 10.693 降低了 35.4%,相比 SEA-RAFT 的 10.185 降低了 32.1%,相比 FlowSeek 的 10.241 降低了 32.5%。在 1px 异常值率上,DA-Flow 为 55.80%,而 RAFT 为 62.91%,SEA-RAFT 为 59.56%,FlowSeek 为 64.08%。在 Spring 数据集上,DA-Flow 的 EPE 为 2.207,相比 RAFT 的 3.944 降低了 44.0%,1px 异常值率为 30.95%,显著优于 RAFT 的 39.82%。在 TartanAir 数据集上,DA-Flow 的 EPE 为 8.866,略高于 FlowSeek 的 7.694,但在所有阈值(1px: 72.35% vs 76.96%,3px: 37.61% vs 45.20%,5px: 25.40% vs 32.00%)上的异常值率均为最优,表明 DA-Flow 在大多数像素上产生更准确的估计。消融实验表明,lifted 特征在所有去噪步骤上都优于未训练的 baseline 特征,DPT 上采样和 CNN 编码器的组合是性能最优的配置。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 退化光流估计(Sintel) | EPE (End-Point Error) | 6.912 | RAFT: 10.693, SEA-RAFT: 10.185, FlowSeek: 10.241 | 相对最佳基线 SEA-RAFT 降低 32.1% |
| 退化光流估计(Sintel) | 1px 异常值率 | 55.80% | RAFT: 62.91%, SEA-RAFT: 59.56%, FlowSeek: 64.08% | 相对最佳基线 SEA-RAFT 降低 3.76 个百分点 |
| 退化光流估计(Spring) | EPE | 2.207 | RAFT: 3.944, SEA-RAFT: 2.703, FlowSeek: 2.861 | 相对最佳基线 SEA-RAFT 降低 18.3% |
| 退化光流估计(Spring) | 1px 异常值率 | 30.95% | RAFT: 39.82%, SEA-RAFT: 41.51%, FlowSeek: 41.53% | 相对最佳基线 RAFT 降低 8.87 个百分点 |
| 退化光流估计(TartanAir) | EPE | 8.866 | RAFT: 9.487, SEA-RAFT: 8.316, FlowSeek: 7.694 | 相对 RAFT 降低 6.5%,但略高于 FlowSeek |
| 退化光流估计(TartanAir) | 5px 异常值率 | 25.40% | RAFT: 30.04%, SEA-RAFT: 32.15%, FlowSeek: 32.00% | 相对最佳基线 RAFT 降低 4.64 个百分点 |
局限与改进
DA-Flow 存在以下局限性:首先,推理速度是一个显著问题。由于依赖扩散模型的迭代去噪过程,DA-Flow 在推理时需要执行 10 个去噪步骤,每个步骤都需要完整的 Transformer 前向传播,相比 RAFT 等纯 CNN 方法的推理速度明显更慢。论文在附录中承认这一问题,并提出探索单步蒸馏技术作为未来方向。其次,训练数据依赖于伪真值(pseudo ground-truth)。由于真实退化视频的光流真值不可获取,DA-Flow 使用 SEA-RAFT 在高质量视频上生成的伪光流作为训练目标,这意味着训练信号的质量受限于伪真值生成模型的能力。第三,退化类型局限于合成退化管线(Real-ESRGAN 退化模型 + 视频压缩),实际应用中的退化可能更加多样化和复杂。第四,在 TartanAir 数据集上,DA-Flow 的 EPE 略高于 FlowSeek,虽然异常值率更优,但说明方法在某些特定场景下仍有改进空间。
独立分析的弱点
从独立分析的角度,DA-Flow 存在以下弱点。第一,计算效率问题:10 个去噪步骤意味着 DA-Flow 的推理时间是传统光流方法的数倍,这限制了其在实时应用中的适用性。改进方向包括探索一致性模型(Consistency Models)或单步蒸馏技术,将去噪步骤压缩到 1-2 步。第二,特征层选择的经验性:top-4 层 $\{3, 13, 16, 17\}$ 是通过在 YouHQ40 验证集上的实验确定的,但这些层的选择可能对不同数据分布敏感。改进方向包括设计自适应的层选择机制或使用注意力权重进行动态层加权。第三,伪真值质量瓶颈:使用 SEA-RAFT 生成的伪光流作为训练目标,误差会传播到最终模型。改进方向包括自训练(self-training)或使用多个光流模型的集成来提高伪真值质量。第四,退化模型单一:训练和评估都使用相同的 Real-ESRGAN 退化管线,对未见过的退化类型的泛化能力未知。改进方向包括使用更多样化的退化合成管线或在真实退化数据上进行微调。
未来方向
论文作者提出的未来方向包括:探索单步蒸馏技术以减少推理成本同时保持估计质量。基于现有成果可延伸的方向包括:(1) 将 lifting 技术应用于其他视觉对应任务,如立体匹配、语义对应和视频目标跟踪;(2) 探索更强的图像复原扩散模型作为 backbone,随着复原模型性能的提升,DA-Flow 的退化感知能力也可能随之增强;(3) 将 DA-Flow 应用于下游任务,如视频复原中的时序对齐(论文已在附录中展示了与 MGLD 结合的初步结果,在 YouHQ40 上实现了 23.47 dB PSNR 和 3.483 的 warping error);(4) 研究 lifting 对不同噪声水平和退化程度的适应性,可能需要动态调整去噪步骤数;(5) 探索 lifting 技术在大规模视频扩散模型上的应用,结合更强的生成先验。
复现评估
从复现角度来看,DA-Flow 具有较好的可复现性。代码和模型将公开发布在项目主页 https://cvlab-kaist.github.io/DA-Flow2026。骨干模型 DiT4SR 使用官方代码和公开权重(dit4sr_q)。RAFT 初始化使用公开的 raft-things.pth 权重。训练数据 YouHQ 是公开可用的高分辨率视频数据集,包含 38,576 个视频。DPT 架构参考 VGGT 代码库。然而,复现面临的主要挑战是算力需求:训练在 4 块 NVIDIA H100 GPU 上进行,两阶段各训练 20K 步,batch size 为 32。对于资源有限的研究者,可以考虑使用较小的 batch size 或减少训练步数,但可能影响最终性能。评估使用 Sintel、Spring 和 TartanAir 公开基准测试,退化管线使用 Real-ESRGAN 的标准配置,这些都有公开实现。
论文图表
该图展示了 DA-Flow 与 RAFT、SEA-RAFT、FlowSeek 在 Spring 基准测试上的定性比较。每行包含高质量帧、低质量帧、光流真值和各方法的预测结果。在严重退化条件下,现有光流方法产生噪声和不一致的光流场,而 DA-Flow 能够准确估计底层运动,光流场与真值高度一致。
这是论文的第一张图,直观展示了退化感知光流估计任务的挑战和 DA-Flow 的有效性,是理解论文动机和贡献的关键入口