CN108961327B - 一种单目深度估计方法及其装置、设备和存储介质 - Google Patents

一种单目深度估计方法及其装置、设备和存储介质 Download PDF

Info

Publication number
CN108961327B
CN108961327B CN201810496541.6A CN201810496541A CN108961327B CN 108961327 B CN108961327 B CN 108961327B CN 201810496541 A CN201810496541 A CN 201810496541A CN 108961327 B CN108961327 B CN 108961327B
Authority
CN
China
Prior art keywords
network model
binocular
trained
depth
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810496541.6A
Other languages
English (en)
Other versions
CN108961327A (zh
Inventor
郭晓阳
李鸿升
伊帅
任思捷
王晓刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Sensetime Technology Co Ltd
Original Assignee
Shenzhen Sensetime Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Sensetime Technology Co Ltd filed Critical Shenzhen Sensetime Technology Co Ltd
Priority to CN201810496541.6A priority Critical patent/CN108961327B/zh
Publication of CN108961327A publication Critical patent/CN108961327A/zh
Priority to PCT/CN2019/076247 priority patent/WO2019223382A1/zh
Priority to SG11202008787UA priority patent/SG11202008787UA/en
Priority to JP2020546428A priority patent/JP7106665B2/ja
Application granted granted Critical
Publication of CN108961327B publication Critical patent/CN108961327B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Abstract

本发明实施例公开了一种单目深度估计方法,该方法包括:获取待处理图像;将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;输出所述待处理图像的分析结果。本发明实施例同时还公开了一种单目深度估计装置、设备和存储介质。

Description

一种单目深度估计方法及其装置、设备和存储介质
技术领域
本发明涉及人工智能领域,尤其涉及一种单目深度估计方法及其装置、设备和存储介质。
背景技术
单目深度估计是计算机视觉中的重要问题,单目深度估计的具体任务指的是预测一张图片中每个像素点的深度。其中,由每个像素点的深度值组成的图片又称为深度图。单目深度估计对于自动驾驶中的障碍物检测、三维场景重建,场景立体分析有着重要的意义。另外单目深度估计可以间接地提高其他计算机视觉任务的性能,比如物体检测、目标跟踪与目标识别。
目前存在的问题是训练用于单目深度估计的神经网络需要大量标记的数据,但是获取标记数据成本很大。在室外环境下标记数据可以通过激光雷达获取,但是获取的标记数据是非常稀疏的,用这样的标记数据训练得到的单目深度估计网络没有清晰的边缘以及不能捕捉细小物体的正确深度信息。
发明内容
有鉴于此,本发明实施例为解决现有技术中存在的至少一个问题而提供一种单目深度估计方法及其装置、设备和存储介质。
本申请实施例的技术方案是这样实现的:
本发明实施例提供一种单目深度估计方法,所述方法包括:
获取待处理图像;
将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;
输出所述待处理图像的分析结果。
在本发明实施例中,所述第一双目匹配神经网络模型的训练过程,包括:
根据获取的合成样本数据训练第二双目匹配神经网络模型;
根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型。
在本发明实施例中,所述方法还包括:
获取有深度标记的合成的双目图片作为所述合成样本数据,其中,所述合成的双目图片包括合成的左图和合成的右图。
在本发明实施例中,所述根据获取的合成样本数据训练第二双目匹配神经网络模型,包括:
根据所述合成的双目图片对第二双目匹配神经网络模型进行训练,得到训练后的第二双目匹配神经网络模型,其中,所述训练后的第二双目匹配神经网络模型的输出为视差图和遮挡图,所述视差图描述了所述左图中每个像素点与所述右图中对应的像素点的视差距离,所述视差距离以像素为单位;所述遮挡图描述了所述左图中每个像素点在所述右图中对应的像素点是否被物体遮挡。
在本发明实施例中,所述根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型,包括:
根据获取的带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在本发明实施例中,所述根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型,还包括:
根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在本发明实施例中,所述根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型,包括:
使用损失函数,根据所述不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在本发明实施例中,所述方法还包括:
利用公式Lstereo-unsupft=Lphoto1Labs2Lrel确定所述损失函数,其中,所述Lstereo-unsupft表示损失函数,所述Lphoto表示重建误差,所述Labs表示所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,所述Lrel表示约束所述第一双目匹配网络模型的输出梯度与所述训练后的第二双目匹配网络模型的输出梯度一致,所述γ1和γ2表示强度系数。
在本发明实施例中,所述方法还包括:
利用公式
Figure GDA0001772897970000031
或,
Figure GDA0001772897970000032
确定所述重建误差,其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000033
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure GDA0001772897970000034
表示不带深度标记的真实双目数据中的左图的像素值,所述
Figure GDA0001772897970000035
表示不带深度标记的真实双目数据中的右图的像素值,所述
Figure GDA0001772897970000036
表示将右图采样后合成的图片的像素值,所述
Figure GDA0001772897970000037
表示将左图采样后合成的图片的像素值,所述
Figure GDA0001772897970000038
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000039
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标。
在本发明实施例中,所述方法还包括:
利用公式
Figure GDA00017728979700000310
或,
Figure GDA0001772897970000041
确定所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000042
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure GDA0001772897970000043
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000044
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000045
表示左图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000046
表示右图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标,所述γ3表示强度系数。
在本发明实施例中,所述方法还包括:
利用公式
Figure GDA0001772897970000047
或,
Figure GDA0001772897970000048
确定所述第一双目匹配网络模型的输出梯度与所述第二双目匹配网络模型的输出梯度一致,其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000049
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure GDA00017728979700000410
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure GDA00017728979700000411
表示左图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述
Figure GDA00017728979700000412
表示右图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述ij表示像素点的像素坐标。
在本发明实施例中,所述带深度标记的真实双目数据包括左图和右图,对应地,所述单目深度估计网络模型的训练过程,包括:
获取所述带深度标记的真实双目数据中的左图或右图作为训练样本;
根据所述带深度标记的真实双目数据中的左图或右图对单目深度估计网络模型进行训练。
在本发明实施例中,所述不带深度标记的真实双目数据包括左图和右图,对应地,所述单目深度估计网络模型的训练过程,包括:
将所述不带深度标记的真实双目数据输入到所述第一双目匹配神经网络模型,得到对应的视差图;
根据所述对应的视差图、拍摄所述不带深度标记的真实双目数据的摄像机的镜头基线距离和拍摄所述不带深度标记的真实双目数据的摄像机的镜头焦距,确定所述视差图对应的深度图;
将所述不带深度标记的真实双目数据中的左图或右图作为样本数据,根据所述视差图对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
在本发明实施例中,所述待处理图像的分析结果包括所述单目深度估计网络模型输出的视差图,对应地,所述方法还包括:
根据所述单目深度估计网络模型输出的视差图、拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头基线距离和拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头焦距,确定所述视差图对应的深度图;
输出所述视差图对应的深度图。
本发明实施例提供一种单目深度估计装置,所述装置包括:获取模块、执行模块和输出模块,其中:
所述获取模块,用于获取待处理图像;
所述执行模块,用于将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;
所述输出模块,用于输出所述待处理图像的分析结果。
在本发明实施例中,所述装置还包括:
第一训练模块,用于根据获取的合成样本数据训练第二双目匹配神经网络模型;
第二训练模块,用于根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型。
在本发明实施例中,所述装置还包括:
第一获取模块,用于获取有深度标记的合成的双目图片作为所述合成样本数据,其中,所述合成的双目图片包括合成的左图和合成的右图。
在本发明实施例中,所述第一训练模块,包括:
第一训练单元,用于根据所述合成的双目图片对第二双目匹配神经网络模型进行训练,得到训练后的第二双目匹配神经网络模型,其中,所述训练后的第二双目匹配神经网络模型的输出为视差图和遮挡图,所述视差图描述了所述左图中每个像素点与所述右图中对应的像素点的视差距离,所述视差距离以像素为单位;所述遮挡图描述了所述左图中每个像素点在所述右图中对应的像素点是否被物体遮挡。
在本发明实施例中,所述第二训练模块,包括:
第二训练单元,用于根据获取的带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在本发明实施例中,所述第二训练单元,还用于:
根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在本发明实施例中,所述第二训练单元,包括:
第二训练部件,用于使用损失函数,根据所述不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在本发明实施例中,所述装置还包括:
第一确定模块,用于利用公式Lstereo-unsupft=Lphoto1Labs2Lrel确定所述损失函数,其中,所述Lstereo-unsupft表示损失函数,所述Lphoto表示重建误差,所述Labs表示所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,所述Lrel表示约束所述第一双目匹配网络模型的输出梯度与所述训练后的第二双目匹配网络模型的输出梯度一致,所述γ1和γ2表示强度系数。
在本发明实施例中,所述装置还包括:
第二确定模块,用于利用公式
Figure GDA0001772897970000071
或,
Figure GDA0001772897970000072
确定所述重建误差,其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000073
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure GDA0001772897970000074
表示不带深度标记的真实双目数据中的左图的像素值,所述
Figure GDA0001772897970000075
表示不带深度标记的真实双目数据中的右图的像素值,所述
Figure GDA0001772897970000076
表示将右图采样后合成的图片的像素值,所述
Figure GDA0001772897970000077
表示将左图采样后合成的图片的像素值,所述
Figure GDA0001772897970000078
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000079
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标。
在本发明实施例中,所述装置还包括:
第三确定模块,用于利用公式
Figure GDA00017728979700000710
或,
Figure GDA00017728979700000711
确定所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,其中,所述N表示图片中像素的个数,所述
Figure GDA00017728979700000712
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure GDA00017728979700000713
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure GDA00017728979700000714
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000081
表示左图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000082
表示右图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标,所述γ3表示强度系数。
在本发明实施例中,所述装置还包括:
第四确定模块,用于利用公式
Figure GDA0001772897970000083
或,
Figure GDA0001772897970000084
确定所述第一双目匹配网络模型的输出梯度与所述第二双目匹配网络模型的输出梯度一致,其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000085
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure GDA0001772897970000086
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure GDA0001772897970000087
表示左图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述
Figure GDA0001772897970000088
表示右图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述ij表示像素点的像素坐标。
在本发明实施例中,所述带深度标记的真实双目数据包括左图和右图,对应地,所述装置还包括:
第三训练模块,用于获取所述带深度标记的真实双目数据中的左图或右图作为训练样本;根据所述带深度标记的真实双目数据中的左图或右图对单目深度估计网络模型进行训练。
在本发明实施例中,所述不带深度标记的真实双目数据包括左图和右图,对应地,所述装置还包括:
第三训练模块,用于将所述不带深度标记的真实双目数据输入到所述第一双目匹配神经网络模型,得到对应的视差图;根据所述对应的视差图、拍摄所述不带深度标记的真实双目数据的摄像机的镜头基线距离和拍摄所述不带深度标记的真实双目数据的摄像机的镜头焦距,确定所述视差图对应的深度图;将所述不带深度标记的真实双目数据中的左图或右图作为样本数据,根据所述视差图对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
在本发明实施例中,所述待处理图像的分析结果包括所述单目深度估计网络模型输出的视差图,对应地,所述装置还包括:
第五确定模块,用于根据所述单目深度估计网络模型输出的视差图、拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头基线距离和拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头焦距,确定所述视差图对应的深度图;
第一输出模块,用于输出所述视差图对应的深度图。
本发明实施例提供一种单目深度估计设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如上所述单目深度估计方法中的步骤。
本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如上所述单目深度估计方法中的步骤。
本发明实施例提供一种单目深度估计方法及其装置、设备和存储介质,其中,获取待处理图像;将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;输出所述待处理图像的分析结果;如此,能够使用更少或者不使用有深度图标记的数据训练单目深度估计网络,并且提出了一种更有效的无监督微调双目视差网络的方法,从而间接提高了单目深度估计的效果。
附图说明
图1A为本发明实施例单目深度估计方法的实现流程示意图一;
图1B为本发明实施例单个图片深度估计示意图;
图1C为本发明实施例训练第二双目匹配神经网络模型示意图;
图1D为本发明实施例训练单目深度估计网络模型示意图;
图1E为本发明实施例损失函数相关图片示意图;
图2A为本发明实施例单目深度估计方法的实现流程示意图二;
图2B为本发明实施例损失函数效果示意图;
图2C为本发明实施例可视化深度估计结果示意图;
图3为本发明实施例单目深度估计装置的组成结构示意图;
图4为本发明实施例单目深度估计设备的一种硬件实体示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对发明的具体技术方案做进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
一般地,利用深度神经网络来预测单张图片的深度图,仅需要一张图片即可以对图片对应的场景进行三维建模,得到每个像素点的深度。本发明实施例提出的单目深度估计方法使用神经网络训练得到,训练数据来自双目匹配输出的视差图数据,而不需要昂贵的深度采集设备如激光雷达。提供训练数据的双目匹配算法也是通过神经网络实现,该网络通过渲染引擎渲染的大量虚拟双目图片对进行预训练即可达到很好的效果,另外可以在真实数据上再进行微调训练以达到更好的效果。
下面结合附图和实施例对本发明的技术方案进一步详细阐述。
本发明实施例提供一种单目深度估计方法,该方法应用于计算设备,该方法所实现的功能可以通过服务器中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该服务器至少包括处理器和存储介质。图1A为本发明实施例单目深度估计方法的实现流程示意图一,如图1A所示,该方法包括:
步骤S101、获取待处理图像;
这里,可以由移动终端来获取待处理图像,所述待处理图像,可以包含任意场景的图片。
一般来说,移动终端在实施的过程中可以为各种类型的具有信息处理能力的设备,例如所述移动终端可以包括手机、个人数字助理(Personal Digital Assistant,PDA)、导航仪、数字电话、视频电话、智能手表、智能手环、可穿戴设备、平板电脑等。服务器在实现的过程中可以是移动终端如手机、平板电脑、笔记本电脑,固定终端如个人计算机和服务器集群等具有信息处理能力的计算设备。
步骤S102、将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;
本发明实施例中,所述单目深度估计网络模型主要是通过以下三个步骤获取的:第一步是使用渲染引擎渲染的合成双目数据预训练一个双目匹配神经网络;第二步是使用真实场景的数据对第一步得到的双目匹配神经网络进行微调训练;第三步是使用第二步得到的双目匹配神经网络对单目深度估计网络提供监督,从而训练得到单目深度估计网络。
现有技术中,单目深度估计一般使用大量的真实标记数据进行训练,或者使用无监督的方法训练单目深度估计网络。但是,大量的真实标记数据获取成本很高,直接用无监督的方法训练单目深度估计网络又无法处理遮挡区域的深度估计,得到的效果较差。而本发明中所述单目深度估计网络模型的样本数据来自第一双目匹配神经网络模型输出的视差图,也就是说,本发明利用了双目视差来指导单目深度的预测。因此,本发明中的方法无需大量的标记数据,并且可以得到较好的训练效果。
步骤S103、输出所述待处理图像的分析结果。
这里,所述待处理图像的分析结果,指的是所述待处理图像对应的深度图。获取待处理图像后,将所述待处理图像输入至经过训练得到的单目深度估计网络模型,所述单目深度估计网络模型一般输出的是所述待处理图像对应的视差图,而不是深度图;因此,还需要根据所述单目深度估计网络模型输出的视差图、拍摄待处理图像的摄像机的镜头基线距离和拍摄待处理图像的摄像机的镜头焦距,确定所述待处理图像对应的深度图。
图1B为本发明实施例单个图片深度估计示意图,如图1B所示,标号为11的图片11为待处理图像,标号为12的图片12为标号为11的图片11对应的深度图。
在实际应用中,可以将所述镜头基线距离和所述镜头焦距的乘积,与所述输出的待处理图像对应的视差图的比值,确定为所述待处理图像对应的深度图。
在本发明实施例提供的单目深度估计方法中,通过获取待处理图像;将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;输出所述待处理图像的分析结果;如此,能够使用更少或者不使用有深度图标记的数据训练单目深度估计网络,并且提出了一种更有效的无监督微调双目视差网络的方法,从而间接提高了单目深度估计的效果。
基于上述方法实施例,本发明实施例再提供一种单目深度估计方法,该方法包括:
步骤S111、获取有深度标记的合成的双目图片作为合成样本数据,其中,所述合成的双目图片包括合成的左图和合成的右图;
在其他实施例中,所述方法还包括:
步骤S11、通过渲染引擎构造虚拟3D场景;
步骤S12、通过两个虚拟的摄像机将所述3D场景映射成双目图片;
步骤S13、根据构造所述虚拟3D场景时的位置、构造所述虚拟3D场景时的方向和所述虚拟的摄像机的镜头焦距获取所述合成双目图片的深度数据;
步骤S14、根据所述深度数据标记所述双目图片,得到所述合成的双目图片。
步骤S112、根据获取的合成样本数据训练第二双目匹配神经网络模型;
这里,在实际应用中,所述步骤S112可以通过以下步骤实现:
步骤S1121、根据所述合成的双目图片对第二双目匹配神经网络模型进行训练,得到训练后的第二双目匹配神经网络模型,其中,所述训练后的第二双目匹配神经网络模型的输出为视差图和遮挡图,所述视差图描述了所述左图中每个像素点与所述右图中对应的像素点的视差距离,所述视差距离以像素为单位;所述遮挡图描述了所述左图中每个像素点在所述右图中对应的像素点是否被物体遮挡。
图1C为本发明实施例训练第二双目匹配神经网络模型示意图,如图1C所示,标号为11的图片11为合成的双目图片的左图,标号为12的图片12为合成的双目图片的右图,IL为标号为11的左图图片11中包含的所有像素点的像素值,IR为标号为12的右图图片12中包含的所有像素点的像素值;标号为13的图片13为第二双目匹配神经网络模型经过训练后输出的遮挡图,标号为14的图片14为第二双目匹配神经网络模型经过训练后输出的视差图,标号为15的图片15为第二双目匹配神经网络模型。
步骤S113、根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型;
这里,所述步骤S113可以通过两种方式实现,其中,
第一种实现方式按照以下步骤实现:
步骤S1131a、根据获取的带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
这里,获取的是带有深度标记的真实双目数据,这样,就可以直接用带有深度标记的真实双目数据,对步骤S112中训练后的第二双目匹配神经网络进行监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,进一步提高训练后的第二双目匹配神经网络模型的效果,得到第一双目匹配神经网络模型。
在这一部分中,双目视差网络需要对真实数据进行适配。可以使用真实的带有深度标记的双目数据,通过有监督的训练对双目视差网络直接进行微调训练调整网络权值。
第二种实现方式按照以下步骤实现:
步骤S1131b、根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
本发明实施例中,还可以使用不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。这里无监督训练指的是在没有深度数据标记的情况下,仅仅使用双目数据进行训练,可以使用无监督微调方法对此过程进行实现。
步骤S114、通过所述第一双目匹配神经网络模型输出的视差图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型;
这里,所述步骤S114以通过两种方式实现,其中,
第一种实现方式按照以下步骤实现:
步骤S1141a、获取所述带深度标记的真实双目数据中的左图或右图作为训练样本,其中,所述带深度标记的真实双目数据包括左图和右图;
步骤S1142a、根据所述带深度标记的真实双目数据中的左图或右图对单目深度估计网络模型进行训练。
这里,利用深度神经网络来预测单张图片的深度图,仅需要一张图片即可以对图片对应的场景进行三维建模,得到每个像素点的深度。因此,可以根据所述带深度标记的真实双目数据中的左图或右图对单目深度估计网络模型进行训练,其中,所述带深度标记的真实双目数据为步骤S1131a中使用的带深度标记的真实双目数据。
第二种实现方式按照以下步骤实现:
步骤S1141b、所述不带深度标记的真实双目数据输入到所述第一双目匹配神经网络模型,得到对应的视差图,其中,所述不带深度标记的真实双目数据包括左图和右图;
步骤S1142b、根据所述对应的视差图、拍摄所述不带深度标记的真实双目数据的摄像机的镜头基线距离和拍摄所述不带深度标记的真实双目数据的摄像机的镜头焦距,确定所述视差图对应的深度图;
步骤S1143b、所述不带深度标记的真实双目数据中的左图或右图作为样本数据,根据所述视差图对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
这里,利用深度神经网络来预测单张图片的深度图,仅需要一张图片即可以对图片对应的场景进行三维建模,得到每个像素点的深度。因此,可以根据步骤S1131b中使用的不带深度标记的真实双目数据中的左图或右图作为样本数据,也是步骤S1141b中使用的不带深度标记的真实双目数据中的左图或右图作为样本数据,根据步骤S1141b中输出的视差图对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型,得到训练后的单目深度估计网络模型。
图1D为本发明实施例训练单目深度估计网络模型示意图,如图1D所示,图(a)表示了将不带深度标记的真实双目数据输入到所述第一双目匹配神经网络模型,得到对应的标号为13的视差图图片13,其中,所述不带深度标记的真实双目数据包括标号为11的左图图片11和标号为12的右图图片12,标号为15的图片15为第一双目匹配神经网络模型。图1D中的图(b)表示了将所述不带深度标记的真实双目数据中的左图或右图作为样本数据,根据所述标号为13的视差图图片13对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型,其中所述样本数据经过所述单目深度估计网络模型的输出为标号为14的视差图图片14,标号为16的图片16为单目深度估计网络模型。
步骤S115、获取待处理图像;
这里,在得到训练后的单目深度估计网络模型后,就可以使用此单目深度估计网络模型。即利用此单目深度估计网络模型,获取待处理图像对应的深度图。
步骤S116、将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;
步骤S117、输出所述待处理图像的分析结果,其中,所述待处理图像的分析结果包括所述单目深度估计网络模型输出的视差图;
步骤S118、根据所述单目深度估计网络模型输出的视差图、拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头基线距离和拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头焦距,确定所述视差图对应的深度图;
步骤S119、输出所述视差图对应的深度图。
基于上述方法实施例,本发明实施例再提供一种单目深度估计方法,该方法包括:
步骤S121、获取有深度标记的合成的双目图片作为合成样本数据,其中,所述合成的双目图片包括合成的左图和合成的右图。
步骤S122、根据获取的合成样本数据训练第二双目匹配神经网络模型;
这里,使用合成数据用于训练第二双目匹配神经网络模型具有更好的泛化能力。
步骤S123、利用公式(1)确定所述损失函数;
Lstereo-unsupft=Lphoto1Labs2Lrel (1);
其中,所述Lstereo-unsupft表示本发明实施例提出的损失函数;所述Lphoto表示重建误差,所述Labs表示所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小;所述Lrel表示约束所述第一双目匹配网络模型的输出梯度与所述训练后的第二双目匹配网络模型的输出梯度一致;所述γ1和γ2表示强度系数。
这里,Labs和Lrel为正则项。
在其他实施例中,步骤S123中的公式(1)还可以通过以下步骤中的公式进行细化,即所述方法还包括:
步骤S1231、利用公式(2)或公式(3)确定所述重建误差;
Figure GDA0001772897970000171
Figure GDA0001772897970000172
其中,所述N表示图片中像素的个数;所述
Figure GDA0001772897970000173
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值;所述
Figure GDA0001772897970000174
表示不带深度标记的真实双目数据中的左图的像素值;所述
Figure GDA0001772897970000175
表示不带深度标记的真实双目数据中的右图的像素值;所述
Figure GDA0001772897970000176
表示将右图采样后合成的图片的像素值,即重建的左图;所述
Figure GDA0001772897970000177
表示将左图采样后合成的图片的像素值,即重建的右图;所述
Figure GDA0001772897970000178
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值;所述
Figure GDA0001772897970000179
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值;所述ij表示像素点的像素坐标;所述old表示训练后的第二双目匹配网络模型的输出;所述R表示右图或右图的相关数据,所述L表示左图或左图的相关数据;所述I表示图片像素点的RGB(Red Green Blue,红色、绿色和蓝色)值。
步骤S1232、利用公式(4)或公式(5)确定所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小;
Figure GDA00017728979700001710
Figure GDA0001772897970000181
其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000182
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure GDA0001772897970000183
表示样本数据中的左图经训练后的第二双目匹配网络输出的视差图的像素值,所述
Figure GDA0001772897970000184
表示样本数据中的右图经训练后的第二双目匹配网络输出的视差图的像素值,所述
Figure GDA0001772897970000185
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络输出的视差图的像素值,所述
Figure GDA0001772897970000186
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络输出的视差图的像素值,所述ij表示像素点的像素坐标,所述old表示训练后的第二双目匹配网络模型的输出,所述R表示右图或右图的相关数据,所述L表示左图或左图的相关数据,所述γ3表示强度系数。
步骤S1233、利用公式(6)或公式(7)确定所述第一双目匹配网络模型的输出梯度与所述第二双目匹配网络模型的输出梯度一致;
Figure GDA0001772897970000187
Figure GDA0001772897970000188
其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000189
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络输出的视差图的梯度,所述
Figure GDA00017728979700001810
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络输出的视差图的梯度,所述
Figure GDA00017728979700001811
表示样本数据中的左图经训练后的第二双目匹配网络输出的视差图的梯度,所述
Figure GDA00017728979700001812
表示样本数据中的右图经训练后的第二双目匹配网络输出的视差图的梯度,所述old表示训练后的第二双目匹配网络模型的输出,所述R表示右图或右图的相关数据,所述L表示左图或左图的相关数据。
步骤S124、使用损失函数(Loss),根据所述不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
这里,所述损失函数(Loss)利用了步骤S122中训练后的第二双目匹配神经网络的输出对微调训练进行正则化,避免了现有技术中的无监督微调普遍存在的预测变模糊的问题,提高了微调得到的第一双目匹配网络的效果,从而间接提高了第一双目匹配网络监督得到的单目深度网络的效果。
图1E为本发明实施例损失函数相关图片示意图,如图1E所示,图(a)为不带深度标记的真实双目数据的左图;图1E中的图(b)为不带深度标记的真实双目数据的右图;图1E中的图(c)为将图(a)和图(b)组成的不带深度标记的真实双目图片输入至经过训练后的第二双目匹配神经网络模型输出的视差图;图1E中的图(d)为将图(b)表示的右图进行采样后,结合图(c)表示的视差图,对左图进行重建后的图片;图1E中的图(e)为将图(a)表示的左图中的像素与图(d)表示的重建后的左图中的对应像素做差得到的图片,即左图的重建误差图;图1E中的图(f)为将图(a)和图(b)组成的不带深度标记的真实双目图片输入至经过训练后的第二双目匹配神经网络模型输出的遮挡图。其中,图(d)中所有的红框11表示所述重建后的左图与图(a)标识的真实左图有差异的部分,图(e)中所有的红框12表示所述重建误差图中有误差的部分,即被遮挡的部分。
这里,实现步骤S124中描述的用无监督微调训练双目视差网络时,需要使用右图对左图进行重建,但是有遮挡区域是无法重建正确的,因此,用遮挡图来清理这一部分的错误训练信号来提高无监督微调训练的效果。
步骤S125、通过所述第一双目匹配神经网络模型输出的视差图对所述单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
这里,所述单目深度估计网络模型的样本图片,可以是不带深度标记的真实双目数据中的左图,也可以是不带深度标记的真实双目数据中的右图。其中,如果使用左图作为样本图片,则通过公式(1)、公式(2)、公式(4)和公式(6)来确定损失函数;如果使用右图作为样本图片,则通过公式(1)、公式(3)、公式(5)和公式(7)来确定损失函数。
本发明实施例中,所述通过所述第一双目匹配神经网络模型输出的视差图对所述单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型,指的是通过所述第一双目匹配神经网络模型输出的视差图对应的深度图对所述单目深度估计网络模型进行监督,也即使提供监督信息,从而训练所述单目深度估计网络模型。
步骤S126、获取待处理图像;
步骤S127、将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;
步骤S128、输出所述待处理图像的分析结果,其中,所述待处理图像的分析结果包括所述单目深度估计网络模型输出的视差图。
步骤S129、根据所述单目深度估计网络模型输出的视差图、拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头基线距离和拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头焦距,确定所述视差图对应的深度图;
步骤S130、输出所述视差图对应的深度图。
本发明实施例中,当所述待处理图像为街景图片时,就可以使用所述训练后的单目深度估计网络模型预测所述街景图片的深度。
基于上述的方法实施例,本发明实施例再提供一种单目深度估计方法,图2A为本发明实施例单目深度估计方法的实现流程示意图二,如图2A所示,该方法包括:
步骤S201、使用渲染引擎渲染的合成数据训练双目匹配网络,得到双目图片的视差图;
这里,所述双目匹配网络的输入为:一对双目图片(包含左图和右图),所述双目匹配网络的输出为:视差图、遮挡图,即双目匹配网络使用双目图片作为输入,输出视差图和遮挡图。其中,视差图用于描述左图中每个像素点与右图中对应的像素点的视差距离,以像素为单位;遮挡图用于描述左图每个像素在右图中对应的像素点是否被其他物体遮挡。由于视角的变化,左图中的一些区域在右图中会被其他物体遮挡,遮挡图则是用于标记左图中的像素是否在右图中被遮挡。
这一部分,双目匹配网络使用计算机渲染引擎产生的合成数据进行训练,首先通过渲染引擎构造一些虚拟3D场景,然后通过两个虚拟的摄像机将3D场景映射成双目图片,从而获得合成数据,同时正确的深度数据和相机焦距等数据也可以从渲染引擎中得到,所以双目匹配网络可以直接通过这些标记数据进行监督训练。
步骤S202、利用损失函数,通过无监督微调方法在真实双目图片数据上对步骤S201得到的双目匹配网络进行微调;
在这一部分中,双目视差网络需要对真实数据进行适配。即使用不带深度标记的真实双目数据对双目视差网络进行无监督训练。这里无监督训练指的是在没有深度数据标记的情况下,仅仅使用双目数据进行训练。本发明实施例提出了一种新的无监督微调方法,即使用上述实施例中的损失函数进行无监督微调。本发明实施例提出的损失函数的主要目的是希望在不降低预训练效果的情况下在真实双目数据上对双目视差网络进行微调,微调过程中借助了步骤S201得到的预训练双目视差网络的初步输出进行指导和正则化。
图2B为本发明实施例损失函数效果示意图,如图2B所示,标号为21的图片21为使用现有技术中的损失函数时得到的视差图,标号为22的图片22为使用本发明实施例提出的损失函数时得到的视差图。现有技术的损失函数没有单独考虑遮挡区域,会将遮挡区域的图像重建误差也优化为零,这样会导致遮挡区域的预测视差错误,视差图的边缘也会模糊,而本发明中的损失函数用遮挡图来清理这一部分的错误训练信号来提高无监督微调训练的效果。
步骤S203、使用步骤S202得到的双目匹配网络在真实数据上对单目深度估计进行监督,最终得到单目深度估计网络。
这里,所述单目深度估计网络的输入为:单张单目图片,所述单目深度估计网络的输出为:深度图。在步骤S202中得到了在真实数据上微调过的双目视差网络,对于每一对双目图片,双目视差网络预测得到视差图,通过视差图D、双目镜头基线距离b以及镜头焦距f,可以计算得到视差图对应的深度图,即通过公式(8),可以计算得到视差图对应的深度图d:
d=bf/D(8);
为了训练单目深度网络预测得到深度图,可以使用双目图片对中的左图作为单目深度网路的输入,然后使用双目视差网络输出计算得到的深度图进行监督,从而训练单目深度网路,得到最终结果。
在实际应用中,可以本发明实施例中的单目深度估计方法训练得到用于无人驾驶的深度估计模块,从而对场景进行三维重建或者障碍物检测。且本发明实施例提出的无监督微调方法提高了双目视差网络的性能。
在本发明实施例提供的单目深度估计方法中,通过使用渲染引擎渲染的合成数据训练双目匹配网络,得到双目图片的视差图;利用损失函数,通过无监督微调方法在真实双目图片数据上对步骤S201得到的双目匹配网络进行微调;使用步骤S202得到的双目匹配网络在真实数据上对单目深度估计进行监督,最终得到单目深度估计网络;如此,能够使用更少或者不使用有深度图标记的数据训练单目深度估计网络,并且提出了一种更有效的无监督微调双目视差网络的方法,从而间接提高了单目深度估计的效果。
现有技术中,有监督的单目深度估计方法,获取准确的标记数据是非常有限也是非常难的。基于重建误差的无监督方法的性能通常受到像素匹配歧义的限制。为了解决这些问题,本发明实施例提出了一种新的单目深度估计方法,解决了现有技术中监督和无监督深度估计方法存在的局限性。
本发明实施例中的方法是使用一个双目匹配网络在跨模态合成数据上训练,并用来监督单目深度估计网络。所述双目匹配网络是基于左右图的像素匹配关系来获得视差,而不是从语义特征中提取,因此,双目匹配网络可以很好地从合成数据泛化到真实数据。本发明实施例的方法主要包括三个步骤。第一,用合成数据对双目匹配网络进行训练,从双目图片中预测遮挡图和视差图。第二,根据可用的真实数据,在有监督或者无监督的情况下,对训练后的双目匹配网络有选择性地进行调整。第三,在第二步得到的用真实数据微调训练后的双目匹配网络的监督下,训练单目深度估计网络。这样可以间接利用双目匹配网络来使单目深度估计更好地利用合成数据来提高性能。
第一步、利用合成数据对双目匹配网络进行训练,包括:
目前由图形渲染引擎可以生成很多的包含深度信息的合成图像。但是,直接将这些合成图像数据与真实数据合并来训练单目深度估计网络得到的性能通常较差,因为单目深度估计对输入场景的语义信息非常敏感。合成数据和真实数据之间的巨大模态差距使得使用合成数据辅助训练变得毫无用处。然而,双目匹配网络有更好的泛化能力,使用合成数据训练的双目匹配网络在真实数据上也能得到较好的视差图输出。因此,本发明实施例将双目匹配网络训练作为在合成数据和真实数据之间的桥梁来提高单目深度训练的性能。
首先利用大量的合成双目数据对双目匹配网络进行预训练。与传统的结构不同,实施例中的双目匹配网络在视差图的基础上,还估计了多尺度遮挡图。其中,遮挡图表示在正确的图像中,左侧图像像素的在右图中的对应像素点是否被其他物体遮挡。在接下来的步骤中,无监督的微调方法会使用到所述遮挡图,以避免错误的估计。
其中,可以使用左右视差一致性检验方法,利用公式(9)从正确标记的视差图中得到有正确标记的遮挡图
Figure GDA0001772897970000231
Figure GDA0001772897970000232
其中,下标i表示图像中第i行的值,下标j表示图像中第j列的值。D*L/R表示左右幅图像的视差图,D*wR是用右图重建后的左图的视差图,对于非遮挡区域,左视差图和利用右图重建后的左图的视差图是一致的。一致性检查的阈值设置为1。遮挡图在遮挡区域为0,非遮挡区域为1。
因此,本实施例使用以下公式(10)计算使用合成数据训练双目匹配网络的损失(Loss),在此阶段,损失函数Lstereo由两部分组成,即视差图估计误差Ldisp和遮挡图估计误差Locc。双目视差网络的多尺度中间层也产生了视差和遮挡预测,并直接应用于多尺度预测的损失权重wm
Figure GDA0001772897970000241
表示每一层对应的视差图估计误差,
Figure GDA0001772897970000242
表示每一层对应的遮挡图估计误差,m表示第m层:
Figure GDA0001772897970000243
为了训练视差图,采用L1损失函数来避免异常值的影响,使训练过程更加鲁棒。为了训练遮挡图,利用公式(11)来表示遮挡图估计误差Locc,采用二元交叉熵损失作为一种分类任务来训练遮挡图:
Figure GDA0001772897970000244
其中,N是图像中像素的总数,
Figure GDA0001772897970000245
表示有正确标记的遮挡图,
Figure GDA0001772897970000246
表示经训练后的双目匹配网络输出的遮挡图。
第二步、使用有监督或无监督的微调方法在真实数据上训练第一步得到的训练后的双目匹配网络,包括:
本发明实施例以两种方式对训练后的双目匹配网络进行微调。
其中,有监督的微调方法,仅采用多尺度的L1回归损失函数Lstereo-supft,即视差图估计误差Ldisp来改进之前像素匹配预测的误差,见公式(12):
Figure GDA0001772897970000247
结果表明,使用少量的监督数据,例如100幅图片,双目匹配网络也能够从合成模态数据适应到真实模态数据。
无监督的微调方法。对于无监督的网络调优,现有技术中的无监督微调方法得到的视差图模糊,性能较差,如图2B中的图片21所示。这是由于无监督损失的局限性以及与只有RGB值的像素匹配的歧义性导致的。因此,本发明实施例引入额外的正则项约束来提高性能。
利用真实数据,从没有进行微调的训练后的双目匹配网络中得到了相应的遮挡图和视差图,并且,将其分别标记为
Figure GDA0001772897970000248
Figure GDA0001772897970000249
这两个数据用于帮助规范训练过程。进一步的,本发明实施例提出的无监督的微调损失函数,即损失函数Lstereo-unsupft的获取可以参见前面实施例中的描述。
第三步、训练单目深度估计网络,包括:
到目前为止,我们已经通过大量的合成数据对双目匹配网络进行了跨模态训练,并使用真实数据进行了微调。为了训练最终的单目深度估计网络,本发明实施例采用训练后的双目匹配网络预测的视差图提供训练数据。单目深度估计的损失Lmono由以下几个部分给出,参见公式(13):
Figure GDA0001772897970000251
这里,N为像素点的总和,
Figure GDA0001772897970000252
指的是单目深度估计网络输出的视差图,
Figure GDA0001772897970000253
指的是训练后的双目匹配网络输出的视差图,或者,将训练后的双目匹配网络进行微调,微调后的网络输出的视差图。
需要指出的是,公式(9)至公式(13)都是以单目深度估计网络使用真实数据中的左图作为训练样本为例,进行说明的。
实验:由于单目深度估计网络对视角变化敏感,所以不对训练数据使用裁剪和缩放。所述单目深度估计网络的输入和用于监督单目深度估计网络的视差图都是来自训练后的双目匹配网络。
图2C为本发明实施例可视化深度估计结果示意图,如图2C所示,图2C中展示了使用现有技术和本发明实施例中的单目深度估计方法,获取的三幅不同的街景图片对应的深度图,其中,第一行为单目深度估计网络的输入,即三幅不同的街景图片;第二行为使用最近邻算法对稀疏激光雷达深度图插值得到的深度数据,第三行至第五行为现有技术中的三种不同的单目深度估计方法分别得到的三幅输入图片对应的深度图;本发明的结果见最后三行,直接利用本发明实施例中第一步得到的使用合成数据训练得到的双目匹配网络,对单目深度估计网络进行监督,得到的单目深度网络的三幅输入图片对应的深度图,即标号为21的图片21、标号为22的图片22、标号为23的图片23;利用本发明实施例提出的无监督损失函数,对训练后的双目匹配网络进行微调,将微调后的网络输出的视差图,作为单目深度估计网络的训练数据,得到的单目深度网络的三幅输入图片对应的深度图,即标号为24的图片24、标号为25的图片25、标号为26的图片26;对训练后的双目匹配网络进行有监督的微调,将微调后的网络输出的视差图,作为单目深度估计网络的训练数据,得到的单目深度网络的三幅输入图片对应的深度图,即标号为27的图片27、标号为28的图片28、标号为29的图片29;从标号为21的图片21至标号为29的图片29可以看出,本发明实施例中的单目深度估计方法获得的模型可以捕捉到更细节的场景结构。
本发明实施例提供一种单目深度估计装置,图3为本发明实施例单目深度估计装置的组成结构示意图,如图3所示,所述装置300包括:获取模块301、执行模块302和输出模块303,其中:
所述获取模块301,用于获取待处理图像;
所述执行模块302,用于将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;
所述输出模块303,用于输出所述待处理图像的分析结果。
在其他实施例中,所述装置还包括:
第三训练模块,用于通过所述第一双目匹配神经网络模型输出的视差图对所述单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
在其他实施例中,所述装置还包括:
第一训练模块,用于根据获取的合成样本数据训练第二双目匹配神经网络模型;
第二训练模块,用于根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型。
在其他实施例中,所述装置还包括:
第一获取模块,用于获取有深度标记的合成的双目图片作为所述合成样本数据,其中,所述合成的双目图片包括合成的左图和合成的右图。
在其他实施例中,所述第一训练模块,包括:
第一训练单元,用于根据所述合成的双目图片对第二双目匹配神经网络模型进行训练,得到训练后的第二双目匹配神经网络模型,其中,所述训练后的第二双目匹配神经网络模型的输出为视差图和遮挡图,所述视差图描述了所述左图中每个像素点与所述右图中对应的像素点的视差距离,所述视差距离以像素为单位;所述遮挡图描述了所述左图中每个像素点在所述右图中对应的像素点是否被物体遮挡。
在其他实施例中,所述装置还包括:
构造模块,用于通过渲染引擎构造虚拟3D场景;
映射模块,用于通过两个虚拟的摄像机将所述3D场景映射成双目图片;
第二获取模块,用于根据构造所述虚拟3D场景时的位置、构造所述虚拟3D场景时的方向和所述虚拟的摄像机的镜头焦距获取所述合成双目图片的深度数据;
第三获取模块,用于根据所述深度数据标记所述双目图片,得到所述合成的双目图片。
在其他实施例中,所述第二训练模块,包括:
第二训练单元,用于根据获取的带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在其他实施例中,所述第二训练模块中的第二训练单元,还用于:
根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在其他实施例中,所述第二训练模块中的第二训练单元,包括:
第二训练部件,用于使用损失函数,根据所述不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
在其他实施例中,所述装置还包括:
第一确定模块,用于利用公式(14)确定所述损失函数;
Lstereo-unsupft=Lphoto1Labs2Lrel (14);
其中,所述Lstereo-unsupft表示损失函数,所述Lphoto表示重建误差,所述Labs表示所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,所述Lrel表示约束所述第一双目匹配网络模型的输出梯度与所述训练后的第二双目匹配网络模型的输出梯度一致,所述γ1和γ2表示强度系数。
在其他实施例中,所述装置还包括:
第二确定模块,用于利用公式(15)或公式(16)确定所述重建误差;
Figure GDA0001772897970000281
Figure GDA0001772897970000282
其中,所述N表示图片中像素的个数,所述
Figure GDA0001772897970000283
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure GDA0001772897970000284
表示不带深度标记的真实双目数据中的左图的像素值,所述
Figure GDA0001772897970000285
表示不带深度标记的真实双目数据中的右图的像素值,所述
Figure GDA0001772897970000286
表示将右图采样后合成的图片的像素值,所述
Figure GDA0001772897970000287
表示将左图采样后合成的图片的像素值,所述
Figure GDA0001772897970000288
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000289
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,ij表示像素点的像素坐标。
在其他实施例中,所述装置还包括:
第三确定模块,用于利用公式(17)或公式(18)确定所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小;
Figure GDA00017728979700002810
Figure GDA0001772897970000291
其中,所述
Figure GDA0001772897970000292
表示样本数据中的左图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述
Figure GDA0001772897970000293
表示样本数据中的右图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述γ3表示强度系数。
在其他实施例中,所述装置还包括:
第四确定模块,用于利用公式(19),或公式(20),确定所述第一双目匹配网络模型的输出梯度与所述第二双目匹配网络模型的输出梯度一致;
Figure GDA0001772897970000294
Figure GDA0001772897970000295
其中,所述
Figure GDA0001772897970000296
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure GDA0001772897970000297
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure GDA0001772897970000298
表示样本数据中的左图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述
Figure GDA0001772897970000299
表示样本数据中的右图经训练后的第二双目匹配网络模型输出的视差图的梯度。
在其他实施例中,所述带深度标记的真实双目数据包括左图和右图,对应地,所述第三训练模块,包括:
第一获取单元,用于获取所述带深度标记的真实双目数据中的左图或右图作为训练样本;
第一训练单元,用于根据所述带深度标记的真实双目数据中的左图或右图对单目深度估计网络模型进行训练。
在其他实施例中,所述不带深度标记的真实双目数据包括左图和右图,对应地,所述第三训练模块,还包括:
第二获取单元,用于将所述不带深度标记的真实双目数据输入到所述第一双目匹配神经网络模型,得到对应的视差图;
第一确定单元,用于根据所述对应的视差图、拍摄所述不带深度标记的真实双目数据的摄像机的镜头基线距离和拍摄所述不带深度标记的真实双目数据的摄像机的镜头焦距,确定所述视差图对应的深度图;
第二训练单元,用于将所述不带深度标记的真实双目数据中的左图或右图作为样本数据,根据所述视差图对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
在其他实施例中,所述待处理图像的分析结果包括所述单目深度估计网络模型输出的视差图,对应地,所述装置还包括:
第五确定模块,用于根据所述单目深度估计网络模型输出的视差图、拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头基线距离和拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头焦距,确定所述视差图对应的深度图;
第一输出模块,用于输出所述视差图对应的深度图。
这里需要指出的是:以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
本发明实施例中,如果以软件功能模块的形式实现上述的单目深度估计方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、ROM(Read Only Memory,只读存储器)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。
对应地,本发明实施例提供一种单目深度估计设备,该设备包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时实现单目深度估计方法中的步骤。
对应地,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现单目深度估计方法中的步骤。
这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明存储介质和设备实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
需要说明的是,图4为本发明实施例单目深度估计设备的一种硬件实体示意图,如图4所示,该单目深度估计设备400的硬件实体包括:存储器401、通信总线402和处理器403,其中,
存储器401配置为存储由处理器403可执行的指令和应用,还可以缓存待处理器403以及单目深度估计设备400中各模块待处理或已经处理的数据,可以通过FLASH(闪存)或RAM(Random Access Memory,随机访问存储器)实现。
通信总线402可以使单目深度估计设备400通过网络与其他终端或服务器通信,还可以实现处理器403和存储器401之间的连接通信。
处理器403通常控制单目深度估计设备400的总体操作。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所描述的方法。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (28)

1.一种单目深度估计方法,其特征在于,所述方法包括:
获取待处理图像;
将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;所述第一双目匹配神经网络模型是通过根据获取的合成样本数据训练第二双目匹配神经网络模型,并根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整得到的;
输出所述待处理图像的分析结果。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取有深度标记的合成的双目图片作为所述合成样本数据,其中,所述合成的双目图片包括合成的左图和合成的右图。
3.根据权利要求2所述的方法,其特征在于,所述根据获取的合成样本数据训练第二双目匹配神经网络模型,包括:
根据所述合成的双目图片对第二双目匹配神经网络模型进行训练,得到训练后的第二双目匹配神经网络模型,其中,所述训练后的第二双目匹配神经网络模型的输出为视差图和遮挡图,所述视差图描述了所述左图中每个像素点与所述右图中对应的像素点的视差距离,所述视差距离以像素为单位;所述遮挡图描述了所述左图中每个像素点在所述右图中对应的像素点是否被物体遮挡。
4.根据权利要求1所述的方法,其特征在于,所述根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型,包括:
根据获取的带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
5.根据权利要求1所述的方法,其特征在于,所述根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型,还包括:
根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
6.根据权利要求5所述的方法,其特征在于,所述根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型,包括:
使用损失函数,根据所述不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
利用公式Lstereo-unsupft=Lphoto1Labs2Lrel确定所述损失函数,其中,所述Lstereo-unsupft表示损失函数,所述Lphoto表示重建误差,所述Labs表示所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,所述Lrel表示约束所述第一双目匹配网络模型的输出梯度与所述训练后的第二双目匹配网络模型的输出梯度一致,所述γ1和γ2表示强度系数。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
利用公式
Figure FDA0002716184830000021
或,
Figure FDA0002716184830000022
确定所述重建误差,其中,所述N表示图片中像素的个数,所述
Figure FDA0002716184830000023
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure FDA0002716184830000024
表示不带深度标记的真实双目数据中的左图的像素值,所述
Figure FDA0002716184830000031
表示不带深度标记的真实双目数据中的右图的像素值,所述
Figure FDA0002716184830000032
表示将右图采样后合成的图片的像素值,所述
Figure FDA0002716184830000033
表示将左图采样后合成的图片的像素值,所述
Figure FDA0002716184830000034
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure FDA0002716184830000035
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标。
9.根据权利要求7所述的方法,其特征在于,所述方法还包括:
利用公式
Figure FDA0002716184830000036
或,
Figure FDA0002716184830000037
确定所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,其中,所述N表示图片中像素的个数,所述
Figure FDA0002716184830000038
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure FDA0002716184830000039
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure FDA00027161848300000310
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure FDA00027161848300000311
表示左图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述
Figure FDA00027161848300000312
表示右图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标,所述γ3表示强度系数。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
利用公式
Figure FDA00027161848300000313
或,
Figure FDA00027161848300000314
确定所述第一双目匹配网络模型的输出梯度与所述第二双目匹配网络模型的输出梯度一致,其中,所述N表示图片中像素的个数,所述
Figure FDA00027161848300000315
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure FDA00027161848300000316
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure FDA0002716184830000041
表示左图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述
Figure FDA0002716184830000042
表示右图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述ij表示像素点的像素坐标。
11.根据权利要求4所述的方法,其特征在于,所述带深度标记的真实双目数据包括左图和右图,对应地,所述单目深度估计网络模型的训练过程,包括:
获取所述带深度标记的真实双目数据中的左图或右图作为训练样本;
根据所述带深度标记的真实双目数据中的左图或右图对单目深度估计网络模型进行训练。
12.根据权利要求5至10任一项所述的方法,其特征在于,所述不带深度标记的真实双目数据包括左图和右图,对应地,所述单目深度估计网络模型的训练过程,包括:
将所述不带深度标记的真实双目数据输入到所述第一双目匹配神经网络模型,得到对应的视差图;
根据所述对应的视差图、拍摄所述不带深度标记的真实双目数据的摄像机的镜头基线距离和拍摄所述不带深度标记的真实双目数据的摄像机的镜头焦距,确定所述视差图对应的深度图;
将所述不带深度标记的真实双目数据中的左图或右图作为样本数据,根据所述视差图对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
13.根据权利要求12所述的方法,其特征在于,所述待处理图像的分析结果包括所述单目深度估计网络模型输出的视差图,对应地,所述方法还包括:
根据所述单目深度估计网络模型输出的视差图、拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头基线距离和拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头焦距,确定所述视差图对应的深度图;
输出所述视差图对应的深度图。
14.一种单目深度估计装置,其特征在于,所述装置包括:获取模块、执行模块和输出模块,其中:
所述获取模块,用于获取待处理图像;
所述执行模块,用于将所述待处理图像输入至经过训练得到的单目深度估计网络模型,得到所述待处理图像的分析结果,其中,所述单目深度估计网络模型是通过第一双目匹配神经网络模型输出的视差图进行监督训练的;
第一训练模块,用于根据获取的合成样本数据训练第二双目匹配神经网络模型;
第二训练模块,用于根据获取的真实样本数据对训练后的第二双目匹配神经网络模型的参数进行调整,得到第一双目匹配神经网络模型;
所述输出模块,用于输出所述待处理图像的分析结果。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:
第一获取模块,用于获取有深度标记的合成的双目图片作为所述合成样本数据,其中,所述合成的双目图片包括合成的左图和合成的右图。
16.根据权利要求15所述的装置,其特征在于,所述第一训练模块,包括:
第一训练单元,用于根据所述合成的双目图片对第二双目匹配神经网络模型进行训练,得到训练后的第二双目匹配神经网络模型,其中,所述训练后的第二双目匹配神经网络模型的输出为视差图和遮挡图,所述视差图描述了所述左图中每个像素点与所述右图中对应的像素点的视差距离,所述视差距离以像素为单位;所述遮挡图描述了所述左图中每个像素点在所述右图中对应的像素点是否被物体遮挡。
17.根据权利要求14所述的装置,其特征在于,所述第二训练模块,包括:
第二训练单元,用于根据获取的带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
18.根据权利要求14所述的装置,其特征在于,所述第二训练单元,还用于:
根据获取的不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
19.根据权利要求18所述的装置,其特征在于,所述第二训练单元,包括:
第二训练部件,用于使用损失函数,根据所述不带深度标记的真实双目数据对训练后的第二双目匹配神经网络模型进行无监督训练,以调整所述训练后的第二双目匹配神经网络模型的权值,得到第一双目匹配神经网络模型。
20.根据权利要求19所述的装置,其特征在于,所述装置还包括:
第一确定模块,用于利用公式Lstereo-unsupft=Lphoto1Labs2Lrel确定所述损失函数,其中,所述Lstereo-unsupft表示损失函数,所述Lphoto表示重建误差,所述Labs表示所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,所述Lrel表示约束所述第一双目匹配网络模型的输出梯度与所述训练后的第二双目匹配网络模型的输出梯度一致,所述γ1和γ2表示强度系数。
21.根据权利要求20所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于利用公式
Figure FDA0002716184830000061
或,
Figure FDA0002716184830000062
确定所述重建误差,其中,所述N表示图片中像素的个数,所述
Figure FDA0002716184830000063
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure FDA0002716184830000064
表示不带深度标记的真实双目数据中的左图的像素值,所述
Figure FDA0002716184830000065
表示不带深度标记的真实双目数据中的右图的像素值,所述
Figure FDA0002716184830000066
表示将右图采样后合成的图片的像素值,所述
Figure FDA0002716184830000067
表示将左图采样后合成的图片的像素值,所述
Figure FDA0002716184830000068
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure FDA0002716184830000069
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标。
22.根据权利要求20所述的装置,其特征在于,所述装置还包括:
第三确定模块,用于利用公式
Figure FDA0002716184830000071
或,
Figure FDA0002716184830000072
确定所述第一双目匹配网络模型输出的视差图与所述训练后的第二双目匹配网络模型输出的视差图相比偏离较小,其中,所述N表示图片中像素的个数,所述
Figure FDA0002716184830000073
表示所述训练后的第二双目匹配网络模型输出的遮挡图的像素值,所述
Figure FDA0002716184830000074
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure FDA0002716184830000075
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的像素值,所述
Figure FDA0002716184830000076
表示左图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述
Figure FDA0002716184830000077
表示右图经训练后的第二双目匹配网络模型输出的视差图的像素值,所述ij表示像素点的像素坐标,所述γ3表示强度系数。
23.根据权利要求20所述的装置,其特征在于,所述装置还包括:
第四确定模块,用于利用公式
Figure FDA0002716184830000078
或,
Figure FDA0002716184830000079
确定所述第一双目匹配网络模型的输出梯度与所述第二双目匹配网络模型的输出梯度一致,其中,所述N表示图片中像素的个数,所述
Figure FDA00027161848300000710
表示不带深度标记的真实双目数据中的左图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure FDA00027161848300000711
表示不带深度标记的真实双目数据中的右图经第一双目匹配网络模型输出的视差图的梯度,所述
Figure FDA00027161848300000712
表示左图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述
Figure FDA00027161848300000713
表示右图经训练后的第二双目匹配网络模型输出的视差图的梯度,所述ij表示像素点的像素坐标。
24.根据权利要求17所述的装置,其特征在于,所述带深度标记的真实双目数据包括左图和右图,对应地,所述装置还包括:
第三训练模块,用于获取所述带深度标记的真实双目数据中的左图或右图作为训练样本;根据所述带深度标记的真实双目数据中的左图或右图对单目深度估计网络模型进行训练。
25.根据权利要求18至23任一项所述的装置,其特征在于,所述不带深度标记的真实双目数据包括左图和右图,对应地,所述装置还包括:
第三训练模块,用于将所述不带深度标记的真实双目数据输入到所述第一双目匹配神经网络模型,得到对应的视差图;根据所述对应的视差图、拍摄所述不带深度标记的真实双目数据的摄像机的镜头基线距离和拍摄所述不带深度标记的真实双目数据的摄像机的镜头焦距,确定所述视差图对应的深度图;将所述不带深度标记的真实双目数据中的左图或右图作为样本数据,根据所述视差图对应的深度图对单目深度估计网络模型进行监督,从而训练所述单目深度估计网络模型。
26.根据权利要求25所述的装置,其特征在于,所述待处理图像的分析结果包括所述单目深度估计网络模型输出的视差图,对应地,所述装置还包括:
第五确定模块,用于根据所述单目深度估计网络模型输出的视差图、拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头基线距离和拍摄输入所述单目深度估计网络模型的图片的摄像机的镜头焦距,确定所述视差图对应的深度图;
第一输出模块,用于输出所述视差图对应的深度图。
27.一种单目深度估计设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至13任一项所述单目深度估计方法中的步骤。
28.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至13任一项所述单目深度估计方法中的步骤。
CN201810496541.6A 2018-05-22 2018-05-22 一种单目深度估计方法及其装置、设备和存储介质 Active CN108961327B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201810496541.6A CN108961327B (zh) 2018-05-22 2018-05-22 一种单目深度估计方法及其装置、设备和存储介质
PCT/CN2019/076247 WO2019223382A1 (zh) 2018-05-22 2019-02-27 单目深度估计方法及其装置、设备和存储介质
SG11202008787UA SG11202008787UA (en) 2018-05-22 2019-02-27 Method for estimating monocular depth, apparatus and device therefor, and storage medium
JP2020546428A JP7106665B2 (ja) 2018-05-22 2019-02-27 単眼深度推定方法およびその装置、機器ならびに記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810496541.6A CN108961327B (zh) 2018-05-22 2018-05-22 一种单目深度估计方法及其装置、设备和存储介质

Publications (2)

Publication Number Publication Date
CN108961327A CN108961327A (zh) 2018-12-07
CN108961327B true CN108961327B (zh) 2021-03-30

Family

ID=64499439

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810496541.6A Active CN108961327B (zh) 2018-05-22 2018-05-22 一种单目深度估计方法及其装置、设备和存储介质

Country Status (4)

Country Link
JP (1) JP7106665B2 (zh)
CN (1) CN108961327B (zh)
SG (1) SG11202008787UA (zh)
WO (1) WO2019223382A1 (zh)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108961327B (zh) * 2018-05-22 2021-03-30 深圳市商汤科技有限公司 一种单目深度估计方法及其装置、设备和存储介质
CN111354032B (zh) * 2018-12-24 2023-10-20 杭州海康威视数字技术股份有限公司 一种生成视差图的方法及装置
CN111444744A (zh) * 2018-12-29 2020-07-24 北京市商汤科技开发有限公司 活体检测方法、装置以及存储介质
CN109741388B (zh) * 2019-01-29 2020-02-28 北京字节跳动网络技术有限公司 用于生成双目深度估计模型的方法和装置
CN111508010B (zh) * 2019-01-31 2023-08-08 北京地平线机器人技术研发有限公司 对二维图像进行深度估计的方法、装置及电子设备
CN109887019B (zh) * 2019-02-19 2022-05-24 北京市商汤科技开发有限公司 一种双目匹配方法及装置、设备和存储介质
CN111723926B (zh) * 2019-03-22 2023-09-12 北京地平线机器人技术研发有限公司 用于确定图像视差的神经网络模型的训练方法和训练装置
CN110009674B (zh) * 2019-04-01 2021-04-13 厦门大学 基于无监督深度学习的单目图像景深实时计算方法
CN110163246B (zh) * 2019-04-08 2021-03-30 杭州电子科技大学 基于卷积神经网络的单目光场图像无监督深度估计方法
CN110148179A (zh) * 2019-04-19 2019-08-20 北京地平线机器人技术研发有限公司 一种训练用于估计图像视差图的神经网络模型方法、装置及介质
CN110335245A (zh) * 2019-05-21 2019-10-15 青岛科技大学 基于单目时空连续图像的网箱网衣破损监测方法及系统
CN112149458A (zh) * 2019-06-27 2020-12-29 商汤集团有限公司 障碍物检测方法、智能驾驶控制方法、装置、介质及设备
CN110310317A (zh) * 2019-06-28 2019-10-08 西北工业大学 一种基于深度学习的单目视觉场景深度估计的方法
CN110782412B (zh) * 2019-10-28 2022-01-28 深圳市商汤科技有限公司 图像处理方法及装置、处理器、电子设备及存储介质
CN111105451B (zh) * 2019-10-31 2022-08-05 武汉大学 一种克服遮挡效应的驾驶场景双目深度估计方法
CN111126478B (zh) * 2019-12-19 2023-07-07 北京迈格威科技有限公司 卷积神经网络训练方法、装置和电子系统
CN113014899B (zh) * 2019-12-20 2023-02-03 杭州海康威视数字技术股份有限公司 一种双目图像的视差确定方法、装置及系统
CN111105432B (zh) * 2019-12-24 2023-04-07 中国科学技术大学 基于深度学习的无监督端到端的驾驶环境感知方法
CN111325786B (zh) * 2020-02-18 2022-06-28 北京市商汤科技开发有限公司 图像处理方法及装置、电子设备和存储介质
CN111340864B (zh) * 2020-02-26 2023-12-12 浙江大华技术股份有限公司 基于单目估计的三维场景融合方法及装置
CN111445476B (zh) * 2020-02-27 2023-05-26 上海交通大学 基于多模态无监督图像内容解耦的单目深度估计方法
CN111354030B (zh) * 2020-02-29 2023-08-04 同济大学 嵌入SENet单元的无监督单目图像深度图生成方法
CN111428859A (zh) * 2020-03-05 2020-07-17 北京三快在线科技有限公司 自动驾驶场景的深度估计网络训练方法、装置和自主车辆
CN111310859A (zh) * 2020-03-26 2020-06-19 上海景和国际展览有限公司 一种用于多媒体展示中的快速人工智能数据训练系统
CN111833390B (zh) * 2020-06-23 2023-06-20 杭州电子科技大学 一种基于无监督深度学习的光场深度估计方法
CN111784757B (zh) * 2020-06-30 2024-01-23 北京百度网讯科技有限公司 深度估计模型的训练方法、深度估计方法、装置及设备
CN111932584B (zh) * 2020-07-13 2023-11-07 浙江大华技术股份有限公司 图像中运动对象的确定方法及装置
KR20220030591A (ko) * 2020-09-03 2022-03-11 세메스 주식회사 물품 저장 장치 및 물품 저장 장치의 제어 방법
CN112150531B (zh) * 2020-09-29 2022-12-09 西北工业大学 一种鲁棒的自监督学习单帧图像深度估计方法
CN112465888A (zh) * 2020-11-16 2021-03-09 电子科技大学 一种基于单目视觉的无监督深度估计方法
CN112446328B (zh) * 2020-11-27 2023-11-17 汇纳科技股份有限公司 单目深度的估计系统、方法、设备及计算机可读存储介质
CN112561947A (zh) * 2020-12-10 2021-03-26 中国科学院深圳先进技术研究院 一种图像自适应运动估计方法及应用
CN112712017A (zh) * 2020-12-29 2021-04-27 上海智蕙林医疗科技有限公司 一种机器人和一种单目深度估计方法、系统及存储介质
CN112819875B (zh) * 2021-02-03 2023-12-19 苏州挚途科技有限公司 单目深度估计的方法、装置及电子设备
CN113160298B (zh) * 2021-03-31 2024-03-08 奥比中光科技集团股份有限公司 一种深度真值获取方法、装置、系统及深度相机
CN112862877A (zh) * 2021-04-09 2021-05-28 北京百度网讯科技有限公司 用于训练图像处理网络和图像处理的方法和装置
CN112991416A (zh) * 2021-04-13 2021-06-18 Oppo广东移动通信有限公司 深度估计方法、模型训练方法、装置、设备及存储介质
CN113140011B (zh) * 2021-05-18 2022-09-06 烟台艾睿光电科技有限公司 一种红外热成像单目视觉测距方法及相关组件
CN113570658A (zh) * 2021-06-10 2021-10-29 西安电子科技大学 基于深度卷积网络的单目视频深度估计方法
CN114119698B (zh) * 2021-06-18 2022-07-19 湖南大学 基于注意力机制的无监督单目深度估计方法
CN113705432A (zh) * 2021-08-26 2021-11-26 京东鲲鹏(江苏)科技有限公司 一种模型训练、三维目标检测方法、装置、设备及介质
CN114051128B (zh) * 2021-11-11 2023-09-05 北京奇艺世纪科技有限公司 一种2d视频转3d视频的方法、装置、设备及介质
CN115294375B (zh) * 2022-10-10 2022-12-13 南昌虚拟现实研究院股份有限公司 一种散斑深度估算方法、系统、电子设备及存储介质
CN115909446B (zh) * 2022-11-14 2023-07-18 华南理工大学 一种双目人脸活体判别方法、装置及存储介质
CN116165646B (zh) * 2023-02-22 2023-08-11 哈尔滨工业大学 基于分割网络的虚警可控雷达目标检测方法
CN117156113B (zh) * 2023-10-30 2024-02-23 南昌虚拟现实研究院股份有限公司 一种基于深度学习散斑相机图像矫正方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102903096A (zh) * 2012-07-04 2013-01-30 北京航空航天大学 一种基于单目视频的对象深度提取方法
CN106157307A (zh) * 2016-06-27 2016-11-23 浙江工商大学 一种基于多尺度cnn和连续crf的单目图像深度估计方法
CN107204010A (zh) * 2017-04-28 2017-09-26 中国科学院计算技术研究所 一种单目图像深度估计方法与系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10298911B2 (en) * 2014-03-31 2019-05-21 Empire Technology Development Llc Visualization of spatial and other relationships
GB2553782B (en) * 2016-09-12 2021-10-20 Niantic Inc Predicting depth from image data using a statistical model
EP4131172A1 (en) * 2016-09-12 2023-02-08 Dassault Systèmes Deep convolutional neural network for 3d reconstruction of a real object
CN106600650A (zh) * 2016-12-12 2017-04-26 杭州蓝芯科技有限公司 一种基于深度学习的双目视觉深度信息获取方法
CN107909150B (zh) * 2017-11-29 2020-08-18 华中科技大学 基于逐块随机梯度下降法在线训练cnn的方法与系统
CN108961327B (zh) * 2018-05-22 2021-03-30 深圳市商汤科技有限公司 一种单目深度估计方法及其装置、设备和存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102903096A (zh) * 2012-07-04 2013-01-30 北京航空航天大学 一种基于单目视频的对象深度提取方法
CN106157307A (zh) * 2016-06-27 2016-11-23 浙江工商大学 一种基于多尺度cnn和连续crf的单目图像深度估计方法
CN107204010A (zh) * 2017-04-28 2017-09-26 中国科学院计算技术研究所 一种单目图像深度估计方法与系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Clement Godard等.UnsupervisedMonocular Depth Estimation with Left-Right Consistency.《2017 IEEE Conference on Computer vision and Pattern Recognition (CVPR)》.2017,270-279. *
Single View Stereo Matching;Yue Luo等;《arXiv:1803.02612v2 [cs.CV]》;20180309;1-9 *
UnsupervisedMonocular Depth Estimation with Left-Right Consistency;Clement Godard等;《2017 IEEE Conference on Computer vision and Pattern Recognition (CVPR)》;20171231;270-279 *

Also Published As

Publication number Publication date
JP7106665B2 (ja) 2022-07-26
CN108961327A (zh) 2018-12-07
JP2021515939A (ja) 2021-06-24
SG11202008787UA (en) 2020-10-29
WO2019223382A1 (zh) 2019-11-28

Similar Documents

Publication Publication Date Title
CN108961327B (zh) 一种单目深度估计方法及其装置、设备和存储介质
AU2017324923B2 (en) Predicting depth from image data using a statistical model
US11274922B2 (en) Method and apparatus for binocular ranging
CN107735797B (zh) 用于确定第一坐标系与第二坐标系之间的运动的方法
CN109300151B (zh) 图像处理方法和装置、电子设备
CN112561978B (zh) 深度估计网络的训练方法、图像的深度估计方法、设备
US20220051425A1 (en) Scale-aware monocular localization and mapping
Zhang et al. Du 2 net: Learning depth estimation from dual-cameras and dual-pixels
CN111209770A (zh) 一种车道线识别方法及装置
CN111340922A (zh) 定位与地图构建的方法和电子设备
KR20180015570A (ko) 스테레오 카메라로부터 획득된 이미지 페어를 처리하는 장치 및 방법
CN114677422A (zh) 深度信息生成方法、图像虚化方法和视频虚化方法
CN114372523A (zh) 一种基于证据深度学习的双目匹配不确定性估计方法
CN110443228B (zh) 一种行人匹配方法、装置、电子设备及存储介质
CN116402876A (zh) 双目深度估计方法、装置、嵌入式设备和可读存储介质
CN115493612A (zh) 一种基于视觉slam的车辆定位方法及装置
CN114072842A (zh) 从图像中确定深度的方法和相关系统
Huang et al. ES-Net: An efficient stereo matching network
JP6946255B2 (ja) 学習装置、推定装置、学習方法およびプログラム
CN110533663B (zh) 一种图像视差确定方法、装置、设备及系统
CN113808185B (zh) 图像深度恢复方法、电子设备及存储介质
Zhao et al. Distance transform pooling neural network for lidar depth completion
CN110245553B (zh) 路面测距方法及装置
Schennings Deep convolutional neural networks for real-time single frame monocular depth estimation
CN112634331A (zh) 一种光流预测方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant