掌桥专利:专业的专利平台
掌桥专利
首页

仅基于本地信息的车道变换

文献发布时间:2024-04-18 19:58:30


仅基于本地信息的车道变换

相关申请的交叉引用

本申请要求2021年4月6日提交的题为“LANE CHANGING BASED ONLY ON LOCALINFORMATION”的美国专利申请号17/301540的优先权,其公开内容通过引用整体结合于此。

技术领域

本文涉及仅基于本地信息的车道变换。

背景技术

现今制造的一些车辆配备有一种或多种类型的系统,这些系统能够至少部分地处理与车辆驾驶相关的操作。这种系统提供的驾驶自主水平可以在很大程度上不同。一些现有的辅助驾驶方法使用全球定位系统(GPS)接收器和高清地图来提供车辆定位。然而,在车辆中实施这种技术可能成本很高。此外,并非所有地区都有高清地图,这可能会限制或阻止辅助驾驶的使用。

发明内容

在第一方面,一种计算机实现的方法包括:由控制车辆运动的辅助驾驶系统启动车辆从自我车道到目标车道的车道变换,该车道变换仅基于车辆的本地信息来执行;由辅助驾驶系统定义目标车道的参数表示,该参数表示基于目标车道的第一路点;在车道变换期间,由辅助驾驶系统接收车辆的感知部件的第一输出,该第一输出是本地信息并反映目标车道的第二路点;由辅助驾驶系统基于第一输出和参数表示来执行比较;以及由辅助驾驶系统向车辆的控制器提供第一全局路径的参考,用于致动车道变换,参考是基于比较选择的。

实施方式可以包括以下任何或所有功能。执行比较以在第一路点中找到用于第二路点的最佳拟合。第一全局路径在车道变换的开始时定义,计算机实现的方法还包括由辅助驾驶系统定义车道变换的起点和沿着第一全局路径的多个点中的每个点之间的变换矩阵。计算机实现的方法还包括在定义参数表示时使用变换矩阵。参数表示包括用于多项式的系数。多项式是三阶多项式。第一输出包括第一x,y坐标,计算机实现的方法还包括根据参数表示生成第二x,y坐标,其中使用第一和第二x,y坐标执行比较。参数表示形成多条第一曲线,其中第一输出形成第二曲线,并且其中比较寻求将第二曲线与多条第一曲线中的至少一条相匹配。计算机实现的方法还包括形成系数的系数矩阵。控制器至少包括转向控制或加速控制。比较包括确定第二路点是否在第一路点中的至少一组的阈值内。第一全局路径在车道变换的开始时定义,其中比较将第二路点与第一路点中的第一组相匹配,第一路点中的第一组与沿着第一全局路径的第一点相关,并且其中参考选自始于第一点的第一全局路径。尽管车辆不在对应于第一点的位置,但参考选自始于第一点的第一全局路径。计算机实现的方法还包括接收感知部件的第二输出,并基于第二输出重复比较,其中,如果对于第二输出不满足阈值,则定义第二全局路径。执行比较包括执行第一路点的单向搜索。比较指示第二路点不在第一路点中的任何组的阈值内,计算机实现的方法还包括响应于比较定义第一全局路径。第一全局路径被定义为替代先前在车道变换中定义的第二全局路径。

在第二方面,一种计算机程序产品有形地包含在非暂时性存储介质中,该计算机程序产品包括当被执行时使处理器执行操作的指令,该操作包括:由控制车辆运动的辅助驾驶系统启动车辆从自我车道到目标车道的车道变换,该车道变换仅基于车辆的本地信息来执行;由辅助驾驶系统定义目标车道的参数表示,该参数表示包括目标车道的第一路点;在车道变换期间,由辅助驾驶系统接收车辆的感知部件的第一输出,该第一输出是本地信息并反映目标车道的第二路点;由辅助驾驶系统基于第一输出和参数表示来执行比较;以及由辅助驾驶系统向车辆的控制器提供第一全局路径的参考,用于致动车道变换,参考是基于比较选择的。

在第三方面,一种车辆包括:控制器,其配置用于控制关于车辆从自我车道到目标车道的车道变换的车辆运动、目标车道的参数表示,该参数表示包括目标车道的第一路点;感知部件,其配置为生成反映目标车道的第二路点的本地信息;以及用于仅基于本地信息来致动车辆的车道变换的装置。

实施方式可以包括以下任何或所有特征。控制器至少包括转向控制器;感知部件包括相机和激光雷达中的至少一个;并且装置通过定义参数表示、从感知部件接收本地信息、基于本地信息和参数表示执行比较以及向控制器提供全局路径的参考来致动车道变换,参考是基于比较选择的。

附图说明

图1示出了全局参照系和本地参照系的示例。

图2示出了参照全局路径控制车辆运动的示例。

图3示出了方法示例的流程图。

图4示出了创建全局路径的示例。

图5示出了参照图4的全局路径控制车辆运动的示例。

图6示意性地示出了匹配曲线的示例。

图7A-7C示出了参考全局路径控制车辆运动的其他示例。

图8示出了车辆的示例。

图9示出了可用于实施本公开的各方面的计算设备900的示例架构。

不同附图中相同的参考符号表示相同的元件。

具体实施方式

本文描述了为由辅助驾驶(AD)系统控制的车辆提供车道变换的系统和技术的示例,车道变换仅基于本地信息来执行。在一些实施方式中,只要车辆偏离全局路径不超过阈值,就可以允许车辆基于全局路径的原始定义继续前进。AD系统可以将检测到的传感器参数拟合到定义的全局路径的各个方面,并且只要拟合足够好,就继续进行而无需重新定义。例如,这可以允许AD系统在车道变换期间控制车辆,而无需求助于诸如GPS接收器或高清地图之类的定位工具。

