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

自动驾驶车辆轨迹生成方法、装置、终端设备及介质与流程

2021-10-30 02:30:00 来源:中国专利 TAG:驾驶 终端设备 介质 轨迹 装置


1.本发明涉及自动驾驶技术领域,尤其涉及一种自动驾驶车辆轨迹生成方法、装置、终端设备及介质。


背景技术:

2.在自动驾驶领域中,车辆轨迹的规划是至关重要的一个环节。车辆轨迹的规划可以在车路协同的基础上规划出有效的行驶路径,以此来实现自动驾驶车辆的超车与避障功能。
3.现有的车辆轨迹生成方法主要有以下几种:一种是通过手动扩张高清地图中车道,以得到目标车辆轨迹;另一种是在真实行驶路径的基础上进行车轨迹规划,最终确定出目标车辆轨迹。
4.然而,采用前者方法生成的车辆轨迹虽然能够适用于简单路况,以相对较短、较优的行驶路线使车辆完成自动驾驶。但是,一旦遭遇复杂路况,该方法往往不再适用。例如,当道路前方存在障碍物或道路施工等路况时,若采用该方法就无法进行合理避障,会存在较大的安全隐患。采用后者方法生成的车辆轨迹虽然能够结合真实路况提供正确的行驶决策,可是其针对简单路况下提供的轨迹往往不是最优轨迹,即需要车辆行驶非必要的路程才能到达目的地。如此,不仅花费更多时间,也会增加车辆的行驶成本。


技术实现要素:

5.本发明的目的在于提供一种自动驾驶车辆轨迹生成方法、装置、终端设备及介质,以解决现有技术中自动驾驶车辆轨迹生成方法无法兼顾行驶安全和成本的问题。
6.为实现上述目的,本发明提供一种自动驾驶车辆轨迹生成方法,包括:
7.获取车辆的行驶状态;
8.根据所述行驶状态,判断所述车辆是否需要变道;
9.当所述车辆需要变道时,生成第一可行驶区域和第二可行驶区域,并根据所述第一可行驶区域和所述第二可行驶区域确定待行驶的车辆轨迹。
10.进一步地,所述的自动驾驶车辆轨迹生成方法,还包括:
11.当所述车辆不需要变道时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
12.进一步地,所述自动驾驶车辆轨迹生成方法,还包括:当所述车辆需要变道时,判断障碍物是否为静止状态;
13.若所述障碍物为静止状态,在未到达障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹;
14.在经过障碍物所在路段及超过障碍物所在路段时,根据所述第二可行驶区域确定待行驶的车辆轨迹;
15.在超过障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
16.进一步地,所述自动驾驶车辆轨迹生成方法,还包括:
17.若所述障碍物为移动状态,计算车辆行驶速度与障碍物移动速度的差值;
18.当所述差值大于预设阈值且车辆行驶速度大于障碍物移动速度时,在未到达障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹;在经过障碍物所在路段时,根据所述第二可行驶区域确定待行驶的车辆轨迹;
19.当所述差值大于预设阈值且车辆行驶速度小于障碍物移动速度,或所述差值小于预设阈值时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
20.进一步地,所述第二可行驶区域的生成方法,包括:
21.生成基于frenet坐标系的第一路径;
22.根据frenet坐标系与xy坐标系的映射关系,将所述第一路径转换为基于xy坐标系的第二路径;
23.在所述xy坐标系中对所述第二路径进行区域扩张,并计算扩张后的区域边界;
24.将所述区域边界映射到所述frenet坐标系中,生成约束条件;
25.利用所述约束条件对所述第一路径进行规划,生成第二可行驶区域。
26.进一步地,所述第一可行驶区域的生成方法,包括:对获取的地图道路扩张预设宽度,生成第一可行驶区域。
27.本发明还提供一种自动驾驶车辆轨迹生成装置,包括:
28.行驶状态获取单元,用于获取车辆的行驶状态;
29.判断单元,用于根据所述行驶状态,判断所述车辆是否需要变道;
30.第一轨迹生成单元,用于当所述车辆需要变道时,生成第一可行驶区域和第二可行驶区域,并根据所述第一可行驶区域和所述第二可行驶区域确定待行驶的车辆轨迹。
31.进一步地,所述自动驾驶车辆轨迹生成装置,还包括:
32.第二轨迹生成单元,用于当所述车辆不需要变道时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
33.本发明还提供一种终端设备,包括:
34.一个或多个处理器;
35.存储器,与所述处理器耦接,用于存储一个或多个程序;
36.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上任一项所述的自动驾驶车辆轨迹生成方法。
37.本发明还提供一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上任一项所述的自动驾驶车辆轨迹生成方法。
38.相对于现有技术,本发明的有益效果在于:
39.本发明公开的一种自动驾驶车辆轨迹生成方法,包括:获取车辆的行驶状态;根据所述行驶状态,判断所述车辆是否需要变道;当所述车辆需要变道时,生成第一可行驶区域和第二可行驶区域,并根据所述第一可行驶区域和所述第二可行驶区域确定待行驶的车辆轨迹。相比于现有技术在真实行驶路径的基础上进行车轨迹规划,本发明技术方案不仅能够保证车辆成功躲避障碍物,提高了车辆行驶的安全性,同时还能够保证车辆以最优的距离行驶,兼顾车辆的行驶效率和花费成本。本发明能够克服现有的自动驾驶车辆轨迹规划方法中存在的局限性,具有适用性强、安全性高及成本低的优点。
40.进一步地,本发明在生成第二可行驶区域时同时应用了frenet坐标系与xy坐标
系,并根据两者的映射关系对路径进行映射、区域扩张、边界约束等处理,以此生成的第二可行驶区域能够更真实的反映车道情况,提高整个轨迹生成的准确性。同时在车辆做行驶决策时,根据本发明生成车辆轨迹进行决策判断,能够更精准地抓出每个时刻各个障碍物能否会出现卡住车辆,从而提高决策的精度。
附图说明
41.为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
42.图1是本发明某一实施例提供的自动驾驶车辆轨迹生成方法的流程示意图;
43.图2是本发明某一实施例提供的第一可行驶区域及第二可行驶区域的示意图;
44.图3是本发明另一实施例提供的自动驾驶车辆轨迹生成方法的流程示意图;
45.图4是本发明某一实施例提供的第二可行驶区域生成方法的流程示意图;
46.图5是本发明某一实施例提供的在frenet坐标系下的轨迹分解图;
47.图6是本发明某一实施例提供的横向轨迹的曲线图;
48.图7是本发明某一实施例提供的纵向轨迹的曲线图;
49.图8是本发明某一实施例提供的不同规划周期下生成轨迹的曲线图;
50.图9是本发明另一实施例提供的不同规划周期下生成轨迹的曲线图;
51.图10是本发明又一实施例提供的不同规划周期下生成轨迹的曲线图;
52.图11是本发明某一实施例提供的frenet坐标系下生成轨迹的曲线图;
53.图12是与图11对应的xy坐标系下的路径图;
54.图13是本发明某一实施例提供的自动驾驶车辆轨迹生成装置的结构示意图;
55.图14是本发明又一实施例提供的自动驾驶车辆轨迹生成装置的结构示意图;
56.图15是图13中第一轨迹生成单元的子单元的结构示意图;
57.图16是本发明某一实施例提供的终端设备的结构示意图。
具体实施方式
58.为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明所提供的自动驾驶车辆轨迹生成方法及装置进一步详细描述。
59.请参阅图1,本发明某一实施例提供一种自动驾驶车辆轨迹生成方法。如图1所示,该自动驾驶车辆轨迹生成方法包括步骤s10至步骤s30。各步骤具体如下:
60.s10、获取车辆的行驶状态。
61.需要说明的是,车辆的行驶状态通常是通过车辆行驶速度,行驶路况来反映的。例如,车辆可以根据实际路况从而选择匀速、加速或减速行驶;当遇到紧急路况时需进行刹车;当遇到前方道路为弯道时,需进行转弯;当检测到道路前方有障碍物(车辆、人、物体、道路施工)时,需进行变道。本实施例中,车辆的行驶状态主要是指判断距离车辆当前位置的预设范围内是否存在障碍物,以辅助车辆进行行驶决策。
62.作为本实施例的一种举例,行驶状态可以根据车辆上传的速度信息和障碍物检测信息而综合计算获得。障碍物检测信息可以由设置在车辆上的红外传感器、光学传感器、超
声波传感器、热学传感器等设备进行车辆前方区域检测,再根据检测情况进行计算,确定车辆前方预设范围内是否存在障碍物。更具体的行驶状态、障碍物检测信息的计算方法为现有技术,在此不再赘述。
63.s20、根据所述行驶状态,判断所述车辆是否需要变道。
64.本步骤中,主要根据步骤s10获取的车辆的行驶状态,进而判别车辆是否需要进行变道。需要说明的是,若在车辆行驶过程中检测到道路前方存在障碍物或者道路施工等路况,那么为了保证行驶安全,则可认为车辆应采取变道措施。此外,若车辆想要做出超车、跟车等行为,同样也需要进行变道行为。然而,在实际操作中,仅给出车辆需要变道的判断并不能为车辆提供最佳的行驶轨迹,以及帮助车辆做出准确的行驶决策,还需要针对真实路况确定车辆与障碍物的安全距离,以决定变道的时间、位置,最终确定最优的变道策略及车辆轨迹。
65.s30、当所述车辆需要变道时,生成第一可行驶区域和第二可行驶区域,并根据所述第一可行驶区域和所述第二可行驶区域确定待行驶的车辆轨迹。
66.在步骤s20中,主要根据车辆的行驶状态判断车辆是否需要变道,而在本步骤中,主要针对车辆需要变道时,如何确定车辆轨迹而展开具体说明。
67.请参阅图2,图2提供了步骤s30中所述的第一可行驶区域和第二可行驶区域的示意图。需要说明的是,第一可行驶区域通常是对获取的高清地图中的道路扩张预设宽度后得到的,例如以地图中的车道中心线为准,向左右各扩张一个或多个车道后生成第一可行驶区域。其中,当道路前方不存在障碍物时,在第一可行驶区域内生成的车辆轨迹往往具有花费成本小、生成时间短、行驶轨迹短的优点。然而,已知的地图车道和真实路况往往存在差异,例如无法事先预知路况(道路前方是否存在障碍物),车道突然变窄,车道不规则等情况。在这些情况下,若直接根据第一可行驶区域生成车辆轨迹,生成结果往往并非是车辆行驶的最优轨迹,此时若车辆利用该生成结果行驶,可能会出现车辆被障碍物卡死或紧跟障碍物而耽误行驶时间、车辆与障碍物发生严重碰撞而造成安全事故、车辆由于变道时间、位置不合理而导致行驶多余路线等现象。
68.为了解决上述问题,在本实施例中还生成了第二可行驶区域。其中,第二可行驶区域通常是基于真实路况规划后得到的,由于考虑了真实路况,当道路前方存在障碍物时,在车辆经过障碍物路段时可通过第二可行驶区域来生成车辆轨迹,以进行合理避障,保证车辆正常、安全行驶。然而,由于是在真实路况的基础上生成的第二可行驶区域,因此在第二可行驶区域内生成车辆轨迹相对于在第一可行驶区域范围内来说,往往需要花费更多的成本,且生成的车辆轨迹的长度也要大于在第一可行驶区域内生成的车辆轨迹。
69.综上,无论是单一采用第一可行驶区域还是第二可行驶区域生成车辆轨迹,都会存在各自的利弊。且在实际应用中,障碍物的类型、数量、障碍物是否移动等均会影响车辆轨迹。因此,有必要针对不同情况具体分析车辆轨迹的生成方式,以兼顾行驶安全、成本及效率等问题。
70.在某一具体实施例中,所述自动驾驶车辆轨迹生成方法,还包括:
71.1)当所述车辆需要变道时,判断障碍物是否为静止状态;
72.2)若所述障碍物为静止状态,在未到达障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹;在经过障碍物所在路段及超过障碍物所在路段时,根据所述
第二可行驶区域确定待行驶的车辆轨迹;
73.为更好地理解本发明实施例利用“以第一可行驶区域和第二可行驶区域确定待行驶的车辆轨迹”的方式及其能实现的效果,现以预模拟方式模拟具体应用场景下的车辆轨迹为例,进行如下详细说明。
74.应用场景1
75.假设道路前方的障碍物为静止状态,例如停靠的车辆、放置在道路上的货物及道路施工所设的安全围栏等。由于障碍物为静止物体,因此主车与障碍物的安全距离只和主车有关,即会随着主车的向前行驶而逐渐减小。在这种情况下,可只在第一可行驶区域内预先模拟待行驶的车辆轨迹。如图2所示,由于第一可行驶区域与障碍物在某一时段会相交,此时若车辆在第一可行驶区域内生成的车辆轨迹上以较低速度行驶,就会出现车辆被障碍物卡死的情况。若车辆行驶速度过高,可能会出现与障碍物剧烈碰撞进而造成安全事故的现象。
76.此时,为了确保车辆能够顺利避开障碍物,应结合第一可行驶区域与第二可行驶区域共同生成车辆轨迹。具体地,在l1路段应默认在第一可行驶区域内生成车辆轨迹,而在l2及l3路段应在第二可行驶区域内生成车辆轨迹。即车辆采用1次变道行为,从第一可行驶区域变道至第二可行驶区域行驶,保证了车辆的行驶安全。
77.在某一具体实施方式中,为了在自动驾驶的所有路段兼顾车辆的行驶安全和轨迹最优问题,所提供的自动驾驶车辆轨迹生成方法还包括:
78.3)在超过障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹。具体地,以应用场景2为例进行说明:
79.应用场景2
80.本场景中在驶完l2路段后,为了使得后续生成的车辆轨迹更优,花费成本更小,在l3路段应优先采用第一可行驶区域内生成的车辆轨迹。即车辆采用两次变道方式,先从第一可行驶区域变道至第二可行驶区域,再变道回第一可行驶区域行驶。如此就能够保证,车辆在不发生碰撞的情况下,以更优的轨迹完成自动驾驶。
81.可以理解的是,在应用场景1或2中当遇到静止障碍物时,通过结合第一可行驶区域和第二可行驶区域确定出车辆轨迹来避免碰撞和资源浪费问题。然而,在实际应用中,变道的时间、位置同样会影响车辆轨迹,例如过早的变道会造成多余行驶轨迹的问题。因此,为了防止车辆过早变道,在本发明某一具体实施方式中,主要通过设定安全距离的阈值,为车辆变道提供更优的策略。下面以应用场景3为例进行说明:
82.应用场景3
83.具体地,在场景下优先为安全距离设定一个最小阈值,作为第一阈值,例如设第一阈值为30m。首先,主车在第一可行驶区域内行驶,并实时检测本主车与障碍物的距离,当检测到障碍物距离本主车的距离大于30m时,则证明处于安全距离范围内,即主车能够在该路段继续安全地行驶;行驶一段距离后,一旦检测障碍物距离主车的距离达到30m时,则提醒主车需要在当前位置进行变道,以避开障碍物。当主车从第一可行驶区域内成功变道到第二可行驶区域内时,主车会继续检测前方的路况情况,由于在前方可检测的最大范围内未检测到有障碍物,因此,当主车成功避开障碍物时,会再次触发变道提醒,使得本主车从第二可行驶区域再变道回第一可行驶区域内,完成第二次变道。最后,主车在第一可行驶区域
内继续行驶,若在行驶过程中再次遇到前方存在障碍物的情况,可再次执行上述变道策略。因此,本场景中通过设定安全距离的最小阈值,能够帮助自动驾驶车辆进行准确的变道策略,防止由于过早变道而导致行驶多余路线的问题,同时兼顾车辆行的效率和安全性问题。
84.在某一可选的实施例中,为了防止主车在驶入非安全范围(与障碍物的距离小于安全距离的最小阈值)后撞上障碍物,又设定了第二阈值,例如设为10m。当检测到主车与障碍物的安全距离即将达到10m时,若主车采用变道行为将会直接撞上障碍物。因此,此时应该提醒车辆进行“刹车”,以避免发生安全事故。
85.可以理解的是,上述应用场景及实施方式均为针对静止障碍物下的车辆轨迹生成方法,现针对移动障碍物下的车辆轨迹生成方法进行说明。
86.在某一个具体实施例中,所述自动驾驶车辆轨迹生成方法,还包括:
87.4)若所述障碍物为移动状态,计算车辆行驶速度与障碍物移动速度的差值;
88.当所述差值大于预设阈值且车辆行驶速度大于障碍物移动速度时,在未到达障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹;在经过障碍物所在路段时,根据所述第二可行驶区域确定待行驶的车辆轨迹;
89.当所述差值大于预设阈值且车辆行驶速度小于障碍物移动速度,或所述差值小于预设阈值时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
90.为了帮助理解本实施例中在移动障碍物情况下生成车辆轨迹的方法,下面以应用场景4

