darkthecross / SingleImageDepthEstimation

This is a project to estimate depth of objects from a single RGB image using deep learning .
MIT License
6 stars 2 forks source link
cnn computer-vision machine-learning

Single Image Depth Estimation Using a Multi-scale Convolutional Neural Network

Dependencies

Problem description

We aim to solve the problem of estimating depth information from single images.

We tested our networks on both Kinect style data and correlating RGB image and Lidar data.

Dataset

[NYU V2 Depth dataset] https://cs.nyu.edu/~silberman/datasets/nyu_depth_v2.html

[Dataset Provided by Matt. From the course EECS599 Autonomous Driving Cars] http://umich.edu/~fcav/rob599_dataset_deploy.zip

See the file rawDataLoader.py and rgblDataLoader.py to figure out the proper directory to place the datasets.

Training and Testing

Run training*.py to train the model.

For model with pre-train steps, run training1.py and training2.py sequentially.

Run show_loss.py to see the loss over training set and test set along the training process:

To test the model, run test*.py. This will generate examples of predictions from the test set and write the images into /result_images directory.

Run evaluate.py to calculate the Absolute Relative Error, Root Mean Square Error etc. from the generated images:

Example of our dataset and predicted results

Origin RGB image: origin image

Origin raw Depth file: origin depth

Predicted Depth: origin depth