【发布时间】:2021-01-09 07:10:10
【问题描述】:
我正在研究深度学习(监督学习),以从单目图像估计深度图像。 并且数据集目前使用的是 KITTI 数据。 RGB 图像(输入图像)用于 KITTI Raw 数据,来自following link 的数据用于ground-truth。
在通过设计一个简单的encoder-decoder网络来学习模型的过程中,效果不是很好,所以正在做各种尝试。
在寻找各种方法时,我发现groundtruth只能通过mask来学习有效区域,因为有很多无效区域,即不能使用的值,如下图所示。
所以,我是通过屏蔽学习的,但我很好奇为什么这个结果不断出现。
这是我的代码训练部分。 我该如何解决这个问题。
for epoch in range(num_epoch):
model.train() ### train ###
for batch_idx, samples in enumerate(tqdm(train_loader)):
x_train = samples['RGB'].to(device)
y_train = samples['groundtruth'].to(device)
pred_depth = model.forward(x_train)
valid_mask = y_train != 0 #### Here is masking
valid_gt_depth = y_train[valid_mask]
valid_pred_depth = pred_depth[valid_mask]
loss = loss_RMSE(valid_pred_depth, valid_gt_depth)
【问题讨论】:
-
我已经有一个多月没有解决同样的问题了。如果你知道,请帮忙。
-
@prost “直接添加图片”是什么意思?我的实验结果真的很糟糕,你有什么办法解决这个问题吗?
-
对我来说,现在你的帖子看起来好多了。
标签: deep-learning pytorch depth supervised-learning kitti