/DI-MVS-plusplus

[ICASSP 2024] DI-MVS: LEARNING EFFICIENT MULTI-VIEW STEREO WITH DEPTH-AWARE ITERATIONS

Primary LanguagePython

DI-MVS (ICASSP 2024)

Installation

git clone https://github.com/JianfeiJ/DI-MVS.git
cd DI-MVS

Enviorment

conda create -n di-mvs python=3.8
conda activate di-mvs
pip install -r requirements.txt

Datasets

DTU

  • Download pre-processed datasets for test: dtu.
    - dtu/
    - scan1 (scene_name1)
    - scan2 (scene_name2)
      - images
        - 00000000.jpg
        - 00000001.jpg
        - ...
      - cams_1
        - 00000000_cam.txt
        - 00000001_cam.txt
        - ...
      - pair.txt
    
  • Download pre-processed datasets for training: dtu_training, Depth_raw.
    - dtu_training/
    - Cameras
    - Depths
    - Depths_raw
    - Rectified
    

Tanks & Temples

Download Tanks & Temples test dataset.

- tanksandtemples_1/
 - advanced
   - ...
   - Temple
     - cams
     - images
     - pair.txt
     - Temple.log
 - intermediate
   - ...
   - Train
     - cams
     - cams_train
     - images
     - pair.txt
     - Train.log

Reproducing Results (single RTX 3090)

Download pretrained model on DTU and BlendedMVS, and remove them to the checkppints folder.

Evaluation on DTU

sh test_dtu.sh

For quantitative evaluation on DTU dataset, download SampleSet and Points. Unzip them and place Points folder in SampleSet/MVS Data/.

- SampleSet
  - MVS Data
    - ObsMask
    - Points

Evaluation on Tanks & Temples

sh test_tnt.sh

Result on DTU

Methods Acc. (mm) Comp. (mm) Overall (mm) Time (s)
DI-MVS-lite 0.305 0.305 0.305 0.11
DI-MVS 0.312 0.278 0.295 0.30
Intermediate Advanced
62.94 40.92

Traning

sh train.sh

Acknowledgements

This repository is partly based on Effi-MVS, TransMVSNet, IterMVS, UniMVSNet and MVSTER. Thanks for their excellent works!