CN111338341B - 车辆避障方法和设备、电子设备、车辆及存储介质 - Google Patents
车辆避障方法和设备、电子设备、车辆及存储介质 Download PDFInfo
- Publication number
- CN111338341B CN111338341B CN202010112194.XA CN202010112194A CN111338341B CN 111338341 B CN111338341 B CN 111338341B CN 202010112194 A CN202010112194 A CN 202010112194A CN 111338341 B CN111338341 B CN 111338341B
- Authority
- CN
- China
- Prior art keywords
- obstacle
- actual
- vehicle
- position data
- boundary position
- 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 title claims abstract description 68
- 238000013138 pruning Methods 0.000 claims abstract description 31
- 230000000875 corresponding effect Effects 0.000 claims description 16
- 230000003238 somatosensory effect Effects 0.000 claims description 8
- 230000015654 memory Effects 0.000 claims description 6
- 230000002596 correlated effect Effects 0.000 claims description 2
- 230000002829 reductive effect Effects 0.000 abstract description 12
- 238000009966 trimming Methods 0.000 description 39
- 238000004364 calculation method Methods 0.000 description 13
- 238000005457 optimization Methods 0.000 description 13
- 101100083446 Danio rerio plekhh1 gene Proteins 0.000 description 8
- 230000000694 effects Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 101100129500 Caenorhabditis elegans max-2 gene Proteins 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000003936 working memory Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000036461 convulsion Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000005211 surface analysis Methods 0.000 description 1
Classifications
-
- 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
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- 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/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Traffic Control Systems (AREA)
Abstract
提供一种车辆避障方法和设备、电子设备、车辆及存储介质,可用于智能驾驶。所述车辆避障方法包括:获得车辆所行驶的道路上的实际第一障碍物的实际边界位置数据;对于所述实际边界位置数据的至少一部分进行修剪,以获得所述实际第一障碍物的经修剪边界位置数据,所述经修剪边界位置数据所对应的经修剪第一障碍物相比于所述实际第一障碍物被缩减;以及基于所述经修剪边界位置数据,确定要向用于求解所述车辆的避障路线的模型施加的约束条件。
Description
技术领域
本公开涉及智能驾驶领域,特别涉及车辆避障方法和设备、电子设备、车辆及计算机可读存储介质。
背景技术
近年来,智能驾驶技术得到了业界广泛关注,车辆避障也是智能驾驶技术中一个重要的方面。智能驾驶中的车辆避障指的是根据障碍物的位置来规划行车路线从而准确地避开障碍物的操作。车辆避障方法一般可以分为两类。第一类车辆避障方法通过动态规划算法来确定避障路线,例如先设计备选路线,再对各备选路线进行评价,并基于评价结果来选择避障路线。根据第一种车辆避障方法,在评价备选路线时,通过加大与障碍物相交的备选路线的损失函数来尽可能地选择可以避障的路线。第二类车辆避障方法通过数学优化模型(例如数学优化算法)来确定避障路线,其例如考虑道路上存在的障碍物作为避障约束,并基于该避障约束来确定行驶路线以实现避障。
前述的第一类车辆避障方法由于不能向所使用的动态规划算法添加硬性的避障约束,所以该类避障方法的避障能力往往较差,并且难以较好地解决由于例如路线的突然更改导致的用户体感差的问题。第二类车辆避障方法由于使用数学优化模型并且基于避障约束,因此避障能力相对较强,灵活性也相对较强。
在此部分中描述的方法不一定是之前已经设想到或采用的方法。除非另有指明,否则不应假定此部分中描述的任何方法仅因其包括在此部分中就被认为是现有技术。类似地,除非另有指明,否则此部分中提及的问题不应认为在任何现有技术中已被公认。
发明内容
根据本公开的一方面,提供一种车辆避障方法,包括:获得车辆所行驶的道路上的实际第一障碍物的实际边界位置数据;对于所述实际边界位置数据的至少一部分进行修剪,以获得所述实际第一障碍物的经修剪边界位置数据,所述经修剪边界位置数据所对应的经修剪第一障碍物相比于所述实际第一障碍物被缩减;以及基于所述经修剪边界位置数据,确定要向用于求解所述车辆的避障路线的模型施加的约束条件。
根据本公开的另一方面,提供一种车辆避障设备,包括:障碍物边界获得单元,被配置用于获得车辆所行驶的道路上的实际第一障碍物的实际边界位置数据;边界修剪单元,被配置用于对于所述实际边界位置数据的至少一部分进行修剪,以获得所述实际第一障碍物的经修剪边界位置数据,所述经修剪边界位置数据所对应的经修剪第一障碍物相比于所述实际第一障碍物被缩减;以及约束条件施加单元,被配置用于基于所述经修剪边界位置数据,确定要向用于求解所述车辆的避障路线的模型施加的约束条件。
根据本公开的另一方面,提供一种用于智能驾驶的电子设备,包括:处理器;以及存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行上述的车辆避障方法。
根据本公开的另一方面,提供一种车辆,包括:上述的用于智能驾驶的电子设备。
根据本公开的另一方面,还提供一种存储程序的非暂态计算机可读存储介质,所述程序包括指令,所述指令在由电子设备的处理器执行时,致使所述电子设备执行上述的车辆避障方法。
附图说明
附图示例性地示出了实施例并且构成说明书的一部分,与说明书的文字描述一起用于讲解实施例的示例性实施方式。所示出的实施例仅出于例示的目的,并不限制权利要求的范围。在所有附图中,相同的附图标记指代类似但不一定相同的要素。
另外,在本公开中示出的附图是为了举例说明的目的,并且这些图不一定是按照比例绘制的。
图1是示出根据本公开示例性实施例的车辆避障方法的流程图;
图2示出了根据本公开示例性实施例的的道路上的一个实际障碍物以及对该障碍物的边界进行修剪得到的经修剪障碍物的示例;
图3进一步示出了根据本公开示例性实施例的道路右侧的一个实际障碍物以及对该障碍物的左边界进行修剪后得到的经修剪障碍物的示例;
图4示出了根据本公开示例性实施例的在道路两侧的两个实际障碍物以及对这两个障碍物的边界进行修剪后得到的经修剪障碍物的示例;
图5示出了根据本公开示例性实施例的道路上的一个实际障碍物以及对该障碍物的边界进行修剪得到的经修剪障碍物的另一个示例;
图6示出了根据本公开示例性实施例的在能够通过例如猛打方向盘避障的场景下对障碍物进行修剪的一个示例;
图7示出了根据本公开示例性实施例的用于智能驾驶的电子设备的示意性框图;
图8是示出根据本公开示例性实施例的包含所述电子设备的车辆的示意性框图;
图9是示出根据本公开示例性实施例的车辆避障设备的示意性框图;以及
图10是示出能够应用于示例性实施例的示例性计算设备的结构框图。
具体实施方式
在本公开中,除非另有说明,否则使用术语“第一”、“第二”等来描述各种要素不意图限定这些要素的位置关系、时序关系或重要性关系,这种术语只是用于将一个要素与另一要素区分开。在一些示例中,第一要素和第二要素可以指向该要素的同一实例,而在某些情况下,基于上下文的描述,它们也可以指代不同实例。
在本公开中对各种所述示例的描述中所使用的术语只是为了描述特定示例的目的,而并非旨在进行限制。除非上下文另外明确地表明,如果不特意限定要素的数量,则该要素可以是一个也可以是多个。此外,本公开中所使用的术语“和/或”涵盖所列出的项目中的任何一个以及全部可能的组合方式。
如前所述,第二类车辆避障方法通过数学优化模型(例如数学优化算法)来确定避障路线,其例如考虑道路上存在的障碍物的例如位置和大小的数据作为避障约束条件,并基于该避障约束条件来确定行驶路线以实现避障。对于第二类车辆避障方法,虽然其使用的数学优化模型的避障能力较强,但是其现有的约束条件可能导致以下情形中的一个或多个:由于障碍物的位置和大小使得无法求解出避障行驶路线,导致车辆急停;以及由于障碍物的位置和大小使得求解出的避障路线会导致例如急转弯等需要剧烈的车辆横向控制操作(例如猛打方向盘的操作)。上述情形中的任一个均会使得乘客体感较差。
本公开主要对于前述的第二类车辆避障方法进行改进,通过例如对于该类车辆避障方法所使用的数学优化模型的约束条件进行管理和优化,避免算法求解失败和/或避免车辆的转弯曲率超限。
图1示出了根据本公开示例性实施例的一种车辆避障方法的流程图。
如图1所示,根据本公开示例性实施例的一种车辆避障方法可以包括如下所述的步骤S110~S130。
在步骤S110,获得车辆所行驶的道路上的实际第一障碍物的实际边界位置数据。
为了与修剪后的障碍物进行区分,本文将检测到的障碍物称为实际障碍物(简写为“RO”)。如图2所示,车辆行使道路上有一个障碍物,在此称为实际第一障碍物RO1(由图2中的实线矩形框表示)。
对于该实际第一障碍物RO1,获得其实际边界位置数据。获得实际边界位置数据的方法例如可以通过位置探测器、距离探测器等来实现,例如安装在车辆上的激光雷达传感器等。
所述位置数据例如可以用位置坐标来表示。例如,可以使得所述道路的中间某一点作为坐标原点,以所述道路的第一侧作为负方向,以所述道路的另一侧(即第一侧的相反侧,之后将称为“第二侧”)作为正方向。所述第一侧例如可以为右侧,则所述第二侧可以为左侧。在本公开中,示例性实施例均基于第一侧为右侧且第二侧为左侧来进行描述,但应理解,当然也可以将第一侧和第二侧与右侧和左侧的对应关系互换。
根据一些实施方式,对于第一障碍物的修剪计算,如果实际第一障碍物位于道路的第一侧,则以所述道路的第二侧作为正方向;如果实际第一障碍物位于道路的第二侧,则以所述道路的第一侧作为正方向。
根据一些实施例,所述实际边界位置数据可以包括障碍物的多个边界点的坐标数据。例如,如图2所示,该实际第一障碍物RO1的实际边界位置数据可以由图2中的实线矩形框的四个顶点的位置坐标来表示。请注意,为了便于描述起见,图2中示出的障碍物的形状是规则的,但是实际上检测到的障碍物的形状不一定是规则的,在此情况下,其实际边界位置数据仍然可以包括检测到的该障碍物的多个边界点的坐标数据,或者包括能够容纳检测到的该障碍物的矩形的四个顶点的位置坐标。
在步骤S120,对于所述实际边界位置数据的至少一部分进行修剪,以获得该实际第一障碍物的经修剪边界位置数据,所述经修剪边界位置数据所对应的经修剪第一障碍物相比于所述实际第一障碍物被缩减。
在本步骤,可以对于上述的实际第一障碍物的实际边界位置数据的至少一部分进行修剪。所述至少一部分可以是多个边界中的其中一个边界的位置数据。例如如图2所示,对于一个位于道路右侧的实际障碍物RO1而言,可以修剪该障碍物的左边界的位置数据,以使所得到的经修剪左边界位置数据比实际左边界位置数据靠右,即得到的如图2所示的经修剪第一障碍物RO1’(图2中的虚线矩形框,与所述经修剪边界位置数据对应)比所述实际第一障碍物发生缩减。如图2所示,图2中的虚线矩形框的右边界比实线矩形框的右边界靠右,该虚线框比实线框小。
当然,也可以修剪一个实际障碍物的其他边界位置数据,例如右边界位置数据,前边界位置数据或者后边界位置数据等等。甚至,可以仅修剪某个或某几个边界位置数据的一部分,例如,可以修剪一个形状不规则的实际障碍物的后部突出部分等。总之,如何进行修剪可以视实际需要来决定。
上述的经修剪边界数据可以包含经修剪的部分边界数据(例如经修剪的左边界数据),还可以包含未经修剪的部分边界数据(例如右边界数据)。即,经修剪边界数据可以包含对应的经修剪障碍物的完整边界数据,经修剪第一障碍物RO1’的经修剪边界数据包括图2所示的整个虚线矩形框的边界数据。
图2所示的经修剪第一障碍物RO1’比实际第一障碍物RO1发生缩减,是图2中的RO1的左边界缩减为RO1’的左边界,即左边界位置向障碍物中心(或者说障碍物内部)平移了。即,图2所示的缩减,实际上是障碍物边框的上下边界缩短了,但是左边界的长度并没有变短。总的来说,图2所示的缩减是左边界向右侧偏移了。
在这种情况下,“修剪左边界”实际上可以意味着减小RO1的左边界上两个顶点的横坐标(纵坐标不变),经减小的左边界横坐标即为RO1’的经修剪左边界的横坐标。
如上所述,假设在以道路中点为原点,左侧方向为正方向的坐标系中,修剪左侧的实际障碍物边界数据,意味着左上顶点和左下顶点的横坐标减小(即修剪为左边界更加向右)。
在步骤S130,基于所述经修剪边界位置数据,确定要向用于求解所述车辆的避障路线的模型(可以称为“车辆避障路线求解模型”,或者简称为“求解模型”)施加的约束条件。
在本步骤中,对于车辆避障路线求解模型施加经过优化的约束条件,所施加的优化约束条件是基于所述经修剪边界位置数据得到的。
例如,车辆避障路线求解模型可以是二次规划-样条路径优化器(qp-spline pathoptimizer)算法。例如,在以左侧为正方向的情况下,可以将基于所述经修剪边界位置数据得到的约束条件作为该算法中的边界约束,具体地,可以作为该算法中的边界约束的采样点(sampled points for boundary constraint)。请注意,车辆避障路线求解模型不限于这里举出的该例,而是还可以为任何其他适合的算法或模型。
根据本公开示例性实施例的上述车辆避障方法通过对于实际障碍物的实际边界位置数据的至少一部分进行修剪,并基于经修剪边界位置数据,来确定要施加于车辆避障路线求解模型的约束条件,能够有效地避免避障路线求解失败导致的急停而影响用户乘坐体感和/或有效地缓解乃至避免车辆转弯曲率过大导致剧烈的车辆横向控制操作(例如上述的猛打方向盘的操作)而影响用户乘坐体感。
根据一些实施例,假设所述实际第一障碍物位于所述道路的第一侧,则所述修剪包括对所述实际第一障碍物的第二侧的实际边界位置数据进行修剪,以获得所述经修剪第一障碍物的第二侧的经修剪边界位置数据,所述第二侧是所述第一侧的相反侧。例如,假设第一侧为右侧,第二侧为左侧,则步骤S120中提到的修剪包括对于位于道路的右侧的实际第一障碍物RO1的左侧的实际边界位置数据进行修剪,以获得经修剪第一障碍物RO1’的左侧的经修剪边界位置数据。
在实际障碍物位于道路第一侧的情况下,通过修剪实际障碍物的第二侧边界,可以使得经修剪障碍物的边界围成的障碍物轮廓(或尺寸)减小,由此在经修剪障碍物与道路第二侧边界之间留出更大的空间,从而可以避免避障路线求解失败而导致的急停,而且对于车辆横向控制来说,可以减少或者避免剧烈的车辆横向控制操作(例如猛打方向盘的操作)。
这里请注意,本公开中的障碍物边界位置数据修剪仅针对车辆横向控制,而不将其应用于油门、刹车等的操作控制。换言之,上述的用于求解所述车辆的避障路线的模型在添加了本文公开的经优化的约束条件之后可以用于车辆横向控制。车辆横向控制包括例如车辆的方向盘控制。另外,某些车辆上可能没有安装方向盘,比如安装的是手柄,则车辆横向控制包括例如对于手柄操作的控制。再另外,甚至某些车辆上并没有安装物理的方向控制装置,而是可能通过虚拟的数据控制装置来控制车辆方向,此时,车辆横向控制包括利用这样的虚拟的数据控制装置来控制例如车辆的转向等。这里举例说明了车辆横向控制的几种示例,但是本公开并不局限于这样的示例。
虽然在障碍物边界位置数据修剪之后,有可能存在基于经修剪障碍物而规划的避障路线会穿过实际障碍物,但由于智能驾驶中的油门、刹车等的操作控制其实还是基于实际障碍物的(而不是像方向盘操作那样可以基于经修剪障碍物),所以车辆实际上能够在与实际障碍物碰撞之前的合理时间内停车,从而并不会导致事故的发生。通过这种方式,本公开的障碍物修剪将本可能发生的车辆的急停或急转弯等转化成智能驾驶中的合理刹车控制,从而大大提升了乘客的体感。
根据一些实施例,所述第二侧的经修剪边界位置数据包括所述第二侧的第一经修剪边界位置数据,其中,在所述实际第一障碍物的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的在横向方向上的距离小于允许所述车辆安全通过的最小通行宽度的情况下,所述第二侧的第一经修剪边界位置数据基于安全通行宽度,这里,所述安全通行宽度大于或等于所述最小通行宽度,所述横向方向是与道路延伸的纵向方向垂直的方向。
图3示出了根据本公开示例性实施例的道路右侧的一个实际障碍物以及对该障碍物的左边界进行修剪后得到的经修剪障碍物的示例。在图3的示例中,实际第一障碍物位于道路的第一侧(即图中的右侧)。如图3所示,所述实际第一障碍物RO1的所述第二侧(例如左侧)的实际边界与所述道路的所述第二侧(例如左侧)的边界之间的在横向方向(即,与道路延伸的纵向方向垂直的方向)上的距离可以称为横向距离DRO1。在横向距离DRO1小于安全通行宽度(在本文中可以用Wsafety表示)的情况下(可称为“情形1”),可以将所述实际第一障碍物RO1的第二侧(例如左侧)的实际边界位置数据修剪为基于安全通行宽度的第一经修剪边界位置数据。从图3可以看出,处在所述第二侧(例如左侧)的第一经修剪边界位置数据比所述第二侧(例如左侧)的实际边界位置数据更靠近第一侧(例如右侧),以在实际第一障碍物(更具体地,该障碍物的第二侧(例如左侧)的实际边界)与道路的第二侧(例如左侧)的边界之间留出安全通行宽度。这里,所述安全通行宽度大于或等于允许所述车辆安全通过的最小通行宽度(可以大于或等于该车辆的车身宽度Vsafety,在本文中为了方便描述和理解,假设最小通行宽度为车身宽度Vsafety)。由此可见,安全通行宽度Wsafety大于或等于该车辆的车身宽度Vsafety,例如,安全通行宽度Wsafety可以为“车身宽度Vsafety+一个安全距离Dsafety”,这里,Dsafety可以大于或等于0。可以根据需要来设置安全距离Dsafety的大小,在此不予赘述。
在本文中,当单独提及“边界”时,通常意指由相应的边界位置数据所构成的边界。在构成边界的边界位置数据例如为边界的顶点(例如图2和3中的矩形框的顶点)时,修剪边界或者修剪边界位置数据可以包括修剪该边界的相应顶点位置数据。
进一步举例来说,对于车辆即使紧贴路边行驶(在该实际第一障碍物RO1位于道路右侧的情况下,车辆紧贴道路的左侧行驶)也无法通过的情况(可称为“情形1”),对于该障碍物的左侧的实际边界位置数据按照下式1进行修剪,以确定该障碍物的左侧经修剪边界位置数据。
例如,如图3所示,可以对于该障碍物的左边界进行修剪,得到该障碍物的第一经修剪左边界LCmax1,在该障碍物的第一经修剪左边界LCmax1与道路的左边界LRB之间具有安全通行宽度Wsafety,如下式1所示。
LCmax1=LRB-Wsafety (1)
类似地,对于实际第一障碍物RO1位于道路左侧(即第一侧为左侧)并且车辆紧贴道路的右侧行驶也无法通过的情况,可以对于该障碍物的右侧的实际边界位置数据按照下式1’进行修剪,以确定该障碍物的右侧经修剪边界位置数据。
例如,可以对于该障碍物的右边界进行修剪,得到该障碍物的第一经修剪右边界RCmin1,在该障碍物的第一经修剪右边界RCmin1与道路的右边界RRB(图3示出了RRB)之间具有安全通行宽度Wsafety,如下式1’所示。
RCmin1=RRB+Wsafety (1’)
对于上式1’中的位置数据,其坐标方向与上式1中的相同,即,仍然以向左的方向为正方向,以向右的方向为负方向。通过这样保持位置数据的坐标方向的一致性,可以有效地保障计算的准确性。
另一方面,也可以基于障碍物位于不同的侧而采用不同的坐标方向来进行位置数据的相关计算以用于修剪,例如,对于实际第一障碍物RO1位于道路左侧(即第一侧为左侧),车辆紧贴道路的右侧行驶也无法通过的情况,也可以改为使得向右的方向为正方向,向左的方向为负方向。在这种情况下,对于该障碍物的右侧的实际边界位置数据按照下式1”进行修剪,以确定该障碍物的右侧经修剪边界位置数据。
例如,可以对于该障碍物的右边界进行修剪,得到该障碍物的第一经修剪右边界RCmax1(用于与上面式1’中的符号标记RCmin1相区分),在该障碍物的第一经修剪右边界RCmax1与道路的右边界RRB(图3示出了RRB)之间具有安全通行宽度Wsafety,如下式1”所示(其中正方向为向右的方向,负方向为向左的方向)。
RCmax1=RRB-Wsafety (1”)
由上述式1”可知,障碍物在左侧的情况下计算经修剪的右边界的公式1与障碍物在右侧的情况下计算经修剪的左边界的公式1”的形式相同,并且这两公式符号中与方向有关的量进行了左右交换。
另外,对于同一个障碍物,采用上述的式1’与采用上述的式1”得到的经修剪边界结果应该是相同的。也就是说,式1’与式1”只是表达的方式不同,其意义是相同的。而且,本公开不是仅限于上面给出的这几种示例的计算方式,而是还可以采用其他任何合适的计算方式。
由此,对于如果按照实际的障碍物边界进行判断,避障路线求解模型或者算法将面临无法求解(例如紧贴路边也无法通过)的情形,本公开的上述实施例给出了修剪实际障碍物的边界来为车辆通行留出安全通行宽度,从而对于例如方向盘控制的车辆横向控制而言,能够避免无法求解避障路线的问题。而且,在修剪之后,在障碍物与道路边界之间留出安全通行宽度的情况下,针对例如方向盘控制的车辆横向规划或控制将判断出无需剧烈的车辆横向控制操作(例如猛打方向盘)便可通过,从而与例如猛打方向盘的情况相比,使得乘客的体感得到有效的改善。
这里请注意,上述的修剪仅针对车辆横向控制(例如方向盘操作控制和规划),而不用于实际的油门刹车操作,即,实际的油门刹车操作仍然需要根据障碍物的实际边界来判断,因此不会发生因修剪边界(具体地例如,修剪边界位置数据)导致的事故。
在一些情况下,在所述道路的所述第二侧可能还存在实际第二障碍物RO2,如图4所示。图4示出了根据本公开示例性实施例的在道路两侧的两个实际障碍物以及对这两个障碍物的边界进行修剪后得到的经修剪障碍物的示例。如图4所示,道路上存在位于道路第一侧(例如右侧)的实际第一障碍物RO1以及位于道路第二侧(例如左侧)的实际第二障碍物RO2。
在所述实际第一障碍物RO1的所述第二侧(例如左侧)的实际边界与所述实际第二障碍物RO2的所述第一侧(例如右侧)的实际边界之间在横向方向(与道路延伸的纵向方向垂直的方向)上的距离小于允许所述车辆安全通过的最小通行宽度的情况(可称为“情形2”)下,所述第二侧(例如左侧)的经修剪边界位置数据包括第二侧(例如左侧)的第二经修剪边界位置数据,其中所述实际第一障碍物的第二侧(例如左侧)的第二经修剪边界位置数据使得在所述经修剪第一障碍物与所述实际第二障碍物或经修剪第二障碍物之间具有所述安全通行宽度Wsafety。
这里,在上述的情形2中,虽然在道路两侧分别存在一个障碍物,即总共存在两个障碍物,但是,可以对两侧的障碍物都进行修剪,也可以仅对一侧的障碍物进行修剪,并且,使得经修剪第一障碍物RO1’与所述实际第二障碍物RO2或经修剪第二障碍物RO2’之间具有所述安全通行宽度Wsafety。
根据一些实施例,假设所述实际第一障碍物RO1与所述车辆之间在所述纵向方向(即道路延伸的方向)上的距离比所述实际第二障碍物RO2与所述车辆之间在所述纵向方向上的距离更长(即,RO1比RO2距所述车辆远),则所述实际第一障碍物RO1的所述第二侧(例如左侧)的第二经修剪边界位置数据基于所述实际第一障碍物的所述第二侧(例如左侧)的实际边界的实际边界位置数据、所述实际第二障碍物的所述第一侧(例如右侧)的实际边界的实际边界位置数据、以及所述实际第一障碍物与所述实际第二障碍物之间在所述纵向方向上的距离。
换言之,在RO1比RO2距车辆远的情况下,可以根据RO1的第二侧(例如左侧)的实际边界、RO2的所述第一侧(例如右侧)的实际边界、以及RO1与RO2之间的纵向距离(沿道路延伸的方向的距离)来确定RO1的第二侧(例如左侧)的第二经修剪边界。而且,RO1与RO2之间的纵向距离越大,则对于RO1的第二侧(例如左侧)的边界的修剪程度越大。
根据一些实施例,第一实际障碍物RO1(如上所述,假设其位于右侧)的所述第二侧的第二经修剪边界位置数据(图4中表示为“第二经修剪边界”)LCmax2可以通过下式2来确定。
LCmax2=(LB1+RB2)/2+cSlongitudinal (2)
其中,如图4所示,LB1表示所述实际第一障碍物的所述第二侧(例如左侧)的实际边界的实际边界位置数据,RB2表示所述实际第二障碍物的所述第一侧(例如右侧)的实际边界的实际边界位置数据,Slongitudinal表示所述实际第一障碍物与所述实际第二障碍物之间在所述纵向方向上的距离。这里,可以假设从所述第一侧(例如右侧)指向所述第二侧(例如左侧)的方向为正方向,所述实际第一障碍物比所述实际第二障碍物在所述纵向方向上更远离所述车辆时,Slongitudinal的符号为正,所述实际第一障碍物比所述实际第二障碍物在所述纵向方向上更靠近所述车辆时Slongitudinal的符号为负,c为常数参数。
这里,在想要更偏重避让两个障碍物之中距车辆更近的那个障碍物(即,距离车辆较近的障碍物修剪得更多)的情况下,参数c可以是大于或等于0的值。
另一方面,在想要更偏重修剪两个障碍物之中距车辆更远的那个障碍物而对于距车辆较近的那个障碍物修剪得较少的情况下,参数c可以是负值,即小于0的值。
这里,参数c的符号与数值大小可以根据实际需求来设定,本公开对其不作任何多余的限制。换言之,参数c的取值与实际需求有关,可以根据想要获得的避障效果(修剪效果)来调整c的取值。
这里,如果第一障碍物RO1位于道路的左侧,且第二障碍物RO2位于道路的右侧,则位于左侧的第一障碍物RO1的经修剪右边界RCmin2的计算方式与上式2类似。具体地,可以基于以下的式2’来计算该第一障碍物RO1的经修剪右边界RCmin2。
RCmin2=(LB1+RB2)/2+cSlongitudinal (2’)
其中,LB1表示位于右侧的所述实际第二障碍物的实际左边界位置数据;RB2表示位于左侧的所述实际第一障碍物的实际右边界位置数据;Slongitudinal同样表示两个障碍物的纵向(沿道路方向)距离,当右侧障碍物在前时Slongitudinal取正值,当左侧障碍物在前时Slongitudinal取负值;c为常数参数。这里,参数c的符号与取值与式1中类似。
另一方面,也可以改变坐标方向,即以向右作为正方向,以向左作为负方向,此时可以将上面式1中的量进行左右交换,而公式的形式不变。
请注意,本公开不是仅限于上面给出的这几种示例的计算方式,而是还可以采用其他任何合适的计算方式。
根据一些实施例,假设所述实际第一障碍物与所述车辆之间在所述纵向方向上的距离比所述实际第二障碍物与所述车辆之间在所述纵向方向上的距离更长,则上述的车辆避障方法还可以包括:对所述实际第二障碍物的所述第一侧的实际边界位置数据进行修剪,其中,所述实际第一障碍物与所述实际第二障碍物之间在所述纵向方向上的距离越大,则修剪程度越低。
换言之,除了对实际第一障碍物进行修剪之外,也可以对实际第二障碍物执行修剪。与前面所述的对于实际第一障碍物的修剪相反,虽然对于实际第二障碍物的修剪程度也与这两个障碍物之间的纵向距离有关,但是,当两者之间的纵向距离越大时,对实际第二障碍物执行的修剪越少,甚至也可以不修剪。根据一些实施例,也可采用上述式(2)计算对实际第二障碍物执行修剪的第一侧的第二经修剪边界位置数据,只需将上述公式中的量进行左右交换并且以右侧作为正方向即可。
请注意,本公开不是仅限于上面给出的这几种示例的计算方式,而是还可以采用其他任何合适的计算方式。
根据一些实施例,对于所述实际第一障碍物的所述第二侧的实际边界位置数据的修剪程度比对于所述实际第二障碍物的所述第一侧的实际边界位置数据的修剪程度更高。
例如,如图4所示,对于上述的情形2,即左右两侧均有障碍物且即使沿这两侧的障碍物的中间行驶也无法通过的情况,可对于障碍物进行修剪,使其中距离车辆较近的一个障碍物尽可能保留实际边界(可以修剪得很少或者不修剪),而用更大力度对距离车辆较远的一个障碍物的实际边界进行修剪(可以将实际边界修剪掉较多)。根据一些实施例,上述式(2)中的项cSlongitudinal也可使得实现这一点。
本情形下的约束条件管理和优化的目的与情形1类似,也是为了修剪障碍物的边界以在两个障碍物之间尽量留出足够的车辆行驶空间,以避免算法失败以及兼顾乘客体感。
根据一些实施例,所述第二侧的经修剪边界位置数据包括所述第二侧的第三经修剪边界位置数据LCmax3,所述第二侧的第三经修剪边界位置数据基于能够使车辆通过的避障通行宽度,所述避障通行宽度大于或等于允许所述车辆安全通过的最小通行宽度。
其中,所述实际第一障碍物RO1的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的宽度越小,所述避障通行宽度越大。
这里的避障通行宽度与前面针对情形1讨论的安全通行宽度有所不同。对于情形1,也就是即使紧贴路边也无法通过的情况,通过在前面描述的修剪方案,虽然能够将实际第一障碍物的边界修剪得留出安全通行宽度,但是为了避免剧烈的车辆横向控制操作(例如猛打方向盘的操作),可以考虑采用可能更大的避障力度。例如,可以基于车道内实际剩余的可通过宽度,对障碍物边界进行修剪。本方案针对的也是即使紧贴路边也无法通过的情况,为了与上述的方案相区分,本文将本方案针对的情形称为“情形3”。
根据一些实施例,所述避障通行宽度与避障力度因子正相关,所述避障力度因子为(W-Wmin)/(Wsafety-Wmin),其中,如图5所示,W表示所述实际第一障碍物的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的宽度,Wmin表示假设所述第一障碍物位于道路中心时的所述第一障碍物的所述第二侧的边界与所述道路的所述第二侧的边界之间的宽度,Wsafety表示安全通行宽度,所述安全通行宽度大于或等于允许所述车辆安全通过的最小通行宽度。
图5示出了根据本公开示例性实施例的道路上的一个实际障碍物以及对该障碍物的边界进行修剪得到的经修剪障碍物的另一个示例。举例来说,对于情形3,如图5所示,在所述道路上的一个例如在右侧的障碍物与道路的左边界之间的剩余空间不足以使得车辆避障通过时,可以按照无法通过的程度,根据下式3修剪该障碍物的实际左边界,以避免不必要的打方向操作。
LCmax3=RRB+r(LCpass-RRB) (3)
其中,
其中,LCmax3是该右侧障碍物的经修剪左边界,RRB表示该道路的右边界,W表示该障碍物的实际左边界与该道路的左边界之间的宽度(车道内实际剩余的可通过宽度),Wmin表示假设该障碍物位于道路中央时道路上剩余的最小宽度,LCpass表示在车辆可以正常通过的情况下假设的该障碍物左边界位置,r表示所述避障力度因子,当r=1时,LCmax3=LCpass,而当r=0时,LCmax3=RRB。
再例如,对于情形3,在所述道路上的一个例如在左侧的障碍物与道路的右边界之间的剩余空间不足以使得车辆避障通过时,可以按照无法通过的程度,根据下式3’修剪该障碍物的实际右边界,以避免不必要的打方向操作,其中坐标方向与上面式3的一致,即正方向为向左的方向,负方向为向右的方向。
RCmin3=LRB-r(LRB-RCpass) (3’)
其中,
其中,RCmin3是该左侧障碍物的经修剪右边界,LRB表示该道路的左边界,W表示该障碍物的实际右边界与该道路的右边界之间的宽度(车道内实际剩余的可通过宽度),Wmin表示假设该障碍物位于道路中央时道路上剩余的最小宽度,RCpass表示在车辆可以正常通过的情况下假设的该障碍物右边界位置,r表示所述避障力度因子,当r=1时,RCmin3=RCpass,而当r=0时,RCmin3=LRB。
如上所述,式3’与式3的坐标方向相同,由此可以使得计算更方便且准确。另一方面,也可以基于障碍物处于不同侧而改变坐标方向,例如,在实际障碍物位于左侧时,也可以使得正方向为向右的方向,负方向为向左的方向,在这种情况下,可以根据下式3”修剪该障碍物的实际右边界,以避免不必要的打方向操作。
RCmax3=LRB+r(RCpass-LRB) (3”)
其中,
其中,RCmax3表示该左侧障碍物的经修剪右边界,LRB表示该障碍物的左边界,W表示该障碍物的实际右边界与该道路的右边界之间的宽度(车道内实际剩余的可通过宽度),Wmin表示假设该障碍物位于道路中央时道路上剩余的最小宽度,RCpass表示在车辆可以正常通过的情况下假设的障碍物右边界位置,r表示所述避障力度因子。
由上述式3”可知,在相对于式3改变了坐标方向的情况下,障碍物在左侧的情况下计算经修剪的右边界的公式(式3”)与障碍物在右侧的情况下计算经修剪的左边界的公式(式3)在形式上相同,并且公式符号中与方向有关的量进行了左右交换。
由于障碍物在左侧的情况与障碍物在右侧的情况类似,因此本公开不再单独对于障碍物在左侧的情况给出图示。
请注意,本公开不是仅限于上面给出的这几种示例的计算方式,而是还可以采用其他任何合适的计算方式。
本情形下的约束条件管理和优化的目的包括避免不必要的车辆横向控制操作(例如不必要的方向盘操作),从而有效提升乘客体感。例如,对于本情形3,实际障碍物的经修剪边界比道路正中间更靠近该障碍物所在一侧(即第一侧),因此通常会规划出正直的路线,达到正常停车等待、排队的效果。
与情形1的策略相比,情形3的策略通常修剪的程度更高。不过在某些情况下,例如道路的宽窄变化特别多,即道路的边界特别不规则时,情形1的修剪策略可以取道路最窄处的路宽,从而把障碍物边界修剪得较多。对于情形3而言,对于道路边界不规则的该情况进行的障碍物修剪有可能不如情形1修剪得多。
上面对于道路内剩余空间不足以使得车辆通过的情况,分别使用了不同的修剪策略。下面,将结合图6对于强行绕过会导致剧烈的车辆横向控制操作(例如猛打方向盘)的情况(可称为“情形4”)进行描述。
根据一些实施例,所述第二侧的经修剪边界位置数据包括第二侧的第四经修剪边界位置数据,所述第二侧的第四经修剪边界位置数据LCmax4在所述车辆的所述第一侧的边界位置数据L0的基础上,向所述第一侧方向偏移与所述车辆和所述实际第一障碍物之间在道路延伸方向上的距离S相关联的距离。
图6示出了根据本公开示例性实施例的在能够通过例如猛打方向盘避障的场景下对障碍物进行修剪的一个示例。如图6所示,对于强行绕过会导致例如猛打方向盘的情况,对障碍物的边界进行修剪,通过将障碍物的边界修剪为使得所述第二侧的第四经修剪边界位置数据LCmax4在所述车辆的所述第一侧的边界位置数据L0的基础上,向所述第一侧方向偏移与所述车辆和所述实际第一障碍物之间在道路延伸方向上的距离S相关联的距离,能够避免这样的例如猛打方向盘的操作。
根据一些实施例,所述第二侧的第四经修剪边界位置数据LCmax4为L0+kS,其中L0表示所述车辆的所述第一侧的边界位置数据,S表示所述车辆和所述实际第一障碍物之间在道路延伸方向上的距离,k表示体感因子,k>0。
更具体地,举例来说,对于强行绕过会导致猛打方向的例如右侧的一个实际障碍物,根据下式4进行修剪,以保证乘客的体感。
LCmax4=L0+kS (4)
其中,LCmax4是该右侧障碍物的经修剪左边界;L0为车辆当前所在的横向位置(障碍物在右侧时,L0为车辆的右边界);k可以为设定的与体感相关的参数,其中k越小体感越好,避障能力越弱;S为车辆与该右侧障碍物之间的纵向(道路延伸方向)距离。
这里,关于车辆与该右侧障碍物之间的纵向(道路延伸方向)距离S(S>0),可以根据需要来设定S的上限值,以表明采用情形4的修剪策略的条件。也就是说,在S大于设定的该上限值时,可以不用涉及情形4的修剪,而在S小于等于该上限值且大于0的情况下,可以考虑采用情形4的修剪策略。
再举例来说,对于强行绕过会导致猛打方向的例如左侧的一个实际障碍物,可以根据下式4’对该障碍物的右边界进行修剪,以保证乘客的体感,其中,坐标方向与式4的坐标方向一致,即仍然以向左的方向为正方向,以向右的方向为负方向。
RCmin4=L0-kS (4’)
其中,RCmin4是该左侧障碍物的经修剪右边界;L0为车辆当前所在的横向位置(障碍物在左侧时,L0为车辆的左边界);k可以为设定的与体感相关的参数,其中k越小体感越好,避障能力越弱;S为车辆与该左侧障碍物之间的纵向(道路延伸方向)距离。
另一方面,也可以改变坐标方向,例如可以使得向右的方向为正方向,向左的方向为负方向,此时,可以根据下式4”对于例如在左侧的一个实际障碍物的右边界进行修剪,以保证乘客的体感。
RCmax4=L0+kS (4”)
其中,RCmax4是该左侧的实际障碍物的经修剪右边界;L0为车辆当前所在的横向位置(障碍物在左侧时,L0为车辆的左边界);k同样为设定的与体感相关的参数,其中k越小体感越好,避障能力越弱;S同样为车辆与该左侧障碍物之间的纵向(道路延伸方向)距离。
由上述式4”可知,在相对于式4改变了坐标方向的情况下,障碍物在左侧的情况下计算经修剪的右边界的公式(式4”)与障碍物在右侧的情况下计算经修剪的左边界的公式(式4)在形式上相同,且公式符号中与方向有关的量进行了左右交换。
请注意,本公开不是仅限于上面给出的这几种示例的计算方式,而是还可以采用其他任何合适的计算方式。
总之,无论障碍物位于左侧还是右侧,经修剪的障碍物边界都是在所述车辆的相同侧的边界位置数据L0的基础上,向所述相同侧方向偏移与所述车辆和所述实际障碍物之间在道路延伸方向上的距离S相关联的距离,由此避免剧烈的车辆横向控制操作(例如猛打方向盘的操作)。
本情形下的约束条件管理和优化策略基于车辆与障碍物之间的纵向距离来修剪障碍物边界,使得修剪后的障碍物边界能够防止不必要的车辆横向控制操作(例如打方向盘操作)。
通过上述采用不同的修剪策略对实际障碍物的实际边界位置数据进行修剪,使得经修剪障碍物的边界位置数据构成的轮廓比实际障碍物的实际边界位置数据构成的轮廓更靠近该障碍物所在一侧,由此避免车辆避障方法求解避障路线失败,和/或减少乃至避免剧烈的车辆横向控制操作(例如猛打方向盘的操作)或者避免不必要的车辆横向控制操作(例如打方向盘的操作),从而能够有效提升车辆避障方法的求解效果以及大大提升乘客的体感。
请注意,本公开的障碍物边界(或者说障碍物边界位置数据)修剪策略不限于上面示出的几种示例情形,而是还可以包括任何其他合适的修剪策略。而且,不仅限于上面描述的对于障碍物所在一侧的障碍物边界的修剪,而是还可以修剪障碍物的任一侧的边界/边界位置数据或者其任一部分。
根据一些实施例,上述的车辆避障方法还可以包括:根据不同方式计算多个候选的第二侧的经修剪边界位置数据,将所述多个候选的第二侧的经修剪边界位置数据中相应的经修剪边界最靠近第一侧的位置数据作为所述第二侧的经修剪边界位置数据。
根据一些实施例,所述多个候选的第二侧的经修剪边界位置数据包括以下中的两个或更多:
第二侧的第一经修剪边界位置数据,所述第二侧的第一经修剪边界位置数据基于安全通行宽度,所述安全通行宽度大于或等于允许所述车辆安全通过的最小通行宽度;
第二侧的第二经修剪边界位置数据,所述第二侧的第二经修剪边界位置数据使得在所述经修剪第一障碍物与另一个实际障碍物或另一个经修剪障碍物之间留出允许所述车辆安全通过的通行宽度;
第二侧的第三经修剪边界位置数据,所述第三经修剪边界位置数据基于能够使车辆通过的避障通行宽度,所述避障通行宽度大于或等于允许所述车辆安全通过的最小通行宽度,所述实际第一障碍物的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的宽度越小,所述避障通行宽度越大;以及
第二侧的第四经修剪边界位置数据,所述第四经修剪边界位置数据在所述车辆的所述第一侧的边界位置数据的基础上,向所述第一侧方向偏移与所述车辆和所述实际第一障碍物之间在道路延伸方向上的距离相关联的距离。
由上可知,可以采用各种方式(例如采用不同的修剪策略)来计算得到多个候选的第二侧的经修剪边界位置数据,例如上面结合示例描述的LCmax1、LCmax2、LCmax3、LCmax4等。此时,可以从中选出所述多个位置数据中最靠近第一侧的位置数据,即,选取修剪程度最高(或者说修剪幅度最大)的相应经修剪位置数据,作为最终的要作为约束条件施加给避障路线求解模型的所述第二侧的经修剪边界位置数据,如下式5所示。
LCmax=min{LCmax1,LCmax2,LCmax3,LCmax4} (5)
通过如上所述的那样选取修剪幅度最大的相应经修剪位置数据,可以获得更好的车辆横向控制避障效果,避免例如猛打方向盘之类的剧烈的车辆横向控制操作或者不必要的车辆横向控制操作(例如不必要的方向盘操作),而且也不会影响油门刹车的操作导致误判。
请注意,不一定上述的四种情形的修剪方式都会出现,因此,上式5中右侧的四个第二侧的经修剪边界位置数据不一定都能得到。另外,即便在都能够得到的情况下,也不是一定要取全部这四个值中的修剪幅度最大的位置数据。总之,可以根据实际需求,来灵活选取所需的位置数据,由此获得所需的智能驾驶效果。
另外,对于位于另一侧(第二侧)的障碍物的情况,也是类似的,在此不再赘述。
根据一些实施例,将所述第二侧的所述经修剪边界位置数据和所述实际第一障碍物的所述第二侧的实际边界位置数据这两者中更靠近所述第一侧的位置数据作为要向用于求解所述车辆的避障路线的模型添加的约束条件。
换言之,如果经修剪边界位置数据与实际边界位置数据相比,不能使得实际边界缩减(即,经修剪边界位置数据没有比实际边界位置数据更靠近第一侧),则可以不对实际障碍物的边界数据进行缩减。
根据一些实施例,上述的车辆避障方法还可以包括:根据不同方式计算多个候选的第二侧的经修剪边界位置数据,将所述多个候选的第二侧的经修剪边界位置数据以及所述道路的所述第二侧的边界位置数据中最靠近所述第一侧的位置数据作为所述第二侧的经修剪边界位置数据。
换言之,与上面描述的方式不同,本方案是将多个候选的第二侧的经修剪边界位置数据与道路的第二侧的边界位置数据之中的最靠近第一侧的位置数据作为最终要施加给避障路线求解模型的边界约束条件。即,在本方案中,考虑到了如果经修剪边界位置数据有误,则可以选取道路的第二侧的边界位置数据作为最终要施加给避障路线求解模型的边界约束条件,从而避免该模型出现相关失误。
这里,上述的四种例示的情形所对应的约束条件(修剪边界位置数据)在数学上均是连续映射,因此可以在障碍物能否绕过的边界处保持相对稳定,因此本公开提出的对于避障路线求解模型的约束条件进行管理和优化的方案是可行的并且有效的。
本公开的上述约束条件管理和优化策略对于不仅对于不能正常避让的障碍物的实际边界进行修剪,而且还能够对于虽然能够勉强通过但会导致剧烈的车辆横向控制操作(例如猛打方向盘)的障碍物的实际边界进行修剪。而且,修剪结果将形成一个能保证平滑性和安全性的求解空间,之后可以使用避障路线求解模型来得到兼顾体感的避障曲线(路径)。
另外,基于上述修剪策略的车辆横向控制决策结果,可以包括“等待”、“通知驾驶员”等操作。
本公开可适用于静态障碍物、以及与车辆的横向相对位置基本稳定的动态障碍物(例如速度与车辆基本一致,与车辆同向或反向的动态障碍物,比如与车辆状态处于相对静态的动态障碍物)。
对于适用的动态障碍物,可以预测该障碍物在若干时间点处的位置,并针对预测的这些障碍物位置中的每一个,将使用本公开的约束条件管理和优化策略进行管理和优化后的约束条件应用于避障路线求解模型,由此求得避障路线。
由此,根据本公开的车辆避障方法能够避免现有技术中时有出现的求解失败问题,而且还能够避免不必要的车辆横向控制操作(例如方向盘操作)以及避免剧烈的车辆横向控制操作(例如猛打方向盘的操作),从而有效提升乘客的体感。
另外,在向避障路线求解模型施加边界约束条件前,根据本公开的示例性实施例的车辆避障方法可以对车辆前方的路面进行分析。
根据一些实施例,所述路面分析可以包括:
1)在检测到障碍物之后,先对障碍物与车辆之间的相对距离进行判断;以及
2)当所述相对距离小于设定阈值(例如在使用激光雷达探测的情况下,可以为100m)时,确定要向避障路线求解模型施加的约束条件。
另外,根据一些实施例,本公开还提供一种用于智能驾驶的电子设备。如图7所示,该电子设备100可以包括:处理器101;以及存储程序的存储器102,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行上述车辆避障方法之一。
这里,所述用于智能驾驶的电子设备可以包括各种有线或无线的智能导航终端、设备等。
根据一些实施例,本公开还提供一种车辆。如图8所示,所述车辆10可以包括:上述的用于智能驾驶的电子设备100。
根据一些实施例,本公开还提供一种存储程序的计算机可读存储介质,所述程序包括指令,所述指令在由电子设备的处理器执行时,致使所述电子设备执行上述车辆避障方法之一。
另外,根据一些实施例,本公开还提供一种车辆避障设备。如图9所示,车辆避障设备1000可以包括:障碍物边界获得单元1001,可以被配置用于获得车辆所行驶的道路上的实际第一障碍物的实际边界位置数据;边界修剪单元1002,可以被配置用于对于所述实际边界位置数据的至少一部分进行修剪,以获得所述实际第一障碍物的经修剪边界位置数据,所述经修剪边界位置数据所对应的经修剪第一障碍物相比于所述实际第一障碍物被缩减;以及约束条件施加单元1003,可以被配置用于基于所述经修剪边界位置数据,确定要向用于求解所述车辆的避障路线的模型施加的约束条件。
这里,车辆避障设备1000的上述各单元1001~1003的操作分别与前面描述的步骤S110~S130的操作类似,在此不再赘述。
参见图10所示,现将描述可以应用于上述的用于智能驾驶的电子设备100(例如智能导航或设备等)的计算设备2000,其是可以应用于本公开的各方面的硬件设备(电子设备)的示例。计算设备2000可以是被配置为执行各种处理、操作和/或计算的任何机器,可以是但不限于工作站、服务器、台式计算机、膝上型计算机、平板计算机、个人数字助理、机器人、智能电话、车载计算机或其任何组合。上述车辆避障方法可以全部或至少部分地由计算设备2000或类似设备或***实现。
计算设备2000可以包括(可能经由一个或多个接口)与总线2002连接或与总线2002通信的元件。例如,计算设备2000可以包括总线2002、一个或多个处理器2004、一个或多个输入设备2006以及一个或多个输出设备2008。一个或多个处理器2004可以是任何类型的处理器,并且可以包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(例如特殊处理芯片)。输入设备2006可以是能向计算设备2000输入信息的任何类型的设备,并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或遥控器。输出设备2008可以是能呈现信息的任何类型的设备,并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。计算设备2000还可以包括非暂时性存储设备2010或者与非暂时性存储设备2010连接,非暂时性存储设备可以是非暂时性的并且可以实现数据存储的任何存储设备,并且可以包括但不限于磁盘驱动器、光学存储设备、固态存储器、软盘、柔性盘、硬盘、磁带或任何其他磁介质,光盘或任何其他光学介质、ROM(只读存储器)、RAM(随机存取存储器)、高速缓冲存储器和/或任何其他存储器芯片或盒、和/或计算机可从其读取数据、指令和/或代码的任何其他介质。非暂时性存储设备2010可以从接口拆卸。非暂时性存储设备2010可以具有用于实现上述方法和步骤的数据/程序(包括指令)/代码。计算设备2000还可以包括通信设备2012。通信设备2012可以是使得能够与外部设备和/或与网络通信的任何类型的设备或***,并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信设备和/或芯片组,例如蓝牙TM设备、1302.11设备、WiFi设备、WiMax设备、蜂窝通信设备和/或类似物。
计算设备2000还可以包括工作存储器2014,其可以是可以存储对处理器2004的工作有用的程序(包括指令)和/或数据的任何类型的工作存储器,并且可以包括但不限于随机存取存储器和/或只读存储器设备。
软件要素(程序)可以位于工作存储器2014中,包括但不限于操作***2016、一个或多个应用程序2018、驱动程序和/或其他数据和代码。用于执行上述方法和步骤的指令可以被包括在一个或多个应用程序2018中,并且上述车辆避障方法可以通过由处理器2004读取和执行一个或多个应用程序2018的指令来实现。更具体地,上述车辆避障方法中,步骤S110~步骤S130可以例如通过处理器2004执行具有步骤S110~步骤S130的指令的应用程序2018而实现。此外,上述车辆避障方法中的其它步骤可以例如通过处理器2004执行具有执行相应步骤中的指令的应用程序2018而实现。软件要素(程序)的指令的可执行代码或源代码可以存储在非暂时性计算机可读存储介质(例如上述存储设备2010)中,并且在执行时可以被存入工作存储器2014中(可能被编译和/或安装)。软件要素(程序)的指令的可执行代码或源代码也可以从远程位置下载。
还应该理解,可以根据具体要求而进行各种变型。例如,也可以使用定制硬件,和/或可以用硬件、软件、固件、中间件、微代码,硬件描述语言或其任何组合来实现特定元件。例如,所公开的方法和设备中的一些或全部可以通过使用根据本公开的逻辑和算法,用汇编语言或硬件编程语言(诸如VERILOG,VHDL,C++)对硬件(例如,包括现场可编程门阵列(FPGA)和/或可编程逻辑阵列(PLA)的可编程逻辑电路)进行编程来实现。
还应该理解,前述方法可以通过服务器-客户端模式来实现。例如,客户端可以接收用户输入的数据并将所述数据发送到服务器。客户端也可以接收用户输入的数据,进行前述方法中的一部分处理,并将处理所得到的数据发送到服务器。服务器可以接收来自客户端的数据,并且执行前述方法或前述方法中的另一部分,并将执行结果返回给客户端。客户端可以从服务器接收到方法的执行结果,并例如可以通过输出设备呈现给用户。还应该理解,计算设备2000的组件可以分布在网络上。例如,可以使用一个处理器执行一些处理,而同时可以由远离该一个处理器的另一个处理器执行其他处理。计算***2000的其他组件也可以类似地分布。这样,计算设备2000可以被解释为在多个位置执行处理的分布式计算***。
虽然已经参照附图描述了本公开的实施例或示例,但应理解,上述的方法、***和设备仅仅是示例性的实施例或示例,本公开的范围并不由这些实施例或示例限制,而是仅由授权后的权利要求书及其等同范围来限定。实施例或示例中的各种要素可以被省略或者可由其等同要素替代。此外,可以通过不同于本公开中描述的次序来执行各步骤。进一步地,可以以各种方式组合实施例或示例中的各种要素。重要的是随着技术的演进,在此描述的很多要素可以由本公开之后出现的等同要素进行替换。
Claims (19)
1.一种车辆避障方法,包括:
获得车辆所行驶的道路上的实际第一障碍物的实际边界位置数据,其中,所述实际第一障碍物位于所述道路的第一侧;
对所述实际第一障碍物的第二侧的实际边界位置数据进行修剪,以获得经修剪第一障碍物的第二侧的经修剪边界位置数据,所述经修剪边界位置数据所对应的所述经修剪第一障碍物相比于所述实际第一障碍物被缩减,其中,所述第二侧是所述第一侧的相反侧;以及
基于所述经修剪边界位置数据,确定要向用于求解所述车辆的避障路线的模型施加的约束条件,其中,所述用于求解所述车辆的避障路线的模型用于车辆横向控制。
2.根据权利要求1所述的车辆避障方法,所述第二侧的经修剪边界位置数据包括所述第二侧的第一经修剪边界位置数据,
其中,在所述实际第一障碍物的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的在横向方向上的距离小于允许所述车辆安全通过的最小通行宽度的情况下,所述第二侧的第一经修剪边界位置数据基于安全通行宽度,这里,所述安全通行宽度大于或等于所述最小通行宽度,所述横向方向是与道路延伸的纵向方向垂直的方向。
3.根据权利要求1所述的车辆避障方法,其中,在所述道路的所述第二侧还存在实际第二障碍物,
在所述实际第一障碍物的所述第二侧的实际边界与所述实际第二障碍物的所述第一侧的实际边界之间在横向方向上的距离小于允许所述车辆安全通过的最小通行宽度的情况下,所述第二侧的经修剪边界位置数据包括第二侧的第二经修剪边界位置数据,所述第二侧的第二经修剪边界位置数据使得在所述经修剪第一障碍物与所述实际第二障碍物或经修剪第二障碍物之间具有安全通行宽度,其中所述安全通行宽度大于或等于允许所述车辆安全通过的最小通行宽度,所述横向方向是与道路延伸的纵向方向垂直的方向。
4.根据权利要求3所述的车辆避障方法,其中,所述实际第一障碍物与所述车辆之间在所述纵向方向上的距离比所述实际第二障碍物与所述车辆之间在所述纵向方向上的距离更长,
所述第二侧的第二经修剪边界位置数据基于所述实际第一障碍物的所述第二侧的实际边界的实际边界位置数据、所述实际第二障碍物的所述第一侧的实际边界的实际边界位置数据、以及所述实际第一障碍物与所述实际第二障碍物之间在所述纵向方向上的距离,
所述实际第一障碍物与所述实际第二障碍物之间在所述纵向方向上的距离越大,则修剪程度越大。
5.根据权利要求3所述的车辆避障方法,其中,所述第二侧的第二经修剪边界位置数据为(LB1+RB2)/2+cSlongitudinal,其中,LB1表示所述实际第一障碍物的所述第二侧的实际边界的实际边界位置数据,RB2表示所述实际第二障碍物的所述第一侧的实际边界的实际边界位置数据,Slongitudinal表示所述实际第一障碍物与所述实际第二障碍物之间在所述纵向方向上的距离,从所述第一侧指向所述第二侧的方向为正方向,所述实际第一障碍物比所述实际第二障碍物在所述纵向方向上更远离所述车辆时Slongitudinal的符号为正,所述实际第一障碍物比所述实际第二障碍物在所述纵向方向上更靠近所述车辆时Slongitudinal的符号为负,c为常数参数。
6.根据权利要求3所述的车辆避障方法,其中,所述实际第一障碍物与所述车辆之间在所述纵向方向上的距离比所述实际第二障碍物与所述车辆之间在所述纵向方向上的距离更长,
所述方法还包括:对所述实际第二障碍物的所述第一侧的实际边界位置数据进行修剪,其中,所述实际第一障碍物与所述实际第二障碍物之间在所述纵向方向上的距离越大,则修剪程度越低。
7.根据权利要求6所述的车辆避障方法,其中,对于所述实际第一障碍物的所述第二侧的实际边界位置数据的修剪程度比对于所述实际第二障碍物的所述第一侧的实际边界位置数据的修剪程度更高。
8.根据权利要求1所述的车辆避障方法,其中,所述第二侧的经修剪边界位置数据包括所述第二侧的第三经修剪边界位置数据,所述第二侧的第三经修剪边界位置数据基于能够使车辆通过的避障通行宽度,所述避障通行宽度大于或等于允许所述车辆安全通过的最小通行宽度,
所述实际第一障碍物的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的宽度越小,所述避障通行宽度越大。
9.根据权利要求8所述的车辆避障方法,其中,所述避障通行宽度与避障力度因子正相关,所述避障力度因子为(W-Wmin)/(Wsafety-Wmin),其中W表示所述实际第一障碍物的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的宽度,Wmin表示假设所述第一障碍物位于道路中心时的所述第一障碍物的所述第二侧的边界与所述道路的所述第二侧的边界之间的宽度,Wsafety表示安全通行宽度,所述安全通行宽度大于或等于允许所述车辆安全通过的最小通行宽度。
10.根据权利要求1所述的车辆避障方法,其中,所述第二侧的经修剪边界位置数据包括第二侧的第四经修剪边界位置数据,所述第二侧的第四经修剪边界位置数据在所述车辆的所述第一侧的边界位置数据的基础上,向所述第一侧方向偏移与所述车辆和所述实际第一障碍物之间在道路延伸方向上的距离相关联的距离。
11.根据权利要求10所述的车辆避障方法,其中,第二侧的第四经修剪边界位置数据为L0+kS,其中L0表示所述车辆的所述第一侧的边界位置数据,S表示所述车辆和所述实际第一障碍物之间在道路延伸方向上的距离,k表示体感因子,k>0。
12.根据权利要求1所述的车辆避障方法,还包括:根据不同方式计算多个候选的第二侧的经修剪边界位置数据,将所述多个候选的第二侧的经修剪边界位置数据中相应的经修剪边界最靠近第一侧的数据作为所述第二侧的经修剪边界位置数据。
13.根据权利要求12所述的车辆避障方法,其中,所述多个候选的第二侧的经修剪边界位置数据包括以下中的两个或更多:
第二侧的第一经修剪边界位置数据,所述第二侧的第一经修剪边界位置数据基于安全通行宽度,所述安全通行宽度大于或等于允许所述车辆安全通过的最小通行宽度;
第二侧的第二经修剪边界位置数据,所述第二侧的第二经修剪边界位置数据使得在所述经修剪第一障碍物与另一个实际障碍物或另一个经修剪障碍物之间留出允许所述车辆安全通过的通行宽度;
第二侧的第三经修剪边界位置数据,所述第三经修剪边界位置数据基于能够使车辆通过的避障通行宽度,所述避障通行宽度大于或等于允许所述车辆安全通过的最小通行宽度,所述实际第一障碍物的所述第二侧的实际边界与所述道路的所述第二侧的边界之间的宽度越小,所述避障通行宽度越大;以及
第二侧的第四经修剪边界位置数据,所述第四经修剪边界位置数据在所述车辆的所述第一侧的边界位置数据的基础上,向所述第一侧方向偏移与所述车辆和所述实际第一障碍物之间在道路延伸方向上的距离相关联的距离。
14.根据权利要求1所述的车辆避障方法,其中,将所述第二侧的所述经修剪边界位置数据和所述实际第一障碍物的所述第二侧的实际边界位置数据这两者中更靠近所述第一侧的位置数据作为要向用于求解所述车辆的避障路线的模型施加的约束条件。
15.根据权利要求1所述的车辆避障方法,还包括:根据不同方式计算多个候选的第二侧的经修剪边界位置数据,将所述多个候选的第二侧的经修剪边界位置数据以及所述道路的所述第二侧的边界位置数据中最靠近所述第一侧的位置数据作为所述第二侧的经修剪边界位置数据。
16.一种车辆避障设备,包括:
障碍物边界获得单元,被配置用于获得车辆所行驶的道路上的实际第一障碍物的实际边界位置数据,其中,所述实际第一障碍物位于所述道路的第一侧;
边界修剪单元,被配置用于对所述实际第一障碍物的第二侧的实际边界位置数据进行修剪,以获得经修剪第一障碍物的第二侧的经修剪边界位置数据,所述经修剪边界位置数据所对应的所述经修剪第一障碍物相比于所述实际第一障碍物被缩减,其中,所述第二侧是所述第一侧的相反侧;以及
约束条件施加单元,被配置用于基于所述经修剪边界位置数据,确定要向用于求解所述车辆的避障路线的模型施加的约束条件,其中,所述用于求解所述车辆的避障路线的模型用于车辆横向控制。
17.一种用于智能驾驶的电子设备,包括:
处理器;以及
存储程序的存储器,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1~15中任一项所述的方法。
18.一种车辆,包括:
根据权利要求17所述的用于智能驾驶的电子设备。
19.一种存储程序的计算机可读存储介质,所述程序包括指令,所述指令在由电子设备的处理器执行时,致使所述电子设备执行根据权利要求1~15中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010112194.XA CN111338341B (zh) | 2020-02-24 | 2020-02-24 | 车辆避障方法和设备、电子设备、车辆及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010112194.XA CN111338341B (zh) | 2020-02-24 | 2020-02-24 | 车辆避障方法和设备、电子设备、车辆及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111338341A CN111338341A (zh) | 2020-06-26 |
CN111338341B true CN111338341B (zh) | 2023-07-18 |
Family
ID=71185525
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010112194.XA Active CN111338341B (zh) | 2020-02-24 | 2020-02-24 | 车辆避障方法和设备、电子设备、车辆及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111338341B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115298B (zh) * | 2022-01-25 | 2022-05-17 | 北京理工大学 | 一种无人车路径平滑方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016038226A (ja) * | 2014-08-06 | 2016-03-22 | マツダ株式会社 | 車両の距離計測装置 |
CN109254289A (zh) * | 2018-11-01 | 2019-01-22 | 百度在线网络技术(北京)有限公司 | 道路护栏的检测方法和检测设备 |
CN109664881A (zh) * | 2019-01-08 | 2019-04-23 | 广州小鹏汽车科技有限公司 | 一种紧急转向辅助驾驶方法、***及电子设备 |
CN110320531A (zh) * | 2018-03-30 | 2019-10-11 | 郑州宇通客车股份有限公司 | 基于激光雷达的障碍物识别方法、地图创建方法及装置 |
CN110614992A (zh) * | 2018-12-29 | 2019-12-27 | 长城汽车股份有限公司 | 车辆自动驾驶时避障的方法、***及车辆 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2947657B1 (fr) * | 2009-07-06 | 2016-05-27 | Valeo Vision | Procede de detection d'un obstacle pour vehicule automobile |
-
2020
- 2020-02-24 CN CN202010112194.XA patent/CN111338341B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016038226A (ja) * | 2014-08-06 | 2016-03-22 | マツダ株式会社 | 車両の距離計測装置 |
CN110320531A (zh) * | 2018-03-30 | 2019-10-11 | 郑州宇通客车股份有限公司 | 基于激光雷达的障碍物识别方法、地图创建方法及装置 |
CN109254289A (zh) * | 2018-11-01 | 2019-01-22 | 百度在线网络技术(北京)有限公司 | 道路护栏的检测方法和检测设备 |
CN110614992A (zh) * | 2018-12-29 | 2019-12-27 | 长城汽车股份有限公司 | 车辆自动驾驶时避障的方法、***及车辆 |
CN109664881A (zh) * | 2019-01-08 | 2019-04-23 | 广州小鹏汽车科技有限公司 | 一种紧急转向辅助驾驶方法、***及电子设备 |
Non-Patent Citations (6)
Title |
---|
A novel real-time trajectory planning algorithm for intelligent vehicles;Fu Xiaoxin 等;《Control and Decision》;全文 * |
Coupled longitudinal and lateral control strategy improving lateral stability for autonomous vehicle;Rachid Attia 等;《2012 American Control Conference》;全文 * |
OPTIMAL COLLISION-FREE PATH PLANNING FOR AN AUTONOMOUS MULTI-WHEELED COMBAT VEHICLE;Mohamed Amr 等;《PROCEEDINGS OF THE ASME INTERNATIONAL DESIGN ENGINEERING TECHNICAL CONFERENCES AND COMPUTERS AND INFORMATION IN ENGINEERING CONFERENCE》;全文 * |
Trajectory planning for automated driving based on ordinal optimization;Xiaoxin Fu 等;《Tsinghua Science and Technology》;全文 * |
智能车在复杂环境下的路径规划与跟随控制算法研究;肖婷;《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》;全文 * |
轮式AGV沿葡萄园垄道行驶避障导航算法与模拟试验;谢永良等;《农业机械学报》(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111338341A (zh) | 2020-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11091158B2 (en) | System and method for controlling motion of vehicle with variable speed | |
CN108255171B (zh) | 用于提高自主驾驶车辆的稳定性的方法和*** | |
JP7072581B2 (ja) | 自動運転車両の経路計画のための運転シナリオに基づく車線ガイドライン | |
CN113071505B (zh) | 驾驶行为习惯的确定、车辆行驶控制方法、装置及设备 | |
CN111186443B (zh) | 变道路径规划方法、装置、电子设备和计算机可读介质 | |
CN110884490B (zh) | 一种车辆侵入判断及辅助行驶的方法、***、车辆及存储介质 | |
CN110962846B (zh) | 车辆转向防碰撞方法及设备 | |
CN111797780B (zh) | 一种跟车轨迹规划方法、装置、服务器及存储介质 | |
CN114258366A (zh) | 对于自主车辆的折线轮廓表示 | |
US20170108870A1 (en) | Determining variance factors for complex road segments | |
KR102595485B1 (ko) | 차량용 장애물 회피 방법, 장치, 전자 기기 및 컴퓨터 저장 매체 | |
CN112046494B (zh) | 一种车辆控制方法、装置、设备及存储介质 | |
CN114987498B (zh) | 自动驾驶车辆的拟人化轨迹规划方法、装置、车辆及介质 | |
CN112415995B (zh) | 基于实时安全边界的规划控制方法 | |
CN114265411B (zh) | 一种解决车辆预测模型性能受限于感知数据性能的方法 | |
CN111413973A (zh) | 车辆的换道决策方法及装置、电子设备、存储介质 | |
CN113928340A (zh) | 应用于车辆中的避障方法、装置、电子设备和存储介质 | |
CN113361152A (zh) | 轨迹规划方法、轨迹规划装置、存储介质与电子设备 | |
CN111338341B (zh) | 车辆避障方法和设备、电子设备、车辆及存储介质 | |
US20190210619A1 (en) | Method for proposing a driving speed | |
WO2022216641A1 (en) | Counter-steering penalization during vehicle turns | |
CN111123948B (zh) | 车辆多维感知融合控制方法、***及汽车 | |
CN111038503B (zh) | 车辆自适应巡航控制方法、装置、车辆及存储介质 | |
CN116588136A (zh) | 一种车辆可行驶区域的生成方法、装置、设备及介质 | |
JP6838769B2 (ja) | 周辺環境認識装置、表示制御装置 |
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 |