GeoNet: Geometric Neural Network for Joint Depth and Surface Normal Estimation
Required python libraries: Tensorflow (>=1.2) + Scipy + Numpy + Scipy + OpenCV.
Tested in Ubuntu + Intel i7 CPU + Nvidia Titan X (Pascal) with Cuda (>=8.0) and CuDNN (>=5.0). CPU mode should also work with minor changes.
-
Download pretrained model data, initialization model, and trained model from "https://drive.google.com/open?id=1o2t8735acVf2cLSCS6URkNViOB7mdb-Q"
-
tar xvzf GeoNet.tar.gz
-
Merge files into the Repo according to the file name.
-
Run 'code.py'
-
Evaluation: cd eval & run 'test_depth.m' for depth evaluation and run 'test_norm.py' for normal evaluation.
Prepared training data download: https://hkuhk-my.sharepoint.com/:f:/g/personal/xjqi_hku_hk/Ek0Vm--5oi1GssioLE5LjO0ByLTKpWAG00zYYUCeiydR7g?e=8kAdLZ
Run 'code.py' in training mode.
If you find the code or trained models useful, please consider citing:
@inproceedings{qi2018geonet,
title={Geonet: Geometric neural network for joint depth and surface normal estimation},
author={Qi, Xiaojuan and Liao, Renjie and Liu, Zhengzhe and Urtasun, Raquel and Jia, Jiaya},
booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
pages={283--291},
year={2018}
}
@article{qi2020geonet++,
title={GeoNet++: Iterative Geometric Neural Network with Edge-Aware Refinement for Joint Depth and Surface Normal Estimation},
author={Qi, Xiaojuan and Liu, Zhengzhe and Liao, Renjie and Torr, Philip HS and Urtasun, Raquel and Jia, Jiaya},
journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
year={2020},
publisher={IEEE}
}
You are welcome to send pull requests or give some advices. Contact information: xjqi at eee.hku.hk
.