% Version 0.1, Feb 2006. % This code is copyrighted by Ashutosh Saxena, Stanford University % It is available for non-commercial use only. For commericial use, please % contact the authors. % % Any publication or report resulting from Use of this code, should cite: % Learning Depth from Single Monocular Images, Ashutosh Saxena, Sung H. Chung, Andrew Y. Ng, NIPS 2005. % 3-D Depth Reconstruction from a Single Still Image, Ashutosh Saxena, Sung H. Chung, Andrew Y. Ng, To appear in IJCV 2007. % % For more info and dataset, visit: http://ai.stanford.edu/~asaxena/learningdepth/ % For a better version of the algorithm and ideas on improvement, also visit: % http://ai.stanford.edu/~asaxena/reconstruction3d/ % % For recent version of the code, see: % http://make3d.stanford.edu/publications/code The code is provided as is. This code is not a working version of the code --- I dug it out from some pre-NIPS submission version. I plan to provide a better version of the code in a few months..... It is provided as a starting point, and could be made to work if you understand the NIPS 2005 or IJCAI 2007 or IJCV 2007 paper. (I.e., expect yourself to spend significant amount of time in re-implementing the code.) The best way to implement the learning depth from monocular algorithm is by following the steps below: - First have feature vector ready (start with createAllTrainingSet.m) - Then learn the theta parameters, first using Gaussian (easy, using trainData.m) and then using Laplacian (uncomment lines in trainData.m - Then see the result on training images, and debug - Test it on test set (see result using viewCorrelatedDepthmap.m) - Then make the relative features. (start with createAllRelativeTrainingSet.m) - Learn the variances (trainDataRelative.m), and see the result. - Finally, try it on new internet images. If a particular file is missing from the website, please let me know. % Thanks to the following users to point out the bugs in the code: % 1. XiangYin, 3D Visual Computing and Robotics Group, Peking University % Notes: % 1. makeAppendedRelativeFeatures.m is perhaps same as makeAppendedRangedFeatures.m % 2. The code would usually need > 1G to run; 2G RAM is better. If you do not % have such a computer, divide learning into smaller parts....