As initial version, we support the following algoirthms. We are working on more algorithms. Of course, you are welcome to add your algorithms here.
Please click the hyperlink of each algorithm for more detailed explanation.
You can git clone this whole repo by:
git clone https://github.com/PaddlePaddle/PaddleDepth
cd PaddleDepth/PaddleCompletion
pip install -r requirements.txt
This project is based on PaddlePaddle 2.3.2. Please use PaddleCompletion in python 3.9.
See guidance in dataset_prepare for dataset preparation.
- Modify the .yaml file in the
configs
directory. - Run the
train.py
with specified config, eg:python train.py --c config/CSPN.yaml
- We provide shell scripts to help you reproduce our experimental results:
bash scripts/train_cspn.sh
.
- Modify the configuration file in the
configs
directory. - Download the trained model and put it in the corresponding directory, eg:
weights/cspn/model_best.pdparams
. - Run the
evaluate.py
with specified config, eg:python evaluate.py --c config/CSPN.yaml
It is easy to design your own method following the 3 steps:
- Check whether your method requires new loss functions, if so, add your loss in the
loss_funcs
- Check and write your own model's to
model
- Write your own config file (.yaml)
We present results of our implementations on 2 popular benchmarks: KITTI and NYU Depth V2. We did not perform careful parameter tuning and simply used the default config files. You can easily reproduce our results using provided shell scripts!
Method | RMSE | MAE | iRMSE | iMAE |
---|---|---|---|---|
FCFRNet |
784.224 | 222.639 | 2.370 | 1.014 |
STD |
814.73 | 242.639 | 2.80 | 1.21 |
Data | RMSE | REL | DELTA1.02 | DELTA1.05 | DELTA1.10 |
---|---|---|---|---|---|
CSPN |
0.1111 | 0.0151 | 0.8416 | 0.9386 | 0.9729 |
The toolkit is under active development and contributions are welcome! Feel free to submit issues or emails to ask questions or contribute your code. If you would like to implement new features, please submit a issue or emails to discuss with us first.
PaddleDepth is an open source project that is contributed by researchers and engineers from various colleges 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 new algorithms.
[1] CSPN: A Compact Spatial Propagation Network for Depth Completion
[2] FCFRNet: Fast and Convergent Feature Refinement Network for Depth Completion