首页 / 专利库 / 人工智能 / 人工神经网络 / 前馈神经网络 / 深度神经网络 / 适用于嵌入式平台的快速单目深度估计方法

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

阅读:1023发布:2020-08-03

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

1.一种适用于嵌入式平台的快速单目深度估计方法,包括如下步骤:
S1.获取深度估计模型所需的训练数据
S2.将步骤S1获取的训练数据在嵌入式平台进行预处理;
S3.将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器
S4.边缘服务器采用接收到的数据训练构建的深度估计模型结构,从而得到训练好的深度估计模型;
S5.边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换;
S6.边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台;
S7.嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计。
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.根据权利要求1~5之一所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S4所述的深度估计模型,具体包括编码器解码器;编码器采用卷积神经网络,用于捕获RGB图像中的上下文,并实现自动提取特征;解码器利用深度可分离卷积和通道重排,在学习特征的同时提高分辨率;同时解码器融合相同级别的编码器的特征映射,组成U型结构,并借助于编码器产生的中间特征和解码器自身学习到的特征来提高深度图预测的准确性。
7.根据权利要求6所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤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。
8.根据权利要求7所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S5所述的边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换,具体为边缘服务器将得到的训练好的深度估计模型转换成开放神经网络交换ONNX格式的模型。
9.根据权利要求1所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S7所述的嵌入式平台对接收到的深度估计模型进行解压和转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计,具体为在嵌入式平台上构建和步骤S4一样的深度估计模型结构,然后将接收到的模型文件解压缩,并采用开放神经网络交换ONNX将解压缩后的模型转换为嵌入式平台深度学习框架下对应的深度估计模型,深度估计模型结构加载ONNX转换后的深度估计模型文件,对获取的RGB图像进行快速地深度估计。
10.根据权利要求9所述的适用于嵌入式平台的快速单目深度估计方法,其特征在于步骤S7所述的嵌入式平台对接收到的深度估计模型进行解压和转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计,具体为将接收到的模型文件解压缩,解压缩后加载到步骤S4一样的U型深度估计模型结构,将单目相机产生的RGB图像或其他数据集的RGB图像进行裁剪,四周数据裁掉,中心数据保留,以得到224*224尺寸的RGB图像,最后利用加载深度估计模型文件后的U型深度估计模型结构对224*224尺寸的RGB图像进行快速地深度估计。

说明书全文

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

技术领域

[0001] 本发明具体涉及一种适用于嵌入式平台的快速单目深度估计方法。

背景技术

[0002] 作为计算机视觉研究中的一个重要方向,深度估计的主要目标是测出图像中每个像素的深度,获取像素级别的深度图。目前,深度估计已广泛应用于汽车自动驾驶,虚拟现实增强现实机器人避障等任务中。从数据来源上深度估计可分为基于单目RGB图像的深度估计,基于双目RGB图像的深度估计,基于单目RGB图像和稀疏深度的深度估计,和基于稀疏深度的深度估计。
[0003] 由于深度神经网络的发展,深度估计技术取得了一定的进展。借助深度神经网络,良好的图像特征可被学习到。但是深度神经网络的计算需要大量资源,目前基于深度神经网络的深度估计技术因模型大,运行时占用内存多,而依赖于高性能计算平台。这阻碍了深度估计技术在资源受限的嵌入式平台上的发展。此外,现有的深度估计算法在上采样中常采用插值方法来增大深度神经网络输出特征图的分辨率,但是传统的插值方法会使图像部分质量受损,并且预测到的深度图存在需要进一步改进的误差。为了在嵌入式平台上更加准确快速地进行单张图片的深度估计,需要设计新的单目深度估计方法。

发明内容

