CN112561978A - 深度估计网络的训练方法、图像的深度估计方法、设备 - Google Patents

深度估计网络的训练方法、图像的深度估计方法、设备 Download PDF

Info

Publication number
CN112561978A
CN112561978A CN202011513854.1A CN202011513854A CN112561978A CN 112561978 A CN112561978 A CN 112561978A CN 202011513854 A CN202011513854 A CN 202011513854A CN 112561978 A CN112561978 A CN 112561978A
Authority
CN
China
Prior art keywords
image
original image
depth
depth estimation
original
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.)
Granted
Application number
CN202011513854.1A
Other languages
English (en)
Other versions
CN112561978B (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202011513854.1A priority Critical patent/CN112561978B/zh
Publication of CN112561978A publication Critical patent/CN112561978A/zh
Priority to EP21180599.9A priority patent/EP3872760B1/en
Priority to US17/353,634 priority patent/US11915439B2/en
Application granted granted Critical
Publication of CN112561978B publication Critical patent/CN112561978B/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
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/174Segmentation; Edge detection involving the use of two or more images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • 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]
    • 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/20228Disparity calculation for image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本申请公开了一种深度估计网络的训练方法,涉及计算机视觉、深度学习和图像处理技术领域。具体实现方案为:使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像;从原始图像去除运动对象,得到原始图像的预处理图像;基于原始图像来估计位姿,并基于预处理图像修正位姿;根据原始图像、深度图像和经修正的位姿来调整深度估计网络的参数。本申请还公开了一种深度估计网络的训练装置、一种图像的深度估计方法和装置、电子设备和存储介质。

Description

