一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种单目深度估计模型学习性能的不确定性量化方法

2022-07-23 13:08:01 来源:中国专利 TAG:


1.本发明涉及单目深度估计领域,提供了一种单目深度估计模型学习性能的不确定性量化方法,具体包括不确定性测量策略、不确定性引导策略和不确定性后处理策略。


背景技术:

2.深度估计是诸多复杂计算机视觉任务的重要一环,例如增强现实中的虚拟物体摆放和碰撞检测,场景重建中的遮挡判定,自动驾驶中的距离检测等。深度估计的方法分为两类,一类是使用lidar和tof这样的工业测距设备进行主动测距,另一类是结合消费级相机和基于机器学习的方法来进行深度估计。工业测距设备通过计量光的飞行时间来计算距离,抗干扰性强,易于标定,精度较高,但是设备成本高昂,工作环境受限,传感器自带噪声并且功耗高,生成深度图的分辨率和帧率都十分有限。基于机器学习的深度估计方法则不需要复杂的传感器,成本较低,并且可以提供更高分辨率和帧率的深度图。
3.基于机器学习的深度估计方法分为两类:传统方法和基于深度学习的方法。传统方法基于多视图几何或者机器学习模型对单幅图像进行深度估计。代表方法有双目立体匹配,运动恢复结构等。传统方法主要通过视图间的特征点匹配来估计深度,生成的深度图较为稀疏并且计算量较大。随着深度学习的发展,单目深度估计逐渐成为深度估计领域中的一个热门研究课题。
4.单目深度估计是给定一幅rgb图像,通过单目深度网络估算出对应的稠密深度图。单目深度估计的应用前景广泛,它可以缓解无人驾驶对于昂贵的激光雷达传感器的需求,同时也可以用于支持新的单视图应用,如图像编辑和ar合成等。基于深度学习的单目深度估计方法可以分为两类:有监督学习方法和自监督学习方法。有监督学习方法构建网络直接从大量的数据中学习空间距离和rgb特征之间的关系,但是具有高质量真实深度信息gt的数据集往往难以获取。自监督学习方法基于双目立体几何或sfm原理,通过光度重构损失函数来估算深度信息。自监督学习方法的训练不依赖真实的深度信息,训练时只使用rgb图像。根据训练方法的不同,可将训练流程分为单目视频、立体图像对和混合数据流三种训练范式。目前自监督学习方法的精度与有监督学习方法的精度相比还是存在一定的差距,如何进一步提升自监督单目深度估计网络的精度受到越来越多的关注。
5.自监督单目深度估计的核心损失函数是光度重构损失。该损失函数通过计算参考图像与深度投影图像之间的光度距离来约束网络输出正确的深度图。该损失函数通过计算目标图像与深度投影图像之间的光度距离来约束网络输出正确的深度图。但是光度重构损失函数存在一个很严重的缺陷,即在低纹理区域、运动物体和遮挡区域等估算的深度值具有歧义性,容易使网络陷入局部最优。因此,自监督单目深度网络的训练较为复杂,精度有限。因此仅仅使用光度重构损失函数进行约束是不够的。
6.现有工作为了提高自监督单目深度网络的深度估算精度,除了优化基本的光度重构损失以外,还采用了辅助性网络模块,预处理以及后处理等技术。然而,这些技术还不足以解决自监督单目深度估计网络在训练过程遇到的所有问题。因为现有改进方法都依赖于
明确的应用前提,训练集中弱纹理区域、光照变化、运动物体和遮挡区域对模型的负面影响始终不能完全消除。现有的单目深度估计网络仍然是欠约束的。网络的欠约束问题表现为深度估计的不确定性。已有工作开始从不确定性度量的角度对单目深度估计展开研究。自监督单目深度估计的不确定性来源有两个:数据集的不确定性和网络自身结构的不确定性。二者分别从训练集所包含噪声和模型自身学习能力这两个方面来估算网络输出深度图的不确定性。
7.自监督单目深度网络在训练过程中由于约束不足导致估算的深度具有歧义性,因此不确定性度量是一个非常重要的研究方向。自监督单目深度估计的不确定性度量对深度图赋予一个不确定性图。不确定性信息指出了深度图中可能存在错误的区域,既可以用来对深度图进行修复,也可以用来引导深度图的使用。因此不确定性度量对于基于单目深度图的复杂任务具有重要意义。


技术实现要素:

8.为了克服上述不足,本发明提供了一种单目深度估计模型学习性能的不确定性量化方法,基于集成的不确定性后处理策略,对深度图进行修正,以提升最终深度估计的精度和鲁棒性。
9.本发明所设计的用于提升自监督单目深度估计模型学习性能的不确定性量化方法,具体包括不确定性测量策略、不确定性引导策略和不确定性后处理策略。包含以下步骤:步骤1,选择基线模型;步骤2,基线模型进行自监督训练;步骤3,分别基于快照策略snapshot策略和暹罗策略siam计算单目深度模型方差,差越大的对应着不确定性越高,方差大于阈值的区域判定为不确定性区域;步骤4,基于步骤3中计算的不确定性进行不确定性区域评估,判定不确定性高于阈值的区域为不确定性区域,同时赋予高训练权重;步骤5,训练完成后分别基于snapshot策略和siam策略构建模型集合;步骤6,使用基于集成的不确定性后处理策略对深度图进行后处理;所述步骤1具体如下:snapshot策略不对基线模型做处理。siam策略基于基础网络构建子网络完全一样的双网络结构。
10.所述步骤3具体如下:snapshot策略通过计算相邻迭代周期保存模型的方差来量化不确定性。siam策略通过计算当前迭代周期内两个子网络的方差来量化不确定性。
11.所述步骤4具体如下:基于步骤3中计算的不确定性进行不确定性区域评估,判定不确定性高于阈值的区域为不确定性区域,不确定性高于均值的区域判定为不确定性区域,赋予高的训练权重,不确定性越高,训练权重越大。
12.所述步骤5具体如下:snapshot策略通过选取模型迭代过程中倒数5个迭代周期保存的模型构建集合。siam策略通过选取模型迭代过程中最后1个迭代周期保存的两个子模型构建集合。
13.所述步骤6具体如下:snapshot策略构建的集合,对于不确定性高的区域,使用最后一个迭代周期保存的模型进行深度估计,对于不确定性低的区域,使用集合均值进行估
计。siam策略构建的集合,对于不确定性高的区域,使用性能较好的子模型进行深度估计,对于不确定性低的区域,使用集合均值进行估计。
14.进一步地,所述步骤1中选择monodepth2和hints两个基线模型。
15.进一步地,所述步骤3的具体过程为:snapshot通过计算相邻迭代周期保存模型的方差来量化不确定性, siam通过计算当前迭代周期内两个子网络的方差来量化不确定性;snapshot策略和siam策略按照如下方式来计算不确定性;基线模型γ在训练到第ith个迭代周期,对于输入图像i生成深度图所对应的不确定mask um,函数u
m=
um(),其公式如下:其中,f表示用于计算不确定性的模型集合,集合成员在snapshot和siam两种策略当中是不同的,f
snapshot
包含n个相邻的迭代周期保存的模型,但是不包含正在训练的第i个模型;f
siam
只包含由基线模型构造的两个孪生子网络,di为基线模型γ在第i个迭代周期h的生成的深度图,和是f
snapshot
和f
siam
对应模型集合生成深度图的平均值, 的分辨率与输入图像一致。
16.进一步地,所述步骤4中均值计算公式如下:其中cell是um中的所有像素的集合,um(cell)用于获取每个像素对应的不确定性值,|um|表示um中的所有像素的数目,um的分辨率与深度图还有输入图像的分辨率都是一致的。
17.更进一步地,步骤4中高于阈值的区域为不确定性区域,其处理过程为:对于不确定的像素对应的深度值计算的损失,要额外乘以惩罚系数,惩罚系数的大小与不确定程度成正相关,l是基线模型γ的损失函数,它将作用于输入图像对应深度图的每个像素计算光度重构损失,在添加不确定性引导机制后,新的损失函数l '可以表示为:其中,λ是一个经验参数,用来控制给不确定性像素多少权重。
18.再进一步地,所述步骤6的具体过程为:当snapshot策略或siam策略完成训练时,基于集成的不确定性后处理策略根据这两种策略构建集合方式的不同对应构建不同的集成策略,
其中,f表示用于计算不确定性的模型集合,γ '表示snapshot中的最后一个迭代周期保存的模型或siam中两个子网络中性能较优的一个;是由生成的深度图;对应或。
19.本发明的优点在于:提出的不确定性量化方法不需要添加网络模块,避免了对基线模型的大幅修改。因此该策略可以便捷地推广到现有自监督单目深度估计模型当中。选择目前性能良好的经典模型monodepth2和hints作为基线模型,通过综合比较和消融实验来验证本发明策略的有效性。
20.提出一种用于提升自监督单目深度估计模型学习性能的不确定性量化方法,从学习策略方面提升现有自监督单目深度估计模型的深度估计性能而不需要对策略应用的模型本身网络结构进行修改。基于深度学习的单目深度估计是一个二维像素回归问题,单目深度估计模型根据输入rgb图片估算出对应的深度图。自监督单目深度估计模型的核心损失函数是光度重构损失函数。该损失函数通过计算目标图像与深度投影图像之间的光度距离来约束网络输出正确的深度图。但是光度重构损失函数存在一个很严重的缺陷,即在低纹理区域、运动物体和遮挡区域等估算的深度值具有歧义性,容易使网络陷入局部最优。现有工作对光度重构损失函数做了一定的改进但是仍然不能完全消除该损失函数存在的缺陷。所以现有的自监督单目深度估计模型的损失优化函数是欠约束的,反映到对训练集场景中不同区域,深度神经网络的学习收敛能力是不同的。基于此事实现状,本发明进一步观察到:对于训练集相同场景中损失约束良好的区域,模型易于收敛,并在不同迭代周期的输出深度值相对稳定,表现为确定性;对于训练集相同场景中损失欠约束的区域,模型难以收敛,并在不同迭代周期的输出深度值不稳定,表现为不确定性。本发明从模型自身的学习特性出发,进行不确定性量化,同时基于不确定性信息提升学习引导和深度图后处理,而不需要添加额外的辅助模块。
21.不同于通过改变整体模型参数的不确定性评估方法,本发明从模型自身学习的特点出发,基于快照策略snapshot和暹罗策略siam探究确定性和不确定性之间的学习难度差异。snapshot策略通过计算相邻迭代周期保存模型的方差来量化不确定性,siam策略通过计算当前迭代周期内两个暹罗子网络的方差来量化不确定性。模型对于约束良好的区域在迭代的过程中会快速收敛,因此方差较小。而对于欠约束的区域,模型估算的深度会具有歧义性,这种歧义性会导致模型对该区域估算的深度值具有较大的方差。因此本发明用模型的方差来度量不确定性,方差越大不确定性越高。模型的方差是指不同模型对于相同输入的输出方差,基于模型方差生成的不确定 是二维的并且与训练rgb图片分辨率相同,可以精确引导基线模型对于每个像素点的学习。
附图说明
22.图1是本发明的总体流程图。
23.图2是本发明的snapshot策略流程图。
24.图3是本发明的siam策略流程图。
具体实施方式
25.下面通过具体实施例和附图对本发明作进一步的说明。本发明的实施例是为了更好地使本领域的技术人员理解本发明,并不对本发明作任何的限制。
26.本发明提供了一种单目深度估计模型学习性能的不确定性量化方法,主要包括不确定性测量策略、不确定性引导策略和不确定性后处理策略。具体含以下步骤:步骤1,本发明分别选择monodepth2和hints两个基线模型进行试验。其中,monodepth2是一个性能良好的自监督单目深度模型, hints是一个性能良好的半监督模型,以这两个基线模型作为代表验证本发明可以推广到其他基线模型当中去。snapshot策略不对基线模型做处理。siam策略基于基础网络构建子网络完全一样的双网络结构。
27.步骤2,保持基线模型的原有参数进行训练。
28.步骤3,分别基于快照策略snapshot策略和暹罗策略siam计算单目深度模型方差,量化不确定性mask。传统的snapshot策略是一种集成多个模型来求解单值优化问题的方法,本发明针对提出了新的snapshot策略。为了将snapshot进行扩展,使之适用于二维图像的深度估计任务,需要准确区分确定性像素和不确定性像素。本发明选择连续迭代周期的保存模型作为一个集合,并判断当前输入图像当中哪些像素对应的深度值稳定和哪些像素对应的深度值不稳定,即深度值波动是否大于方差的均值。根据相邻迭代周期模型对良好约束的区域易于收敛,预测能力相近,欠约束区域估算深度存在歧义性,输出波动较大的特点,提出了新的snapshot策略。传统的siam策略通过构建双网络结构来分解复杂的目标任务。本发明基于网络模型的垂直方差进行考虑,结合不确定性问题构建新的siam网络。本发明构建的siam网络中两个子网络的网络结构完全相同,两个子网络同时进行训练,并在每个迭代周期中根据两个子网络对于同一输入图像输出深度图的方差,来判定深度图中的确定性区域与不确定性区域。
29.本发明的snapshot策略通过计算相邻迭代周期保存模型的方差来量化不确定性。siam策略通过计算当前迭代周期内两个子网络的方差来量化不确定性。snapshot策略和siam策略按照如下方式来计算不确定性。snapshot和siam按照如下方式来计算不确定性。基线模型γ在训练到第i
th
个迭代周期,对于输入图像i生成深度图所对应的不确定mask um,函数u
m=
um(),其公式如下:其中,f表示用于计算不确定性的模型集合,集合成员在snapshot和siam两种策略当中是不同的。f
snapshot
包含n个相邻的迭代周期保存的模型,但是不包含正在训练的第i个模型。n对应着集合的规模,如果模型集合规模较小则难以有效统计模型的水平方差,模型集合过大则会引入较多的方差噪声同时也会生成较大的计算负担。本发明通过收集一个小
的区间来确定经验最优值,在平衡信噪比和计算量两种情况下找到一个合适的区间。在本发明的实验当中,设置n=5并取得了最优的结果。f
siam
只包含由基线模型构造的两个孪生子网络。di为基线模型γ在第i个迭代周期的生成的深度图。和是f
snapshot
和f
siam
对应模型集合生成深度图的平均值。um的分辨率与输入图像一致。
30.步骤4,基于步骤3所得到的不确定性掩膜mask um,,选择不确定性mask um中的均值作为阈值来区分不确定性区域,不确定性mask中高于均值的区域判定为不确定性区域,赋予高的训练权重,不确定性越高,训练权重越大。均值计算公式如下:其中cell是um中的所有像素的集合。um(cell)用于获取每个像素对应的不确定性值。|um|表示um中的所有像素的数目,um的分辨率与深度图还有输入图像的分辨率都是一致的。如果cell中某一像素的不确定性值小于等于阈值,则本发明认为该像素对应的深度值是确定的,该像素所在的区域也是光度重构损失当中约束完善的区域。相反,如果cell中某一像素的不确定性值高于阈值,则本发明认为该像素对应的深度值是不确定的,该像素所在的区域也是光度重构损失当中欠约束的区域。对于不确定的像素对应的深度值计算的损失,要额外乘以惩罚系数。惩罚系数的大小与不确定程度成正相关。l是基线模型γ的损失函数,它将作用于输入图像对应深度图的每个像素计算光度重构损失。在添加不确定性引导机制后,新的损失函数l '可以表示为:其中, 是一个经验参数,用来控制给不确定性像素多少权重。本发明枚举多个λ值来确定最优的参数,发现0.8~1.2是最优区间。为了降低计算成本和简化参数设置,本发明在后续的所有实验中设置λ=1。
31.步骤5,snapshot策略通过选取模型迭代过程中倒数n个迭代周期保存的模型构建集合。siam策略通过选取模型迭代过程中最后1个迭代周期保存的两个子模型构建集合。
32.步骤6,当snapshot策略或siam策略完成训练时,基于集成的不确定性后处理策略根据这两种策略构建集合方式的不同对应构建不同的集成策略。
33.其中,f表示用于计算不确定性的模型集合,γ '表示snapshot中的最后一个迭代周期保存的模型或siam中两个子网络中性能较优的一个;是由生成的深度图;对应或。首先计算 生成深度图的不确定性图um。为um中的均值。um中不确定性小于等于阈值所对应的像素,表示网络学习的很好,但是可能存在过拟合的现象。提高鲁棒性,减轻过拟合的影响,例如纹理复制;本发明用作为最后的深度输出d
final
。中不确定性高于阈值所对应的像素,表示网络在学习的过程中缺乏有效的约束,因此有较大的波动,存在欠拟合现象,本发明用作为最后的深度输出d
final
。因为是集合f
snapshot
或f
siam
里最接近理想最优点的模型了。
34.本发明从不确定性度量的角度出发,对自监督单目深度估计展开研究。基于深度学习的单目深度估计是一个二维像素回归问题,单目深度估计模型根据输入rgb图片估算出对应的深度图。由于现有的自监督单目深度估计模型的损失优化函数是欠约束的,反映到对训练集场景中不同区域,深度神经网络的学习收敛能力是不同的。对于训练集相同场景中损失约束良好的区域,模型易于收敛,并在不同迭代周期的输出深度值相对稳定,表现为确定性;对于训练集相同场景中损失欠约束的区域,模型难以收敛,并在不同迭代周期的输出深度值不稳定,表现为不确定性。本发明从模型自身的学习特性出发,进行不确定性量化,在不添加额外的辅助模块的前提下,基于不确定性信息改进模型性能。
35.相比于单一网络模型的研究,本发明提出了通用的不确定性量化方法,具体包括不确定性测量策略、不确定性引导策略和不确定性后处理策略。具体来说,不同于通过改变整体模型参数的不确定性评估方法,本发明从模型自身学习的特点出发,基于快照策略snapshot和暹罗策略siam探究确定性和不确定性之间的学习难度差异,二者分别通过计算连续迭代周期之间的模型方差和暹罗网络之内的模型方差来度量不确定性。模型对于约束良好的区域在迭代的过程中会快速收敛,因此方差较小。而对于欠约束的区域,模型估算的深度会具有歧义性,这种歧义性会导致模型对该区域估算的深度值具有较大的方差。因此本发明用模型的方差来度量不确定性,方差越大不确定性越高。模型的方差是指不同模型对于相同输入的输出方差。然后利用不确定性引导基线模型学习,加强基线模型对场景中高不确定性区域的学习。最后,本发明提出了一种基于集成的不确定性后处理策略,对深度图进行修正,以提升最终深度估计的精度和鲁棒性。
36.应当理解的是,这里所讨论的实施方案及实例只是为了说明,对本领域技术人员来说,可以加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献