Open ajinkyakhoche opened 5 years ago
Hi!
d_t = d_t/mean(d_t), where d_t is the mean-normalized inverse depth for I t as used by Wang, C., Buenaposada, J.M., Zhu, R., Lucey, S.: Learning depth from monocular videos using direct methods.
and the upsampling trick (the 'upscaling' trick):
We propose an improvement to this multi-scale formulation. Instead of com- puting the photometric error on the ambiguous low-resolution images, we first upsample the lower resolution depth maps to the input image resolution and then warp and compute the photometric error pe at this higher input resolu- tion. This effectively constrains the depth maps from each resolution to work towards the exact same objective i.e. reconstructing the high resolution input target image as accurately as possible. We found that this significantly improves the depth accuracy, while also reducing the texture-copy artifacts which are very noticeable in the previous multi-scale formulation as can be seen in Fig. 5. This is related to matching patches, a standard practice in stereo reconstruction [40], as a low-resolution disparity value will be responsible for reprojecting an entire patch of pixels in the high resolution image.
I have found that they do not help in the regression network.
loss += loss_weights_dict['w_{}'.format(loss_name[5:])] * loss_value
Dear Victoria
First of all, thank you for this work. I am a beginner in Deep Learning trying to work with Depth Estimation. Here are my questions:
loss_dict['loss_DS'] = depth_supervised_loss(depth_r[0], var_dict_t['gt_depth_r'], loss_params_dict)
instead beloss_dict['loss_DS'] **+=** depth_supervised_loss(depth_r[0], var_dict_t['gt_depth_r'], loss_params_dict)