CN115187638B - 一种基于光流遮罩的无监督单目深度估计方法 - Google Patents

一种基于光流遮罩的无监督单目深度估计方法 Download PDF

Info

Publication number
CN115187638B
CN115187638B CN202211091218.3A CN202211091218A CN115187638B CN 115187638 B CN115187638 B CN 115187638B CN 202211091218 A CN202211091218 A CN 202211091218A CN 115187638 B CN115187638 B CN 115187638B
Authority
CN
China
Prior art keywords
optical flow
estimation
image
depth
network
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
CN202211091218.3A
Other languages
English (en)
Other versions
CN115187638A (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.)
Nanjing Yizhi Network Space Technology Innovation Research Institute Co ltd
Original Assignee
Nanjing Yizhi Network Space Technology Innovation Research Institute 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 Nanjing Yizhi Network Space Technology Innovation Research Institute Co ltd filed Critical Nanjing Yizhi Network Space Technology Innovation Research Institute Co ltd
Priority to CN202211091218.3A priority Critical patent/CN115187638B/zh
Publication of CN115187638A publication Critical patent/CN115187638A/zh
Application granted granted Critical
Publication of CN115187638B publication Critical patent/CN115187638B/zh
Priority to PCT/CN2023/092180 priority patent/WO2024051184A1/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/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • 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
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • 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/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)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (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)

Abstract

本发明公开了一种基于光流遮罩的无监督单目深度估计方法,该方法具体为:采用深度估计网络,对图像帧进行深度估计;对深度估计网络进行训练时引入相机位姿估计模型和光流估计网络;根据光流估计网络输出的相邻两幅图像帧之间的光流估计,对当前帧进行重构,得到光流重构图像;根据相机位姿估计模型估计出的相邻两幅图像帧之间的位姿变换矩阵,对当前帧进行重构,得到深度重构图像,根据深度重构图像和光流重构图像,建立损失函数对深度估计网络,相机位姿估计模型和光流估计网络进行联合训练。本发明提高了深度估计的准确性。

Description

