自动驾驶车辆及其运动轨迹的动态规划方法及系统
技术领域
本发明涉及自动驾驶技术领域,尤其涉及一种自动驾驶车辆及其运动轨迹的动态规划方法及系统。
背景技术
自动驾驶车辆发展迅速,自动驾驶技术是车辆工程发展的必然趋势。自动驾驶技术契合环境友好理念,顺应社会发展高效低成本要求,更加便于人们的工作与生活。自动驾驶技术包括定位、感知、决策、以及控制四大模块,其中定位模块获得车辆当前在具体地图中的精确位置,感知模块动态采集周围环境的信息数据,决策模块将收集上来的定位与感知信息进行加工处理并制定安全轨迹,控制模块根据决策模块下达的规划轨迹横纵向控制车辆运动。
轨迹规划是自动驾驶领域的核心技术之一。车辆的轨迹规划指的是已知车辆的起始状态、目标状态和环境中的障碍物分布,规划出一条与障碍物不相碰撞的且满足车辆的运动学约束、环境约束和时间约束的可行驶轨迹。在自动驾驶技术蓬勃发展的背景下,设计自动驾驶车辆的避障策略、研究合理的控制方法、规划不同道路是亟需解决的问题。
发明内容
本发明提供了一种自动驾驶车辆及其运动轨迹的动态规划方法及系统,解决了自动驾驶车辆运动轨迹的规划问题。
第一方面,本发明实施例提供一种自动驾驶车辆运动轨迹的动态规划方法,所述动态规划方法包括:
获取当前时刻自动驾驶车辆的位置;
感知所述自动驾驶车辆周围环境的环境数据;
从所述环境数据中提取关于车道的车道信息,其中,所述车道信息包括车道线的位置;
根据所述自动驾驶车辆当前时刻的位置、高清地图和所述车道信息获取所述自动驾驶车辆的第一可行驶区域,所述第一可行驶区域包括设置于两条车道边缘线之间的车道区、以及设置于每条所述车道边缘线与相邻路牙之间的路肩;
从所述环境数据中提取关于静态物体的静态信息,其中,所述静态信息包括所述静态物体的位置、以及所述静态物体占据的静态区域;
从所述环境数据中提取关于动态物体的动态信息,并根据所述动态信息预测所述动态物体的运动轨迹;
根据所述第一可行驶区域、所述静态信息、所述运动轨迹、以及所述车道信息规划出第二可行驶区域。
第二方面,本发明实施例提供一种自动驾驶车辆运动轨迹的动态规划系统,所述动态规划系统包括:
定位模块,用于获取当前时刻自动驾驶车辆的位置;
感测设备,用于感知所述自动驾驶车辆周围环境的环境数据;
第一提取模块,用于从所述环境数据中提取关于车道的车道信息,其中,所述车道信息包括车道线的位置;
获取模块,用于根据所述自动驾驶车辆当前时刻的位置、高清地图和所述车道信息获取所述自动驾驶车辆的第一可行驶区域,所述第一可行驶区域包括设置于两条车道边缘线之间的车道区、以及设置于每条所述车道边缘线与相邻路牙之间的路肩;
第二提取模块,用于从所述环境数据中提取关于静态物体的静态信息,其中,所述静态信息包括所述静态物体的位置、以及所述静态物体占据的静态区域;
第三提取模块,用于从所述环境数据中提取关于动态物体的动态信息,并根据所述动态信息预测所述动态物体的运动轨迹;
规划模块,用于根据所述第一可行驶区域、所述静态信息、所述运动轨迹、以及所述车道信息规划出第二可行驶区域。
第三方面,本发明实施例提供一种自动驾驶车辆,所述自动驾驶车辆包括车身,所述自动驾驶车辆还包括设置于所述车身的感测设备、以及数据处理设备,所述数据处理设备包括处理器和存储器,所述存储器用于存储自动驾驶车辆运动轨迹的动态规划程序指令,所述处理器用于执行所述自动驾驶车辆运动轨迹的动态规划程序指令以实现自动驾驶车辆运动轨迹的动态规划方法,所述自动驾驶车辆运动轨迹的动态规划方法包括:
获取当前时刻自动驾驶车辆的位置;
感知所述自动驾驶车辆周围环境的环境数据;
从所述环境数据中提取关于车道的车道信息,其中,所述车道信息包括车道线的位置;
根据所述自动驾驶车辆当前时刻的位置、高清地图和所述车道信息获取所述自动驾驶车辆的第一可行驶区域,所述第一可行驶区域包括设置于两条车道边缘线之间的车道区、以及设置于每条所述车道边缘线与相邻路牙之间的路肩;
从所述环境数据中提取关于静态物体的静态信息,其中,所述静态信息包括所述静态物体的位置、以及所述静态物体占据的静态区域;
从所述环境数据中提取关于动态物体的动态信息,并根据所述动态信息预测所述动态物体的运动轨迹;
根据所述第一可行驶区域、所述静态信息、所述运动轨迹、以及所述车道信息规划出第二可行驶区域。
上述自动驾驶车辆及其运动轨迹的动态规划方法及系统,通过感知当前时刻自动驾驶车辆周围的环境并分析周围环境中的车道信息、静态信息、以及动态信息等,合理地对自动驾驶车辆可行驶的区域进行规划,实现对自动驾驶车辆运动轨迹的动态规划。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明实施例提供的动态规划方法的流程图。
图2为本发明第一实施例提供的自动驾驶车辆周围环境的示意图。
图3为本发明实施例提供的自动驾驶车辆的内部结构示意图。
图4为本发明第一实施例提供的第一可行驶区域的示意图。
图5为本发明第二实施例提供的第一可行驶区域的示意图。
图6为本发明第一实施例提供的第二可行驶区域的示意图。
图7为本发明第一实施例提供的第三可行驶区域的示意图。
图8为本发明第三实施例提供的第三可行驶区域的示意图。
图9为本发明实施例提供的提取无法识别物体的静态信息的流程图。
图10为图2所示的周围环境X部分的局部放大图。
图11为本发明实施例提供的提取静止状态下可动物体的静态信息的流程图。
图12为图2所示的周围环境Y部分的局部放大图。
图13为本发明第一实施例提供的动态物体运动轨迹的示意图。
图14为本发明实施例提供的动态规划方法的子流程图。
图15为本发明第一实施例提供的可行驶路线的示意图。
图16为本发明实施例提供的动态规划系统的内部结构示意图。
图17为本发明实施例提供的自动驾驶车辆的示意图。
图18为本发明实施例提供的自动驾驶车辆的内部结构示意图。
其中,图中各元件标号:
标号 |
名称 |
标号 |
名称 |
100、20、30 |
自动驾驶车辆 |
L |
车道线 |
10 |
动态规划系统 |
L1 |
车道边缘线 |
11、31 |
定位模块 |
K1、K2、K3、K4 |
车道 |
12、22、32 |
感测设备 |
Q1、Q4 |
第一可行驶区域 |
13、33 |
第一提取模块 |
Q2 |
第二可行驶区域 |
14、34 |
获取模块 |
Q3 |
第三可行驶区域 |
15、35 |
第二提取模块 |
J |
路牙 |
16、36 |
第三提取模块 |
A |
施工路牌 |
17、37 |
规划模块 |
B |
临时施工防护墙 |
18、38 |
执行模块 |
C |
交通锥 |
21 |
车身 |
D |
公交站台 |
23 |
数据处理设备 |
E |
公交车 |
231 |
处理器 |
F1、F2 |
车辆 |
232 |
存储器 |
G |
行人 |
31 |
定位模块 |
N |
交通锥的静态区域 |
32 |
感测模块 |
M |
公交车的拓展区域 |
H1、H2 |
可行驶路线 |
P |
动态区域 |
T1、T2 |
自行车道 |
R1、R2、R3、R4 |
狭缝区域 |
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。说明书附图示出本发明的实施例的示例,其中,相同的标号表示相同的元件。可以理解的是,说明书附图示出的比例并非本发明实际实施的比例,其仅为示意说明为目的,并非依照原尺寸作图。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,换句话说,描述的实施例根据除了这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,还可以包含其他内容,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于只清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者多个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
请结合参看图1、图2、图3和图4,其为本发明实施例提供的动态规划方法的流程图、第一实施例提供的自动驾驶车辆周围环境的示意图、自动驾驶车辆的内部结构示意图和第一实施例提供的第一可行驶区域的示意图。在本实施例中,自动驾驶车辆30为轿车。在一些可行的实施例中,自动驾驶车辆30可以是摩托车、卡车、运动型多用途车辆(SUV)、休闲车辆(RV)、船舶、飞行器等任何其它运输设备。在示例性实施例中,自动驾驶车辆30具有所谓的四级或五级自动化系统。四级自动化系统指的是“高度自动化”,具有四级自动化系统的车辆原则上在其功能范围内不再需要人类驾驶员参加,即使人类驾驶员对干预请求没有做出适当响应,车辆也具备自动达到最小风险状态的能力。五级系统指的是“全自动化”,具有五级自动化系统的车辆可以在任何合法的、可行驶的道路环境下实现自动驾驶,人类驾驶员仅需要设置好目的地并开启系统,车辆就可以通过最优化的路线行驶至指定地点。自动驾驶车辆运动轨迹的动态规划方法包括如下步骤。
步骤S102,获取当前时刻自动驾驶车辆的位置。具体地,本方法通过设置于自动驾驶车辆30的定位模块31获取自动驾驶车辆30当前时刻的位置。其中,定位模块31包括但不限于全球定位系统、北斗卫星导航系统、惯性测量单元等,在此不做限定。
步骤S104,感知自动驾驶车辆周围环境的环境数据。具体地,本方法先通过设置于自动驾驶车辆30的感测设备32检测自动驾驶车辆30周围的环境以获得感测数据;再根据前融合感知算法或者后融合感知算法对感测数据进行感知处理得到环境数据。在本实施例中,感测设备32为一体平板式传感器装置,感测设备32设置于自动驾驶车辆30的车顶中间的位置。在一些可行的实施例中,感测设备32可以为非平板凸起式传感器装置,也可以为分体式传感器装置,即是说,感测设备32的类型不限于此,感测设备32设置于自动驾驶车辆30的位置亦不限于此,在此不做限定。其中,感测设备32包括但不限于雷达、激光雷达、热像仪、图像传感器、红外仪、超声波传感器等具有感知功能的传感器。感测设备32通过各种传感器来获取自动驾驶车辆30周围的感测数据,其中,感测数据包括但不限于雷达检测数据、激光雷达检测数据、热像仪检测数据、图像传感器检测数据、红外仪检测数据、超声波传感器检测数据等。若采用前融合感知算法对感测数据进行感知处理,则先将各种传感器检测数据进行数据同步,再对同步后的数据进行感知处理以得到环境数据。若采用后融合感知算法对感测数据进行感知处理,则先分别对不同传感器检测数据进行感知得到相应的传感器目标数据,再将各种传感器目标数据进行数据融合得到环境数据。在一些可行的实施例中,可以采用混合融合感知算法,也可以采用多种融合感知算法并用的方式对感测数据进行感知处理,在此不做限定。其中,若采用混合融合感知算法,则混合前融合感知算法和后融合感知算法对各种传感器检测数据进行处理以得到环境数据。若采用多种融合感知算法并用的方式,则并列使用前融合感知算法、后融合感知算法、以及混合融合感知算法,或者将前融合感知算法、后融合感知算法、以及混合融合感知算法以一定的方法结合起来以得到环境数据。下文将以图2所示的周围环境为例进行详细描述。
步骤S106,从环境数据中提取关于车道的车道信息。具体地,本方法通过设置于自动驾驶车辆30的第一提取模块33从环境数据中提取车道信息。其中,车道信息包括车道线L的位置、车道线L的颜色、车道线L的语义信息、以及自动驾驶车辆30当前所在的车道等。当前周围环境中包括四条车道K1、K2、K3、以及K4,为双向四车道。其中,车道K1和车道K2同向,车道K3和车道K4同向,自动驾驶车辆30位于最右侧车道K1。
步骤S108,根据自动驾驶车辆当前时刻的位置、高清地图和车道信息获取自动驾驶车辆的第一可行驶区域。具体地,本方法通过设置于自动驾驶车辆30的获取模块34获取第一可行驶区域Q1。其中,第一可行驶区域Q1包括设置于两条车道边缘线L1之间的车道区、以及设置于每条车道边缘线L1与相邻路牙J之间的路肩。当前周围环境中,第一可行驶区域Q1包括四条车道、以及两条车道边缘线L1与相邻路牙J之间的两条路肩。当自动驾驶车辆30当前所在的车道被障碍物,如交通锥、施工路牌、临时施工防护墙等堵住时,自动驾驶车辆30需要一部分超出当前车道进行绕行才得以通过当前区域。故将自动驾驶车辆30的可行驶区域向两侧车道进行扩大,以使得自动驾驶车辆30能够做出超出车道行驶的行为。可以理解地,车道边缘线L1与相邻路牙J之间的路肩虽然为非车道区域,但在某些情况下,如自动驾驶车辆30当前所在的车道被相邻车道的车辆占据了一部分、或被障碍物等堵住,需要借助路肩才能通过当前行驶的区域时,路肩也可作为驾驶区域供自动驾驶车辆30行驶。
步骤S110,从环境数据中提取关于静态物体的静态信息。具体地,本方法通过设置于自动驾驶车辆30的第二提取模块35提取静态信息。其中,静态物体包括但不限于静止的行人、静止的车辆、交通锥、施工路牌、临时施工防护墙等,静态信息包括静态物体的位置、以及静态物体占据的静态区域。当前周围环境中,静态物体包括位于自动驾驶车辆30行驶方向前方的施工路牌A、位于施工路牌A远离自动驾驶车辆30一侧的临时施工防护墙B、位于临时施工防护墙B远离路牙J一侧的交通锥C、以及位于最左侧车道停靠于公交站台D的公交车E。其中,临时施工防护墙B围设的区域包括右侧路牙J、右侧车道边缘线L1与右侧路牙J之间的部分路肩、自动驾驶车辆30当前所在车道K1的部分区域、以及位于自动驾驶车辆30左侧车道K2的部分区域。针对不同的静态物体提取相应的静态信息具体将在下文详细描述。
步骤S112,从环境数据中提取关于动态物体的动态信息,并根据动态信息预测动态物体的运动轨迹。具体地,本方法通过设置于自动驾驶车辆30的第三提取模块36提取动态信息。其中,动态物体包括但不限于车道上行驶中的车辆、人行道上行走的行人、正在过马路的行人等,动态信息包括但不限于动态物体的位置、动态物体的运动方向、动态物体的速度值等。当前周围环境中,动态物体包括在右侧人行道上行走的行人G、行驶于车道K2的车辆F1、以及行驶于车道K3的车辆F2。其中,行人G向自动驾驶车辆30行驶的方向行走,车辆F1即将驶出当前周围环境,车辆F2位于自动驾驶车辆30的左前方且已驶过与临时施工防护墙B相对的区域。第三提取模块36将动态物体表示为正方体、长方体、或者其它多面体等具有规则形状的立体图形,并根据动态信息预测出相应的运动轨迹。在当前周围环境中,行人G、车辆F1和车辆F2均可用长方体表示,行人G、车辆F1和车辆F2的运动轨迹均为向相应运动方向无限延伸的长方体,请参看图13。
步骤S114,根据第一可行驶区域、静态信息、运动轨迹、以及车道信息规划出第二可行驶区域。本方法通过设置于自动驾驶车辆30的规划模块37规划第二可行驶区域Q2,具体将在下文详细描述。
上述实施例中,感知当前时刻自动驾驶车辆周围的环境并获取环境数据,从环境数据中提取出车道信息、静态信息、以及动态信息等。其中,从环境数据中提取关于车道的车道信息、关于静态物体的静态信息、以及关于动态物体的动态信息可以同步执行,也可以分步执行,在此不做限定。根据自动驾驶车辆当前时刻的位置、高清地图和车道信息获取自动驾驶车辆的第一可行驶区域。其中,第一可行驶区域除了可行驶的车道外,还包括路肩,以使得自动驾驶车辆能够做出超出车道行驶的行为。再根据第一可行驶区域、车道信息、静态信息、以及动态信息等对自动驾驶车辆的运动轨迹进行动态规划。
请结合参看图5,其为本发明第二实施例提供的第一可行驶区域的示意图。第二实施例提供的第一可行驶区域Q4和第一实施例提供的第一可行驶区域Q1的不同之处在于,第二实施例提供的第一可行驶区域Q4还包括位于车道K1右侧的自行车道T1和位于车道K4左侧的自行车道T2。第二实施例提供的第一可行驶区域Q4的其它结构与第一实施例提供的第一可行驶区域Q1的基本一致,在此不再赘述。在一些可行的实施例中,第一可行驶区域Q1还包括可供自动驾驶车辆30行驶的路边停车区域等。
上述实施例中,第一可行驶区域还包括位于车道两侧的自行车道、路边停车区域等,进一步对自动驾驶车辆的可行驶范围进行扩充,以使得自动驾驶车辆进行运动轨迹的动态规划时具有更大的规划范围。
请结合参看图9和图10,其为本发明实施例提供的提取无法识别物体的静态信息的流程图和示意图。步骤S110,从环境数据中提取关于静态物体的静态信息,具体包括如下步骤。
步骤S1102,判断静态物体是否为无法识别的物体。具体地,自动驾驶车辆30当前的周围环境中可能包括自动驾驶车辆30无法识别的物体,则需要利用其它方式进行识别。
步骤S1104,当静态物体为无法识别的物体时,利用感测数据构建占位栅格地图。具体地,本方法利用感测设备32中的激光雷达获取的激光雷达检测数据构建占位栅格地图,即,将当前周围环境划分为栅格图,判断每一网格的状态。其中,网格的状态包括空和被占用两种。
步骤S1106,从占位栅格地图中获取静态物体占据的静态区域。具体地,本方法通过判断网格的状态可知,当网格的状态为被占用时,无法识别的物体占据该区域;当网格的状态为空时,无法识别的物体没有占据该区域。当前周围环境中,交通锥C为罕见的交通锥,是自动驾驶车辆30无法识别的静态物体。通过占位栅格地图获取被占用的网格,将相邻的被占用的网格连接起来即可知交通锥C占据的静态区域N。
请结合参看图11和图12,其为本发明实施例提供的提取静止状态下可动物体的静态信息的流程图和提取静止车辆的静态信息的示意图。步骤S110,从环境数据中提取关于静态物体的静态信息,还包括如下步骤。
步骤S1101,判断静态物体是否为静止状态下的可动物体。具体地,静止状态下的可动物体为当前时刻处于静止状态但下一时刻可能处于动态状态的物体。其中,静止状态下的可动物体包括但不限于静止的车辆、静止的行人、以及静止的动物等。举例来说,静止站立的行人可能在下一时刻会做出向外伸展手臂或者腿部等的动作,也可能在下一时刻朝向某个方向进行走动。当静止状态下的可动物体为静止的车辆时,还需要防止下一时刻其它物体从静止的车辆中向外延伸出来。举例来说,静止的车辆可能在下一时刻将车门打开,停靠于公交站台的公交车的车门处可能在下一时刻会伸出残疾人轮椅架,停靠于路边的货车货柜的柜门处可能在下一时刻会有货物等从货柜中向外搬出。
步骤S1103,当静态物体为静止状态下的可动物体时,沿静态物体的外轮廓线向外延伸预设距离形成拓展区域。具体地,本方法从静态信息中获取静态物体的外轮廓线,并将外轮廓线向外延伸预设距离。在本实施例中,预设距离为1米。在一些可行的实施例中,预设距离可以为其它合适的长度,在此不做限定。当前周围环境中,静止状态下的可动物体为停靠于公交站台D的公交车E,则沿公交车E的外轮廓线向外延伸1米的距离形成公交车E的拓展区域M。
步骤S1105,从拓展区域中获取静态物体占据的静态区域。在本实施例中,公交车E占据的静态区域就是公交车E的拓展区域M。在一些可行的实施例中,公交车E占据的静态区域可以包括公交车E自身占据的区域和公交车E靠近公交站台D一侧的拓展区域M,在此不做限定。
在一些可行的实施例中,当静止的行人站立在静止的车辆旁边,分别沿行人和车辆的外轮廓线向外延伸预设距离形成行人拓展区域和车辆拓展区域时,行人拓展区域可以包括行人和车辆之间的区域,车辆拓展区域也可以包括行人和车辆之间的区域。
上述实施例中,沿静止状态下的可动物体的外轮廓线向外延伸预设距离形成拓展区域,防止当前时刻处于静止状态的物体下一时刻变为动态状态,对自动驾驶车辆运动轨迹的规划行驶造成影响,使得自动驾驶车辆的行驶更加安全。
当静态物体为其它可识别的物体或者不可动的物体时,从环境数据中提取关于静态物体的静态信息包括但不限于直接从环境数据中获取静态物体占据的静态区域。在本实施例中,施工路牌A和临时施工防护墙B均为可识别物体,则施工路牌A所占据的区域为其静态区域,临时施工防护墙B所占据的区域为其静态区域。
请结合参看图4、图6和图7,其为本发明第一实施例提供的第一可行驶区域的示意图、第一实施例提供的第二可行驶区域的示意图和第一实施例提供的第三可行驶区域的示意图。步骤S114,根据第一可行驶区域、静态信息、运动轨迹、以及车道信息规划出第二可行驶区域,具体包括如下步骤。
步骤S1142,将静态区域、运动轨迹所占据的动态区域从第一可行驶区域中剔除以形成第三可行驶区域。具体地,规划模块37根据动态物体的运动轨迹得到运动轨迹所占据的动态区域P,并将静态区域、动态区域P从第一可行驶区域Q1中剔除,即在第一可行驶区域Q1中将静态区域和动态区域P删除,以形成第三可行驶区域Q3。
在一些可行的实施例中,静态信息还可以包括但不限于静态物体与静态物体之间、静态物体与路牙J之间等的狭缝区域,这些狭缝区域是自动驾驶车辆30无法驶入的区域。优选地,判断静态区域之间的距离、静态区域与路牙J之间的距离是否为预设距离。其中,预设距离为自动驾驶车辆30可以驶入的距离。当静态区域之间的距离或者静态区域与路牙J之间的距离小于预设距离时,将静态区域之间的区域或者静态区域与路牙J之间的区域判定为狭缝区域。例如,施工路牌A和临时施工防护墙B之间的区域R1、交通锥C之间的区域R2、交通锥C和临时施工防护墙B之间的区域R3、以及公交车E和左侧路牙J之间的区域R4均为自动驾驶车辆30无法驶入的狭缝区域(如图8所示)。形成第三可行驶区域Q3时,规划模块37将静态区域、狭缝区域、以及动态区域P从第一可行驶区域Q1中删除以形成第三可行驶区域Q3。
上述实施例中,将静态区域之间、静态区域与路牙之间自动驾驶车辆无法驶入的狭缝区域从第一可行驶区域Q1中删除,使得自动驾驶车辆运动轨迹的规划更加符合现实情况。
步骤S1144,根据第三可行驶区域和车道信息规划出第二可行驶区域。具体地,当前周围环境中,根据车道信息可知,自动驾驶车辆30可以行驶的车道为车道K1和车道K2。但由于临时施工防护墙B和交通锥C占据了车道K2的部分区域,自动驾驶车辆30需要超越部分车道线L并占用车道K3才能通过当前区域。通过分析车道K3上的车辆F2的动态区域P可知,若自动驾驶车辆30占用车道K3行驶,车辆F2对自动驾驶车辆30不会造成影响。故,第二可行驶区域Q2包括右侧车道边缘线L1和右侧路牙J之间的路肩、没有被占用的车道K1的部分区域、没有被占用的车道K2的部分区域、以及车道K3的部分区域。
请结合参看图14和图15,其为本发明实施例提供的动态规划方法的子流程图和第一实施例提供的可行驶路线的示意图。自动驾驶车辆运动轨迹的动态规划方法还包括如下步骤。
步骤S116,将第二可行驶区域划分为若干可行驶路线,并将若干可行驶路线按预设规则进行排序。具体地,规划模块37对第二可行驶区域Q2进行分析,并根据自动驾驶车辆30自身的大小等将第二可行驶区域Q2划分为若干可行驶路线。其中,预设规则为将若干可行驶路线按行驶距离的长短进行排序。在一些可行的实施例中,预设规则可以为将若干可行驶路线按需要转弯的次数的多少进行排序,预设规则还可以将若干可行驶路线按在运动轨迹规划中其它的考量因素进行排序,在此不做限定。在当前周围环境中,将第二可行驶区域Q2划分为两条可行驶路线H1和H2。其中,可行驶路线H1中,自动驾驶车辆30占用车道K3后一直沿着车道K2行驶;可行驶路线H2中,自动驾驶车辆30占用车道K3后驶入车道K1并一直沿着车道K1行驶,即可行驶路线H1行驶的距离短于可行驶路线H2。
步骤S118,从若干可行驶路线中选择最优可行驶路线并执行最优可行驶路线。具体地,通过设置于自动驾驶车辆30的执行模块38从可行驶路线H1和H2中选择最优可行驶路线。由于可行驶路线H1行驶的距离短于可行驶路线H2,故选择可行驶路线H1作为最优可行驶路线并执行。但由于可行驶路线H1距离交通锥C和临时施工防护墙B较远,整体行驶速度可以较快且平稳;而可行驶路线H2距离交通锥C和临时施工防护墙B较近,在靠近交通锥C和临时施工防护墙B时,行驶速度需放慢,而远离交通锥C和临时施工防护墙B时,行驶速度可加快,故用户体验可能不如可行驶路线H1,故这两条可行驶路线各有优势,自动驾驶系统可根据用户习惯或用户类型预设规则,以选择适合用户的可行驶路线作为最优可行驶路线。
上述实施例中,通过感知当前时刻自动驾驶车辆周围的环境并分析周围环境中的车道信息、静态信息、以及动态信息等,合理地对自动驾驶车辆可行驶的区域进行规划,实现对自动驾驶车辆运动轨迹的动态规划。在本实施例中,由于自动驾驶车辆的可行驶区域包括路肩、逆行车道、自行车道、以及路边停车区域等,让自动驾驶车辆能够实现更连贯自然的换道行驶。同时,可行驶区域既支持自动驾驶车辆紧急停靠路边,也支持自动驾驶车辆占用逆行车道实现运动轨迹的智能规划,打破了车道对自动驾驶车辆行驶的限制,使得自动驾驶车辆的规划能力得到拓展。
请参看图16,其为本发明实施例提供的动态规划系统的内部结构示意图。自动驾驶车辆100运动轨迹的动态规划系统10包括定位模块11、感测设备12、第一提取模块13、获取模块14、第二提取模块15、第三提取模块16、以及规划模块17。
定位模块11用于获取当前时刻自动驾驶车辆100的位置。其中,定位模块11包括但不限于全球定位系统、北斗卫星导航系统、惯性测量单元等,在此不做限定。
感测设备12用于感知自动驾驶车辆周围环境的环境数据。具体地,感测设备12先检测自动驾驶车辆100周围的环境以获得感测数据;再根据前融合感知算法或者后融合感知算法对感测数据进行感知处理得到环境数据。其中,感测设备12可以为一体平板式传感器装置,可以为非平板凸起式传感器装置,也可以为分体式传感器装置。感测设备12包括但不限于雷达、激光雷达、热像仪、图像传感器、红外仪、超声波传感器等具有感知功能的传感器。感测设备12通过各种传感器来获取自动驾驶车辆100周围的感测数据,其中,感测数据包括但不限于雷达检测数据、激光雷达检测数据、热像仪检测数据、图像传感器检测数据、红外仪检测数据、超声波传感器检测数据等。
第一提取模块13用于从环境数据中提取关于车道的车道信息。其中,车道信息包括车道线的位置。
获取模块14用于根据自动驾驶车辆当前时刻的位置、高清地图和车道信息获取自动驾驶车辆的第一可行驶区域。其中,第一可行驶区域包括设置于两条车道边缘线之间的车道区、以及设置于每条车道边缘线与相邻路牙之间的路肩。在一些可行的实施例中,第一可行驶区域还包括可供自动驾驶车辆100行驶的自行车道、路边停车区域等。
第二提取模块15用于从环境数据中提取关于静态物体的静态信息。其中,静态物体包括但不限于静止的车辆、交通锥、施工路牌、临时施工防护墙等,静态信息包括静态物体的位置、以及静态物体占据的静态区域。
第三提取模块16用于从环境数据中提取关于动态物体的动态信息,并根据动态信息预测动态物体的运动轨迹。其中,动态物体包括但不限于车道上行驶中的车辆、人行道上行走的行人、正在过马路的行人等,动态信息包括但不限于动态物体的位置、动态物体的运动方向、动态物体的速度值等。
规划模块17用于根据第一可行驶区域、静态信息、运动轨迹、车道信息规划出第二可行驶区域。具体地,规划模块17用于将静态物体占据的静态区域、运动轨迹所占据的动态区域从第一可行驶区域中剔除并根据车道信息规划出第二可行驶区域。
规划模块17还用于将第二可行驶区域划分为若干可行驶路线,并将若干可行驶路线按预设规则进行排序。具体地,规划模块17对第二可行驶区域进行分析,并根据自动驾驶车辆100自身的大小等将第二可行驶区域划分为若干可行驶路线。其中,预设规则为将若干可行驶路线按行驶距离的长短进行排序。在一些可行的实施例中,预设规则可以为将若干可行驶路线按需要转弯的次数的多少进行排序,预设规则还可以将若干可行驶路线按在运动轨迹规划中其它的考量因素进行排序,在此不做限定。
动态规划系统10还包括执行模块18。执行模块18用于从若干可行驶路线中选择最优可行驶路线并执行最优可行驶路线。
请结合参看图17和图18,其为本发明实施例提供的自动驾驶车辆的示意图和自动驾驶车辆的内部结构示意图。自动驾驶车辆20包括车身21、设置于车身21的感测设备22、以及数据处理设备23。其中,感测设备22用于感知自动驾驶车辆周围环境的环境数据。在本实施例中,感测设备22为一体平板式传感器装置,感测设备22设置于车身21车顶的中间位置。在一些可行的实施例中,感测设备22可以为非平板凸起式传感器装置,也可以为分体式传感器装置,即是说,感测设备22的类型不限于此,感测设备22设置于车身21的位置亦不限于此,在此不做限定。数据处理设备23包括处理器231和存储器232。其中,数据处理设备23可以设置于感测设备22,也可以设置于车身21,在此不做限定。存储器232用于存储自动驾驶车辆运动轨迹的动态规划程序指令,处理器231用于执行自动驾驶车辆运动轨迹的动态规划程序指令以实现上述自动驾驶车辆运动轨迹的动态规划方法。
其中,处理器231在一些实施例中可以是一中央处理器(Central ProcessingUnit, CPU)、控制器、微控制器、微处理器或其它数据处理芯片,用于运行存储器232中存储的自动驾驶车辆运动轨迹的动态规划程序指令。
存储器232至少包括一种类型的可读存储介质,该可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器232在一些实施例中可以是计算机设备的内部存储单元,例如计算机设备的硬盘。存储器232在另一些实施例中也可以是外部计算机设备的存储设备,例如计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(FlashCard)等。进一步地,存储器232还可以既包括计算机设备的内部存储单元也包括外部存储设备。存储器232不仅可以用于存储安装于计算机设备的应用软件及各类数据,例如实现自动驾驶车辆运动轨迹的动态规划方法的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。该计算机设备可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、流动硬盘、只读存储介质(ROM,Read-Only Memory)、随机存取存储介质(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。