Skip to content

Master's project implementing depth estimation for spherical images using unsupervised learning with CNNs.

Notifications You must be signed in to change notification settings

srijanparmeshwar/monodepth360

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

monodepth360

Master's project implementing depth estimation for spherical images using unsupervised learning with CNNs. Based on the work of Godard et. al.

Requirements

Requires typical scientific computing libraries like numpy, scipy and TensorFlow. Some Python scripts require other libraries like Blender or OpenEXR. The main program for training and testing just needs TensorFlow. Requires a GPU for training in a reasonable amount of time (inference is okay on CPU).

Structure

  • calibration
    • MATLAB scripts for rectifying a top and bottom spherical image.
  • evaluation
    • Code for evaluation predictions against ground truth data. Requires PILLOW, matplotlib, numpy, scipy and OpenEXR.
  • monodepth
    • Main code section which includes a spherical image module with TensorFlow functions for converting between different projection models. Also includes network definitions and training and testing code. Further instructions are given in the module README
  • synthetic
    • Blender scripts for rendering equirectangular images along with ground truth depth (and optionally 3D 360 degree images). Also includes SUNCGToolbox for handling data from their paper. Allows you to create a training dataset for the network. Real world data is currently not made publicly available.
  • visualization
    • Code for handling outputs from the network i.e. converting from depth map to point cloud, and resampling the depth map.

About

Master's project implementing depth estimation for spherical images using unsupervised learning with CNNs.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published