一种基于光流遮罩的无监督单目深度估计方法
技术领域
本发明属于图像识别技术领域。
背景技术
从视频中对于三维场景进行理解感知是一个受到广泛关注的基本课题。它包括许多经典的计算机视觉任务,如深度恢复、光流估计、视觉里程测量等。这些技术具有广泛的工业应用,包括自动驾驶平台、交互式协同机器人、定位导航系统等。传统的结构自运动(Structure from Motion,SfM)方法对其进行了综合处理,旨在同时重构场景结构和摄像机运动。
深度估计是计算机视觉领域的一个基础性问题,其可以应用在机器人导航、增强现实、三维重建、自动驾驶等领域。而目前大部分深度估计都是基于二维RGB图像到RBG-D图像的转化估计,主要包括从图像明暗、不同视角、光度、纹理信息等获取场景深度形状的Shape from X方法,还有结合SFM(Structure from motion)和SLAM(SimultaneousLocalization And Mapping)等方式预测相机位姿的算法。其中虽然有很多设备可以直接获取深度,但是设备造价昂贵。也有利用双目进行深度估计,但是由于双目图像需要利用立体匹配进行像素点对应和视差计算,所以计算复杂度也较高,尤其是对于低纹理场景的匹配效果不好。
发明内容
发明目的:为了解决上述现有技术存在的问题,本发明提供了一种基于光流遮罩的无监督单目深度估计方法。
技术方案:本发明提供了一种基于光流遮罩的无监督单目深度估计方法,该方法具体为:采用深度估计网络,对图像帧进行深度估计;对深度估计网络进行训练时引入相机位姿估计模型和光流估计网络;根据光流估计网络输出的视频序列中相邻两幅图像帧It与It′之间的光流估计,对当前帧图像It进行重构,得到光流重构图像
Figure GDA0003911592350000011
t′=t-1或者t′=t+1;根据相机位姿估计模型估计出的相邻两幅图像帧之间的位姿变换矩阵,对当前帧图像进行重构,得到深度重构图像
Figure GDA0003911592350000012
根据
Figure GDA0003911592350000013
Figure GDA0003911592350000014
建立损失函数L对深度估计网络,相机位姿估计模型和光流估计网络进行联合训练:
L=μLp+λLs
其中,λ和μ均为超参数,Lp为光度损失误差,Ls为平滑度损失;Ls的表达式为:
Figure GDA0003911592350000021
其中,
Figure GDA00039115923500000230
表示在当前帧图像中坐标为(x,y)的像素点的深度归一化的值;
Figure GDA0003911592350000022
表示对x进行求导,
Figure GDA0003911592350000023
为对y进行求导;
Lp的表达式为:
Figure GDA0003911592350000024
其中,pe(.)的表达式为:
Figure GDA0003911592350000025
其中,Ia和Ib分别表示任意两幅图像帧,α为超参数,SSIM(.)为相似度计算函数,Ma的表达式为:
Figure GDA0003911592350000026
其中,r为预设的阈值。
进一步的,所述光流估计网络对训练样本中相邻的两帧图像It和It′进行如下处理:
步骤1:在光流估计网络中采用金字塔结构的编码器提取It和It′之间的n个尺度的特征图像对
Figure GDA0003911592350000027
表示It的第i个尺度的特征图像;
Figure GDA0003911592350000028
表示It′的第i个尺度的特征图像,i=1,2,...,n;
步骤2:在光流估计网络的金字塔结构的解码器中包括n个编码器模块和n个上采样模块,当i=1时,将
Figure GDA0003911592350000029
Figure GDA00039115923500000210
输入至第一个编码器模块中,得到
Figure GDA00039115923500000211
Figure GDA00039115923500000212
之间的运动光流
Figure GDA00039115923500000213
Figure GDA00039115923500000214
Figure GDA00039115923500000215
输入至第一个上采样模块中,得到
Figure GDA00039115923500000216
Figure GDA00039115923500000217
之间的上采样光流
Figure GDA00039115923500000218
;当n>i>1时,将
Figure GDA00039115923500000219
和第i-1个上采样模块输出的上采样光流
Figure GDA00039115923500000220
输入至第i个编码器模块,得到
Figure GDA00039115923500000221
Figure GDA00039115923500000222
之间的运动光流
Figure GDA00039115923500000223
Figure GDA00039115923500000224
Figure GDA00039115923500000225
输入至第i个上采样模块,得到
Figure GDA00039115923500000226
Figure GDA00039115923500000227
之间的上采样光流
Figure GDA00039115923500000228
当i=n时,将
Figure GDA00039115923500000229
和第n-1个上采样模块输出的上采样光流
Figure GDA0003911592350000031
输入至第n个编码器模块,得到
Figure GDA0003911592350000032
Figure GDA0003911592350000033
之间的运动光流
Figure GDA0003911592350000034
将It和It′输入至卷积模块,采用第n个上采样模块对卷积模块的输出和运动光流
Figure GDA0003911592350000035
进行上采样,输出最终的光流估计;
进一步的,所述步骤2中,针对第i个尺度的特征图像对
Figure GDA0003911592350000036
和运动光流
Figure GDA0003911592350000037
相应的上采样模块进行如下处理:
步骤2.1:采用双线性插值的方式提高
Figure GDA0003911592350000038
的分辨率得到初始光流
Figure GDA0003911592350000039
Figure GDA00039115923500000310
其中,p表示初始光流
Figure GDA00039115923500000311
中任意像素点的坐标,N(p/s)表示光流
Figure GDA00039115923500000312
中与点p/s相邻的四个像素点,s是比例放大率,ω(p/s,k)为双线性插值的权重;
Figure GDA00039115923500000313
表示像素点p的初始光流值,
Figure GDA00039115923500000314
表示光流
Figure GDA00039115923500000315
中像素点k的光流值;
步骤2.2:采用编码器计算得到
Figure GDA00039115923500000316
Figure GDA00039115923500000317
之间的插值流
Figure GDA00039115923500000318
采用插值流
Figure GDA00039115923500000319
对初始光流
Figure GDA00039115923500000320
进行翘曲变换得到光流
Figure GDA00039115923500000321
Figure GDA00039115923500000322
其中,N(d)表示初始光流
Figure GDA00039115923500000323
中与像素点d相邻的四个像素点,
Figure GDA00039115923500000324
表示初始光流
Figure GDA00039115923500000325
中像素点k’的光流值,
Figure GDA00039115923500000326
表示像素点p的插值流,ω(d,k′)表示权重;
步骤2.3:根据如下公式将
Figure GDA00039115923500000327
Figure GDA00039115923500000328
进行融合,得到相应的上采样模块的输出
Figure GDA00039115923500000329
Figure GDA00039115923500000330
其中,
Figure GDA00039115923500000331
表示插值映射,⊙表示乘积。
进一步的,所述深度估计网络采用ResNet网络。
有益效果:本发明设计了一种基于光流遮罩的无监督单目深度估计方法,使用金字塔结构从不同的粒度进行光流估计,并加入了上采样模块和插值流,改善了运动边界区域的双线性插值混合问题;而后将根据光流估计重构的图像和当前图像进行比较,将差距较大的部分认为是自我运动的物体,将该部分在深度估计重构时进行掩码,以减少运动物体对深度估计的影响,提高深度估计的准确性;整体而言,本发明可以实现对图像的深度估计,以及对深度估计精度的部分改善。
附图说明
图1(a)为深度估计网络结构图;
图1(b)为深度估计网络的层级参数设置图;
图2是相机位姿估计模型示意图;
图3是光流估计网络中金字塔结构的解码器示意图;
图4是本发明基于光流作为遮罩的训练总架构示意图。
具体实施方式
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
本发明提供的一种基于光流遮罩的无监督单目深度估计方法,按如下步骤S1-步骤S5,获得深度估计网络和相机位姿估计模型,然后应用这两个模型,完成对图像的深度估计,得到深度估计值Dt
S1.获得KITTI数据集,使用raw data数据集标准文件(共包含180G数据,分为Road,City,Residential和Person四个序列)。其中深度估计网络使用传感器的原始数据图像作为输入的图像,使用标定文件查看相机内部参数,使用velodyne_points文件查看激光雷达数据作为地面真值。
S2.本实施例中深度估计网络采用ResNet网络,基于ResNet网络以视频帧中的每一帧图像作为输入,估计出图像每个像素的深度值。
S3.基于相机位姿估计模型,以视频帧的两帧连续图像作为输入,以估计的位姿变换矩阵Tt′-t作为输出,其中包括两部分,一部分是相机的旋转变换,一部分是相机的平移变换。
如图1中的图(a),图1中的图(b)以及图2所示,使用ResNet网络进行深度估计的编码子模块,使用残差学习结构防止退化问题的出现,使用前向神经网络和短路机制,以便在编码过程中输出更具有语义信息的特征图,具体步骤如下:
S21:ResNet网络中的编码器以单张图片作为输入,以维度为C*H*W的特征图为输出,其中C为该特征图的通道数,H为该特征图的长度,W为该特征图的宽度,本实施例中ResNet网络输出五级特征,级数越高,特征空间分辨率越低,表示能力越强,特征个数越多。
在输入图片之后,经过ResNet网络第一个7×7的卷积层,输出的channel(通道)为64,stride(步幅)为2,padding(填充)为3;然后经过一个3×3的最大池化层,stride为2,padding为1;除了最大池化层之外,其他的下采样都是使用卷积层实现的,分为四个卷积组:layer1,layer2,layer3,layer4,除了layer1的下采样使用最大池化层实现之外,其他层的下采样都是邻接上一个卷积组的残差块实现。
在ResNet网络的残差结构中,主分支使用了三个卷积层:一个1×1的卷积层用来压缩channel的维度,一个3×3的卷积层以及一个1×1的卷积层用来还原channel维度。
S22:解码器使用上采样的方式,联合ResNet网络中编码器输出的特征进行深度估计,得到预设的不同尺度下的深度估计值。
对于输入的特征图,先上采样两倍,将特征图的像素复制到行和列,一个像素产生2×2的输出,然后经过卷积操作,不改变分辨率,将通道数调整为一半,通过这样的操作实现通道数减半,分辨率不变。经过上采样的特征图和编码器输出的特征图进行跳跃连接,输出对应的通道数的视差图,最后再经过两个3×3的卷积层和一个sigmoid激活函数得到深度估计。
根据光度一致性原理,可以得知对于同一物体来说,外界的环境在较短的时间基本是没有变化的,那么时间间隔较短的相邻帧中同一物体的光度是具有一致性的特点的。由此根据由深度估计网络和相机位姿估计模型得到的深度重构图像
Figure GDA0003911592350000051
t′=t+1或者t′=t-1,t表示第t帧;可以得到重构的光度损失误差Ls,再将误差回传到两个网络中,训练深度估计网络和相机位姿估计模型,提高估计结果的准确性。本实施例在此损失之上,继续增加了深度估计平滑化作为正则项及图像结构相似性(SSIM)损失,能够获得更好的深度估计效果。
深度重构图像
Figure GDA0003911592350000052
是基于图像的变换完全是由相机的运动产生的这一原理得到的,重构过程使用深度估计网络估计的结果和相机位姿估计模型估计的结果。但是实际场景下大部分存在自我运动的物体,使用该方法进行重构会造成计算的失误,重构图像
Figure GDA0003911592350000061
与原始的当前帧图像It之间差距较大可能不是由于深度估计结果错误,而是由于单纯的相机运动无法正确地重构出运动物体,导致正确的深度重构图像与当前帧图像差距较大,最终导致深度估计结果不准确。基于上述现象,在训练时加入光流估计网络,在深度估计计算损失的部分加入光流重构图像对运动物体的运动进行估计,将光流重构图像
Figure GDA0003911592350000062
作为约束运动物体深度估计的一部分。使用光流重构图像和当前帧图像的差值作为损失计算的约束。
S4.基于光流估计网络,以视频帧的两帧连续图像作为输入,以估计的两帧图像之间的运动光流作为输出,表示图像中每个像素向下一个图像的运动变化,使用不同的颜色和亮度表示光流的大小和方向。
使用光流估计网络的金字塔结构对两帧连续图像之间的运动光流进行估计,得到光流重构的图像,步骤S4具体包括以下步骤:
S41:在光流估计网络中一般采用金字塔结构从粗粒度到细粒度捕捉全局运动和局部运动,将相邻的两幅图像It与It′输入至光流估计网络,采用H表述参数为θ的光流估计网络,Vf表示从It中的每一个像素到其在It′中对应像素移动的正向流场。
光流估计模型H为金字塔结构,分为两个阶段:金字塔编码和金字塔解码。编码阶段以两帧连续图像作为输入的图像对,经过不同的卷积层之后,输出提取出n个尺度的特征图像对
Figure GDA0003911592350000063
表示It的第i个尺度的特征图像,
Figure GDA0003911592350000064
表示It′的第i个尺度的特征图像,i=1,2,...,n(本实施例中n=5)。
如图3所示,针对第一个尺度的特征图像对(也即i=1时),在解码阶段对这对特征图像对使用第一个解码器模块D进行解码操作,由粗到细的方式进行估计,得到第i=1个的特征图像对之间的运动光流
Figure GDA0003911592350000065
采用第一个上采样模块S对运动光流
Figure GDA0003911592350000066
Figure GDA0003911592350000067
(也即
Figure GDA0003911592350000068
Figure GDA0003911592350000069
)进行上采样,得到i=1时,
Figure GDA00039115923500000610
Figure GDA00039115923500000611
之间的上采样光流
Figure GDA00039115923500000612
当n>j>1时,将
Figure GDA00039115923500000613
和第i-1个上采样模块输出的上采样光流
Figure GDA00039115923500000614
输入至第i个编码器模块,得到
Figure GDA00039115923500000615
Figure GDA00039115923500000616
之间的运动光流
Figure GDA00039115923500000617
Figure GDA00039115923500000618
Figure GDA00039115923500000619
输入至第i个上采样模块,得到
Figure GDA00039115923500000620
Figure GDA00039115923500000621
之间的上采样光流
Figure GDA0003911592350000071
当i=n时,将
Figure GDA0003911592350000072
和第n-1个上采样模块输出的上采样光流
Figure GDA0003911592350000073
输入至第n个编码器模块,得到
Figure GDA0003911592350000074
Figure GDA0003911592350000075
之间的运动光流
Figure GDA0003911592350000076
将It和It′输入至卷积模块,采用第n个上采样模块对卷积模块的输出和运动光流
Figure GDA0003911592350000077
进行上采样,输出最终的光流估计。
在实际应用中,考虑到效率问题,通常情况下使用五个尺度进行光流估计效果最佳。其中实现的逻辑公式如下所示:
Figure GDA0003911592350000078
Figure GDA0003911592350000079
其中,S(.)是上采样模块S,D(.)是解码器模块D。
S42:本实施例中上采样模块为自引导上采样模块,本实施例对于双线性上采样的边界融合造成混合插值的情况做出改进。
在使用金字塔结构进行光流估计的时候,需要使用到上采样模块,在尺寸小的图像上进行上采样,一般使用双线性插值的方式。但是在运动边界附近而言,如果使用双线性插值的方式,对于两边运动情况不一致的运动边界附近,会由运动1,2进行插值计算,运动1靠近边界的区域会受到运动2的影响,运动2所在的靠近边界的区域会受到运动1插值的影响,产生混合插值的现象。但是实际情况下,他们属于俩个不同的运动区域,不应该受到其他运动区域的干涉。
为了避免上述这种现象,在上采样过程使用自引导上采样模块,对于运动边界区域来说,使用和它统一运动方向的附近的点进行插值计算,在这之后将该值通过学习到的插值流进行移动,将最终移动到边界位置的区域作为该区域的插值点。
针对得到的第i-1个尺度的特征图像对对应的运动光流
Figure GDA00039115923500000710
(此时为低分辨率),首先通过双线性插值的方式提高
Figure GDA00039115923500000711
的分辨率生成初始光流
Figure GDA00039115923500000712
Figure GDA00039115923500000713
其中,p表示初始光流
Figure GDA00039115923500000714
中任意像素点的坐标,N(p/s)表示光流
Figure GDA00039115923500000715
中与点p/s相邻的四个像素点,s是比例放大率,ω(p/s,k)为线性插值的权重;
Figure GDA0003911592350000081
表示像素点p的初始光流值,
Figure GDA0003911592350000082
表示运动光流
Figure GDA0003911592350000083
中像素点k的光流值。
然后根据特征
Figure GDA0003911592350000084
Figure GDA0003911592350000085
计算出对应的插值流
Figure GDA0003911592350000086
(本实施例中采用编码器计算插值流),采用插值流
Figure GDA0003911592350000087
对初始光流
Figure GDA0003911592350000088
进行翘曲变换得到光流
Figure GDA0003911592350000089
是双线性插值得到的结果,但是这种插值方式会将边缘部分变为两边运动的差值之和,不符合实际,所以通过插值流
Figure GDA00039115923500000810
将靠近边缘部分的点经过插值流变换边缘的点,如果边缘点d可以由同一运动区域的点p经过插值流变换而成,那么就对点p周围的四个点进行双线性插值计算公式如下所示:
Figure GDA00039115923500000811
其中,N(d)表示初始光流
Figure GDA00039115923500000812
中与像素点d相邻的四个像素点,
Figure GDA00039115923500000813
表示光流
Figure GDA00039115923500000814
中像素点k′的光流值,
Figure GDA00039115923500000815
表示像素点p的插值流,ω(d,k′)表示权重。
因为混合插值只发生在对象的边缘部分,所以无需在非边缘部分学习插值流。因此使用插值映射
Figure GDA00039115923500000816
强制模型只在边缘部分学习插值流,最终的上采样模块输出的结果
Figure GDA00039115923500000817
Figure GDA00039115923500000818
Figure GDA00039115923500000819
的融合,计算公式如下:
Figure GDA00039115923500000820
其中,⊙为对应元素的权重乘积运算。本实施例中为了产生插值流
Figure GDA00039115923500000821
和插值映射
Figure GDA00039115923500000822
使用一个具有五层卷积层的密集块。具体实现方式为,将
Figure GDA00039115923500000825
Figure GDA00039115923500000823
连接起来作为密集块的输入。密集块中每个卷积层的卷积核的个数依次为32,32,32,16,8;密集块的输出是一个3通道的张量映射。使用张量图的前两个通道作为插值流,使用最后一个通道通过sigmoid层形成插值映射,最终的自学习插值映射几乎是边缘映射,插值流也集中在对象边缘区域。
S5.如图4所示,基于深度估计网络、相机位姿估计模型以及光流估计网络,可以得到由相邻图像到当前帧图像的重构图像,分别是深度重构图像
Figure GDA00039115923500000824
以及光流重构图像
Figure GDA0003911592350000091
最终的损失函数计算公式为L=μLp+λLs
其中,λ和μ均为超参数,Lp为光度损失误差,Ls为平滑度损失;Ls的表达式为:
Figure GDA0003911592350000092
Figure GDA0003911592350000093
表示在当前帧图像中坐标为(x,y)的像素点的深度归一化的值;
Figure GDA0003911592350000094
表示对x进行求导,
Figure GDA0003911592350000095
对y进行求导。
Lp的表达式为:
Figure GDA0003911592350000096
其中函数pe(.)的原始表达式为:
Figure GDA0003911592350000097
其中,Ia和Ib分别表示任意两幅图像帧,α为超参数,SSIM(.)为相似度计算函数。
本实施在该函数pe(.)中加入了光流重构图像
Figure GDA0003911592350000098
则本实施例中函数pe(.)的表达式为:
Figure GDA0003911592350000099
其中Ma的表达式为:
Figure GDA00039115923500000910
其中,r为预设的阈值。
其中Ma表示根据光流重构图像结果对原始的当前帧图像(也即图4中的原图像)估计进行遮罩,它是将光流重构的图像和实际图像(也即与当前帧图像相邻的图像)的差值大小为依据,而设定的一个掩码,由0,1组成,然后作为权重加入到原来的pe(.)损失函数中,其中如果光流重构图像
Figure GDA00039115923500000911
与It′之间的差距大于0.8,那么认为该处很有可能是移动物体,对于该位置进行遮罩。
本实施例使用估计的光流进行重构图像的合成。因为光流中包括从相邻两帧图像之间的光流运动,包括整个场景中静态背景的刚体运动和场景中的移动物体的非刚体运动,根据光流变化以及与当前帧图像相邻的图,可以合成光流重构图像,这一步的合成图像考虑到了场景中的移动物体。而深度重构图像
Figure GDA00039115923500000912
的计算公式中假设场景中没有移动物体,所以深度重构图像
Figure GDA0003911592350000101
只考虑到了刚体流的部分。本实施例使用光流估计网络对于运动物体的深度估计效果有进一步改善,可以增加深度估计的准确性。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。

