CN111413691A - 一种采用分布式结构的语义定位和建图的方法 - Google Patents
一种采用分布式结构的语义定位和建图的方法 Download PDFInfo
- Publication number
- CN111413691A CN111413691A CN202010163358.1A CN202010163358A CN111413691A CN 111413691 A CN111413691 A CN 111413691A CN 202010163358 A CN202010163358 A CN 202010163358A CN 111413691 A CN111413691 A CN 111413691A
- Authority
- CN
- China
- Prior art keywords
- information
- key frame
- robot
- map
- image
- 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
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S11/00—Systems for determining distance or velocity not using reflection or reradiation
- G01S11/12—Systems for determining distance or velocity not using reflection or reradiation using electromagnetic waves other than radio waves
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种采用分布式结构的语义定位和建图的方法,本发明进行环境图像的获取,通过卷积神经网络EfficientNet进行物体识别,并对识别的每块区域进行特征点重分配,再计算出每帧图像间的联系;根据机器人运动速度,动态范围变化等约束筛选所需关键帧;通过ROS***自定义的topic,将端侧提取完的关键帧及其信息,传输到主机侧;主机接受上传的消息后,投影得到稠密三维点云图,再解算octomap,再通过topic将octomap传回端侧设备,以供终端设备控制各模块完成指定任务。本发明既提高了图像匹配率,又克服了终端设备算力低难以完成纯视觉的机器人定位和地图解算任务,并降低了硬件平台的成本。
Description
技术领域
本发明属于移动机器人导航领域,涉及一种采用分布式结构的语义定位和建图的方法。
背景技术
根据当前发展趋势可以看出定位和建图技术是移动机器人和自动驾驶是否能够自主导航的一个决定性技术。这个技术特点是通过移动机器人搭载一个或多个传感器,在位置环境下移动,构建环境地图,并对自身进行定位。目前不论是室内还是室外,机器人的需求越来越大,故其中的定位和建图技术也越为重要。
目前市场不论是百度系,谷歌系还是momenta公司的自动驾驶汽车,其内部的定位和建图***都是以激光雷达作为传感器,但是多线激光价格昂贵;而单线激光雷达探测范围受限,且其建立的地图缺乏语义信息。
广义的理解,在单车智能技术路线的基础上,未来整个自动驾驶的技术体系将是“车端”、“云端”、“路端”同步升级发展。5G+AI是解锁高等级自动驾驶技术的关键所在。纵观全球主流科技公司以及整车厂,自动驾驶L3商业化技术已经成熟,L4/5加速发展进入验证试点阶段。
并且为了保证越来越多的自动驾驶汽车安全上路,就越需要更加完善的具有先验信息的地图,这些地图不单单像百度地图,谷歌地图那样,而要记录更为具体的道路细节,这不单要求了自动驾驶***的实时性,高效性,还要求了自动驾驶***有多机协同的功能,以保证每辆车运行中建立的地图能够在所有车辆中通用。
而单纯用摄像头来完成定位并且建立可导航的地图对硬件平台的算力要求较大,如果将来需要完成多智能体协同的工作,那么目前市场上大部分的硬件平台的算力都难以满足其要求。
发明内容
本发明针对现有技术的不足,提出一种采用分布式结构的语义定位和建图的方法。
本发明一种采用分布式结构的语义定位和建图的方法,包含以下步骤:
步骤1、获取图像并进行识别区域框定
通过机器人上搭载的深度摄像头进行环境图像的获取,将每一幅图像传入物体识别神经网络EfficientNet,然后进行物体识别,将识别到的区域作为***提取特征点和描述子的范围,不断进行相邻帧的ORB特征点和描述子的计算和匹配,以此获得表征机器人相对位置的旋转矩阵和平移矩阵,并且记录每一帧的特征点信息以及和邻近帧的关系,以保证后续关键帧提取的准确性。
步骤2、提取关键帧
根据对机器人运动速度,动态范围变化,以及环境信息等约束条件对此前处理并保存完的每一帧数据进行筛选,来提取所需的关键帧,以此来减小***运行内存和加快运行速度。
步骤3、端侧信息上传
通过ROS***自定义的topic,将在端侧的低算力设备上对提取完的关键帧,以及关键帧中存在的essential graph,地图点,特征点和描述子等信息传输到主机侧进行后续的大量计算。
步骤4、主机侧信息处理
接受端侧上传的关键帧信息后,主机将关键帧中的所有地图点和关键帧中记录的当前机器人位姿数据建立约束,进行Bundle Adjustment优化,并对每一关键帧中的所有像素点进行三维坐标的空间投影,得到稠密三维点云图,然后根据八叉树体元素占据的概率公式和阈值设定将稠密的三维点云图转变为八叉树地图。
步骤5、主机测信息传输
将步骤4处理得到的八叉树地图,再通过ROS***建立的自定义的topic传输回端侧设备,以供终端设备对机器人的各模块进行控制来完成指定任务。
本发明相当于现有技术的有益效果为:
1、提出了在定位和建图***提取特征点之前,利用识别神经网络进行***特征点提取区域的有效划分,以提高整个***的鲁棒性。
2、目前市场上大部分的移动机器人的主要传感器都采用的是64线的激光雷达,但是成本昂贵,本发明提出用摄像头来代替激光雷达作为主要传感器,来大幅降低机器人的制作成本。
3、提出了分布式结构将定位和建图***进行切分,将算力需求高的部分通过分布式结构放置在主机侧上运行,来加速***运行速率,使***能够实时运行。
4、提出分布式结构可以将内存需求较大的内容放置主机测存储,以此提升***大范围,长时间运行的性能。
5、该方法提供了多智能体协作对某一环境进行地图构建的可能,给未来车联网的实施提供一种新方法。
附图说明
图1为本发明一种采用分布式结构的机器人定位和建图***及方法的基本流程图;
图2为本发明中通过EfficientNet进行特征点重分配的效果图;
图3为本发明中分布式结构框架图;
图4为本发明中Bundle Adjustment优化的框图;
图5(A)为本发明中三维稠密点云图;
图5(B)为本发明中解算的八叉树地图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步的说明。
表1为***平台参数。用于实施的硬件环境是Jetson TX2和CPU Intel(R)Core(TM)CPU [email protected],,本发明在Linux16.04***下进行,实验手段包括数据集测试和实地测试,实地测试使用kineticV2进行数据采集,在实验楼道以及楼顶阳台完成不同场景不同光照条件的性能评估。
参数 | 实施条件 |
***硬件平台 | Jetson TX2,Inter i5-9400 |
视觉传感器 | kineticV2 |
运行环境 | Ubuntu 16.04 |
编程语言 | C++ |
测试环境 | 实验楼(30*20m<sup>2</sup>) |
表1
如图1、图3所示,本发明提出一种采用分布式结构的语义定位和建图的方法,包括机器人定位和关键帧提取,分布式结构下的信息传输,三维点云地图和八叉树地图的生成及优化三部分。以下对这三部分中核心步骤进行详细说明。
具体步骤如下:
1、机器人定位和关键帧提取:
A)如图2所示,用移动机器人上搭载的摄像头来不断的读取图像并传送到终端设备Jetson TX2上进行图像处理,将每一幅图像传入训练好的物体识别神经网络EfficientNet(该神经网络将纹理相对较多的物体作为输入进行训练),然后进行物体识别,将识别到的区域作为***提取特征点和描述子的范围,并且将重复区域进行合并,然后通过识别到的区域按照面积比重分配每个区域中需要提取的特征点数上限(有规律的分配特征点以提高其鲁棒性),最后将分割好的区域进行八层金字塔图像变换,用ORB算子提取每一帧图像的特征点,进行特征点匹配,每个特征点的三维坐标计算和描述子计算,并将这些信息按每一帧图像进行保存。
B)根据相邻帧之间的匹配情况,计算出表征机器人相对运动的旋转矩阵和平移矩阵,并建立特征点的三维坐标和机器人运动的变换矩阵之间的约束条件,通过BundleAdjustment对地图点坐标和变换矩阵进行优化,如图4所示。
C)根据对机器人运动速度,动态范围变化,以及环境信息等约束条件对此前处理并保存完的每一帧数据进行筛选,来提取所需的关键帧,以此来减小***运行内存和加快运行速度。
2、分布式结构下的信息传输:
A)在终端设备Jetson TX2完成步骤1的工作后,通过端侧的ROS***建立自定义的topic,将处理完的每一帧图像数据,包括特征点信息,地图点三维坐标,描述子和机器人当前位姿,单向传输给主机侧设备。
B)如果终端设备在特征点匹配过程中出现跟踪丢失,需要重定位的情况。通过分布式结构上传需要进行重定位的标志,并且终止端侧设备***运行,等待主机下放进一步的信息。
3、八叉树地图的生成及优化:
A)接受端侧设备上传的关键帧信息后,提取每一关键帧的所有像素点的三维坐标,将这些点都投影到三维空间中,形成点云图,并可以控制点云的密度来控制点云图生成的速度和存储大小
B)先设定八叉树的最大递归深度,再根据三维点云图找出场景的最大尺寸,并以此尺寸建立第一个立方体。然后依序将体元素丢入能被包含且没有子节点的立方体,若没有达到最大递归深度,就进行细分八等份,再将该立方体所装的单位元元素全部分担给八个子立方体然后一直重复此步骤,直到达到最大递归深度。并根据公式:
计算体元素占据的概率,再根据公式:
将概率转换到实数空间上,再根据设定的阈值确定此体元素是否被占据。
C)如图5(A)、如图5(B)所示,主机端除了进行三维点云地图和八叉树地图的构建外,同步进行当前帧和之前关键帧的描述子匹配的任务,来实现回环检测功能,以此大大减少终端设备上的任务,保证终端设备可以在大范围环境下,长时间的实时运行。
D)主机端将处理好的八叉树地图再次通过ROS***中自定义的topic,传输回终端设备。并且如果检测到有回环情况,及时维护八叉树地图,并立刻重新传输八叉树地图给终端设备。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明构思的前提下,还可以做出若干改进和润色,这些改进和润色也应视为本发明保护范围内。
Claims (1)
1.一种采用分布式结构的语义定位和建图的方法,其特征在于:
步骤1、获取图像并进行识别区域框定
通过机器人上搭载的深度摄像头进行环境图像的获取,将每一幅图像传入物体识别神经网络EfficientNet,然后进行物体识别,将识别到的区域作为***提取特征点和描述子的范围,不断进行相邻帧的ORB特征点和描述子的计算和匹配,以此获得表征机器人相对位置的旋转矩阵和平移矩阵,并且记录每一帧的特征点信息以及和邻近帧的关系,以保证后续关键帧提取的准确性;
步骤2、提取关键帧
根据对机器人运动速度,动态范围变化,以及环境信息的约束条件对此前处理并保存完的每一帧数据进行筛选,来提取所需的关键帧,以此来减小***运行内存和加快运行速度;
步骤3、端侧信息上传
通过ROS***自定义的topic,将在端侧的低算力设备上对提取完的关键帧,以及关键帧中存在的essential graph,地图点,特征点和描述子等信息传输到主机侧进行后续的大量计算;
步骤4、主机侧信息处理
接受端侧上传的关键帧信息后,主机将关键帧中的所有地图点和关键帧中记录的当前机器人位姿数据建立约束,进行Bundle Adjustment优化,并对每一关键帧中的所有像素点进行三维坐标的空间投影,得到稠密三维点云图,然后根据八叉树体元素占据的概率公式和阈值设定将稠密的三维点云图转变为八叉树地图;
步骤5、主机测信息传输
将步骤4处理得到的八叉树地图,再通过ROS***建立的自定义的topic传输回端侧设备,以供终端设备对机器人的各模块进行控制来完成指定任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010163358.1A CN111413691A (zh) | 2020-03-10 | 2020-03-10 | 一种采用分布式结构的语义定位和建图的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010163358.1A CN111413691A (zh) | 2020-03-10 | 2020-03-10 | 一种采用分布式结构的语义定位和建图的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111413691A true CN111413691A (zh) | 2020-07-14 |
Family
ID=71494305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010163358.1A Pending CN111413691A (zh) | 2020-03-10 | 2020-03-10 | 一种采用分布式结构的语义定位和建图的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111413691A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113628170A (zh) * | 2021-07-16 | 2021-11-09 | 武汉大学 | 一种基于深度学习的激光线提取方法及*** |
CN115239855A (zh) * | 2022-06-23 | 2022-10-25 | 安徽福斯特信息技术有限公司 | 一种基于移动终端的虚拟手语主播生成方法、装置及*** |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780612A (zh) * | 2016-12-29 | 2017-05-31 | 浙江大华技术股份有限公司 | 一种图像中的物体检测方法及装置 |
CN108596974A (zh) * | 2018-04-04 | 2018-09-28 | 清华大学 | 动态场景机器人定位建图***及方法 |
CN110146089A (zh) * | 2019-06-21 | 2019-08-20 | 合肥小步智能科技有限公司 | 一种基于嵌入式ai计算平台的巡检机器人定位方法 |
CN110264563A (zh) * | 2019-05-23 | 2019-09-20 | 武汉科技大学 | 一种基于orbslam2的八叉树建图方法 |
CN110363816A (zh) * | 2019-06-25 | 2019-10-22 | 广东工业大学 | 一种基于深度学习的移动机器人环境语义建图方法 |
CN110455294A (zh) * | 2019-08-28 | 2019-11-15 | 北京工业大学 | 基于ros环境下的多线程分布式slam***的实现方法 |
CN110501017A (zh) * | 2019-08-12 | 2019-11-26 | 华南理工大学 | 一种基于orb_slam2的移动机器人导航地图生成方法 |
CN110675483A (zh) * | 2019-07-17 | 2020-01-10 | 电子科技大学 | 基于稠密视觉slam的无人机三维地图快速重建方法 |
-
2020
- 2020-03-10 CN CN202010163358.1A patent/CN111413691A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780612A (zh) * | 2016-12-29 | 2017-05-31 | 浙江大华技术股份有限公司 | 一种图像中的物体检测方法及装置 |
CN108596974A (zh) * | 2018-04-04 | 2018-09-28 | 清华大学 | 动态场景机器人定位建图***及方法 |
CN110264563A (zh) * | 2019-05-23 | 2019-09-20 | 武汉科技大学 | 一种基于orbslam2的八叉树建图方法 |
CN110146089A (zh) * | 2019-06-21 | 2019-08-20 | 合肥小步智能科技有限公司 | 一种基于嵌入式ai计算平台的巡检机器人定位方法 |
CN110363816A (zh) * | 2019-06-25 | 2019-10-22 | 广东工业大学 | 一种基于深度学习的移动机器人环境语义建图方法 |
CN110675483A (zh) * | 2019-07-17 | 2020-01-10 | 电子科技大学 | 基于稠密视觉slam的无人机三维地图快速重建方法 |
CN110501017A (zh) * | 2019-08-12 | 2019-11-26 | 华南理工大学 | 一种基于orb_slam2的移动机器人导航地图生成方法 |
CN110455294A (zh) * | 2019-08-28 | 2019-11-15 | 北京工业大学 | 基于ros环境下的多线程分布式slam***的实现方法 |
Non-Patent Citations (2)
Title |
---|
张志: "《云计算与物联网关键技术研究及应用》", 31 December 2018, 吉林大学出版社 * |
魏乐麒: ""基于环境语义信息的SLAM算法研究与实现"", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113628170A (zh) * | 2021-07-16 | 2021-11-09 | 武汉大学 | 一种基于深度学习的激光线提取方法及*** |
CN113628170B (zh) * | 2021-07-16 | 2023-08-25 | 武汉大学 | 一种基于深度学习的激光线提取方法及*** |
CN115239855A (zh) * | 2022-06-23 | 2022-10-25 | 安徽福斯特信息技术有限公司 | 一种基于移动终端的虚拟手语主播生成方法、装置及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110097553B (zh) | 基于即时定位建图与三维语义分割的语义建图*** | |
CN110163930A (zh) | 车道线生成方法、装置、设备、***及可读存储介质 | |
CN112734765B (zh) | 基于实例分割与多传感器融合的移动机器人定位方法、***及介质 | |
CN113516664A (zh) | 一种基于语义分割动态点的视觉slam方法 | |
CN112991534B (zh) | 一种基于多粒度物体模型的室内语义地图构建方法及*** | |
CN108748184B (zh) | 一种基于区域地图标识的机器人巡逻方法及机器人设备 | |
CN113284144B (zh) | 一种基于无人机的隧道检测方法及装置 | |
WO2024087962A1 (zh) | 车厢姿态识别***、方法、电子设备及存储介质 | |
CN111413691A (zh) | 一种采用分布式结构的语义定位和建图的方法 | |
US11308324B2 (en) | Object detecting system for detecting object by using hierarchical pyramid and object detecting method thereof | |
CN113447014A (zh) | 室内移动机器人、建图方法、定位方法以及建图定位装置 | |
CN110569387B (zh) | 基于深度哈希算法的雷达-图像跨模态检索方法 | |
CN112733971B (zh) | 扫描设备的位姿确定方法、装置、设备及存储介质 | |
CN114780393A (zh) | 海上无人集群智能算法测试训练*** | |
US20220164595A1 (en) | Method, electronic device and storage medium for vehicle localization | |
CN113569849A (zh) | 基于计算机视觉的汽车充电桩界面检测智能交互*** | |
CN116105721B (zh) | 地图构建的回环优化方法、装置、设备及存储介质 | |
CN115493596A (zh) | 一种移动机器人语义地图构建与导航方法 | |
CN114353779B (zh) | 一种采用点云投影快速更新机器人局部代价地图的方法 | |
CN113609985B (zh) | 物***姿检测方法、检测设备、机器人及可存储介质 | |
CN117611762B (zh) | 一种多层级地图构建方法、***及电子设备 | |
CN113593017B (zh) | 露天矿地表三维模型构建方法、装置、设备及存储介质 | |
US20230109494A1 (en) | Methods and devices for building a training dataset | |
US20210247773A1 (en) | Estimation system, estimation apparatus, estimation method, and computer program | |
CN117537803A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200714 |