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 either git clone this whole repo by:
git clone https://github.com/PaddlePaddle/PaddleDepth.git
cd Paddle-Mono
pip install -r requirements.txt
Please use PaddleMono in python 3.9.
see guidance in dataset_prepare for dataset preparation.
- Modify the configuration file in the corresponding directories in
configs
. - Run the
train.py
with specified config, for example,python train.py --config configs/monodepthv2/mdp.yml
- We provide shell scripts to help you reproduce our experimental results:
bash configs/monodepth/mdp.sh
.
It is easy to design your own method with following steps:
- Check and write your own model's to
model
- Write your own config file (.sh or .yml)
We present results of our implementations on the popular KITTI benchmarks with Eigen split.
Note: We did not optimize the model results by additional tricks, so you can directly use the provided shell scripts to reproduce the accuracy we report in the table.
Method | abs_rel | sq_rel | rms | log_rms | a1 | a2 | a3 |
---|---|---|---|---|---|---|---|
Monodepth2_640x192 | 0.112 | 0.839 | 4.846 | 0.193 | 0.875 | 0.957 | 0.980 |
Monodepth2_1024x32 | 0.112 | 0.833 | 4.748 | 0.191 | 0.880 | 0.960 | 0.981 |
Depth Hints_640x192 | 0.110 | 0.818 | 4.728 | 0.189 | 0.881 | 0.959 | 0.981 |
Depth Hints_1024x320 | 0.109 | 0.794 | 4.474 | 0.185 | 0.887 | 0.963 | 0.982 |
MLDANet_640x192 | 0.108 | 0.829 | 4.678 | 0.184 | 0.885 | 0.962 | 0.983 |
BTS Densenet121_704x352 | 0.050 | 0.201 | 2.547 | 0.082 | 0.970 | 0.995 | 0.999 |
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] Godard C, Mac Aodha O, Firman M, et al. Digging into self-supervised monocular depth estimation[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019: 3828-3838.
[2] Song X, Li W, Zhou D, et al. MLDA-Net: Multi-level dual attention-based network for self-supervised monocular depth estimation[J]. IEEE Transactions on Image Processing, 2021, 30: 4691-4705.
[3] Watson J, Firman M, Brostow G J, et al. Self-supervised monocular depth hints[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019: 2162-2171.
[4] LEE J, HAN M, KO D, et al. From big to small: Multi-scale local planar guidance for monocular depth estimation[Z]//arXiv: Computer Vision and Pattern Recognition. 2019.