Claims (2)

1.一种基于光流遮罩的无监督单目深度估计方法,其特征在于:该方法具体为:采用深度估计网络,对图像帧进行深度估计;对深度估计网络进行训练时引入相机位姿估计模型和光流估计网络;根据光流估计网络输出的视频序列中相邻两幅图像帧It与It’之间的光流估计,对当前帧图像It进行重构,得到光流重构图像
Figure FDA0003911592340000011
t’=t-1或者t’=t+1;根据相机位姿估计模型估计出的相邻两幅图像帧之间的位姿变换矩阵,对当前帧图像进行重构,得到深度重构图像
Figure FDA0003911592340000012
根据
Figure FDA0003911592340000013
Figure FDA0003911592340000014
建立损失函数L对深度估计网络,相机位姿估计模型和光流估计网络进行联合训练:
L=μLp+λLs
其中,λ和μ均为超参数,Lp为光度损失误差,Ls为平滑度损失;Ls的表达式为:
Figure FDA0003911592340000015
其中,
Figure FDA0003911592340000016
表示在当前帧图像中坐标为(x,y)的像素点的深度归一化的值;
Figure FDA0003911592340000017
表示对x进行求导,
Figure FDA0003911592340000018
为对y进行求导;
Lp的表达式为:
Figure FDA0003911592340000019
其中,pe(.)的表达式为:
Figure FDA00039115923400000110
其中,Ia和Ib分别表示任意两幅图像帧,α为超参数,SSIM(.)为相似度计算函数,Ma的表达式为:
Figure FDA00039115923400000111
其中,r为预设的阈值;
所述光流估计网络对训练样本中相邻的两帧图像It和It’进行如下处理:
步骤1:在光流估计网络中采用金字塔结构的编码器提取It和It’之间的n个尺度的特征图像对
Figure FDA00039115923400000112
Figure FDA00039115923400000113
表示It的第i个尺度的特征图像;
Figure FDA00039115923400000114
表示It’的第i个尺度的特征图像,i=1,2,...,n;
步骤2:在光流估计网络的金字塔结构的解码器中包括n个编码器模块和n个上采样模块,当i=1时,将
Figure FDA0003911592340000021
Figure FDA0003911592340000022
输入至第一个编码器模块中,得到
Figure FDA0003911592340000023
Figure FDA0003911592340000024
之间的运动光流
Figure FDA0003911592340000025
Figure FDA0003911592340000026
Figure FDA0003911592340000027
Figure FDA0003911592340000028
输入至第一个上采样模块中,得到
Figure FDA0003911592340000029
Figure FDA00039115923400000210
之间的上采样光流
Figure FDA00039115923400000211
;当n>i>1时,将
Figure FDA00039115923400000212
和第i-1个上采样模块输出的上采样光流
Figure FDA00039115923400000213
输入至第i个编码器模块,得到
Figure FDA00039115923400000214
Figure FDA00039115923400000215
之间的运动光流
Figure FDA00039115923400000216
Figure FDA00039115923400000217
Figure FDA00039115923400000218
Figure FDA00039115923400000219
输入至第i个上采样模块,得到
Figure FDA00039115923400000220
Figure FDA00039115923400000221
之间的上采样光流
Figure FDA00039115923400000222
当i=n时,将
Figure FDA00039115923400000223
和第n-1个上采样模块输出的上采样光流
Figure FDA00039115923400000224
输入至第n个编码器模块,得到
Figure FDA00039115923400000225
Figure FDA00039115923400000226
Figure FDA00039115923400000227
Figure FDA00039115923400000228
将It和It’输入至卷积模块,采用第n个上采样模块对卷积模块的输出和运动光流
Figure FDA00039115923400000229
进行上采样,输出最终的光流估计;
所述步骤2中,针对第i个尺度的特征图像对
Figure FDA00039115923400000230
和运动光流
Figure FDA00039115923400000231
相应的上采样模块进行如下处理:
步骤2.1:采用双线性插值的方式提高
Figure FDA00039115923400000232
的分辨率得到初始光流
Figure FDA00039115923400000233
Figure FDA00039115923400000234
其中,p表示初始光流
Figure FDA00039115923400000235
中任意像素点的坐标,N(p/s)表示光流
Figure FDA00039115923400000236
中与点p/s相邻的四个像素点,s是比例放大率,ω(p/s,k)为双线性插值的权重;
Figure FDA00039115923400000237
表示像素点p的初始光流值,
Figure FDA00039115923400000238
表示光流
Figure FDA00039115923400000239
中像素点k的光流值;
步骤2.2:采用编码器计算得到
Figure FDA00039115923400000240
Figure FDA00039115923400000241
之间的插值流
Figure FDA00039115923400000242
采用插值流
Figure FDA00039115923400000243
对初始光流
Figure FDA00039115923400000244
进行翘曲变换得到光流
Figure FDA00039115923400000245
Figure FDA00039115923400000246
其中,N(d)表示初始光流
Figure FDA00039115923400000247
中与像素点d相邻的四个像素点,
Figure FDA00039115923400000248
表示初始光流
Figure FDA00039115923400000249
中像素点k’的光流值,
Figure FDA00039115923400000250
Figure FDA00039115923400000251
表示像素点p的插值流,ω(d,k’)表示权重;
步骤2.3:根据如下公式将
Figure FDA0003911592340000031
Figure FDA0003911592340000032
进行融合,得到相应的上采样模块的输出
Figure FDA0003911592340000033
Figure FDA0003911592340000034
其中,
Figure FDA0003911592340000035
表示插值映射,⊙表示乘积。
2.根据权利要求1所述的一种基于光流遮罩的无监督单目深度估计方法,其特征在于:所述深度估计网络采用ResNet网络。
CN202211091218.3A 2022-09-07 2022-09-07 一种基于光流遮罩的无监督单目深度估计方法 Active CN115187638B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211091218.3A CN115187638B (zh) 2022-09-07 2022-09-07 一种基于光流遮罩的无监督单目深度估计方法
PCT/CN2023/092180 WO2024051184A1 (zh) 2022-09-07 2023-05-05 一种基于光流遮罩的无监督单目深度估计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211091218.3A CN115187638B (zh) 2022-09-07 2022-09-07 一种基于光流遮罩的无监督单目深度估计方法