为了执行自主车道变换,自我车辆可以紧紧跟随规划路径(全局路径)。在车道变换期间,作为控制车辆的一部分,运动规划者可以经历多次迭代。在每次迭代中,可以用更新的传感器信息并在更新的自我参照系中生成路径。然而,新路径应与全局路径紧密匹配。本主题使得能够创建保持全局路径形状的本地路径,同时仅依赖于本地参照系中可用的传感器信息。

下面的示例说明了自我车辆不一定精确地遵循全局路径。负责轨迹跟踪的控制器可以利用车辆的运动学/动力学模型根据全局路径执行车道变换。这样做,控制器可以寻求补偿车辆致动器的延迟和其他意外情况。然而,由于车辆参数的建模和/或估计的固有不准确性,在车道变换期间,自我车辆遵循的实际路径可能在一个或多个点处偏离规划路径。在这种情况下,有时会产生新的路径。新路径仍可以尽可能舒适地保持规划路径的原始形状。

如果车辆在车道变换期间遵循全局路径,则车辆的行为可以提供类似人类的车道变换体验。也就是说,全局路径可能已被设计成平滑和舒适的,因此可能在时间上是持久的。相比之下,如果车辆在车道变换操作期间完全由本地规划控制,则体验可能与人类通常的驾驶方式不同,并且可能会使乘客不舒服。这是因为完全基于本地规划的车道变换在每个规划步骤都要重新计算,并且从车道变换的开始到结束都没有全局规划。因此,这种本地规划的车道变换会让乘客感觉像机器人一样。另一方面,真正的全局规划只能通过全球定位能力来实现,这可能需要复杂而昂贵的部件或服务,比如高质量的GPS接收器或HD地图。然而,本主题可以使用本地信息来导出全局持续规划,从而提供更好的车道变换体验。

这里的示例指的是车辆。车辆是运输乘客或货物或两者的机器。车辆可以具有使用至少一种燃料或其他能源(例如电)的一个或多个马达。车辆的示例包括但不限于轿车、卡车和公共汽车。车轮的数量在不同类型的车辆之间可以不同,并且一个或多个(例如全部)车轮可以用于车辆的推进。车辆可以包括容纳一个或多个人的乘客车厢。至少一名车辆乘客可被视为驾驶员;然后可以向驾驶员提供各种工具、器具或其他装置。在本文的示例中,由车辆运载的任何人都可被称为车辆的“乘客”,不管该人是否正在驾驶车辆,或者该人是否能够控制驾驶车辆,或者该人是否未控制驾驶车辆。在本文的示例中,作为示例主题的车辆有时被称为“自我车辆”。一辆或多辆其他车辆有时被称为“目标车辆”。仅为了说明的目的,本示例中的多辆车被示为彼此相似或相同。

这里的示例指的是辅助驾驶(例如由AD系统执行)。辅助驾驶包括至少部分自动化一个或多个动态驾驶任务。ADAS可以执行辅助驾驶,是辅助驾驶系统的示例。辅助驾驶部分地基于一个或多个传感器的输出来执行,传感器通常位于车辆上、车辆下或车辆内。虽然自主车辆是执行辅助驾驶的系统的示例,但并不是每个辅助驾驶系统都被设计成提供完全自主车辆。SAE International定义了多个驾驶自动化级别,通常分别称为0、1、2、3、4和5级。例如,0级系统或驾驶模式可能不涉及系统的持续车辆控制。例如,1级系统或驾驶模式可包括自适应巡航控制、紧急制动辅助、自动紧急制动辅助、车道保持和/或车道居中。例如,2级系统或驾驶模式可以包括公路辅助、自主避障和/或自主停车。例如,3级或4级系统或驾驶模式可以包括辅助驾驶系统对车辆的逐渐增加的控制。例如,5级系统或驾驶模式可能不需要辅助驾驶系统的人工干预。

这里的示例指的是本地信息。本地信息包括由位于车辆内或车辆上的感知部件(例如相机或激光雷达)生成的数据。相比之下,GPS接收器产生的输出不是本地信息(例如它可被表征为全局信息),因为它需要存在卫星来产生被接收的信号。例如,相机检测入射光,但不一定需要车辆外部的任何特定技术来产生该光。此外,激光雷达发射来自车辆的光以检测其反射,但也不一定需要车辆外部的任何特定技术。仅依靠本地信息也不包括使用道路的高清晰度地图。如本文所用,高清晰度地图是具有分米级或更高分辨率的道路描绘。例如,本主题不涉及AD系统在控制车辆执行车道变换时使用所谓的高清晰度地图(HD地图)。

这里的示例指的是车辆的车道。如本文所用,车道是车辆当前、过去或未来行驶的路径;车辆当前所处的路径可被称为自我车道。相比之下,车辆可能被引导行驶的车道有时被称为目标车道。车道可以但不一定由道路上或邻近道路的一个或多个标记来限定。一条车道和另一条车道之间的区别对于乘客来说可以是视觉上可察觉的,或者可以由AD系统单独定义,这里仅举两个示例。这里使用的车道包括直的道路(例如没有转弯)和有一个或多个转弯的道路。这里使用的车道可以是被限制为单向行驶的道路的一部分(例如单行道),或者可以是允许双向交通的道路的一部分。这里使用的车道可以是只有单条车道或有多条车道的道路的一部分。在本主题中,自我车道和目标车道可以但不是必须基本彼此平行。例如,自我车道和目标车道中的一个可以相对于另一个形成非零角度。