6为例进行详细阐述。
91.应用场景4
92.当道路前方的障碍物处于移动状态时,例如行驶的车辆、过路的行人等。由于此时障碍物也在移动,因此主车与障碍物的安全距离与本主车及移动的障碍物均有关。针对该场景下确定车辆轨迹的方式,不仅要考虑可行驶区域及安全距离问题,还应结合主车与障碍物的移动速度进行综合考量。
93.具体地,假设移动的障碍物为行驶的车辆,在本实施例中称为从车。假设主车行驶速度与从车车速较为接近,例如在预模拟生成车辆轨迹时,可设置第三阈值(如5m/s),然后判断主车行驶速度与从车车速的差值与该第三阈值的关系,以确定待行驶的车辆轨迹。
94.其中,当所述差值小于或等于第三阈值时,可认为主车行驶速度与从车车速较为接近。因此在一段时间内,只要主车与从车保持匀速行驶,就不会发生追尾。此时,为了保证生成车辆轨迹花费的成本小,生成的轨迹更短更优,主车应只利用第一可行驶区域来生成车辆轨迹,并采用“跟车”策略跟在从车后面,在保证安全距离的情况下完成自动驾驶。
95.然而,当所述差值大于第一阈值时,则需要具体分析主车行驶速度和从车车速的大小关系,以确定待行驶的车辆轨迹。具体地,此场景主要分为应用场景5和子应用场景6,具体内容如下:
96.应用场景5
97.若主车行驶速度小于从车车速,在一段时间内,只要主车与从车保持匀速行驶,则随着二者的行驶,其距离会越来越远,即不会存在追尾隐患。同样地,此时为了保证生成车辆轨迹花费的成本小,生成的车辆轨迹更短更优,主车应只利用第一可行驶区域来生成车辆轨迹,并采用“跟车”策略跟在从车后面,在保证安全距离的情况下完成自动驾驶。
98.应用场景6
99.若主车行驶速度大于从车车速,在一段时间内,若主车与从车保持匀速行驶,则随着二者的行驶,其距离会越来越近。此时若只在由第一可行驶区域内生成的车辆轨迹上行驶,就容易发生追尾事件。为了避免该现象,此时应结合第一可行驶区域与第二可行驶区域共同确定待行驶的车辆轨迹。此时,优选的轨迹方式应为:当二者的安全距离达到第一阈值时,触发变道提醒,使得本主车从第一可行驶区域变道至第二可行驶区域,避免发生追尾事件,造成严重的安全事故。当主车变道至第二可行驶区域后,为了使未来行驶轨迹更短,主车可以高于从车车速的加速变道方式完成超车动作,回到第一可行驶区域继续行驶,并保证主车与从车始终处于安全距离的范围内,避免发生安全事故。
100.需要说明的是,在面临两个或两个以上的处于移动状态的障碍物时(如多台行驶车量),主车可以根据实际场景,选择只利用第一可行驶区域生成车辆轨迹,或结合第一可行驶区域和第二可行驶区域共同确定车辆轨迹,并同时结合实际场景进行“超车”、“跟车”或“变道”等决策,以兼顾轨迹生成成本、行驶效率和行驶安全问题。具体的车辆轨迹生成方式可参照上述应用场景,此处不再进一步赘述。
101.需要强调的是,上述应用场景中所述的第一阈值设为30m、第二阈值设为10m、第三阈值设为5m/s只是本发明实施例提供的一种优选方式,在实际应用中可根据场景需要进行灵活调整,在此不作任何限定。
102.请参阅图3,在某一具体实施方式中,所述自动驾驶车辆轨迹生成方法,还包括步骤s40、当所述车辆不需要变道时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
103.可以理解的是,在步骤s20中对车辆是否需要变道已经进行了判断。其中,当车辆不需要变道,也即道路前方不存在障碍物时,直接采用如步骤s40所述的根据所述第一可行驶区域确定待行驶的车辆轨迹即为最优的方式,该方式就能够保证车辆在安全行驶的前提下,行驶的轨迹最短,同时具有成本低、效率高的优点。
104.请参阅图4,在某一具体实施方式中,还提供了第二可行驶区域的生成方法,包括步骤s01至步骤s05,各步骤具体如下:
105.s01、生成基于frenet坐标系的第一路径。
106.请参阅图5,图5为本发明实施例提供的在frenet坐标系下的轨迹分解图。其中,实线是高清地图里预先画好的车道中心线,虚线是算法规划出来的路线,l(t)是主车某个时刻t的位置投影到车道(图中的center line)上的距离,s(t)是这个投影点到车道上某个已知基准点的路线长度(弧长的积分)。因为s(t)和l(t)是互相垂直的,它们在车道线上对应的单位向量就是frenet坐标系。因此,在frenet坐标系下s(t)和l(t)两个坐标分别是沿车道和垂直于车道的直线长度,等同于把一条弯曲多变的车道变换成了一条拉直的直线车道。
107.进一步地,在frenet坐标系生成第一路径。需要说明的是,轨迹与路径的定义是不同的。轨迹(trajectory)通常是考虑时间维度的,一般表达成(x(t),y(t);t),而路径则不需要考虑时间维度,一般表达为(x,y)。本发明实施例中,为了生成第一路径,首先在frenet坐标系中生成横向轨迹和纵向轨迹,然后再把时间维度去掉,从而得到第一路径。
108.在某一可选的实施例中,利用多项式轨迹求解器生成基于frenet坐标系的第一路径。
109.一般来说,为了最小化jerk2的积分来保证行驶舒适性,至少一个五次多项式。其
中,jerk表示车辆行驶的急动度。具体地,该五次多项式的表达式如下:
110.s(t)=c0 c1t c2t2 c3t3 c4t4 c5t5ꢀꢀ
(1)
111.式中,s(t)为车辆随时间t行驶的路程,c
()
为未知数。
112.可以理解的是,五次多项式有6个未知数,四次多项式有5个未知数,因此五次多项式需要6个方程求解,四次多项式需要5个方程求解。
113.由于公式(1)得到了路程s(t),通过微分可以算出速度v(t),加速度a(t),和急动度j(t)的表达式:
114.v(t)=c1 2c2t 3c3t2 4c4t3 5c5t4ꢀꢀ
(2)
115.a(t)=2c2 6c3t 12c4t2 20c5t3ꢀꢀ
(3)
116.j(t)=6c3 24c4t 60c5t2ꢀꢀ
(4)
117.通过对公式(1)、公式(2)及公式(3)的微分操作,就能够获得3个方程。如果确定主车当前的位置s(0),速度v(0)和加速度a(0)和未来某一时刻t的位置s(t),速度v(t)和加速度a(t),就能够通过6个方程求解6个未知数c0,...,c5。
[0118][0119]
因此,根据公式(5)就可以求解未知数c0,...,c5。
[0120]
在某一具体实施方式中,优先采用区间采样的方式来确定t时刻。需要说明的是,区间采样就是通过不同组合的点生成很多线,然后对这些线(几十到上百条)的性质进行综合评估,选出对某个代价函数来说的最优路线。其中,该代价函数会综合考虑在frenet坐标系下生成出来的路线在横、纵方向上的安全度和舒适度。
[0121]
具体地,在生成轨迹时,分为横向轨迹和纵向轨迹。
[0122]
请参阅图6,图6为本发明实施例中生成的横向轨迹。其中,在与车道垂直的横向(l)轨迹上,假设在t时刻,v
l
(t)=0和a
l
(t)=0。继而需要切割的区间的维度就只剩下l(t)和t两个。由图6可知这两个维度采样得出的横向轨迹样本。t维度上选取的样本是[1,2,3,4,5]s,l(t)维度上选取的样本是[

2.4,

1.8,

1.2,

0.6,0.0,0.6,1.2,1.8,2.4]m。主车最开始的状态为l(0)=3m,v
l
(0)=0.3m/s,a
l
(0)=0m/s2。其中,图6中灰色细线表示超出车能力(横向加速度)的不可行驶轨迹,黑色细线表示可行驶的轨迹,灰色粗线a表示通过某个代价函数算出的最优轨迹。
[0123]
进一步地,纵向轨迹生成与横向类似,更适用于主车限速。此处,主要采用四次多项式解5个未知数(c0,...,c4),即表达式s(t)不会被用到。假设选定一个想到达的目标速度v
desired
,然后就可以在这个速度的基础上增加或减少少量的值,以此来选取样本。其中时间t的样本和横向的选取方法一样。由图7可知:v
desired
=5m/s;dv(t)=[

3.0,

2.5,

2.0,

1.5,

1.0,

0.5,0.0,0.5,1.0]m/s,t=[1,2,3,4,5]s。其中,灰色细线表示超出车能力(横
向加速度)的不可行驶轨迹,黑色细线表示可行驶的轨迹,灰色粗线b表示通过某个代价函数算出的最优轨迹。
[0124]
进一步地,当生成了横向与纵向的最优轨迹,采用代价函数来对轨迹进行评估,以确定最终的最优轨迹。其中,以规划周期为1s生成的最优轨迹如图8中最长的灰色粗线所示,在图8中每个圆点代表一个新的规划周期。为了可读性,黑线和灰线只显示了第一个规划周期,其它周期的取样没有显示。
[0125]
具体地,假设横向代价为cost
l
(l
i
,t
k
),纵向代价为cost
s
(dv
j
,t
k
),则有包含了横向和纵向代价的总代价的计算公式为:
[0126]
cost(l
i
,dv
j
,t
k
)=w
l
cost
l
(l
i
,t
k
) w
s
cost
s
(dv
j
,t
k
)
ꢀꢀ
(6)
[0127]
式中,i,j,k分别为对应维度的索引;w
l
、w
s
分别为权重常数。需要说明的是,在每个规划周期会重复上述的横纵向采样来选择代价最小的轨迹。
[0128]
具体地,横向代价函数的模型为:
[0129][0130]
式中,表示横向jerk的积分的惩罚,主要用于保证横向舒适度;t表示对时间的惩罚,即到达最终稳态的时间越好短越好;l(t)2表示对离车道中心线的横向距离的惩罚,即越接近中心线越好。
[0131]
其中,横向约束为:
[0132][0133]
式中,表示横向速度必须限制在一个合理范围内,防止猛打方向盘。
[0134]
具体地,纵向代价函数的模型为:
[0135][0136]
式中,表示对纵向jerk的积分的惩罚,主要用于保证纵向舒适度;t表示对时间的惩罚,即到达最终稳态的时间越好短越好;(v(t)

v
ref
(t))2表示对偏离限速v
ref
的误差的惩罚,即越接近限速越好。
[0137]
其中,纵向约束为:
[0138]
v
min
≤v(t)≤v
max
,t∈[0,t]
ꢀꢀ
(10)
[0139]
a
min
≤a(t)≤a
max
,t∈[0,t]
ꢀꢀ
(11)
[0140]
在某一可选的实施例中,需要说明的是,如果t维度的样本或者代价函数里面的项选取得不恰当,会造成每个规划周期出来的线不能和上一个周期的对上,造成跳动。如图9所示,在图9中每个相邻t样本相差2s,但是规划周期是1s,这样以来便会会导致下一个周期算出来的线不能与当前周期的重合,即相邻规划周期的轨迹无法连贯起来。因此,为了保证不同规划周期的轨迹的连贯性,需要保证采样间隔值小于规划周期。此外,代价函数里面有一项为误差在时间段[0,t]上的积分,而这项在每个规划周期中都会变化,进一步导致轨迹跳动,如图10所示。其中,横纵向的误差的定义分别为:l(t)、dv(t)。在本发明实施例中,为了避免误差变化导致轨迹跳动的问题,不能采用误差在整个时间段的积分,而是利用最后
稳态时刻的误差l(t)、dv(t)在整个时间段的积分。
[0141]
s02、根据frenet坐标系与xy坐标系的映射关系,将所述第一路径转换为基于xy坐标系的第二路径。
[0142]
本步骤中,从frenet坐标系转回xy坐标系后,把最优轨迹的时间维度去掉,出来的路径会按照车道形状拉伸回来,即将第一路径转化为第二路径。其中,frenet坐标系下的轨迹和xy坐标系下的路径分别如图11、12所示。
[0143]
具体地,根据当前车道,把每个路径点的坐标从(s,l)转换成(x,y),然后根据与该点相邻两个点的坐标(x1,y1),(x2,y2),计算出这两点构成线段的朝向
[0144]
s03、在所述xy坐标系中对所述第二路径进行区域扩张,并计算扩张后的区域边界。
[0145]
这一步中,以每个路径点(x,y,θ)为中心,向垂直方向扩张半个行驶区域宽度,算出左右边界的坐标(x
b
,y
b
)。
[0146]
s04、将所述区域边界映射到所述frenet坐标系中,生成约束条件。
[0147]
这一步中,将左右边界(x
b
,y
b
)重新投影回车道的frenet坐标系下,得到:
[0148]
(x
l
,y
l
)

