CN109305160B - 用于自主驾驶的路径规划 - Google Patents
用于自主驾驶的路径规划 Download PDFInfo
- Publication number
- CN109305160B CN109305160B CN201810796565.3A CN201810796565A CN109305160B CN 109305160 B CN109305160 B CN 109305160B CN 201810796565 A CN201810796565 A CN 201810796565A CN 109305160 B CN109305160 B CN 109305160B
- Authority
- CN
- China
- Prior art keywords
- path
- vehicle
- spline
- processor
- data
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000001514 detection method Methods 0.000 claims description 28
- 230000002123 temporal effect Effects 0.000 claims description 6
- 230000006870 function Effects 0.000 description 39
- 238000004891 communication Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 10
- 230000015654 memory Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000004927 fusion Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000009795 derivation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Game Theory and Decision Science (AREA)
- Medical Informatics (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Traffic Control Systems (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
- Navigation (AREA)
Abstract
提供了用于自主驾驶系统的路径搜寻的系统和方法。该系统和方法接收定义相邻路标点之间的路径段的一组路标点、将b样条函数公式化为路径段的函数,并且基于公式化的b样条函数来确定路径数据。自主驾驶系统使用输出路径数据来控制车辆。
Description
技术领域
本公开总体上涉及路径规划,并且更具体地涉及用于基于规划路径进行自动或半自动车辆控制的系统和方法。
背景技术
一些车辆能够感测它们的环境并且基于感测到的环境来定位车辆。这种车辆使用诸如雷达、激光雷达、视觉图像传感器等感测装置来感测它们的环境。一些车辆进一步使用来自全球定位系统(GPS)技术、导航系统、车对车通信、车对基础设施技术和/或线控驱动系统的信息来对车辆进行导航。
车辆自动化已经被分类为从零(对应于全人为控制的非自动化)到五(对应于无人为控制的全自动化)的范围中的数值等级。各种自动驾驶员辅助系统(诸如巡航控制、自适应巡航控制、变道系统、车道跟随、交通堵塞驾驶系统以及停放辅助系统)对应于较低自动化等级,而真正的“无人驾驶”车辆对应于较高自动化等级。这样的车辆可以包括定位功能。
从自动驾驶员辅助系统到自动无人驾驶系统,系统使用路径数据来定义车辆横穿的路径。自动驾驶系统使用路径数据来控制车辆以横穿由路径数据定义的路径。目前设想的系统可能不能够总是为所有类型的转弯、特别是大于90°的转弯提供最佳处理,或者可能需要大量的处理和路径搜索。
因此,期望提供可以处理有效方式确定更大范围的路径的系统和方法。另外,从以下结合附图和前面的技术领域及背景技术进行的实施方式和所附权利要求书中将更清楚地明白本发明的其它期望特征和特性。
发明内容
在实施例中,提供了一种用于自主驾驶系统的路径搜寻引擎。路径搜寻引擎被配置为:接收定义相邻路标点之间的路径段的一组路标点、将b样条函数公式化为路径段的函数、基于公式化的b样条函数来确定路径数据,并且输出路径数据供自主驾驶系统使用。
在实施例中,确定路径数据包括使用每个路标点处的连续性约束来求解b样条函数。
在实施例中,路径搜寻引擎可在城市道路网络以及高速公路道路网络中操作,并且因此用于推导用于90度转弯、U形转弯和/或绕圈等的路径数据。
在实施例中,路径搜寻引擎被配置为确定连续性约束以确保每个路标点处的零阶、一阶和二阶曲线连续性。
在实施例中,由路径数据定义的行驶路径平滑至多到二阶连续性。
在实施例中,路径搜寻引擎被配置为确定连续性约束,从而在每一段的开始路标点和每一段的结束路标点处产生边界条件组。
在实施例中,该边界条件组包括位置偏移边界条件、航向角边界条件和曲率边界条件。
在实施例中,路标点各自包括x和y坐标。
在实施例中,路径数据对应于包括90°或更大、180°或更大或者270°或更大的至少一个转弯的路径。
在实施例中,路径搜寻引擎被配置为在路径数据已被确定之后接收至少一个附加路标点,并且通过公式化和求解调整后b样条函数来调整确定的路径数据。
在实施例中,该方法包括感测车道和/或道路边缘、感测物体以及基于感测到的物体和感测到的车道和/或道路边缘来确定至少一个附加路标点。
在实施例中,提供了一种用于控制车辆的系统。该系统包括本文描述的路径搜寻引擎,以及自主驾驶系统,该自主驾驶系统被配置为控制车辆横穿由路径搜寻引擎输出的路径数据定义的路径。
在实施例中,该系统包括障碍物检测系统,其被配置为检测沿着路径的至少一个物体并且确定至少一个附加路标点以避开障碍物。路径搜寻引擎被配置为使用至少一个附加路标点来确定并输出调整后路径数据。自主驾驶系统被配置为控制车辆横穿由调整后路径数据定义的调整后路径。
在实施例中,障碍物检测系统被配置为使用至少相机和至少一个测距传感器及其融合来检测至少一个物体。
在实施例中,包括车道检测系统,其被配置为基于来自车道感测系统和道路感测系统中的至少一个的数据来检测车道和道路边界中的至少一个。在实施例中,物体检测系统和车道检测系统被配置为基于检测到的物体和感测到的车道和/或道路边界来确定至少一个附加路标点以避开障碍物。在实施例中,车道感测系统和/或道路感测系统包括相机、雷达、激光雷达、超声波传感器及其融合中的至少一个。
在实施例中,导航系统被配置为接收目的地数据并且确定将车辆引导到与目的地数据对应的目的地的一组路标点。
在实施例中,该系统包括地图数据库。导航系统被配置为基于目的地数据和地图数据库来确定该组路标点。
在实施例中,提供了一种包括路径搜寻引擎的车辆。路径搜寻引擎被配置为接收定义相邻路标点之间的路径段的一组路标点、将b样条函数公式化为路径段的函数,并且基于公式化的b样条函数来确定路径数据。该车辆包括自主驾驶系统,其被配置为接收路径数据并且基于路径数据来输出控制命令。该车辆包括致动器系统,其被配置为接收控制命令并且控制车辆横穿由路径数据定义的路径。
在实施例中,致动器系统包括以下至少一个:转向控制致动器、换挡器控制致动器、节流阀控制致动器以及制动控制致动器。
在实施例中,该系统包括障碍物检测系统,其被配置为检测沿着路径的至少一个物体并且确定至少一个附加路标点以避开障碍物。路径搜寻引擎被配置为使用至少一个附加路标点来确定并输出调整后路径数据。自主驾驶系统被配置为控制车辆横穿由调整后路径数据定义的调整后路径。
一种自动控制车辆的计算机实施方法。该方法包括接收定义相邻路标点之间的路径段的一组路标点、将b样条函数公式化为路径段的函数、基于公式化的b样条函数来确定路径数据,以及自主驾驶系统使用输出路径数据以执行自动车辆控制使得车辆横穿由路径数据定义的路径。
在实施例中,该方法包括为每一段公式化b样条基函数。
在实施例中,该方法包括每个b样条基函数与系数相关联。该方法包括通过设定边界条件来确定系数,该边界条件确保在每个路标点处的零阶、一阶和二阶曲线连续性。
在实施例中,该方法包括检测沿着路径的至少一个物体、确定至少一个附加路标点以避开障碍物、使用至少一个附加路标点来确定调整后路径数据,以及自主驾驶系统控制车辆横穿由调整后路径数据定义的调整后路径。
附图说明
下文将结合以下附图描述示例性实施例,其中相同标号表示相同元件,且其中:
图1是说明根据各种实施例的具有包括路径搜寻引擎的系统的车辆的功能框图;
图2是说明根据各种实施例的自动驾驶系统的数据流图,该自动驾驶系统包括具有路径搜寻引擎的系统;
图3是根据各种实施例的由本文描述的路径搜寻引擎确定的多段路径的示例;
图4是说明根据各种实施例的包括路径搜寻引擎的系统的数据流图;
图5是说明了根据各种实施例的用于自动车辆控制的方法的流程图。
具体实施方式
具体实施方式本质上仅仅是示例性的,并且不旨在限制应用和用途。另外,不存在被任何前述的技术领域、背景技术、发明内容或具体实施方式中提出的任何明确的或暗示的理论约束的意图。如本文所使用,术语模块是指单独地或呈任何组合的任何硬件、软件、固件、电子控制部件、处理逻辑和/或处理器装置,包括但不限于:专用集成电路(ASIC)、电子电路、处理器(共享、专用或成组)以及执行一个或多个软件或固件程序的存储器、组合逻辑电路和/或提供所述功能性的其它合适部件。
本公开的实施例在本文可依据功能和/或逻辑块部件和各个处理步骤来描述。应当明白的是,这些块部件可由被配置为执行指定功能的任何数量的硬件、软件和/或固件部件来实现。例如,本公开的实施例可以采用各种集成电路部件(例如,存储器元件、数字信号处理元件、逻辑元件、查找表等,其可以在一个或多个微处理器或其它控制装置的控制下执行多种功能)。另外,本领域技术人员将明白的是,本公开的实施例可结合任何数量的系统来实践,并且本文所述的系统仅仅是本公开的示例性实施例。
为了简明起见,本文可不详细描述与信号处理、数据传输、信令、控制以及该系统(和该系统的单个操作部件)的其它功能方面有关的常规技术。另外,本文所包括的各个图式中所示的连接线旨在表示各个元件之间的示例功能关系和/或物理联接。应当注意的是,在本公开的实施例中可存在许多替代或附加的功能关系或物理连接。
主要在高等级自主车辆的背景下描述本公开。然而,应当明白的是,如本文所述的用于估计和使用有效滚动半径的系统和方法可以用于从自主车辆等级零、不自动化到自主车辆等级五的各种等级的自主车辆。
参考图1,根据各种实施例,包括在车辆控制中使用的路径搜寻引擎110的车辆系统总体上以100示为与车辆10相关联。通常,系统100使用b样条函数来确定多段参数路径并且控制车辆10遵循所确定的路径。f用作自动车辆系统200的输入参数,如后面参考图2所述。
如图1中所描绘,车辆10通常包括底盘12、车身14、前轮16和后轮18。车身14被布置在底盘12上并且大致上包围车辆10的部件。车身14和底盘12可以共同形成框架。车轮16到18各自在车身14的相应拐角附近旋转地联接到底盘12。
在各种实施例中,车辆10是自主或半自主车辆,因为使用自主系统执行至少一些功能并且系统100被结合到车辆10中。车辆10可以是在SAE国际标度上分类在从二阶到五级范围内的自主车辆。在所说明的实施例中,车辆10被描绘为乘用车,但是应当明白的是,也可使用包括摩托车、卡车、运动型多用途车辆(SUV)、休闲车辆(RV)、船舶、飞行器等任何其它车辆。在示例性实施例中,自主车辆10是所谓的四级或五级自动化系统。四级系统指示“高度自动化”,其指代自动驾驶系统在动态驾驶任务的所有方面的驾驶模式所特有的性能,即使人类驾驶员对干预请求没有做出适当响应。五级系统指示“全自动化”,其指代自动驾驶系统在可由人类驾驶员管理的所有道路和环境状况下在动态驾驶任务的所有方面的全面性能。如可以明白的是,本文公开的系统100可以针对任何等级的自动化(或非自动化系统)来实施,并且不限于本示例。虽然根据这样的自主水平来描述,但是根据本文的教导,车辆10不需要高度自动化。在实施例中,本文描述的用于路径搜寻的系统和方法至少要求车辆能够从导航系统104和/或物体检测系统112和/或车道检测系统接收路标点并且基于所确定的路径来至少执行自动转向控制功能,而不管车辆的自动化等级如何。因此,下面对自动车辆控制的描述应当被理解为本质上是示例性的。
如图所示,车辆10通常包括推进系统20、变速器系统22、转向系统24、制动系统26、传感器系统28、致动器系统30、至少一个数据存储装置32、至少一个控制器34以及通信系统36。推进系统20在各种实施例中可以包括内燃机、诸如牵引电动机等电机和/或燃料电池推进系统。变速器系统22被配置为根据可选速比将来自推进系统20的动力传输到车轮16到18。根据各种实施例,变速器系统22可以包括分级传动比自动变速器、无级变速器或其它适当的变速器。制动系统26被配置为向车轮16到18提供制动转矩。在各种实施例中,制动系统26可以包括摩擦制动器、线控制动器、诸如电机等再生制动系统,和/或其它适当的制动系统。转向系统24影响车轮16到18的位置。虽然为了说明目的而被描绘为包括方向盘,但是在本公开的范围内预期的一些实施例中,转向系统24可以不包括方向盘。
传感器系统28包括感测车辆10的外部环境和/或内部环境的可观察状况的一个或多个感测装置40a到40n。感测装置40a到40n可包括但不限于雷达、激光雷达、全球定位系统、光学相机、热像仪、超声波传感器、车轮编码器、包括加速度计和偏航率传感器的惯性传感器和/或其它传感器。如本文进一步描述,传感器系统28与物体感测系统112a、车道感测系统112b和/或道路边缘感测系统112c进行通信。致动器系统30包括一个或多个致动器装置42a到42n,其控制一个或多个车辆特征,诸如但不限于推进系统20、变速器系统22、转向系统24和制动系统26。如本文进一步描述,致动器系统响应于来自自动驾驶系统200的驾驶命令。在各种实施例中,车辆特征可以进一步包括内部和/或外部车辆特征,诸如但不限于车门、行李箱以及诸如无线电、音乐、照明等驾驶室特征(未编号)。
仍然参考图1,在示例性实施例中,通信系统36被配置为向和从其它实体48无线地传送信息,实体48诸如但不限于其它车辆(“V2V”通信)、基础设施(“V2I”通信)、远程系统和/或个人装置。在示例性实施例中,通信系统36是被配置为经由使用IEEE802.11标准的无线局域网(WLAN)或通过使用蜂窝数据通信来进行通信的无线通信系统。然而,诸如专用短程通信(DSRC)信道等附加或替代通信方法也被认为在本公开的范围内。DSRC信道是指专门为汽车使用以及对应的一组协议和标准而设计的单向或双向短程到中程无线通信信道。
数据存储装置32存储用于自动控制车辆10的功能的数据。在各种实施例中,数据存储装置32存储可导航环境的定义地图。在实施例中,定义地图包括由导航系统104使用的导航地图102。在各种实施例中,定义地图可以由远程系统预定义并从远程系统获得。例如,定义地图可以由远程系统组装并且(无线地和/或以有线方式)传送到车辆10并存储在数据存储装置32中。如可明白的是,数据存储装置32可以是控制器34的一部分,与控制器34分开,或作为控制器34的一部分以及单独系统的一部分。
控制器34包括至少一个处理器44和计算机可读存储装置或介质46。根据各种实施例,控制器包括多个模块(如本文所定义的),其包括导航系统104、物体检测系统112、物体感测系统112a、车道感测系统112b、道路边缘感测系统112c、路径搜寻引擎110以及自动驾驶系统200。处理器44可为任何定制的或商业上可用的处理器、中央处理单元(CPU)、图形处理单元(GPU)、与控制器34相关联的若干处理器中的辅助处理器、基于半导体的微处理器(呈微芯片或芯片集的形式)、宏处理器、其任何组合或者通常用于执行指令的任何装置。计算机可读存储装置或介质46可以包括例如只读存储器(ROM)、随机存取存储器(RAM)和保活存储器(KAM)中的易失性和非易失性存储器。KAM是一种持久或非易失性存储器,其可以在处理器44断电时用于存储各种操作变量。计算机可读存储装置或介质46可以使用诸如PROM(可编程只读存储器)、EPROM(电PROM)、EEPROM(电可擦除PROM)、闪速存储器或能够存储数据的任何其它电动、磁性、光学或组合存储器装置的许多已知存储器中的任何一种来实施,其中的一些数据表示由控制器34用于控制车辆10的可执行指令。
指令可以包括一个或多个单独的程序,每个程序包括用于实施逻辑功能的可执行指令的有序列表。指令在由处理器44执行时接收并处理来自传感器系统28的信号,执行用于自动控制车辆10的至少一个部件的逻辑、计算、方法和/或算法,并且向致动器系统30产生控制信号以基于逻辑、计算、方法和/或算法来自动地控制车辆10的至少一个部件。虽然图1中仅示出了一个控制器34,但是车辆10的实施例可包括通过任何合适的通信介质或通信介质的组合进行通信并且协作以处理传感器信号、执行逻辑、计算、方法和/或算法且产生控制信号以自动控制车辆10的特征的任意数量的控制器34。
在各种实施例中,控制器34的一个或多个指令被实施在系统100中,并且当由处理器44执行时求解b样条函数以确定路径数据,并且控制车辆10遵循由路径数据定义的路径。
根据各种实施例,控制器34实施如图2中所示的自动驾驶系统(ADS)200。自动驾驶系统200能够使车辆10的至少一个功能自动化。即,利用控制器34的合适软件和/或硬件部件(例如,处理器44和计算机可读存储装置46)来提供与车辆10结合使用的自动驾驶系统200。
在各种实施例中,自动驾驶系统200的指令可以由功能或系统组织。例如,如图2中所示,自动驾驶系统200可以包括传感器融合系统74、定位系统76、引导系统78和车辆控制系统80。如可明白的是,在各种实施例中,由于本公开不限于本示例,所以可将指令组织(例如,组合、进一步划分等)为任何数量的系统。
在各种实施例中,传感器融合系统74合成并处理传感器数据并且预测物体的存在、位置、分类和/或路径以及车辆10的环境的特征。在实施例中,传感器融合系统与物体感测系统112a、车道感测系统112b和道路边缘感测系统112c进行通信。在各种实施例中,传感器融合系统74可以结合来自多个传感器(包括但不限于相机、激光雷达、雷达和/或任何数量的其它类型的传感器)的信息。
定位系统76处理传感器数据以及其它数据以确定车辆10相对于环境的位置(例如,相对于地图的本地位置、相对于道路车道的精确位置、车辆航向、速度等)。引导系统78处理传感器数据以及其它数据以确定车辆10遵循的路径。如本文进一步描述,通过参数多段技术来确定路径。车辆控制系统80根据所确定的路径产生用于控制车辆10的控制信号。
在各种实施例中,控制器34实施机器学习技术以辅助控制器34的功能,诸如特征检测/分类、障碍物减少、路线穿越、绘图、传感器集成、地面实况确定等。
如上面简要提到,自动驾驶系统200被包括在系统100内。在图4中所示(以及下面描述)的系统100的功能与上述自动驾驶系统200的特征之间存在重叠例如,关于下文图3到5描述的系统和方法被包括在传感器融合系统74、定位系统76、引导系统78和车辆控制系统80内,如将从下文图3到5的以下讨论中所知。虽然在本文特别关于自动驾驶系统200进行了描述,但是应当理解的是,本文描述的系统100可以被包括在其它车辆架构中。
例如,如关于图4更详细地描述,控制器100包括导航系统104、物体检测系统112、物体感测系统112a、车道感测系统112b、道路边缘感测系统112c、路径搜寻引擎110、自动驾驶系统200以及致动器系统30。路径搜寻引擎110利用b样条理论来确定多段参数路径。通过使用b样条理论,实施一种处理有效的算法,该算法适用于其它路标点、不依赖于密集型路径搜索过程,并且能够执行急转弯,包括U形转弯、90°或更大的转弯,诸如在绕圈处180°转弯。下面将参考图3进一步描述本实施例中的b样条理论的实施。
图3提供了使用路径搜寻引擎110来搜寻多段路径150的示例。路径150包括第一段151、第二段152和第三段152。所示的段数是示例性的,并且可以确定任何合适数量的段以便产生路径150。在图3中,路径150是U形转弯的形式,但是也可设想所有其它方式的路径和转弯。
路径搜寻引擎110被配置为接收路标点u3、u4、u5和u6,这些路标点包括原始(在车辆10的位置)路标点(在该示例中为u3)和目的地路标点(在该示例中为u6)。路标点定义了其间的段。路径搜寻引擎110被配置为考虑路标点和其间的段以确定并求解提供表示车辆10遵循的路径的路径数据的b样条函数。
路径搜寻引擎110被配置为采用b样条理论来将路径规划问题解析为多段参数公式化。在该示例性实施例中,可以将b样条计算公式化为用于每一段151、152、153的相应函数。
可以使用b样条理论如下定义第一段151:
u3≤u≤u4
X3,4(u)=N0,3(u)Px,0+N1,3(u)Px,1+N2,3(u)Px,2+N3,3(u)Px,3+N4,3(u)Px,4+N5,3(u)Px,5
Y3,4(u)=N0,3(u)Py,0+N1,3(u)Py,1+N2,3(u)Py,2+N3,3(u)Py,3+N4,3(u)Py,4+N5,3(u)Py,5(方程1)
可以使用b样条理论如下定义第二段152:
u4≤u≤u5
X4,5(u)=N0,3(u)Px,0+N1,3(u)Px,1+N2,3(u)Px,2+N3,3(u)Px,3+N4,3(u)Px,4+N5,3(u)Px,5
Y4,5(u)=N0,3(u)Py,0+N1,3(u)Py,1+N2,3(u)Py,2+N3,3(u)Py,3+N4,3(u)Py,4+N5,3(u)Py,5(方程2)
可以使用b样条理论如下定义第三段153:
u5≤u≤u6
X5,6(u)=N0,3(u)Px,0+N1,3(u)Px,1+N2,3(u)Px,2+N3,3(u)Px,3+N4,3(u)Px,4+N5,3(u)Px,5
Y5,6(u)=N0,3(u)Py,0+N1,3(u)Py,1+N2,3(u)Py,2+N3,3(u)Py,3+N4,3(u)Py,4+N5,3(u)Py,5(方程3)
为了便于进行数学计算,在以下推导中作出假设,即:
u6=u7=u8=u9=vx*tpath
u0=u1=u2=u3=0
其中vx表示车辆10的航向上的车速,并且tpath表示横穿路线的时间,这两者都可以是预定的。
b样条基函数N_(k,p)(u)由b样条理论确定并且由路径搜寻引擎110公式化。系数P_(x,k),P_(y,k)通过路径搜寻引擎110使用从确保零阶、一阶和二阶参数连续性的一组连续性约束确定的边界条件来确定。如果两条曲线的x、y值一致,则认为这两条曲线之间的连接点具有零阶参数连续性。如果两条曲线的x、y值一致,则认为这两条曲线之间的连接点具有一阶参数连续性,并且它们所有的一阶导数在它们的连接点处一致。如果两条曲线的x、y值一致,则认为这两条曲线之间的连接点具有一阶参数连续性,并且它们所有的一阶导数在它们的连接点处一致。
对二阶参数连续性的约束允许从初始和边界条件求解系数P_(x,k),P_(y,k)。初始条件包括与时间t=0时的目标路径y0、航向角初始曲率ρ0相距的偏移量。边界条件包括在t=tf时的偏移量yf、航向角和初始曲率ρf,其中tf和t0是一段的起点和终点处的时间。横穿一段的时间可以基于驾驶模式来预定。
初始条件和边界条件可以被公式化为:
在上面,t=0时的x、y表示起始路标点,t=f时的x、y表示最终路标点,而xd、yd表示要搜寻的路径。
从六个初始条件和边界条件中,可以公式化一组12个参数条件,如下所示:
为了确保零阶、一阶和二阶曲线连续性:
以上三个初始条件可以被公式化为六个参数条件:
X|t=0=0 Y|t=0=y0
X′|t=0=1 Y′|t=0=0
X″|t=0=0 Y″|t=0=ρ0
这三个边界条件可以被公式化为六个参数条件:
由此公式化十二个参数条件。
返回到图3的示例,使用如下12个参数条件来求解系数:
因而,这里以矩阵形式公式化参数系数P_(x,k),P_(y,k)的闭型解:
本领域技术人员将会明白的是,b样条理论允许基于输入路标点和在其间定义的段来解析多个路径。另外,通过遵循如上所述的边界条件组,可以确定闭型参数方程,允许针对每个b样条基函数计算参数系数。
在该U形转弯示例中,期望路径以参数形式公式化为三段。以3作为段数是示例性的。取决于路径的复杂程度,路径可以分成任意数量的段,诸如包括4段、100段、1000段等。
现在参考图4,示出了说明根据示例性实施例的系统100的各个模块和部分的互连的数据流图。
路径搜寻引擎110被配置为接收路标点(x,y)108。路径搜寻引擎110被配置为使用路标点108并且基于路标点108定义多段路径来公式化b样条函数。可以定义任意数量的路标点108和段。b样条函数包括多个b基函数乘以参数系数。虽然前面描述了六个b样条基函数,但是其它数量也是可能的。如上所述,路径搜寻引擎110被配置为确定对二阶的参数曲线连续性约束。使用参数曲线连续性约束和b样条基函数,路径搜寻引擎110被配置为求解b样条基函数并且确定参数系数的值,由此确定车辆10遵循的路径。该路径采用由路径搜寻引擎110输出的路径数据114的形式。路径数据114包括x和y坐标。
系统100包括自动驾驶系统200,其被配置为接收路径数据114并且基于此来确定驾驶命令118。在实施例中,驾驶命令118包括转向命令、节流和制动命令,以便使车辆10能够安全地遵循由路径数据114定义的路径。
系统100包括致动器系统30,其响应于驾驶命令118来执行车辆10的制动、转向和节流控制。
可以从多个来源接收路标点108。在本示例性实施例中,说明了三种可能的来源:导航系统104、物体检测系统112和车道检测系统115。在一些实施例中,物体检测系统112和车道检测系统115结合操作以产生路标点108,由此确定车道边界和物体边界,并且确定并输出避开这两者的路标点108。导航系统104与数字导航地图102进行通信并且被配置为接收起点和目的地位置。导航系统104被配置为基于诸如最快路线、最短路线等计算偏好设置和由导航地图102提供的地图数据106来计算从起点到目的地位置的路线。导航系统104确定定义路线的路标点108,其输出到路径搜寻引擎的以确定车辆10的适当通畅路径。
物体检测系统112被配置为从物体感测系统112a接收清晰的边缘数据113。车道检测系统115被配置为从车道感测系统112b和道路边缘感测系统112c接收清晰的边缘数据。物体检测系统112和/或车道检测系统115被配置为基于边缘数据113确定至少一个路标点108,从而避开障碍物并保持在道路内和车道内。物体感测系统112a、车道感测系统112b和道路感测系统112c被配置为使用来自传感器系统(诸如相机、激光雷达、雷达和/或其它环境成像传感器)28的传感器数据,以检测沿着车辆路径的障碍物、检测车道尺寸和检测道路边缘,并且确定定义无障碍路径的清晰边缘数据113。在实施例中,边缘数据113包括车辆10不应该通过的边缘点。在各种实施例中,边缘点定义车道边缘、障碍物边缘和/或道路边缘。物体系统112a、车道感测系统112b和道路边缘感测系统112c被配置为操作图像处理技术,诸如分段和过滤,以及可选地机器学习技术,以检测和识别要避开的物体、车道边缘和道路边缘。一旦识别物体、车道边缘和道路边缘,就可以提取自由路径尺寸,并且可以由物体检测系统和/或车道检测系统推导至少一个自由路径。基于通常包括与当前路径的相距偏移量以避开障碍的自由路径推导,将至少一个附加路标点108输出到路径搜寻引擎110。路径搜寻引擎110被配置为调整b样条函数,以确定包括附加路标点108的新参数曲线连续性约束并且求解b样条函数和参数系数。以此方式,基于来自防撞系统112的一个或多个附加路标点108,确定包括无障碍转向的调整路径数据114。b样条函数特别适合于调整确定的路径以包括临时路标点108,因为它是顺序函数,仅允许重新计算和求解整个b样条函数的一小部分。
在实施例中,导航系统104的路标点108定义车道中心。在实施例中,物体检测系统112和/或车道检测系统115的路标点108横穿车道以避开障碍物,同时一旦使用来自物体感测系统112a、车道感测系统112b和道路边缘感测系统112c的清晰边缘数据避开了物体,就能确保车辆位于车道和道路边界内。
现在参考图5并且继续参考图1到4,流程图说明了可以由根据本公开的图1和4的系统100执行的方法300。如根据本公开可理解,该方法300内的操作顺序不限于如图5中所说明的顺序执行,而是可根据需要并且根据本公开来以一个或多个不同顺序来执行。在各种实施例中,方法300可以被安排为基于一个或多个预定事件运行,和/或可在车辆10的操作期间连续运行。
方法300包括路径搜寻引擎110接收航路标点108的步骤302。从多个系统中的任何一个、特别是导航系统104接收路标点108。在步骤304处,路径搜寻引擎110使用b样条理论将b样条函数公式化为路标点108的函数,以产生与每个b样条基项相关联的b样条基函数和参数系数。在步骤306中,路径搜寻引擎110使用确保二阶参数曲线连续性的边界条件(上述初始和边界条件)从步骤304求解b样条函数。因此,步骤306包括基于二阶参数曲线连续性约束确定边界条件的预先子步骤。通过在步骤306中求解b样条函数,通过方法300确定定义待遵循的路径的路径数据114。这种路径数据114由自动驾驶系统200用于确定驾驶命令118,致动器系统30响应该驾驶命令118使得车辆10遵循由路径数据114定义的路径。在实施例中,驾驶命令118包括转向命令以及节流和制动命令中的至少一个。
在一些实施例中,执行障碍物检查作为方法300的一部分。在步骤308处,执行关于沿着路径数据114定义的路径是否存在障碍物的检查。通常通过物体检测系统112执行障碍物检查。如果路径中没有障碍物,则方法300前进到步骤310,输出在步骤306(以及控制车辆10遵循路径的后续步骤)中确定的路径数据114。方法300循环回到障碍物检查步骤308,使得在车辆10沿着路径驾驶的整个过程中迭代地执行障碍物检查。
如果在步骤308处确定障碍物在车辆10的路径中,则在步骤312中添加一个或多个临时航路标点108以转向绕开路径来避开障碍物。通常通过物体检测系统112和/或车道检测系统115基于从物体感测系统112a、车道感测系统112b和道路边缘感测系统112c中的至少一个接收的边缘数据113来确定临时路标点108。临时路标点108被传送给路径搜寻引擎110。在步骤314中,路径搜寻引擎110调整在步骤304中确定的b样条函数,以便包括对临时路标点308的依赖性。该调整被定位在临时路标点108周围,作为b样条函数的固有方面,由此减少了对附加路标点的处理要求。在实施例中,调整b样条函数包括添加一个或多个新路标点108并创建至少一个新段。例如,假设U形转弯情形有三段,如果障碍物干扰定义的路径,则添加一个或多个临时路标点108,由此根据一个或多个新路标点添加至少一个新段108。
在步骤306中,在由于临时路标点108而添加的各段的连接点处使用从二阶曲线连续性约束确定的新边界条件来求解调整后b样条函数。在步骤316中求解调整后b样条函数产生调整后路径数据114,其定义包括与由步骤306提供的原始路径数据114定义的路径相比有转向的路径。如前所述,路径搜寻引擎110包括处理器和计算机程序指令,该计算机程序指令被配置为确定参数曲率约束并求解调整后b样条函数。转向避开了障碍,由此定义了无障碍路径。在步骤318中,由路径搜寻引擎110输出调整后路径数据以供自动驾驶系统200和致动器系统30使用,从而控制车辆遵循调整后路径。在步骤318之后,方法300循环回到障碍物检查步骤308以继续扫描障碍物并调整车辆的路径以避开这样的障碍物。
虽然前述详细描述中已经提出了至少一个示例性实施例,但是应当明白的是,存在许多变化。还应当明白的是,示例性实施例或多个示例性实施例仅仅是示例并且不旨在以任何方式限制本公开的范围、实用性或配置。实情是,前文详细描述将给本领域技术人员提供用于实施示例性实施例或多个示例性实施例的便捷指引。应当理解的是,在不脱离所附权利要求书和其合法等同物的范围的情况下,可对元件的功能和设置作出各种改变。
Claims (6)
1.一种用于为车辆的自主驾驶系统搜寻路径的计算机实施的方法,其包括:
通过处理器,接收定义相邻路标点之间的路径段的一组路标点;
通过处理器,将b样条基项的b样条函数公式化,所述b样条函数被公式化为所述路径段的函数,所述b样条函数具有与每个b样条基项相关联的参数系数;
通过处理器,确定初始条件,其包括与时间t=0,t0,时的目标路径、航向角、和初始曲率相距的偏移量;
通过处理器,确定边界条件,其包括在t=tf时的偏移量、航向角、和初始曲率,其中tf和t0是一段的起点和终点处的时间;
通过处理器,基于在每个路标点处的所述初始条件和所述边界条件求解所述b样条函数以提供二阶参数曲线连续性;
通过处理器,基于求解的b样条函数的结果确定路径数据;以及
通过处理器,基于所述路径数据控制所述车辆的路径。
2.根据权利要求1所述的方法,其中所述路标点每个均包括x和y坐标。
3.根据权利要求1所述的方法,其中所述路径数据对应于包括90°或更小或更大的至少一个转弯的路径。
4.根据权利要求1所述的方法,其被配置为在所述路径数据已被确定之后接收至少一个附加路标点,并且通过公式化和求解调整后的b样条函数来调整确定的路径数据。
5.一种用于控制车辆的计算机实施的系统,其包括:
路径搜寻引擎,其被配置为通过处理器:
接收定义相邻路标点之间的路径段的一组路标点;
将b样条基项的b样条函数公式化,所述b样条函数被公式化为所述路径段的函数,所述b样条函数具有与每个b样条基项相关联的参数系数;
确定初始条件,其包括与时间t=0,t0,时的目标路径、航向角、初始曲率相距的偏移量;
确定边界条件,其包括在t=tf时的偏移量、航向角,和初始曲率,其中tf和t0是一段的起点和终点处的时间;
基于在每个路标点处的所述初始条件和所述边界条件求解所述b样条函数以提供二阶参数曲线连续性;
基于求解的b样条函数的结果来确定路径数据;
输出所述路径数据;以及
自主驾驶系统,其被配置为通过处理器控制车辆横穿由所述路径搜寻引擎输出的所述路径数据定义的路径。
6.根据权利要求5所述的系统,其包括物体检测系统,所述物体检测系统被配置为检测沿着所述路径的至少一个物体并且确定至少一个附加路标点以避开障碍物,其中所述路径搜寻引擎被配置为使用所述至少一个附加路标点来确定并输出调整后的路径数据,并且其中所述自主驾驶系统被配置为控制所述车辆横穿由所述调整后的路径数据定义的调整后的路径。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/660,115 US10274961B2 (en) | 2017-07-26 | 2017-07-26 | Path planning for autonomous driving |
US15/660115 | 2017-07-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109305160A CN109305160A (zh) | 2019-02-05 |
CN109305160B true CN109305160B (zh) | 2021-07-13 |
Family
ID=65003916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810796565.3A Active CN109305160B (zh) | 2017-07-26 | 2018-07-19 | 用于自主驾驶的路径规划 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10274961B2 (zh) |
CN (1) | CN109305160B (zh) |
DE (1) | DE102018117916A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10732632B2 (en) * | 2018-01-31 | 2020-08-04 | Baidu Usa Llc | Method for generating a reference line by stitching multiple reference lines together using multiple threads |
US11157437B2 (en) * | 2018-09-26 | 2021-10-26 | Micron Technology, Inc. | Memory pooling between selected memory resources via a base station |
DE102018130243A1 (de) * | 2018-11-29 | 2020-06-04 | Valeo Schalter Und Sensoren Gmbh | Erweitertes Szenario für Autobahnassistenten |
CN109813328B (zh) * | 2019-02-22 | 2021-04-30 | 百度在线网络技术(北京)有限公司 | 一种驾驶路径规划方法、装置及车辆 |
CN110197027B (zh) * | 2019-05-28 | 2023-07-18 | 百度在线网络技术(北京)有限公司 | 一种自动驾驶测试方法、装置、智能设备和服务器 |
US12055410B2 (en) * | 2019-06-11 | 2024-08-06 | WeRide Corp. | Method for generating road map for autonomous vehicle navigation |
CN110203193B (zh) * | 2019-06-13 | 2020-02-11 | 智邮开源通信研究院(北京)有限公司 | 车辆控制方法、装置、汽车及存储介质 |
US11087147B2 (en) * | 2019-09-19 | 2021-08-10 | Ford Global Technologies, Llc | Vehicle lane mapping |
DE102019214443A1 (de) | 2019-09-23 | 2021-03-25 | Robert Bosch Gmbh | Verfahren zum zumindest assistierten Durchfahren eines Kreisverkehrs durch ein Kraftfahrzeug |
US11688155B2 (en) * | 2020-01-06 | 2023-06-27 | Luminar, Llc | Lane detection and tracking techniques for imaging systems |
CN111880539B (zh) * | 2020-07-30 | 2024-04-19 | 上海高仙自动化科技发展有限公司 | 智能机器人的移动控制方法及装置、智能机器人及可读存储介质 |
KR20230138808A (ko) * | 2022-03-24 | 2023-10-05 | 현대자동차주식회사 | 차량 제어 장치 및 방법 |
US20230331237A1 (en) * | 2022-04-13 | 2023-10-19 | Here Global B.V. | Method and apparatus for generating personalized splines |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5646843A (en) * | 1990-02-05 | 1997-07-08 | Caterpillar Inc. | Apparatus and method for surface based vehicle control system |
FR3013296B1 (fr) * | 2013-11-18 | 2015-12-11 | Renault Sas | Procede et dispositif de pilotage automatique d'un vehicule |
US9227632B1 (en) * | 2014-08-29 | 2016-01-05 | GM Global Technology Operations LLC | Method of path planning for evasive steering maneuver |
US9229453B1 (en) * | 2014-08-29 | 2016-01-05 | GM Global Technology Operations LLC | Unified motion planner for autonomous driving vehicle in avoiding the moving obstacle |
US20160288788A1 (en) * | 2015-03-31 | 2016-10-06 | Toyota Motor Engineering & Manufacturing North America, Inc. | Gap-based speed control for automated driving system |
US10259453B2 (en) * | 2015-04-10 | 2019-04-16 | Continental Automotive Systems, Inc. | Collision avoidance based on front wheel off tracking during reverse operation |
US9612123B1 (en) * | 2015-11-04 | 2017-04-04 | Zoox, Inc. | Adaptive mapping to navigate autonomous vehicles responsive to physical environment changes |
-
2017
- 2017-07-26 US US15/660,115 patent/US10274961B2/en active Active
-
2018
- 2018-07-19 CN CN201810796565.3A patent/CN109305160B/zh active Active
- 2018-07-24 DE DE102018117916.2A patent/DE102018117916A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
CN109305160A (zh) | 2019-02-05 |
DE102018117916A1 (de) | 2019-01-31 |
US20190033871A1 (en) | 2019-01-31 |
US10274961B2 (en) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109305160B (zh) | 用于自主驾驶的路径规划 | |
CN106080598B (zh) | 实时预期速度控制 | |
CN111458700B (zh) | 车辆映射和定位的方法和系统 | |
US10759415B2 (en) | Effective rolling radius | |
US20200278684A1 (en) | Methods and systems for controlling lateral position of vehicle through intersection | |
US20200318976A1 (en) | Methods and systems for mapping and localization for a vehicle | |
US20180347993A1 (en) | Systems and methods for verifying road curvature map data | |
US20230009173A1 (en) | Lane change negotiation methods and systems | |
WO2016194168A1 (ja) | 走行制御装置及び方法 | |
CN113805145A (zh) | 动态激光雷达对准 | |
US11892574B2 (en) | Dynamic lidar to camera alignment | |
US20230174097A1 (en) | Autonomous driving assistance system | |
US11292487B2 (en) | Methods and systems for controlling automated driving features of a vehicle | |
CN117284317A (zh) | 基于横向对象控制纵向加速度的系统和方法 | |
CN117284319A (zh) | 基于横向对象控制纵向加速度的系统和方法 | |
JPWO2018211645A1 (ja) | 運転支援方法及び運転支援装置 | |
JP2020124994A (ja) | 車両運動制御方法及び車両運動制御装置 | |
CN111599166B (zh) | 用于解释交通信号和协商信号化的交叉路口的方法和系统 | |
US20200387161A1 (en) | Systems and methods for training an autonomous vehicle | |
US20240190457A1 (en) | Vehicle systems and methods for autonomous route following | |
US20230278562A1 (en) | Method to arbitrate multiple automatic lane change requests in proximity to route splits | |
US20220092985A1 (en) | Variable threshold for in-path object detection | |
US11698641B2 (en) | Dynamic lidar alignment | |
US11214261B2 (en) | Learn association for multi-object tracking with multi sensory data and missing modalities | |
CN112445227A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |