项目简介
Unimatch项目的核心是开发一种统一模型,用于三项关键的运动与三维感知任务:光流估计、立体匹配及深度估计。这一创新性工作由多个著名研究者合作完成,包括Haofei Xu、Jing Zhang、Jianfei Cai、Hamid Rezatofighi、Fisher Yu、Dacheng Tao和Andreas Geiger。该项目在多个知名的基准测试中表现优异,如Sintel(clean)、Middlebury(rms metric)和Argoverse,均获得第一名。
背景与发展
Unimatch项目建立在之前的几个重要工作基础之上,主要包括:
- GMFlow: 通过全局匹配学习光流(CVPR 2022, Oral)
- 结合1D注意力与相关性实现高分辨率光流(ICCV 2021, Oral)
- AANet: 高效立体匹配的自适应聚合网络(CVPR 2020)
这些前期研究有效奠定了Unimatch项目的技术基础,使其能够在面临不同任务时灵活高效地运作。
安装指南
Unimatch的代码是基于PyTorch 1.9.0、CUDA 10.2和Python 3.8进行开发的。推荐用户使用Conda进行安装:
conda env create -f conda_environment.yml
conda activate unimatch
同时,也可选择使用pip进行安装:
bash pip_install.sh
模型库
项目提供了大量预训练模型,这些模型可以根据速度和精度的不同需求进行选择。用户可以根据自己的实际需求下载并使用这些模型,所有模型均假设下载的权重存放于pretrained
目录下。
演示功能
Unimatch支持根据给定的图像对或视频序列,生成光流、视差和深度预测结果。具体使用方法可参考相关脚本文件:
数据集
该项目使用了多个数据集来训练和评估这三项任务的模型,详细的信息可参考DATASETS.md。
评估与训练
项目中提供了用于复现论文中所述结果的评估脚本,以及支持不同模型在不同数据集上训练的脚本。用户可以通过TensorBoard监控并可视化训练过程:
tensorboard --logdir checkpoints
然后在浏览器中访问 http://localhost:6006
。
引用格式
如引用此项目相关学术成果,请使用以下参考文献格式:
@article{xu2023unifying,
title={Unifying Flow, Stereo and Depth Estimation},
author={Xu, Haofei and Zhang, Jing and Cai, Jianfei and Rezatofighi, Hamid and Yu, Fisher and Tao, Dacheng and Geiger, Andreas},
journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
year={2023}
}
致谢
项目在开发过程中借鉴了许多优秀的开源项目,包括RAFT、LoFTR、DETR、Swin、mmdetection及Detectron2等。感谢这些项目的原作者们提供的卓越工作。