解读Depth Map Prediction from a Single Image using a Multi-Scale Deep Network (6)

解读Depth Map Prediction from a Single Image using a Multi-Scale Deep Network (6)


上次参照大牛的博客,对CNN的前向计算和反向传播有了很深的了解,并且分析了部分的python代码

今天,结束了CNN的学习,开始回归到论文中了

之前我们讲了Global Coarse Scale Network以及Local Fine Scale Network的含义,今天来看Scale Invariant Error

即作者自己定义了一个误差函数,并且这个误差函数有一个等价的形式


懒得敲公式了,那就截一个图


上诉讨论的衡量试验结果的误差公式,可以用来训练网络

In addition to performance evaluation, we also tried using the scale-invariant error as a training loss


实验过程中,会出现的一些状况以及解决办法:

During training, most of the target depth maps will have some missing values, particularly near object

boundaries, windows and specular surfaces. We deal with these simply by mistaking them out and evaluating

the loss only on valid points


对CNN进行训练的时候,需要对数据集(各种图片)进行一些处理,即Data Augmentation

对输入的照片进行一些操作,确保他们的算法具有鲁棒型:

1, Scale: Input and target images are scaled by s#[1, 1.5], and the depths are divided by s

2, Rotation: Input and target are rotated by r#[-5,5] degrees

3, Translation: Input and target are randomly cropped to the sizes

4, Color: Input values are multiplied globally by a random RGB value c#[0.8, 1.2]3

5, Filps: Input and target are horizontally flipped with 0.5 probability

当然在做这些操作的时候,相应的depth图像也会做出调整


今天的讨论主要明白了几件事;

1,CNN训练的损失函数,以及等价形式的解释

2,训练集的一些操作,加强算法的鲁棒性

3,实验时的一些小问题解决方法


实验数据集:

1,NYU Depth v2

2,KITTI


下次再讲处理实验集的方法

论文的分析部分也会到尾声,之后会分析作者的工程代码



猜你喜欢

转载自blog.csdn.net/qq_39732684/article/details/80605106