CN110599533B - 适用于嵌入式平台的快速单目深度估计方法 - Google Patents

适用于嵌入式平台的快速单目深度估计方法 Download PDF

Info

Publication number
CN110599533B
CN110599533B CN201910893707.2A CN201910893707A CN110599533B CN 110599533 B CN110599533 B CN 110599533B CN 201910893707 A CN201910893707 A CN 201910893707A CN 110599533 B CN110599533 B CN 110599533B
Authority
CN
China
Prior art keywords
depth estimation
depth
estimation model
embedded platform
layer
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
CN201910893707.2A
Other languages
English (en)
Other versions
CN110599533A (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.)
Hunan University
Original Assignee
Hunan University
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 Hunan University filed Critical Hunan University
Priority to CN201910893707.2A priority Critical patent/CN110599533B/zh
Publication of CN110599533A publication Critical patent/CN110599533A/zh
Application granted granted Critical
Publication of CN110599533B publication Critical patent/CN110599533B/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/10Image acquisition modality
    • G06T2207/10024Color image
    • 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
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种适用于嵌入式平台的快速单目深度估计方法,包括获取深度估计模型所需的训练数据;对训练数据预处理、压缩并发送到距离嵌入式平台最近的边缘服务器;边缘服务器对接收的数据训练深度估计模型得到训练好的深度估计模型;对深度估计模型进行转换、压缩并发送嵌入式平台;嵌入式平台接收数据并根据构建的深度估计模型结构对单目图像进行快速的深度估。本发明基于包括编码器和解码器组成的U型轻量级深度估计模型,参数少,计算量小,预测速度快,可从RGB图像中自动学习得到准确的像素级深度图,适用于室内室外不同的场景,方便灵活;而且本发明方法的效率较高、可靠性好、成本低廉且适用于资源有限平台。

Description

