minygd / camconvs

Code for the CVPR paper "CAM-Convs: Camera-Aware Multi-Scale Convolutions for Single-View Depth"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CAM-Convs: Camera-Aware Multi-Scale Convolutions for Single-View Depth

Tensorflow implementation of CAM-Convs.

Introduction

This repository contains original implementation of the paper: 'CAM-Convs: Camera-Aware Multi-Scale Convolutions for Single-View Depth' by Jose M. Facil ,Benjamin Ummenhofer, Huizhong Zhou, Luis Montesano, Thomas Brox* and Javier Civera*

The page of the paper is http://webdiis.unizar.es/~jmfacil/camconvs/

Citing

Please cite CFL in your publications if it helps your research:

@InProceedings{Facil_2019_CVPR,
author = {Facil, Jose M. and Ummenhofer, Benjamin and Zhou, Huizhong and Montesano, Luis and Brox, Thomas and Civera, Javier},
title = {{CAM-Convs: Camera-Aware Multi-Scale Convolutions for Single-View Depth}},
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2019}
}

Use Instructions

We recommend the use of a virtual enviroment for the use of this project. (e.g. pew)

$ pew new venvname -p python3 # replace venvname with your prefered name (it also works with python 2.7)

Install Requirements

1. This code has been compiled and tested using:

  • python3
  • cuda-10.0
  • cuDNN 7.5
  • TensorFlow 1.13

You are free to try different configurations. But we do not ensure it had been tested.

2. Install python requirements:

(venvname)$ pip install -r requirements.txt

3. Compile lmbspecialops

Compile the submodule lmbspecialops following the instrucions here. We recommend to simply run:

(venvname)$ cd lmbspecialops
(venvname)$ python setup.py install
(venvname)$ pew add python
(venvname)$ cd ..

Note: You may need to set the enviroment variable LMBSPECIALOPS_LIB

(venvname)$ export LMBSPECIALOPS_LIB="/path/to/camconvs/lmbspecialops/build/lib.linux-x86_64-3.5/lmbspecialops.so" 

4. Add python folder to the path:

(venvname)$ pew add python/

5. Try our Data Sampling and CAM-Conv Channels demo:

You can run the iPython Notebook and play with our Datawriter, Datareader and data augmentation operations to train CAM-Convs ipython/DEMO_DATA_AUGMENTATION.ipynb.

6. Network code coming soon!

We are planning to add a second exaple including a Network training with multiple cameras.

About

Code for the CVPR paper "CAM-Convs: Camera-Aware Multi-Scale Convolutions for Single-View Depth"

License:GNU General Public License v3.0


Languages

Language:Jupyter Notebook 78.8%Language:Python 21.2%