深度估计网络的训练方法、图像的深度估计方法、设备
技术领域
本申请涉及人工智能技术领域,具体涉及计算机视觉、深度学习和图像处理技术。更具体地,本申请提供了一种深度估计网络的训练方法和装置、图像的深度估计方法和装置、电子设备和存储介质。
背景技术
图像的深度估计是计算机视觉领域中不可或缺的技术,广泛应用于视频特效、混合现实、辅助驾驶等多种场景。
目前,可以基于相机拍摄的大量样本图像进行训练得到用于深度估计的神经网络,之后,使用经训练的神经网络来估计图像的深度信息,以实现图像的深度估计。但是图像中的运动物体会影响神经网络的训练精度,导致神经网络估计图像深度信息不准确。
发明内容
提供了一种深度估计网络的训练方法和装置、图像的深度估计方法和装置、电子设备和存储介质。
根据第一方面,提供了一种深度估计网络的训练方法,该方法包括:使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像;从原始图像去除运动对象,得到原始图像的预处理图像;基于原始图像来估计位姿,并基于预处理图像修正位姿;根据原始图像、深度图像和经修正的位姿来调整深度估计网络的参数。
根据第二方面,提供了一种图像的深度估计方法,该方法包括:获取待估计的图像;使用深度估计网络对待估计的图像进行深度估计,得到待估计的图的深度图像。
根据第三方面,提供了一种深度估计网络的训练装置,该装置包括:第一估计模块,用于使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像;去除模块,用于从原始图像去除运动对象,得到原始图像的预处理图像;处理模块,用于基于原始图像来估计位姿,并基于预处理图像修正位姿;调整模块,用于根据原始图像、深度图像和经修正的位姿来调整深度估计网络的参数。
根据第四方面,提供了一种图像的深度估计装置,该装置包括:获取模块,用于获取待估计的图像;第二估计模块,用于使用深度估计网络对待估计的图像进行深度估计,得到待估计的图的深度图像。
根据第五方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行根据本申请提供的方法。
根据第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行根据本申请提供的方法。
根据第七方面,提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现根据本申请提供的方法。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请一个实施例的可以应用深度估计网络的训练方法和装置以及图像的深度估计方法和装置的示例性系统架构;
图2是根据本申请的一个实施例的深度估计网络的训练方法的流程图;
图3是根据本申请的一个实施例的从原始图像去除运动对象方法的流程图;
图4是根据本申请的一个实施例的调整深度估计网络的参数的方法的流程图;
图5是根据本申请的一个实施例的确定深度估计网络的损失的方法的流程图;
图6是是根据本申请的一个实施例的深度估计网络的训练方法的示意图;
图7是根据本申请的一个实施例的图像的深度估计方法的流程图;
图8是根据本申请的一个实施例的深度估计网络的训练装置的框图;
图9是根据本申请的一个实施例的图像的深度估计装置的框图;以及
图10是根据本申请一个实施例的深度估计网络的训练方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
目前,可以基于相机拍摄的大量样本图像进行训练得到用于深度估计的神经网络,即深度估计网络,之后,使用深度估计网络估计待估计的图像的深度信息,以实现图像的深度估计。深度估计网络的训练可以是无监督训练。
无监督的深度估计训练主要包括两大类方法,一是基于单目相机拍摄的图像集,针对图像集中相邻帧图像分别估计图像深度和前后帧的位姿,通过图像深度和位姿重映射图像,根据重映射图像的误差来引导网络训练。二是基于相机拍摄的图像集,通过预测图像集左右双目图像之间的视差图与视差的左右一致性,来学习视差图,进而根据相机的基线和焦距计算得到深度值。
但是,基于前后位姿估计的方法容易受到运动物体的影响,导致估计的位姿不准确,进而影响到计算重映射误差。基于双目视频的方法需要一个额外相机,计算复杂度增加,此外左右双目相机的标定和校正精度也会影响到深度估计的精度。
图1是根据本申请一个实施例的可以应用深度估计网络的训练方法和装置以及图像的深度估计方法和装置的示例性系统架构100。需要注意的是,图1所示仅为可以应用本申请实施例的系统架构的示例,以帮助本领域技术人员理解本申请的技术内容,但并不意味着本申请实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括多个终端设备101、网络102和服务器103。网络102用以在终端设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线和/或无线通信链路等等。
终端设备101可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机等等。服务器103可以是具有一定数据处理和计算能力的电子设备,并且能够为终端设备101提供业务支撑。
示例性地,服务器103用于根据样本图像集训练深度估计神经网络,具体地,针对图像集中相邻帧图像分别估计图像深度和前后帧的位姿,通过图像深度和位姿重映射图像,根据重映射图像的误差来引导网络训练,得到经训练的深度估计网络。
示例性地,用户可以通过终端设备101与服务器103进行交互,例如,用户通过终端设备101上传待估计的图像,终端设备101将待估计的图像发送给服务器103,服务器103使用经训练的深度估计网络对待估计图像进行深度估计,得到待估计图像的深度信息,从而生成待估计图像的深度图,然后可以将深度图通过网络102发送给终端设备101,以供用户使用。
图2是根据本申请的一个实施例的深度估计网络的训练方法的流程图。
如图2所示,该深度估计网络的训练方法200可以包括操作S210~操作S240。
在操作S210,使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像。
根据本申请的实施例,原始图像可以是连续视频中的相邻两帧图像,分别可以称为第一原始图像和第二原始图像,第二原始图像可以是第一原始图像的下一帧图像或上一帧图像。深度估计网络可以分别估计第一原始图像和第二原始图像的深度信息,基于第一原始图像的深度信息生成第一原始图像的深度图,基于第二原始图像的深度信息生成第二原始图像的深度图。
在操作S220,从原始图像去除运动对象,得到原始图像的预处理图像。
根据本申请的实施例,可以基于第一原始图像和第二原始图像中每个像素点的位置坐标信息估计该相邻两帧图像之间的位姿。第一原始图像和第二原始图像中可以包括道路、树木、行人、车辆等对象,其中的行人、车辆和骑行者等运动对象会造成第一原始图像和第二原始图像之间位姿估计不准。因此,可以将第一原始图像和第二原始图像中的运动对象剔除,得到第一原始图像的预处理图像和第二原始图像的预处理图像。可以理解,剔除第一原始图像中的运动对象的预处理图像和剔除第二原始图像中的运动对象的预处理图像可以用于后续位姿的修正,以提高位姿估计的准确性。
示例性地,可以使用分割网络分别对第一原始图像和第二原始图像进行分割,分割网络可以分别将第一原始图像和第二原始图像中的对象分割到不同的区域,得到第一原始图像的分割图和第二原始图像的分割图。例如,第一原始图像中包括4个对象,分别是道路、树木、行人和车辆,分割网络可以将第一原始图像分割为4个区域,每个区域分别包括道路、树木、行人和车辆。第二原始图像的分割类似,这里不再赘述。需要说明的是,由于第一原始图像和第二原始图像是相邻帧的图像,第一原始图像和第二原始图像一般包括相同的对象。
在操作S230,基于原始图像来估计位姿,并基于预处理图像修正位姿。
根据本申请的实施例,可以使用位姿估计网络来估计第一原始图像和第二原始图像之间的初始位姿,其中,位姿估计网络可以是经大量样本图像训练得到的用于位姿估计的神经网络。由于第一原始图像和第二原始图像中包括运动对象,使用位姿估计网络基于第一原始图像和第二原始图像估计出的位姿受运动对象影响可能估计不准,而第一原始图像的预处理图像和第二原始图像的预处理图像剔除了运动对象,因此可以使用第一原始图像的预处理图像和第二原始图像的预处理图像修正初始位姿,得到更准确的位姿。
具体地,基于第一原始图像的预处理图像中每个像素点的位置坐标、第一原始图像的深度图像的深度信息以及相机与像素坐标之间的转换关系,可以计算第一原始图像的预处理图像中每个像素点映射到三维空间中的坐标信息,从而得到第一原始图像的预处理图像的点云集。基于第二原始图像的预处理图像中每个像素点的位置坐标、第二原始图像的深度图像的深度信息以及相机与像素坐标之间的转换关系,可以计算第二原始图像的预处理图像中每个像素点映射到三维空间中的坐标信息,从而得到第二原始图像的预处理图像的点云集。可以理解,基于深度图像以及相机与像素坐标之间的转换关系,可以将二维的预处理图像中的像素点坐标映射到三维空间中,得到预处理图像中每个像素点的三维空间坐标。
基于第一原始图像的预处理图像的点云集、第二原始图像的预处理图像的点云集以及初始位姿,可以通过迭代最近邻点(Iterative Closest Point,ICP)算法重新计算位姿,得到修正后的位姿。
在操作S240,根据原始图像、深度图像和经修正的位姿来调整深度估计网络的参数。
根据本申请的实施例,根据经修正的位姿、第二原始图像中每个像素点的位置信息和第二原始图像的深度图像中每个像素点的深度信息,可以对第二原始图像进行重映射,得到第二原始图像的投影图像。第二原始图像的投影图像应尽量还原第一原始图像,因此,该投影图像与第一图像之间的差异可以作为深度估计网络的一部分损失。此外,第一原始图像和第一原始图像的深度图像的梯度应尽量一致,因此,第一原始图像和第一原始图像的深度图像的梯度误差也可以作为深度估计网络的一部分损失。
基于投影图像与第一图像之间的差异以及第一原始图像和第一原始图像的深度图像的梯度误差可以得到深度估计网络的总体损失,基于深度估计网络的总体损失可以调整深度估计网络的参数,然后针对新的原始图像,返回操作S210,重复上述训练过程,直至深度估计网络的总体损失满足预设的停止条件,得到经训练的深度估计网络。
根据本申请的实施例,使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像,从原始图像去除运动对象,得到原始图像的预处理图像,基于原始图像来估计位姿,并基于预处理图像修正位姿,根据原始图像、深度图像和经修正的位姿来调整深度估计网络的参数。由于从原始图像去除了运动对象,可以减少运动对象对网络训练的影响,提高网络训练的精度。
可以理解,本申请实施例一方面通过剔除运动物体来引导更准确的位姿估计,从而提高深度估计网络训练的精度。另一方面通过定义第一原始图像和第一原始图像的深度图像的梯度误差,约束深度图像中同一个物体对象所在区域的深度的连续性,能够得到鲁棒性更高的深度信息。
图3是根据本申请的一个实施例的从原始图像去除运动对象方法的流程图。
如图3所示,该方法可以包括操作S321~操作S322。
在操作S321,使用分割网络分别对第一原始图像和第二原始图像进行分割,得到第一原始图像的分割图像和第二原始图像的分割图像。
根据本申请的实施例,分割网络可以是语义分割网络,图像拍摄场景对应的语义对象可以包括道路、树木、行人、车辆、红绿灯、路标等。第一原始图像的分割图像和第二原始图像的分割图像中各自包括多个语义对象。例如,第一原始图像和第二原始图像中可以包括道路、树木、行人、车辆等对象,使用语义分割网络可以将这些不同的对象分割到不同的区域,得到第一原始图像的分割图和第二原始图像的分割图。示例性地,使用语义分割网络将第一原始图像中的道路、树木、行人、车辆分割到不同的区域,在第一原始图像的深度图像中可以包括道路所在区域、树木所在区域、行人所在区域和车辆所在区域。
具体地,语义分割网络可以是DeepLabV3+、PSPNet和Mask R-CNN等,本申请实施例对语义分割网络不做限定。
在操作S322,分别从第一原始图像的分割图像和第二原始图像的分割图像中去除多个对象中的运动对象,得到第一原始图像的预处理图像和第二原始图像的预处理图像。
根据本申请的实施例,第一原始图像的分割图像和第二原始图像的分割图像中的行人、车辆和骑行者等运动对象会造成第一原始图像和第二原始图像之间位姿估计不准。因此,可以将第一原始图像的分割图像和第二原始图像的分割图像中的运动对象剔除,得到第一原始图像的预处理图像和第二原始图像的预处理图像。可以理解,剔除运动对象的第一原始图像的预处理图像和第二原始图像的预处理图像可以用于后续位姿的修正,以提高位姿估计的准确性。
根据本申请的实施例,在使用深度估计网络估计第一原始图像和第二原始图像的深度图像时,为提高深度估计的准确性,针对估计第一原始图像的深度图像,可以将第一原始图像和第一原始图像的分割图像一起作为深度估计网络的输入,由于在第一原始图像的分割图像中对不同对象进行了分割,可以减少不同对象之间的影响,因此,深度估计网络输出的第一原始图像的深度图像更加准确。同理,针对估计第二原始图像的深度图像,可以将第二原始图像和第二原始图像的分割图像一起作为深度估计网络的输入,深度估计网络输出的第二原始图像的深度图像。
根据本申请的实施例,使用位姿估计网络估计第一原始图像和第二原始图像之间的位姿得到的初始位姿可以记为
Figure BDA0002844091970000081
其中,R和t分别是相机的旋转矩阵和平移矩阵。在得到第一原始图像的预处理图像、第一原始图像的深度图像、第二原始图像的预处理图像和第二原始图像的深度图像之后,可以基于第一原始图像的预处理图像、第一原始图像的深度图像、第二原始图像的预处理图像和第二原始图像的深度图像可以修正位姿,修正后的位姿可以记为
Figure BDA0002844091970000082
根据本申请的实施例,修正位姿的过程如下:
首先,分别计算第一原始图像的预处理图像和第二原始图像的预处理图像中每个像素点的空间坐标,即第一原始图像的预处理图像的点云集和第二原始图像的预处理图像的点云集。
具体地,第一原始图像的预处理图像的点云集可以记为Pt,第二原始图像的预处理图像的点云集可以记为Pt+1。基于相机与像素坐标的转换关系可以将二维像素坐标转换为三维空间坐标,则二维图像中像素点转换为三维点云中的点的转换方程由如下公式一表示。
Figure BDA0002844091970000083
其中,PZ是像素点P的深度值,u和v表示像素坐标,PX、PY、PZ是像素点P映射到空间中的点的空间坐标,K是相机的内参。针对三维点云中的每个点Pi,Pi的坐标由如下公式二表示。
Figure BDA0002844091970000091
其中,K-1表示K的逆矩阵,X,Y,Z表示Pi的空间坐标,
Figure BDA0002844091970000092
fx,fy是沿着x和y方向上的像素焦距,[cx,cy]是相机的主点,即相机的中心。
然后,基于第一原始图像的预处理图像的点云集和第二原始图像的预处理图像的点云集修正初始位姿Pose。
具体地,第一原始图像的预处理图像的点云集Pt和第二原始图像的预处理图像的点云集Pt+1是剔除运动物体得到的两组点云。基于始位姿Pose以及Pt和Pt+1两组点云,通过ICP可以算法重新计算位姿,得到修正后的位姿
Figure BDA0002844091970000093
其中,R′和t′分别是修正后的旋转矩阵和平移矩阵。
ICP算法是对匹配好的两组点之间进行运动估计的算法,两组点可以是基于第一原始图像的预处理图像的点云集和第二原始图像的预处理图像的点云集,两组点可通过距离最近进行匹配,使得每个点都有对应的映射点,然后,根据基于每一对匹配好的点不断迭代进行运动估计,直至满足预设停止条件,得到经修正的位姿。
图4是根据本申请的一个实施例的调整深度估计网络的参数的方法的流程图。
如图4所示,该方法包括操作S441~操作S443。
在操作S441,基于经修正的位姿、第二原始图像和第二原始图像的深度图像,生成第二原始图像的投影图像。
根据本申请的实施例,根据经修正的位姿、第二原始图像中每个像素点的位置信息和第二原始图像的深度图像中每个像素点的深度信息,可以对第二原始图像进行重映射,得到第二原始图像的投影图像。
具体地,基于两帧图像之间的位姿,可以将后一帧图像进行重映射以还原前一帧图像。示例性地,经修正位姿记为Pose′,第一原始图像记为It,第二原始图像记为It+1,第二原始图像It+1进行重映射得到投影图像记为
Figure BDA0002844091970000094
第二原始图像It+1中的每一个像素点记为P′t+1,P′t+1=[u,v,1]T,第二原始图像的深度信息记为
Figure BDA0002844091970000107
投影图像
Figure BDA0002844091970000101
中每个像素点的像素坐标记为
Figure BDA0002844091970000102
Figure BDA0002844091970000103
由如下公式三表示。
Figure BDA0002844091970000104
在操作S442,基于第一原始图像和投影图像之间的差异以及第一原始图像和第一原始图像的深度图像之间的差异,确定深度估计网络的损失。
根据本申请的实施例,第二原始图像的投影图像应尽量还原第一原始图像,因此,该投影图像与第一图像之间的差异可以作为深度估计网络的一部分损失。此外,第一原始图像和第一原始图像的深度图像的梯度应尽量一致,因此,第一原始图像和第一原始图像的深度图像的梯度误差也可以作为深度估计网络的一部分损失。
具体地,投影图像
Figure BDA0002844091970000108
应尽量与第一原始图像It相似,可以基于投影图像
Figure BDA0002844091970000109
与第一原始图像It之间的相似度和灰度差异来定义投影图像
Figure BDA00028440919700001010
与第一原始图像It之间的光度误差,该光度误差作为深度估计网络的一部分损失。此外,第一原始图像It的深度图像可以记为Dt,则It与Dt的梯度应尽量一致,可以基于第一原始图像It的梯度和第一原始图像的深度图像Dt的深度差异来定义第一原始图像It和第一原始图像It的深度图像Dt之间的梯度误差,该梯度误差作为深度估计网络的另一部分损失。
在操作S443,基于深度估计网络的损失调整深度估计网络的参数。
根据本申请的实施例,基于投影图像
Figure BDA00028440919700001012
与第一原始图像It之间的光度误差以及第一原始图像It和第一原始图像It的深度图像Dt之间的梯度误差,可以计算深度估计网络的总体损失,基于深度估计网络的总体损失可以调整深度估计网络的参数,然后针对新的原始图像,返回操作S210,重复上述训练过程,直至深度估计网络的总体损失满足预设的停止条件,得到经训练的深度估计网络。
根据本申请的实施例,投影图像
Figure BDA00028440919700001013
与第一原始图像It之间的光度误差可以由如下公式四表示。
Figure BDA0002844091970000105
其中,SSIM(Structural Similarity index,结构相似性)是用于衡量两幅图像相似度的指标,α是一个权重平衡超参。
Figure BDA0002844091970000106
表示两幅图像的灰度差异。
图5是根据本申请的一个实施例的确定深度估计网络的损失的方法的流程图。
如图5所示,该方法包括操作S5421~操作S5424。
在操作S5421,基于第一原始图像的预处理图像,确定第一原始图像中的各个对象在第一原始图像中所在的区域以及在第一原始图像的深度图像中所在的区域。
根据本申请的实施例,第一原始图像的预处理图像可以记为Maskt,基于Maskt中的各个对象(例如可以包括道路、树木、天空、红绿灯等静态对象),可以确定这些静态对象在第一原始图像It中所在的区域,以及这些静态对象在第一原始图像的深度图像Dt中所在的区域。
在操作S5422,计算第一原始图像中各个对象所在区域的第一梯度以及第一原始图像的深度图像中各个对象所在区域的第二梯度。
根据本申请的实施例,可以利用分割区域信息,计算每一个对象在第一原始图像It中所在区域的梯度(记为第一梯度),以及每一个对象在第一原始图像的深度图像Dt中所在区域的梯度。
在操作S5423,使用预设的第二损失函数基于第一梯度和第二梯度,针对各个对象计算第一原始图像和第一原始图像的深度图像之间的梯度误差。
根据本申请的实施例,基于各个对象的第一梯度和第二梯度计算各个对象所在It中的区域和所在Dt中的区域的梯度误差。可以理解,第一原始图像的深度图像Dt中同一对象的深度应平滑,基于同一对象所在It中的区域和所在Dt中的区域的梯度误差定义该同一对象所在Dt中的区域的深度平滑度,可以对同一对象所在区域的深度平滑性进行约束,惩罚深度跳变较大的情形。
对于同一对象m,针对对象m计算第一原始图像It和第一原始图像的深度图像Dt之间的梯度误差可以由如下公式五表示。
Figure BDA0002844091970000111
其中,
Figure BDA0002844091970000112
表示对象m在第一原始图像It中所在区域的梯度,
Figure BDA0002844091970000113
表示对象m在第一原始图像的深度图像Dt中所在区域的梯度,S为对象m在第一原始图像It中所在区域的像素点集,也可以称为是在第一原始图像的深度图像Dt中所在区域的像素点集。
根据本申请的实施例,深度估计网络的学习应使得第一深度图像Dt中属于同一对象所在区域的深度尽量平滑,可以基于第一原始图像It的梯度与第一深度图像Dt梯度之间的差异来定义第一深度图像Dt中属于同一对象所在区域的深度的平滑度。因此,可以将第一原始图像It与第一深度图像Dt之间的梯度误差作为深度估计网络的一部分损失。通过约束深度图像中同一个物体对象所在区域的深度的连续性,能够使得经训练的深度估计网络能够估计出鲁棒性更高的深度信息。
在操作S5424,基于针对各对象的梯度误差,计算第一原始图像和第一原始图像的深度图像之间的总体梯度误差。
根据本申请的实施例,基于针对各个对象m的梯度误差可以计算总体的梯度误差,例如可以将针对各个对象m的梯度误差之和作为总体的梯度误差。
根据本申请的实施例,基于光度误差
Figure BDA0002844091970000121
和梯度误差Lsmooth(Dt)可以计算深度估计网络的总体损失。深度估计网络的总体损失例如可以用如下公式六表示。
Figure BDA0002844091970000122
根据本申请的实施例,在深度估计网络的总体损失L不满足预设条件(如收敛)的情况下可以调整深度估计网络的参数,使用调整参数后的深度估计网络重复上述训练过程,直至损失L满足预设条件。
根据本申请的实施例,在深度估计网络的总体损失L不满足预设条件的情况下,还可以调整位姿估计网络的参数,即同时更新深度估计网络和位姿估计网络,使用更新的深度估计网络和位姿估计网络重复上述训练过程,直至损失L满足预设条件。这样能够同时训练深度估计网络和位姿估计网络,得到经训练的深度估计网络和位姿估计网络。
图6是根据本申请的一个实施例的深度估计网络的训练方法的示意图。
如图6所示,第一原始图像记为It,第二原始图像记为It+1,其中,t表示当前帧,t+1表示当前帧的后一帧。第一原始图像的分割图像记为第一分割图像St,第二原始图像的分割图像记为第二分割图像St+1,第一原始图像的预处理图像记为第一预处理图像Maskt,第二原始图像的预处理图像记为第二预处理图像Maskt+1,第一原始图像的深度图像记为第一深度图像Dt,第二原始图像的深度图像记为第二深度图像Dt+1
根据本申请的实施例,将第一原始图像It和第二原始图像It+1分别输入到分割网络,分割网络分别输出第一分割图像St和第二分割图像St+1。其中,分割网络可以是语义分割网络,语义分割网络用于将不同的语义对象进行分割,图像场景的语义对象可以包括道路、树木、行人和车辆等,则语义分割网络可以将道路、树木、行人和车辆等不同的语义对象分割到不同的区域,得到第一分割图像St和第二分割图像St+1
根据本申请的实施例,分别在第一分割图像St和第二分割图像St+1中去除运动对象(如行人和车辆),得到仅包括静态对象(如道路和树木)的第一预处理图像Maskt和第二预处理图像Maskt+1
根据本申请的实施例,将第一原始图像It和第一分割图像St合并后一起输入到深度估计网络,将第二原始图像It+1和第二分割图像St+1合并后一起输入到深度估计网络,深度估计网络分别输出第一深度图像Dt和第二深度图像Dt+1
根据本申请的实施例,将第一原始图像It和第二原始图像It+1一起输入到位姿估计网络,位姿估计网络输出第一原始图像It和第二原始图像It+1之间的初始位姿矩阵Pose。
根据本申请的实施例,根据第一预处理图像Maskt中每个像素点的位置信息和第一深度图像Dt中每个像素点的深度信息,通过相机与像素坐标的转换关系,将第一预处理图像Maskt中每个像素点映射到三维空间中,得到第一预处理图像Maskt的三维空间点云集Pt,同理将第二预处理图像Maskt中每个像素点映射到三维空间中,得到第二预处理图像Maskt+1的三维空间点云集Pt+1。基于初始位姿矩阵Pose、点云集Pt和点云集Pt+1重新计算位姿,得到更新的位姿矩阵Pose′。
根据本申请的实施例,基于更新的位姿矩阵Pose′,可以将第二原始图像It+1重映射为投影图像
Figure BDA0002844091970000131
具体可以基于更新的位姿矩阵Pose′、第二原始图像It+1中每个像素点的位置信息和第二深度图像Dt+1中每个像素点的深度信息,计算第二原始图像It+1中每个像素点重映射到投影图像
Figure BDA0002844091970000141
中每个像素点的位置信息。
根据本申请的实施例,深度估计网络的学习应使得第一原始图像It和投影图像
Figure BDA0002844091970000144
尽量相似,可以基于第一原始图像It和投影图像
Figure BDA0002844091970000142
之间的结构相似度和灰度差异作为第一原始图像It和投影图像
Figure BDA0002844091970000143
之间的光度误差,光度误差作为深度估计网络的一部分损失。
根据本申请的实施例,深度估计网络的学习应使得第一深度图像Dt中属于同一对象所在区域的深度尽量平滑,可以基于第一原始图像It的梯度与第一深度图像Dt梯度之间的差异来定义第一深度图像Dt中属于同一对象所在区域的深度的平滑度。因此,可以将第一原始图像It与第一深度图像Dt之间的梯度误差作为深度估计网络的另一部分损失。通过约束深度图像中同一个物体对象所在区域的深度的连续性,能够使得经训练的深度估计网络能够估计出鲁棒性更高的深度信息。
根据本申请的实施例,光度误差和梯度误差之和作为总体损失Loss。基于总体损失Loss可以调整深度估计网络的参数,然后针对新的原始图像,基于调整参数后的深度估计网络重复上述步骤,直至总体损失Loss收敛。可以理解,基于总体损失Loss可以调整位姿估计网络的参数,使用调整参数后的位姿估计网络重复上述步骤,直至总体损失Loss收敛。
图7是根据本申请的一个实施例的图像的深度估计方法的流程图。
如图7所示,该深度估计网络的训练方法700可以包括操作S710~操作S720。
在操作S710,获取待估计的图像。
在操作S720,使用深度估计网络对待估计的图像进行深度估计,得到待估计的图的深度图像。
根据本申请的实施例,利用上述训练方法进行训练得到的深度估计网络可以实现图像的深度估计。具体地,将待估计图像输入到经训练的深度估计网络可以输出待估计图像的深度图像。由于在上述训练方法中去除了运动对象,能够得到更准确的位姿,提高深度估计网络的训练精度,且上述训练方法约束了深度图像中同一个物体对象所在区域的深度的连续性,能够使得经训练的深度估计网络能够估计出鲁棒性更高的深度信息。
图8是根据本申请的一个实施例的深度估计网络的训练装置的框图。
如图8所示,该深度估计网络的训练装置800可以包括第一估计模块810、第一处理模块820、第二处理模块830和第一调整模块840。
第一估计模块810用于使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像。
第一处理模块820用于从原始图像去除运动对象,得到原始图像的预处理图像。
第二处理模块830用于基于原始图像来估计位姿,并基于预处理图像修正位姿。
第一调整模块840用于根据原始图像、深度图像和经修正的位姿来调整深度估计网络的参数。
根据本申请的实施例,第一处理模块820包括分割单元和处理单元。
分割单元用于使用分割网络分别对第一原始图像和第二原始图像进行分割,得到第一原始图像的分割图像和第二原始图像的分割图像,第一原始图像的分割图像和第二原始图像的分割图像中各自包括多个对象。
处理单元用于分别从第一原始图像的分割图像和第二原始图像的分割图像中去除多个对象中的运动对象,得到第一原始图像的预处理图像和第二原始图像的预处理图像。
根据本申请的实施例,第一估计模块810包括第一估计单元和第二估计单元。
第一估计单元用于使用深度估计网络基于第一原始图像和第一原始图像的分割图像对第一原始图像进行深度估计,得到第一原始图像的深度图像。
第二估计单元用于使用深度估计网络基于第二原始图像和第二原始图像的分割图像对第二原始图像进行深度估计,得到第二原始图像的深度图像。
根据本申请的实施例,第二处理模块830包括第三估计单元和修正单元。
第三估计单元用于使用位姿估计网络估计第一原始图像和第二原始图像之间的位姿。
修正单元用于基于第一原始图像的预处理图像、第一原始图像的深度图像、第二原始图像的预处理图像和第二原始图像的深度图像修正位姿。
根据本申请的实施例,修正单元包括第一计算子单元、第二计算子单元和修正子单元。
第一计算子单元用于基于第一原始图像的预处理图像中每个像素点的位置信息和第一原始图像的深度图像的深度信息,计算第一原始图像的预处理图像中每个像素点的空间坐标信息。
第二计算子单元用于基于第二原始图像的预处理图像中每个像素点的位置信息和第二原始图像的深度图像的深度信息,计算第二原始图像的预处理图像中每个像素点的空间坐标信息。
修正子单元用于基于第一原始图像的预处理图像中各个像素点的空间坐标信息和第二原始图像的预处理图像中各个像素点的空间坐标信息修正位姿。
根据本申请的实施例,第一调整模块840包括生成单元、确定单元和调整单元。
生成单元用于基于经修正的位姿、第二原始图像和第二原始图像的深度图像,生成第二原始图像的投影图像。
确定单元用于基于第一原始图像和投影图像之间的差异以及第一原始图像和第一原始图像的深度图像之间的差异,确定深度估计网络的损失。
调整单元用于基于深度估计网络的损失调整深度估计网络的参数。
根据本申请的实施例,生成单元包括第三计算子单元和生成子单元。
第三计算子单元用于基于经修正的位姿、第二原始图像中每个像素点的位置信息和第二原始图像的深度图像中每个像素点的深度信息,计算第二原始图中每个像素点的投影位置信息。
生成子单元用于基于第二原始图中各像素点的投影位置信息生成投影图。
根据本申请的实施例,确定单元包括第四计算子单元、第五计算子单元和第六计算子单元。
第四计算子单元用于使用预设的第一损失函数计算第一原始图像和投影图像之间的光度误差。
第五计算子单元用于使用预设的第二损失函数计算第一原始图像和第一原始图像的深度图像之间的梯度误差。
第六计算子单元用于基于光度误差和梯度误差,计算深度估计网络的损失。
根据本申请的实施例,第五计算子单元用于基于第一原始图像的预处理图像,确定第一原始图像中的各个对象在第一原始图像中所在的区域以及在第一原始图像的深度图像中所在的区域;计算第一原始图像中各个对象所在区域的第一梯度以及第一原始图像的深度图像中各个对象所在区域的第二梯度;使用预设的第二损失函数基于第一梯度和第二梯度,针对各个对象计算第一原始图像和第一原始图像的深度图像之间的梯度误差;基于针对各对象的梯度误差,计算第一原始图像和第一原始图像的深度图像之间的总体梯度误差。
根据本申请的实施例,第一调整模块840用于在深度估计网络的损失不满足预设条件的情况下,调整深度估计网络的参数,并针对新的原始图像返回使用深度估计网络对原始图像进行深度估计的步骤。
根据本申请的实施例,深度估计网络的训练装置800还包括第二调整模块。
第二调整模块用于根据原始图像、深度图像和经修正的位姿来调整位姿估计网络的参数。
图9是根据本申请的一个实施例的图像的深度估计装置的框图。
如图9所示,该图像的深度估计装置900可以包括获取模块910和第二估计模块920。
获取模块910用于获取待估计的图像。
第二估计模块920用于使用深度估计网络对待估计的图像进行深度估计,得到待估计的图的深度图像。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。计算机程序产品可以包括计算机程序,该计算机程序被计算机执行时实现根据本申请提供的方法。
如图10所示,是根据本申请一个实施例的深度估计网络的训练方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图10所示,该电子设备1000包括:一个或多个处理器1001、存储器1002,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图10中以一个处理器1001为例。
存储器1002即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的深度估计网络的训练方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的深度估计网络的训练方法。
存储器1002作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的深度估计网络的训练的方法对应的程序指令/模块(例如,附图8所示的第一估计模块810、第一处理模块820、第二处理模块830和第一调整模块840)。处理器1001通过运行存储在存储器1002中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的深度估计网络的训练方法。
存储器1002可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据深度估计网络的训练方法的电子设备1000的使用所创建的数据等。此外,存储器1002可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器1002可选包括相对于处理器1001远程设置的存储器,这些远程存储器可以通过网络连接至深度估计网络的训练方法的电子设备1000。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
深度估计网络的训练方法的电子设备1000还可以包括:输入装置1003和输出装置1004。处理器1001、存储器1002、输入装置1003和输出装置1004可以通过总线或者其他方式连接,图10中以通过总线连接为例。
输入装置1003可接收输入的数字或字符信息,以及产生与深度估计网络的训练方法的电子设备1000的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置1004可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像,从原始图像去除运动对象,得到原始图像的预处理图像,基于所述原始图像来估计位姿,并基于所述预处理图像修正所述位姿,根据所述原始图像、所述深度图像和经修正的位姿来调整所述深度估计网络的参数。由于从原始图像去除了运动对象,可以减少运动对象对网络训练的影响,提高网络训练的精度。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (17)

