CN117036436A - 一种基于双编码器-解码器的单目深度估计方法及系统 - Google Patents
一种基于双编码器-解码器的单目深度估计方法及系统 Download PDFInfo
- Publication number
- CN117036436A CN117036436A CN202311005150.7A CN202311005150A CN117036436A CN 117036436 A CN117036436 A CN 117036436A CN 202311005150 A CN202311005150 A CN 202311005150A CN 117036436 A CN117036436 A CN 117036436A
- Authority
- CN
- China
- Prior art keywords
- decoder
- encoder
- features
- depth estimation
- convolution
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000008569 process Effects 0.000 claims abstract description 26
- 238000000605 extraction Methods 0.000 claims abstract description 16
- 238000012549 training Methods 0.000 claims abstract description 7
- 230000004927 fusion Effects 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 38
- 230000007246 mechanism Effects 0.000 claims description 24
- 238000011176 pooling Methods 0.000 claims description 24
- 230000004913 activation Effects 0.000 claims description 17
- 238000005070 sampling Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 10
- 230000009977 dual effect Effects 0.000 claims description 9
- 239000011159 matrix material Substances 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000007670 refining Methods 0.000 claims description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于双编码器‑解码器的单目深度估计方法及系统,该方法包括以下步骤:步骤S1:在第一个编码器‑解码器网络,即全局特征提取网络中,提取图像的全局信息;步骤S2:在第二个编码器‑解码器网络,即深度估计网络中,根据输入的图像信息和全局信息对图像进行深度估计;步骤S3:使用损失函数对整个网络的训练过程进行监督。该方法及系统有利于提高单目深度估计的精度和稠密性。
Description
技术领域
本发明涉及机器人视觉技术领域,具体涉及一种基于双编码器-解码器的单目深度估计方法及系统。
背景技术
汽车能够对周围场景中物体深度(距离)进行精确感知是实现安全决策的基础。人类希望智能驾驶汽车可以通过车载摄像头和激光雷达捕获车辆周围的场景信息进行思考判断,在感知周围环境变化的时候做出安全的决策。如何从摄像头获取的图像信息和激光雷达获取的稀疏深度信息中得到精确、稠密的深度图是目前急需解决的问题。
随着深度学习技术的巨大成功,出现了各种使用编码器-解码器架构的自监督单目深度估计方法。然而,大多数先前的方法直接使用单个编码器-解码器结构来回归深度图,这可能无法获得图像中足够的特征,并导致深度图精度低且细节模糊。并且大多网络结构的解码器侧在处理特征时只关注编码器侧相同分辨率下的特征,不利于不同分辨率之间特征信息的交换,有待改进。
发明内容
本发明的目的在于提供一种基于双编码器-解码器的单目深度估计方法及系统,该方法及系统有利于提高单目深度估计的精度和稠密性。
为了实现上述目的,本发明采用的技术方案是:一种基于双编码器-解码器的单目深度估计方法,包括以下步骤:
步骤S1:在第一个编码器-解码器网络,即全局特征提取网络中,提取图像的全局信息;
步骤S2:在第二个编码器-解码器网络,即深度估计网络中,根据输入的图像信息和全局信息对图像进行深度估计;
步骤S3:使用损失函数对整个网络的训练过程进行监督。
进一步地,步骤S1中,输入图像进入编码器首先经过卷积运算、正则化和非线性激活,然后按顺序经过PoolAttentionFormer模块和ResBlock模块,所述PoolAttentionFormer模块为提取全局特征信息的基本模块,并在特征输入到PoolAttentionFormer模块之前对特征应用最大池化操作;同一层的解码器和编码器通过跳跃连接;在解码器经过卷积和最近邻上采样后,先使用卷积匹配特征信息的维度,再进行反卷积,最终全局特征提取网络输出四个维度的特征信息,作为第二个编码器-解码器网络的输入进行融合。
进一步地,对输入图像进行卷积运算、正则化和非线性激活,表示为:
Zs=σ{BN[Conv(I)]}
其中,Conv、BN和σ分别表示卷积、正则化和高斯误差线性单元激活函数,Zs表示当前维度特征,s表示维度,I表示输入图像;
对特征Zs进行最大池化操作,以捕获重要特征并减少注意模块的输入大小,然后经过PoolAttentionFormer模块,表示为:
其中,表示第一个编码器中经过相应维度卷积操作后的特征,s表示卷积操作的维度,Ws表示PoolAttentionFormer模块的权重;
将得到的特征多次经过ResBlock模块和PoolAttentionFormer模块,以得到多个维度的特征,表示为:
其中,Rs表示ResBlock模块,s-1为s的上一个维度且s>96;
为了在解码器处恢复图像的全局信息,将特征回归到每个像素点,在解码器经过卷积和最近邻上采样后,先使用卷积来优化维度,再进行反卷积;解码过程表示为:
fup=UP[Conv(x)]
其中Ps、Ps+1为解码器中相应维度的中间输出,为解码器的最终输出,Conv表示卷积操作,UP表示上采样操作,Deconv表示反卷积操作;
为了形成像素点之间的相关性,解码器使用全局信息来重建每个点,重建的特征以四个维度输出,最终全局特征提取网络输出四个维度的特征信息。
进一步地,所述PoolAttentionFormer模块为一个令牌合成器,所述令牌合成器首先使用最大池化、卷积和平均池化这三个分支计算输入特征,最大池化分支用于获得特征的显著信息,平均池化分支用于获得特征的背景信息,卷积分支用于获得更多的语义信息,计算过程如下:
M=sum(Fmax,Favg,Fconv)
其中,Fmax、Favg、Fconv分别表示最大池化、平均池化、卷积后的特征,sum()表示求和;
然后使用通道注意力机制和空间注意力机制细化特征,从而使特征更紧凑地反映当前空间中的特征关系,提高网络性能;该过程表示为:
其中,CA()表示通道注意力,SA()表示空间注意力,表示矩阵乘法,/>表示矩阵加法。
进一步地,所述ResBlock模块用于增强PoolAttentionFormer模块之间传输的特征;所述ResBlock模块包括第一卷积层、批量归一化层、第二卷积层和GELU激活函数,在第一层卷积完成后执行批量归一化再进行第二层卷积,将第一卷积层和第二卷积层的输出相加后输入GELU激活函数。
进一步地,步骤S2中,深度估计网络的编码器侧使用全局融合机制融合全局信息,深度估计网络的解码器侧使用多尺度融合机制对特征信息进行上采样获得深度图;在深度估计网络中,编码器结合相同分辨率下的全局特征,编码器获得足够的特征后,解码器对特征进行上采样以预测深度。
进一步地,所述深度估计网络的编码器侧的全局融合机制将输入图像及三层编码器的输出与第一个编码器-解码器的四个维度的输出相乘再相加得到映射特征图,从而将四维的全局特征指导信息融合到深度估计网络中;
所述深度估计网络的解码器侧的多尺度融合机制为解码器接受来自多个维度的特征的跳跃连接,包括与编码器相同维度的特征、编码器较低层维度的特征以及解码器较高层维度的特征;该些跳跃连接在上采样期间使用;解码器仅接受最后一层上采样相同分辨率的编码器侧的特征。
进一步地,所述全局融合机制为了将全局信息映射到每个像素上,首先将(s=3)与原始图像I相乘以获得表示该映射的特征图,然后将此特征图添加到原始图像I中,则该图像包含全局特征图初始输入阶段的信息;然后在后续的三个维度中,先将/>与同维度的/>相乘,得到映射特征图,然后将映射特征图与/>和/>相加,全局特征融合函数表示为:
其中,表示全局特征提取网络最终输出的各个维度特征,/>表示深度估计网络的编码端各维度特征;
在深度估计网络中,编码器结合相同分辨率下的全局特征,重构后的全局特征信息被引入到深度估计网络的每一层中,补充深度估计网络的编码器提取的特征,特征融合表示如下:
其中,f1表示全局特征融合函数,表示深度估计网络的编码端各维度特征;
编码器获取足够的特征后,解码器对特征进行上采样以预测深度;解码器接受来自多个维度的特征的跳跃连接,该些跳跃连接在上采样期间使用;解码器仅接受最后一层上采样相同分辨率的编码器侧的特征;这个过程表示如下:
Depth_map=Disp{UP[Conv(Ds)]}
其中,Ds为融合后的特征,为深度估计网络解码端各维度特征,N为768,384或192,f2表示多尺度特征融合,Disp表示离散卷积;Depth_map是通过融合后的离散卷积得到的使用3×3的卷积核的特征。
进一步地,步骤S3中,首先使用ResNet18作为姿态估计网络预测目标图像It与源图像It′之间的姿态变换Tt→t',表示为:
Tt→t'=PoseNet(It,It')
光度重建损失定义为:
It'→t=It'<proj(Tt→t',Dt,K)>
其中,N表示更新次数,⊙表示元素乘法,t'∈(t-1,t+1)表示源图像帧数的取值,μ表示逐像素的掩码损失,μ∈{0,1};It'→t表示源图像变换到目标图像后的图像,即掩码损失只包含那些变换后的图像It'→t的重投影误差小于在源图像It′上的重投影误差的像素点,以防止相机运动过程中保持静止的像素污染损失;K是相机内参,proj()是在It'中更新t时投影深度Dt的2D坐标,α为设定的权重参数,<>是双线性采样,pe()是使用L1损失和SSIM的最小像素光度重投影损失;L1损失函数公式如下:
其中p为像素索引值,P为总像素点,x(p)和y(p)表示被处理过的值和真实值;
SSIM函数公式如下:
SSIM(x,y)=f(l(x,y),c(x,y),s(x,y))
其中l(x,y)为亮度相似性,公式如下:
其中,表示图像的平均亮度,N为图像内像素点个数,xi为每个像素点的像素值,C1=(K1L)2,用于防止分母为0的情况,其中K1<<1是一个常数,L是灰度的动态范围;
c(x,y)为对比度相似性,公式如下:
其中,表示图像像素值的标准差,其中C2=(K2L)2,K2<<1是一个常数;
s(x,y)为结构相似性,公式如下:
同时,还使用额外的边缘感知平滑度来平滑估计的深度值,公式如下:
其中,和/>表示x和y方向上的梯度,/>为更新i时的平均归一化你深度,最终的损失函数为:
L=Lp+0.001·Ls
使用损失函数对整个网络的训练过程进行监督。
本发明还提供了一种基于双编码器-解码器的单目深度估计系统,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现上述的方法。
与现有技术相比,本发明具有以下有益效果:提供了一种基于双编码器-解码器的单目深度估计方法及系统,该方法及系统考虑了图像全局特征信息的重要性,在单目深度估计网络之前加入了用于提取图像全局信息的全局特征提取网络,将得到的信息用于指导深度估计网络;全局信息加入深度估计网络的融合和深度估计网络解码器侧的多尺度特征融合,两次融合机制的设计让图像的全局特征信息,多尺度特征信息充分利用,从而得到准确的稠密深度图,提高了单目深度估计的精度和稠密性。
附图说明
图1是本发明实施例的总体流程示意图。
图2是本发明实施例中全局特征提取网络的结构示意图。
图3是本发明实施例中PoolAttentionFormer模块的结构示意图。
图4是本发明实施例中ResBlock模块与ResNet18残差模块的对比示意图。
图5是本发明实施例中全局融合机制的实现过程示意图。
图6是本发明实施例中多尺度融合机制的实现过程示意图。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
如图1所示,本实施例提供了一种基于双编码器-解码器的单目深度估计方法,包括以下步骤:
步骤S1:在第一个编码器-解码器网络(全局特征提取网络)中,提取图像的全局信息。
步骤S2:在第二个编码器-解码器网络(深度估计网络)中,根据输入的图像信息和全局信息对图像进行深度估计。
步骤S3:使用损失函数对整个网络的训练过程进行监督。
如图2所示,步骤S1中,输入图像进入编码器首先经过卷积运算、正则化和非线性激活,然后按顺序经过PoolAttentionFormer模块和ResBlock模块,所述PoolAttentionFormer模块为提取全局特征信息的基本模块,并在特征输入到PoolAttentionFormer模块之前对特征应用最大池化操作;同一层的解码器和编码器通过跳跃连接;在解码器经过卷积和最近邻上采样后,先使用卷积匹配特征信息的维度,再进行反卷积,最终全局特征提取网络输出四个维度的特征信息,作为第二个编码器-解码器网络的输入进行融合。
具体地,对输入图像进行卷积运算、正则化和非线性激活,该过程可以表示为:
Zs=σ{BN[Conv(I)]}
其中,Conv、BN和σ分别表示卷积、正则化和高斯误差线性单元(GELU)激活函数,Zs表示当前维度特征,s表示维度,I表示输入图像。
对特征Zs进行最大池化操作,以捕获重要特征并减少注意模块的输入大小,然后经过PoolAttentionFormer模块,表示为:
其中,表示第一个编码器中经过相应维度卷积操作后的特征,s表示卷积操作的维度,Ws表示PoolAttentionFormer模块的权重;
将得到的特征多次经过ResBlock模块和PoolAttentionFormer模块,以得到多个维度的特征,表示为:
其中,Rs表示ResBlock模块,s-1为s的上一个维度且s>96;
网络结构与U-Net一样,同一层的解码器和编码器通过跳跃连接。为了在解码器处恢复图像的全局信息,将特征回归到每个像素点,在解码器经过卷积和最近邻上采样后,先对Ps使用卷积来优化维度,再进行反卷积;解码过程表示为:
fup=UP[Conv(x)]
其中Ps、Ps+1为全局特征提取网络的解码器中各个维度的中间输出,为解码器的最终输出,Conv表示卷积操作,UP表示上采样操作,Deconv表示反卷积操作。
为了形成像素点之间的相关性,解码器使用全局信息来重建每个点,重建的特征以四个维度输出,最终全局特征提取网络输出四个维度的特征信息。
如图3所示,所述PoolAttentionFormer模块为一个全新的令牌合成器,所述令牌合成器首先使用最大池化、卷积和平均池化这三个分支计算输入特征,最大池化分支用于获得特征的显著信息,平均池化分支用于获得特征的背景信息,卷积分支用于获得更多的语义信息,计算过程如下:
M=sum(Fmax,Favg,Fconv)
其中,Fmax、Favg、Fconv分别表示最大池化、平均池化、卷积后的特征,sum()表示求和。
然后使用通道注意力机制和空间注意力机制细化特征,从而使特征更紧凑地反映当前空间中的特征关系,提高网络性能;该过程表示为:
其中,CA()表示通道注意力,SA()表示空间注意力,表示矩阵乘法,/>表示矩阵加法。
如图4所示,所述ResBlock模块用于增强PoolAttentionFormer模块之间传输的特征。所述ResBlock模块包括第一卷积层、批量归一化层、第二卷积层和GELU激活函数,在第一层卷积完成后执行批量归一化再进行第二层卷积,将第一卷积层和第二卷积层的输出相加后输入GELU激活函数。与ResNet18网络中的基本模块不同,ResBlock模块仅使用两个卷积就达到了相当的性能。为了防止梯度消失或爆炸,在第一层卷积完成后执行批量归一化,此外,还采用了残差因子设计来提高准确性并防止网络退化。图4中,(a)为ResBlock模块,(b)为ResNet18基本模块。
步骤S2中,深度估计网络的编码器侧使用全局融合机制融合全局信息,深度估计网络的解码器侧使用多尺度融合机制对特征信息进行上采样获得深度图;在深度估计网络中,编码器结合相同分辨率下的全局特征,编码器获得足够的特征后,解码器对特征进行上采样以预测深度。
所述深度估计网络的编码器侧的全局融合机制将输入图像及三层编码器的输出与第一个编码器-解码器的四个维度的输出相乘再相加得到映射特征图,从而将四维的全局特征指导信息融合到深度估计网络中。
所述深度估计网络的解码器侧的多尺度融合机制为解码器接受来自多个维度的特征的跳跃连接,包括与编码器相同维度的特征、编码器较低层维度的特征以及解码器较高层维度的特征;该些跳跃连接在上采样期间使用;解码器仅接受最后一层上采样相同分辨率的编码器侧的特征。
在本实施例中,所述全局融合机制为了将全局信息映射到每个像素上,首先将(s=3)与原始图像I相乘以获得表示该映射的特征图,然后将此特征图添加到原始图像I中,则该图像包含全局特征图初始输入阶段的信息;然后在后续的三个维度中,先将/>与同维度的/>相乘,得到映射特征图,然后将映射特征图与/>和/>相加,全局特征融合函数表示为:
其中,表示全局特征提取网络最终输出的各个维度特征,/>表示深度估计网络的编码端各维度特征。
如图5、6所示,在第二个编码器-解码器网络(深度估计网络)中,编码器结合相同分辨率下的全局特征,重构后的全局特征信息被引入到深度估计网络的每一层中,补充深度估计网络编码端提取的特征;全局特征融合用于将维度大于三的全局特征融合到深度估计网络中。特征融合表示如下:
其中,f1表示全局特征融合函数,表示深度估计网络的编码端各维度特征。
编码器获取足够的特征后,解码器对特征进行上采样以预测深度;解码器接受来自多个维度的特征的跳跃连接,该些跳跃连接在上采样期间使用;解码器仅接受最后一层上采样相同分辨率的编码器侧的特征;这个过程表示如下:
Depth_map=Disp{UP[Conv(Ds)]}
其中,Ds为融合后的特征,为深度估计网络解码端各维度特征,N为768,384或192,f2表示多尺度特征融合,Disp表示离散卷积;Depth_map是通过融合后的离散卷积得到的使用3×3的卷积核的特征。
为了充分利用特征信息,避免采样过程中信息丢失和其他错误,解码器通过修改传统U-Net网络结构,需要同时关注编码器侧和解码器侧的信息。在解码器中,最高维度特征不需要依赖与其他编码端的信息,相反它可以直接上采样。与U-Net不同的是,在下一阶段的特征上采样中,解码后的特征/>结合了两次上采样的结果。第一个过程是对特征进行直接卷积采样,而第二个过程涉及在对特征进行卷积采样之前对特征应用激活函数。此外,在解码器中,直接接收来自相同尺度编码器层/>的特征图。另外,一系列编码器和解码器之间的跳跃连接通过使用反卷积和下采样操作从较小规模的编码器层如/>和/>传输详细的低级信息。/>和/>采用与/>相同的方法,只是跳跃连接的特征不同。网络的融合公式如下:
其中,f′up(x)=UP[Conv[ELU(x)]],ELU是激活函数,fdown=Downsample[Deconv(x)],且
步骤S3中,损失函数首先使用ResNet18作为姿态估计网络预测目标图像It与源图像It′之间的姿态变换Tt→t',表示为:
Tt→t'=PoseNet(It,It')
光度重建损失定义为:
It'→t=It'<proj(Tt→t',Dt,K)>
其中,N表示更新次数;⊙表示元素乘法;t'∈(t-1,t+1)表示源图像帧数的取值,It表示当前帧图像,也就是目标帧,t-1和t+1表示当前帧的前后帧图像的取值,也就是源图像,之所以在前后帧取值,是因为在自监督深度估计领域内,使用前后帧加上姿态估计网络的输出(也就是当前帧对于源图像帧相机姿态变换),预测的目标帧深度值,以及采集图像的相机的内参矩阵K一起来计算由源图像反扭曲回到目标帧,得到一个重投影的合成图像就是It'→t,此时通过计算这一个重投影得到的图像跟原来的真实目标帧图像构建出重投影损失,做为深度估计网络损失函数的主要组成部分;μ表示逐像素的掩码损失,本实施例中掩码是二进制的,所以μ∈{0,1};It'→t表示源图像变换到目标图像后的图像,即掩码损失只包含那些变换后的图像It'→t的重投影误差小于在源图像It′上的重投影误差的像素点,以防止相机运动过程中保持静止的像素污染损失;K是相机内参;proj()是在It'中更新t时投影深度Dt的2D坐标;α为设定的权重参数,α=0.85;<>是双线性采样;pe()是使用L1损失和SSIM的最小像素光度重投影损失;L1损失函数公式如下:
其中p为像素索引值,P为总像素点,x(p)和y(p)表示被处理过的值和真实值;
SSIM函数公式如下:
SSIM(x,y)=f(l(x,y),c(x,y),s(x,y))
其中l(x,y)为亮度相似性,公式如下:
其中,表示图像的平均亮度,N为图像内像素点个数,xi为每个像素点的像素值,C1=(K1L)2,用于防止分母为0的情况,其中K1<<1是一个常数,L是灰度的动态范围,如果数据类型为uint8型,则L=255。
c(x,y)为对比度相似性,公式如下:
其中,表示图像像素值的标准差,其中C2=(K2L)2,K2<<1是一个常数。
s(x,y)为结构相似性,公式如下:
同时,还使用额外的边缘感知平滑度来平滑估计的深度值,公式如下:
其中和/>指的是x和y方向上的梯度,/>为更新i时的平均归一化你深度,最终的损失函数为:
L=Lp+0.001·Ls
使用损失函数对整个网络的训练过程进行监督。
本实施例还提供了一种基于双编码器-解码器的单目深度估计系统,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现上述的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
Claims (10)
1.一种基于双编码器-解码器的单目深度估计方法,其特征在于,包括以下步骤:
步骤S1:在第一个编码器-解码器网络,即全局特征提取网络中,提取图像的全局信息;
步骤S2:在第二个编码器-解码器网络,即深度估计网络中,根据输入的图像信息和全局信息对图像进行深度估计;
步骤S3:使用损失函数对整个网络的训练过程进行监督。
2.根据权利要求1所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,步骤S1中,输入图像进入编码器首先经过卷积运算、正则化和非线性激活,然后按顺序经过PoolAttentionFormer模块和ResBlock模块,所述PoolAttentionFormer模块为提取全局特征信息的基本模块,并在特征输入到PoolAttentionFormer模块之前对特征应用最大池化操作;同一层的解码器和编码器通过跳跃连接;在解码器经过卷积和最近邻上采样后,先使用卷积匹配特征信息的维度,再进行反卷积,最终全局特征提取网络输出四个维度的特征信息,作为第二个编码器-解码器网络的输入进行融合。
3.根据权利要求2所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,对输入图像进行卷积运算、正则化和非线性激活,表示为:
Zs=σ{BN[Conv(I)]}
其中,Conv、BN和σ分别表示卷积、正则化和高斯误差线性单元激活函数,Zs表示当前维度特征,s表示维度,I表示输入图像;
对特征Zs进行最大池化操作,以捕获重要特征并减少注意模块的输入大小,然后经过PoolAttentionFormer模块,表示为:
其中,表示第一个编码器中经过相应维度卷积操作后的特征,s表示卷积操作的维度,Ws表示PoolAttentionFormer模块的权重;
将得到的特征多次经过ResBlock模块和PoolAttentionFormer模块,以得到多个维度的特征,表示为:
其中,Rs表示ResBlock模块,s-1为s的上一个维度且s>96;
为了在解码器处恢复图像的全局信息,将特征回归到每个像素点,在解码器经过卷积和最近邻上采样后,先使用卷积来优化维度,再进行反卷积;解码过程表示为:
fup=UP[Conv(x)]
其中Ps、Ps+1为解码器中相应维度的中间输出,为解码器的最终输出,Conv表示卷积操作,UP表示上采样操作,Deconv表示反卷积操作;
为了形成像素点之间的相关性,解码器使用全局信息来重建每个点,重建的特征以四个维度输出,最终全局特征提取网络输出四个维度的特征信息。
4.根据权利要求2所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,所述PoolAttentionFormer模块为一个令牌合成器,所述令牌合成器首先使用最大池化、卷积和平均池化这三个分支计算输入特征,最大池化分支用于获得特征的显著信息,平均池化分支用于获得特征的背景信息,卷积分支用于获得更多的语义信息,计算过程如下:
M=sum(Fmax,Favg,Fconv)
其中,Fmax、Favg、Fconv分别表示最大池化、平均池化、卷积后的特征,sum()表示求和;
然后使用通道注意力机制和空间注意力机制细化特征,从而使特征更紧凑地反映当前空间中的特征关系,提高网络性能;该过程表示为:
其中,CA()表示通道注意力,SA()表示空间注意力,表示矩阵乘法,/>表示矩阵加法。
5.根据权利要求2所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,所述ResBlock模块用于增强PoolAttentionFormer模块之间传输的特征;所述ResBlock模块包括第一卷积层、批量归一化层、第二卷积层和GELU激活函数,在第一层卷积完成后执行批量归一化再进行第二层卷积,将第一卷积层和第二卷积层的输出相加后输入GELU激活函数。
6.根据权利要求1所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,步骤S2中,深度估计网络的编码器侧使用全局融合机制融合全局信息,深度估计网络的解码器侧使用多尺度融合机制对特征信息进行上采样获得深度图;在深度估计网络中,编码器结合相同分辨率下的全局特征,编码器获得足够的特征后,解码器对特征进行上采样以预测深度。
7.根据权利要求6所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,所述深度估计网络的编码器侧的全局融合机制将输入图像及三层编码器的输出与第一个编码器-解码器的四个维度的输出相乘再相加得到映射特征图,从而将四维的全局特征指导信息融合到深度估计网络中;
所述深度估计网络的解码器侧的多尺度融合机制为解码器接受来自多个维度的特征的跳跃连接,包括与编码器相同维度的特征、编码器较低层维度的特征以及解码器较高层维度的特征;该些跳跃连接在上采样期间使用;解码器仅接受最后一层上采样相同分辨率的编码器侧的特征。
8.根据权利要求7所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,所述全局融合机制为了将全局信息映射到每个像素上,首先将s=3与原始图像I相乘以获得表示该映射的特征图,然后将此特征图添加到原始图像I中,则该图像包含全局特征图初始输入阶段的信息;然后在后续的三个维度中,先将/>与同维度的/>相乘,得到映射特征图,然后将映射特征图与/>和/>相加,全局特征融合函数表示为:
其中,表示全局特征提取网络最终输出的各个维度特征,/>表示深度估计网络的编码端各维度特征;
在深度估计网络中,编码器结合相同分辨率下的全局特征,重构后的全局特征信息被引入到深度估计网络的每一层中,补充深度估计网络的编码器提取的特征,特征融合表示如下:
其中,f1表示全局特征融合函数,表示深度估计网络的编码端各维度特征;
编码器获取足够的特征后,解码器对特征进行上采样以预测深度;解码器接受来自多个维度的特征的跳跃连接,该些跳跃连接在上采样期间使用;解码器仅接受最后一层上采样相同分辨率的编码器侧的特征;这个过程表示如下:
Depth_map=Disp{UP[Conv(Ds)]}
其中,Ds为融合后的特征,为深度估计网络解码端各维度特征,N为768,384或192,f2表示多尺度特征融合,Disp表示离散卷积;Depth_map是通过融合后的离散卷积得到的使用3×3的卷积核的特征。
9.根据权利要求1所述的一种基于双编码器-解码器的单目深度估计方法,其特征在于,步骤S3中,首先使用ResNet18作为姿态估计网络预测目标图像It与源图像It′之间的姿态变换Tt→t',表示为:
Tt→t'=PoseNet(It,It')
光度重建损失定义为:
It'→t=It'<proj(Tt→t',Dt,K)>
其中,N表示更新次数,⊙表示元素乘法,t'∈(t-1,t+1)表示源图像帧数的取值,μ表示逐像素的掩码损失,μ∈{0,1};It'→t表示源图像变换到目标图像后的图像,即掩码损失只包含那些变换后的图像It'→t的重投影误差小于在源图像It′上的重投影误差的像素点,以防止相机运动过程中保持静止的像素污染损失;K是相机内参,proj()是在It'中更新t时投影深度Dt的2D坐标,α为设定的权重参数,<>是双线性采样,pe()是使用L1损失和SSIM的最小像素光度重投影损失;L1损失函数公式如下:
其中p为像素索引值,P为总像素点,x(p)和y(p)表示被处理过的值和真实值;
SSIM函数公式如下:
SSIM(x,y)=f(l(x,y),c(x,y),s(x,y))
其中l(x,y)为亮度相似性,公式如下:
其中,表示图像的平均亮度,N为图像内像素点个数,xi为每个像素点的像素值,C1=(K1L)2,用于防止分母为0的情况,其中K1<<1是一个常数,L是灰度的动态范围;
c(x,y)为对比度相似性,公式如下:
其中,表示图像像素值的标准差,其中C2=(K2L)2,K2<<1是一个常数;
s(x,y)为结构相似性,公式如下:
同时,还使用额外的边缘感知平滑度来平滑估计的深度值,公式如下:
其中,和/>表示x和y方向上的梯度,/>为更新i时的平均归一化逆深度,最终的损失函数为:
L=Lp+0.001·Ls
使用损失函数对整个网络的训练过程进行监督。
10.一种基于双编码器-解码器的单目深度估计系统,其特征在于,包括存储器、处理器以及存储于存储器上并能够被处理器运行的计算机程序指令,当处理器运行该计算机程序指令时,能够实现如权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311005150.7A CN117036436A (zh) | 2023-08-10 | 2023-08-10 | 一种基于双编码器-解码器的单目深度估计方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311005150.7A CN117036436A (zh) | 2023-08-10 | 2023-08-10 | 一种基于双编码器-解码器的单目深度估计方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117036436A true CN117036436A (zh) | 2023-11-10 |
Family
ID=88633136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311005150.7A Pending CN117036436A (zh) | 2023-08-10 | 2023-08-10 | 一种基于双编码器-解码器的单目深度估计方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117036436A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117808857A (zh) * | 2024-03-01 | 2024-04-02 | 深圳大学 | 一种自监督360°深度估计方法、装置、设备及介质 |
-
2023
- 2023-08-10 CN CN202311005150.7A patent/CN117036436A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117808857A (zh) * | 2024-03-01 | 2024-04-02 | 深圳大学 | 一种自监督360°深度估计方法、装置、设备及介质 |
CN117808857B (zh) * | 2024-03-01 | 2024-05-24 | 深圳大学 | 一种自监督360°深度估计方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111798400B (zh) | 基于生成对抗网络的无参考低光照图像增强方法及系统 | |
US11727541B2 (en) | Video super resolution method | |
CN113076957A (zh) | 一种基于跨模态特征融合的rgb-d图像显著性目标检测方法 | |
CN112258436A (zh) | 图像处理模型的训练方法、装置、图像处理方法及模型 | |
CN115294282A (zh) | 三维场景重建中增强特征融合的单目深度估计系统及其方法 | |
CN116469100A (zh) | 一种基于Transformer的双波段图像语义分割方法 | |
CN116205962B (zh) | 基于完整上下文信息的单目深度估计方法及系统 | |
CN117036436A (zh) | 一种基于双编码器-解码器的单目深度估计方法及系统 | |
CN113066089A (zh) | 一种基于注意力引导机制的实时图像语义分割网络 | |
CN113724134A (zh) | 一种基于残差蒸馏网络的航拍图像盲超分辨率重建方法 | |
CN115082306A (zh) | 一种基于蓝图可分离残差网络的图像超分辨率方法 | |
CN115546505A (zh) | 一种基于深度学习的无监督单目图像深度估计方法 | |
CN115272438A (zh) | 一种面向三维场景重建的高精度单目深度估计系统及方法 | |
CN113487530A (zh) | 一种基于深度学习的红外与可见光融合成像方法 | |
CN117788544A (zh) | 一种基于轻量级注意力机制的图像深度估计方法 | |
CN115035173B (zh) | 基于帧间相关性的单目深度估计方法及系统 | |
CN115731280A (zh) | 基于Swin-Transformer和CNN并行网络的自监督单目深度估计方法 | |
CN113240589A (zh) | 一种多尺度特征融合的图像去雾方法及系统 | |
CN115631115B (zh) | 基于递归Transformer的动态图像复原方法 | |
CN116912488B (zh) | 基于多目相机的三维全景分割方法及装置 | |
CN114693759B (zh) | 一种基于编解码网络的轻量级快速图像深度估计方法 | |
CN116721138A (zh) | 自适应深度转尺寸卷积的自监督单目深度估计方法及系统 | |
CN117635943A (zh) | 基于跨模态协同修正的多模态场景分割方法及系统 | |
CN118691461A (zh) | 车内图像的变换方法以及车辆 | |
CN118379488A (zh) | 一种基于Transformer的物体语义边界分割方法 |
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 |