CN115237928B - 一种基于轨迹基元分割的高效碰撞检测方法及系统 - Google Patents

一种基于轨迹基元分割的高效碰撞检测方法及系统 Download PDF

Info

Publication number
CN115237928B
CN115237928B CN202211169046.7A CN202211169046A CN115237928B CN 115237928 B CN115237928 B CN 115237928B CN 202211169046 A CN202211169046 A CN 202211169046A CN 115237928 B CN115237928 B CN 115237928B
Authority
CN
China
Prior art keywords
bounding box
track
turning
section
turn
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
Application number
CN202211169046.7A
Other languages
English (en)
Other versions
CN115237928A (zh
Inventor
吴绍斌
闫泽新
李世豪
龚建伟
齐建永
王博洋
陈恺宇
耿家琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huidong Planet Beijing Technology Co ltd
Beijing Institute of Technology BIT
Original Assignee
Huidong Planet Beijing Technology Co ltd
Beijing Institute of Technology BIT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huidong Planet Beijing Technology Co ltd, Beijing Institute of Technology BIT filed Critical Huidong Planet Beijing Technology Co ltd
Priority to CN202211169046.7A priority Critical patent/CN115237928B/zh
Publication of CN115237928A publication Critical patent/CN115237928A/zh
Application granted granted Critical
Publication of CN115237928B publication Critical patent/CN115237928B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及一种基于轨迹基元分割的高效碰撞检测方法及系统,属于碰撞检测技术领域。根据轨迹点的曲率生成不同的基元,分别使用更紧密的圆弧包围盒和矩形包围盒,减少由于包围盒的冗余空间过大造成的无效检测次数,运用树型结构描述轨迹和障碍物,并设计粗检测与细检测相结合的遍历策略,快速确定发生碰撞的碰撞位置和碰撞时间,减少遍历所有轨迹与障碍物的时间,在障碍物较多的狭窄通道场景中能够更高效、快速的完成碰撞检测。

Description

一种基于轨迹基元分割的高效碰撞检测方法及系统
技术领域
本发明涉及碰撞检测技术领域,特别是涉及一种基于轨迹基元分割的高效碰撞检测方法及系统。
背景技术
碰撞检测模块是自动驾驶车辆运动规划中必不可少的模块之一,可以检查车辆轨迹与周边环境是否存在碰撞风险,决定了自动驾驶车辆的行驶安全性。但由于环境中障碍物复杂多变,以及检测单元精度有限,碰撞检测模块在运动规划过程中要占用大量时间以及算力。
目前,国内外学者对于自动驾驶领域的碰撞检测方法已经有了大量研究,占用栅格方法通过将平面离散为网格单元,判断栅格是否被占据而进行检测,但在障碍物众多的狭窄空间内,对网格大小的选择要求很高,栅格过大,检测精度下降;栅格过小,计算复杂度增加。路径采样方法通过对路径进行一系列采样得到离散单元构型,然后用这些构型与其它物体构型比较来判断是否发生碰撞,但将连续轨迹离散化然后进行一对一检测,很依赖采样的方式和步长,当轨迹数量上升时,计算复杂度大大增加。层次包围盒方法能够以较低的代价快速确定发生碰撞的大致范围,然后在该区域内进行更详细的检测,但使用矩形去近似轨迹,包围盒内冗余空间依然很大,影响了碰撞检测的效率。
基于此,亟需一种能够高效进行碰撞检测的技术。
发明内容
本发明的目的是提供一种基于轨迹基元分割的高效碰撞检测方法及系统,能够高效的进行碰撞检测。
为实现上述目的,本发明提供了如下方案:
一种基于轨迹基元分割的高效碰撞检测方法,所述高效碰撞检测方法包括:
获取车辆行驶轨迹信息以及障碍物信息;所述车辆行驶轨迹信息包括每一个轨迹点的位置、航向和曲率;所述障碍物信息包括每一个障碍物的位置和形状;
对于每一所述轨迹点,根据所述轨迹点的曲率将所述轨迹点划分为左转基元、右转基元和直行基元;连续的若干个所述左转基元组成左转轨迹段,连续的若干个所述右转基元组成右转轨迹段,连续的若干个所述直行基元组成直行轨迹段;
按照单调性原则对每一所述左转轨迹段进行分割,得到若干个左转段;按照所述单调性原则对每一所述右转轨迹段进行分割,得到若干个右转段;所述单调性原则为每一段内的轨迹点的曲率单调不增或者单调不减;
利用二分法对所述左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差,得到若干个左转子段;利用二分法对所述右转段进行迭代分割,直至所得到的右转子段的端点曲率的倍数差小于所述预设倍数差,得到若干个右转子段;
以所有所述轨迹点作为根节点,以所述左转段、所述右转段和所述直行轨迹段作为所述根节点的子节点,以第1次迭代得到的所述左转子段作为所述左转段的子节点,以第N次迭代得到的所述左转子段作为第N-1次迭代得到的所述左转子段的子节点,以第1次迭代得到的所述右转子段作为所述右转段的子节点,以第N次迭代得到的所述右转子段作为第N-1次迭代得到的所述右转子段的子节点,并建立所述左转段、所述右转段、所述左转子段和所述右转子段的圆弧包围盒,建立所述直行轨迹段的矩形包围盒,得到轨迹包围盒树;其中,N大于1;
建立包含所有所述障碍物的AABB包围盒;对所述AABB包围盒进行迭代分割,直至分割得到的空间内仅包含一个障碍物;
以所有所述障碍物作为根节点,以第1次迭代得到的所述空间内的障碍物作为所述根节点的子节点,以第N次迭代得到的所述空间内的障碍物作为第N-1次迭代得到的所述空间内的障碍物的子节点,并建立仅包含一个障碍物的子节点的OBB包围盒,建立包含若干个障碍物的子节点的AABB包围盒,得到障碍物包围盒树;
对所述轨迹包围盒树的轨迹包围盒和所述障碍物包围盒树的障碍物包围盒进行碰撞检测,确定若干个碰撞检测对;所述碰撞检测对由所述轨迹包围盒树的叶子节点的轨迹包围盒与所述障碍物包围盒树的叶子节点的障碍物包围盒组成;
对每一所述碰撞检测对进行碰撞检测,确定车辆行驶轨迹是否与障碍物发生碰撞,并在发生碰撞时,确定碰撞位置和碰撞时间。
一种基于轨迹基元分割的高效碰撞检测系统,所述高效碰撞检测系统包括:
信息获取模块,用于获取车辆行驶轨迹信息以及障碍物信息;所述车辆行驶轨迹信息包括每一个轨迹点的位置、航向和曲率;所述障碍物信息包括每一个障碍物的位置和形状;
轨迹包围盒树构建模块,用于对于每一所述轨迹点,根据所述轨迹点的曲率将所述轨迹点划分为左转基元、右转基元和直行基元;连续的若干个所述左转基元组成左转轨迹段,连续的若干个所述右转基元组成右转轨迹段,连续的若干个所述直行基元组成直行轨迹段;按照单调性原则对每一所述左转轨迹段进行分割,得到若干个左转段;按照所述单调性原则对每一所述右转轨迹段进行分割,得到若干个右转段;所述单调性原则为每一段内的轨迹点的曲率单调不增或者单调不减;利用二分法对所述左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差,得到若干个左转子段;利用二分法对所述右转段进行迭代分割,直至所得到的右转子段的端点曲率的倍数差小于所述预设倍数差,得到若干个右转子段;以所有所述轨迹点作为根节点,以所述左转段、所述右转段和所述直行轨迹段作为所述根节点的子节点,以第1次迭代得到的所述左转子段作为所述左转段的子节点,以第N次迭代得到的所述左转子段作为第N-1次迭代得到的所述左转子段的子节点,以第1次迭代得到的所述右转子段作为所述右转段的子节点,以第N次迭代得到的所述右转子段作为第N-1次迭代得到的所述右转子段的子节点,并建立所述左转段、所述右转段、所述左转子段和所述右转子段的圆弧包围盒,建立所述直行轨迹段的矩形包围盒,得到轨迹包围盒树;其中,N大于1;
障碍物包围盒树构建模块,用于建立包含所有所述障碍物的AABB包围盒;对所述AABB包围盒进行迭代分割,直至分割得到的空间内仅包含一个障碍物;以所有所述障碍物作为根节点,以第1次迭代得到的所述空间内的障碍物作为所述根节点的子节点,以第N次迭代得到的所述空间内的障碍物作为第N-1次迭代得到的所述空间内的障碍物的子节点,并建立仅包含一个障碍物的子节点的OBB包围盒,建立包含若干个障碍物的子节点的AABB包围盒,得到障碍物包围盒树;
粗检测模块,用于对所述轨迹包围盒树的轨迹包围盒和所述障碍物包围盒树的障碍物包围盒进行碰撞检测,确定若干个碰撞检测对;所述碰撞检测对由所述轨迹包围盒树的叶子节点的轨迹包围盒与所述障碍物包围盒树的叶子节点的障碍物包围盒组成;
细检测模块,用于对每一所述碰撞检测对进行碰撞检测,确定车辆行驶轨迹是否与障碍物发生碰撞,并在发生碰撞时,确定碰撞位置和碰撞时间。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明用于提供一种基于轨迹基元分割的高效碰撞检测方法及系统,根据轨迹点的曲率生成不同的基元,分别使用更紧密的圆弧包围盒和矩形包围盒,减少由于包围盒的冗余空间过大造成的无效检测次数,运用树型结构描述轨迹和障碍物,并设计粗检测与细检测相结合的遍历策略,快速确定发生碰撞的碰撞位置和碰撞时间,减少遍历所有轨迹与障碍物的时间,在障碍物较多的狭窄通道场景中能够更高效、快速的完成碰撞检测。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1所提供的高效碰撞检测方法的流程图;
图2为本发明实施例1所提供的轨迹包围盒树的构建方法流程图;
图3为本发明实施例1所提供的圆弧包围盒的构建方法流程图;
图4为本发明实施例1所提供的圆弧包围盒的示意图;
图5为本发明实施例1所提供的矩形包围盒的示意图;
图6为本发明实施例1所提供的障碍物包围盒树的构建方法流程图;
图7为本发明实施例1所提供的障碍物包围盒的示意图;
图8为本发明实施例1所提供的碰撞检测遍历流程示意图;
图9为本发明实施例1所提供的矩形包围盒与圆弧包围盒碰撞检测的示意图;
图10为本发明实施例2所提供的高效碰撞检测系统的系统框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于轨迹基元分割的高效碰撞检测方法及系统,能够高效的进行碰撞检测。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1:
本实施例用于提供一种基于轨迹基元分割的高效碰撞检测方法,如图1所示,所述高效碰撞检测方法包括:
步骤1:获取车辆行驶轨迹信息以及障碍物信息;所述车辆行驶轨迹信息包括每一个轨迹点的位置、航向和曲率;所述障碍物信息包括每一个障碍物的位置和形状。
车辆行驶轨迹由按照固定步长采样得到的离散轨迹点组成,每个轨迹点具有位置、航向、曲率、采样时间等信息。碰撞检测环境中的障碍物信息来自车辆的感知模块,感知模块给出每一个障碍物在二维平面内的位置以及障碍物外形等信息。
步骤2:轨迹包围盒树构建:使用自上而下的构建方法,将车辆行驶轨迹分割为不同类型的基元,构建包围盒,整理为树形结构。
具体的,如图2所示,步骤2可以包括:
(1)对于每一轨迹点,根据该轨迹点的曲率将轨迹点划分为左转基元、右转基元和直行基元,连续的若干个左转基元组成左转轨迹段,连续的若干个右转基元组成右转轨迹段,连续的若干个直行基元组成直行轨迹段。
本实施例按照每个轨迹点的曲率的数值大小对车辆行驶轨迹进行分割,以区分车辆的不同基元,若轨迹点的曲率大于或等于第一预设值且小于第二预设值,则该轨迹点为右转基元;若轨迹点的曲率大于或等于第二预设值且小于或等于第三预设值,则该轨迹点为直行基元;若轨迹点的曲率大于第三预设值且小于或等于第四预设值,则该轨迹点为左转基元。特别的,第一预设值和第四预设值为相反数,第二预设值和第三预设值为相反数。
划分标准如下:
Figure 786938DEST_PATH_IMAGE001
其中,K为轨迹点的曲率;K 0为运动状态划分参量,数值接近于0;K max为车辆最小转向半径R min对应的最大曲率,
Figure 907341DEST_PATH_IMAGE002
R min是预设值,需要通过转向半径测试实验得出,或者由车辆制造商告知。
(2)按照单调性原则对每一左转轨迹段进行分割,得到若干个左转段;按照单调性原则对每一右转轨迹段进行分割,得到若干个右转段;单调性原则为每一段内的轨迹点的曲率单调不增或者单调不减;
直行段在粗检测阶段不再继续分割,直接作为轨迹包围盒树的根节点的子节点。对于转向段,如右转轨迹段、左转轨迹段,按照轨迹点曲率的单调性进行划分,使得每一左转段或右转段内的轨迹点的曲率按照采样顺序单调不增或者单调不减。
(3)利用二分法对左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差,得到若干个左转子段;利用二分法对右转段进行迭代分割,直至所得到的右转子段的端点曲率的倍数差小于预设倍数差,得到若干个右转子段。
本实施例的倍数差是指对两端点的曲率做除法所得到的比值。
本实施例采用二分法,对单调变化的转向段继续分割,直到每个转向子段的两端点曲率的倍数差小于预设倍数差。其中,利用二分法对左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差可以包括:
(3.1)以左转段作为初始段;
(3.2)利用二分法对初始段进行分割,得到第一子段和第二子段;
(3.3)判断第一子段的端点曲率的倍数差是否小于预设倍数差;若是,则结束对第一子段的分割过程;若否,则以第一子段作为下一迭代的初始段,返回“利用二分法对初始段进行分割”的步骤;
(3.4)判断第二子段的端点曲率的倍数差是否小于预设倍数差;若是,则结束对第二子段的分割过程;若否,则以第二子段作为下一迭代的初始段,返回“利用二分法对初始段进行分割”的步骤;第N次迭代得到的第一子段和第二子段即为第N次迭代得到的左转子段。
需要说明的是,预设倍数差T为满足构建粗检测圆弧包围盒条件的端点曲率倍数差的最小值,其由人为设定,当倍数差大于T时,包围盒内部冗余空间较多,适用于粗检测阶段;当倍数差小于T时,包围盒更紧密,适用于细检测阶段。
利用二分法对右转段进行迭代分割的过程与利用二分法对左转段进行迭代分割的过程相同,在此不再赘述。
(4)以所有轨迹点作为根节点,以左转段、右转段和直行轨迹段作为根节点的子节点,以第1次迭代得到的左转子段作为左转段的子节点,以第N次迭代得到的左转子段作为第N-1次迭代得到的左转子段的子节点,以第1次迭代得到的右转子段作为右转段的子节点,以第N次迭代得到的右转子段作为第N-1次迭代得到的右转子段的子节点,并建立左转段、右转段、左转子段和右转子段的圆弧包围盒,建立直行轨迹段的矩形包围盒,得到轨迹包围盒树;其中,N大于1;
本实施例中,车辆所有轨迹点为一个整体,作为轨迹包围盒树的根节点,进行基元区分和单调性判断后得到的左转段、右转段以及直行轨迹段作为根节点的子节点,对左转段进行迭代分割得到的左转子段按照迭代次序作为其上一次迭代的左转子段的子节点,对右转段进行迭代分割得到的右转子段按照迭代次序作为其上一次迭代的右转子段的子节点。需要说明的是,以第N次迭代得到的第一子段作为初始段进行分割所得到的第N+1次迭代的第一子段和第二子段为第N次迭代得到的第一子段的子节点,以第N次迭代得到的第二子段作为初始段进行分割所得到的第N+1次迭代的第一子段和第二子段为第N次迭代得到的第二子段的子节点。根据以上思路,确定树的每个节点对应的轨迹点范围,同一层节点的轨迹点按照轨迹点的采样时间顺序排列。
其中,如图3和图4所示,建立左转段的圆弧包围盒可以包括:
(4.1)对于每个左转段
Figure 890340DEST_PATH_IMAGE003
,计算左转段的起始轨迹点p 1和终止轨迹点p n 的曲率的平均值
Figure 971035DEST_PATH_IMAGE004
,并选取左转段中曲率与平均值
Figure 988670DEST_PATH_IMAGE004
的差值最小的中间轨迹点作为目标轨迹点,即找到曲率最接近于平均值
Figure 529241DEST_PATH_IMAGE004
的目标轨迹点p m m不等于1和n),确定同时经过起始轨迹点、目标轨迹点和终止轨迹点的圆的圆心,即作经过起始轨迹点p 1、目标轨迹点p m 、终止轨迹点p n 三点的圆,该圆的圆心为点M。
(4.2)对于左转段中的每一轨迹点,根据轨迹点的位置以及航向,利用矩形拟合车辆外形。
令矩形的长边长度等于车长,并与轨迹点的航向平行;令矩形的宽边长度等于车宽,并与轨迹点的航向垂直;令矩形中的车辆后轴中点与轨迹点的位置重合,即令轨迹点位于车辆后轴中点,以利用矩形拟合车辆外形。
(4.3)定义车辆行驶方向为前,靠近圆心M的一侧为内侧,远离圆心M的一侧为外侧;计算每一轨迹点的车辆外形的外侧前端的顶点与圆心M的距离,并选取距离的最大值作为距离最大值R out
(4.4)对于左转段中的每一轨迹点,计算圆心M和轨迹点的连线与圆心M到轨迹点的航向的垂线之间的夹角φ,比较得到φ最小值对应的轨迹点,并计算圆心M到夹角最小的轨迹点的车辆外形的内侧边的距离,得到距离最小值R in
(4.5)分别连接圆心M与起始轨迹点p 1的车辆外形的后端的两个顶点,选取符合第一预设条件的连线作为圆弧包围盒的起始边界;分别连接圆心M与终止轨迹点p n 的车辆外形的前端的两个顶点,选取符合第一预设条件的连线作为圆弧包围盒的终止边界,第一预设条件为左转段中的所有轨迹点的车辆外形位于连线的同一侧。
起始边界可表示为:
Figure 733958DEST_PATH_IMAGE005
其中,xy为坐标;a 1为起始边界的法向量;b 1为起始边界的直线参数。
终止边界可表示为:
Figure 136120DEST_PATH_IMAGE006
其中,a 2为终止边界的法向量;b 2为终止边界的直线参数。
(4.6)根据起始边界、终止边界、距离最小值和距离最大值建立左转段的圆弧包围盒。
因此,车辆在该左转段内驶过的区域可以用圆弧包围盒内的区域T c 近似表示,如下:
Figure 24573DEST_PATH_IMAGE007
需要说明的是,右转段、左转子段、右转子段的圆弧包围盒的建立过程与上述左转段的圆弧包围盒的建立过程相同,在此不再赘述。
如图5所示,建立直行轨迹段的矩形包围盒可以包括:
对于直行轨迹段中的每一轨迹点,根据轨迹点的位置以及航向,利用矩形拟合车辆外形;以包围直行轨迹段中的所有轨迹点的车辆外形且长边与直行轨迹段中的曲率绝对值最小的轨迹点的航向平行的最小矩形作为直行轨迹段的矩形包围盒,即直行轨迹段的矩形包围盒为包围该直行轨迹段中所有轨迹点的车辆外形的最小矩形,并且该最小矩形的长边与该直行轨迹段中绝对值最小的曲率的轨迹点的航向保持平行,以近似表示车辆在直行轨迹段驶过的区域。
因此,车辆在该直行轨迹段内驶过的区域可以用矩形包围盒内的区域T r 近似表示,如下:
T r
Figure 221199DEST_PATH_IMAGE008
其中,c j d j 为矩形包围盒第j条边所在直线的法向量以及直线参数。
基于上述圆弧包围盒和矩形包围盒的构建方法,对除了根节点外的每个节点构建包围盒,形成轨迹包围盒树。
步骤3:障碍物包围盒树构建。
如图6所示,将所有障碍物当作一个整体,构建轴对齐包围盒(Axis-AlignedBounding Box,AABB),作为障碍物包围盒树的根节点。之后不断对节点进行分割,分割基准为父节点AABB包围盒长边的垂直平分线,两侧的障碍物分别作为一个子节点,直到每个子节点中只含有一个障碍物。对于含有多个障碍物的节点,即非叶子节点,生成AABB包围盒;对于只含有一个障碍物的节点,即叶子节点,则生成定向包围盒(Oriented Bounding Box,OBB)。
则障碍物包围盒树的构建过程包括:
(1)建立包含所有障碍物的AABB包围盒;对AABB包围盒进行迭代分割,直至分割得到的空间内仅包含一个障碍物;
迭代分割过程可以包括:
(1.1)以AABB包围盒作为初始包围盒;
(1.2)利用初始包围盒的长边的垂直平分线对初始包围盒进行分割,得到第一空间和第二空间;
(1.3)判断第一空间是否仅包含一个障碍物;若是,则结束对第一空间的分割过程;若否,则建立包含第一空间内的障碍物的第一AABB包围盒,并以第一AABB包围盒作为下一迭代中的初始包围盒,返回“利用初始包围盒的长边的垂直平分线对初始包围盒进行分割”的步骤;
(1.4)判断第二空间是否仅包含一个障碍物;若是,则结束对第二空间的分割过程;若否,则建立包含第二空间内的障碍物的第二AABB包围盒,并以第二AABB包围盒作为下一迭代中的初始包围盒,返回“利用初始包围盒的长边的垂直平分线对初始包围盒进行分割”的步骤。
(2)以所有障碍物作为根节点,以第1次迭代得到的空间内的障碍物作为根节点的子节点,以第N次迭代得到的空间内的障碍物作为第N-1次迭代得到的空间内的障碍物的子节点,并建立仅包含一个障碍物的子节点的OBB包围盒,建立包含若干个障碍物的子节点的AABB包围盒,得到障碍物包围盒树。
需要说明的是,构建OBB包围盒和AABB包围盒的过程均为现有过程,本实施例在此不再赘述。
如图7所示,AABB包围盒和OBB包围盒均为矩形包围盒,其包围的区域P表示如下:
Figure 444370DEST_PATH_IMAGE009
其中,q j t j 为包围盒第j条边所在直线的法向量以及直线参数。
本实施例根据每个节点下障碍物数量的不同生成不同的包围盒,可以减小障碍物包围盒的冗余空间,提高单次碰撞检测的精度,进而减少多余的检测次数。
步骤4:轨迹包围盒树与障碍物包围盒树遍历:
如图8所示,遍历过程分为粗检测阶段和细检测阶段两步。粗检测阶段使用到上述构建的轨迹包围盒树与障碍物包围盒树,并对其进行遍历,确定多个轨迹与障碍的碰撞检测对。粗检测阶段完成后,进入细检测阶段,基于二分法对碰撞检测对中的轨迹节点继续分割,直到轨迹节点中只含有一个轨迹点,而此时轨迹包围盒转变为单个轨迹点的车辆外形。通过上述方法最终确定障碍物和轨迹发生碰撞的精确位置和时间。
具体的,遍历过程可以包括:
(1)粗检测阶段:对轨迹包围盒树的轨迹包围盒和障碍物包围盒树的障碍物包围盒进行碰撞检测,确定若干个碰撞检测对;所述碰撞检测对由轨迹包围盒树的叶子节点的轨迹包围盒与障碍物包围盒树的叶子节点的障碍物包围盒组成。
确定若干个碰撞检测对可以包括:
(1.1)取出轨迹包围盒树的二层节点,二层节点为轨迹包围盒树的根节点的子节点。对于轨迹包围盒树的每一个二层节点,与障碍物包围盒树进行深度优先遍历,即从障碍物包围盒树的根节点向下遍历障碍物包围盒树,确定与二层节点的包围盒发生碰撞的OBB包围盒,此时,二层节点的包围盒和OBB包围盒组成初始检测对。需要说明的是,向下遍历过程是指,若根节点与二层节点的包围盒发生碰撞,则判断根节点的第一子节点是否与二层节点的包围盒发生碰撞,如果没有,则结束该第一子节点的后续遍历过程,与根节点下的第二子节点进行遍历;如果有,则判断该第一子节点下的子节点是否与二层节点的包围盒发生碰撞,依次遍历,直至得到与二层节点的包围盒发生碰撞的OBB包围盒。当然,也有可能出现没有OBB包围盒的情况,此时代表该二层节点不会发生碰撞,不会生成包含该二层节点的初始检测对。
(1.2)对于二层节点为直行轨迹段的初始检测对,直接以该初始检测对作为碰撞检测对;对于二层节点为左转段或者右转段的初始检测对,则从初始检测对的二层节点向下遍历轨迹包围盒树,与单个障碍物进行碰撞检测,确定与OBB包围盒发生碰撞的叶子节点的圆弧包围盒,该圆弧包围盒和OBB包围盒组成碰撞检测对。
根据上述步骤依次遍历,并更新碰撞检测对,直到每一碰撞检测对中均为树的叶子节点,至此完成轨迹与障碍物碰撞的粗检测,确定碰撞的大致空间以及时间范围。需要说明的是,在粗检测过程中,碰撞检测对中的包围盒之间发生碰撞不能表明轨迹与障碍物一定发生碰撞,需要在细检测阶段继续检测。
(2)细检测阶段:对每一碰撞检测对进行碰撞检测,确定车辆行驶轨迹是否与障碍物发生碰撞,并在发生碰撞时,确定碰撞位置和碰撞时间。
对碰撞检测对进行碰撞检测;若碰撞检测对发生碰撞,则利用二分法对轨迹包围盒进行划分,得到第一盒和第二盒;若第一盒或第二盒仅包括一个轨迹点,则结束第一盒或第二盒的迭代过程,对轨迹点的车辆外形和碰撞检测对中的障碍物包围盒进行碰撞检测,若发生碰撞,则确定车辆行驶轨迹与障碍物在该轨迹点处发生碰撞;若第一盒或第二盒包括多个轨迹点,则建立多个轨迹点的轨迹包围盒,并以多个轨迹点的轨迹包围盒和障碍物包围盒作为下一迭代的碰撞检测对,返回“对碰撞检测对进行碰撞检测”的步骤。
在上述遍历过程中,由于轨迹包围盒有两种形式,因此会形成两种类型碰撞检测,分别为圆弧包围盒与矩形包围盒的碰撞检测,以及矩形包围盒与矩形包围盒的碰撞检测。则本实施例的碰撞检测可以包括:
若轨迹包围盒为圆弧包围盒,障碍物包围盒为矩形包围盒,则碰撞检测包括:
(1)计算矩形包围盒和由圆弧包围盒的起始边界(直线(a 1b 1))和终止边界(直线(a 2b 2))所构成的夹角区域的重叠区域中距离圆弧包围盒的圆心M最近的目标点的坐标(x*y*);若无解,则不会发生碰撞,即表明轨迹与障碍物不发生碰撞,如图9(a);若有解,则执行下述(2)。
计算公式如下:
Figure 633912DEST_PATH_IMAGE010
Figure 360559DEST_PATH_IMAGE011
Figure 993666DEST_PATH_IMAGE012
(2)计算目标点(x*y*)与圆心M的距离r*,若距离大于圆弧包围盒的距离最大值,即r*>R out ,则不会发生碰撞,即表明轨迹与障碍物不发生碰撞,如图9(b);若距离大于或等于圆弧包围盒的距离最小值且小于或等于距离最大值,即R in ≤ r*≤R out ,则会发生碰撞,即表明轨迹与障碍物发生碰撞,如图9(c);若距离小于距离最小值,即r*<R in ,则执行下述(3)。
(3)判断矩形包围盒的顶点是否满足第二预设条件;若任一顶点V j j=1,2,3,4)满足第二预设条件,则会发生碰撞,表明轨迹与障碍物发生碰撞,如图9(d);若所有顶点均不满足第二预设条件,则执行下述(4)。
第二预设条件为顶点的坐标与圆心的坐标的2范数大于或等于距离最小值,且顶点位于起始边界靠近终止边界的一侧,则第二预设条件可表示为:
Figure 451936DEST_PATH_IMAGE013
Figure 930322DEST_PATH_IMAGE014
(4)确定矩形包围盒与夹角区域的交点,若存在任一交点到圆心M的距离大于或者等于距离最小值R in ,则会发生碰撞,即表明轨迹与障碍物发生碰撞,如图9(e),此时障碍物四个顶点均在夹角区域外,但障碍物仍和轨迹相交。否则,则不会发生碰撞,即表明轨迹和障碍物不发生碰撞。
若轨迹包围盒为第一矩形包围盒,障碍物包围盒为第二矩形包围盒,则引入分离轴定理(Separating Axis Theorem,SAT),此时碰撞检测包括:对于第一矩形包围盒和第二矩形包围盒的每一条边,确定边的法线,将第一矩形包围盒的四个顶点投影到法线上,得到第一集合;将第二矩形包围盒的四个顶点投影到法线上,得到第二集合;若所有边的第一集合和第二集合的交集均为非空集合,则会发生碰撞,即轨迹和障碍物发生碰撞;否则,则不会发生碰撞,轨迹与障碍物没有碰撞。
本实施例用于提供一种基于轨迹基元分割的高效碰撞检测方法,与现有技术相比,该方法根据轨迹的曲率及外形特点,分割生成不同的轨迹基元,分别使用更紧密的圆弧包围盒和矩形包围盒拟合基元外形,减少由于包围盒的冗余空间过大造成的无效检测次数,运用树型结构描述轨迹和障碍物,并设计粗检测与细检测相结合的遍历策略,快速确定发生碰撞的粗略范围后也可精准确定碰撞时间,减少遍历所有轨迹与障碍物的时间,在障碍物较多的狭窄通道场景中能够更高效、快速完成碰撞检测。
实施例2:
本实施例用于提供一种基于轨迹基元分割的高效碰撞检测系统,如图10所示,所述高效碰撞检测系统包括:
信息获取模块M1,用于获取车辆行驶轨迹信息以及障碍物信息;所述车辆行驶轨迹信息包括每一个轨迹点的位置、航向和曲率;所述障碍物信息包括每一个障碍物的位置和形状;
轨迹包围盒树构建模块M2,用于对于每一所述轨迹点,根据所述轨迹点的曲率将所述轨迹点划分为左转基元、右转基元和直行基元;连续的若干个所述左转基元组成左转轨迹段,连续的若干个所述右转基元组成右转轨迹段,连续的若干个所述直行基元组成直行轨迹段;按照单调性原则对每一所述左转轨迹段进行分割,得到若干个左转段;按照所述单调性原则对每一所述右转轨迹段进行分割,得到若干个右转段;所述单调性原则为每一段内的轨迹点的曲率单调不增或者单调不减;利用二分法对所述左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差,得到若干个左转子段;利用二分法对所述右转段进行迭代分割,直至所得到的右转子段的端点曲率的倍数差小于所述预设倍数差,得到若干个右转子段;以所有所述轨迹点作为根节点,以所述左转段、所述右转段和所述直行轨迹段作为所述根节点的子节点,以第1次迭代得到的所述左转子段作为所述左转段的子节点,以第N次迭代得到的所述左转子段作为第N-1次迭代得到的所述左转子段的子节点,以第1次迭代得到的所述右转子段作为所述右转段的子节点,以第N次迭代得到的所述右转子段作为第N-1次迭代得到的所述右转子段的子节点,并建立所述左转段、所述右转段、所述左转子段和所述右转子段的圆弧包围盒,建立所述直行轨迹段的矩形包围盒,得到轨迹包围盒树;其中,N大于1;
障碍物包围盒树构建模块M3,用于建立包含所有所述障碍物的AABB包围盒;对所述AABB包围盒进行迭代分割,直至分割得到的空间内仅包含一个障碍物;以所有所述障碍物作为根节点,以第1次迭代得到的所述空间内的障碍物作为所述根节点的子节点,以第N次迭代得到的所述空间内的障碍物作为第N-1次迭代得到的所述空间内的障碍物的子节点,并建立仅包含一个障碍物的子节点的OBB包围盒,建立包含若干个障碍物的子节点的AABB包围盒,得到障碍物包围盒树;
粗检测模块M4,用于对所述轨迹包围盒树的轨迹包围盒和所述障碍物包围盒树的障碍物包围盒进行碰撞检测,确定若干个碰撞检测对;所述碰撞检测对由所述轨迹包围盒树的叶子节点的轨迹包围盒与所述障碍物包围盒树的叶子节点的障碍物包围盒组成;
细检测模块M5,用于对每一所述碰撞检测对进行碰撞检测,确定车辆行驶轨迹是否与障碍物发生碰撞,并在发生碰撞时,确定碰撞位置和碰撞时间。
本说明书中每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述高效碰撞检测方法包括:
获取车辆行驶轨迹信息以及障碍物信息;所述车辆行驶轨迹信息包括每一个轨迹点的位置、航向和曲率;所述障碍物信息包括每一个障碍物的位置和形状;
对于每一所述轨迹点,根据所述轨迹点的曲率将所述轨迹点划分为左转基元、右转基元和直行基元;连续的若干个所述左转基元组成左转轨迹段,连续的若干个所述右转基元组成右转轨迹段,连续的若干个所述直行基元组成直行轨迹段;
按照单调性原则对每一所述左转轨迹段进行分割,得到若干个左转段;按照所述单调性原则对每一所述右转轨迹段进行分割,得到若干个右转段;所述单调性原则为每一段内的轨迹点的曲率单调不增或者单调不减;
利用二分法对所述左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差,得到若干个左转子段;利用二分法对所述右转段进行迭代分割,直至所得到的右转子段的端点曲率的倍数差小于所述预设倍数差,得到若干个右转子段;
以所有所述轨迹点作为根节点,以所述左转段、所述右转段和所述直行轨迹段作为所述根节点的子节点,以第1次迭代得到的所述左转子段作为所述左转段的子节点,以第N次迭代得到的所述左转子段作为第N-1次迭代得到的所述左转子段的子节点,以第1次迭代得到的所述右转子段作为所述右转段的子节点,以第N次迭代得到的所述右转子段作为第N-1次迭代得到的所述右转子段的子节点,并建立所述左转段、所述右转段、所述左转子段和所述右转子段的圆弧包围盒,建立所述直行轨迹段的矩形包围盒,得到轨迹包围盒树;其中,N大于1;
建立包含所有所述障碍物的AABB包围盒;对所述AABB包围盒进行迭代分割,直至分割得到的空间内仅包含一个障碍物;
以所有所述障碍物作为根节点,以第1次迭代得到的所述空间内的障碍物作为所述根节点的子节点,以第N次迭代得到的所述空间内的障碍物作为第N-1次迭代得到的所述空间内的障碍物的子节点,并建立仅包含一个障碍物的子节点的OBB包围盒,建立包含若干个障碍物的子节点的AABB包围盒,得到障碍物包围盒树;
对所述轨迹包围盒树的轨迹包围盒和所述障碍物包围盒树的障碍物包围盒进行碰撞检测,确定若干个碰撞检测对;所述碰撞检测对由所述轨迹包围盒树的叶子节点的轨迹包围盒与所述障碍物包围盒树的叶子节点的障碍物包围盒组成;
对每一所述碰撞检测对进行碰撞检测,确定车辆行驶轨迹是否与障碍物发生碰撞,并在发生碰撞时,确定碰撞位置和碰撞时间。
2.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述根据所述轨迹点的曲率将所述轨迹点划分为左转基元、右转基元和直行基元具体包括:
若所述轨迹点的曲率大于或等于第一预设值且小于第二预设值,则所述轨迹点为右转基元;
若所述轨迹点的曲率大于或等于所述第二预设值且小于或等于第三预设值,则所述轨迹点为直行基元;
若所述轨迹点的曲率大于所述第三预设值且小于或等于第四预设值,则所述轨迹点为左转基元。
3.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述利用二分法对所述左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差具体包括:
以所述左转段作为初始段;
利用二分法对所述初始段进行分割,得到第一子段和第二子段;
判断所述第一子段的端点曲率的倍数差是否小于预设倍数差;若是,则结束对所述第一子段的分割过程;若否,则以所述第一子段作为下一迭代的初始段,返回“利用二分法对所述初始段进行分割”的步骤;
判断所述第二子段的端点曲率的倍数差是否小于所述预设倍数差;若是,则结束对所述第二子段的分割过程;若否,则以所述第二子段作为下一迭代的初始段,返回“利用二分法对所述初始段进行分割”的步骤;第N次迭代得到的所述第一子段和所述第二子段即为第N次迭代得到的左转子段。
4.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,建立所述左转段的圆弧包围盒具体包括:
计算所述左转段的起始轨迹点和终止轨迹点的曲率的平均值,并选取所述左转段中曲率与所述平均值的差值最小的中间轨迹点作为目标轨迹点,确定同时经过所述起始轨迹点、所述目标轨迹点和所述终止轨迹点的圆的圆心;
对于所述左转段中的每一轨迹点,根据所述轨迹点的位置以及航向,利用矩形拟合车辆外形;
定义车辆行驶方向为前,靠近所述圆心的一侧为内侧;计算每一所述轨迹点的车辆外形的外侧前端的顶点与所述圆心的距离,并选取所述距离的最大值作为距离最大值;
对于所述左转段中的每一轨迹点,计算所述圆心和所述轨迹点的连线与所述圆心到所述轨迹点的航向的垂线之间的夹角,并计算所述圆心到所述夹角最小的轨迹点的车辆外形的内侧边的距离,得到距离最小值;
分别连接所述圆心与所述起始轨迹点的车辆外形的后端的两个顶点,选取符合第一预设条件的连线作为起始边界;分别连接所述圆心与所述终止轨迹点的车辆外形的前端的两个顶点,选取符合所述第一预设条件的连线作为终止边界;所述第一预设条件为所述左转段中的所有所述轨迹点的车辆外形位于所述连线的同一侧;
根据所述起始边界、所述终止边界、所述距离最小值和所述距离最大值建立所述左转段的圆弧包围盒。
5.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述建立所述直行轨迹段的矩形包围盒具体包括:
对于所述直行轨迹段中的每一轨迹点,根据所述轨迹点的位置以及航向,利用矩形拟合车辆外形;
以包围所述直行轨迹段中的所有所述轨迹点的车辆外形且长边与所述直行轨迹段中的曲率绝对值最小的轨迹点的航向平行的最小矩形作为所述直行轨迹段的矩形包围盒。
6.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述对所述AABB包围盒进行迭代分割,直至分割得到的空间内仅包含一个障碍物具体包括:
以所述AABB包围盒作为初始包围盒;
利用所述初始包围盒的长边的垂直平分线对所述初始包围盒进行分割,得到第一空间和第二空间;
判断所述第一空间是否仅包含一个障碍物;若是,则结束对所述第一空间的分割过程;若否,则建立包含所述第一空间内的障碍物的第一AABB包围盒,并以所述第一AABB包围盒作为下一迭代中的初始包围盒,返回“利用所述初始包围盒的长边的垂直平分线对所述初始包围盒进行分割”的步骤;
判断所述第二空间是否仅包含一个障碍物;若是,则结束对所述第二空间的分割过程;若否,则建立包含所述第二空间内的障碍物的第二AABB包围盒,并以所述第二AABB包围盒作为下一迭代中的初始包围盒,返回“利用所述初始包围盒的长边的垂直平分线对所述初始包围盒进行分割”的步骤。
7.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述对所述轨迹包围盒树的轨迹包围盒和所述障碍物包围盒树的障碍物包围盒进行碰撞检测,确定若干个碰撞检测对具体包括:
对于所述轨迹包围盒树的每一个二层节点,从所述障碍物包围盒树的根节点向下遍历所述障碍物包围盒树,确定与所述二层节点的包围盒发生碰撞的OBB包围盒,所述二层节点的包围盒和所述OBB包围盒组成初始检测对;所述二层节点为所述轨迹包围盒树的根节点的子节点;
对于所述二层节点为所述直行轨迹段的所述初始检测对,以所述初始检测对作为碰撞检测对;对于所述二层节点为所述左转段或者所述右转段的所述初始检测对,从所述初始检测对的二层节点向下遍历所述轨迹包围盒树,确定与所述OBB包围盒发生碰撞的叶子节点的圆弧包围盒,所述圆弧包围盒和所述OBB包围盒组成碰撞检测对。
8.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述对每一所述碰撞检测对进行碰撞检测具体包括:
对所述碰撞检测对进行碰撞检测;
若所述碰撞检测对发生碰撞,则利用二分法对所述轨迹包围盒进行划分,得到第一盒和第二盒;若所述第一盒或所述第二盒仅包括一个轨迹点,则结束所述第一盒或所述第二盒的迭代过程,对所述轨迹点的车辆外形和所述碰撞检测对中的障碍物包围盒进行碰撞检测,若发生碰撞,则确定车辆行驶轨迹与障碍物在所述轨迹点处发生碰撞;若所述第一盒或所述第二盒包括多个轨迹点,则建立所述多个轨迹点的轨迹包围盒,并以所述多个轨迹点的轨迹包围盒和所述障碍物包围盒作为下一迭代的碰撞检测对,返回“对所述碰撞检测对进行碰撞检测”的步骤。
9.根据权利要求1所述的一种基于轨迹基元分割的高效碰撞检测方法,其特征在于,所述碰撞检测包括:
若所述轨迹包围盒为圆弧包围盒,所述障碍物包围盒为矩形包围盒,则碰撞检测包括:
计算所述矩形包围盒和由所述圆弧包围盒的起始边界和终止边界所构成的夹角区域的重叠区域中距离所述圆弧包围盒的圆心最近的目标点的坐标;若无解,则不会发生碰撞;若有解,则计算所述目标点与所述圆心的距离,若所述距离大于所述圆弧包围盒的距离最大值,则不会发生碰撞;若所述距离大于或等于所述圆弧包围盒的距离最小值且小于或等于所述距离最大值,则会发生碰撞;若所述距离小于所述距离最小值,则判断所述矩形包围盒的顶点是否满足第二预设条件;若任一所述顶点满足所述第二预设条件,则会发生碰撞;若所有所述顶点均不满足所述第二预设条件,则确定所述矩形包围盒与所述夹角区域的交点,若任一所述交点到所述圆心的距离大于或者等于所述距离最小值,则会发生碰撞,否则,则不会发生碰撞;所述第二预设条件为所述顶点的坐标与所述圆心的坐标的2范数大于或等于所述距离最小值,且所述顶点位于所述起始边界靠近所述终止边界的一侧;
若所述轨迹包围盒为第一矩形包围盒,所述障碍物包围盒为第二矩形包围盒,则碰撞检测包括:
对于所述第一矩形包围盒和所述第二矩形包围盒的每一条边,确定所述边的法线,将所述第一矩形包围盒的四个顶点投影到所述法线上,得到第一集合;将所述第二矩形包围盒的四个顶点投影到所述法线上,得到第二集合;若所有所述边的第一集合和第二集合的交集均为非空集合,则会发生碰撞;否则,则不会发生碰撞。
10.一种基于轨迹基元分割的高效碰撞检测系统,其特征在于,所述高效碰撞检测系统包括:
信息获取模块,用于获取车辆行驶轨迹信息以及障碍物信息;所述车辆行驶轨迹信息包括每一个轨迹点的位置、航向和曲率;所述障碍物信息包括每一个障碍物的位置和形状;
轨迹包围盒树构建模块,用于对于每一所述轨迹点,根据所述轨迹点的曲率将所述轨迹点划分为左转基元、右转基元和直行基元;连续的若干个所述左转基元组成左转轨迹段,连续的若干个所述右转基元组成右转轨迹段,连续的若干个所述直行基元组成直行轨迹段;按照单调性原则对每一所述左转轨迹段进行分割,得到若干个左转段;按照所述单调性原则对每一所述右转轨迹段进行分割,得到若干个右转段;所述单调性原则为每一段内的轨迹点的曲率单调不增或者单调不减;利用二分法对所述左转段进行迭代分割,直至所得到的左转子段的端点曲率的倍数差小于预设倍数差,得到若干个左转子段;利用二分法对所述右转段进行迭代分割,直至所得到的右转子段的端点曲率的倍数差小于所述预设倍数差,得到若干个右转子段;以所有所述轨迹点作为根节点,以所述左转段、所述右转段和所述直行轨迹段作为所述根节点的子节点,以第1次迭代得到的所述左转子段作为所述左转段的子节点,以第N次迭代得到的所述左转子段作为第N-1次迭代得到的所述左转子段的子节点,以第1次迭代得到的所述右转子段作为所述右转段的子节点,以第N次迭代得到的所述右转子段作为第N-1次迭代得到的所述右转子段的子节点,并建立所述左转段、所述右转段、所述左转子段和所述右转子段的圆弧包围盒,建立所述直行轨迹段的矩形包围盒,得到轨迹包围盒树;其中,N大于1;
障碍物包围盒树构建模块,用于建立包含所有所述障碍物的AABB包围盒;对所述AABB包围盒进行迭代分割,直至分割得到的空间内仅包含一个障碍物;以所有所述障碍物作为根节点,以第1次迭代得到的所述空间内的障碍物作为所述根节点的子节点,以第N次迭代得到的所述空间内的障碍物作为第N-1次迭代得到的所述空间内的障碍物的子节点,并建立仅包含一个障碍物的子节点的OBB包围盒,建立包含若干个障碍物的子节点的AABB包围盒,得到障碍物包围盒树;
粗检测模块,用于对所述轨迹包围盒树的轨迹包围盒和所述障碍物包围盒树的障碍物包围盒进行碰撞检测,确定若干个碰撞检测对;所述碰撞检测对由所述轨迹包围盒树的叶子节点的轨迹包围盒与所述障碍物包围盒树的叶子节点的障碍物包围盒组成;
细检测模块,用于对每一所述碰撞检测对进行碰撞检测,确定车辆行驶轨迹是否与障碍物发生碰撞,并在发生碰撞时,确定碰撞位置和碰撞时间。
CN202211169046.7A 2022-09-26 2022-09-26 一种基于轨迹基元分割的高效碰撞检测方法及系统 Active CN115237928B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211169046.7A CN115237928B (zh) 2022-09-26 2022-09-26 一种基于轨迹基元分割的高效碰撞检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211169046.7A CN115237928B (zh) 2022-09-26 2022-09-26 一种基于轨迹基元分割的高效碰撞检测方法及系统