1.一种深度估计网络的训练方法,包括:
使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像;
从原始图像去除运动对象,得到原始图像的预处理图像;
基于所述原始图像来估计位姿,并基于所述预处理图像修正所述位姿;
根据所述原始图像、所述深度图像和经修正的位姿来调整所述深度估计网络的参数。
2.根据权利要求1所述的方法,其中,所述原始图像包括第一原始图像和位于第一原始图像相邻帧的第二原始图像,所述从原始图像去除运动对象包括:
使用分割网络分别对所述第一原始图像和所述第二原始图像进行分割,得到第一原始图像的分割图像和第二原始图像的分割图像,所述第一原始图像的分割图像和第二原始图像的分割图像中各自包括多个对象;
分别从所述第一原始图像的分割图像和所述第二原始图像的分割图像中去除多个对象中的运动对象,得到第一原始图像的预处理图像和第二原始图像的预处理图像。
3.根据权利要求2所述的方法,其中,所述使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像包括:
使用所述深度估计网络基于所述第一原始图像和所述第一原始图像的分割图像对所述第一原始图像进行深度估计,得到所述第一原始图像的深度图像;
使用所述深度估计网络基于所述第二原始图像和所述第二原始图像的分割图像对所述第二原始图像进行深度估计,得到所述第二原始图像的深度图像。
4.根据权利要求3所述的方法,其中,所述基于所述原始图像来估计位姿,并基于所述预处理图像修正所述位姿包括:
使用位姿估计网络估计所述第一原始图像和所述第二原始图像之间的位姿;
基于所述第一原始图像的预处理图像、第一原始图像的深度图像、第二原始图像的预处理图像和第二原始图像的深度图像修正所述位姿。
5.根据权利要求4所述的方法,其中,所述基于所述第一原始图像的预处理图像、第一原始图像的深度图像、第二原始图像的预处理图像和第二原始图像的深度图像修正所述位姿包括:
基于所述第一原始图像的预处理图像中每个像素点的位置信息和所述第一原始图像的深度图像的深度信息,计算所述第一原始图像的预处理图像中每个像素点的空间坐标信息;
基于所述第二原始图像的预处理图像中每个像素点的位置信息和所述第二原始图像的深度图像的深度信息,计算所述第二原始图像的预处理图像中每个像素点的空间坐标信息;
基于所述第一原始图像的预处理图像中各个像素点的空间坐标信息和第二原始图像的预处理图像中各个像素点的空间坐标信息修正所述位姿。
6.根据权利要求2所述的方法,其中,所述根据所述原始图像、所述深度图像和经修正的位姿来调整所述深度估计网络的参数包括:
基于所述经修正的位姿、第二原始图像和第二原始图像的深度图像,生成所述第二原始图像的投影图像;
基于所述第一原始图像和所述投影图像之间的差异以及所述第一原始图像和所述第一原始图像的深度图像之间的差异,确定所述深度估计网络的损失;
基于所述深度估计网络的损失调整所述深度估计网络的参数。
7.根据权利要求6所述的方法,其中,所述基于所述经修正的位姿、第二原始图像和第二原始图像的深度图像,生成所述第二原始图像的投影图像包括:
基于所述经修正的位姿、所述第二原始图像中每个像素点的位置信息和所述第二原始图像的深度图像中每个像素点的深度信息,计算所述第二原始图中每个像素点的投影位置信息;
基于所述第二原始图中各像素点的投影位置信息生成所述投影图。
8.根据权利要求6所述的方法,其中,所述基于所述第一原始图像和所述投影图像之间的差异以及所述第一原始图像和所述第一原始图像的深度图像之间的差异,确定所述深度估计网络的损失包括:
使用预设的第一损失函数计算所述第一原始图像和所述投影图像之间的光度误差;
使用预设的第二损失函数计算所述第一原始图像和所述第一原始图像的深度图像之间的梯度误差;
基于所述光度误差和所述梯度误差,计算所述深度估计网络的损失。
9.根据权利要求8所述的方法,其中,所述使用预设的第二损失函数计算所述第一原始图像和所述第一原始图像的深度图像之间的梯度误差包括:
基于所述第一原始图像的预处理图像,确定所述第一原始图像中的各个对象在所述第一原始图像中所在的区域以及在所述第一原始图像的深度图像中所在的区域;
计算第一原始图像中各个对象所在区域的第一梯度以及所述第一原始图像的深度图像中所述各个对象所在区域的第二梯度;
使用预设的第二损失函数基于所述第一梯度和所述第二梯度,针对各个对象计算所述第一原始图像和所述第一原始图像的深度图像之间的梯度误差;
基于针对各对象的梯度误差,计算所述第一原始图像和所述第一原始图像的深度图像之间的总体梯度误差。
10.根据权利要求6所述的方法,其中,所述基于所述深度估计网络的损失调整所述深度估计网络的参数包括:
在所述深度估计网络的损失不满足预设条件的情况下,调整所述深度估计网络的参数,并针对新的原始图像返回使用深度估计网络对原始图像进行深度估计的步骤。
11.根据权利要求4所述的方法,还包括:
根据所述原始图像、所述深度图像和经修正的位姿来调整所述位姿估计网络的参数。
12.一种图像的深度估计方法,包括:
获取待估计的图像;
使用深度估计网络对所述待估计的图像进行深度估计,得到所述待估计的图的深度图像;
其中,所述深度估计网络是利用根据权利要求1~11中任一项所述的方法训练的。
13.一种深度估计网络的训练装置,包括:
第一估计模块,用于使用深度估计网络对原始图像进行深度估计,得到原始图像的深度图像;
第一处理模块,用于从原始图像去除运动对象,得到原始图像的预处理图像;
第二处理模块,用于基于所述原始图像来估计位姿,并基于所述预处理图像修正所述位姿;
调整模块,用于根据所述原始图像、所述深度图像和经修正的位姿来调整所述深度估计网络的参数。
14.一种图像的深度估计装置,包括:
获取模块,用于获取待估计的图像;
第二估计模块,用于使用深度估计网络对所述待估计的图像进行深度估计,得到所述待估计的图的深度图像;
其中,所述深度估计网络是利用根据权利要求13所述的转置训练的。
15.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至12中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1至12中任一项所述的方法。
17.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1至12中任一项所述的方法。
CN202011513854.1A 2020-12-18 2020-12-18 深度估计网络的训练方法、图像的深度估计方法、设备 Active CN112561978B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202011513854.1A CN112561978B (zh) 2020-12-18 2020-12-18 深度估计网络的训练方法、图像的深度估计方法、设备
EP21180599.9A EP3872760B1 (en) 2020-12-18 2021-06-21 Method and apparatus of training depth estimation network, and method and apparatus of estimating depth of image
US17/353,634 US11915439B2 (en) 2020-12-18 2021-06-21 Method and apparatus of training depth estimation network, and method and apparatus of estimating depth of image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011513854.1A CN112561978B (zh) 2020-12-18 2020-12-18 深度估计网络的训练方法、图像的深度估计方法、设备

