CN116774602A - 一种基于群体智能的自动驾驶事故预防仿真场景生成技术 - Google Patents
一种基于群体智能的自动驾驶事故预防仿真场景生成技术 Download PDFInfo
- Publication number
- CN116774602A CN116774602A CN202310181761.0A CN202310181761A CN116774602A CN 116774602 A CN116774602 A CN 116774602A CN 202310181761 A CN202310181761 A CN 202310181761A CN 116774602 A CN116774602 A CN 116774602A
- Authority
- CN
- China
- Prior art keywords
- accident
- scene
- area
- participants
- automatic driving
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 51
- 230000002265 prevention Effects 0.000 title claims abstract description 31
- 238000005070 sampling Methods 0.000 claims abstract description 32
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000011156 evaluation Methods 0.000 claims abstract description 17
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 13
- 230000006870 function Effects 0.000 claims description 7
- 230000011218 segmentation Effects 0.000 claims description 7
- 238000013459 approach Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 238000009877 rendering Methods 0.000 claims description 4
- 230000003068 static effect Effects 0.000 claims description 4
- 238000003672 processing method Methods 0.000 claims description 3
- 238000000354 decomposition reaction Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 claims description 2
- 238000012216 screening Methods 0.000 claims description 2
- 230000003044 adaptive effect Effects 0.000 claims 2
- 238000012952 Resampling Methods 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 4
- 238000005457 optimization Methods 0.000 abstract description 3
- 238000012360 testing method Methods 0.000 description 10
- 238000011160 research Methods 0.000 description 2
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 238000005260 corrosion Methods 0.000 description 1
- 230000007797 corrosion Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明提出了一种基于群体智能的自动驾驶事故预防仿真场景生成技术,能够实现在道路事故区域中随机采样,并设计分割车道建立KD树的算法,可以有效减小搜索最近邻车道的时间,快速确定生成事故车辆的朝向,相比没有优化的方法可以极大减少搜索时间。然后分析自动驾驶事故预防仿真场景中参与者的约束关系,设计评价函数,基于烟花算法在道路事故区域中沿着车道轨迹和法向搜索,逐步接近合适的车辆生成区域。通过Carla模拟器提供的接口创建传感器对象,根据传感器对象接收的仿真数据生成事故图像。相比于现有方案。本发明可以有效提升自动驾驶事故预防仿真场景生成的速度。
Description
技术领域:
本发明公开了一种基于群体智能的自动驾驶事故预防仿真场景生成技术,涉及自动驾驶技术中的仿真测试技术研究,属于自动驾驶仿真测试领域。
背景技术:
自动驾驶车辆在正式投入使用前需要进行系统性的测试验证,出于真实环境下测试的时间和经济成本以及潜在危险的考虑,大量的测试工作通过利用仿真环境执行测试用例开展。基于场景的虚拟测试技术,试验场景配置灵活、测试效率高、过程安全而且成本低,可以加速自动驾驶测试。因此,基于场景的虚拟测试已成为自动驾驶汽车测试评价中不可或缺的环节。场景数据的来源主要有真实数据、模拟数据和专家经验三种,基于真实数据的场景生成一般来自真实驾驶数据或者交通数据集,如中国交通事故深度调查项目(ChinaIn-Depth Accident Study,CIDAS)和美国国家公路交通安全管理局(NHTSA)的撞车前场景数据。但是这些数据不可能覆盖到所有的驾驶场景,因此很多构造仿真场景数据的方法被提出。
当前,构造仿真场景数据的方法主要有以下几种:
Paracosm:将场景中的物体参数化并提供一套编程接口用于场景生成。基于随机搜索的方式进行场景生成并对自动驾驶中视觉感知模块进行测试。但是考虑到可搜索的参数空间规模十分巨大,因此,很难通过随机搜索高效地找到感知模块的安全问题;
GeoScenario:与工具无关的场景描述领域特定语言,静态物体用节点表示,节点的位置是固定的经纬度。但是无法使用采样的方法生成所有可能的合适场景;
Scenic:用于描述场景的概率编程语言,根据车辆朝向和区域范围剪切放置物体的区域,来快速确定满足要求的物体位置,但在路口或者弯道处参与者左右距离较大的场景很难快速找到合适的生成位置。
基于场景描述语言生成自动驾驶场景已经取得了一定的成果,但是仍然存在很多值得研究和改进的地方。存在描述场景参与者位置时,需要使用者用坐标点指定参与者位置,很不灵活,搜索参与者位置时速度不够快,某些场景难以搜索到合适位置等问题。
发明内容:
本发明提出了一种基于群体智能的自动驾驶事故预防仿真场景生成技术。针对现有自动驾驶场景描述语言描述物体位置时,需要使用者用坐标点指定事故场景参与者位置,很不灵活,搜索事故场景参与者位置时速度不够快,某些事故场景难以搜索到合适位置等问题。本发明基于烟花算法设计了基于群体智能的自动驾驶事故预防仿真场景生成技术。本发明的主要任务是首先提出了一种高精度地图处理方法,能够实现在道路事故区域中随机采样,并设计分割车道建立KD树的算法,可以有效减小搜索最近邻车道的时间,快速确定生成事故车辆的朝向,相比没有优化的方法可以极大减少搜索时间。然后分析自动驾驶事故预防仿真场景中参与者的约束关系,设计评价函数,基于烟花算法在道路事故区域中沿着车道轨迹和法向搜索,逐步接近合适的车辆生成区域。通过Carla模拟器提供的接口创建传感器对象,根据传感器对象接收的仿真数据生成事故图像。相比于现有方案。本发明可以有效提升自动驾驶事故预防仿真场景生成的速度。
本发明主要包括以下步骤:
步骤(1):行驶区域计算与采样,实现在地图道路事故区域中均匀采样位置点;
步骤(2):利用基于KD树的事故场景车辆朝向计算方法,指定事故场景车辆的朝向;
步骤(3):利用提出的自动驾驶事故预防仿真场景参与生成点搜索算法,根据事故场景参与者的距离与朝向关系评价采样的位置点,通过评价值计算生成新的点,筛选新的点,逐渐逼近合适的,实现快速搜索满足要求的事故场景参与者生成位置;
步骤(4):确定好自动驾驶事故预防仿真场景中参与者的生成位置和朝向后,连接Carla模拟器,根据传感器对象接收的仿真数据生成静态的自动驾驶事故预防仿真场景;
各步骤包括以下具体实施过程:
步骤(1.1)行驶区域计算。首先根据车道的边界点生成多边形,然后所有多边形的边界向外扩张0.5米,消除车道边界间空隙的影响。之后,所有车道组成的多边形取并集,合并成一个大的多边形。然后大多边形边界再向内侵蚀0.5米,恢复扩张前的大小,所有的道路事故区域就连接在一起。最后将得到的大多边形分解成小的三角形,可以填充全部道路事故区域。
步骤(1.2)行驶区域采样。首先以三角形的面积作为权重采样,均匀采样得到三角形,道路被分解成了多个三角形区域,可以采样得到单个三角形区域。然后根据区域的顶点坐标,得到长和宽平行于两个坐标轴方向,并且包裹住三角形区域的最小矩形。在矩形的长宽区间中分别随机选择一个值,选择的值是采样点的坐标值,如果采样点在三角形区域内,就成功采样位置点,否则重新在两个区间中选值,直到选择的坐标点在三角形中。这样分解成三角形再采样比直接在地图大区域中采样节省很多时间,因为地图事故区域中道路面积占比较小,容易采样到道路事故区域外,导致采样失败。
步骤(2.1)分割车道构建KD树。先将车道中线相邻点连接组成基本车道段,所有的基本车道段组成大集合,根据集合坐标边界范围确定分割维度和分割值。按照分割维度和分割值将集合分为两部分,并得到本次分割的分割节点,再对分割后的两部分递归进行分割,直到车道段集合边界在两个坐标方向的最大长度小于设定的值,所有分割节点和最后不能再分割的车道段集合组成。
步骤(2.2)在KD树上进行最近邻查找。分为生成搜索路径和回溯查找两个阶段。生成搜索路径就是进行二叉查找的过程,从KD树的根节点开始,根据当前层分割的维度判断应该在KD树的哪一侧继续查找,如果位置点在该维度的坐标值小于当前层的分割值就在KD树的左侧递归查找,否则在右侧递归查找。直到当前节点没有子节点,开始回溯,计算当前层车道段集合距离位置点长度的最小值,更新最小距离和最近的车道段。如果当前节点有兄弟节点,且兄弟节点中的车道段集合距离位置点的最近距离比当前的最近距离小,需要进入兄弟节点搜索。然后,回溯到上一层的分割节点中继续搜索,重复进行这种操作,直到搜索路径上的节点都被搜索到。最后得到最近距离和最近的车道段,根据车道段确定距离位置点最近的车道中线坐标点。
步骤(3.1)自动驾驶事故预防仿真场景参与者位置关系分析。本发明将具有相对关系的参与者以及它们之间的关系提取出来,对于没有参考其他事故场景参与者的事故场景参与者,随机采样位置点作为它们的生成点,然后根据相对关系计算其余参与者的位置和朝向来计算采样点的评价值。根据位置关系计算每一个采样点x的评价值的过程如下所示。
其中distance(ci)是事故场景参与者ci距离道路边界的长度,其中angle_bias(ci)是事故场景参与者ci与其他事故参与者形成的实际角度与目标角度的偏差。k是除随机采样参与者外,其余参与者的数目。评价值小代表采样的位置点离合适区域较近,评价值为0时采样的位置点在合适区域中。计算总的偏差之和考虑了参与者间的距离和朝向关系,可以表示出位置点对于事故场景参与者位置关系的合适程度。
步骤(3.2)搜索合适生成点。计算位置点的评价值、生成新的位置点、筛选下一代位置点,然后接着生成新的点,直到搜索到合适的位置。
步骤(4.1)通过网络连接Carla仿真环境,然后选择对应的参与者蓝图,在生成位置点生成对应朝向的车辆或行人。在这些参与者对象上设置相机和激光雷达传感器对象,相机包括RGB、深度和语义分割相机。
步骤(4.2)在这些传感器上设置监听函数,每当传感器收到数据后,就解析这些数据,Carla的传感器对象产生carla.SensorData格式的数据流,使用carla.convert将其转化成对应传感器类型的carla.Image数据,再以流的形式转化成numpy数组对象,修改数组的大小与要生成的图像的分辨率对应,实现自定义仿真场景分辨率。
步骤(4.3)将传感器数据渲染在pygame窗口上,同时借助Carla的接口实现保存场景图片的功能,生成自动驾驶事故预防仿真场景。
本发明用以自动驾驶事故预防仿真场景生成,可加快事故初始场景的生成速度,具有如下优点:
本发明提出了一种基于群体智能的自动驾驶事故预防仿真场景生成技术。可有效解决现有自动驾驶场景描述语言描述物体位置时,需要使用者用坐标点指定参与者位置,很不灵活,搜索事故场景参与者位置时速度不够快,某些事故场景难以搜索到合适位置等问题。
提出了一种高精度地图处理方法,能够实现在道路事故区域中随机采样,并设计分割车道建立KD树的算法,可以有效减小搜索最近邻车道的时间,快速确定生成车辆的朝向,相比没有优化的方法可以极大减少搜索时间。
通过分析事故场景中参与者的约束关系,设计评价函数,基于烟花算法在道路区域中沿着车道轨迹和法向搜索,逐步接近合适的车辆生成区域。可以有效提升自动驾驶事故预防仿真场景生成的速度。
通过Carla模拟器提供的接口创建传感器对象,根据传感器对象接收的仿真数据生成图像。能够实现生成多种传感器类型、不同视角的数据。
附图说明:
为了使发明的技术方案更加清楚,下面将结合附图对本发明做进一步的详细描述,其中
图1为基于群体智能的自动驾驶事故预防仿真场景生成框架。
具体实施方式:
以下结合附图对本发明作进一步详细的说明。
如图1所示,算法的输入是使用场景语言描述的自动驾驶静态事故场景,包括事故场景发生的区域、事故场景中所有参与者以及他们的位置、朝向关系。
地图处理模块根据对测试区域的描述找到满足要求的道路元素,然后基于道路元素的边界信息生成多边形对象,通过基于缓冲区的膨胀、腐蚀操作连接所有的可行驶区域,最后使用三角形填充多边形对象,需要采样位置点时,以三角形的面积作为权重实现在道路事故区域中均匀采样位置点。同时分割车道,构建车道段组成的KD树,在计算生成位置点的朝向时使用。
得到可以行驶的事故区域后,事故场景参与者生成位置搜索模块开始分析参与者间的关系,先随机采样位置点,然后基于群体智能算法逐渐逼近合适的生成区域,
搜索到合适的位置作为事故场景参与者的生成点。最后自动驾驶事故预防仿真场景生成模块连接仿真环境,选择车辆与行人模型,根据搜索到的生成点坐标与朝向生成仿真环境的参与者,同时设置多种传感器,将相机、激光雷达等数据发送到前端渲染模块。渲染模块处理收到的传感器数据,将其转化成指定分辨率的图像,最后使用pygame展示仿真环境信息。
最后所应说明的是:本发明还可有其它多种应用场景,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明的保护范围。
Claims (5)
1.一种基于群体智能的自动驾驶事故预防仿真场景生成技术,其特征在于,包括通过高精度地图处理方法实现在道路事故区域中随机采样,并设计分割车道建立KD树的算法以有效减小搜索最近邻车道的时间,快速确定生成事故车辆的朝向,然后分析自动驾驶事故预防仿真场景中参与者的约束关系,设计评价函数,基于烟花算法在道路事故区域中沿着车道轨迹和法向搜索,逐步接近合适的车辆生成区域,通过Carla模拟器提供的接口创建传感器对象,根据传感器对象接收的仿真数据生成事故图像;
包括以下步骤:
步骤(1):行驶区域计算与采样,实现在地图道路事故区域中均匀采样位置点;
步骤(2):利用基于KD树的事故场景车辆朝向计算方法,指定事故场景车辆的朝向;
步骤(3):利用提出的自动驾驶事故预防仿真场景参与生成点搜索算法,根据事故场景参与者的距离与朝向关系评价采样的位置点,通过评价值计算生成新的点,筛选新的点,逐渐逼近合适的,实现快速搜索满足要求的事故场景参与者生成位置;
步骤(4):确定好自动驾驶事故预防仿真场景中参与者的生成位置和朝向后,连接Carla模拟器,根据传感器对象接收的仿真数据生成静态的自动驾驶事故预防仿真场景。
2.根据权利要求1所述的基于群体智能的自动驾驶事故预防仿真场景生成技术,其特征在于,步骤(1)中包括以下步骤:
步骤(1.1)行驶区域计算,首先根据车道的边界点生成多边形,然后所有多边形的边界向外扩张0.5米,消除车道边界间空隙的影响,之后,所有车道组成的多边形取并集,合并成一个大的多边形。然后大多边形边界再向内侵蚀0.5米,恢复扩张前的大小,所有的道路事故区域就连接在一起。最后将得到的大多边形分解成小的三角形,可以填充全部道路事故区域;
步骤(1.2)行驶区域采样,首先以三角形的面积作为权重采样,均匀采样得到三角形,道路被分解成了多个三角形区域,可以采样得到单个三角形区域,然后根据区域的顶点坐标,得到长和宽平行于两个坐标轴方向,并且包裹住三角形区域的最小矩形,在矩形的长宽区间中分别随机选择一个值,选择的值是采样点的坐标值,如果采样点在三角形区域内,就成功采样位置点,否则重新在两个区间中选值,直到选择的坐标点在三角形中,这样分解成三角形再采样比直接在地图大区域中采样节省很多时间,因为地图事故区域中道路面积占比较小,容易采样到道路事故区域外,导致采样失败。
3.根据权利要求1所述的基于群体智能的自动驾驶事故预防仿真场景生成技术,其特征在于,步骤(2)中包括以下步骤:
步骤(2.1)分割车道构建KD树,先将车道中线相邻点连接组成基本车道段,所有的基本车道段组成大集合,根据集合坐标边界范围确定分割维度和分割值,按照分割维度和分割值将集合分为两部分,并得到本次分割的分割节点,再对分割后的两部分递归进行分割,直到车道段集合边界在两个坐标方向的最大长度小于设定的值,所有分割节点和最后不能再分割的车道段集合组成;
步骤(2.2)在KD树上进行最近邻查找,分为生成搜索路径和回溯查找两个阶段,生成搜索路径就是进行二叉查找的过程,从KD树的根节点开始,根据当前层分割的维度判断应该在KD树的哪一侧继续查找,如果位置点在该维度的坐标值小于当前层的分割值就在KD树的左侧递归查找,否则在右侧递归查找,直到当前节点没有子节点,开始回溯,计算当前层车道段集合距离位置点长度的最小值,更新最小距离和最近的车道段,如果当前节点有兄弟节点,且兄弟节点中的车道段集合距离位置点的最近距离比当前的最近距离小,需要进入兄弟节点搜索,然后,回溯到上一层的分割节点中继续搜索,重复进行这种操作,直到搜索路径上的节点都被搜索到,最后得到最近距离和最近的车道段,根据车道段确定距离位置点最近的车道中线坐标点。
4.根据权利要求1所述的基于群体智能的自动驾驶事故预防仿真场景生成技术,其特征在于,步骤(3)中包括以下步骤:
步骤(3.1)自动驾驶事故预防仿真场景参与者位置关系分析,将具有相对关系的参与者以及它们之间的关系提取出来,对于没有参考其他事故场景参与者的事故场景参与者,随机采样位置点作为它们的生成点,然后根据相对关系计算其余参与者的位置和朝向来计算采样点的评价值,根据位置关系计算每一个采样点x的评价值的过程如下所示。
其中distance(ci)是事故场景参与者ci距离道路边界的长度,其中angle_bias(ci)是事故场景参与者ci与其他事故参与者形成的实际角度与目标角度的偏差,k是除随机采样参与者外,其余参与者的数目,评价值小代表采样的位置点离合适区域较近,评价值为0时采样的位置点在合适区域中,计算总的偏差之和考虑了参与者间的距离和朝向关系,可以表示出位置点对于事故场景参与者位置关系的合适程度;
步骤(3.2)搜索合适生成点,计算位置点的评价值、生成新的位置点、筛选下一代位置点,然后接着生成新的点,直到搜索到合适的位置。
5.根据权利要求1所述基于群体智能的自动驾驶事故预防仿真场景生成技术,其特征在于,步骤(4)中包括以下步骤:
步骤(4.1)通过网络连接Carla仿真环境,然后选择对应的参与者蓝图,在生成位置点生成对应朝向的车辆或行人,在这些参与者对象上设置相机和激光雷达传感器对象,相机包括RGB、深度和语义分割相机;
步骤(4.2)在这些传感器上设置监听函数,每当传感器收到数据后,就解析这些数据,Carla的传感器对象产生carla.SensorData格式的数据流,使用carla.convert将其转化成对应传感器类型的carla.Image数据,再以流的形式转化成numpy数组对象,修改数组的大小与要生成的图像的分辨率对应,实现自定义仿真场景分辨率;
步骤(4.3)将传感器数据渲染在pygame窗口上,同时借助Carla的接口实现保存场景图片的功能,生成自动驾驶事故预防仿真场景。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310181761.0A CN116774602A (zh) | 2023-02-21 | 2023-02-21 | 一种基于群体智能的自动驾驶事故预防仿真场景生成技术 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310181761.0A CN116774602A (zh) | 2023-02-21 | 2023-02-21 | 一种基于群体智能的自动驾驶事故预防仿真场景生成技术 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116774602A true CN116774602A (zh) | 2023-09-19 |
Family
ID=88010446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310181761.0A Pending CN116774602A (zh) | 2023-02-21 | 2023-02-21 | 一种基于群体智能的自动驾驶事故预防仿真场景生成技术 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116774602A (zh) |
-
2023
- 2023-02-21 CN CN202310181761.0A patent/CN116774602A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111462275B (zh) | 一种基于激光点云的地图生产方法和装置 | |
CN108256577B (zh) | 一种基于多线激光雷达的障碍物聚类方法 | |
CN110531770B (zh) | 一种基于改进的rrt路径规划方法和系统 | |
CN110599570B (zh) | 基于众包数据开放场景下的地图生成方法及系统 | |
US20210302585A1 (en) | Smart navigation method and system based on topological map | |
CN111123920A (zh) | 一种自动驾驶仿真测试场景生成方法和装置 | |
CN110796714B (zh) | 一种地图构建方法、装置、终端以及计算机可读存储介质 | |
Niranjan et al. | Deep learning based object detection model for autonomous driving research using carla simulator | |
CN114930401A (zh) | 基于点云的三维重建方法、装置和计算机设备 | |
CN111090712A (zh) | 一种数据处理方法、装置、设备及计算机存储介质 | |
CN113009506A (zh) | 一种虚实结合的实时激光雷达数据生成方法、系统及设备 | |
Zang et al. | Lane boundary extraction from satellite imagery | |
CN111680747A (zh) | 用于占据栅格子图的闭环检测的方法和装置 | |
CN116484971A (zh) | 车辆的自动驾驶感知自学习方法、装置及电子设备 | |
CN113325389A (zh) | 一种无人车激光雷达定位方法、系统及存储介质 | |
CN114694123B (zh) | 交通信号灯感知方法、装置、设备及存储介质 | |
CN110909656A (zh) | 一种雷达与摄像机融合的行人检测方法和系统 | |
Bai et al. | Cyber mobility mirror for enabling cooperative driving automation in mixed traffic: A co-simulation platform | |
Bastani et al. | Inferring and improving street maps with data-driven automation | |
Han et al. | Fully convolutional neural networks for road detection with multiple cues integration | |
CN103839278A (zh) | 一种前景检测方法及装置 | |
CN116774602A (zh) | 一种基于群体智能的自动驾驶事故预防仿真场景生成技术 | |
CN115061903A (zh) | 自动驾驶测试场景的初始化生成方法、装置及设备 | |
Bai et al. | Cyber mobility mirror for enabling cooperative driving automation: A co-simulation platform | |
CN115761551A (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 |