After over a month of performing training experiments, moderately good results have been achieved. Below are some examples of good predictions:



However, across all images, the model is unable to predict fine-scale features, particularly in the depth range of 0 to 1.0 meters. This is bad since fine-scale features are actually the most important data to predict for obstacle navigation. For example, in the photo below, the model is able to predict nearly a single value across all pixels and still achieve a low RMSE, since the error between each pixel is small.

As a baseline, I trained on the NYU Depth dataset to try and replicate the results in the FastDepth paper. Quantitatively, the results were very good, with a test RMSE of .75 and delta1 of .7. However, the model still couldn't predict fine-scale objects:

My intuition from these results is that more simulation data by itself won't solve the problem. I see a few options going forward:
- Use a different loss function. We've already discussed this option, but I still don't have any good contenders. I have tried some log losses, but they've failed so far, so I may need to run those by someone.
- Modify their network to be larger. From reading their paper, their encoder-decoder architecture was designed completely around FPS at the cost of accuracy. Seeing how we don't need 120FPS, we could potentially scale their architecture to have more upsampling and skip connections, and maybe more depth, to improve accuracy.
- Another option similar to above is to train two networks - a coarse-scale and a fine-scale network. Eigen et al. did this back in 2014, and while there have been better architectures since then, for the most part those architectures focus on consistently-scaled environments.
- Do some postprocessing magic and apply sequential similarity constraints to refine data. This wouldn't increase resolution, but it would improve consistency between frames. I think I'll be doing this for whatever final model we have.
My first steps going forward will be to increase our training dataset and try some different loss functions. If that leads nowhere, then I will revisit some of the paths above.
After over a month of performing training experiments, moderately good results have been achieved. Below are some examples of good predictions:



However, across all images, the model is unable to predict fine-scale features, particularly in the depth range of 0 to 1.0 meters. This is bad since fine-scale features are actually the most important data to predict for obstacle navigation. For example, in the photo below, the model is able to predict nearly a single value across all pixels and still achieve a low RMSE, since the error between each pixel is small.

As a baseline, I trained on the NYU Depth dataset to try and replicate the results in the FastDepth paper. Quantitatively, the results were very good, with a test RMSE of .75 and delta1 of .7. However, the model still couldn't predict fine-scale objects:

My intuition from these results is that more simulation data by itself won't solve the problem. I see a few options going forward:
My first steps going forward will be to increase our training dataset and try some different loss functions. If that leads nowhere, then I will revisit some of the paths above.