CN114758063A - Construction method and system of local obstacle grid map based on octree structure - Google Patents
Construction method and system of local obstacle grid map based on octree structure Download PDFInfo
- Publication number
- CN114758063A CN114758063A CN202210272134.3A CN202210272134A CN114758063A CN 114758063 A CN114758063 A CN 114758063A CN 202210272134 A CN202210272134 A CN 202210272134A CN 114758063 A CN114758063 A CN 114758063A
- Authority
- CN
- China
- Prior art keywords
- map
- coordinate system
- octree
- grid
- node
- 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.)
- Granted
Links
- 238000010276 construction Methods 0.000 title claims abstract description 25
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000001514 detection method Methods 0.000 claims abstract description 24
- 230000009466 transformation Effects 0.000 claims description 45
- 239000011159 matrix material Substances 0.000 claims description 21
- 238000003780 insertion Methods 0.000 claims description 14
- 230000037431 insertion Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 10
- 238000013519 translation Methods 0.000 claims description 7
- 230000001131 transforming effect Effects 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000004888 barrier function Effects 0.000 claims 11
- 230000008901 benefit Effects 0.000 abstract description 9
- 238000012545 processing Methods 0.000 abstract description 5
- 230000035515 penetration Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 238000005070 sampling Methods 0.000 description 6
- 238000007781 pre-processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000004927 fusion Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/005—Tree description, e.g. octree, quadtree
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3841—Data obtained from two or more sources, e.g. probe vehicles
-
- 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
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/77—Determining position or orientation of objects or cameras using statistical methods
-
- 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/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Description
技术领域technical field
本发明涉及地面机器人定位建图与导航领域,具体来说涉及一种地面机器人建图与导航领域的基于八叉树结构的局部障碍物栅格地图生成方法。The invention relates to the field of ground robot mapping and navigation, in particular to a method for generating a grid map of local obstacles based on an octree structure in the field of ground robot mapping and navigation.
背景技术Background technique
随着科技水平日益提高,人们逐渐使用机器人代替人类来完成一些可重复性高的工作,如扫地机器人、送餐机器人、巡逻机器人和仓储机器人等。机器人具有长期投入成本低、不需要休息时间、工作效率高、便于管理等优势,在近几年内被广泛用于餐厅送餐、搬运货物、厂区巡检等区域,市场广阔。With the increasing level of science and technology, people gradually use robots to replace humans to complete some highly repeatable tasks, such as sweeping robots, food delivery robots, patrol robots and warehouse robots. Robots have the advantages of low long-term investment cost, no need for rest time, high work efficiency, and easy management.
对于机器人来说,实时定位与地图构建技术是它的核心技术之一。为了实现在动态环境内的自动运行,需要提供能够简单、高效地构建机器人所处位置周围的场景地图的方法,进而实现路径规划、实时避障等上层任务。For robots, real-time positioning and map construction technology is one of its core technologies. In order to realize automatic operation in a dynamic environment, it is necessary to provide a method that can simply and efficiently construct a scene map around the robot's location, so as to realize upper-level tasks such as path planning and real-time obstacle avoidance.
现有的基于八叉树结构的局部栅格地图构建方法一般流程分为以下两种:The general process of the existing local grid map construction method based on octree structure is divided into the following two types:
1).通过点云匹配将当前采集的点云与先前帧的点云融合,裁剪出感兴趣的区域点云(以无人车为中心的局部区域)后,对融合点云进行降采样和降噪处理,将处理后的融合点云插入八叉树地图,并投影为局部栅格地图。1). The currently collected point cloud is fused with the point cloud of the previous frame through point cloud matching, and the point cloud of the area of interest (the local area centered on the unmanned vehicle) is cut out, and then the fusion point cloud is down-sampled and summed. Noise reduction processing, insert the processed fused point cloud into the octree map, and project it as a local grid map.
2).实时通过深度点云传感器采集当前点云信息,对该点云进行降采样降噪处理后,直接插入八叉树地图,并投影为局部栅格地图,并不利用之前采集的点云信息,从而实现障碍物点云的实时更新。2). The current point cloud information is collected in real time through the depth point cloud sensor. After downsampling and noise reduction processing, the point cloud is directly inserted into the octree map and projected as a local grid map, without using the previously collected point cloud. information, so as to realize the real-time update of the obstacle point cloud.
但对于上述第一种方法,将不同时刻融合在一起的点云同时插入八叉树地图,在点云匹配时动态物体如人和车会出现点云重复叠加的情况,当人经过机器人时障碍物点云会覆盖面前可通行区域,导致路径规划失败,如图6所示,图中左下角为机器人,右上角为墙体,中间的圆圈代表移动物体,例如人。本发明通过射线检测将点云插入八叉树地图并更新节点占据概率,着重强调对于高动态场景的适应性和实时更新;并利用预构建的先验栅格地图作为补充,重点在于实时获取机器人周围区域的障碍物动态变化情况。However, for the first method above, the point clouds fused together at different times are inserted into the octree map at the same time. When the point clouds are matched, dynamic objects such as people and cars will have overlapping point clouds. When people pass the robot, obstacles will occur. The object point cloud will cover the passable area in front of it, causing the path planning to fail. As shown in Figure 6, the lower left corner is the robot, the upper right corner is the wall, and the circle in the middle represents moving objects, such as people. The invention inserts the point cloud into the octree map through ray detection and updates the node occupancy probability, emphasizing the adaptability and real-time update of the high dynamic scene; and uses the pre-built prior grid map as a supplement, and the focus is to obtain the robot in real time. Dynamic changes of obstacles in the surrounding area.
对于上述第二种方法,在地面机器人领域会出现信息丢失的问题,如图7所示。由于没有先前信息的辅助,在地面机器人继续前进时,原先存在的障碍物信息无法传递到当前状态,会导致碰撞事故。For the second method above, there will be a problem of information loss in the field of ground robots, as shown in Figure 7. Without the assistance of previous information, when the ground robot continues to move forward, the previously existing obstacle information cannot be transmitted to the current state, which will lead to a collision accident.
发明内容SUMMARY OF THE INVENTION
本发明的目的是克服上述现有技术存在的地面机器人在高动态场景中运行时经常遇到前方可通行区域被路过的动态物体全部堵死、不利用先前的点云信息又会导致地面机器人撞向障碍物的问题,提出了一种基于八叉树结构的局部障碍物栅格地图构建方法。The purpose of the present invention is to overcome the above-mentioned existing ground robot in the prior art that often encounters that the passable area in front is blocked by all passing dynamic objects when running in a high dynamic scene, and the ground robot will crash without using the previous point cloud information. To solve the problem of obstacles, a method for constructing local obstacle grid map based on octree structure is proposed.
针对现有技术的不足,本发明提出一种基于八叉树结构的局部障碍物栅格地图构建方法,其中包括:In view of the deficiencies of the prior art, the present invention proposes a method for constructing a grid map of local obstacles based on an octree structure, including:
步骤1、获取预建的场景障碍物栅格地图,并初始化八叉树地图;地面机器人通过相机采集当前环境的深度信息,同时地面机器人内传感器采集该地面机器人的位姿信息,并根据该位姿信息,去除该八叉树地图中超出设定范围的障碍物点,得到精简八叉地图;
步骤2、将该深度信息转换成三维点云,根据该位姿信息和该地面机器人底盘相对于该相机的外参,得到该相机相对于地图坐标系的相对变换,将该三维点云变换到地图坐标系;Step 2. Convert the depth information into a three-dimensional point cloud, obtain the relative transformation of the camera relative to the map coordinate system according to the pose information and the external parameters of the ground robot chassis relative to the camera, and transform the three-dimensional point cloud into map coordinate system;
步骤3、利用八叉树射线检测将变换到地图坐标系的三维点云插入该精简八叉地图,并将插入结果投影到二维平面,得到实际局部障碍物地图;根据该位姿信息,仅保留该场景障碍物栅格地图中该地面机器人周围的地图,得到局部障碍物先验地图,融合该实际局部障碍物地图和该局部障碍物先验地图,得到局部障碍物栅格地图,以指导该地面机器完成避障。Step 3. Use octree ray detection to insert the three-dimensional point cloud transformed into the map coordinate system into the simplified octomap, and project the insertion result to the two-dimensional plane to obtain the actual local obstacle map; according to the pose information, only Retain the map around the ground robot in the obstacle grid map of the scene, obtain a local obstacle prior map, fuse the actual local obstacle map and the local obstacle prior map, and obtain a local obstacle grid map to guide The ground machine completes obstacle avoidance.
所述的基于八叉树结构的局部障碍物栅格地图构建方法,其中步骤1中初始化该八叉树地图的初始化信息包括:最小体素叶子节点的分辨率大小、障碍物投影最大高度阈值、射线检测最远更新阈值、局部栅格地图分辨率大小和局部栅格地图保存范围阈值;The method for constructing a local obstacle grid map based on an octree structure, wherein the initialization information for initializing the octree map in
步骤1中生成该精简八叉地图的具体过程包括:The specific process of generating the simplified octagonal map in
遍历八叉树地图内所有节点,获取节点地图坐标;将节点地图坐标与该相机的地图坐标进行相减得到距离,将距离超过预设阈值的节点设置为空节点。Traverse all nodes in the octree map to obtain the node map coordinates; subtract the node map coordinates from the camera's map coordinates to obtain the distance, and set the nodes whose distances exceed the preset threshold as empty nodes.
所述的基于八叉树结构的局部障碍物栅格地图构建方法,其中步骤2中该三维点云通过下述公式变换到地图坐标系:The described local obstacle grid map construction method based on octree structure, wherein in step 2, this three-dimensional point cloud is transformed to the map coordinate system by the following formula:
其中X,Y,Z为三维点云变换到地图坐标系后的坐标,x,y,z为三维点云在相机坐标系中的坐标,Rm,c表示相机坐标系相对于地图坐标系的旋转矩阵;tm,c表示相机坐标系相对于地图坐标系的平移矩阵;0表示一个1x3的零矩阵向量;where X, Y, Z are the coordinates of the 3D point cloud transformed to the map coordinate system, x, y, z are the coordinates of the 3D point cloud in the camera coordinate system, R m, c represent the camera coordinate system relative to the map coordinate system Rotation matrix; t m,c represents the translation matrix of the camera coordinate system relative to the map coordinate system; 0 represents a 1x3 zero matrix vector;
步骤2中采用如下公式得到相机坐标系相对于地图坐标系的坐标系转换:In step 2, the following formula is used to obtain the coordinate system transformation of the camera coordinate system relative to the map coordinate system:
Tm,c=TM,r*Tr,c T m,c =T M,r *T r,c
其中Tm,c表示RGB-D相机坐标系相对于地图坐标系的坐标系转换,Tr,c表示相机相对于机器人底盘的坐标系转换,通过离线标定获得,Tm,r表示机器人底盘相对于地图坐标系的坐标系转换,通过步骤S1获取的机器人位姿信息获得。Where T m,c represents the coordinate system transformation of the RGB-D camera coordinate system relative to the map coordinate system, T r,c represents the coordinate system transformation of the camera relative to the robot chassis, obtained through offline calibration, T m, r represents the robot chassis relative to The coordinate system transformation based on the map coordinate system is obtained through the robot pose information obtained in step S1.
所述的基于八叉树结构的局部障碍物栅格地图构建方法,其中该步骤3通过以下方式将变换到地图坐标系的三维点云插入该精简八叉地图:The method for constructing a local obstacle grid map based on an octree structure, wherein step 3 inserts the three-dimensional point cloud transformed into the map coordinate system into the simplified octree map in the following manner:
遍历所述转换到地图坐标系的三维点云的所有点,计算所述相机的地图坐标与每个点的地图坐标的连线所经过的八叉树节点;如果连线长度大于设定的射线检测最远更新阈值,则只计算连线长度小于等于更新阈值的连线并且末尾节点认为是可通行节点,否则认为是障碍物节点;对于每个经过的八叉树节点,该节点的穿过次数加一,如果连线的末尾节点为障碍物节点,则击中次数加一,否则穿过次数加一,使用如下公式对占用概率进行更新:Traverse all the points of the three-dimensional point cloud converted to the map coordinate system, and calculate the octree nodes through which the line connecting the map coordinates of the camera and the map coordinates of each point passes; if the length of the line is greater than the set ray Detect the farthest update threshold, only calculate the connection whose length is less than or equal to the update threshold and the end node is considered as a passable node, otherwise it is considered as an obstacle node; for each passing octree node, the node passing through The number of times is increased by one. If the end node of the connection is an obstacle node, the number of hits is increased by one, otherwise the number of crossings is increased by one, and the occupancy probability is updated using the following formula:
其中Pocc表示占用概率,Chits表示击中次数,Cmiss表示穿过次数。where P occ represents the probability of occupancy, C hits represents the number of hits, and C miss represents the number of passes.
该步骤3中将插入结果投影到二维平面,得到实际局部障碍物地图的具体过程包括:In step 3, the insertion result is projected to a two-dimensional plane, and the specific process of obtaining the actual local obstacle map includes:
设置该地面机器人所在的地图坐标为该实际局部障碍物地图的原点;Set the map coordinates where the ground robot is located as the origin of the actual local obstacle map;
根据设定的栅格地图分辨率和局部栅格地图保存范围阈值,创建空白的障碍物栅格地图,对地图上的每个栅格点都赋初值为-1;Create a blank obstacle grid map according to the set grid map resolution and local grid map saving range threshold, and assign an initial value of -1 to each grid point on the map;
对该插入结果八叉树地图中的所有最小体素叶子节点进行遍历,如果最小体素叶子节点的占用概率大于设定的概率值且该点地图坐标的高度值满足设定的障碍物投影最大高度阈值,则将对应的栅格地图点的值记为100,表示该栅格已被占据;否则表示该栅格为可通行区域。Traverse all the minimum voxel leaf nodes in the insertion result octree map, if the occupancy probability of the minimum voxel leaf node is greater than the set probability value and the height value of the map coordinates of the point satisfies the set obstacle projection maximum If the height threshold is set, the value of the corresponding grid map point is recorded as 100, indicating that the grid is occupied; otherwise, the grid is a passable area.
本发明还提出了一种基于八叉树结构的局部障碍物栅格地图构建系统,其中包括:The present invention also proposes a local obstacle grid map construction system based on the octree structure, which includes:
初始模块,用于获取预建的场景障碍物栅格地图,并初始化八叉树地图;地面机器人通过相机采集当前环境的深度信息,同时地面机器人内传感器采集该地面机器人的位姿信息,并根据该位姿信息,去除该八叉树地图中超出设定范围的障碍物点,得到精简八叉地图;The initial module is used to obtain the pre-built scene obstacle grid map and initialize the octree map; the ground robot collects the depth information of the current environment through the camera, and the sensor in the ground robot collects the pose information of the ground robot, and according to the The pose information, remove the obstacle points beyond the set range in the octree map, and get a simplified octree map;
变换模块,用于将该深度信息转换成三维点云,根据该位姿信息和该地面机器人底盘相对于该相机的外参,得到该相机相对于地图坐标系的相对变换,将该三维点云变换到地图坐标系;The transformation module is used to convert the depth information into a three-dimensional point cloud. According to the pose information and the external parameters of the ground robot chassis relative to the camera, the relative transformation of the camera relative to the map coordinate system is obtained, and the three-dimensional point cloud is obtained. Transform to the map coordinate system;
构建模块,用于利用八叉树射线检测将变换到地图坐标系的三维点云插入该精简八叉地图,并将插入结果投影到二维平面,得到实际局部障碍物地图;根据该位姿信息,仅保留该场景障碍物栅格地图中该地面机器人周围的地图,得到局部障碍物先验地图,融合该实际局部障碍物地图和该局部障碍物先验地图,得到局部障碍物栅格地图,以指导该地面机器完成避障。The building module is used to insert the 3D point cloud transformed into the map coordinate system into the simplified octree map using octree ray detection, and project the insertion result to the 2D plane to obtain the actual local obstacle map; according to the pose information , retain only the map around the ground robot in the scene obstacle grid map, obtain the local obstacle prior map, fuse the actual local obstacle map and the local obstacle prior map, and obtain the local obstacle grid map, to guide the ground machine to complete obstacle avoidance.
所述的基于八叉树结构的局部障碍物栅格地图构建系统,其中初始模块中初始化该八叉树地图的初始化信息包括:最小体素叶子节点的分辨率大小、障碍物投影最大高度阈值、射线检测最远更新阈值、局部栅格地图分辨率大小和局部栅格地图保存范围阈值;The described local obstacle grid map construction system based on the octree structure, wherein the initialization information for initializing the octree map in the initial module includes: the resolution size of the minimum voxel leaf node, the maximum height threshold of the obstacle projection, Ray detection farthest update threshold, local grid map resolution size and local grid map save range threshold;
初始模块中生成该精简八叉地图的具体过程包括:The specific process of generating the simplified octagonal map in the initial module includes:
遍历八叉树地图内所有节点,获取节点地图坐标;将节点地图坐标与该相机的地图坐标进行相减得到距离,将距离超过预设阈值的节点设置为空节点。Traverse all nodes in the octree map to obtain the node map coordinates; subtract the node map coordinates from the camera's map coordinates to obtain the distance, and set the nodes whose distances exceed the preset threshold as empty nodes.
所述的基于八叉树结构的局部障碍物栅格地图构建系统,其中变换模块中该三维点云通过下述公式变换到地图坐标系:The described local obstacle grid map construction system based on the octree structure, wherein in the transformation module, the three-dimensional point cloud is transformed into the map coordinate system by the following formula:
其中X,Y,Z为三维点云变换到地图坐标系后的坐标,x,y,z为三维点云在相机坐标系中的坐标,Rm,c表示相机坐标系相对于地图坐标系的旋转矩阵;tm,c表示相机坐标系相对于地图坐标系的平移矩阵;0表示一个1x3的零矩阵向量;where X, Y, Z are the coordinates of the 3D point cloud transformed to the map coordinate system, x, y, z are the coordinates of the 3D point cloud in the camera coordinate system, R m, c represent the camera coordinate system relative to the map coordinate system Rotation matrix; t m,c represents the translation matrix of the camera coordinate system relative to the map coordinate system; 0 represents a 1x3 zero matrix vector;
变换模块中采用如下公式得到相机坐标系相对于地图坐标系的坐标系转换:The following formula is used in the transformation module to obtain the coordinate system transformation of the camera coordinate system relative to the map coordinate system:
Tm,c=Tm,r*Tr,c T m,c =T m, r*T r,c
其中Tm,c表示RGB-D相机坐标系相对于地图坐标系的坐标系转换,Tr,c表示相机相对于机器人底盘的坐标系转换,通过离线标定获得,Tm,r表示机器人底盘相对于地图坐标系的坐标系转换,通过步骤S1获取的机器人位姿信息获得。Where T m,c represents the coordinate system transformation of the RGB-D camera coordinate system relative to the map coordinate system, T r,c represents the coordinate system transformation of the camera relative to the robot chassis, obtained through offline calibration, T m, r represents the robot chassis relative to The coordinate system transformation based on the map coordinate system is obtained through the robot pose information obtained in step S1.
所述的基于八叉树结构的局部障碍物栅格地图构建系统,其中该构建模块用于通过以下方式将变换到地图坐标系的三维点云插入该精简八叉地图:The described local obstacle grid map construction system based on the octree structure, wherein the building module is used to insert the three-dimensional point cloud transformed into the map coordinate system into the simplified octree map in the following manner:
遍历所述转换到地图坐标系的三维点云的所有点,计算所述相机的地图坐标与每个点的地图坐标的连线所经过的八叉树节点;如果连线长度大于设定的射线检测最远更新阈值,则只计算连线长度小于等于更新阈值的连线并且末尾节点认为是可通行节点,否则认为是障碍物节点;对于每个经过的八叉树节点,该节点的穿过次数加一,如果连线的末尾节点为障碍物节点,则击中次数加一,否则穿过次数加一,使用如下公式对占用概率进行更新:Traverse all the points of the three-dimensional point cloud converted to the map coordinate system, and calculate the octree nodes through which the line connecting the map coordinates of the camera and the map coordinates of each point passes; if the length of the line is greater than the set ray Detect the farthest update threshold, only calculate the connection whose length is less than or equal to the update threshold and the end node is considered as a passable node, otherwise it is considered as an obstacle node; for each passing octree node, the node passing through The number of times is increased by one. If the end node of the connection is an obstacle node, the number of hits is increased by one, otherwise the number of crossings is increased by one, and the occupancy probability is updated using the following formula:
其中Pocc表示占用概率,Chits表示击中次数,Cmiss表示穿过次数。where P occ represents the probability of occupancy, C hits represents the number of hits, and C miss represents the number of passes.
该构建模块中将插入结果投影到二维平面,得到实际局部障碍物地图的具体过程包括:In this building block, the insertion result is projected to a two-dimensional plane, and the specific process of obtaining the actual local obstacle map includes:
设置该地面机器人所在的地图坐标为该实际局部障碍物地图的原点;Set the map coordinates where the ground robot is located as the origin of the actual local obstacle map;
根据设定的栅格地图分辨率和局部栅格地图保存范围阈值,创建空白的障碍物栅格地图,对地图上的每个栅格点都赋初值为-1;Create a blank obstacle grid map according to the set grid map resolution and local grid map saving range threshold, and assign an initial value of -1 to each grid point on the map;
对该插入结果八叉树地图中的所有最小体素叶子节点进行遍历,如果最小体素叶子节点的占用概率大于设定的概率值且该点地图坐标的高度值满足设定的障碍物投影最大高度阈值,则将对应的栅格地图点的值记为100,表示该栅格已被占据;否则表示该栅格为可通行区域。Traverse all the minimum voxel leaf nodes in the insertion result octree map, if the occupancy probability of the minimum voxel leaf node is greater than the set probability value and the height value of the map coordinates of the point satisfies the set obstacle projection maximum If the height threshold is set, the value of the corresponding grid map point is recorded as 100, indicating that the grid is occupied; otherwise, the grid is a passable area.
本发明还提出了一种存储介质,用于存储执行所述任意一种基于八叉树结构的局部障碍物栅格地图构建方法的程序。The present invention also provides a storage medium for storing a program for executing any of the methods for constructing a local obstacle grid map based on an octree structure.
本发明还提出了一种客户端,用于所述任意一种基于八叉树结构的局部障碍物栅格地图构建系统。The present invention also provides a client, which is used for any of the local obstacle grid map construction systems based on the octree structure.
由以上方案可知,本发明的优点在于:As can be seen from the above scheme, the advantages of the present invention are:
本发明提供的一种基于八叉树结构的局部障碍物栅格地图构建方法,根据预加载地图获取局部障碍物地图先验信息,再根据采集数据生成实际局部障碍物地图,利用两者融合提供一个准确可靠的机器人周围障碍物信息。相比于先前的地图构建方法,本发明在人流量大、环境经常改变的场景具有很大优势:首先,通过地面检测将一定坡度的点云转换到xOy平面上,便于高度阈值判断和障碍物点云处理;其次,八叉树结构可以通过点云击中和穿过概率动态更新局部三维点云,对于人员较多、环境动态变化的场景具有很强的适应能力;然后,由于只保存机器人周围的局部栅格地图,减少了内存占用开销,保证资源消耗不会随运行时间而线性增加;此外,相比于使用激光雷达的方案,本发明具有低成本的优势。The invention provides a method for constructing a grid map of local obstacles based on an octree structure. The prior information of the local obstacle map is obtained according to the preloaded map, and then the actual local obstacle map is generated according to the collected data, and the fusion of the two is used to provide An accurate and reliable obstacle information around the robot. Compared with the previous map construction method, the present invention has great advantages in scenes with large flow of people and frequently changing environments: first, the point cloud of a certain slope is converted to the xOy plane through ground detection, which is convenient for height threshold judgment and obstacle detection. Point cloud processing; secondly, the octree structure can dynamically update the local 3D point cloud through the point cloud hit and pass probability, which has strong adaptability to scenes with many people and dynamic changes in the environment; then, because only the robot is saved The surrounding local grid map reduces the memory occupation overhead and ensures that the resource consumption will not increase linearly with the running time; in addition, compared with the scheme using the lidar, the present invention has the advantage of low cost.
附图说明Description of drawings
图1为本发明实施例提供的基于八叉树结构的局部障碍物栅格地图构建方法的流程图;1 is a flowchart of a method for constructing a local obstacle grid map based on an octree structure provided by an embodiment of the present invention;
图2为本发明实施例提供的拟合平面投影到xOy平面的示意图;2 is a schematic diagram of a fitting plane projected to an xOy plane provided by an embodiment of the present invention;
图3为本发明实施例提供的八叉树地图结构示意图;3 is a schematic structural diagram of an octree map provided by an embodiment of the present invention;
图4为本发明实施例提供的八叉树叶子节点更新方式示意图;FIG. 4 is a schematic diagram of a method for updating an octree child node according to an embodiment of the present invention;
图5为本发明实施例提供的局部障碍物栅格地图与预加载地图中的局部栅格地图先验拼接的示意图;5 is a schematic diagram of a priori splicing of a local obstacle grid map and a local grid map in a preloaded map provided by an embodiment of the present invention;
图6为现有技术中高动态场景会出现的问题介绍示意图;6 is a schematic diagram of the introduction of problems that may occur in a high dynamic scene in the prior art;
图7为现有技术中不利用先前信息可能存在的问题介绍示意图。FIG. 7 is a schematic diagram illustrating a possible problem in the prior art that does not utilize previous information.
具体实施方式Detailed ways
发明人在进行基于八叉树结构的局部栅格地图构建研究时,发现现有技术中存在地面机器人在高动态场景中运行时经常遇到前方可通行区域被路过的动态物体全部堵死的问题,这是由于先对点云进行融合再插入八叉树地图所导致的,而不利用先前的点云信息又会导致地面机器人撞向障碍物。发明人经过研究发现,可以在每次获取到点云信息后利用地面机器人自身位置与障碍物点云之间的连线更新八叉树地图,该方法既不会丢失失去视野后的障碍物数据信息,又可以动态更新已经离开原先位置的障碍物数据信息;从而完美解决了现有技术存在的问题。While conducting research on the construction of a local grid map based on an octree structure, the inventor found that there is a problem in the prior art that the ground robot often encounters the problem that the passable area in front is blocked by all passing dynamic objects when running in a high dynamic scene. , which is caused by first fusing the point cloud and then inserting the octree map, and not using the previous point cloud information will cause the ground robot to crash into the obstacle. After research, the inventor found that the octree map can be updated by using the connection between the ground robot's own position and the obstacle point cloud every time the point cloud information is obtained, and the method will not lose the obstacle data after losing the field of view. information, and can dynamically update the obstacle data information that has left the original position; thus perfectly solving the problems existing in the prior art.
具体来说本发明提出了一种基于八叉树结构的局部障碍物栅格地图构建方法,其中包括以下步骤:Specifically, the present invention proposes a method for constructing a local obstacle grid map based on an octree structure, which includes the following steps:
S1、实时获取RGB-D相机采集目标环境的深度信息和机器人的位姿信息;S1. Obtain the depth information of the target environment and the pose information of the robot collected by the RGB-D camera in real time;
S2、加载预构建的场景障碍物栅格地图,初始化八叉树结构,此时八叉树为一个空的数据结构;其中,预构建的场景障碍物栅格地图可通过在场景中没有动态障碍物时运行其他SLAM同时定位与建图方法得到;S2. Load the pre-built scene obstacle grid map, and initialize the octree structure. At this time, the octree is an empty data structure; wherein, the pre-built scene obstacle grid map can pass through no dynamic obstacles in the scene. It can be obtained by running other SLAM simultaneous positioning and mapping methods at the same time;
S3、根据所述的机器人的位姿信息,去除八叉树地图中已经超出设定范围的障碍物点;S3, according to the position and attitude information of the robot, remove the obstacle points that have exceeded the set range in the octree map;
S4、将所述目标环境深度信息转换成三维点云,并对三维点云进行预处理;S4, converting the target environment depth information into a three-dimensional point cloud, and preprocessing the three-dimensional point cloud;
S5、根据所述机器人的位姿信息和机器人底盘相对于相机的外参,计算相机相对于地图(场景障碍物栅格地图)坐标系的相对变换,将三维点云变换到地图坐标系;S5, according to the position and attitude information of the robot and the external parameters of the robot chassis relative to the camera, calculate the relative transformation of the camera relative to the map (scene obstacle grid map) coordinate system, and transform the three-dimensional point cloud to the map coordinate system;
S6、根据所述的机器人的位姿信息,预先获取机器人周围的先验障碍物栅格地图;S6. Pre-obtain a priori obstacle grid map around the robot according to the pose information of the robot;
S7、利用八叉树射线检测将变换到地图坐标系的三维点云插入八叉树地图;S7, using octree ray detection to insert the three-dimensional point cloud transformed into the map coordinate system into the octree map;
S8、将八叉树地图投影到二维平面;S8. Project the octree map to a two-dimensional plane;
S9、生成融合先验场景信息和当前场景信息的局部障碍物栅格地图。S9. Generate a local obstacle grid map that fuses the prior scene information and the current scene information.
其中本发明的核心发明点为S3中的去除八叉树地图中已经超出设定范围的障碍物点、S4预处理部分中的通过随机抽样一致法RANSAC拟合地面方程并将点云变换到xOy平面以及S7中的实时射线检测更新。The core invention points of the present invention are removing the obstacle points in the octree map that have exceeded the set range in S3, and fitting the ground equation through the random sampling consensus method RANSAC in the preprocessing part of S4 and transforming the point cloud to xOy Plane and real-time ray detection updates in S7.
根据权力要求1所述的一种基于八叉树结构的局部障碍物栅格地图构建方法,其中所述步骤S2中八叉树结构的初始化信息包括:最小体素叶子节点的分辨率大小、障碍物投影最大高度阈值、射线检测最远更新阈值、局部栅格地图分辨率大小和局部栅格地图保存范围阈值。A method for constructing a local obstacle grid map based on an octree structure according to
所述的一种基于八叉树结构的局部障碍物栅格地图构建方法,所述步骤S3使用以下方式去除八叉树地图内的超出设定范围内的障碍物点云:In the described method for constructing a local obstacle grid map based on an octree structure, the step S3 uses the following method to remove the obstacle point cloud in the octree map beyond the set range:
遍历八叉树地图内所有占据节点,获取节点的地图坐标;将节点地图坐标与所述相机的地图坐标进行相减,如果距离超过预先设定的局部栅格地图保存范围阈值,则认为该节点与机器人距离过远,将该节点设置为空节点,清除该节点包含的占用概率以及地图坐标等信息。Traverse all occupied nodes in the octree map to obtain the map coordinates of the node; subtract the map coordinates of the node from the map coordinates of the camera, if the distance exceeds the preset local grid map preservation range threshold, the node is considered to be If the distance from the robot is too far, set the node as an empty node, and clear the occupancy probability and map coordinates contained in the node.
所述步骤S4还包括:The step S4 also includes:
离线标定机器人底盘相对于相机的坐标系转换;Offline calibration of the coordinate system transformation of the robot chassis relative to the camera;
对三维点云进行降采样和降噪;Downsampling and denoising of 3D point clouds;
通过随机抽样一致法RANSAC拟合地面方程,并将点云变换到xOy平面;Fit the ground equation by random sampling consensus method RANSAC, and transform the point cloud to the xOy plane;
根据权力要求1所述的一种基于八叉树结构的局部障碍物栅格地图构建方法,所述步骤S5中的三维点云通过以下公式变换到地图坐标系:According to a method for constructing a local obstacle grid map based on an octree structure according to
其中X,Y,Z为三维点云变换到地图坐标系后的坐标,x,y,z为步骤S3中三维点云在相机坐标系中的坐标,Rm,c表示RGB-D相机坐标系相对于地图坐标系的旋转矩阵;tm,c表示RGB-D相机坐标系相对于地图坐标系的平移矩阵,也是相机的地图坐标;0表示一个1x3的零矩阵向量。Among them, X, Y, Z are the coordinates of the 3D point cloud transformed to the map coordinate system, x, y, z are the coordinates of the 3D point cloud in the camera coordinate system in step S3, and R m, c represent the RGB-D camera coordinate system The rotation matrix relative to the map coordinate system; t m,c represents the translation matrix of the RGB-D camera coordinate system relative to the map coordinate system, which is also the map coordinate of the camera; 0 represents a 1x3 zero matrix vector.
所述步骤S5采用如下公式计算RGB-D相机坐标系相对于地图坐标系的坐标系转换:The step S5 adopts the following formula to calculate the coordinate system conversion of the RGB-D camera coordinate system relative to the map coordinate system:
Tm,c=Tm,r*Tr,c T m,c =T m,r *T r,c
其中Tm,c表示RGB-D相机坐标系相对于地图坐标系的坐标系转换,Tr,c表示相机相对于机器人底盘的坐标系转换,通过离线标定获得,Tm,r表示机器人底盘相对于地图坐标系的坐标系转换,通过步骤S1获取的机器人位姿信息获得。Where T m,c represents the coordinate system transformation of the RGB-D camera coordinate system relative to the map coordinate system, T r,c represents the coordinate system transformation of the camera relative to the robot chassis, obtained through offline calibration, T m, r represents the robot chassis relative to The coordinate system transformation based on the map coordinate system is obtained through the robot pose information obtained in step S1.
所述步骤S7通过以下方式将变换到地图坐标系的三维点云插入八叉树地图:The step S7 inserts the three-dimensional point cloud transformed into the map coordinate system into the octree map in the following manner:
遍历所述转换到地图坐标系的三维点云的所有点,计算所述相机的地图坐标与每个点的地图坐标的连线所经过的八叉树节点;如果连线长度大于设定的射线检测最远更新阈值,则只计算连线长度小于等于更新阈值的连线并且末尾节点认为是可通行节点,否则认为是障碍物节点;对于每个经过的八叉树节点,该节点的穿过次数加一,如果连线的末尾节点为障碍物节点,则击中次数加一,否则穿过次数加一,使用如下公式对占用概率进行更新:Traverse all the points of the three-dimensional point cloud converted to the map coordinate system, and calculate the octree nodes through which the line connecting the map coordinates of the camera and the map coordinates of each point passes; if the length of the line is greater than the set ray Detect the farthest update threshold, only calculate the connection whose length is less than or equal to the update threshold and the end node is considered as a passable node, otherwise it is considered as an obstacle node; for each passing octree node, the node passing through The number of times is increased by one. If the end node of the connection is an obstacle node, the number of hits is increased by one, otherwise the number of crossings is increased by one, and the occupancy probability is updated using the following formula:
其中Pocc表示占用概率,Chits表示击中次数,Cmiss表示穿过次数。where P occ represents the probability of occupancy, C hits represents the number of hits, and C miss represents the number of passes.
所述步骤S8使用以下方法来投影局部障碍物栅格地图:The step S8 uses the following method to project the local obstacle grid map:
设置机器人所在的地图坐标作为局部障碍物栅格地图的原点;Set the map coordinates where the robot is located as the origin of the local obstacle grid map;
根据设定的栅格地图分辨率和局部栅格地图保存范围阈值,创建空白的障碍物栅格地图,对地图上的每个栅格点都赋初值为-1;Create a blank obstacle grid map according to the set grid map resolution and local grid map saving range threshold, and assign an initial value of -1 to each grid point on the map;
对步骤6后八叉树地图中的所有最小体素叶子节点进行遍历,如果该点的占用概率大于设定的概率值且该点地图坐标的高度值满足设定的障碍物投影最大高度阈值,则将对应的栅格地图点的值记为100,表示该栅格已被占据;否则表示该栅格为可通行区域。Traverse all the minimum voxel leaf nodes in the octree map after step 6, if the occupancy probability of the point is greater than the set probability value and the height value of the map coordinates of the point meets the set obstacle projection maximum height threshold, Then mark the value of the corresponding grid map point as 100, indicating that the grid has been occupied; otherwise, it indicates that the grid is a passable area.
其中对三维点云进行降采样和降噪包括:The downsampling and noise reduction of the 3D point cloud includes:
用体素滤波器对点云进行降采样,其中体素滤波器的大小不大于设定八叉树地图最小体素叶子节点的分辨率大小的一半;Downsample the point cloud with a voxel filter, where the size of the voxel filter is not greater than half of the resolution size of the minimum voxel leaf node of the set octree map;
使用统计滤波去除点云中的离群点。Use statistical filtering to remove outliers from point clouds.
为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下。In order to make the above-mentioned features and effects of the present invention more clearly and comprehensible, embodiments are given below, and detailed descriptions are given below in conjunction with the accompanying drawings.
本发明提供的一种基于八叉树结构的局部障碍物栅格地图构建方法,根据预加载地图获取局部障碍物地图先验信息,再根据采集数据生成实际局部障碍物地图,利用两者融合提供一个准确可靠的机器人周围障碍物信息。相比于先前的地图构建方法,本发明在人流量大、环境经常改变的场景具有很大优势:首先,通过地面检测将一定坡度的点云转换到xOy平面上,便于高度阈值判断和障碍物点云处理;其次,八叉树结构可以通过点云击中和穿过概率动态更新局部三维点云,对于人员较多、环境动态变化的场景具有很强的适应能力;然后,由于只保存机器人周围的局部栅格地图,减少了内存占用开销,保证资源消耗不会随运行时间而线性增加;此外,相比于使用激光雷达的方案,本发明具有低成本的优势。The invention provides a method for constructing a grid map of local obstacles based on an octree structure. The prior information of the local obstacle map is obtained according to the preloaded map, and then the actual local obstacle map is generated according to the collected data. An accurate and reliable obstacle information around the robot. Compared with the previous map construction method, the present invention has great advantages in scenes with large flow of people and frequently changing environments: first, the point cloud of a certain slope is converted to the xOy plane through ground detection, which is convenient for height threshold judgment and obstacle detection. Point cloud processing; secondly, the octree structure can dynamically update the local 3D point cloud through the point cloud hit and pass probability, which has strong adaptability to scenes with many people and dynamic changes in the environment; then, because only the robot is saved The surrounding local grid map reduces the memory occupation overhead and ensures that the resource consumption will not increase linearly with the running time; in addition, compared with the scheme using the lidar, the present invention has the advantage of low cost.
图1为本发明实施例提供的基于八叉树结构的局部障碍物栅格地图构建方法的流程图,以下结合图1对本发明技术方案进行详细说明。FIG. 1 is a flowchart of a method for constructing a local obstacle grid map based on an octree structure provided by an embodiment of the present invention. The technical solution of the present invention will be described in detail below with reference to FIG. 1 .
步骤110,实时获取RGB-D相机采集目标环境的深度信息和机器人的位姿信息;
具体的,RGB-D相机实时给出目标环境的深度图数据,机器人的位姿信息可以通过机器人本身搭载的轮速计数据得到,也可以根据全局定位传感器如全球定位系统GPS、超宽带系统UWB给出,或者通过将多种传感器数据联合优化得出。因为本方法主要利用局部障碍物地图,在定位稍许偏移的时候仍能正常工作,其中RGB-D相机传感器可以是一个或多个。Specifically, the RGB-D camera gives the depth map data of the target environment in real time. The pose information of the robot can be obtained through the data of the wheel speedometer carried by the robot itself, or it can be obtained according to the global positioning sensor such as the global positioning system GPS and the ultra-wideband system UWB. given, or obtained by jointly optimizing multiple sensor data. Because this method mainly uses the local obstacle map, it can still work normally when the positioning is slightly offset, in which the RGB-D camera sensor can be one or more.
步骤120,加载预构建的场景障碍物栅格地图,初始化八叉树结构;
具体的,预构建的场景障碍物栅格地图在静态场景进行构建,且构建时应不包含动态物体,如在餐厅打烊、展厅闭馆时对场景进行一次性建图,之后可以重复使用。八叉树结构的初始化参数包括:Specifically, the pre-built scene obstacle grid map is constructed in a static scene, and the construction should not contain dynamic objects. For example, when the restaurant is closed or the exhibition hall is closed, the scene is mapped once and can be reused later. The initialization parameters of the octree structure include:
最小体素叶子节点的分辨率大小;The resolution size of the minimum voxel leaf node;
障碍物投影最大高度阈值;Obstacle projection maximum height threshold;
射线检测最远更新阈值;The farthest update threshold of ray detection;
局部栅格地图分辨率大小;Local grid map resolution size;
局部栅格地图保存范围阈值。The local raster map holds the extent threshold.
图2展示的是本方法所采用的八叉树结构的示意图,当插入点云后,八叉树会层层向下延伸直到达到设定的最小体素节点。图2左图中的大正方体表示根节点,被划分为8个子方块空间;其中空白方块表示区域内没有点云插入的叶子节点,黑色方块表示最小的体素叶子节点,灰色方块表示中间节点。八叉树抽象结构如图2右图所示,空心节点表示根节点,从根节点开始,向下延伸八个子节点,其中灰色节点表示中间节点,表示其中存在最小体素叶子节点;每个中间节点都继续向下划分包含最小体素叶子节点的子节点,直到划分到最小体素节点;对于每个最小体素叶子节点,都包含该叶子节点的占用概率以及对应的地图坐标。Figure 2 shows a schematic diagram of the octree structure used in this method. After inserting a point cloud, the octree will extend down layer by layer until it reaches a set minimum voxel node. The large square in the left picture of Figure 2 represents the root node, which is divided into 8 sub-square spaces; the blank square represents the leaf node without point cloud insertion in the area, the black square represents the smallest voxel leaf node, and the gray square represents the intermediate node. The abstract structure of the octree is shown in the right figure of Figure 2. The hollow node represents the root node. It starts from the root node and extends down to eight child nodes. The gray node represents the intermediate node, which means that there is a minimum voxel leaf node; each intermediate node The nodes continue to divide down the child nodes containing the minimum voxel leaf node until the minimum voxel node is divided; for each minimum voxel leaf node, the occupancy probability of the leaf node and the corresponding map coordinates are included.
步骤130,根据所述的机器人的位姿信息,去除八叉树地图中已经超出设定范围的障碍物点;Step 130, according to the position and attitude information of the robot, remove the obstacle points that have exceeded the set range in the octree map;
具体的,首先遍历八叉树地图内所有占据节点,获取节点的地图坐标;将节点地图坐标与所述相机的地图坐标进行相减,如果距离超过预先设定的阈值,则认为该节点与机器人距离过远,将该节点设置为空节点,清除该节点包含的占用概率以及地图坐标等信息。Specifically, first traverse all occupied nodes in the octree map to obtain the map coordinates of the nodes; subtract the map coordinates of the nodes from the map coordinates of the camera, and if the distance exceeds a preset threshold, it is considered that the node is connected to the robot If the distance is too far, set the node as an empty node, and clear the occupancy probability and map coordinates contained in the node.
步骤140,将所述目标环境深度信息转换成三维点云,并对三维点云进行预处理;
具体的,通过以下公式将所述目标环境的深度信息转换成三维点云:Specifically, the depth information of the target environment is converted into a 3D point cloud by the following formula:
其中左边的X、Y、Z表示三维点云在相机坐标系内的坐标信息,fx、fy、cx、cy为相机的内参,u、v表示像素坐标信息,d表示该点像素坐标对应的深度值。Among them, X, Y, and Z on the left represent the coordinate information of the 3D point cloud in the camera coordinate system, f x , f y , c x , and cy are the internal parameters of the camera, u and v represent the pixel coordinate information, and d represents the pixel of the point. The depth value corresponding to the coordinate.
具体的,对三维点云进行预处理包含以下几步:Specifically, the preprocessing of the 3D point cloud includes the following steps:
离线标定机器人底盘相对于相机的坐标系转换;Offline calibration of the coordinate system transformation of the robot chassis relative to the camera;
对三维点云进行降采样和降噪;Downsampling and denoising of 3D point clouds;
通过随机抽样一致法RANSAC拟合地面方程,并将点云变换到xOy平面。The ground equations are fitted by the random sampling consensus method RANSAC, and the point cloud is transformed to the xOy plane.
其中,用体素滤波器对点云进行降采样,并且体素滤波器的大小不大于设定八叉树地图最小体素叶子节点的分辨率大小的一半;使用统计滤波去除点云中的离群点。Among them, the voxel filter is used to downsample the point cloud, and the size of the voxel filter is not greater than half of the resolution size of the minimum voxel leaf node of the set octree map; statistical filtering is used to remove the distance in the point cloud. group point.
在拟合地面中,假设机器人运行路面存在一定坡度(该坡度小于45度),通过随机抽样一致法RANSAC选取三个点构成一个平面,并计算出在该平面上的点(即与该平面的垂直距离小于一定阈值的点)的个数,不断重复该操作,挑选出其中在该平面上的点最多的模型作为最终结果。在随机抽样一致法RANSAC得到地面的平面方程后,利用平面的法向量n计算将地面旋转到xOy平面的旋转变换,其中旋转轴n'和旋转角θ计算公式如下:In fitting the ground, it is assumed that the robot's running road has a certain slope (the slope is less than 45 degrees), and the random sampling consensus method RANSAC selects three points to form a plane, and calculates the points on the plane (that is, the distance with the plane). The number of points whose vertical distance is less than a certain threshold), repeat this operation continuously, and select the model with the most points on the plane as the final result. After the random sampling consensus method RANSAC obtains the plane equation of the ground, the normal vector n of the plane is used to calculate the rotation transformation that rotates the ground to the xOy plane, where the rotation axis n' and the rotation angle θ are calculated as follows:
图2展示的是拟合平面投影到xOy平面的示意图,其中,平面π为随机抽样一致法RANSAC拟合出的地面平面,旋转轴n'为平面π与xOy平面的交线;旋转角θ为平面π与xOy平面的夹角;将平面π绕旋转轴n'旋转θ度,即可得到所需的效果。Figure 2 shows a schematic diagram of the fitting plane projected onto the xOy plane, where the plane π is the ground plane fitted by the random sampling consensus method RANSAC, the rotation axis n' is the intersection of the plane π and the xOy plane; the rotation angle θ is The angle between the plane π and the xOy plane; the desired effect can be obtained by rotating the plane π around the rotation axis n' by θ degrees.
在得到旋转轴n'和旋转角θ后,旋转向量即为θn',将旋转向量转换为旋转矩阵,并将所有点通过以下公式进行旋转:After obtaining the rotation axis n' and the rotation angle θ, the rotation vector is θn', convert the rotation vector into a rotation matrix, and rotate all points by the following formula:
其中X,Y,Z为三维点云将地面变换到xOy平面后的坐标,x,y,z为原始三维点云在相机坐标系中的坐标。Where X, Y, Z are the coordinates of the 3D point cloud after transforming the ground to the xOy plane, and x, y, z are the coordinates of the original 3D point cloud in the camera coordinate system.
步骤150,据所述机器人的位姿信息和机器人底盘相对于相机的外参,计算相机相对于地图坐标系的相对变换,将三维点云变换到地图坐标系;
相机相对于地图坐标系的相对变换通过以下方式计算:The relative transformation of the camera with respect to the map coordinate system is calculated by:
Tm,c=Tm,r*Tr,c T m,c =T m,r *T r,c
其中Tm,c表示RGB-D相机坐标系相对于地图坐标系的坐标系转换;Tr,c表示相机相对于机器人底盘的坐标系转换,通过离线标定获得;Tm,r表示机器人底盘相对于地图坐标系的坐标系转换,通过步骤110中读取的机器人位姿信息获得。Among them, T m,c represents the coordinate system transformation of the RGB-D camera coordinate system relative to the map coordinate system; T r,c represents the coordinate system transformation of the camera relative to the robot chassis, obtained through offline calibration; T m,r represents the robot chassis relative to The coordinate system conversion to the map coordinate system is obtained through the robot pose information read in
在计算完相机相对于地图坐标系的相对变换Tm,c后,通过以下公式将三维点云变换到地图坐标系转换到世界坐标系:After calculating the relative transformation T m,c of the camera relative to the map coordinate system, the 3D point cloud is transformed to the map coordinate system to the world coordinate system by the following formula:
其中X,Y,Z为三维点云将地面变换到地图坐标系后的坐标,x,y,z为步骤140中三维点云变换到xOy平面后在相机中的坐标,Rm,c表示RGB-D相机坐标系相对于地图坐标系的旋转矩阵;tm,c表示RGB-D相机坐标系相对于地图坐标系的平移矩阵,也是相机的地图坐标。Among them, X, Y, Z are the coordinates of the three-dimensional point cloud after transforming the ground to the map coordinate system, x, y, z are the coordinates in the camera after the three-dimensional point cloud is transformed to the xOy plane in
步骤160,根据所述的机器人的位姿信息,预先获取机器人周围的先验障碍物栅格地图;Step 160: Pre-acquire a priori obstacle grid map around the robot according to the position and attitude information of the robot;
具体的,首先通过机器人位姿信息得到机器人所在的地图坐标;Specifically, first, the map coordinates where the robot is located are obtained through the robot pose information;
以机器人所在的地图坐标作为局部障碍物栅格地图的原点,根据设定栅格地图分辨率和局部地图大小创建一张空白障碍物地图,对地图上的每个点都赋初值为-1;Use the map coordinates where the robot is located as the origin of the local obstacle grid map, create a blank obstacle map according to the set grid map resolution and local map size, and assign an initial value of -1 to each point on the map ;
将预构建场景地图对应的栅格地图值覆盖到空白局部障碍物栅格地图上,得到先验栅格地图;Overlay the grid map values corresponding to the pre-built scene map on the blank local obstacle grid map to obtain a priori grid map;
步骤170,利用八叉树射线检测将变换到地图坐标系的三维点云插入精简后的八叉树地图;
具体的,利用八叉树射线检测插入三维点云的方法如下:Specifically, the method for inserting a three-dimensional point cloud using octree ray detection is as follows:
遍历所述转换到地图坐标系的三维点云的所有点,计算所述相机的地图坐标与每个点的地图坐标的连线所经过的八叉树节点;对于每个经过的八叉树节点,更新该节点的占用概率,如果是连线的末尾节点,则击中次数加一,否则穿过次数加一,使用如下公式对占用概率进行更新:Traverse all the points of the three-dimensional point cloud converted to the map coordinate system, and calculate the octree nodes passed by the connection line between the map coordinates of the camera and the map coordinates of each point; for each passing octree node , update the occupancy probability of the node. If it is the end node of the connection, the number of hits is increased by one, otherwise the number of crossings is increased by one, and the occupancy probability is updated using the following formula:
优选的,如果Pocc的值大于0.6,则认为该点为障碍物点,否则认为该点为可通过点。Preferably, if the value of P occ is greater than 0.6, the point is considered as an obstacle point, otherwise, the point is considered as a passable point.
图3展示的是上述方式表示八叉树结构中叶子节点的更新方式,实际更新为三维空间点进行更新,在此为方便说明用二维空间来进行展示。右上角的黑色方块表示当前所要插入的点云点,左下角的P点为当前机器人所处位置,计算机器人所处位置和当前所要插入的点云点的连线,连线经过的八叉树节点用白色方块表示。对于白色方块对应的八叉树节点,其经过的次数Cmiss加一,并更新对应的占用概率Pocc;对于黑色方块对应的八叉树节点,其击中次数加1,并更新对应的占用概率Pocc。如果原本该节点击中次数为2次,穿过次数为2次,为可通过点;在该次更新后击中次数为3次,则将该点标记为障碍物点。FIG. 3 shows the update manner of the leaf nodes in the octree structure represented by the above manner, and the update is actually performed as a point in a three-dimensional space, which is shown here in a two-dimensional space for the convenience of description. The black square in the upper right corner represents the point cloud point to be inserted currently, and the P point in the lower left corner is the current position of the robot. Nodes are represented by white squares. For the octree node corresponding to the white square, the number of passes C miss is incremented by one, and the corresponding occupation probability P occ is updated; for the octree node corresponding to the black square, the number of hits is incremented by 1, and the corresponding occupation is updated. Probability P occ . If the number of hits in this section is 2 times and the number of times of passing through is 2 times, it is a passable point; after this update, the number of hits is 3 times, then mark the point as an obstacle point.
步骤180,将八叉树地图投影到二维平面;
具体的,通过以下方式将八叉树地图投影到二维平面:Specifically, the octree map is projected to a two-dimensional plane in the following way:
设置机器人所在的地图坐标作为局部障碍物栅格地图的原点;Set the map coordinates where the robot is located as the origin of the local obstacle grid map;
根据设定的栅格地图分辨率和局部地图大小,创建空白的障碍物栅格地图,对地图上的每个点都赋初值为-1;Create a blank obstacle grid map according to the set grid map resolution and local map size, and assign an initial value of -1 to each point on the map;
对八叉树地图中的所有最小体素叶子节点进行遍历,如果该点的占用概率大于设定的概率值且该点地图坐标的高度值满足设定的高度阈值,则将对应的栅格地图坐标的值记为100,表示该栅格已被占据;否则表示该栅格为可通行区域。Traverse all the minimum voxel leaf nodes in the octree map. If the occupancy probability of the point is greater than the set probability value and the height value of the map coordinates of the point meets the set height threshold, the corresponding grid map will be traversed. The value of the coordinate is recorded as 100, indicating that the grid is occupied; otherwise, the grid is a passable area.
步骤190,生成融合先验场景信息和当前场景信息的局部障碍物栅格地图;
具体的,将当前场景信息的局部栅格地图值覆盖到先验栅格地图上;即如果当前场景信息的局部栅格地图值为-1即未知区域,则用先验栅格地图对应的地图值进行替换,获得更加全面的机器人周围障碍物信息。Specifically, the local grid map value of the current scene information is overlaid on the prior grid map; that is, if the local grid map value of the current scene information is -1, which is an unknown area, the map corresponding to the prior grid map is used. The value is replaced to obtain more comprehensive information about obstacles around the robot.
图4展示了融合当前栅格地图和先验栅格地图的流程;左上角是通过步骤180生成的当前栅格地图,描述了目前机器人看到的场景信息,其中黑色像素表示障碍物,白色像素表示可通行区域,灰色像素表示未知区域,可以看出当前栅格地图存在大面积的未知区域;右边是加载的是预构建场景地图,场景信息更加全面,但可以看出当时的桌椅摆放与现在有一些区别;对于左上角地图的灰色未知区域,使用右边对应区域的像素值去替代,得到了融合后的局部障碍物栅格地图,如左下角所示;左下角的地图拥有更为全面的机器人周围障碍物分布情况,并且可以实时更新和矫正。Figure 4 shows the process of fusing the current grid map and the prior grid map; the upper left corner is the current grid map generated by
本发明的一种基于八叉树结构的局部障碍物栅格地图构建方法,根据预加载地图获取局部障碍物地图先验信息,再根据采集数据生成实际局部障碍物地图,利用两者融合提供一个准确可靠的机器人周围障碍物信息。相比于先前的地图构建方法,本发明在人流量大、环境经常改变的场景具有很大优势:首先,八叉树结构可以通过点云击中和穿过概率动态更新局部三维点云,对于人员较多、环境动态变化的场景具有很强的适应能力;其次,由于只保存机器人周围的局部栅格地图,减少了内存占用开销,保证资源消耗不会随运行时间而线性增加。A method for constructing a local obstacle grid map based on an octree structure of the present invention obtains the prior information of the local obstacle map according to the preloaded map, then generates the actual local obstacle map according to the collected data, and uses the fusion of the two to provide a local obstacle map. Accurate and reliable information about obstacles around the robot. Compared with the previous map construction methods, the present invention has great advantages in scenes with large traffic flow and frequently changing environments: First, the octree structure can dynamically update the local 3D point cloud through the point cloud hitting and passing probability. Scenarios with many people and dynamic changes in the environment have strong adaptability; secondly, because only the local grid map around the robot is saved, the memory usage overhead is reduced, and resource consumption will not increase linearly with running time.
以下为与上述方法实施例对应的系统实施例,本实施方式可与上述实施方式互相配合实施。上述实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在上述实施方式中。The following are system embodiments corresponding to the foregoing method embodiments, and this implementation manner may be implemented in cooperation with the foregoing implementation manners. The related technical details mentioned in the foregoing embodiment are still valid in this embodiment, and are not repeated here in order to reduce repetition. Correspondingly, the relevant technical details mentioned in this embodiment can also be applied to the above-mentioned embodiments.
本发明还提出了一种基于八叉树结构的局部障碍物栅格地图构建系统,其中包括:The present invention also proposes a local obstacle grid map construction system based on the octree structure, which includes:
初始模块,用于获取预建的场景障碍物栅格地图,并初始化八叉树地图;地面机器人通过相机采集当前环境的深度信息,同时地面机器人内传感器采集该地面机器人的位姿信息,并根据该位姿信息,去除该八叉树地图中超出设定范围的障碍物点,得到精简八叉地图;The initial module is used to obtain the pre-built scene obstacle grid map and initialize the octree map; the ground robot collects the depth information of the current environment through the camera, and the sensor in the ground robot collects the pose information of the ground robot, and according to the The pose information, remove the obstacle points beyond the set range in the octree map, and get a simplified octree map;
变换模块,用于将该深度信息转换成三维点云,根据该位姿信息和该地面机器人底盘相对于该相机的外参,得到该相机相对于地图坐标系的相对变换,将该三维点云变换到地图坐标系;The transformation module is used to convert the depth information into a three-dimensional point cloud. According to the pose information and the external parameters of the ground robot chassis relative to the camera, the relative transformation of the camera relative to the map coordinate system is obtained, and the three-dimensional point cloud is obtained. Transform to the map coordinate system;
构建模块,用于利用八叉树射线检测将变换到地图坐标系的三维点云插入该精简八叉地图,并将插入结果投影到二维平面,得到实际局部障碍物地图;根据该位姿信息,仅保留该场景障碍物栅格地图中该地面机器人周围的地图,得到局部障碍物先验地图,融合该实际局部障碍物地图和该局部障碍物先验地图,得到局部障碍物栅格地图,以指导该地面机器完成避障。The building module is used to insert the 3D point cloud transformed into the map coordinate system into the simplified octree map using octree ray detection, and project the insertion result to the 2D plane to obtain the actual local obstacle map; according to the pose information , retain only the map around the ground robot in the scene obstacle grid map, obtain the local obstacle prior map, fuse the actual local obstacle map and the local obstacle prior map, and obtain the local obstacle grid map, to guide the ground machine to complete obstacle avoidance.
所述的基于八叉树结构的局部障碍物栅格地图构建系统,其中初始模块中初始化该八叉树地图的初始化信息包括:最小体素叶子节点的分辨率大小、障碍物投影最大高度阈值、射线检测最远更新阈值、局部栅格地图分辨率大小和局部栅格地图保存范围阈值;The described local obstacle grid map construction system based on the octree structure, wherein the initialization information for initializing the octree map in the initial module includes: the resolution size of the minimum voxel leaf node, the maximum height threshold of the obstacle projection, Ray detection farthest update threshold, local grid map resolution size and local grid map save range threshold;
初始模块中生成该精简八叉地图的具体过程包括:The specific process of generating the simplified octagonal map in the initial module includes:
遍历八叉树地图内所有节点,获取节点地图坐标;将节点地图坐标与该相机的地图坐标进行相减得到距离,将距离超过预设阈值的节点设置为空节点。Traverse all nodes in the octree map to obtain the node map coordinates; subtract the node map coordinates from the camera's map coordinates to obtain the distance, and set the nodes whose distances exceed the preset threshold as empty nodes.
所述的基于八叉树结构的局部障碍物栅格地图构建系统,其中变换模块中该三维点云通过下述公式变换到地图坐标系:The described local obstacle grid map construction system based on the octree structure, wherein in the transformation module, the three-dimensional point cloud is transformed into the map coordinate system by the following formula:
其中X,Y,Z为三维点云变换到地图坐标系后的坐标,x,y,z为三维点云在相机坐标系中的坐标,Rm,c表示相机坐标系相对于地图坐标系的旋转矩阵;tm,c表示相机坐标系相对于地图坐标系的平移矩阵;0表示一个1x3的零矩阵向量;where X, Y, Z are the coordinates of the 3D point cloud transformed to the map coordinate system, x, y, z are the coordinates of the 3D point cloud in the camera coordinate system, R m, c represent the camera coordinate system relative to the map coordinate system Rotation matrix; t m,c represents the translation matrix of the camera coordinate system relative to the map coordinate system; 0 represents a 1x3 zero matrix vector;
变换模块中采用如下公式得到相机坐标系相对于地图坐标系的坐标系转换:The following formula is used in the transformation module to obtain the coordinate system transformation of the camera coordinate system relative to the map coordinate system:
Tm,c=Tm,r*Tr,c T m,c =T m,r *T r,c
其中Tm,c表示RGB-D相机坐标系相对于地图坐标系的坐标系转换,Tr,c表示相机相对于机器人底盘的坐标系转换,通过离线标定获得,Tm,r表示机器人底盘相对于地图坐标系的坐标系转换,通过步骤S1获取的机器人位姿信息获得。Where T m,c represents the coordinate system transformation of the RGB-D camera coordinate system relative to the map coordinate system, T r,c represents the coordinate system transformation of the camera relative to the robot chassis, obtained through offline calibration, T m, r represents the robot chassis relative to The coordinate system transformation based on the map coordinate system is obtained through the robot pose information obtained in step S1.
所述的基于八叉树结构的局部障碍物栅格地图构建系统,其中该构建模块用于通过以下方式将变换到地图坐标系的三维点云插入该精简八叉地图:The described local obstacle grid map construction system based on the octree structure, wherein the building module is used to insert the three-dimensional point cloud transformed into the map coordinate system into the simplified octree map in the following manner:
遍历所述转换到地图坐标系的三维点云的所有点,计算所述相机的地图坐标与每个点的地图坐标的连线所经过的八叉树节点;如果连线长度大于设定的射线检测最远更新阈值,则只计算连线长度小于等于更新阈值的连线并且末尾节点认为是可通行节点,否则认为是障碍物节点;对于每个经过的八叉树节点,该节点的穿过次数加一,如果连线的末尾节点为障碍物节点,则击中次数加一,否则穿过次数加一,使用如下公式对占用概率进行更新:Traverse all the points of the three-dimensional point cloud converted to the map coordinate system, and calculate the octree nodes through which the line connecting the map coordinates of the camera and the map coordinates of each point passes; if the length of the line is greater than the set ray Detect the farthest update threshold, only calculate the connection whose length is less than or equal to the update threshold and the end node is considered as a passable node, otherwise it is considered as an obstacle node; for each passing octree node, the node passing through The number of times is increased by one. If the end node of the connection is an obstacle node, the number of hits is increased by one, otherwise the number of crossings is increased by one, and the occupancy probability is updated using the following formula:
其中Pocc表示占用概率,Chits表示击中次数,Cmiss表示穿过次数。where P occ represents the probability of occupancy, C hits represents the number of hits, and C miss represents the number of passes.
该构建模块中将插入结果投影到二维平面,得到实际局部障碍物地图的具体过程包括:In this building block, the insertion result is projected to a two-dimensional plane, and the specific process of obtaining the actual local obstacle map includes:
设置该地面机器人所在的地图坐标为该实际局部障碍物地图的原点;Set the map coordinates where the ground robot is located as the origin of the actual local obstacle map;
根据设定的栅格地图分辨率和局部栅格地图保存范围阈值,创建空白的障碍物栅格地图,对地图上的每个栅格点都赋初值为-1;Create a blank obstacle grid map according to the set grid map resolution and local grid map saving range threshold, and assign an initial value of -1 to each grid point on the map;
对该插入结果八叉树地图中的所有最小体素叶子节点进行遍历,如果最小体素叶子节点的占用概率大于设定的概率值且该点地图坐标的高度值满足设定的障碍物投影最大高度阈值,则将对应的栅格地图点的值记为100,表示该栅格已被占据;否则表示该栅格为可通行区域。Traverse all the minimum voxel leaf nodes in the insertion result octree map, if the occupancy probability of the minimum voxel leaf node is greater than the set probability value and the height value of the map coordinates of the point satisfies the set obstacle projection maximum If the height threshold is set, the value of the corresponding grid map point is recorded as 100, indicating that the grid is occupied; otherwise, the grid is a passable area.
本发明还提出了一种存储介质,用于存储执行所述任意一种基于八叉树结构的局部障碍物栅格地图构建方法的程序。The present invention also provides a storage medium for storing a program for executing any of the methods for constructing a local obstacle grid map based on an octree structure.
本发明还提出了一种客户端,用于所述任意一种基于八叉树结构的局部障碍物栅格地图构建系统。The present invention also provides a client, which is used for any of the local obstacle grid map construction systems based on the octree structure.
专业人员应该可以进一步意识到,结合本文所公开的实施例描述的各示例的单元和算法步骤,能够通过电子硬件、计算机软件或二者结合来进行实现。为了清楚地说明硬件和软件的可互换性,在上述说明中按照功能一般性详细描述了各示例的构成和实现步骤。专业技术人员可以对每个特定应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。Professionals should be further aware that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of both. In order to clearly illustrate the interchangeability of hardware and software, the constitution and implementation steps of each example are generally described in detail in terms of functions in the above description. Skilled artisans may implement the described functionality using different methods for each particular application, but such implementations should not be considered beyond the scope of the present invention.
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。The steps of a method or algorithm described in connection with the embodiments disclosed herein may be implemented in hardware, a software module executed by a processor, or a combination of the two. A software module can be placed in random access memory (RAM), internal memory, read only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other in the technical field. in any other known form of storage medium.
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The above specific embodiments further describe the purpose, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above are only specific embodiments of the present invention, and are not intended to limit the protection scope of the present invention. Within the spirit and principle of the present invention, any modifications, equivalent replacements, improvements, etc. made should be included within the protection scope of the present invention.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210272134.3A CN114758063B (en) | 2022-03-18 | 2022-03-18 | Method and system for constructing local obstacle grid map based on octree structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210272134.3A CN114758063B (en) | 2022-03-18 | 2022-03-18 | Method and system for constructing local obstacle grid map based on octree structure |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114758063A true CN114758063A (en) | 2022-07-15 |
CN114758063B CN114758063B (en) | 2025-01-24 |
Family
ID=82328047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210272134.3A Active CN114758063B (en) | 2022-03-18 | 2022-03-18 | Method and system for constructing local obstacle grid map based on octree structure |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114758063B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115330969A (en) * | 2022-10-12 | 2022-11-11 | 之江实验室 | A vectorized description method of local static environment for ground unmanned vehicles |
CN116358561A (en) * | 2023-05-31 | 2023-06-30 | 自然资源部第一海洋研究所 | Unmanned ship obstacle scene reconstruction method based on Bayesian multi-source data fusion |
CN117853666A (en) * | 2024-03-07 | 2024-04-09 | 法奥意威(苏州)机器人系统有限公司 | Point cloud cylinder detection method and device based on subdivision octree |
CN118466525A (en) * | 2024-07-12 | 2024-08-09 | 国网山东省电力公司济南供电公司 | A high-altitude obstacle avoidance method for power inspection robots |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110298914A (en) * | 2019-05-29 | 2019-10-01 | 江苏大学 | A kind of method of fruit tree canopy characteristic map in orchard establishing |
CN110501017A (en) * | 2019-08-12 | 2019-11-26 | 华南理工大学 | A Method for Generating Mobile Robot Navigation Map Based on ORB_SLAM2 |
CN112747736A (en) * | 2020-12-22 | 2021-05-04 | 西北工业大学 | Indoor unmanned aerial vehicle path planning method based on vision |
CN113269837A (en) * | 2021-04-27 | 2021-08-17 | 西安交通大学 | Positioning navigation method suitable for complex three-dimensional environment |
CN113592891A (en) * | 2021-07-30 | 2021-11-02 | 华东理工大学 | Unmanned vehicle passable area analysis method and navigation grid map manufacturing method |
-
2022
- 2022-03-18 CN CN202210272134.3A patent/CN114758063B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110298914A (en) * | 2019-05-29 | 2019-10-01 | 江苏大学 | A kind of method of fruit tree canopy characteristic map in orchard establishing |
CN110501017A (en) * | 2019-08-12 | 2019-11-26 | 华南理工大学 | A Method for Generating Mobile Robot Navigation Map Based on ORB_SLAM2 |
CN112747736A (en) * | 2020-12-22 | 2021-05-04 | 西北工业大学 | Indoor unmanned aerial vehicle path planning method based on vision |
CN113269837A (en) * | 2021-04-27 | 2021-08-17 | 西安交通大学 | Positioning navigation method suitable for complex three-dimensional environment |
CN113592891A (en) * | 2021-07-30 | 2021-11-02 | 华东理工大学 | Unmanned vehicle passable area analysis method and navigation grid map manufacturing method |
Non-Patent Citations (2)
Title |
---|
王飞;王耀力;: "基于ORB-SLAM2的三维占据网格地图的实时构建", 科学技术与工程, no. 01, 8 January 2020 (2020-01-08) * |
袁杰: "室内复杂环境下移动机器人路径规划技术研究", 《中国优秀硕士学位论文全文数据库》, no. 3, 15 March 2022 (2022-03-15), pages 140 - 288 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115330969A (en) * | 2022-10-12 | 2022-11-11 | 之江实验室 | A vectorized description method of local static environment for ground unmanned vehicles |
CN116358561A (en) * | 2023-05-31 | 2023-06-30 | 自然资源部第一海洋研究所 | Unmanned ship obstacle scene reconstruction method based on Bayesian multi-source data fusion |
CN116358561B (en) * | 2023-05-31 | 2023-08-15 | 自然资源部第一海洋研究所 | Unmanned ship obstacle scene reconstruction method based on Bayesian multi-source data fusion |
CN117853666A (en) * | 2024-03-07 | 2024-04-09 | 法奥意威(苏州)机器人系统有限公司 | Point cloud cylinder detection method and device based on subdivision octree |
CN118466525A (en) * | 2024-07-12 | 2024-08-09 | 国网山东省电力公司济南供电公司 | A high-altitude obstacle avoidance method for power inspection robots |
Also Published As
Publication number | Publication date |
---|---|
CN114758063B (en) | 2025-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114758063A (en) | Construction method and system of local obstacle grid map based on octree structure | |
CN111220993B (en) | Target scene positioning method and device, computer equipment and storage medium | |
CN104764457B (en) | A kind of urban environment patterning process for unmanned vehicle | |
CN111699410B (en) | Processing method, equipment and computer readable storage medium of point cloud | |
CN112101092A (en) | Automatic driving environment perception method and system | |
CN109887033A (en) | Localization method and device | |
CN113640822B (en) | High-precision map construction method based on non-map element filtering | |
WO2021237667A1 (en) | Dense height map construction method suitable for legged robot planning | |
CN112464812B (en) | A vehicle-based sunken obstacle detection method | |
CN114485698B (en) | Intersection guide line generation method and system | |
Fossel et al. | 2D-SDF-SLAM: A signed distance function based SLAM frontend for laser scanners | |
CN113592891B (en) | Unmanned vehicle passable domain analysis method and navigation grid map manufacturing method | |
Schmid et al. | Dynamic level of detail 3d occupancy grids for automotive use | |
CN111381585B (en) | A method for constructing an occupancy grid map, its device, and related equipment | |
Schütz et al. | Simultaneous tracking and shape estimation with laser scanners | |
CN113610910B (en) | Obstacle avoidance method for mobile robot | |
Gross et al. | 3D modeling of urban structures | |
CN111198563A (en) | Terrain recognition method and system for dynamic motion of foot type robot | |
Saleh et al. | Estimating the 2d static map based on moving stereo camera | |
Vatavu et al. | Real-time dynamic environment perception in driving scenarios using difference fronts | |
Pauls et al. | Automatic mapping of tailored landmark representations for automated driving and map learning | |
Eraqi et al. | Static free space detection with laser scanner using occupancy grid maps | |
Velat et al. | Vision based vehicle localization for autonomous navigation | |
CN114353779B (en) | Method for rapidly updating robot local cost map by adopting point cloud projection | |
CN115390050A (en) | Calibration method, device and equipment of vehicle-mounted laser radar |
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 |