这里的示例指的是传感器。传感器配置成检测事件和/或其环境的一个或多个方面的变化,并输出反映该检测的信号。仅作为说明性示例,传感器可以指示车辆和物体之间的距离、车辆的速度、车辆的轨迹或车辆的加速度中的一个或多个。可以与一个或多个实施例一起使用的传感器的示例包括但不限于:光传感器(例如相机);扫描系统(例如激光雷达);基于无线电的传感器(例如雷达);声学传感器(例如超声波设备和/或麦克风);惯性测量单元(例如陀螺仪和/或加速度计);速度传感器(例如用于车辆或其部件);位置传感器(例如用于车辆或其部件);方位传感器(例如用于车辆或其部件);扭矩传感器;温度传感器(例如初级或次级温度计);压力传感器(例如用于环境空气或车辆部件);湿度传感器(例如雨水检测器);或者座位占用传感器。

图1示出了全局参照系100和本地参照系102和104的示例。参考全局参照系100、本地参照系102和/或本地参照系104描述的示例可以与本文别处描述的一个或多个其他示例一起使用。全局参照系100和本地参照系102和104中的每个可以由坐标系表示(例如具有相对于有序组垂直轴的坐标系的笛卡尔坐标)。例如,全局坐标系100可被定义为使用所谓的“东、北、上”(ENU)坐标。作为另一示例,本地参照系102和/或104可以使用参照参考路径的纵向和横向位置来指定,例如采用Frenet坐标。

全局参照系100和本地参照系102和104在这里相对于环境106来定义,该环境106从上方示意性地示出为至少包括自我车道108和目标车道110。环境106可包括道路,包括但不限于街道、小巷、公路、高速公路或高速干道,仅举几个示例。具有AD系统的车辆112(例如可以执行如下参考图8所述的运动规划)当前位于自我车道108中。例如,在AD系统的控制下,车辆112在图示中从左到右的方向上沿着自我车道108行驶。

作为控制车辆112的运动的一部分,AD系统可以执行一个或多个任务。这种任务的一个示例是车道变换。在一些实施方式中,AD系统可以规划控制车辆112执行从自我车道108到目标车道110的车道变换的动作。例如,该动作可以由指示应该执行车道变换的用户输入来触发。作为另一示例,AD系统可以规划车道变换,而无需由用户直接触发(例如基于遵循定义的导航路线)。在车道变换期间,在运动规划器的每次迭代中,可能需要运动规划器利用更新的传感器信息并在更新的自我参照系(例如本地参照系102或104)中生成路径。然而,新路径应与启动车道变换时规划的路径(在全局参照系100中定义)紧密匹配。本主题可以使得AD系统能够仅依赖于本地信息(例如依赖于本地参照系中可用的传感器信息)来创建保留全局路径形状的本地路径。

这里,为了管理车道变换(以及可选地为了其他目的),AD系统可以定义关于目标车道110的路点114。可以定义任意数量的路点114,如这里分别由路点114-1,114-2,…,114-i,…和114-N示意性示出,其中N是大于1的任意整数且1≤f≤N。路点114可以是基于计算机的定义(例如参考全局参照系100)。例如,AD系统可以寻求将路点114放置在目标车道110的横向中心,使得给定的路点114-i与目标车道110的左侧和右侧边界基本等距远。在一些实施方式中,路点114可被定义为多项式。可以使用任意阶多项式。例如,路点114可被定义为三阶多项式:

y=C

其中,x和y是空间坐标,并且C