适用于嵌入式平台的快速单目深度估计方法
技术领域
本发明具体涉及一种适用于嵌入式平台的快速单目深度估计方法。
背景技术
作为计算机视觉研究中的一个重要方向,深度估计的主要目标是测出图像中每个像素的深度,获取像素级别的深度图。目前,深度估计已广泛应用于汽车自动驾驶,虚拟现实,增强现实,机器人避障等任务中。从数据来源上深度估计可分为基于单目RGB图像的深度估计,基于双目RGB图像的深度估计,基于单目RGB图像和稀疏深度的深度估计,和基于稀疏深度的深度估计。
由于深度神经网络的发展,深度估计技术取得了一定的进展。借助深度神经网络,良好的图像特征可被学习到。但是深度神经网络的计算需要大量资源,目前基于深度神经网络的深度估计技术因模型大,运行时占用内存多,而依赖于高性能计算平台。这阻碍了深度估计技术在资源受限的嵌入式平台上的发展。此外,现有的深度估计算法在上采样中常采用插值方法来增大深度神经网络输出特征图的分辨率,但是传统的插值方法会使图像部分质量受损,并且预测到的深度图存在需要进一步改进的误差。为了在嵌入式平台上更加准确快速地进行单张图片的深度估计,需要设计新的单目深度估计方法。
发明内容
本发明的目的在于提供一种效率较高、可靠性好且成本低廉的适用于嵌入式平台的快速单目深度估计方法。
本发明提供的这种适用于嵌入式平台的快速单目深度估计方法,包括如下步骤:
S1.获取深度估计模型所需的训练数据;
S2.将步骤S1获取的训练数据在嵌入式平台进行预处理;
S3.将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器;
S4.边缘服务器采用接收到的数据训练构建的深度估计模型结构,从而得到训练好的深度估计模型;
S5.边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换;
S6.边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台;
S7.嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计。
所述的适用于嵌入式平台的快速单目深度估计方法,还包括如下步骤:
S8.将步骤S7构建好的构建深度估计模型结构集成到嵌入式平台的操作系统中。
步骤S8所述的将步骤S7构建好的构建深度估计模型结构集成到嵌入式平台的操作系统,具体为将构建的深度估计模型结构集成到机器人操作系统ROS中;利用深度估计模型结构在机器人操作系统ROS中,构建深度估计发布器,并构建RGBD-SLAM订阅器,深度估计发布器发布的深度图数据和RGB数据同步后供ROS主节点、RGBD-SLAM订阅器,和其他需要使用深度图数据的节点使用。
步骤S1所述的获取深度估计模型所需的训练数据,具体为使用深度相机采集RGB图像和深度图,或者采用互联网公开的由深度相机采集的RGB图像和深度图;然后将获取的深度图中深度值为0的像素值运用双线性插值方法填充,最后将RGB图像和填充后的深度图一起用作深度估计模型的训练数据。
步骤S2所述的将步骤S1获取的训练数据在嵌入式平台进行预处理,具体为将步骤S1获取的RGB图像和深度图在嵌入式平台上进行变化;所述的变化包括在水平或垂直方向上翻转RGB图像和深度图,以及旋转RGB图像和深度图;然后保留变换前的和变换后的RGB图像和深度图图像,最后裁剪RGB图像和深度图从而得到设定尺寸的RGB图像和深度图图像。
步骤S3所述的将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器,具体为将步骤S2进行预处理后的RGB图像和深度图采用压缩算法进行压缩,并将压缩后的数据发送到距离嵌入式平台最近的边缘服务器。
步骤S4所述的深度估计模型,具体包括编码器和解码器;编码器采用卷积神经网络,用于捕获RGB图像中的上下文,并实现自动提取特征;解码器利用深度可分离卷积和通道重排,在学习特征的同时提高分辨率;同时解码器融合相同级别的编码器的特征映射,组成U型结构,并借助于编码器产生的中间特征和解码器自身学习到的特征来提高深度图预测的准确性。
步骤S4所述的深度估计模型包括的编码器和解码器为:编码器的第一个模块a由二维卷积层、批量归一化层BN和激活函数层ReLU组成:其中二维卷积层的卷积核尺寸为7×7,用于提取特征;批量归一化层BN用于减小内部协方差平移,从而提高学习率;激活函数层ReLU在神经网络中加入非线性因素,从而提升深度估计准确性,并加快网络训练速度;编码器的第二个模块包括最大池化层和模块b:最大池化层用于对领域内的特征点取最大操作,使得神经网络能够专注于最重要的元素;模块b包含二维卷积层,批量归一化层BN、激活函数层ReLU、二维卷积层和批量归一化层:二维卷积层的卷积核尺寸均为3×3;编码器的第三个模块c为残差结构:包括一个卷积核尺寸为3×3的二维卷积层、批量归一化层BN和激活函数层ReLU,卷积核尺寸为3×3的二维卷积层和批量归一化层BN,融合该卷积核尺寸为3×3的二维卷积层和批量归一化层BN的输出结果与卷积核尺寸为1×1的二维卷积层和批量归一化层BN的输出结果得到残差结构,然后连接模块c和模块b构成编码器的第四个模块;再次连接模块c和模块b构成编码器的第五个模块;最后用一卷积核尺寸为1×1的二维卷积层再次对特征进行提取并连接解码器;解码器由5个模块构成:每个模块均包括像素重排层和深度可分离卷积层;像素重排层使多通道的特征变成新的特征的高度和宽度,达到特征图通道数减少,高度和宽度增加的目的,避免信息的损失;深度可分离卷积层包括depthwise卷积层,批量归一化层BN、激活函数层ReLU、二维卷积层、批量归一化层BN和激活函数层ReLU;其中depthwise卷积层卷积核尺寸为3×3,二维卷积层卷积核尺寸为1×1。
步骤S5所述的边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换,具体为边缘服务器将得到的训练好的深度估计模型转换成开放神经网络交换ONNX格式的模型。
步骤S6所述的边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台,具体为边缘服务器将步骤S5进行转换后的模型采用压缩算法进行压缩,并将压缩后的数据发送到嵌入式平台。
步骤S7所述的嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计,具体为在嵌入式平台上构建和步骤S4一样的深度估计模型结构,然后将接收到的模型文件解压缩,并采用开放神经网络交换ONNX将解压缩后的模型转换为嵌入式平台深度学习框架下对应的深度估计模型,深度估计模型结构加载ONNX转换后的深度估计模型文件,对获取的RGB图像进行快速地深度估计。
步骤S7所述的嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计,具体为将接收到的模型文件解压缩,加载到步骤S4一样的U型深度估计模型结构,将单目相机产生的RGB图像或其他数据集的RGB图像进行裁剪,四周数据裁掉,中心数据保留,以得到224*224尺寸的RGB图像,最后利用加载深度估计模型文件后的U型深度估计模型结构对224*224尺寸的RGB图像进行快速地深度估计。
本发明提供的这种适用于嵌入式平台的快速单目深度估计方法,克服了现有深度估计参数多,计算量大,依赖于高性能计算平台的缺陷,提供了一套适应于物联网设备,可穿戴设备或移动设备的快速单目深度估计方法。该方法基于编码器和解码器组成的U型轻量级深度估计模型结构,若已获得训练好的深度估计模型,则可不使用边缘服务器,直接在嵌入式平台上利用U型深度估计模型结构和训练好的深度估计模型进行快速的单目深度估计;该U型深度估计方法参数少,计算量小,预测速度快,可从RGB图像中自动学习得到准确的像素级深度图,适用于室内室外不同的场景,方便灵活;而且本发明方法的效率较高、可靠性好、成本低廉且适用于资源有限的嵌入式平台。
附图说明
图1为本发明方法的方法流程示意图。
图2为本发明方法的深度估计模型结构示意图。
图3为本发明方法的深度估计模型结构集成到机器人操作系统ROS中的示意图。
图4为本发明方法的一种实施例的示意图。
具体实施方式
如图1所示为本发明方法的方法流程示意图:本发明提供的这种适用于嵌入式平台的快速单目深度估计方法,包括如下步骤:
S1.获取深度估计模型所需的训练数据;具体为使用深度相机采集RGB图像和深度图,或者采用互联网公开的由深度相机采集的RGB图像和深度图;然后将获取的深度图中深度值为0的像素值运用双线性插值方法填充,最后将RGB图像和填充后的深度图一起用作深度估计模型的训练数据;
S2.将步骤S1获取的训练数据在嵌入式平台进行预处理;具体为将步骤S1获取的训练数据在嵌入式平台上处理为尺寸相同的图片数据;
在具体实施时,将步骤S1获取的RGB图像和深度图在嵌入式平台上进行变化;所述的变化包括在水平或垂直方向上翻转RGB图像和深度图,以及旋转RGB图像和深度图;然后保留变换前的和变换后的RGB图像和深度图图像,最后裁剪RGB图像和深度图,四周数据裁掉,中心数据保留,从而得到设定尺寸(比如244*244)的RGB图像和深度图图像;
S3.将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器;具体为将步骤S2进行预处理后的RGB图像和深度图采用压缩算法进行压缩,并将压缩后的数据发送(比如利用WiFi)到距离嵌入式平台最近的边缘服务器;压缩算法可以采用压缩算法(比如lzlib,zlib,和zstd算法等);
S4.边缘服务器采用接收到的数据解压并训练深度估计模型结构,从而得到训练好的深度估计模型;具体包括边缘服务器构建基于编码器和解码器组成的U型深度估计模型,并采用接收到的数据解压后训练此U型深度估计模型,从而得到训练好的深度估计模型;此U型深度估计模型包括编码器和解码器;编码器采用卷积神经网络,用于捕获RGB图像中的上下文,并实现自动提取特征;解码器利用深度可分离卷积和通道重排,在学习特征的同时提高分辨率;同时解码器融合相同级别的编码器的特征映射,组成U型结构,并借助于编码器产生的中间特征和解码器自身学习到的特征来提高深度图预测的准确性;
具体实施时,编码器的第一个模块a由二维卷积层、批量归一化层BN和激活函数层ReLU组成:其中二维卷积层的卷积核尺寸为7×7,用于提取特征;批量归一化层BN用于减小内部协方差平移,从而提高学习率;激活函数层ReLU在神经网络中加入非线性因素,从而提升深度估计准确性,并加快网络训练速度;编码器的第二个模块包括最大池化层和模块b:最大池化层用于对领域内的特征点取最大操作,使得神经网络能够专注于最重要的元素;模块b包含二维卷积层,批量归一化层BN、激活函数层ReLU、二维卷积层和批量归一化层:二维卷积层的卷积核尺寸均为3×3;编码器的第三个模块c为残差结构:残差结构包括一个卷积核尺寸为3×3的二维卷积层、批量归一化层BN和激活函数层ReLU,卷积核尺寸为3×3的二维卷积层和批量归一化层BN,然后融合卷积核尺寸为3×3的二维卷积层和批量归一化层BN的输出结果与卷积核尺寸为1×1的二维卷积层和批量归一化层BN的输出结果得到残差结构,之后连接模块c和模块b构成编码器的第四个模块;再次连接模块c和模块b构成编码器的第五个模块;最后用一卷积核尺寸为1×1的二维卷积层对特征进行提取并连接解码器;解码器由5个模块构成:每个模块均包括像素重排层和深度可分离卷积层;像素重排层使多通道的特征变成新特征的高度和宽度,达到特征图通道数减少,高度和宽度增加的目的,避免信息的损失;深度可分离卷积层包括depthwise卷积层,批量归一化层BN、激活函数层ReLU、二维卷积层、批量归一化层BN和激活函数层ReLU;其中depthwise卷积层卷积核尺寸为3×3,二维卷积层卷积核尺寸为1×1;
如图2所示:输入的RGB图片维度为3×H×W,H表示RGB图片的高,W表示RGB图片的宽,则编码器的a模块输出特征图维度为64×H/2×W/2;经过编码器的最大池化层和b模块后,特征图的输出维度为64×H/4×W/4;经过编码器的c模块后,特征图的输出维度为128×H/8×W/8;经过编码器的c和b联合模块d后,特征图的输出维度为256×H/16×W/16;经过编码器的c和b联合模块e后,特征图的输出维度为512×H/32×W/32;经过1×1的二维卷积层后,特征图的输出维度为1024×H/32×W/32;经过解码器的5个模块中的第一个模块f后,特征图的通道数降为原来的1/4,高H和宽W均降为原来的1/2,得到维度为256×H/16×W/16特征图,然后和对应编码器的同样维度的256×H/16×W/16特征图融合得到维度为512×H/16×W/16的特征图;经过解码器的5个模块中的第二个模块g后,特征图的通道数降为原来的1/4,高H和宽W均降为原来的1/2,得到128×H/8×W/8特征图,然后和对应编码器的同样维度128×H/8×W/8的特征图融合得到维度为256×H/8×W/8的特征图;经过解码器的5个模块中的第三个模块h后,特征图的通道数降为原来的1/4,高H和宽W均降为原来的1/2,得到64×H/4×W/4特征图,然后和对应编码器的同样维度64×H/4×W/4的特征图融合得到维度为128×H/4×W/4的特征图;经过解码器的5个模块中的第四个模块i后,特征图的通道数降为原来的1/4,高H和宽W均降为原来的1/2,得到32×H/2×W/2特征图,然后和对应编码器的维度为64×H/2×W/2的特征图融合得到维度为96×H/2×W/2的特征图;经过解码器的5个模块中的第五个模块j的像素重排层时,得到维度24×H×W的深度图,j的深度可分离卷积层的最后一个卷积核尺寸为1×1的二维卷积层输出通道设为1,则经过j的深度可分离卷积层最后可得到图片维度为1×H×W的深度图;
S5.边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换;具体为边缘服务器将得到的训练好的深度估计模型转换成开放神经网络交换ONNX格式的模型,便于其他应用程序灵活地调用;
S6.边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台;具体为边缘服务器将步骤S5进行转换后的模型采用压缩算法(比如lzlib,zlib,和zstd等算法)进行压缩,并将压缩后的数据发送(比如采用WiFi)到嵌入式平台;在具体实施时,例如使用zstd压缩算法后,模型大小减少为原来的8%。然后在局域网内,利用WiFi传输到嵌入式平台的传输速率为4.2MB/s。则压缩之后模型的传输时间减少为无压缩之前的8%;
S7.嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计;具体为嵌入式平台接收到的训练好的深度估计模型解压缩,并将解压缩后的深度估计模型转换为嵌入式平台深度学习框架下对应的深度估计模型,已构建的深度估计模型结构加载转换后的深度估计模型文件;之后利用加载深度估计模型文件后的深度估计模型结构,对获取的RGB图像进行快速地深度估计;
在具体实施时,在嵌入式平台上构建和步骤S4一样的U型深度估计模型结构,然后将接收到的模型文件解压缩,并采用开放神经网络交换ONNX将解压缩后的模型转换为嵌入式平台深度学习框架下对应的深度估计模型,U型深度估计模型结构加载ONNX转换后的深度估计模型文件,之后将单目相机产生的RGB图像或其他数据集的RGB图像进行裁剪,四周数据裁掉,中心数据保留,以得到224*224尺寸的RGB图像,最后利用加载深度估计模型文件后的U型深度估计模型结构对224*224尺寸的RGB图像进行快速地深度估计;
在具体实施时,若已获得训练好的深度估计模型,则不使用边缘服务器,直接执行步骤S7在嵌入式平台上进行快速的单目深度估计;
S8.将步骤S7构建的构建深度估计模型结构集成到嵌入式平台的操作系统;具体为将构建的深度估计模型结构集成到机器人操作系统ROS中;利用U型深度估计模型结构在机器人操作系统ROS中,构建深度估计发布器,并构建RGBD-SLAM订阅器,深度估计发布器发布的数据同步后供ROS主节点、RGBD-SLAM订阅器,和其他需要使用深度图数据的节点使用;
在具体实施时,构建深度估计发布器和RGBD-SLAM订阅器;所述深度估计发布器利用U型的深度估计模型结构建立并用于发布深度图数据和RGB数据;所述RGBD-SLAM订阅器采用现有的RGBD-SLAM程序或自行编写RGBD-SLAM程序构建,深度估计发布器发布的深度图数据和RGB数据同步后供ROS主节点、RGBD-SLAM订阅器,和其他需要使用深度图数据和RGB数据的节点使用。
在具体实施时,以嵌入式平台机器人为例,如图3所示:利用深度估计模型架构构建深度估计节点作为发布器,使其自动向RGBD-SLAM订阅器,主节点,和其他订阅RGB图像与深度图话题的节点广播消息。此过程包括以下步骤:首先创建ROS工作空间和包;然后在创建的包内新建文件夹来存储发布器节点程序,如深度估计节点程序。深度估计节点的程序包括创建发布器对象,初始化发布器节点,添加参数限制确保本节点具有唯一名称,规定发送消息函数。深度估计模型预测得到的深度图和RGB图像进行同步后,即向所有订阅RGB图像与深度图话题的节点发送深度图和RGB图像消息。
构建RGBD-SLAM节点作为订阅器包括以下步骤:首先在新建的文件夹内存储订阅器节点程序,如RGBD-SLAM节点的程序;然后初始化订阅器节点,设置回调函数,进入自循环,等待消息的到达,当有消息发布到RGB图像与深度图话题时,调用回调函数,同时利用订阅到的深度图和RGB图像消息执行RGBD-SLAM程序;所述的RGBD-SLAM程序可用已知的基于RGBD深度相机的程序,如ORB-SLAM2和RGBDSLAMv2等,或自行编写的RGBD-SLAM程序。
本发明方法整个流程的一个实施例如图4所示:移动机器人配备了传感器(单目相机与深度相机)和NVIDIA Jetson TX2,TX2嵌入式端的软件包括Ubuntu 16.04LTS和ROS。深度相机采集RGB图像和深度图,供模型训练使用,单目相机采集RGB图像供模型预测使用。深度相机采集的RGB图像和深度图数据经过zstd压缩算法压缩后通过WiFi网络传输到边缘服务器。边缘服务器构建深度估计模型结构并训练深度估计模型。训练好的模型转换为ONNX格式的模型,转换后的模型进行压缩并通过WiFi网络传输到嵌入式平台移动机器人上的TX2嵌入式端。在TX2嵌入式端上解压深度估计模型,并把解压后的模型转换为深度估计框架对应格式的模型,在TX2嵌入式端上再次构建深度估计模型结构,并加载转换后的深度估计模型进行深度估计。嵌入式平台获得训练好的深度估计模型后不再使用边缘服务器训练模型,直接使用已有的深度估计模型对单目相机产生的RGB图像进行像素级的深度图预测。
在ROS中,利用深度估计模型架构和深度估计模型构建深度估计发布器,利用现有的RGBD-SLAM程序或自行编写的RGBD-SLAM程序构建RGBD-SLAM订阅器。发布器和订阅器均为TX2嵌入式端ROS的节点,深度估计发布器预测产生的稠密深度图和RGB图像进行同步后作为话题发布给订阅该话题的节点,如ROS主节点,RGBD-SLAM订阅器节点,和其他节点,供这些节点使用。
本发明经过实验证明可行,如采用权威的纽约大学NYU-Depth V2数据集对本深度估计模型进行评测,单目RGB图像的深度估计结果如下:
表1深度估计结果示意表
参数个数 每张图片的预测时间
1.1×107 31ms
模型参数以及模型结构信息需要存储在磁盘上并在推理期间加载到内存中,对嵌入式平台来说模型参数越多负担越大。本设计的模型参数个数只有1.1×107个,在嵌入式NVIDIA Jetson TX2平台上,对于尺寸为640×480的单目图片,预测时间仅为31ms,即每秒可预测出32帧的像素级深度图,这充分表明了本发明对单目图像的深度估计速度较快。
另外,本发明的深度估计模型的均方根误差RMSE和绝对相对误差REL见表2,RMSE和REL值越低代表网络性能越好。本设计模型的RMSE评测值仅为0.719,REL评测值仅为0.208,这表明在对单目图像进行深度估计速度快的同时,本发明方法对单目图像的预测精度也较高,而且预测的深度图是稠密的像素级深度图。
表2深度估计结果示意表
均方根误差RMSE 绝对相对误差REL
0.719 0.208