Publications (2)

Publication Number Publication Date
CN112561978A true CN112561978A (zh) 2021-03-26
CN112561978B CN112561978B (zh) 2023-11-17

Family

ID=75031978

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011513854.1A Active CN112561978B (zh) 2020-12-18 2020-12-18 深度估计网络的训练方法、图像的深度估计方法、设备

Country Status (3)

Country Link
US (1) US11915439B2 (zh)
EP (1) EP3872760B1 (zh)
CN (1) CN112561978B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114037087A (zh) * 2021-10-29 2022-02-11 北京百度网讯科技有限公司 模型训练方法及装置、深度预测方法及装置、设备和介质
CN114612510A (zh) * 2022-03-01 2022-06-10 腾讯科技(深圳)有限公司 图像处理方法、装置、设备、存储介质及计算机程序产品
WO2022257487A1 (zh) * 2021-06-08 2022-12-15 北京百度网讯科技有限公司 深度估计模型的训练方法, 装置, 电子设备及存储介质
TWI819639B (zh) * 2022-06-02 2023-10-21 鴻海精密工業股份有限公司 深度估計模型之訓練方法、裝置、電子設備及存儲介質

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116758131B (zh) * 2023-08-21 2023-11-28 之江实验室 一种单目图像深度估计方法、装置和计算机设备
CN117115786B (zh) * 2023-10-23 2024-01-26 青岛哈尔滨工程大学创新发展中心 一种联合分割跟踪的深度估计模型训练方法及使用方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160360081A1 (en) * 2015-06-05 2016-12-08 Canon Kabushiki Kaisha Control apparatus, image pickup apparatus, control method, and non-transitory computer-readable storage medium
CN108986166A (zh) * 2018-07-20 2018-12-11 山东大学 一种基于半监督学习的单目视觉里程预测方法及里程计
WO2019099684A1 (en) * 2017-11-15 2019-05-23 Google Llc Unsupervised learning of image depth and ego-motion prediction neural networks
WO2020051270A1 (en) * 2018-09-05 2020-03-12 Google Llc Unsupervised depth prediction neural networks
CN110910447A (zh) * 2019-10-31 2020-03-24 北京工业大学 一种基于动静态场景分离的视觉里程计方法
CN111080699A (zh) * 2019-12-11 2020-04-28 中国科学院自动化研究所 基于深度学习的单目视觉里程计方法及系统
CN111311685A (zh) * 2020-05-12 2020-06-19 中国人民解放军国防科技大学 一种基于imu/单目图像的运动场景重构无监督方法
KR20200075727A (ko) * 2018-12-18 2020-06-26 삼성전자주식회사 깊이 맵 산출 방법 및 장치
CN111340867A (zh) * 2020-02-26 2020-06-26 清华大学 图像帧的深度估计方法、装置、电子设备及存储介质
CN111369608A (zh) * 2020-05-29 2020-07-03 南京晓庄学院 一种基于图像深度估计的视觉里程计方法
CN111724439A (zh) * 2019-11-29 2020-09-29 中国科学院上海微系统与信息技术研究所 一种动态场景下的视觉定位方法及装置
CN111784757A (zh) * 2020-06-30 2020-10-16 北京百度网讯科技有限公司 深度估计模型的训练方法、深度估计方法、装置及设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018039269A1 (en) * 2016-08-22 2018-03-01 Magic Leap, Inc. Augmented reality display device with deep learning sensors
US10803546B2 (en) * 2017-11-03 2020-10-13 Baidu Usa Llc Systems and methods for unsupervised learning of geometry from images using depth-normal consistency
US11537811B2 (en) * 2018-12-04 2022-12-27 Tesla, Inc. Enhanced object detection for autonomous vehicles based on field view
US10769848B1 (en) * 2019-05-24 2020-09-08 Adobe, Inc. 3D object reconstruction using photometric mesh representation

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160360081A1 (en) * 2015-06-05 2016-12-08 Canon Kabushiki Kaisha Control apparatus, image pickup apparatus, control method, and non-transitory computer-readable storage medium
WO2019099684A1 (en) * 2017-11-15 2019-05-23 Google Llc Unsupervised learning of image depth and ego-motion prediction neural networks
CN108986166A (zh) * 2018-07-20 2018-12-11 山东大学 一种基于半监督学习的单目视觉里程预测方法及里程计
WO2020051270A1 (en) * 2018-09-05 2020-03-12 Google Llc Unsupervised depth prediction neural networks
KR20200075727A (ko) * 2018-12-18 2020-06-26 삼성전자주식회사 깊이 맵 산출 방법 및 장치
CN110910447A (zh) * 2019-10-31 2020-03-24 北京工业大学 一种基于动静态场景分离的视觉里程计方法
CN111724439A (zh) * 2019-11-29 2020-09-29 中国科学院上海微系统与信息技术研究所 一种动态场景下的视觉定位方法及装置
CN111080699A (zh) * 2019-12-11 2020-04-28 中国科学院自动化研究所 基于深度学习的单目视觉里程计方法及系统
CN111340867A (zh) * 2020-02-26 2020-06-26 清华大学 图像帧的深度估计方法、装置、电子设备及存储介质
CN111311685A (zh) * 2020-05-12 2020-06-19 中国人民解放军国防科技大学 一种基于imu/单目图像的运动场景重构无监督方法
CN111369608A (zh) * 2020-05-29 2020-07-03 南京晓庄学院 一种基于图像深度估计的视觉里程计方法
CN111784757A (zh) * 2020-06-30 2020-10-16 北京百度网讯科技有限公司 深度估计模型的训练方法、深度估计方法、装置及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
岑仕杰;何元烈;陈小聪;: "结合注意力与无监督深度学习的单目深度估计", 广东工业大学学报, no. 04 *
王宪伦;张海洲;安立雄;: "基于图像语义分割的物体位姿估计", 机械制造与自动化, no. 02 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022257487A1 (zh) * 2021-06-08 2022-12-15 北京百度网讯科技有限公司 深度估计模型的训练方法, 装置, 电子设备及存储介质
CN113379813B (zh) * 2021-06-08 2024-04-30 北京百度网讯科技有限公司 深度估计模型的训练方法、装置、电子设备及存储介质
CN114037087A (zh) * 2021-10-29 2022-02-11 北京百度网讯科技有限公司 模型训练方法及装置、深度预测方法及装置、设备和介质
CN114037087B (zh) * 2021-10-29 2024-02-09 北京百度网讯科技有限公司 模型训练方法及装置、深度预测方法及装置、设备和介质
CN114612510A (zh) * 2022-03-01 2022-06-10 腾讯科技(深圳)有限公司 图像处理方法、装置、设备、存储介质及计算机程序产品
CN114612510B (zh) * 2022-03-01 2024-03-29 腾讯科技(深圳)有限公司 图像处理方法、装置、设备、存储介质及计算机程序产品
TWI819639B (zh) * 2022-06-02 2023-10-21 鴻海精密工業股份有限公司 深度估計模型之訓練方法、裝置、電子設備及存儲介質