出于解释的目的,现在将描述一些变换。当车辆112根据本地参照系102定位时,线116将车辆112(例如其重心)与路点114-2连接。类似地,当车辆112根据本地参照系104定位时,线118将车辆112与路点114-2连接。变换120(有时称为

对于一般的公路驾驶场景,车道几何形状通常可以表示为自我主体参照系中的三阶多项式。然而,在不同的参照系中跟踪路径可能需要关于变换矩阵的知识。如上所述,由于不准确,车辆位置可能与规划路径有些偏离,并且GPS或惯性测量单元(IMU)传感器可能无法可靠且准确地获得变换。然而,可以通过相机和激光雷达的融合来检测车道标志,例如通过使用机器学习技术。因此,本主题可以使用本地信息提取变换,从而提供比纯本地规划更平滑和更人性化的乘客体验,因为它寻求在一个或多个阈值内符合全局路径。

通常在车辆112中可用的大多数传感器信息可以在车辆112的相应本地参照系中接收。在一些实施方式中,这可以包括但不限于来自相机、激光雷达和/或雷达的输出。也就是说,视情况而定,该本地信息与本地参照系102或104相关。另一方面,GPS接收器可以仅提供相对于全球参照系100的信息。此外,一些GPS接收器可能没有足够的精度来提供任何两个参照系之间的全局变换。例如,这就是为什么可以说变换124对于AD系统是未知的。本文所述的系统和技术可仅基于本地信息为车辆提供车道变换,本地信息在本文中由虚线126示意性示出,表示涉及本地参照系102和104,但不涉及全局参照系100。例如,系统可以仅使用可从本地(非全局)环境中的传感器获得的信息来提取本地参照系102和104之间的信息,而不使用诸如高保真GPS或HD地图之类的特征。

图2示出了参考全局路径204控制车辆202的运动的示例200。示例200或其各方面可以与本文别处描述的一个或多个其他示例一起使用。如从上方所示,示例200涉及车辆202在道路206上行驶,并且已经相对于道路206定义了自我车道中心208和目标车道中心210。

全局路径204可被定义或以其他方式创建,诸如由AD系统的运动规划器定义或创建,以准备控制车辆202经历从自我车道中心208到目标车道中心210的车道变换。AD系统定义全局路径204的时间名义上可被称为时间零(在图示中表示为“T@0”)。全局路径204可将自我车道中心208和目标车道中心210彼此连接。全局路径204可以具有多种形状中的任何一种,取决于环境,包括但不限于诸如车辆202的类型、车辆202的速度、自我车道中心208和目标车道中心210的空间配置、能见度、道路206上的交通和/或天气条件等特征,仅举几个示例。例如,全局路径204可以是S形曲线。

示例200示意性地示出了在初始时间T@0之后的各个时间的车辆202,这些时间在这里分别标记为T@1、T@2和T@3。选择这些时间仅仅是为了说明的目的,并不一定反映运动规划器的每次迭代;相反,运动规划器可以每秒执行多次迭代(例如数十次或数百次迭代)。这样,在该示例中讨论的决策也可以在除了示例200中示出的时间之外的其他时间执行(例如也可以在中间时间)。

沿着全局路径204的每个点可被认为是车辆202的单独状态,每个这样的状态对应于本地参照系。在每种状态下,运动规划器可以考虑应该向控制器传递什么路径。通常,如果车辆202紧密跟随全局路径204,则最好在新参照系中生成与全局路径204相似或相同的路径。这可以帮助控制器更好地跟踪,因为参考不会在全局参照系中不断变化。时间T@1和T@2说明了这种类型的示例场景。在T@1,AD系统可以确定车辆202是否保持在全局路径204的阈值内。这仅使用本地信息来完成,诸如相机和/或激光雷达的输出。全局路径204上的状态212在这里可以对应于全局路径204上离车辆202的当前位置最近的点。例如,状态212可以包括空间坐标(例如x和y定位)和航向角。车辆202和状态212之间的偏移214在这里示意性地示出了车辆202与全局路径204的当前分离。举两个示例,偏移214可以反映空间定位和/或航向角。如果偏移214在T@1没有超过特定阈值,则AD系统可以在T@1继续向车辆202的控制器提供全局路径204的剩余部分。也就是说,虽然根据本地信息,在T@1的车辆202不精确地处于状态212,但是其定位足够接近,使得AD系统选择继续使用全局路径204的剩余部分来控制车辆202的运动。相比之下,如果在T@1的AD系统已经决定生成新的全局路径,则它可能已经生成新的全局路径204’,如虚线所示。然而,与继续使用全局路径204的剩余部分相比,根据新全局路径204’前进可能涉及更突然的操纵(例如更快的横向位移和/或更大的速度变化)。这样,与新全局路径204’相比,在时间T@1根据全局路径204控制车辆202对乘客来说可能是更好的乘坐体验。

以类似的方式,在T@2,AD系统可以仅使用本地信息再次确定车辆202是否保持在全局路径204的阈值内。如果在T@2没有超过阈值,则AD系统可以在T@2继续向车辆202的控制器提供全局路径204的剩余部分。也就是说,在T@2的AD系统不生成新的全局路径204”,如虚线所示。

然而,如果车辆202在某点经历了与全局路径204的更大偏离,运动规划器可以在该点生成新的路径。在T@3,AD系统可以确定车辆202是否保持在全局路径204的阈值内。这仅使用本地信息来完成,诸如相机和/或激光雷达的输出。全局路径204上的状态216在这里可以对应于全局路径204上离车辆202的当前位置最近的点。例如,状态216可以包括空间坐标(例如x和y定位)和航向角。车辆202和状态216之间的偏移218在这里示意性地示出了车辆202与全局路径204的当前分离。如果偏移218在T@3超过特定阈值,则AD系统可以在T@3为车辆202生成新的全局路径220。也就是说,根据本地信息,车辆202当前具有与状态216的这种分离,使得AD系统不应该继续使用全局路径204的剩余部分来控制车辆202的运动。相反,AD系统将向控制器提供新的全局路径220,用于引导车辆202,潜在地通过车道变换的其余部分,如运动规划器的后续迭代所确定。例如,只要车辆202保持在新的全局路径220的阈值内,AD系统可以继续向控制器提供新的全局路径220的剩余部分,用于操纵车辆202。

图3示出了方法300的示例的流程图。方法300可以与这里描述的一个或多个其他示例一起使用。可以执行比所示的更多或更少的操作。除非另有说明,两个或更多个操作可以不同的顺序执行。

方法300被示为在至少两个可区分的实例或时间段的过程中执行,这里在概念上分别称为T@0和T@t。在一些实施方式中,T@0可以指初始时刻(例如在车道变换的开始时),T@t可以指多个后续时刻或时间段中的任何一个。也就是说,在车道变换过程中,至少T@t处的操作可以重复一次或多次。

在操作302,可以创建全局路径。在一些实施方式中,可以创建图2中的全局路径204或新的全局路径220。例如,全局路径可以定义从自我车道到目标车道的车道变换的路线。图4示出了创建全局路径402的示例400。示例400可以与本文别处描述的一个或多个其他示例一起使用。

在操作304,可以创建变换。在一些实施方式中,变换是在车道变换的起点和沿着全局路径的每个状态之间。例如,变换可以变换矩阵的形式生成。示例400示出了包括状态404的全局路径402。每个状态404对应于全局路径的变换之一,并且可以包括坐标参照系表示。例如,任何状态404i可以(x

可以定义车道变换,使得全局路径402在自我车道的自我车道中心406和车辆正驶向的目标车道的目标车道中心408之间延伸。可以为目标车道定义路点410。在一些实施方式中,路点410被定义为在目标车道中心408。例如,每个路点410可以形式(x

在操作306,可以创建目标车道的参数表示。图5示出了参照图4的全局路径402控制车辆运动的示例。目标车道中心408的路点410可用于拟合多项式500,包括但不限于三阶多项式。对于轨迹上的每个状态404i,可以找到变换的目标路点并拟合多项式。沿着整个轨迹移动,可以生成对应于离散化状态的系数矩阵502。矩阵502通常可以表示如下:

其中,索引0,1,2,…,i,…,N对应于全局路径402的离散化状态,也由图5中矩阵502和一些状态404之间的虚线指示。矩阵502指示在相应状态404下路点410看起来像什么。在方法300中,矩阵502可以存储在存储器308中。如方法300所示,可以在T@0执行上述操作。也就是说,在时间T@0期间,可以执行全局规划,并且可以生成和存储必要的数据(例如全局路径402、状态404、路点410和矩阵502)以供AD系统在执行车道变换时使用。

在T@0之后发生的任何时间T@t,方法300可以包括从感知部件获得目标车道路点的操作310。感知部件的输出可被认为是车辆的本地信息,并可用于确定车辆是否如规划的那样足够接近全局路径402。例如,感知部件的输出可以反映从车辆的当前位置观察的目标车道中心408的路点。

在操作312,可以将感知部件的路点与存储的目标车道路点进行比较。在一些实施方式中,这包括涉及存储器308中的矩阵的系数和来自感知部件的输出的相应系数的比较。感知输出的系数可以与矩阵502进行比较,以找到最佳拟合或最接近匹配。例如,从感知分量获得的系数可被称为(C

可以使用多种比较方法中的任何一种。在一些实施方式中,可以使用最小化和/或最大化技术。例如,最小平方分析可以应用于感知部件的输出和矩阵502中的一些或所有条目之间的差异。作为另一示例,可以执行曲线之间的比较(例如曲线匹配)。例如,系数矩阵反映了来自全局路径的各个参照系的目标车道的外观,并且该比较可以采用由感知部件报告的目标车道的视图,并且确定系数矩阵的一些或所有曲线中的哪一个最相似。

可以特定的方式搜索系数矩阵,和/或可以只搜索系数矩阵的一部分。例如,搜索可以并行化。作为另一示例,可以在矩阵内仅在一个方向上执行搜索(例如单向搜索)。在一些实施方式中,操作312可以仅查看矩阵502中位于最近识别的矩阵条目“前方”的条目。例如,如果矩阵502的条目之一被识别为前一参照系中的最接近匹配,则当前参照系中的操作312中的比较可以从所识别的条目之后的条目开始。在一些实施方式中,操作312可以在如下多次迭代中仅查看矩阵502中的条目:

对于i=ind

其中,i是要在评估中考虑的矩阵条目的索引,这样的索引将在分号之前和之后定义的值之间迭代;ind

在操作314,可以确定在系数矩阵中是否已经找到匹配。在一些实施方式中,可以应用一个或多个阈值。例如,可以确定由感知部件报告的路点是否在矩阵502中的任何条目的阈值内。多个度量中的任何一个都可以用于确定。上面的示例中提到了最小二乘法。可以进行曲线匹配。作为另一示例,可以使用基于量化感知路点和参数表示之间的差异的另一度量,包括但不限于基于距离的评估。

图6示意性地示出了匹配曲线的示例600。示例600可以与本文别处描述的一个或多个示例一起使用。示例600示意性地表示曲线602。这里的曲线602表示从不同有利点(例如在图2中的全局路径204的相应参照系中)观察的目标车道(例如图2中的目标车道中心210)的连续外观。为简单起见,曲线602在本示例中可以只是部分集合;可以使用更多或更少的曲线602。为了清楚起见,曲线602在这里被表示为直线。在一些实施方式中,曲线602可以具有其他形状。

另一方面,曲线604可以从一个或多个感知部件的输出中获得。曲线604表示由自我车辆的至少一个传感器的本地信息确定的目标车道的当前视图。为了确定车辆相对于全局路径的当前位置,可以在曲线604和一些或所有曲线602之间执行曲线匹配。曲线匹配可以寻求将曲线604匹配到一条或多条曲线602。例如,可以对曲线604和曲线602的曲线602i执行差值的最小二乘计算,其中索引i可以采用一个或多个数字。作为另一示例,曲线604的斜率可以与一条或多条曲线602的斜率进行比较。如果曲线604和至少一条曲线602之间的最接近匹配满足应用的至少一个阈值,这可以反映图3中方法300的操作314中的确定的肯定(例如“是”)结果。

如果在操作314中没有发现匹配,则方法300可以如箭头316所示进行,并返回到操作302。例如,如果在全局路径的状态或参照系中没有发现对于感知部件的输出的匹配,则可以在该点创建新的全局路径,并向前应用。然后,全局路径可以替换运动规划中最初定义的全局路径。也就是说,至少操作302然后可以在时间T@t之一重复,从而有效地从新的T@0开始。

另一方面,如果在操作314中已经找到匹配(例如曲线602之一与曲线604拟合),则可以在方法300的操作318中选择矩阵502中的该组被识别的系数。这可以对应于选择全局路径上的最佳匹配索引i。这样,尽管车辆可能没有如规划的那样精确地处于全局路径的任何状态或参照系,但是因为它足够接近,全局路径的该点当前被认为是车辆的位置,用于运动规划的目的。该操作可以包括更新存储器320。例如,变量ind

在操作318之后,该方法可以在操作322中向AD系统的控制器提供输出。在一些实施方式中,输出可以包括规划的全局路径的剩余部分的至少一部分。例如,与感知输出匹配的矩阵条目可被认为是第一组路点,而感知输出可被认为是第二组路点;然后,可以选择全局路径的剩余部分作为与第一组路点相关的全局路径的点(或阶段或参照系)的开始。

上述示例示出了计算机实现的方法的执行,该方法至少包括:由控制车辆(例如图1中的车辆112)运动的辅助驾驶系统启动车辆从自我车道(例如图2中的自我车道中心208)到目标车道(例如图2中的目标车道中心210)的车道变换,该车道变换仅基于车辆的本地信息(例如相机或激光雷达的输出)来执行;由辅助驾驶系统定义目标车道的参数表示(例如图3中的存储器308中的系数矩阵),该参数表示基于目标车道的第一路点(例如图1中的路点114);在车道变换期间,由辅助驾驶系统接收车辆感知部件的第一输出,第一输出是本地信息并反映目标车道的第二路点(例如本地信息反映从车辆的当前位置看目标车道中心210(图2)的视图);由辅助驾驶系统基于第一输出和参数表示执行比较(例如图3的操作312中的最接近拟合确定);由辅助驾驶系统向车辆的控制器提供第一全局路径(例如图2中的全局路径204的剩余部分或新的全局路径220)的参考,用于致动车道变换,参考是基于比较(例如基于图3的操作314中的决定)选择的。

图7A-7C示出了参考全局路径控制车辆运动的其他示例700、702和704。示例700、702和/或704可以与本文别处描述的一个或多个其他示例一起使用。示例700、702和704示意性地示出了在AD系统的控制下执行车道变换的过程中的车辆706。在运动规划器的指导下,车辆在图中从左向右行驶。在每个示例700、702和704中,最初为车道变换创建全局路径708。示例700、702和704示出了车辆706执行车道变更的一些可能场景。

在示例700中,车辆从车道变换的开始到结束一直保持在全局路径708上。因此,在示例700中没有示出除全局路径708之外的路径。就方法300(图3)而言,示例700可以如下进行。全局路径708可以在操作302中定义,并且其他操作304和306可以在时间T@0执行。在每个随后的时间T@t,当在操作312执行比较和在操作314执行确定时,在感知输出和系数矩阵之间找到基本精确的匹配。因为车辆706在每次评估中都精确地保持在全局路径708上,所以每次都执行操作322中对控制器的输出,并且在车道变换期间不执行根据箭头316(图3)的重新规划。由于运动控制器的固有不精确性和其他不确定性,示例700可能不总是出现,但为了完整起见在此进行描述。

在示例702中,车辆已经稍微偏离全局路径708,并且实际上已经沿着路径710行驶了部分车道变换,如图所示。也就是说,除了在路径710上行驶时,示例702中车辆706实际采取的路线已经在全局路径708上。就方法300(图3)而言,示例702可以如下进行。全局路径708可以在操作302中定义,并且其他操作304和306可以在时间T@0执行。在一个或多个后续时间T@t,当车辆706仍处于路径708时,操作312处的比较和操作314处的确定可以导致在感知输出和系数矩阵之间找到最接近的匹配(例如精确匹配)。此外,在一个或多个随后的时间T@t,当车辆706处于路径710并且正在执行操作312处的比较和操作314处的确定时,在感知输出和系数矩阵之间找到最接近的匹配。也就是说,感知输出在矩阵502(图5)的至少一个系数组的阈值差之内,因此操作314的结果是“是”。因此,在示例702中,在车道变换期间,不执行根据箭头316(图3)的重新规划。

在示例704中,车辆比在示例702中偏离全局路径708更多,并且实际上已经沿着路径712行驶了部分车道变换,如所指示。也就是说,在示例702中车辆706实际采取的路线最初在全局路径708上,直到车辆706开始在路径712上行驶。就方法300(图3)而言,示例704可以如下进行。全局路径708可以在操作302中定义,并且其他操作304和306可以在时间T@0执行。在一个或多个后续时间T@t,当车辆706在路径712上并且正在执行操作312处的比较和操作314处的确定时,在感知输出和系数矩阵之间没有发现紧密匹配。也就是说,感知输出不在矩阵502(图5)的至少一个系数组的阈值差内,因此操作314的结果是“否”。方法300因此可以通过返回到操作302根据箭头316(图3)执行重新规划。这样,在某个时间点(例如在图3中的T@t之一),可以在示例704中定义新的全局路径714,并且新的全局路径714可以由AD系统而不是全局路径708的剩余部分提供给控制器。也就是说,新的全局路径714可被定义来取代先前在车道变换中定义的全局路径708。这样,由于生成新的全局路径714,全局路径708的一部分708’在这里没有被使用(例如被AD系统的控制器跟随)。

图8示出了车辆800的示例。车辆800可以与本文别处描述的一个或多个其他示例一起使用。车辆800包括ADAS/AD系统802和车辆控制器804。ADAS/AD系统802可以使用下面参考图9描述的一些或所有部件来实现。ADAS/AD系统802包括传感器806和规划算法808。为了简单起见,这里省略了车辆800可以包括的其他方面,包括但不限于可以实现ADAS/AD系统802的车辆800的其他部件。

这里描述的传感器806还包括适当的电路和/或可执行程序,用于处理传感器输出并基于该处理执行检测。这种电路和/或可执行程序可以在与执行环境感测的感测部件相同的物理壳体中实现,或者可以与其分开实现。传感器806可以包括雷达810。在一些实施方式中,雷达810可以包括至少部分基于无线电波的任何物体检测系统。例如,雷达810可以相对于车辆朝向前方,并且可以用于至少检测到一个或多个其他物体(例如另一车辆)的距离。雷达810可以通过感测与车辆800相关的物体的存在来检测交通事件。例如,雷达810可以在车辆800的车道变换期间使用。

传感器806可以包括激光雷达812。在一些实施方式中,激光雷达812可以包括至少部分基于激光的任何物体检测系统。例如,激光雷达812可以相对于车辆定向在任何方向,并且可以用于至少检测到一个或多个其他物体(例如车道或另一车辆)的距离。激光雷达812可以通过感测与车辆800相关的物体的存在来检测交通事件。例如,激光雷达812可以在车辆800的车道变换期间使用。

传感器806可以包括相机814。在一些实施方式中,相机814可以包括车辆800考虑其信号的任何图像传感器。例如,相机814可以相对于车辆朝向任何方向,并且可以用于检测车辆、车道、车道标志和/或路标。相机814可以通过可视地记录与车辆800相关的环境来检测交通事件。例如,相机814可以在车辆800车道变换期间使用。

传感器806可以包括超声波传感器816。在一些实施方式中,超声波传感器816可以包括用于基于超声波至少检测物体接近度的任何发射器、接收器和/或收发器。例如,超声波传感器816可以定位于车辆的外表面处或附近。超声波传感器816可以通过感测与车辆800相关的物体的存在来检测交通事件。例如,超声波传感器816可以在车辆800车道变换期间使用。

当ADAS/AD系统802控制车辆800的运动时,传感器806中的任何一个单独或者两个或更多个传感器806共同可以产生本地信息的输出。在一些实施方式中,在执行车道变换时可以考虑这种输出。在一些实施方式中,一个或多个其他类型的传感器可以另外或替代地包括在传感器806中。

响应于一个或多个检测,规划算法808可以为ADAS/AD系统802规划执行一个或多个动作,或者不执行任何动作。可以考虑一个或多个传感器806的输出。在一些实施方式中,规划算法808可以定义速度增加和/或减少,和/或横向偏移变化,仅举两个示例。

车辆控制器804可以包括转向控制器818。在一些实施方式中,ADAS/AD系统802和/或车辆800的另一驾驶员通过操纵转向控制器818来调整至少一个车轮的转向角,从而控制车辆800的轨迹。转向控制器818可以配置成通过转向控制器818和可调节轮之间的机械连接来控制转向角,或者可以是线控转向系统的一部分。

车辆控制器804可以包括档位控制器820。在一些实施方式中,ADAS/AD系统802和/或车辆800的另一驾驶员使用档位控制器820从车辆的多个操作模式(例如驾驶模式、空档模式或停车模式)中进行选择。例如,档位控制器820可以用于控制车辆800中的自动变速器。

车辆控制器804可以包括信号控制器822。在一些实施方式中,信号控制器822可以控制车辆800可以产生的一个或多个信号。例如,信号控制器822可以控制车辆800的转向信号和/或喇叭。

车辆控制器804可以包括制动控制器824。在一些实施方式中,制动控制器824可以控制一种或多种类型的制动系统,其被设计成使车辆减速、停止车辆和/或在停止时保持车辆静止。例如,制动控制器824可以由ADAS/AD系统802致动。作为另一示例,制动控制器824可以由驾驶员使用制动踏板来致动。

车辆控制器804可以包括加速控制器826。在一些实施方式中,加速控制器826可以控制车辆的一种或多种类型的推进马达。例如,加速控制器826可以控制车辆800的电动马达和/或内燃机。

车辆800可以包括用户界面828。用户界面828可以包括音频接口830。在一些实施方式中,音频接口830可以包括位于乘客车厢中的一个或多个扬声器。例如,音频接口830可以至少部分地与车辆中的信息娱乐系统一起操作。

用户界面828可以包括可视界面832。在一些实施方式中,可视界面832可以包括车辆800的乘客车厢中的至少一个显示设备。例如,可视界面832可以包括触摸屏设备和/或仪表组显示器。

图9示出了可以用于实现本公开的各方面的计算设备900的示例架构,包括本文描述的任何系统、装置和/或技术,或者可以在各种可能的实施例中使用的任何其他系统、装置和/或技术。

图9所示的计算设备可用于执行这里描述的操作系统、应用程序和/或软件模块(包括软件引擎)。

在一些实施例中,计算设备900包括至少一个处理设备902(例如处理器),诸如中央处理单元(CPU)。各种处理设备可从各种制造商处获得,例如Intel或Advanced MicroDevices。在该示例中,计算设备900还包括系统存储器904,以及将包括系统存储器904的各种系统部件耦合至处理设备902的系统总线906。系统总线906是可以使用的任何数量类型的总线结构之一,包括但不限于存储器总线或存储器控制器;外围总线;以及使用多种总线架构中的任何一种的本地总线。

可以使用计算设备900实现的计算设备的示例包括台式计算机、膝上型计算机、平板计算机、移动计算设备(诸如智能电话、触摸板移动数字设备或其他移动设备),或者配置为处理数字指令的其他设备。

系统存储器904包括只读存储器908和随机存取存储器910。基本输入/输出系统912包含诸如在启动时用于在计算设备900内传输信息的基本例程,可以存储在只读存储器908中。

在一些实施例中,计算设备900还包括辅助存储设备914,例如硬盘驱动器,用于存储数字数据。辅助存储设备914通过辅助存储接口916连接到系统总线906。辅助存储设备914及其相关的计算机可读介质为计算设备900提供计算机可读指令(包括应用程序和程序模块)、数据结构和其他数据的非易失性和非暂时性存储。

尽管这里描述的示例环境采用硬盘驱动器作为辅助存储设备,但在其他实施例中也使用其他类型的计算机可读存储介质。这些其他类型的计算机可读存储介质的示例包括盒式磁带、闪存卡、数字视频盘、伯努利盒式磁带、光盘只读存储器、数字多功能盘只读存储器、随机存取存储器或只读存储器。一些实施例包括非暂时性介质。例如,计算机程序产品可以有形地包含在非暂时性存储介质中。此外,这种计算机可读存储介质可以包括本地存储或基于云的存储。

多个程序模块可以存储在辅助存储设备914和/或系统存储器904中,包括操作系统918、一个或多个应用程序920、其他程序模块922(诸如这里描述的软件引擎)和程序数据924。计算设备900可以利用任何合适的操作系统,诸如Microsoft Windows

在一些实施例中,用户通过一个或多个输入设备926向计算设备900提供输入。输入设备926的示例包括键盘928、鼠标930、麦克风932(例如用于语音和/或其他音频输入)、触摸传感器934(例如触摸板或触敏显示器)以及手势传感器935(例如用于手势输入)。在一些实施方式中,输入设备926基于存在、接近和/或运动来提供检测。在一些实施方式中,用户可以走进他们的家,并且这可以触发对处理设备的输入。例如,输入设备926然后可以促进用户的自动化体验。其他实施例包括其他输入设备926。输入设备可以通过耦合到系统总线906的输入/输出接口936连接到处理设备902。这些输入设备926可以通过任何数量的输入/输出接口连接,例如并行端口、串行端口、游戏端口或通用串行总线。在一些可能的实施例中,输入设备926和输入/输出接口936之间的无线通信也是可能的,并且包括红外、

在该示例实施例中,显示设备938比如监视器、液晶显示设备、发光二极管显示设备、投影仪或触敏显示设备也经由接口比如视频适配器940连接到系统总线906。除了显示设备938之外,计算设备900可以包括各种其他外围设备(未示出),诸如扬声器或打印机。

计算设备900可以通过网络接口942连接到一个或多个网络。网络接口942可以提供有线和/或无线通信。在一些实施方式中,网络接口942可以包括一个或多个天线,用于发送和/或接收无线信号。当在局域网环境或广域网环境(比如因特网)中使用时,网络接口942可以包括以太网接口。其他可能的实施例使用其他通信设备。例如,计算设备900的一些实施例包括用于跨网络通信的调制解调器。

计算设备900可以包括至少某种形式的计算机可读介质。计算机可读介质包括可由计算设备900访问的任何可用介质。举例来说,计算机可读介质包括计算机可读存储介质和计算机可读通信介质。

计算机可读存储介质包括在配置成存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何设备中实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质包括但不限于随机存取存储器、只读存储器、电可擦除可编程只读存储器、闪存或其他存储技术、光盘只读存储器、数字多功能盘或其他光存储、盒式磁带、磁带、磁盘存储或其他磁存储设备,或者可用于存储所需信息并可由计算设备900访问的任何其他介质。

计算机可读通信介质通常包含计算机可读指令、数据结构、程序模块或诸如载波或其他传输机制的调制数据信号中的其他数据,并且包括任何信息传递介质。术语“调制数据信号”指的是以在信号中编码信息的方式设置或改变其一个或多个特征的信号。作为示例,计算机可读通信介质包括有线介质,例如有线网络或直接线连接,以及无线介质,例如声学、射频、红外线和其他无线介质。任何上述的组合也包括在计算机可读介质的范围内。

图9中示出的计算设备也是可编程电子设备的示例,其可以包括一个或多个这样的计算设备,并且当包括多个计算设备时,这样的计算设备可以与合适的数据通信网络耦合在一起,以便共同执行这里公开的各种功能、方法或操作。

本说明书中使用的术语“基本”和“大约”用于描述和说明小的波动,例如由于加工中的变化。例如,它们可以指小于或等于±5%,例如小于或等于±2%,例如小于或等于±1%,例如小于或等于±0.5%,例如小于或等于±0.2%,例如小于或等于±0.1%,例如小于或等于±0.05%。此外,当在此使用时,不定冠词比如“一”或“一个”表示“至少一个”。

应该理解,前述概念和下面更详细讨论的附加概念的所有组合(假设这些概念不是相互矛盾的)被认为是这里公开的发明主题的一部分。特别地,出现在本公开末尾的要求保护的主题的所有组合被认为是这里公开的发明主题的一部分。

已经描述了许多实施方式。然而,应当理解,在不脱离本说明书的精神和范围的情况下,可以进行各种修改。

此外,图中所示的逻辑流程不需要所示的特定顺序或连续顺序来实现期望的结果。此外,可以提供其他过程,或者可以从所描述的流程中删除过程,并且可以向所描述的系统添加其他部件,或者从所描述的系统中删除其他部件。因此,其他实施方式也在以下权利要求的范围内。

尽管如本文所述,已经示出了所描述的实施方式的某些特征,但本领域技术人员现在将会想到许多修改、替换、改变和等同物。因此,应当理解,所附权利要求旨在覆盖落在实施方式范围内的所有这样的修改和改变。应该理解的是,它们仅仅是以示例的方式给出的,而不是限制性的,并且可以进行形式和细节上的各种改变。这里描述的装置和/或方法的任何部分可以任何组合进行组合,除了互斥的组合。这里描述的实施方式可以包括所描述的不同实施方式的功能、部件和/或特征的各种组合和/或子组合。

相关技术
  • 一种基于试验车辆信息的禁止变换车道长度的确定方法
  • 一种基于试验车辆信息的禁止变换车道长度的确定方法
技术分类

06120116497162