Publications (2)

Publication Number Publication Date
CN115237928A CN115237928A (zh) 2022-10-25
CN115237928B true CN115237928B (zh) 2022-12-06

Family

ID=83667295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211169046.7A Active CN115237928B (zh) 2022-09-26 2022-09-26 一种基于轨迹基元分割的高效碰撞检测方法及系统

Country Status (1)

Country Link
CN (1) CN115237928B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115837921B (zh) * 2023-02-23 2023-06-02 深圳佑驾创新科技有限公司 车辆轨迹碰撞检测方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109960261A (zh) * 2019-03-22 2019-07-02 北京理工大学 一种基于碰撞检测的动态障碍物避让方法
CN111007861A (zh) * 2019-12-24 2020-04-14 北京旷视机器人技术有限公司 轨迹跟踪控制方法、装置、系统及移动机器人
CN111633665A (zh) * 2020-07-03 2020-09-08 桂林电子科技大学 抓取电磁换能器协助无损检测的装置及其轨迹规划方法
CN114235441A (zh) * 2021-12-31 2022-03-25 深兰人工智能(深圳)有限公司 无人车实时碰撞检测方法及相关装置
CN115027464A (zh) * 2022-07-29 2022-09-09 西安电子科技大学芜湖研究院 一种基于方向包围盒的自动驾驶碰撞检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109960261A (zh) * 2019-03-22 2019-07-02 北京理工大学 一种基于碰撞检测的动态障碍物避让方法
CN111007861A (zh) * 2019-12-24 2020-04-14 北京旷视机器人技术有限公司 轨迹跟踪控制方法、装置、系统及移动机器人
CN111633665A (zh) * 2020-07-03 2020-09-08 桂林电子科技大学 抓取电磁换能器协助无损检测的装置及其轨迹规划方法
CN114235441A (zh) * 2021-12-31 2022-03-25 深兰人工智能(深圳)有限公司 无人车实时碰撞检测方法及相关装置
CN115027464A (zh) * 2022-07-29 2022-09-09 西安电子科技大学芜湖研究院 一种基于方向包围盒的自动驾驶碰撞检测方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
《Learning to Represent and Generalize Lateral Control Deviation Based on Driving Data》;Junbo Liao 等;《2020 3rd International Conference on Unmanned Systems (ICUS)》;20201207;全文 *
《高速无人驾驶车辆最优运动规划与控制的动力学建模分析》;刘凯 等;《机械工程学报》;20180604;第54卷(第14期);全文 *
基于紧急制动行为预测的汽车智能制动灯研究;吴绍斌等;《中国安全科学学报》;20151015(第10期);全文 *
多智能体领航跟随一致性和轨迹跟踪问题研究;林敏等;《无人系统技术》;20180915(第03期);全文 *
开放式机器人控制器中仿真组件的实现;潘炼东等;《计算机工程与应用》;20060301(第07期);全文 *
车辆转向轻便性人-车-路闭环系统计算机仿真研究;左建令等;《汽车技术》;20060424(第04期);全文 *