(s
l
,l
l
)
[0149]
(x
r
,y
r
)

(s
r
,l
r
)
[0150]
s05、利用所述约束条件对所述第一路径进行规划,生成第二可行驶区域。
[0151]
最后,利用mpc算法把(s
l
,l
l
)和(s
r
,l
r
)作为约束条件来做轨迹规划,生成第二可行驶区域。
[0152]
本发明实施例提供的自动驾驶车辆轨迹生成方法,通过判断车辆是否变道,以辅助车辆进行正确的行驶决策;此外,在判断车辆为需要变道时,结合第一可行驶区域和第二可行驶区域共同确定车辆轨迹,如此不仅能够保证车辆成功躲避障碍物,提高了车辆行驶的安全性,同时还能够保证车辆以最优的距离行驶,兼顾车辆的行驶效率和花费成本。本发明实施例能够克服现有的自动驾驶车辆轨迹规划方法中存在的局限性,具有适用性强、安全性高及成本低的优点。
[0153]
请参阅图13,本发明某一具体实施例中还提供了一种自动驾驶车辆轨迹生成装置,包括:行驶状态获取单元01、判断单元02和第一轨迹生成单元03。具体地,包括如下内容:
[0154]
行驶状态获取单元01,用于获取车辆的行驶状态;
[0155]
判断单元02,用于根据所述行驶状态,判断所述车辆是否需要变道;
[0156]
第一轨迹生成单元03,用于当所述车辆需要变道时,生成第一可行驶区域和第二可行驶区域,并根据所述第一可行驶区域和所述第二可行驶区域确定待行驶的车辆轨迹。
[0157]
请参阅图14,在某一具体实施方式中,所述自动驾驶车辆轨迹生成装置,还包括:第二轨迹生成单元04,用于当所述车辆不需要变道时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
[0158]
在某一具体实施方式中,所述第一轨迹生成单元03,还用于:
[0159]
当所述车辆需要变道时,判断障碍物是否为静止状态;
[0160]
若所述障碍物为静止状态,在未到达障碍物所在路段时,根据所述第一可行驶区
域确定待行驶的车辆轨迹;在经过障碍物所在路段及超过障碍物所在路段时,根据所述第二可行驶区域确定待行驶的车辆轨迹;在超过障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
[0161]
在某一具体实施方式中,所述第一轨迹生成单元03,还用于:
[0162]
若所述障碍物为移动状态,计算车辆行驶速度与障碍物移动速度的差值;
[0163]
当所述差值大于预设阈值且车辆行驶速度大于障碍物移动速度时,在未到达障碍物所在路段时,根据所述第一可行驶区域确定待行驶的车辆轨迹;在经过障碍物所在路段时,根据所述第二可行驶区域确定待行驶的车辆轨迹;
[0164]
当所述差值大于预设阈值且车辆行驶速度小于障碍物移动速度,或所述差值小于预设阈值时,根据所述第一可行驶区域确定待行驶的车辆轨迹。
[0165]
请参阅图15,在某一可选的实施方式中,所述第一轨迹生成单元03还包括:第二可行驶区域生成单元032,主要用于生成第二可行驶区域。其中,该第二可行驶区域生成单元032又包括以下各个子单元,具体包括如下内容:
[0166]
第一路径生成单元0321,用于生成基于frenet坐标系的第一路径;
[0167]
转换单元0322,用于根据frenet坐标系与xy坐标系的映射关系,将所述第一路径转换为基于xy坐标系的第二路径;
[0168]
路径扩张单元0323,用于在所述xy坐标系中对所述第二路径进行区域扩张,并计算扩张后的区域边界;
[0169]
约束条件生成单元0324,用于将所述区域边界映射到所述frenet坐标系中,生成约束条件;
[0170]
目标区域生成单元0325,用于利用所述约束条件对所述第一路径进行规划,生成第二可行驶区域。
[0171]
在某一可选地实施方式中,所述第一轨迹生成单元03还包括:第一可行驶区域生成单元031,如图15所示。其中,第一可行驶区域生成单元031,用于对获取的地图道路扩张预设宽度,生成第一可行驶区域。
[0172]
本发明实施例提供的自动驾驶车辆轨迹生成装置更详细的工作原理和流程可以但不限于参见上文自动驾驶车辆轨迹生成方法的相关记载。
[0173]
可以理解的是,本发明实施例提供的自动驾驶车辆轨迹生成装置用于执行如上任一项实施例所述的自动驾驶车辆轨迹生成方法。本发明实施例通过判断车辆是否变道,以辅助车辆进行正确的行驶决策;此外,在判断车辆为需要变道时,结合第一可行驶区域和第二可行驶区域共同确定车辆轨迹,不仅能够保证车辆成功躲避障碍物,提高了车辆行驶的安全性,同时还能够保证车辆以最优的距离行驶,兼顾车辆的行驶效率和花费成本。本发明实施例能够克服现有的自动驾驶车辆轨迹规划方法中存在的局限性,具有适用性强、安全性高及成本低的优点。
[0174]
请参阅图16,本发明某一具体实施例中还提供了一种终端设备,包括:
[0175]
一个或多个处理器;
[0176]
存储器,与所述处理器耦接,用于存储一个或多个程序;
[0177]
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的自动驾驶车辆轨迹生成方法。
[0178]
具体地,处理器用于控制该终端设备的整体操作,以完成上述的自动驾驶车辆轨迹生成方法的全部或部分步骤。存储器用于存储各种类型的数据以支持在该终端设备的操作,这些数据例如可以包括用于在该终端设备上操作的任何应用程序或方法的指令,以及应用程序相关的数据。该存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read