Publications (2)

Publication Number Publication Date
CN115187638A CN115187638A (zh) 2022-10-14
CN115187638B true CN115187638B (zh) 2022-12-27

Family

ID=83522691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211091218.3A Active CN115187638B (zh) 2022-09-07 2022-09-07 一种基于光流遮罩的无监督单目深度估计方法

Country Status (2)

Country Link
CN (1) CN115187638B (zh)
WO (1) WO2024051184A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115187638B (zh) * 2022-09-07 2022-12-27 南京逸智网络空间技术创新研究院有限公司 一种基于光流遮罩的无监督单目深度估计方法
CN116228834B (zh) * 2022-12-20 2023-11-03 阿波罗智联(北京)科技有限公司 图像深度获取方法、装置、电子设备及存储介质
CN116452638B (zh) * 2023-06-14 2023-09-08 煤炭科学研究总院有限公司 位姿估计模型的训练方法、装置、设备和存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110490928B (zh) * 2019-07-05 2023-08-15 天津大学 一种基于深度神经网络的相机姿态估计方法
CN110782490B (zh) * 2019-09-24 2022-07-05 武汉大学 一种具有时空一致性的视频深度图估计方法及装置
CN111127557B (zh) * 2019-12-13 2022-12-13 中国电子科技集团公司第二十研究所 一种基于深度学习的视觉slam前端位姿估计方法
CN111105432B (zh) * 2019-12-24 2023-04-07 中国科学技术大学 基于深度学习的无监督端到端的驾驶环境感知方法
CN111739078B (zh) * 2020-06-15 2022-11-18 大连理工大学 一种基于上下文注意力机制的单目无监督深度估计方法
CN112991450B (zh) * 2021-03-25 2022-11-01 武汉大学 一种基于小波的细节增强无监督深度估计方法
CN114693720A (zh) * 2022-02-28 2022-07-01 苏州湘博智能科技有限公司 基于无监督深度学习的单目视觉里程计的设计方法
CN115187638B (zh) * 2022-09-07 2022-12-27 南京逸智网络空间技术创新研究院有限公司 一种基于光流遮罩的无监督单目深度估计方法

