Skip to content

shuuchen/depth_eigen

Repository files navigation

depth_eigen

An implementation of Depth Map Prediction from a Single Image using a Multi-Scale Deep Network by David Eigen et al. in PyTorch.

The paper firstly proposed a coarse-fine convolutional deep neural network approach to estimate depth from a single image.

Network structure

Files

  • depth_eigen.ipynb
    • model, preprocessing, train, validation and test
  • data_prepare.ipynb
    • data preparation and cleaning

Training data

NYU Depth I used 2807 train samples and 694 validation samples for a light train and validation.

Loss curves

  • Coarse networks per epoch

  • Fine networks per epoch

The validation loss is lower than train loss, mostly because dropout is used in coarse6 layer of coarse network. Dropout is prohibited during validation, which leads to better inference results.

Test

Though not so accurate, the depth can be slightly predicted by fine network. The output of coarse network seems unchanged to different input images, which is a problem. Anyway, the losses of both networks are highly above the losses provided in the paper, which are merely around 0.2. I believe better accuracy can be achieved by using more training data and learning iterations.

MIT License