[0004] 本发明的目的在于提供一种效率较高、可靠性好且成本低廉的适用于嵌入式平台的快速单目深度估计方法。
[0005] 本发明提供的这种适用于嵌入式平台的快速单目深度估计方法,包括如下步骤:
[0006] S1.获取深度估计模型所需的训练数据
[0007] S2.将步骤S1获取的训练数据在嵌入式平台进行预处理;
[0008] S3.将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器
[0009] S4.边缘服务器采用接收到的数据训练构建的深度估计模型结构,从而得到训练好的深度估计模型;
[0010] S5.边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换;
[0011] S6.边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台;
[0012] S7.嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计。
[0013] 所述的适用于嵌入式平台的快速单目深度估计方法,还包括如下步骤:
[0014] S8.将步骤S7构建好的构建深度估计模型结构集成到嵌入式平台的操作系统中。
[0015] 步骤S8所述的将步骤S7构建好的构建深度估计模型结构集成到嵌入式平台的操作系统,具体为将构建的深度估计模型结构集成到机器人操作系统ROS中;利用深度估计模型结构在机器人操作系统ROS中,构建深度估计发布器,并构建RGBD-SLAM订阅器,深度估计发布器发布的深度图数据和RGB数据同步后供ROS主节点、RGBD-SLAM订阅器,和其他需要使用深度图数据的节点使用。
[0016] 步骤S1所述的获取深度估计模型所需的训练数据,具体为使用深度相机采集RGB图像和深度图,或者采用互联网公开的由深度相机采集的RGB图像和深度图;然后将获取的深度图中深度值为0的像素值运用双线性插值方法填充,最后将RGB图像和填充后的深度图一起用作深度估计模型的训练数据。
[0017] 步骤S2所述的将步骤S1获取的训练数据在嵌入式平台进行预处理,具体为将步骤S1获取的RGB图像和深度图在嵌入式平台上进行变化;所述的变化包括在平或垂直方向上翻转RGB图像和深度图,以及旋转RGB图像和深度图;然后保留变换前的和变换后的RGB图像和深度图图像,最后裁剪RGB图像和深度图从而得到设定尺寸的RGB图像和深度图图像。
[0018] 步骤S3所述的将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器,具体为将步骤S2进行预处理后的RGB图像和深度图采用压缩算法进行压缩,并将压缩后的数据发送到距离嵌入式平台最近的边缘服务器。
[0019] 步骤S4所述的深度估计模型,具体包括编码器解码器;编码器采用卷积神经网络,用于捕获RGB图像中的上下文,并实现自动提取特征;解码器利用深度可分离卷积和通道重排,在学习特征的同时提高分辨率;同时解码器融合相同级别的编码器的特征映射,组成U型结构,并借助于编码器产生的中间特征和解码器自身学习到的特征来提高深度图预测的准确性。
[0020] 步骤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。
[0021] 步骤S5所述的边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换,具体为边缘服务器将得到的训练好的深度估计模型转换成开放神经网络交换ONNX格式的模型。
[0022] 步骤S6所述的边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台,具体为边缘服务器将步骤S5进行转换后的模型采用压缩算法进行压缩,并将压缩后的数据发送到嵌入式平台。
[0023] 步骤S7所述的嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计,具体为在嵌入式平台上构建和步骤S4一样的深度估计模型结构,然后将接收到的模型文件解压缩,并采用开放神经网络交换ONNX将解压缩后的模型转换为嵌入式平台深度学习框架下对应的深度估计模型,深度估计模型结构加载ONNX转换后的深度估计模型文件,对获取的RGB图像进行快速地深度估计。
[0024] 步骤S7所述的嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计,具体为将接收到的模型文件解压缩,加载到步骤S4一样的U型深度估计模型结构,将单目相机产生的RGB图像或其他数据集的RGB图像进行裁剪,四周数据裁掉,中心数据保留,以得到224*224尺寸的RGB图像,最后利用加载深度估计模型文件后的U型深度估计模型结构对224*224尺寸的RGB图像进行快速地深度估计。
[0025] 本发明提供的这种适用于嵌入式平台的快速单目深度估计方法,克服了现有深度估计参数多,计算量大,依赖于高性能计算平台的缺陷,提供了一套适应于物联网设备,可穿戴设备或移动设备的快速单目深度估计方法。该方法基于编码器和解码器组成的U型轻量级深度估计模型结构,若已获得训练好的深度估计模型,则可不使用边缘服务器,直接在嵌入式平台上利用U型深度估计模型结构和训练好的深度估计模型进行快速的单目深度估计;该U型深度估计方法参数少,计算量小,预测速度快,可从RGB图像中自动学习得到准确的像素级深度图,适用于室内室外不同的场景,方便灵活;而且本发明方法的效率较高、可靠性好、成本低廉且适用于资源有限的嵌入式平台。附图说明
[0026] 图1为本发明方法的方法流程示意图。
[0027] 图2为本发明方法的深度估计模型结构示意图。
[0028] 图3为本发明方法的深度估计模型结构集成到机器人操作系统ROS中的示意图。
[0029] 图4为本发明方法的一种实施例的示意图。

具体实施方式

