FlowFormer 概述
FlowFormer 是一种基于 Transformer 的视觉模型,主要用于 光流估计(Optical Flow)。它在 2022 年的 ECCV 会议上提出,并在 Sintel、FlyingChairs、FlyingThings 等基准上实现了当时的最先进性能。其核心思想是将传统光流方法中的 4D 成本体(cost volume) 与 Transformer 的强大建模能力相结合,通过 成本体编码器‑解码器 结构实现高精度、强泛化的光流预测。
1. 关键技术要点
| 组件 | 作用 | 说明 |
|---|---|---|
| 特征提取器 | 从源‑目标图像对提取高维特征 | 采用预训练的 Twins‑SVT 或其他视觉 Transformer 作为 backbone |
| 4D 成本体构建 | 将两帧特征在空间‑位移维度上进行匹配,得到四维代价体 | 成本体捕捉像素级对应关系,为后续 Transformer 编码提供丰富信息 |
| 成本体编码器(Alternating Group Transformer, AGT) | 将成本体切分为 token,使用交替分组 Transformer 进行上下文聚合 | 通过 交替组 机制降低计算复杂度,同时保留全局关联 |
| 循环解码器(Cost‑Volume Decoder) | 采用带动态位置查询的循环 Transformer,对成本体进行迭代解码 | 每一次迭代都更新光流预测,直至收敛,提升细节恢复能力 |
| Masked Cost‑Volume Auto‑Encoding (MCVA) 预训练(可选) | 在大规模未标注数据上进行自监督预训练 | 进一步提升模型对稀疏或噪声场景的鲁棒性 |
2. 性能表现
- Sintel Clean:AEPE ≈ 1.16,比前一代最佳方法下降约 16.5%
- Sintel Final:AEPE ≈ 2.09,下降约 15.5%
- FlyingChairs / FlyingThings 训练后,在 Sintel Training Clean 上实现 1.01 AEPE,相较最佳方法提升 21.7%
这些结果表明 FlowFormer 在光流估计任务上兼具 高精度 与 强泛化。
3. 代码与资源
| 资源 | 链接 | 说明 |
|---|---|---|
| 论文(arXiv) | https://arxiv.org/abs/2203.16194 | 原始技术报告,包含完整方法描述 |
| 项目主页 | https://drinkingcoder.github.io/publication/flowformer/ | 论文摘要、实验结果、演示视频等 |
| 官方代码(GitHub) | https://github.com/drinkingcoder/FlowFormer-Official | 完整实现、训练脚本、预训练模型下载 |
| 预训练模型 | 同上 GitHub Release 页面 | 可直接用于下游光流任务或微调 |
4. 与其他 “FlowFormer” 的区别
除了光流方向的 FlowFormer,2022 年还有另一篇题为 “Flowformer: Linearizing Transformers with Conservation Flows” 的工作,旨在 降低 Transformer 注意力的二次复杂度,适用于长序列建模、视觉、NLP、时间序列等任务。两者虽然同名,但研究目标和应用场景截然不同,需注意区分。
5. 小结
- 核心创新:将 4D 成本体与 Transformer 编码‑解码相结合,实现高效、全局感知的光流估计。
- 优势:在多个光流基准上取得 SOTA,且对未见数据具备良好泛化。
- 实用性:提供完整开源实现和预训练模型,便于科研与工业项目直接使用。
声明:文章均为AI生成,请谨慎辨别信息的真伪和可靠性!