Also Published As

Publication number Publication date
WO2024051184A1 (zh) 2024-03-14
CN115187638A (zh) 2022-10-14

Similar Documents

Publication Publication Date Title
CN111325794B (zh) 一种基于深度卷积自编码器的视觉同时定位与地图构建方法
CN111739078B (zh) 一种基于上下文注意力机制的单目无监督深度估计方法
CN110443842B (zh) 基于视角融合的深度图预测方法
CN115187638B (zh) 一种基于光流遮罩的无监督单目深度估计方法
CN111402310B (zh) 一种基于深度估计网络的单目图像深度估计方法及系统
Mitrokhin et al. EV-IMO: Motion segmentation dataset and learning pipeline for event cameras
CN110490919B (zh) 一种基于深度神经网络的单目视觉的深度估计方法
CN110782490B (zh) 一种具有时空一致性的视频深度图估计方法及装置
CN111783582A (zh) 一种基于深度学习的无监督单目深度估计算法
CN113160375A (zh) 一种基于多任务学习算法的三维重建及相机位姿估计方法
CN113284173B (zh) 一种基于伪激光雷达的端到端的场景流、位姿联合学习方法
CN112819876A (zh) 一种基于深度学习的单目视觉深度估计方法
CN113962858A (zh) 一种多视角深度获取方法
CN115294282A (zh) 三维场景重建中增强特征融合的单目深度估计系统及其方法
Hwang et al. Lidar depth completion using color-embedded information via knowledge distillation
Hwang et al. Self-supervised monocular depth estimation using hybrid transformer encoder
CN115546505A (zh) 一种基于深度学习的无监督单目图像深度估计方法
CN115035171A (zh) 基于自注意力导向特征融合的自监督单目深度估计方法
Zhang et al. Self-Supervised Monocular Depth Estimation With Self-Perceptual Anomaly Handling
CN116188550A (zh) 一种基于几何约束的自监督深度视觉里程计
Jiang et al. A neural refinement network for single image view synthesis
CN115731280A (zh) 基于Swin-Transformer和CNN并行网络的自监督单目深度估计方法
Zhu et al. Fused network for view synthesis
Gao et al. Edge Devices Friendly Self-Supervised Monocular Depth Estimation Via Knowledge Distillation
CN112927175B (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