Self-Supervised CNN-GCN Autoencoder
GCNDepth: Self-supervised monocular depth estimation based on graph convolutional network
https://www.sciencedirect.com/science/article/abs/pii/S0925231222013601
If you find our work useful in your research please consider citing our paper:
@article{masoumian2022gcndepth,
title={Gcndepth: Self-supervised monocular depth estimation based on graph convolutional network},
author={Masoumian, Armin and Rashwan, Hatem A and Abdulwahab, Saddam and Cristiano, Julian and Asif, M Salman and Puig, Domenec},
journal={Neurocomputing},
year={2022},
publisher={Elsevier}
}
- PyTorch1.2+
- Python3.5+
- Cuda10.0+
- mmcv==0.4.4
# this create new conda enviroment to run the model
conda create --name gcndepth python=3.7
conda activate gcndepth
# this installs the right pip and dependencies for the fresh python
conda install ipython
conda install pip
# install required packages from requirements.txt
pip install -r requirements.txt
Our training data is the same with other self-supervised monocular depth estimation methods, please refer to monodepth2 to prepare the training data.
We provide weights for GCNDepth
We provide an API interface for you to predict depth and pose from an image sequence and visulize some results. They are stored in folder 'scripts'.
eval_pose.py is used to obtain kitti odometry evaluation results.
eval_depth.py is used to obtain kitti depth evaluation results.
infer.py is used to generate depth maps from given models.
You can use following command to launch distributed learning of our model:
python run.py