Deprecated

January 23, 2018 ยท View on GitHub

Please note that this repository is longer functional and only exists for archival purposes. Since the release of this repository, several other approaches (e.g. https://arxiv.org/abs/1609.03677) have produced superior results; therefore, I recommend that you explore these methods instead. Regardless, the model.py provides a "barebones" implementation without weights or display tools.

DepthNet

DepthNet is an unofficial Tensorflow implementation of Predicting Depth, Surface Normals and Semantic Labels with a Common Multi-Scale Convolutional Architecture. Note: This repository was created for a research project, not associated with NYU, to explore the implications of residual neural networks for monocular depth estimation and smartphone-based spatial mapping. These modifications were not included in this repository for compeleteness. If you would like these modification, please email me at rcbridendev@gmail.com.

Installation

There are two ways to install NYUDepthNet - Automatic and Manual. The latter is complex to configure, so it's recommended that you use the Automatic method.

Automatic

This is the recommended way to install NYUDepthNet.

  • Clone the repository.
  • Install dependencies
  • Run main.py to ensure NYUDepthNet was installed correctly.

Manual

This installation method is more complex; however, it does grant increased customizability.

  • Clone the repository.
  • Install dependencies
    • Theano
    • Install the dependencies mentioned in the Automatic method.
  • There are two methods to setup the installation:
    1. Run setup_env.py
    2. Manually download an unpack weights
      • Download weights and scripts from NYU
      • Convert weights from .pk format to .npy or to tensorflow variables. NOTE: These weights are formatted as Theano tensors, so they must be converted to Tensorflow tensors. See TheanoUnpickler.
  • Run main.py to ensure NYUDepthNet was installed correctly.

Example Images

alt text alt text alt text alt text