only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read

only memory,简称eprom),可编程只读存储器(programmable read

only memory,简称prom),只读存储器(read

only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。
[0179]
在某一示例性实施例中,终端设备可以被一个或多个应用专用集成电路(application specific 1ntegrated circuit,简称as1c)、数字信号处理器(digital signal processor,简称dsp)、数字信号处理设备(digital signal processing device,简称dspd)、可编程逻辑器件(programmable logic device,简称pld)、现场可编程门阵列(field programmable gate array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行如上述任一项实施例所述的自动驾驶车辆轨迹生成方法,并达到如上述方法一致的技术效果。
[0180]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0181]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0182]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0183]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
[0184]
在另一示例性实施例中,本发明还提供一种包括计算机程序的计算机可读介质,
该计算机程序被处理器执行时实现如上述任一项实施例所述的自动驾驶车辆轨迹生成方法的步骤。例如,本发明实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质的更具体的示例至少(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式只读存储器(cdrom)。另外,计算机可读存储介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
[0185]
在本发明实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于指令执行系统、输入法或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、射频(radio frequency,rf)等等,或者上述的任意合适的组合。
[0186]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0187]
本技术领域的普通技术人员可以理解实现上述实施例所述方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0188]
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。存储介质可以是只读存储器,磁盘或光盘等。
[0189]
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