公开/公告号CN116244649A
专利类型发明专利
公开/公告日2023-06-09
原文格式PDF
申请/专利权人 酷哇科技有限公司;上海酷移机器人有限公司;
申请/专利号CN202310194244.7
申请日2023-02-27
分类号G06F18/2431(2023.01);B60W60/00(2020.01);B60W30/095(2012.01);
代理机构上海锻创知识产权代理有限公司 31448;
代理人祁春倪
地址 241060 安徽省芜湖市中国(安徽)自由贸易试验区芜湖片区西昌路1号
入库时间 2023-06-28 06:30:04
法律状态公告日
法律状态信息
法律状态
2023-06-27
实质审查的生效 IPC(主分类):G06F18/2431 专利申请号:2023101942447 申请日:20230227
实质审查的生效
2023-06-09
公开
发明专利申请公布
技术领域
本发明涉及自动驾驶领域,具体地,涉及一种面向自动驾驶博弈的交通弱势参与群体自动分流方法及系统。
背景技术
自动驾驶技术是未来交通发展的趋势,对于自动驾驶车辆的交叉口控制方法是当今的研究热点和难点。现有的研究大多局限于自车与其他机动车之间的交互,可实际情况下,城市道路内存在非常多的非机动车和行人等交通弱势参与群体,其行为难以预测,感知难以准确,是影响自动驾驶车辆顺利通行路口的最主要因素。
目前,在大多数自动驾驶方案中,针对当自动驾驶车辆即将通过人行横道而且恰好有行人正在通过人行横道的场景,会采取制动措施来避免碰撞,但由于行人的行为很可能会因为预测不精确,和感知的波动,导致决策出现误判,规划出不合理的轨迹,出现走走停停或者错失通过机会的场景。
专利文献CN114299456A公开了一种基于实时轨迹检测的交叉口行人过街风险评估方法,包括1.通过逐一评估路口行人和车辆直接的距离;2.基于多目标跟踪算法获得各个目标行为轨迹;利用目标检测框信息和对应目标的行为轨迹进行人与车的冲突检测。3.计算人与车的TTC值序列,根据TTC值序列得到人车冲突风险指标;4.基于交叉口信息建立指标特征矩阵,计算得到交叉口环境指标综合权重系数;根据人车冲突风险指标和环境指标综合权重系数,得到行人过街风险综合评价指标。该技术缺点是通过人车距离计算评估风险耗时较高,需要单独比较每一个行人和自车之间的安全距离,而且多帧之间无法保证行人预测的连续和感知的稳定性。而没有通过分流,将多个交通弱势参与群体作为一个障碍物处理,不能减少计算耗时的同时保证多帧之间的连续和稳定。
专利文献CN114312836A公开了一种自动驾驶车辆礼让行人的方法、装置、设备及存储介质,该发明在规划的行驶路径中,确定人行横道的起始位置和人行横道的影响范围;根据人行横道的影响范围,获取拟通过人行横道的行人集合以及行人集合中每个行人的运动信息,得到行人参考信息;根据行人参考信息和自车的行驶信息,确定每一行人与自车发生碰撞的风险评估值;若任一行人与自车发生碰撞的风险评估值大于预设的风险值阈值,则在人行横道的起始位置处生成虚拟墙。但该发明:1.不够灵活,虚拟墙的设置虽然可以保证通行决策的稳定,但是完全占据了规划空间使得原本可行的规划难以找到;2.过于依赖行人预测轨迹,一旦行人预测轨迹不准确,将导致虚拟墙不稳定,或者完全不可通行;3.对于突然出现的行人如果设置虚拟墙,将会导致车辆急刹,反而是不安全的行为,驾驶舒适性也大大受影响,但是轻微减速或者绕行即可正常通行。
专利文献CN112487905B公开了一种车辆周边行人危险等级预测方法及系统,包括基于车辆第一视角数据进行行人轨迹预测,使用数据驱动的时序网络建模实现长时轨迹预测,降低计算成本,缩短预测时长;基于聚类分析和分类器的危险等级识别器,能够根据特征参数识别行人危险等级,避免通过人为划分参数范围来判定危险等级带来的不确定性;根据训练得到的行人轨迹拟合器预测行人移动轨迹,提取出行人特征参数集合,将参数集合输入到训练得到的行人危险等级识别器中,对行人危险等级进行预测。但该发明过于依赖行人预测轨迹,一旦行人预测轨迹不准确,将导致虚拟墙不稳定,或者完全不可通行。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种面向自动驾驶博弈的交通弱势参与群体自动分流方法及系统。
根据本发明提供的一种面向自动驾驶博弈的交通弱势参与群体自动分流方法,包括:
步骤S1:通过感知信息获取当前帧所有交通弱势参与群体信息;
步骤S2:判断交通弱势参与群体所在车道或者人行横道,对障碍物进行初步分类;
步骤S3:对交通弱势参与群体利用规则进行分流方法;
步骤S4:构建分流后新的流的属性。
优选地,在所述步骤S1中:
通过感知信息获取当前帧所有交通弱势参与群体信息,包括速度、位置和角度;交通弱势参与群体包括行人和非机动车。
优选地,在所述步骤S2中:
步骤S2.1:利用障碍物定位点寻找预设距离之内的所有车道和人行横道
步骤S2.2:通过角度和距离车道或人行横道距离加权计算total_score:
l_score=车道类型距离参数/交通弱势参与群体距离车道中心线的距离,
heading_score=车道类型角度参数^(交通弱势参与群体速度方向和车道对应点的朝向夹角/(PI/12)),
其中,车道类型角度参数小于1;
total_score=min(l_score,1.0)*min(heading_score,1.0);
其中,PI为圆周率,l_score为距离代价,heading_score为角度代价,total_score为总代价;
步骤S2.3:选择total_score最小的车道作为交通弱势参与群体所在车道;
步骤S2.4:利用车道信息,评估出交通弱势参与群体与自车的关系,关系包括平行、逆向和交叉。
优选地,在所述步骤S3中:
步骤S3.1:分别针对交通弱势参与群体的类型进行分流;
步骤S3.2:分别针对逆向、交叉和平行将交通弱势参与群体进行分类,不属于逆向、交叉和平行的障碍物加入每一种关系中以逆向、交叉和平行依次进行分流;
步骤S3.3:分流前,先根据交通弱势参与群体根据距离自车的距离进行排序,建立一个新的流,选取自车最近的map上未查找的交通弱势参与群体作为中心;
步骤S3.4:找出距离该中心交通弱势参与群体最近的其他交通弱势参与群体,map上标记为已查找;
步骤S3.5:计算角度参数和距离参数total_score:
l_score=交通弱势参与群体类型距离参数/中心交通弱势参与群体距离其他交通弱势参与群体的距离,
heading_score=交通弱势参与群体类型角度参数^(该中心交通弱势参与群体速度方向和其他交通弱势参与群体的速度方向夹角/(PI/12)),
total_score=min(l_score,1.0)*min(heading_score,1.0);
步骤S3.6:构建障碍物map,利用广度优先遍历的方法遍历所有障碍物;
广度优先搜索指从某一点出发,一次性访问所有未被访问的邻节点,再依次从这些已访问过的邻接点出发,一层一层地访问,广度优先遍历是按照广度优先搜索的方式对图进行遍历;
步骤S3.7:若新的其他交通弱势参与群体评估的total_score小于等于threshold_value,新的其他交通弱势参与群体为中心交通参与者,返回步骤S3.4,继续执行;
其中,threshold_value为设置的超参数;
步骤S3.8:若新的其他交通弱势参与群体评估的total_score大于threshold_value,新的其他交通弱势参与群体不可以做为中心交通参与者,回到步骤S3.3;
所有交通弱势参与群体均遍历完成后结束。
优选地,在所述步骤S4中:
步骤S4.1:速度分配:选取距离自车最近的交通弱势参与群体速度,作为整个流的速度;
步骤S4.2:大小分配:将该流对应的所有交通弱势参与群体做最小凸包络线,作为交通弱势参与群体流的占据空间;
步骤S4.3:计算最小包络线与自车之间的距离,若最小包络中包含自车或者距离小于阈值,进行流分割操作;
步骤S4.4:流分割:
以自车为坐标轴中心,选取左侧最近的交通弱势参与群体和右侧出现的交通弱势参与群体位置的均值为分割向量,((x左+x右)/2,(y左+y右)/2);
其中,x左为左侧交通弱势参与者的中心点的x坐标,y左为左侧交通弱势参与者的中心点的y坐标,x右为右侧交通弱势参与者的中心点的x坐标,y右为右侧交通弱势参与者的中心点的y坐标;
将该流中所有交通弱势参与群体对应的向量求出与分割向量的夹角;
角度为正值的分为一组,角度为负值的分为另一组,分割产生两个不同的流。
根据本发明提供的一种面向自动驾驶博弈的交通弱势参与群体自动分流系统,包括:
模块M1:通过感知信息获取当前帧所有交通弱势参与群体信息;
模块M2:判断交通弱势参与群体所在车道或者人行横道,对障碍物进行初步分类;
模块M3:对交通弱势参与群体利用规则进行分流方法;
模块M4:构建分流后新的流的属性。
优选地,在所述模块M1中:
通过感知信息获取当前帧所有交通弱势参与群体信息,包括速度、位置和角度;交通弱势参与群体包括行人和非机动车。
优选地,在所述模块M2中:
模块M2.1:利用障碍物定位点寻找预设距离之内的所有车道和人行横道
模块M2.2:通过角度和距离车道或人行横道距离加权计算total_score:
l_score=车道类型距离参数/交通弱势参与群体距离车道中心线的距离,
heading_score=车道类型角度参数^(交通弱势参与群体速度方向和车道对应点的朝向夹角/(PI/12)),
其中,车道类型角度参数小于1;
total_score=min(l_score,1.0)*min(heading_score,1.0);
其中,PI为圆周率,l_score为距离代价,heading_score为角度代价,total_score为总代价;
模块M2.3:选择total_score最小的车道作为交通弱势参与群体所在车道;
模块M2.4:利用车道信息,评估出交通弱势参与群体与自车的关系,关系包括平行、逆向和交叉。
优选地,在所述模块M3中:
模块M3.1:分别针对交通弱势参与群体的类型进行分流;
模块M3.2:分别针对逆向、交叉和平行将交通弱势参与群体进行分类,不属于逆向、交叉和平行的障碍物加入每一种关系中以逆向、交叉和平行依次进行分流;
模块M3.3:分流前,先根据交通弱势参与群体根据距离自车的距离进行排序,建立一个新的流,选取自车最近的map上未查找的交通弱势参与群体作为中心;
模块M3.4:找出距离该中心交通弱势参与群体最近的其他交通弱势参与群体,map上标记为已查找;
模块M3.5:计算角度参数和距离参数total_score:
l_score=交通弱势参与群体类型距离参数/中心交通弱势参与群体距离其他交通弱势参与群体的距离,
heading_score=交通弱势参与群体类型角度参数^(该中心交通弱势参与群体速度方向和其他交通弱势参与群体的速度方向夹角/(PI/12)),
total_score=min(l_score,1.0)*min(heading_score,1.0);
模块M3.6:构建障碍物map,利用广度优先遍历的方法遍历所有障碍物;
广度优先搜索指从某一点出发,一次性访问所有未被访问的邻节点,再依次从这些已访问过的邻接点出发,一层一层地访问,广度优先遍历是按照广度优先搜索的方式对图进行遍历;
模块M3.7:若新的其他交通弱势参与群体评估的total_score小于等于threshold_value,新的其他交通弱势参与群体为中心交通参与者,返回模块M3.4,继续执行;
其中,threshold_value为设置的超参数;
模块M3.8:若新的其他交通弱势参与群体评估的total_score大于threshold_value,新的其他交通弱势参与群体不可以做为中心交通参与者,回到模块M3.3;
所有交通弱势参与群体均遍历完成后结束。
优选地,在所述模块M4中:
模块M4.1:速度分配:选取距离自车最近的交通弱势参与群体速度,作为整个流的速度;
模块M4.2:大小分配:将该流对应的所有交通弱势参与群体做最小凸包络线,作为交通弱势参与群体流的占据空间;
模块M4.3:计算最小包络线与自车之间的距离,若最小包络中包含自车或者距离小于阈值,进行流分割操作;
模块M4.4:流分割:
以自车为坐标轴中心,选取左侧最近的交通弱势参与群体和右侧出现的交通弱势参与群体位置的均值为分割向量,((x左+x右)/2,(y左+y右)/2);
其中,x左为左侧交通弱势参与者的中心点的x坐标,y左为左侧交通弱势参与者的中心点的y坐标,x右为右侧交通弱势参与者的中心点的x坐标,y右为右侧交通弱势参与者的中心点的y坐标;
将该流中所有交通弱势参与群体对应的向量求出与分割向量的夹角;
角度为正值的分为一组,角度为负值的分为另一组,分割产生两个不同的流。
与现有技术相比,本发明具有如下的有益效果:
1、本发明对于交通弱势参与群体的行为集群化明显,分流处理可以节约大量关于碰撞判断与轨迹预测等计算资源;
2、交通弱势参与群体的形态各异,但是流可以稳定移动,本发明分流可保证多帧之间的稳定,以流的稳定性感知交通弱势群体的变化;
3、本发明对交通弱势参与群体分流将会使自动驾驶车辆行为更加稳定,能过则过,不能过则停止或者减速让行,合理规避行车风险,提升自动驾驶安全性与舒适性。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为面向自动驾驶博弈的交通弱势参与群体自动分流方法流程示意图;
图2为面向自动驾驶博弈的交通弱势参与群体自动分流方法系统流程示意图;
图3为自车通过路口时交通弱势参与群体分流结果可以通行示意图;
图4为自车通过路口时交通弱势参与群体分流结果无法通行示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
实施例1:
本发明涉及自动驾驶针对路口内交通通行,更具体地说,通过规则和价值评估进行交通弱势参与群体的分流处理。
本专利所要解决的技术问题:
1.路口内行人较多,自动驾驶必须对过马路的行人和路口内穿行的非机动车进行处理,而当今针对这些交通弱势参与群体的自动驾驶处理方法较少
2.交通弱势参与群体的行为集群化明显,单独处理将会大大消耗计算资源
3.交通弱势参与群体的形态各异,感知容易不稳定产生跳变,分流可保证多帧之间的稳定便于规划出更合理的轨迹
4.交通弱势参与群体的行为难以预测,分流可以给出更准确的速度和移动方向,安全性得到保障
5.对交通弱势参与群体分流将会使自动驾驶车辆行为更加稳定,能过则过,不能过则停止或者减速,同时不完全占据规划的可行空间,实际操作灵活性和上限比简单粗暴的设置停车或者抢行策略高。
根据本发明提供的一种面向自动驾驶博弈的交通弱势参与群体自动分流方法,如图1所示,包括:
步骤S1:通过感知信息获取当前帧所有交通弱势参与群体信息;
具体地,在所述步骤S1中:
通过感知信息获取当前帧所有交通弱势参与群体信息,包括速度、位置和角度;交通弱势参与群体包括行人和非机动车。
步骤S2:判断交通弱势参与群体所在车道或者人行横道,对障碍物进行初步分类;
具体地,在所述步骤S2中:
步骤S2.1:利用障碍物定位点寻找预设距离之内的所有车道和人行横道
步骤S2.2:通过角度和距离车道或人行横道距离加权计算total_score:
l_score=车道类型距离参数/交通弱势参与群体距离车道中心线的距离,
heading_score=车道类型角度参数^(交通弱势参与群体速度方向和车道对应点的朝向夹角/(PI/12)),
其中,车道类型角度参数小于1;
total_score=min(l_score,1.0)*min(heading_score,1.0);
其中,PI为圆周率,l_score为距离代价,heading_score为角度代价,total_score为总代价;
步骤S2.3:选择total_score最小的车道作为交通弱势参与群体所在车道;
步骤S2.4:利用车道信息,评估出交通弱势参与群体与自车的关系,关系包括平行、逆向和交叉。
步骤S3:对交通弱势参与群体利用规则进行分流方法;
具体地,在所述步骤S3中:
步骤S3.1:分别针对交通弱势参与群体的类型进行分流;
步骤S3.2:分别针对逆向、交叉和平行将交通弱势参与群体进行分类,不属于逆向、交叉和平行的障碍物加入每一种关系中以逆向、交叉和平行依次进行分流;
步骤S3.3:分流前,先根据交通弱势参与群体根据距离自车的距离进行排序,建立一个新的流,选取自车最近的map上未查找的交通弱势参与群体作为中心;
步骤S3.4:找出距离该中心交通弱势参与群体最近的其他交通弱势参与群体,map上标记为已查找;
步骤S3.5:计算角度参数和距离参数total_score:
l_score=交通弱势参与群体类型距离参数/中心交通弱势参与群体距离其他交通弱势参与群体的距离,
heading_score=交通弱势参与群体类型角度参数^(该中心交通弱势参与群体速度方向和其他交通弱势参与群体的速度方向夹角/(PI/12)),
total_score=min(l_score,1.0)*min(heading_score,1.0);
步骤S3.6:构建障碍物map,利用广度优先遍历的方法遍历所有障碍物;
广度优先搜索指从某一点出发,一次性访问所有未被访问的邻节点,再依次从这些已访问过的邻接点出发,一层一层地访问,广度优先遍历是按照广度优先搜索的方式对图进行遍历;
步骤S3.7:若新的其他交通弱势参与群体评估的total_score小于等于threshold_value,新的其他交通弱势参与群体为中心交通参与者,返回步骤S3.4,继续执行;
其中,threshold_value为设置的超参数;
步骤S3.8:若新的其他交通弱势参与群体评估的total_score大于threshold_value,新的其他交通弱势参与群体不可以做为中心交通参与者,回到步骤S3.3;
所有交通弱势参与群体均遍历完成后结束。
步骤S4:构建分流后新的流的属性。
具体地,在所述步骤S4中:
步骤S4.1:速度分配:选取距离自车最近的交通弱势参与群体速度,作为整个流的速度;
步骤S4.2:大小分配:将该流对应的所有交通弱势参与群体做最小凸包络线,作为交通弱势参与群体流的占据空间;
步骤S4.3:计算最小包络线与自车之间的距离,若最小包络中包含自车或者距离小于阈值,进行流分割操作;
步骤S4.4:流分割:
以自车为坐标轴中心,选取左侧最近的交通弱势参与群体和右侧出现的交通弱势参与群体位置的均值为分割向量,((x左+x右)/2,(y左+y右)/2);
其中,x左为左侧交通弱势参与者的中心点的x坐标,y左为左侧交通弱势参与者的中心点的y坐标,x右为右侧交通弱势参与者的中心点的x坐标,y右为右侧交通弱势参与者的中心点的y坐标;
将该流中所有交通弱势参与群体对应的向量求出与分割向量的夹角;
角度为正值的分为一组,角度为负值的分为另一组,分割产生两个不同的流。
实施例2:
实施例2为实施例1的优选例,以更为具体地对本发明进行说明。
本发明还提供一种面向自动驾驶博弈的交通弱势参与群体自动分流系统,所述面向自动驾驶博弈的交通弱势参与群体自动分流系统可以通过执行所述面向自动驾驶博弈的交通弱势参与群体自动分流方法的流程步骤予以实现,即本领域技术人员可以将所述面向自动驾驶博弈的交通弱势参与群体自动分流方法理解为所述面向自动驾驶博弈的交通弱势参与群体自动分流系统的优选实施方式。
根据本发明提供的一种面向自动驾驶博弈的交通弱势参与群体自动分流系统,如图2所示,包括:
模块M1:通过感知信息获取当前帧所有交通弱势参与群体信息;
具体地,在所述模块M1中:
通过感知信息获取当前帧所有交通弱势参与群体信息,包括速度、位置和角度;交通弱势参与群体包括行人和非机动车。
模块M2:判断交通弱势参与群体所在车道或者人行横道,对障碍物进行初步分类;
具体地,在所述模块M2中:
模块M2.1:利用障碍物定位点寻找预设距离之内的所有车道和人行横道
模块M2.2:通过角度和距离车道或人行横道距离加权计算total_score:
l_score=车道类型距离参数/交通弱势参与群体距离车道中心线的距离,
heading_score=车道类型角度参数^(交通弱势参与群体速度方向和车道对应点的朝向夹角/(PI/12)),
其中,车道类型角度参数小于1;
total_score=min(l_score,1.0)*min(heading_score,1.0);
其中,PI为圆周率,l_score为距离代价,heading_score为角度代价,total_score为总代价;
模块M2.3:选择total_score最小的车道作为交通弱势参与群体所在车道;
模块M2.4:利用车道信息,评估出交通弱势参与群体与自车的关系,关系包括平行、逆向和交叉。
模块M3:对交通弱势参与群体利用规则进行分流方法;
具体地,在所述模块M3中:
模块M3.1:分别针对交通弱势参与群体的类型进行分流;
模块M3.2:分别针对逆向、交叉和平行将交通弱势参与群体进行分类,不属于逆向、交叉和平行的障碍物加入每一种关系中以逆向、交叉和平行依次进行分流;
模块M3.3:分流前,先根据交通弱势参与群体根据距离自车的距离进行排序,建立一个新的流,选取自车最近的map上未查找的交通弱势参与群体作为中心;
模块M3.4:找出距离该中心交通弱势参与群体最近的其他交通弱势参与群体,map上标记为已查找;
模块M3.5:计算角度参数和距离参数total_score:
l_score=交通弱势参与群体类型距离参数/中心交通弱势参与群体距离其他交通弱势参与群体的距离,
heading_score=交通弱势参与群体类型角度参数^(该中心交通弱势参与群体速度方向和其他交通弱势参与群体的速度方向夹角/(PI/12)),
total_score=min(l_score,1.0)*min(heading_score,1.0);
模块M3.6:构建障碍物map,利用广度优先遍历的方法遍历所有障碍物;
广度优先搜索指从某一点出发,一次性访问所有未被访问的邻节点,再依次从这些已访问过的邻接点出发,一层一层地访问,广度优先遍历是按照广度优先搜索的方式对图进行遍历;
模块M3.7:若新的其他交通弱势参与群体评估的total_score小于等于threshold_value,新的其他交通弱势参与群体为中心交通参与者,返回模块M3.4,继续执行;
其中,threshold_value为设置的超参数;
模块M3.8:若新的其他交通弱势参与群体评估的total_score大于threshold_value,新的其他交通弱势参与群体不可以做为中心交通参与者,回到模块M3.3;
所有交通弱势参与群体均遍历完成后结束。
模块M4:构建分流后新的流的属性。
具体地,在所述模块M4中:
模块M4.1:速度分配:选取距离自车最近的交通弱势参与群体速度,作为整个流的速度;
模块M4.2:大小分配:将该流对应的所有交通弱势参与群体做最小凸包络线,作为交通弱势参与群体流的占据空间;
模块M4.3:计算最小包络线与自车之间的距离,若最小包络中包含自车或者距离小于阈值,进行流分割操作;
模块M4.4:流分割:
以自车为坐标轴中心,选取左侧最近的交通弱势参与群体和右侧出现的交通弱势参与群体位置的均值为分割向量,((x左+x右)/2,(y左+y右)/2);
其中,x左为左侧交通弱势参与者的中心点的x坐标,y左为左侧交通弱势参与者的中心点的y坐标,x右为右侧交通弱势参与者的中心点的x坐标,y右为右侧交通弱势参与者的中心点的y坐标;
将该流中所有交通弱势参与群体对应的向量求出与分割向量的夹角;
角度为正值的分为一组,角度为负值的分为另一组,分割产生两个不同的流。
实施例3:
实施例3为实施例1的优选例,以更为具体地对本发明进行说明。
本发明具体流程:
1.通过感知信息获取当前帧所有交通弱势参与群体(动态障碍物:行人,非机动车)信息(速度,位置,角度等)
2.利用障碍物位置信息判断交通弱势参与群体所在车道或者人行横道,对障碍物进行初步分类:
a.利用障碍物定位点寻找2m之内的所有车道和人行横道;
b.通过角度和距离车道或人行横道距离加权计算total_score:
l_score=车道类型距离参数/该交通弱势参与群体距离车道中心线的距离,
heading_score=车道类型角度参数^(该交通弱势参与群体速度方向和车道对应点的朝向夹角/(PI/12)),其中车道类型角度参数<1,
total_score=min(l_score,1.0)*min(heading_score,1.0);
其中,PI为圆周率,l_score为距离代价,heading_score为角度代价,total_score为总代价。
c.选择total_score最小的车道作为交通弱势参与群体所在车道;
d.利用车道信息,评估出该交通弱势参与群体与自车的关系(平行,逆向,交叉,未知)。
3.对交通弱势参与群体利用规则进行分流方法
a.分别针对交通弱势参与群体的类型(行人,非机动车)进行分流;
b.分别针对三种关系(逆向,交叉,平行)将交通弱势参与群体进行分类,其中未知关系的障碍物加入每一种关系中以逆向,交叉,平行三种关系,依次进行分流;
c.分流前,先根据交通弱势参与群体根据距离自车的距离进行排序,建立一个新的流,选取自车最近的map上未查找的交通弱势参与群体作为中心;
d.找出距离该中心交通弱势参与群体最近的其他交通弱势参与群体,map上标记为已查找;
e.计算角度参数和距离参数total_score:
l_score=交通弱势参与群体类型距离参数/中心交通弱势参与群体距离其他交通弱势参与群体的距离,
heading_score=交通弱势参与群体类型角度参数^(该中心交通弱势参与群体速度方向和其他交通弱势参与群体的速度方向夹角/(PI/12)),
total_score=min(l_score,1.0)*min(heading_score,1.0);
f.构建障碍物map,利用广度优先遍历的方法遍历所有障碍物:
广度优先搜索指从某一点出发,一次性访问所有未被访问的邻节点,再依次从这些已访问过的邻接点出发,一层一层地访问,广度优先遍历是按照广度优先搜索的方式对图进行遍历的;
g.若新的其他交通弱势参与群体评估的total_score≤threshold_value,即认为新的其他交通弱势参与群体为中心交通参与者,回到步骤d;threshold_value是设置的超参数,经验值为0.4;
h.若新的其他交通弱势参与群体评估的total_score>threshold_value,即认为新的其他交通弱势参与群体不可以做为中心交通参与者,回到步骤c;
所有交通弱势参与群体均遍历完成后结束。
4.分流后新的流的属性构建(速度分配,大小分配)
a.速度分配:选取距离自车最近的交通弱势参与群体速度,作为整个流的速度;
b.大小分配:将该流对应的所有交通弱势参与群体做最小凸包络线,作为交通弱势参与群体流的占据空间;
c.计算最小包络线与自车之间的距离,若最小包络中包含自车或者距离小于阈值,则需要进行流分割操作;
d.流分割:
以自车为坐标轴中心,选取左侧最近的交通弱势参与群体和右侧出现的交通弱势参与群体位置的均值为分割向量,即((x左+x右)/2,(y左+y右)/2),
其中,x左为左侧交通弱势参与者的中心点的x坐标,y左为左侧交通弱势参与者的中心点的y坐标,x右为右侧交通弱势参与者的中心点的x坐标,y右为右侧交通弱势参与者的中心点的y坐标;
将该流中所有交通弱势参与群体对应的向量求出与分割向量的夹角;
角度为正值的分为一组,角度为负值的分为另一组,分割产生两个不同的流。
图3和图4为自车通过路口时交通弱势参与者自动分流的效果图。
实施例4:
实施例4为实施例1的优选例,以更为具体地对本发明进行说明。
针对交通弱势参与群体利用规则进行分流方法,对交通弱势参与群体同样可以利用聚类方法进行分流操作。
通过交通弱势参与群体的定位(x,y)和速度大小和角度(angle,velocity)四个维度进行聚类:
a.在给定K值和K个初始类簇中心点的情况下,把每个点(亦即数据记录)分到离其最近的类簇中心点所代表的类簇中,所有点分配完毕之后,根据一个类簇内的所有点重新计算该类簇的中心点(取平均值),然后再迭代的进行分配点和更新类簇中心点的步骤,直至类簇中心点的变化很小,或者达到指定的迭代次数;
b.以上一帧最终的聚类中心作为下一帧初始聚类中心来保证稳定性;
c.k值由车辆总数量,路口复杂度属性等确定。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
机译: 用于自动驾驶车辆与其他交通参与者之间通信的照明系统
机译: 能够应对交通灯识别故障的自动驾驶系统和自动驾驶方法
机译: 参与一个司机在的系统和方法自动驾驶模式