一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于虚幻引擎的轨道障碍物检测仿真平台的构建方法与流程

2021-10-12 20:00:00 来源:中国专利 TAG:仿真 障碍物 平台 轨道 虚幻


1.本发明涉及自动驾驶仿真平台技术领域,具体是一种基于虚幻引擎的轨道障碍物检测仿真平台的构建方法。


背景技术:

2.随着人工智能和计算机技术的发展,自动驾驶技术取得很大的进步,在自动驾驶技术中,障碍物检测是十分重要的一环,检测识别车辆周围的物体为自动驾驶提供安全保障。轨道交通作为人们日常出行和运输的重要交通方式,轨道列车的自动驾驶也是未来的趋势。
3.尽管计算机技术,传感器技术和人工智能方法的发展,为列车前方障碍物检测提供了许多解决方案,但是由于实验环境的复杂性和危险性,障碍物检测方案的测试和实验面临着重重阻挠。普通的货运铁路列车速度为100km/h,高铁甚至达到250~300km/h,实验室环境难以达到这样的要求,若实际列车铁轨的实验,轨道上的真实的障碍物必然会引起重大的事故,高速运行时传感器数据的采集的可靠性也有待探究。另一方面恶劣的天气,不均匀的光照,以及隧道等复杂和多变的情况,不能保证检测方案是否具有普适性。


技术实现要素:

4.本发明要克服现有技术的不足之处,提供了一种基于虚幻引擎的轨道障碍物检测仿真平台的构建方法该方法,为轨道障碍物检测方法提供相对真实可靠的实验环境。
5.本发明所解决的问题是:由于列车轨道障碍物检测方法难以在真实运行的轨道上进行实验,也难以搭建起能够模拟列车运行速度的实验环境的,更不能考虑到真实环境的变化如光照天气对检测方法的影响,难以保证检测方法是否具有普适性。因此需要一个仿真平台模拟真实的列车运行状态,同时可调节列车运行环境,在不同情况下测试障碍物检测方案是否有效。
6.为实现上述目的,本发明提供如下技术方案:一种基于虚幻引擎的轨道障碍物检测仿真平台的构建方法该方法,包括以下步骤:
7.步骤1:环境搭建。参考真实场景中各种实例的分布,将3d模型布置于基础场景中。通过虚幻引擎强大的地形编辑工具搭建真实的地形,并覆盖上草木。改变方向性光源的方向、强度,微调天空光源的强度,模拟不同时间的光线条件;使用虚幻引擎中设置更加灵活的粒子发射器搭建粒子系统实现雨天、雾天和雪天效果。使用3dmax工具剪辑列车和轨道模型,并导入虚幻引擎,借助蓝图控制列车在轨道上运行。
8.步骤2:添加传感器。设计添加相机,激光雷达传感器。设计数据采集接口获取传感器信息。
9.步骤3:建立数据通信。将激光点云和图像数据进行格式转换,通过socket通讯,将处理好的传感器数据从windows系统传输到linux系统的ros平台上。
10.步骤4:仿真系统界面设计。设计控制界面,满足用户仿真实验的需求如选择不同
的光照环境;主动添加不同的障碍物在环境中或者轨道上;选择传感器种类;以及控制列车的启动和停止。
11.步骤5:障碍物检测。在ros中处理传感器数据,对原始数据进行预处理,使用相机传感器和激光雷传感器融合的方案,来检测轨道上的障碍物。
12.本发明的优点和积极效果是:
13.1、本发明为轨道障碍物检测方法研究提供了实验环境,解决现有研究方法实验条件有限不具备普适性的问题。
14.2、本发明考虑真实环境下多重因素对轨道障碍物检测方案的影响,可以根据实验人员要求改变和调整实验环境参数,是实验结果更有意义。
附图说明
15.图1是本发明方法的流程图。
16.图2是本发明搭建的仿真环境。
17.图3是本发明方法所使用的激光雷达传感器。
18.图4是本发明方法所使用的相机传感器。
19.图5是本发明方法的仿真系统界面。
20.图6是本发明方法的为轨道障碍物检测算法流程图。
具体实施方式
21.以下结合附图对本发明做进一步详述。
22.基于虚幻引擎的轨道障碍物检测仿真平台的构建方法流程图,如图1。
23.步骤一:在虚幻4中搭建环境如图2,包括地形编辑,草木植被的覆盖,轨道列车模型的设计,光照条件的设计以及雨雾天气的设计。
24.1、使用world machine插件编辑40*40公里范围的地形高度图,使用geoglyph库中的reflow宏脚本,然后连接到splat converter上保证splat map的正确权重。导出高度地图,保存为png格式,在虚幻引擎中打开landscape编辑器创建地貌,点击导入world machine生成的高度图。生成地貌后在landscape中再对地貌使用雕刻组件进行平滑、腐蚀等调整。最后给地貌添加合适的材质。
25.2、在地貌上覆盖草木植被。使用speedtree辅助工具编辑草丛和树木的模型,将导出srt文件导入到虚幻引擎中,导入虚幻引擎中之后,材质已经和模型匹配完成。使用笔刷工具,对其大小范围、密度、z轴偏移量、法线等进行设置,之后就可以在地貌上刷上植被。
26.3、设置光照和天气。虚拟场景中使用方向性光源与天空光源相结合的方式实现对真实光照条件的仿真,不同的天候会影响阳光散射条件,通过改变天空光源模拟不同天候下的光照条件。不同光照条件的变化主要体现在方向和强度的改变上,可通过改变方向性光源的方向、强度,微调天空光源的强度,模拟不同时间的光线条件;使用虚幻引擎中设置更加灵活的粒子发射器搭建粒子系统实现雨天、雾天和雪天效果,不同天候对应的云层和光照情况通过虚幻引擎蓝图系统实现自动调整。
27.4、添加轨道和列车模型并控制。列车使用3dmax编辑轨道模型以及列车模型,并导入到虚幻引擎中。为车轮创建vehiclewheel蓝图并设置轮胎的宽、半径、旋转角度等。创建
tiretype数据资源用于设定摩擦力。新建wheeledvehicle蓝图,并修改相关设定。对vehiclesetup这一栏参数进行设定。为列车创建动画蓝图将父类设置为vehicleaniminstance,并连接。之后在wheeledvehicle蓝图中,选择mesh,使用做好的动画蓝图。使用wheeledvehicle蓝图中的vehiclemovementcomponent组件控制列车。
28.步骤二:添加仿真环境中的相机和激光雷达传感器,采集环境信息。
29.激光雷达传感器和相机传感器使用airsim插件中提供的传感器。airsim是微软开发的仿真模拟器,可以作为插件直接用于虚幻引擎中。下载airsim源码并编译。将编译生成的plugin插件文件夹复制到虚幻工程下,打开创建的轨道列车环境的虚幻工程,将gamemode设置为airsimgamemode便可以运行插件中的传感器获得信息,如图3。
30.虚幻引擎提供有相机组件,直接添加即可获取相机视角的图像如图4。
31.步骤三:数据通讯搭建。将激光点云和图像数据进行格式转换,借助虚幻引擎官方提供的ros integration插件,通过socket建立windows系统到linux系统通讯,将windows系统上虚幻引擎处理好的传感器数据传输到ubuntu18.04系统的ros平台上,在ros中完成障碍物检测。
32.步骤四:仿真系统界面设计。使用虚幻引擎的umg ui designer设计界面,并对控件创建蓝图,编写控制代码完成控件功能,界面如图5。
33.设置添加启动按键,控制轨道列车运行启动和停止。
34.设置添加天气模式按键,选择不同的光照和天气模式。
35.设置添加激光雷达传感器按键,控制激光雷达点云数据的显示。
36.设置添加相机传感器按键,控制相机图像数据显示。
37.设置障碍物添加按键,在轨道上生成不同形状的障碍物。
38.步骤五:利用仿真数据进行障碍物检测。在ros中处理传感器数据,对原始数据进行预处理,使用相机传感器和激光雷传感器融合的方案,来检测轨道上的障碍物,算法流程如图6。
39.1、使用pcl点云处理库读入激光雷达点云数据,对数据进行预处理。预处理方法为下采样滤波,可以在不损失环境信息的前提下,使用较少数据量。接着进行平面分割处理,采用ransac(随机抽样一致性)算法。最后使用点云聚类算法,平面分割将点云分成了两大类别,聚类将点云分成一个个目标集合。
40.2、使用open cv图像处理库读入相机图像数据,对数据进行预处理。预处理的方法选择灰度变换和高斯变换。接着进行边缘检测使用canny算子检测。最后使用霍夫直线检测,然后将划分出来的点,进行线性拟合,绘制出轨道。
41.3、对经过算法处理的点运河图像数据进行匹配融合。首先时间匹配,将传感器的每个采样时刻记录在统一的时间序列上。当激光雷达完成一次采样时,寻找与该时刻最邻近时刻的图像,做为匹配的一帧。空间匹配。根据相机的原理可以求得相机坐标系、图像坐标系和像素坐标系的转换矩阵。根据仿真场景中激光雷达和相机安装的位置可以得到激光雷达坐标系和相机坐标系的转换矩阵。将激光雷达坐标系里面激光点云的点的坐标投影到相机图像中,判断轨道线内是否有聚类出的点云块,来判别轨道上的障碍物。
42.需要强调的是,本发明所述的实施案例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方案中所述的实施例,凡是由本领域技术人员根据本发明的技术方
案得出类似的其它实施方式,同样属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