DeepMotionAIResearch / DenseMatchingBenchmark

Dense Matching Benchmark
MIT License
176 stars 31 forks source link
architecture benchmark depth-estimation optical-flow stereo-matching toolbox

DenseMatchingBenchmark

This project aims at providing the necessary building blocks for easily creating dense matching models, e.g. Stereo Matching, Scene Flow using PyTorch 1.7.1 or higher.

Introduction

Our architecture is based on two wellknown detection framework: mmdetection and maskrcnn-benchmark. By integating their major features, our architecture is suitable for dense matching, and achieves robust performance!

Major features

Highlights

Installation

Please refer to INSTALL.md for installation and dataset preparation.

Get Started

Please see GETTING_STARTED.md for the basic usage of DenseMatchingBenchmark.

TODO

Experiment Results

All our reimplemented methods will provide checkpoint(including all training details, e.g., TensorBoard Record) in corresponding config file ResultOf{ModelName}

(x): means the result in original paper

Model FLOPS Parameters FPS Time(ms) SceneFlow (EPE) KITTI 2012 KITTI 2015 (D1-all)
PSMNet 938.186G 5.225M 1.67 599.2 1.112 (1.090) 2.33 (2.32)
AcfNet 1239.0G 5.559M 1.38 723.1 0.831 (0.867)
StereoNet-8x-single 78.512G 399.066K 19.17 52.2 1.533 (1.525)
DeepPruner
AnyNet 1.476G 46.987K 3.190 (~3.2)

Changelog

Update Time: 24/04/2020

  1. Integrate Optical Flow task into our architecture
  2. Inference a model is avaliable
  3. Unify the format of module's name

Update Time: 10/11/2020

  1. Fix a bug in the loss of confidence estimation network, and retrain the AcfNet-Adaptive Network, checkpoints are uploaded here

Update Time: 28/01/2021

  1. Add demo.py to run a demo.
  2. Support visualization for cost distribution, run view_cost.py to take a look. We implement an UI for friendly interaction.
  3. For detailed HowToUse, please refer to GETTING_STARTED.md

Update Time: 31/05/2021

  1. Support Pytorch1.7.1, not test for all projects if it works, but you can try, if not work or get worse results, please checkout to: 177c56ca1952f54d28e6073afa2c16981113a2af

Contributing

We appreciate all contributions to improve DenseMatchingBenchmark. Please refer to CONTRIBUTING.md for the contributing guideline.

Acknowledgement

DenseMatchingBenchmark is an open source project that is contributed by researchers and engineers from various colledges and companies. We appreciate all the contributors who implement their methods or add new features, as well as users who give valuable feedbacks. We wish that the toolbox and benchmark could serve the growing research community by providing a flexible toolkit to reimplement existing methods and develop their own new matching algorithm.

Citation

If you use this toolbox or benchmark in your research, please cite this project.

    @article{zhang2020adaptive,
      title={Adaptive Unimodal Cost Volume Filtering for Deep Stereo Matching},
      author={Zhang, Youmin and Chen, Yimin and Bai, Xiao and Yu, Suihanjin and Yu, Kun and Li, Zhiwei and Yang, Kuiyuan},
      journal={AAAI},
      year={2020}
    }

Contact

This repo is currently maintained by Youmin Zhang(@youmi-zym) and Yimin Chen (@Minwell-dht)

License

DenseMatchingBenchmark is released under the MIT license. See LICENSE for additional details.