Claims (6)

1.一种适用于嵌入式平台的快速单目深度估计方法,包括如下步骤:
S1. 获取深度估计模型所需的训练数据;
S2. 将步骤S1获取的训练数据在嵌入式平台进行预处理;
S3. 将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器;
S4. 边缘服务器采用接收到的数据训练构建的深度估计模型结构,从而得到训练好的深度估计模型;所述的深度估计模型,具体包括编码器和解码器;编码器采用卷积神经网络,用于捕获RGB图像中的上下文,并实现自动提取特征;解码器利用深度可分离卷积和通道重排,在学习特征的同时提高分辨率;同时解码器融合相同级别的编码器的特征映射,组成U型结构,并借助于编码器产生的中间特征和解码器自身学习到的特征来提高深度图预测的准确性;
深度估计模型包括的编码器和解码器为:编码器的第一个模块a由二维卷积层、批量归一化层BN和激活函数层ReLU组成:其中二维卷积层的卷积核尺寸为7×7,用于提取特征;批量归一化层BN用于减小内部协方差平移,从而提高学习率;激活函数层ReLU在神经网络中加入非线性因素,从而提升深度估计准确性,并加快网络训练速度;编码器的第二个模块包括最大池化层和模块b:最大池化层用于对领域内的特征点取最大操作,使得神经网络能够专注于最重要的元素;模块b包含二维卷积层,批量归一化层BN、激活函数层ReLU、二维卷积层和批量归一化层:二维卷积层的卷积核尺寸均为3×3;编码器的第三个模块c为残差结构:包括一个卷积核尺寸为3×3的二维卷积层、批量归一化层BN和激活函数层ReLU,卷积核尺寸为3×3的二维卷积层和批量归一化层BN,融合该卷积核尺寸为3×3的二维卷积层和批量归一化层BN的输出结果与卷积核尺寸为1×1的二维卷积层和批量归一化层BN的输出结果得到残差结构,然后连接模块c和模块b构成编码器的第四个模块;再次连接模块c和模块b构成编码器的第五个模块;最后用一卷积核尺寸为1×1的二维卷积层再次对特征进行提取并连接解码器;解码器由5个模块构成:每个模块均包括像素重排层和深度可分离卷积层;像素重排层使多通道的特征变成新的特征的高度和宽度,达到特征图通道数减少,高度和宽度增加的目的,避免信息的损失;深度可分离卷积层包括depthwise卷积层,批量归一化层BN、激活函数层ReLU、二维卷积层、批量归一化层BN和激活函数层ReLU;其中depthwise卷积层卷积核尺寸为3×3,二维卷积层卷积核尺寸为1×1;
S5. 边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换;具体为边缘服务器将得到的训练好的深度估计模型转换成开放神经网络交换ONNX格式的模型;
S6. 边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台;
S7. 嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计;具体为在嵌入式平台上构建和步骤S4一样的深度估计模型结构,然后将接收到的模型文件解压缩,并采用开放神经网络交换ONNX将解压缩后的模型转换为嵌入式平台深度学习框架下对应的深度估计模型,深度估计模型结构加载ONNX转换后的深度估计模型文件,对获取的RGB图像进行快速地深度估计。
2.根据权利要求1所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于还包括如下步骤:
S8. 将步骤S7构建好的构建深度估计模型结构集成到嵌入式平台的操作系统。
3.根据权利要求2所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S8所述的将步骤S7构建好的构建深度估计模型结构集成到嵌入式平台的操作系统,具体为将构建的深度估计模型结构集成到机器人操作系统ROS中;利用深度估计模型结构在机器人操作系统ROS中,构建深度估计发布器,并构建RGBD-SLAM订阅器,深度估计发布器发布的深度图数据和RGB数据同步后供ROS主节点、RGBD-SLAM订阅器,和其他需要使用深度图数据的节点使用。
4.根据权利要求1所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S1所述的获取深度估计模型所需的训练数据,具体为使用深度相机采集RGB图像和深度图,或者采用互联网公开的由深度相机采集的RGB图像和深度图;然后将获取的深度图中深度值为0的像素值运用双线性插值方法填充,最后将RGB图像和填充后的深度图一起用作深度估计模型的训练数据。
5.根据权利要求1所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S2所述的将步骤S1获取的训练数据在嵌入式平台进行预处理,具体为将步骤S1获取的RGB图像和深度图在嵌入式平台上进行变化;所述的变化包括在水平或垂直方向上翻转RGB图像和深度图,以及旋转RGB图像和深度图;然后保留变换前的和变换后的RGB图像和深度图图像,最后裁剪RGB图像和深度图从而得到设定尺寸的RGB图像和深度图图像。
6.根据权利要求5所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S7所述的嵌入式平台对接收到的深度估计模型进行解压和转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计,具体为将接收到的模型文件解压缩,解压缩后加载到步骤S4一样的U型深度估计模型结构,将单目相机产生的RGB图像或其他数据集的RGB图像进行裁剪,四周数据裁掉,中心数据保留,以得到224*224尺寸的RGB图像,最后利用加载深度估计模型文件后的U型深度估计模型结构对224*224尺寸的RGB图像进行快速地深度估计。
CN201910893707.2A 2019-09-20 2019-09-20 适用于嵌入式平台的快速单目深度估计方法 Active CN110599533B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910893707.2A CN110599533B (zh) 2019-09-20 2019-09-20 适用于嵌入式平台的快速单目深度估计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910893707.2A CN110599533B (zh) 2019-09-20 2019-09-20 适用于嵌入式平台的快速单目深度估计方法