Also Published As

Publication number Publication date
CN115237928A (zh) 2022-10-25

Similar Documents

Publication Publication Date Title
CN112179351B (zh) 一种基于预规划路径优化rrt算法的三维避障航迹规划方法
Song et al. Surface-based exploration for autonomous 3d modeling
CN112269965A (zh) 一种非完整约束条件下的连续曲率路径优化方法
CN108088456A (zh) 一种具有时间一致性的无人驾驶车辆局部路径规划方法
CN110954122B (zh) 高速场景下的自动驾驶轨迹生成方法
CN111459160B (zh) 一种开放道路无人洗扫车大规模轨迹平滑方法
CN115237928B (zh) 一种基于轨迹基元分割的高效碰撞检测方法及系统
CN108180921B (zh) 利用gps数据的ar-hud导航系统及其导航方法
CN110032182B (zh) 一种融合可视图法和稳定稀疏随机快速树机器人规划算法
Zheng et al. RRT based path planning for autonomous parking of vehicle
Xiong et al. Application improvement of A* algorithm in intelligent vehicle trajectory planning
CN110146087B (zh) 一种基于动态规划思想的船舶路径规划方法
CN113895463A (zh) 一种适用于自动驾驶车辆掉头的路径规划方法
CN114281084B (zh) 一种基于改进a*算法的智能车全局路径规划方法
CN113515111B (zh) 一种车辆避障路径规划方法及装置
CN116331264A (zh) 一种未知障碍物分布的避障路径鲁棒规划方法及系统
CN114237256B (zh) 一种适用于欠驱动机器人的三维路径规划与导航方法
CN114715192A (zh) 一种解耦的自动驾驶车辆实时轨迹规划方法、装置及系统
CN114323051A (zh) 路口行驶轨迹的规划方法、装置和电子设备
CN117162098B (zh) 一种狭小空间机器人姿态自主规划系统及方法
CN117452965A (zh) 一种变构型无人机穿越狭长通道的轨迹规划方法
CN111595352B (zh) 一种基于环境感知和车辆行驶意图的轨迹预测方法
CN114995465B (zh) 一种考虑车辆运动能力的多无人车运动规划方法和系统
CN117109620A (zh) 基于采样的车辆行为与环境交互的自动驾驶路径规划方法
Che et al. A wall-following navigation method for autonomous driving based on lidar in tunnel scenes

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