[0030] 如图1所示为本发明方法的方法流程示意图:本发明提供的这种适用于嵌入式平台的快速单目深度估计方法,包括如下步骤:
[0031] S1.获取深度估计模型所需的训练数据;具体为使用深度相机采集RGB图像和深度图,或者采用互联网公开的由深度相机采集的RGB图像和深度图;然后将获取的深度图中深度值为0的像素值运用双线性插值方法填充,最后将RGB图像和填充后的深度图一起用作深度估计模型的训练数据;
[0032] S2.将步骤S1获取的训练数据在嵌入式平台进行预处理;具体为将步骤S1获取的训练数据在嵌入式平台上处理为尺寸相同的图片数据;
[0033] 在具体实施时,将步骤S1获取的RGB图像和深度图在嵌入式平台上进行变化;所述的变化包括在水平或垂直方向上翻转RGB图像和深度图,以及旋转RGB图像和深度图;然后保留变换前的和变换后的RGB图像和深度图图像,最后裁剪RGB图像和深度图,四周数据裁掉,中心数据保留,从而得到设定尺寸(比如244*244)的RGB图像和深度图图像;
[0034] S3.将步骤S2进行预处理过的数据发送到距离嵌入式平台最近的边缘服务器;具体为将步骤S2进行预处理后的RGB图像和深度图采用压缩算法进行压缩,并将压缩后的数据发送(比如利用WiFi)到距离嵌入式平台最近的边缘服务器;压缩算法可以采用压缩算法(比如lzlib,zlib,和zstd算法等);
[0035] S4.边缘服务器采用接收到的数据解压并训练深度估计模型结构,从而得到训练好的深度估计模型;具体包括边缘服务器构建基于编码器和解码器组成的U型深度估计模型,并采用接收到的数据解压后训练此U型深度估计模型,从而得到训练好的深度估计模型;此U型深度估计模型包括编码器和解码器;编码器采用卷积神经网络,用于捕获RGB图像中的上下文,并实现自动提取特征;解码器利用深度可分离卷积和通道重排,在学习特征的同时提高分辨率;同时解码器融合相同级别的编码器的特征映射,组成U型结构,并借助于编码器产生的中间特征和解码器自身学习到的特征来提高深度图预测的准确性;
[0036] 具体实施时,编码器的第一个模块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;
[0037] 如图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的深度图;
[0038] S5.边缘服务器将步骤S4得到的训练好的深度估计模型进行模型转换;具体为边缘服务器将得到的训练好的深度估计模型转换成开放神经网络交换ONNX格式的模型,便于其他应用程序灵活地调用;
[0039] S6.边缘服务器将步骤S5进行转换后的模型发送至嵌入式平台;具体为边缘服务器将步骤S5进行转换后的模型采用压缩算法(比如lzlib,zlib,和zstd等算法)进行压缩,并将压缩后的数据发送(比如采用WiFi)到嵌入式平台;在具体实施时,例如使用zstd压缩算法后,模型大小减少为原来的8%。然后在局域网内,利用WiFi传输到嵌入式平台的传输速率为4.2MB/s。则压缩之后模型的传输时间减少为无压缩之前的8%;
[0040] S7.嵌入式平台对接收到的深度估计模型进行转换,并加载到和步骤S4一样的深度估计模型结构中,对单目图像进行快速的深度估计;具体为嵌入式平台接收到的训练好的深度估计模型解压缩,并将解压缩后的深度估计模型转换为嵌入式平台深度学习框架下对应的深度估计模型,已构建的深度估计模型结构加载转换后的深度估计模型文件;之后利用加载深度估计模型文件后的深度估计模型结构,对获取的RGB图像进行快速地深度估计;
[0041] 在具体实施时,在嵌入式平台上构建和步骤S4一样的U型深度估计模型结构,然后将接收到的模型文件解压缩,并采用开放神经网络交换ONNX将解压缩后的模型转换为嵌入式平台深度学习框架下对应的深度估计模型,U型深度估计模型结构加载ONNX转换后的深度估计模型文件,之后将单目相机产生的RGB图像或其他数据集的RGB图像进行裁剪,四周数据裁掉,中心数据保留,以得到224*224尺寸的RGB图像,最后利用加载深度估计模型文件后的U型深度估计模型结构对224*224尺寸的RGB图像进行快速地深度估计;
[0042] 在具体实施时,若已获得训练好的深度估计模型,则不使用边缘服务器,直接执行步骤S7在嵌入式平台上进行快速的单目深度估计;
[0043] S8.将步骤S7构建的构建深度估计模型结构集成到嵌入式平台的操作系统;具体为将构建的深度估计模型结构集成到机器人操作系统ROS中;利用U型深度估计模型结构在机器人操作系统ROS中,构建深度估计发布器,并构建RGBD-SLAM订阅器,深度估计发布器发布的数据同步后供ROS主节点、RGBD-SLAM订阅器,和其他需要使用深度图数据的节点使用;
[0044] 在具体实施时,构建深度估计发布器和RGBD-SLAM订阅器;所述深度估计发布器利用U型的深度估计模型结构建立并用于发布深度图数据和RGB数据;所述RGBD-SLAM订阅器采用现有的RGBD-SLAM程序或自行编写RGBD-SLAM程序构建,深度估计发布器发布的深度图数据和RGB数据同步后供ROS主节点、RGBD-SLAM订阅器,和其他需要使用深度图数据和RGB数据的节点使用。
[0045] 在具体实施时,以嵌入式平台机器人为例,如图3所示:利用深度估计模型架构构建深度估计节点作为发布器,使其自动向RGBD-SLAM订阅器,主节点,和其他订阅RGB图像与深度图话题的节点广播消息。此过程包括以下步骤:首先创建ROS工作空间和包;然后在创建的包内新建文件夹来存储发布器节点程序,如深度估计节点程序。深度估计节点的程序包括创建发布器对象,初始化发布器节点,添加参数限制确保本节点具有唯一名称,规定发送消息函数。深度估计模型预测得到的深度图和RGB图像进行同步后,即向所有订阅RGB图像与深度图话题的节点发送深度图和RGB图像消息。
[0046] 构建RGBD-SLAM节点作为订阅器包括以下步骤:首先在新建的文件夹内存储订阅器节点程序,如RGBD-SLAM节点的程序;然后初始化订阅器节点,设置回调函数,进入自循环,等待消息的到达,当有消息发布到RGB图像与深度图话题时,调用回调函数,同时利用订阅到的深度图和RGB图像消息执行RGBD-SLAM程序;所述的RGBD-SLAM程序可用已知的基于RGBD深度相机的程序,如ORB-SLAM2和RGBDSLAMv2等,或自行编写的RGBD-SLAM程序。
[0047] 本发明方法整个流程的一个实施例如图4所示:移动机器人配备了传感器(单目相机与深度相机)和NVIDIA Jetson TX2,TX2嵌入式端的软件包括Ubuntu 16.04LTS和ROS。深度相机采集RGB图像和深度图,供模型训练使用,单目相机采集RGB图像供模型预测使用。深度相机采集的RGB图像和深度图数据经过zstd压缩算法压缩后通过WiFi网络传输到边缘服务器。边缘服务器构建深度估计模型结构并训练深度估计模型。训练好的模型转换为ONNX格式的模型,转换后的模型进行压缩并通过WiFi网络传输到嵌入式平台移动机器人上的TX2嵌入式端。在TX2嵌入式端上解压深度估计模型,并把解压后的模型转换为深度估计框架对应格式的模型,在TX2嵌入式端上再次构建深度估计模型结构,并加载转换后的深度估计模型进行深度估计。嵌入式平台获得训练好的深度估计模型后不再使用边缘服务器训练模型,直接使用已有的深度估计模型对单目相机产生的RGB图像进行像素级的深度图预测。
[0048] 在ROS中,利用深度估计模型架构和深度估计模型构建深度估计发布器,利用现有的RGBD-SLAM程序或自行编写的RGBD-SLAM程序构建RGBD-SLAM订阅器。发布器和订阅器均为TX2嵌入式端ROS的节点,深度估计发布器预测产生的稠密深度图和RGB图像进行同步后作为话题发布给订阅该话题的节点,如ROS主节点,RGBD-SLAM订阅器节点,和其他节点,供这些节点使用。
[0049] 本发明经过实验证明可行,如采用权威的纽约大学NYU-Depth V2数据集对本深度估计模型进行评测,单目RGB图像的深度估计结果如下:
[0050] 表1深度估计结果示意表
[0051]参数个数 每张图片的预测时间
7
1.1×10 31ms
[0052] 模型参数以及模型结构信息需要存储在磁盘上并在推理期间加载到内存中,对嵌入式平台来说模型参数越多负担越大。本设计的模型参数个数只有1.1×107个,在嵌入式NVIDIA Jetson TX2平台上,对于尺寸为640×480的单目图片,预测时间仅为31ms,即每秒可预测出32的像素级深度图,这充分表明了本发明对单目图像的深度估计速度较快。
[0053] 另外,本发明的深度估计模型的均方根误差RMSE和绝对相对误差REL见表2,RMSE和REL值越低代表网络性能越好。本设计模型的RMSE评测值仅为0.719,REL评测值仅为0.208,这表明在对单目图像进行深度估计速度快的同时,本发明方法对单目图像的预测精度也较高,而且预测的深度图是稠密的像素级深度图。
[0054] 表2深度估计结果示意表
[0055]均方根误差RMSE 绝对相对误差REL
0.719 0.208
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