Publications (2)

Publication Number Publication Date
CN110599533A CN110599533A (zh) 2019-12-20
CN110599533B true CN110599533B (zh) 2023-06-27

Family

ID=68861984

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910893707.2A Active CN110599533B (zh) 2019-09-20 2019-09-20 适用于嵌入式平台的快速单目深度估计方法

Country Status (1)

Country Link
CN (1) CN110599533B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110992271B (zh) * 2020-03-04 2020-07-07 腾讯科技(深圳)有限公司 图像处理方法、路径规划方法、装置、设备及存储介质
CN111523459B (zh) * 2020-04-22 2020-11-03 中科三清科技有限公司 遥感影像裸地识别方法、装置、电子设备及存储介质
CN111583322A (zh) * 2020-05-09 2020-08-25 北京华严互娱科技有限公司 一种基于深度学习的2d图像场景深度预测及语义分割方法和系统
CN111539527B (zh) * 2020-07-08 2020-10-16 浙江浙能天然气运行有限公司 基于onnx模型的神经网络迁移学习自动训练调度方法
CN111783974A (zh) * 2020-08-12 2020-10-16 成都佳华物链云科技有限公司 模型构建及图像处理方法、装置、硬件平台及存储介质
CN114170290A (zh) * 2020-09-10 2022-03-11 华为技术有限公司 图像的处理方法及相关设备
CN114488217B (zh) * 2021-12-24 2022-11-18 中国人民解放军战略支援部队航天工程大学 基于深度学习的高轨卫星cei信号频率估计方法
CN117268345B (zh) * 2023-11-20 2024-03-29 启元实验室 一种高实时性单目深度估计测量方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104537637A (zh) * 2014-11-11 2015-04-22 清华大学深圳研究生院 一种单幅静态图像深度估计方法及装置
CN107274445A (zh) * 2017-05-19 2017-10-20 华中科技大学 一种图像深度估计方法和系统
CN107578436A (zh) * 2017-08-02 2018-01-12 南京邮电大学 一种基于全卷积神经网络fcn的单目图像深度估计方法
CN109598754A (zh) * 2018-09-29 2019-04-09 天津大学 一种基于深度卷积网络的双目深度估计方法
CN109741383A (zh) * 2018-12-26 2019-05-10 西安电子科技大学 基于空洞卷积和半监督学习的图像深度估计系统与方法
CN110060286A (zh) * 2019-04-25 2019-07-26 东北大学 一种单目深度估计方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8284998B2 (en) * 2010-07-01 2012-10-09 Arcsoft Hangzhou Co., Ltd. Method of estimating depths from a single image displayed on display
CN106157307B (zh) * 2016-06-27 2018-09-11 浙江工商大学 一种基于多尺度cnn和连续crf的单目图像深度估计方法
CN109964237B (zh) * 2016-09-15 2020-07-17 谷歌有限责任公司 图像深度预测神经网络
CN107066507B (zh) * 2017-01-10 2019-09-17 中国人民解放军国防科学技术大学 一种基于云机器人混合云架构的语义地图构建方法
CN107767413B (zh) * 2017-09-20 2020-02-18 华南理工大学 一种基于卷积神经网络的图像深度估计方法
US11024046B2 (en) * 2018-02-07 2021-06-01 Fotonation Limited Systems and methods for depth estimation using generative models

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104537637A (zh) * 2014-11-11 2015-04-22 清华大学深圳研究生院 一种单幅静态图像深度估计方法及装置
CN107274445A (zh) * 2017-05-19 2017-10-20 华中科技大学 一种图像深度估计方法和系统
CN107578436A (zh) * 2017-08-02 2018-01-12 南京邮电大学 一种基于全卷积神经网络fcn的单目图像深度估计方法
CN109598754A (zh) * 2018-09-29 2019-04-09 天津大学 一种基于深度卷积网络的双目深度估计方法
CN109741383A (zh) * 2018-12-26 2019-05-10 西安电子科技大学 基于空洞卷积和半监督学习的图像深度估计系统与方法
CN110060286A (zh) * 2019-04-25 2019-07-26 东北大学 一种单目深度估计方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Depth Estimation from Monocular Infrared Images Based on BP Neural Network Model;Shaoyuan Sun, Linna Li, Lin Xi;2012 International Conference on Computer Vision in Remote Sensing;237 - 241 *
UAV Autonomous landing algorithm based on machine vision;Cheng Xu, Yuanheng Tang , Zuotang Liang and Hao Yin;2018 IEEE 4th Information Technology and Mechatronics Engineering Conference (ITOEC);824 - 829 *
基于DenseNet的单目图像深度估计;何通能,尤加庚,陈德富;计算机测量与控制;第27卷(第2期);233-236 *