Also Published As

Publication number Publication date
EP3872760A2 (en) 2021-09-01
CN112561978B (zh) 2023-11-17
EP3872760A3 (en) 2022-01-19
US11915439B2 (en) 2024-02-27
EP3872760B1 (en) 2023-05-03
US20210312650A1 (en) 2021-10-07

Similar Documents

Publication Publication Date Title
CN112561978B (zh) 深度估计网络的训练方法、图像的深度估计方法、设备
CN108961327B (zh) 一种单目深度估计方法及其装置、设备和存储介质
CN110264509B (zh) 确定图像捕捉设备的位姿的方法、装置及其存储介质
CN108335353B (zh) 动态场景的三维重建方法、装置和系统、服务器、介质
US9269003B2 (en) Diminished and mediated reality effects from reconstruction
CN111294665B (zh) 视频的生成方法、装置、电子设备及可读存储介质
CN111753961A (zh) 模型训练方法和装置、预测方法和装置
CN111127524A (zh) 一种轨迹跟踪与三维重建方法、系统及装置
CN111612852A (zh) 用于验证相机参数的方法和装置
CN111291218B (zh) 视频融合方法、装置、电子设备及可读存储介质
WO2018033852A1 (en) Real-time hand modeling and tracking using sphere-mesh models
CN110070578B (zh) 一种回环检测方法
CN112241718A (zh) 车辆信息的检测方法、检测模型的训练方法和装置
CN115362478A (zh) 用于标记图像之间的空间关系的强化学习模型
CN113409368A (zh) 建图方法及装置、计算机可读存储介质、电子设备
CN111784842B (zh) 三维重建方法、装置、设备及可读储存介质
CN114972450A (zh) 图像的立体匹配方法以及装置
Anasosalu et al. Compact and accurate 3-D face modeling using an RGB-D camera: let's open the door to 3-D video conference
CN112085842A (zh) 深度值确定方法及装置、电子设备和存储介质
CN112750164A (zh) 轻量化定位模型的构建方法、定位方法、电子设备
CN111866493A (zh) 基于头戴显示设备的图像校正方法、装置及设备
CN109472860B (zh) 基于人工智能的深度图平衡选优方法及装置
CN110751205A (zh) 物体关联方法、装置、设备和介质
CN117333827A (zh) 深度图像获取方法、电子设备及存储介质
CN117456085A (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