CN113902864A - 用于矿场的矢量地图生成方法、系统及计算机系统 - Google Patents
用于矿场的矢量地图生成方法、系统及计算机系统 Download PDFInfo
- Publication number
- CN113902864A CN113902864A CN202111212243.8A CN202111212243A CN113902864A CN 113902864 A CN113902864 A CN 113902864A CN 202111212243 A CN202111212243 A CN 202111212243A CN 113902864 A CN113902864 A CN 113902864A
- Authority
- CN
- China
- Prior art keywords
- cube
- line segment
- vector map
- points
- bounding
- 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
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/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- 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
-
- 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/10032—Satellite or aerial image; Remote sensing
- G06T2207/10044—Radar image
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
- G06T2207/30256—Lane; Road marking
Abstract
本发明公开了一种用于矿场的矢量地图生成方法,主要通过传感器采集的数据生成第一点云地图,通过道路边缘提取等方法,识别出无人驾驶的矿车所路途经的道路的边缘信息,从而得到具有道路信息的高精度矢量地图。本发明还公开了一种用于矿场的矢量地图生成系统。本发明提供的方法可以采用无人驾驶矿车自带的传感器,在无需人工干预的条件下根据无人驾驶矿卡在驾驶过程中采集的数据自动生成高精度矢量地图,大大提升了高精度矢量地图的绘制效率。不需要使用航测设备大大节省了地图的测绘成本。
Description
技术领域
本发明属于数据处理领域,特别涉及一种用于矿场的矢量地图生成方法、系统及计算机系统。
背景技术
随着无人驾驶驾驶技术的飞速发展,越来越多的矿石开采企业开始进行矿场无人化改造。目前的矿场无人化改造过程中无人驾驶的矿车扮演者核心角色。矿场属于无人封闭环境,无人驾驶矿车主要面临两个技术难点,第一是如何在非结构化道路上进行精确的厘米级定位,第二是如何在随着矿场的开采持续发生变化的非结构化道路上实现路径规划。
为了解决以上问题,现有的解决方案是使用航测设备定期扫描露天矿场的高精度点云地图,然后由专业的制图人员在航测得到的高精度点云地图上手工绘制高精度矢量地图。由于高精度矢量地图是与经纬度坐标对齐的,所以只要在无人矿卡上安装高精度GPS设备即可实现无人驾驶。同时高精度矢量地图包含道路边界信息,使用道路边界即可完成无人矿车的局部路径规划。但是这个方案使用到的航测设备价格昂贵,每次航测的价格数万元,按照露天矿场的生产进度,每周都需要进行一次航测。每次航测完成后还需要专业的制图人员手工绘制高精度矢量地图,绘制效率低。
发明内容
发明目的:本发明针对现有技术存在的问题,提出了有效提高绘制效率的用于矿场的矢量地图生成方法。
技术方案:为实现上述目的,本发明提供了一种用于矿场的矢量地图生成方法,包括以下步骤:
步骤1:采集无人驾驶的矿车所途经地的周围环境数据信息和无人驾驶的矿车行驶信息;
步骤2:根据步骤1采集到的数据结合SLAM算法得到第一点云地图;
步骤3:采用多个同样大小的立方体填充第一点云地图,得到第一立方体集合;再结合无人驾驶的矿车行驶信息通过道路边缘提取得到包含了道路边缘点的包围盒集合;
步骤4:根据步骤3得到的包含道路边缘点的包围盒集合结合矢量地图生成方法得到包含了矿场中矿车行驶的道路边缘信息的矢量地图。
进一步,所述步骤1中采用360°激光雷达将采集无人驾驶的矿车所途经地的周围环境的激光雷达点云帧;采用RTK采集无人驾驶卡车行驶轨迹的RTK数据。
进一步,所述步骤3中的道路边缘提取方法为:
步骤31:将无人驾驶的矿车行驶信息投影到第一点云地图所在的坐标系下,得到无人驾驶矿车行驶轨迹点集合;
步骤32:从无人驾驶矿车行驶轨迹点集合中提取关键点,得到关键点集合,关键点集合中每两个相邻的关键点之间的欧式距离大于第一阈值;
步骤33:按着时间顺序将关键点集合中每两个相邻的关键点依次形成线段,组成线段集合,依次根据每一条线段从第一立方体集合中筛选出包含了道路边缘点的立方体,根据筛选出的立方体组成第二立方体集合;
步骤34:对第二立方体集合中的每个立方体进行均分,依次在每个立方体中对比均分后的子立方体中所有的点的z轴坐标值的方差;选择出第二立方体集合中每个立方体中含道路边缘点的子立方体;所有含道路边缘点的子立方体形成包围盒集合。
更进一步,所述步骤33中筛选出包含了道路边缘点的立方体的方法为:
步骤331:按着时间顺序将关键点集合中每两个相邻的关键点组成向量,得到向量集合;
步骤332:将向量集合中每一个向量依次投影到第一点云地图的X-Y平面上,得到线段集合;
步骤333:以一个线段穿过的其中一个立方体为中心,在与这条线段垂直且穿过对应立方体的方向上,先以对应立方体为基准立方体,向左右两侧延伸,依次比较相邻的立方体的z轴坐标值的最大值;如果基准立方体的z轴坐标值的最大值+ Boundary_height<基准立方体延伸侧的相邻的立方体的z轴坐标值的最大值,执行步骤334;如果不满足上述公式,执行步骤335;Boundary_height为道路边缘高出道路平面的高度的预设值;立方体的z轴坐标值的最大值为立方体中z轴坐标值坐标值最大的点的z轴坐标值;
步骤334:将基准立方体延伸侧的相邻的立方体加入第二立方体集合,执行步骤336;
步骤335:将基准立方体延伸侧的相邻的立方体设定为新的基准立方体,然后执行步骤333的比较步骤;
步骤336:被同一条线段穿过的所有立方体依次执行步骤333到335;将所有包含了道路边缘点的立方体加入第二立方体集合;
步骤337:根据线段集合中的每一条线段依次执行步骤333-步骤336,得到所有包含了道路边缘点的立方体的第二立方体集合。
进一步,所述步骤34中形成包围盒集合的方法为:
步骤341:将立方体沿着垂直于其对应的线段的方向平均分成N个子立方体,得到立方体等分后的子立方体集合;其中,其对应的线段为穿过立方体的线段;
步骤342:分别计算立方体的子立方体集合中每个子立方体中所有的点的z轴坐标值的方差;得到立方体的子立方体集合的方差集合;
步骤343:从离对应线段最近子立方体开始,比较和它相邻的子立方体的方差;其中具体方差比较方法为:
步骤3431:选择基准子立方体及其相邻子立方体,其中基准子立方体比其相邻子立方体距离对应线段更近;根据公式计算相邻两个子立方体的方差值的倍数Factor;
Factor= Bounding_box_lane_rough_divided[m]_deviation / Bounding_box_lane_rough_divided[l]_deviation;
其中,Bounding_box_lane_rough_divided[m]_deviation表示第m个子立方体的方差,Bounding_box_lane_rough_divided[l]_deviation表示第l个子立方体的方差,第l个子立方体与第m个子立方体相邻,其中第l个子立方体比第m个子立方体距离对应线段更近;
步骤3432:根据比较式Factor> Factor_threshold进行比较,如果满足比较式,则Bounding_box_lane_rough_divided[m]包含道路边缘点,将Bounding_box_lane_rough_divided[m]加入包围盒集合;如果不满足比较式,则以第m个子立方体为基准,选择其相邻的子立方体,重复步骤3431-步骤3432;Factor_threshold为第二阈值;
步骤344:依次对第二立方体集合中的每个立方体重复步骤341—步骤343,得到含道路边缘点的包围盒集合。
进一步,所述步骤4中得到包含了矿场中矿车行驶的道路边缘信息的高精度矢量地图的方法为:
步骤41:结合线段集合中的每一条线段和包围盒集合得到道路左右两侧边界线集合;
步骤42:计算道路一侧边界线集合中相邻线段的交点,得到第一交点集合;
步骤43:将第一交点集合中点按照无人驾驶的矿车行驶的轨迹排序得到第二交点集合;
步骤44:按照无人驾驶的矿车行驶的时间顺序将第二交点集合中的所有点加入矢量地图文件;
步骤45:对另一侧边界线集合执行步骤42-步骤44;得到完整的矢量地图文件。
进一步,所述步骤41中得到道路左右两侧边界线集合的方法为:
步骤411:根据线段集合中的每一条线段将包围盒集合分成与线段对应的左侧包围盒子集合和右侧包围盒子集合;
步骤412:取一条线段一侧的包围盒子集合中每一个子立方体的8个角点中距离对应线段距离最近的点的坐标加入这条线段对应侧点集合;
步骤413:计算得到一条直线,使得步骤412中取的线段对应侧点集合中的所有点到这条直线的距离的和最小;将得到的直线存储到对应侧的边界线集合中;
步骤414:遍历每条线段执行步骤412-步骤413;得到一侧边界线集合;
步骤415:遍历每条线段及其对应的另一侧包围盒子集合执行步骤412-步骤414;得到另一侧边界线集合。
本发明还提供了一种用于矿场的矢量地图生成系统,包括车载数据采集单元和矢量地图生成单元;其中,
车载数据采集单元用于采集无人驾驶的矿车所途经地的周围环境数据信息和无人驾驶的矿车行驶信息;
矢量地图生成单元根据车载数据采集单元采集到的数据结合SLAM算法得到第一点云地图;采用多个同样大小的立方体填充第一点云地图,得到第一立方体集合;再结合无人驾驶的矿车行驶信息通过道路边缘提取得到包含了道路边缘点的包围盒集合;根据得到的包含道路边缘点的包围盒集合结合矢量地图生成方法得到包含了矿场中矿车行驶的道路边缘信息的矢量地图。
本发明还提供了一种存储软件的计算机可读介质,所述软件包括能通过一个或多个计算机执行的指令,所述指令通过这样的执行使得所述一个或多个计算机执行操作,所述操作包括上述用于矿场的矢量地图生成方法的流程。
本发明还提供了一种计算机系统,包括:
一个或多个处理器;
存储器,存储可被操作的指令,所述指令在通过所述一个或多个处理器执行时使得所述一个或多个处理器执行操作,所述操作包括上述用于矿场的矢量地图生成方法的流程。
有益效果:与现有技术相比,本发明提供的方法可以采用无人驾驶矿车自带的传感器,在无需人工干预的条件下根据无人驾驶矿卡在驾驶过程中采集的数据自动生成高精度矢量地图,大大提升了高精度矢量地图的绘制效率。不需要使用航测设备大大节省了地图的测绘成本。同时,本发明在对传感器采集到的数据进行了分块处理,大大提高了数据处理的速度。
附图说明
图1为本发明提供的用于矿场的矢量地图生成系统的结构示意图;
图2为本发明提供的用于矿场的矢量地图生成方法的流程示意图;
图3为本发明中得到的第一点云地图Map_lidar局部斜视图;
图4为本发明中得到的第一点云地图Map_lidar局部俯视图;
图5为本发明中搜寻包含了道路边缘的立方体的示意图;
图6为本发明中得到包围盒的示意图;
图7为本发明中得到的道路左右两侧边界线集合示意图;
图8为本发明中得到的第一交点集合示意图。
具体实施方式
下面将结合本发明实例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本实施例提供了一种用于矿场的矢量地图生成系统,主要包括车载数据采集单元、矢量地图生成单元和交互单元。
其中,车载数据采集单元主要用于采集无人驾驶的矿车所途经地的周围环境数据信息;车载数据采集单元包括360°激光雷达、摄像头和RTK;360°激光雷达和RTK均设置在矿车的顶部,摄像头设置在矿车的顶部,且面向矿车行径方向;
矢量地图生成单元根据车载数据采集单元采集到的无人驾驶的矿车所途经地的周围环境数据信息生成矿场的高精度矢量地图;矢量地图生成单元一般部署在在无人矿场调度中心。
交互单元一般部署在无人矿场调度中心,其主要用于给车载数据采集单元发送采集或者停止的指令,还可以将矢量地图生成单元生成的高精度矢量地图和车载数据采集单元采集的数据信息实时传输到终端。
车载数据采集单元、矢量地图生成单元和交互单元之间的数据、信号传输通过5G数据传输模块实现。用户只需要在无人矿场调度中心远程监控无人驾驶的矿车在矿区沿着预设道路行驶,即可在无人矿场调度中心的终端实时获取矿区的高精度矢量地图。
如图2所示,本实施例提供的一种用于矿场的矢量地图生成方法:包括以下步骤:
步骤1:车载数据采集单元实时采集无人驾驶的矿车所途经地的周围环境数据信息;其中,360°激光雷达将采集到的激光雷达点云帧和RTK采集到的无人驾驶卡车行驶轨迹的RTK数据传输给矢量地图生成单元。RTK数据包括矿车在地球坐标系下的经纬度和海拔高度。
步骤2:360°激光雷达将采集到的激光雷达点云帧结合SLAM算法得到第一点云地图Map_lidar,如图3和图4所示。
步骤3:根据第一点云地图Map_lidar和RTK数据结合点云地图道路边缘提取方法得到包围盒集合Bounding_box_lane;包围盒集合Bounding_box_lane中的所有子立方体均包含了道路边缘点。
其中,点云地图道路边缘提取方法包括以下步骤:
步骤31:采用多个同样大小的立方体填充第一点云地图Map_lidar,得到第一立方体集合Bounding_box;其中,本实施例中采用的立方体的长为1米,宽为1米,高为3米。
步骤32:遍历第一立方体集合Bounding_box中的所有立方体中所有的点;分别比较每个立方体中每个点的z轴坐标值,取每个立方体中最大的z轴坐标值为对应立方体存储的z轴坐标值的最大值Bounding_box_z_value[i];Bounding_box_z_value[i]表示第i个立方体的z轴坐标值的最大值。其中,本实施例中的z轴为重力方向的反方向,每个点的z轴坐标值即为每个点云的高度值。
步骤33:将记录着无人驾驶矿车行驶轨迹的RTK数据集合RTK_queue投影到第一点云地图Map_lidar所在的坐标系下,得到无人驾驶矿车行驶轨迹点集合RTK_queue_map;其中,RTK数据包括矿车在地球坐标系下的经纬度和海拔高度;RTK数据是经纬度坐标系,Map_lidar是笛卡尔坐标系,通过UTM坐标转换就可以将RTK数据从经纬度坐标系转换到笛卡尔坐标系。
步骤34:在无人驾驶卡车行驶轨迹点集合RTK_queue_map中提取关键点,得到关键点集合RTK_keypoint。其中,提取关键点的方法为:
步骤341:将RTK_queue_map中的车辆所在的第一个位置RTK_queue_map[1]赋值给RTK_keypoint[1];其中,RTK_queue_map[1]表示RTK_queue_map中的无人驾驶卡车的第一个位置的坐标值,RTK_keypoint[1]表示关键点集合RTK_keypoint中的第一个关键点;
步骤342:按照时间发展的顺序依次计算关键点RTK_keypoint[j]与关键点RTK_keypoint[j]后相邻的车辆所在的位置RTK_queue_map[m]之间的欧氏距离Disatance_euclidean;其中,RTK_keypoint[j]表示关键点集合中第j个关键点,j为关键点集合中关键点的编号;j的初始值为1,j<M;RTK_queue_map[m]表示RTK_queue_map中的无人驾驶卡车的第m个位置的坐标值,m=2、...、M,M表示RTK_queue_map中的无人驾驶卡车所在位置的总数。若Disatance_euclidean大于第一阈值Distance_keypoint,则将RTK_queue_map[m]赋值给关键点RTK_keypoint[j+1],并进行步骤343;若Disatance_euclidean小于第一阈值Distance_keypoint,则按照时间发展的顺序依次选择车辆所在的位置RTK_queue_map[m]后的车辆所在的位置RTK_queue_map[m+n]与关键点RTK_keypoint[j]计算两点之间的欧氏距离Disatance_euclidean,并与第一阈值Distance_keypoint进行比较,直到车辆所在的位置RTK_queue_map[m+n] 与关键点RTK_keypoint[j]之间的欧氏距离Disatance_euclidean大于第一阈值Distance_keypoint,则将RTK_queue_map[m+n]赋值给关键点RTK_keypoint[j+1],并进行步骤343, 其中n=1、2、...、M-m;本实施例中第一阈值Distance_keypoint为5米;
步骤343:以关键点RTK_keypoint[j+1]重复步骤342,直到RTK_queue_map中的车辆所有的位置都被遍历,得到关键点集合RTK_keypoint;
步骤35:按着时间顺序将关键点集合RTK_keypoint中每两个相邻的关键点依次连成线段,依次根据每一条线段从第一立方体集合中Bounding_box筛选出包含了道路边缘点的立方体,根据筛选出的立方体组成第二立方体集合Bounding_box_lane_rough;第二立方体集合Bounding_box_lane_rough中的所有立方体中均包含了道路边缘点;主要方法包括以下步骤:
步骤351:按照时间发展的顺序遍历关键点集合RTK_keypoint中的所有点,将两两相邻的关键点组成向量,得到向量集合Vector。分别计算以RTK_keypoint[j]为起点,以RTK_keypoint[j+1]为终点的向量Vector[j,j+1],向量Vector[j,j+1]的方向即无人驾驶卡车从位置RTK_keypoint[j]行驶到RTK_keypoint[j+1]时的行驶方向,j=1、2、...、N-1,N表示关键点集合RTK_keypoint中关键点的总数。
步骤352:将向量Vector[j,j+1]投影到X-Y平面上,得到线段Line[j,j+1],线段Line[j,j+1]的长度是无人驾驶卡车从关键点RTK_keypoint[j]行驶到关键点RTK_keypoint[j+1]的行驶距离,线段Line[j,j+1]与高精度点云地图X轴正方向的夹角是无人驾驶卡车关键点RTK_keypoint[j]行驶到RTK_keypoint[j+1]时的行驶方向;依次将向量集合Vector中所有的向量投影到X-Y平面上,从而得到线段集合Line;
步骤353:以线段Line[j,j+1]穿过的Bounding_box[i]为中心,在与线段Line[j,j+1]垂直且穿过Bounding_box[i]的方向上,搜寻包含了道路边界的立方体Bounding_box[a];由于线段Line[j,j+1]的方向是无人驾驶矿车的行驶方向,而无人驾驶矿车是沿着道路行驶的,因此沿着垂直于线段Line[j,j+1]的方向寻找就能找到道路边缘。本实例中提供的搜寻包含了道路边缘的立方体的主要方法为:
步骤3531:以线段Line[j,j+1]穿过的其中一个立方体Bounding_box[i]为中心,在与线段Line[j,j+1]垂直且穿过立方体Bounding_box[i]的方向上,先以立方体Bounding_box[i]为基准立方体,向左右两侧延伸,依次比较相邻的立方体的z轴坐标值的最大值;比较方法为:如果基准立方体的z轴坐标值的最大值+ Boundary_height<基准立方体延伸侧的相邻的立方体的z轴坐标值的最大值,说明基准立方体延伸侧的相邻的立方体包含了道路边缘点,执行步骤3532;如果不满足上述公式,即基准立方体的z轴坐标值的最大值+Boundary_height≥基准立方体延伸侧的相邻的立方体的z轴坐标值的最大值,说明基准立方体延伸侧的相邻的立方体不包含道路边缘点,执行步骤3533;Boundary_height为道路边缘高出道路平面的高度的预设值;一般矿场中道路两旁设有挡土墙,Boundary_height可设为挡土墙的高度。
如图5所示,以被线段穿过的立方体的一侧为例,图中第一立方体1即为线段集合Line中某一个线段Line[j,j+1]穿过的立方体,第二立方体2为在与线段Line[j,j+1]垂直且穿过立方体Bounding_box[i]的方向上与第一立方体1相邻的立方体,通过公式Bounding_box_z_value[1]+ Boundary_height<Bounding_box_z_value[2]进行判断,其中,Bounding_box_z_value[1]表示图7中第一立方体1的z轴坐标值的最大值,Bounding_box_z_value[2]表示图7中第二立方体2的z轴坐标值的最大值;本实施例中的通过计算,Bounding_box_z_value[1]+ Boundary_height≥Bounding_box_z_value[2];则执行步骤3533;
步骤3532:将基准立方体延伸侧的相邻的立方体加入集合Bounding_box_lane_rough中,执行步骤3534;
步骤3533:将基准立方体延伸侧的相邻的立方体设定为新的基准立方体,然后执行步骤3531的比较步骤;
如图5所示,本实施例中,将第二立方体2设置为新的基准立方体,根据公式Bounding_box_z_value[2]+ Boundary_height<Bounding_box_z_value[3]进行判断,发现Bounding_box_z_value[2]与Bounding_box_z_value[3]满足判断条件,则将Bounding_box_z_value[3] 加入集合Bounding_box_lane_rough中;Bounding_box_z_value[3] 表示图5中第二立方体3的z轴坐标值的最大值。
步骤3534:所有被线段Line[j,j+1]穿过的立方体依次执行步骤3531到3533;将所有包含了道路边缘点的立方体加入第二立方体集合Bounding_box_lane_rough;
步骤354:根据步骤352中得到的线段集合Line中的每一条线段依次执行步骤353,得到所有包含了道路边缘点的立方体的第二立方体集合Bounding_box_lane_rough。
步骤36:根据步骤35得到的第二立方体集合Bounding_box_lane_rough得到包含道路边缘点的包围盒集合Bounding_box_lane;其具体方法为:
步骤361:将立方体Bounding_box_lane_rough[e] 沿着垂直于其对应的线段Line[j,j+1]的方向平均分成N个子立方体,得到等分后的子立方体集合Bounding_box_lane_rough[e]_divided;Bounding_box_lane_rough[e]为包含了道路边缘点的立方体的集合Bounding_box_lane_rough中的第e个立方体,e=1、2、....、N,e为集合Bounding_box_lane_rough中立方体的编号,E为集合Bounding_box_lane_rough中立方体的总数。Bounding_box_lane_rough[e]_divided表示第e个立方体等分后的子立方体集合。
如图6所示,本实施例中N为2,第一子立方体为离线段Line[j,j+1]最近子立方体,第二子立方体3-2为第一子立方体3-1的相邻子立方体。
步骤362:分别计算子立方体集合Bounding_box_lane_rough[e]_divided中每个子立方体中所有的点的z轴坐标值的方差;得到第e个立方体等分后的子立方体集合的方差集合Bounding_box_lane_rough[e]_divided_deviation;
步骤363:从离线段Line[j,j+1]最近子立方体开始,比较和它相邻的子立方体的方差。因为线段Line[j,j+1]在路面范围内,因此距离线段Line[j,j+1]越近越有可能是地面点,离线段Line[j,j+1]越远越有可能是道路边缘点。其中具体方差比较方法为:
步骤3631:选择基准子立方体及其相邻子立方体,其中基准子立方体比其相邻子立方体距离线段Line[j,j+1]更近;根据公式计算相邻两个子立方体的方差值的倍数Factor;
Factor= Bounding_box_lane_rough_divided[m]_deviation / Bounding_box_lane_rough_divided[l]_deviation;
其中,Bounding_box_lane_rough_divided[m]_deviation表示第m个子立方体的方差,Bounding_box_lane_rough_divided[l]_deviation表示第l个子立方体的方差,第l个子立方体与第m个子立方体相邻,其中第l个子立方体比第m个子立方体距离线段Line[j,j+1]更近。
步骤3632:根据比较式Factor> Factor_threshold进行比较,如果满足比较式,则Bounding_box_lane_rough_divided[m]包含道路边缘点,将Bounding_box_lane_rough_divided[m]加入包围盒集合Bounding_box_lane;如果不满足比较式,则以第m个子立方体为基准,选择其相邻的子立方体,重复步骤3631-步骤3632;Factor_threshold为第二阈值,第二阈值可以根据路沿的斜率(陡峭程度)确定,不同的矿场道路的施工标准不同,这个值需要根据具体矿场的施工规范进行调整,一般情况设置为10。
步骤364:依次对第二立方体集合Bounding_box_lane_rough中的每个立方体重复步骤361—步骤363,得到含道路边缘点的包围盒集合Bounding_box_lane。
步骤4:根据步骤3得到的包含道路边缘点的包围盒集合Bounding_box_lane结合矢量地图生成方法得到包含了矿场中矿车所行驶的道路信息的高精度矢量地图。其中,矢量地图生成方法具体包括:
步骤41:如图7所示,根据包围盒集合Bounding_box_lane4分别得到道路左右两侧边界线集合Line_lane_left5和Line_lane_right6;其中具体得到得到道路左右两侧边界线集合Line_lane_left和Line_lane_right的方法为:
步骤411:将包围盒集合Bounding_box_lane中位于线段Line[j,j+1]左侧的子立方体加入左侧包围盒子集合Bounding_box_lane_left,将包围盒集合Bounding_box_lane中位于线段Line[j,j+1]右侧的子立方体加入右侧包围盒子集合Bounding_box_lane_right;
步骤412:取左侧包围盒子集合Bounding_box_lane_left中每一个子立方体的8个角点中距离对应线段Line[j,j+1]距离最近的点的坐标加入左侧点集合Lane_left。
步骤413:计算得到一条直线Line_lane_left[j,j+1],使得Lane_left中的所有点到直线Line_lane_left[j,j+1]的距离的和最小。本实施例中主要采用RANSAC(Random sampleconsensus)方法得到所需要的直线。
步骤42:如图8所示,计算左侧边界线集合Line_lane_left5中相邻线段的交点7得到第一交点集合Point_lane_left;
步骤43:将第一交点集合Point_lane_left中的点按照无人驾驶的开车行驶的轨迹排序得到第二交点集合Point_lane_left_resort;即车辆最先行驶过的道路的边缘点在集合Point_lane_left_resort的头部,车辆后行驶过的道路的边缘点在集合Point_lane_left_resort的尾部;
步骤44:按照从前到后的顺序将第二交点集合Point_lane_left_resort中的所有点加入矢量地图文件,矢量地图文件中点的ID递增,点的属性设置为“Left_lane”,点的坐标为第二交点集合Point_lane_left_resort中对应点的坐标;
步骤45:对右侧边界线Line_lane_right执行步骤42-步骤44。
步骤46:将得到的属性为“Left_lane”的点和属性为“Right_lane”的点添加到一个矢量地图文件中,得到完整的矢量地图文件。最后得到的矢量地图文件即为所需的矢量地图,用户通过终端接收到的矢量地图,就可以直观的在终端查看矿场的道路信息。
本发明还提供了一种存储软件的计算机可读介质,所述软件包括能通过一个或多个计算机执行的指令,所述指令通过这样的执行使得所述一个或多个计算机执行操作,所述操作包括如前述用于矿场的矢量地图生成方法的流程。
本发明还提供了一种计算机系统,包括:一个或多个处理器;存储器,存储可被操作的指令,所述指令在通过所述一个或多个处理器执行时使得所述一个或多个处理器执行操作,所述操作包括如前述用于矿场的矢量地图生成方法的流程。
应当理解,本发明的前述用于矿场的矢量地图生成方法的示例可以在任何包含具有数据存储和数据处理的计算机系统中,前述的计算机系统可以是至少一个包括处理器和存储器的电子处理系统或者电子设备,例如PC电脑,不论是个人用PC电脑、商用PC电脑,或者图形处理用PC电脑、服务器级PC电脑。这些PC电脑通过具有数据接口和/或网络接口,实现有线和/或无线的数据传输,尤其是车辆的各种数据。
在另一些实施例,该计算机系统还可以是服务器,尤其是云服务器,具有数据存储、处理以及网络通讯功能。
作为示例的计算机系统通常包括由系统总线连接的至少一个处理器、存储器和网络接口。网络接口用于与其他设备/系统进行通信。
处理器用于提供系统的计算和控制。
存储器包括非易失性存储器和缓存。
非易失性存储器通常具有海量存储能力,可以存储操作系统以及计算机程序,这些计算机程序可以包括可被操作的指令,这些指令在通过一个或多个处理器执行时使得一个或多个处理器能够执行本发明前述实施例的用于矿场的矢量地图生成过程。
在需要或者合理的实现方式中,前述计算机系统,不论是PC设备或者服务器,还可以包括比图示中更多或者更少的部件,或者组合,或者采用不同的硬件、软件等不同部件或者不同的部署方式。
Claims (10)
1.一种用于矿场的矢量地图生成方法,其特征在于:包括以下步骤:
步骤1:采集无人驾驶的矿车所途经地的周围环境数据信息和无人驾驶的矿车行驶信息;
步骤2:根据步骤1采集到的数据结合SLAM算法得到第一点云地图;
步骤3:采用多个同样大小的立方体填充第一点云地图,得到第一立方体集合;再结合无人驾驶的矿车行驶信息通过道路边缘提取得到包含了道路边缘点的包围盒集合;
步骤4:根据步骤3得到的包含道路边缘点的包围盒集合结合矢量地图生成方法得到包含了矿场中矿车行驶的道路边缘信息的矢量地图。
2.根据权利要求1所述的用于矿场的矢量地图生成方法,其特征在于:所述步骤1中采用360°激光雷达将采集无人驾驶的矿车所途经地的周围环境的激光雷达点云帧;采用RTK采集无人驾驶卡车行驶轨迹的RTK数据。
3.根据权利要求1所述的用于矿场的矢量地图生成方法,其特征在于:所述步骤3中的道路边缘提取方法为:
步骤31:将无人驾驶的矿车行驶信息投影到第一点云地图所在的坐标系下,得到无人驾驶矿车行驶轨迹点集合;
步骤32:从无人驾驶矿车行驶轨迹点集合中提取关键点,得到关键点集合,关键点集合中每两个相邻的关键点之间的欧式距离大于第一阈值;
步骤33:按着时间顺序将关键点集合中每两个相邻的关键点依次形成线段,组成线段集合,依次根据每一条线段从第一立方体集合中筛选出包含了道路边缘点的立方体,根据筛选出的立方体组成第二立方体集合;
步骤34:对第二立方体集合中的每个立方体进行均分,依次在每个立方体中对比均分后的子立方体中所有的点的z轴坐标值的方差;选择出第二立方体集合中每个立方体中含道路边缘点的子立方体;所有含道路边缘点的子立方体形成包围盒集合。
4.根据权利要求3所述的用于矿场的矢量地图生成方法,其特征在于:所述步骤33中筛选出包含了道路边缘点的立方体的方法为:
步骤331:按着时间顺序将关键点集合中每两个相邻的关键点组成向量,得到向量集合;
步骤332:将向量集合中每一个向量依次投影到第一点云地图的X-Y平面上,得到线段集合;
步骤333:以一个线段穿过的其中一个立方体为中心,在与这条线段垂直且穿过对应立方体的方向上,先以对应立方体为基准立方体,向左右两侧延伸,依次比较相邻的立方体的z轴坐标值的最大值;如果基准立方体的z轴坐标值的最大值+ Boundary_height<基准立方体延伸侧的相邻的立方体的z轴坐标值的最大值,执行步骤334;如果不满足上述公式,执行步骤335;Boundary_height为道路边缘高出道路平面的高度的预设值;立方体的z轴坐标值的最大值为立方体中z轴坐标值最大的点的z轴坐标值;
步骤334:将基准立方体延伸侧的相邻的立方体加入第二立方体集合,执行步骤336;
步骤335:将基准立方体延伸侧的相邻的立方体设定为新的基准立方体,然后执行步骤333的比较步骤;
步骤336:被同一条线段穿过的所有立方体依次执行步骤333到335;将所有包含了道路边缘点的立方体加入第二立方体集合;
步骤337:根据线段集合中的每一条线段依次执行步骤333-步骤336,得到所有包含了道路边缘点的立方体的第二立方体集合。
5.根据权利要求3所述的用于矿场的矢量地图生成方法,其特征在于:所述步骤34中形成包围盒集合的方法为:
步骤341:将立方体沿着垂直于其对应的线段的方向平均分成N个子立方体,得到立方体等分后的子立方体集合;其中,其对应的线段为穿过立方体的线段;
步骤342:分别计算立方体的子立方体集合中每个子立方体中所有的点的z轴坐标值的方差;得到立方体的子立方体集合的方差集合;
步骤343:从离对应线段最近子立方体开始,比较和它相邻的子立方体的方差;其中具体方差比较方法为:
步骤3431:选择基准子立方体及其相邻子立方体,其中基准子立方体比其相邻子立方体距离对应线段更近;根据公式计算相邻两个子立方体的方差值的倍数Factor;
Factor= Bounding_box_lane_rough_divided[m]_deviation / Bounding_box_lane_rough_divided[l]_deviation;
其中,Bounding_box_lane_rough_divided[m]_deviation表示第m个子立方体的方差,Bounding_box_lane_rough_divided[l]_deviation表示第l个子立方体的方差,第l个子立方体与第m个子立方体相邻,其中第l个子立方体比第m个子立方体距离对应线段更近;
步骤3432:根据比较式Factor> Factor_threshold进行比较,如果满足比较式,则Bounding_box_lane_rough_divided[m]包含道路边缘点,将Bounding_box_lane_rough_divided[m]加入包围盒集合;如果不满足比较式,则以第m个子立方体为基准,选择其相邻的子立方体,重复步骤3431-步骤3432;Factor_threshold为第二阈值;
步骤344:依次对第二立方体集合中的每个立方体重复步骤341—步骤343,得到含道路边缘点的包围盒集合。
6.根据权利要求3所述的用于矿场的矢量地图生成方法,其特征在于:所述步骤4中得到包含了矿场中矿车行驶的道路边缘信息的高精度矢量地图的方法为:
步骤41:结合线段集合中的每一条线段和包围盒集合得到道路左右两侧边界线集合;
步骤42:计算道路一侧边界线集合中相邻线段的交点,得到第一交点集合;
步骤43:将第一交点集合中点按照无人驾驶的矿车行驶的轨迹排序得到第二交点集合;
步骤44:按照无人驾驶的矿车行驶的时间顺序将第二交点集合中的所有点加入矢量地图文件;
步骤45:对另一侧边界线集合执行步骤42-步骤44;得到完整的矢量地图文件。
7.根据权利要求6所述的用于矿场的矢量地图生成方法,其特征在于:所述步骤41中得到道路左右两侧边界线集合的方法为:
步骤411:根据线段集合中的每一条线段将包围盒集合分成与线段对应的左侧包围盒子集合和右侧包围盒子集合;
步骤412:取一条线段一侧的包围盒子集合中每一个子立方体的8个角点中距离对应线段距离最近的点的坐标加入这条线段对应侧点集合;
步骤413:计算得到一条直线,使得步骤412中取的线段对应侧点集合中的所有点到这条直线的距离的和最小;将得到的直线存储到对应侧的边界线集合中;
步骤414:遍历每条线段执行步骤412-步骤413;得到一侧边界线集合;
步骤415:遍历每条线段及其对应的另一侧包围盒子集合执行步骤412-步骤414;得到另一侧边界线集合。
8.一种用于矿场的矢量地图生成系统,其特征在于:包括车载数据采集单元和矢量地图生成单元;其中,
车载数据采集单元用于采集无人驾驶的矿车所途经地的周围环境数据信息和无人驾驶的矿车行驶信息;
矢量地图生成单元根据车载数据采集单元采集到的数据结合SLAM算法得到第一点云地图;采用多个同样大小的立方体填充第一点云地图,得到第一立方体集合;再结合无人驾驶的矿车行驶信息通过道路边缘提取得到包含了道路边缘点的包围盒集合;根据得到的包含道路边缘点的包围盒集合结合矢量地图生成方法得到包含了矿场中矿车行驶的道路边缘信息的矢量地图。
9.一种存储软件的计算机可读介质,其特征在于,所述软件包括能通过一个或多个计算机执行的指令,所述指令通过这样的执行使得所述一个或多个计算机执行操作,所述操作包括如权利要求1-7中任意一项所述的用于矿场的矢量地图生成方法的流程。
10.一种计算机系统,其特征在于,包括:
一个或多个处理器;
存储器,存储可被操作的指令,所述指令在通过所述一个或多个处理器执行时使得所述一个或多个处理器执行操作,所述操作包括如权利要求1-7中任意一项所述的用于矿场的矢量地图生成方法的流程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111212243.8A CN113902864B (zh) | 2021-10-18 | 2021-10-18 | 用于矿场的矢量地图生成方法、系统及计算机系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111212243.8A CN113902864B (zh) | 2021-10-18 | 2021-10-18 | 用于矿场的矢量地图生成方法、系统及计算机系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113902864A true CN113902864A (zh) | 2022-01-07 |
CN113902864B CN113902864B (zh) | 2022-11-01 |
Family
ID=79192533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111212243.8A Active CN113902864B (zh) | 2021-10-18 | 2021-10-18 | 用于矿场的矢量地图生成方法、系统及计算机系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113902864B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109341706A (zh) * | 2018-10-17 | 2019-02-15 | 张亮 | 一种面向无人驾驶汽车的多特征融合地图的制作方法 |
CN109410301A (zh) * | 2018-10-16 | 2019-03-01 | 张亮 | 面向无人驾驶汽车的高精度语义地图制作方法 |
US20190323843A1 (en) * | 2018-07-04 | 2019-10-24 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method for generating a high precision map, apparatus and storage medium |
CN110706307A (zh) * | 2019-10-11 | 2020-01-17 | 江苏徐工工程机械研究院有限公司 | 电子地图构建方法、装置以及存储介质 |
CN110850439A (zh) * | 2020-01-15 | 2020-02-28 | 奥特酷智能科技(南京)有限公司 | 一种高精度三维点云地图构建方法 |
CN110992813A (zh) * | 2019-12-25 | 2020-04-10 | 江苏徐工工程机械研究院有限公司 | 一种露天矿山无人驾驶系统的地图创建方法及系统 |
CN111443360A (zh) * | 2020-04-20 | 2020-07-24 | 北京易控智驾科技有限公司 | 矿区无人驾驶系统道路边界自动采集装置和识别方法 |
CN111551958A (zh) * | 2020-04-28 | 2020-08-18 | 北京踏歌智行科技有限公司 | 一种面向矿区无人驾驶的高精地图制作方法 |
CN111829507A (zh) * | 2020-07-20 | 2020-10-27 | 北京易控智驾科技有限公司 | 应用于露天矿山自动驾驶的排土场挡墙地图更新方法 |
CN112560747A (zh) * | 2020-12-23 | 2021-03-26 | 苏州工业园区测绘地理信息有限公司 | 基于车载点云数据的车道边界交互式提取方法 |
CN112801022A (zh) * | 2021-02-09 | 2021-05-14 | 青岛慧拓智能机器有限公司 | 一种无人驾驶矿卡作业区道路边界快速检测更新的方法 |
CN113008247A (zh) * | 2020-03-24 | 2021-06-22 | 青岛慧拓智能机器有限公司 | 用于矿区的高精地图构建方法及装置 |
CN113487479A (zh) * | 2021-06-30 | 2021-10-08 | 北京易控智驾科技有限公司 | 车端实时检测识别高精度地图边界方法和系统 |
-
2021
- 2021-10-18 CN CN202111212243.8A patent/CN113902864B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190323843A1 (en) * | 2018-07-04 | 2019-10-24 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method for generating a high precision map, apparatus and storage medium |
CN109410301A (zh) * | 2018-10-16 | 2019-03-01 | 张亮 | 面向无人驾驶汽车的高精度语义地图制作方法 |
CN109341706A (zh) * | 2018-10-17 | 2019-02-15 | 张亮 | 一种面向无人驾驶汽车的多特征融合地图的制作方法 |
CN110706307A (zh) * | 2019-10-11 | 2020-01-17 | 江苏徐工工程机械研究院有限公司 | 电子地图构建方法、装置以及存储介质 |
CN110992813A (zh) * | 2019-12-25 | 2020-04-10 | 江苏徐工工程机械研究院有限公司 | 一种露天矿山无人驾驶系统的地图创建方法及系统 |
CN110850439A (zh) * | 2020-01-15 | 2020-02-28 | 奥特酷智能科技(南京)有限公司 | 一种高精度三维点云地图构建方法 |
CN113008247A (zh) * | 2020-03-24 | 2021-06-22 | 青岛慧拓智能机器有限公司 | 用于矿区的高精地图构建方法及装置 |
CN111443360A (zh) * | 2020-04-20 | 2020-07-24 | 北京易控智驾科技有限公司 | 矿区无人驾驶系统道路边界自动采集装置和识别方法 |
CN111551958A (zh) * | 2020-04-28 | 2020-08-18 | 北京踏歌智行科技有限公司 | 一种面向矿区无人驾驶的高精地图制作方法 |
CN111829507A (zh) * | 2020-07-20 | 2020-10-27 | 北京易控智驾科技有限公司 | 应用于露天矿山自动驾驶的排土场挡墙地图更新方法 |
CN112560747A (zh) * | 2020-12-23 | 2021-03-26 | 苏州工业园区测绘地理信息有限公司 | 基于车载点云数据的车道边界交互式提取方法 |
CN112801022A (zh) * | 2021-02-09 | 2021-05-14 | 青岛慧拓智能机器有限公司 | 一种无人驾驶矿卡作业区道路边界快速检测更新的方法 |
CN113487479A (zh) * | 2021-06-30 | 2021-10-08 | 北京易控智驾科技有限公司 | 车端实时检测识别高精度地图边界方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113902864B (zh) | 2022-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110850439B (zh) | 一种高精度三维点云地图构建方法 | |
EP3343503B1 (en) | High-precision map data processing method and apparatus, storage medium and device | |
CN110146910B (zh) | 一种基于gps与激光雷达数据融合的定位方法及装置 | |
EP4009131A1 (en) | Method of navigating a vehicle and system thereof | |
CN113421432B (zh) | 交通限行信息检测方法、装置、电子设备和存储介质 | |
CN110118564B (zh) | 一种高精度地图的数据管理系统、管理方法、终端和存储介质 | |
US20200401816A1 (en) | Identifying dynamic objects in a point cloud | |
CN112380312B (zh) | 基于栅格检测的激光地图更新方法、终端及计算机设备 | |
CN104677361B (zh) | 一种综合定位的方法 | |
EP4016115A1 (en) | Vehicle localization based on radar detections | |
CN111652072A (zh) | 轨迹获取方法、轨迹获取装置、存储介质和电子设备 | |
AU2020375559B2 (en) | Systems and methods for generating annotations of structured, static objects in aerial imagery using geometric transfer learning and probabilistic localization | |
CN112558072A (zh) | 车辆定位方法、装置、系统、电子设备及存储介质 | |
CN110095108B (zh) | 一种基于bim无人机测绘装置及测绘方法 | |
CN114322799A (zh) | 一种车辆行驶方法、装置、电子设备和存储介质 | |
CN113902864B (zh) | 用于矿场的矢量地图生成方法、系统及计算机系统 | |
CN112015199A (zh) | 应用于煤矿井下智能巡检无人机的航迹规划方法及装置 | |
CN110174115B (zh) | 一种基于感知数据自动生成高精度定位地图的方法及装置 | |
Deusch et al. | Improving localization in digital maps with grid maps | |
CN116222593A (zh) | 一种露天矿区地图众包采集及构建装置 | |
CN115583254A (zh) | 路径规划方法、装置、设备以及自动驾驶车辆 | |
Song et al. | Enhanced map-aided gps/3d riss combined positioning strategy in urban canyons | |
CN110736474B (zh) | 一种车辆的地图信息获取方法及装置 | |
CN115792958A (zh) | 一种基于3d激光雷达的无人矿车障碍物检测方法 | |
CN113587937A (zh) | 车辆的定位方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 210012 room 401-404, building 5, chuqiaocheng, No. 57, Andemen street, Yuhuatai District, Nanjing, Jiangsu Province Patentee after: AUTOCORE INTELLIGENT TECHNOLOGY (NANJING) Co.,Ltd. Address before: 211800 building 12-289, 29 buyue Road, Qiaolin street, Pukou District, Nanjing City, Jiangsu Province Patentee before: AUTOCORE INTELLIGENT TECHNOLOGY (NANJING) Co.,Ltd. |