Also Published As

Publication number Publication date
CN110599533A (zh) 2019-12-20

Similar Documents

Publication Publication Date Title
CN110599533B (zh) 适用于嵌入式平台的快速单目深度估计方法
CN109086683B (zh) 一种基于点云语义增强的人手姿态回归方法和系统
WO2019184657A1 (zh) 图像识别方法、装置、电子设备及存储介质
JP7412847B2 (ja) 画像処理方法、画像処理装置、サーバ、及びコンピュータプログラム
CN106875437B (zh) 一种面向rgbd三维重建的关键帧提取方法
CN110738200A (zh) 车道线3d点云地图构建方法、电子设备及存储介质
CN110830807A (zh) 图像压缩方法、装置及存储介质
CN111833360A (zh) 一种图像处理方法、装置、设备以及计算机可读存储介质
CN116962657B (zh) 彩色视频生成方法、装置、电子设备及存储介质
CN112184587A (zh) 一种边缘数据增强模型、以及基于所述模型的高效边缘数据增强方法及系统
CN118247290A (zh) 语义-空间融合Transformer的3D全景分割模型的构建方法及应用
CN117934308A (zh) 一种基于图卷积网络的轻量化自监督单目深度估计方法
CN117496029A (zh) 基于云端渲染技术的slam系统ar实时可视化方法和系统
US20220217321A1 (en) Method of training a neural network configured for converting 2d images into 3d models
CN116206008A (zh) 口型图像的输出方法及装置、音频驱动口型网络模型
WO2023086398A1 (en) 3d rendering networks based on refractive neural radiance fields
CN115578561A (zh) 一种基于多尺度上下文聚合网络的实时语义分割方法及装置
CN111510740B (zh) 转码方法、装置、电子设备和计算机可读存储介质
CN116883770A (zh) 深度估计模型的训练方法、装置、电子设备及存储介质
CN113240589A (zh) 一种多尺度特征融合的图像去雾方法及系统
CN110661785A (zh) 视频处理方法、装置、系统、电子设备及可读存储介质
CN111435448A (zh) 图像显著性物体检测方法、装置、设备及介质
CN113473084A (zh) 数据发送方法、数据接收方法及相关终端和存储介质
CN112580772A (zh) 卷积神经网络的压缩方法及装置
CN113706598B (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