车辆异常行驶行为检测方法、装置、电子设备和存储介质转让专利

申请号 : CN202211214403.7

文献号 : CN115805948B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 方雪健

申请人 : 北京百度网讯科技有限公司

摘要 :

本公开提供了一种车辆异常行驶行为检测方法、装置、电子设备和存储介质,涉及数据处理技术领域,尤其涉及自动驾驶技术领域。具体实现方案包括:在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据;根据所述检测指标数据和所述异常行驶行为对应的预设检测策略,确定所述自动驾驶车辆是否存在所述异常行驶行为;若存在,则确定所述异常行驶行为的度量指标数据。本公开方案可以快速准确的检测出自动驾驶车辆行驶过程中存在的异常行驶行为;并可以对异常行驶行为进行定量分析。

权利要求 :

1.一种车辆异常行驶行为检测方法,包括:

在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据;

根据所述检测指标数据和所述异常行驶行为对应的预设检测策略,确定所述自动驾驶车辆是否存在所述异常行驶行为;其中,所述异常行驶行为是指横向加速度超限行为、横向晃动行为或画龙行为,不同异常行驶行为对应不同的检测指标数据和不同的预设检测策略;

若存在,则确定所述异常行驶行为的度量指标数据。

2.根据权利要求1所述的方法,其中,若自动驾驶车辆的行驶速度大于或等于预设速度阈值,则所述横向晃动行为和画龙行为对应的检测指标数据为横向偏移速度。

3.根据权利要求2所述的方法,其中,获取异常行驶行为自对应的检测指标数据,包括:获取所述自动驾驶车辆在当前时刻的当前横向偏移速度,以及所述自动驾驶车辆在当前时刻之前预设时长内的历史横向偏移速度;

将所述当前横向偏移速度和所述历史横向偏移速度作为所述横向晃动行为和画龙行为对应的检测指标数据。

4.根据权利要求3所述的方法,其中,获取所述自动驾驶车辆在当前时刻的当前横向偏移速度,包括:根据所述自动驾驶车辆在当前时刻的行驶速度以及所述自动驾驶车辆在当前时刻相对于规划路径的航向角,确定所述当前横向偏移速度。

5.根据权利要求3所述的方法,其中,根据所述检测指标数据和所述异常行驶行为对应的预设检测策略,确定所述自动驾驶车辆是否存在所述异常行驶行为,包括:从所述历史横向偏移速度和当前横向偏移速度中,确定横向偏移速度的峰值和谷值;

判断所述横向偏移速度的峰值和谷值是否满足所述预设检测策略;其中,所述预设检测策略中包括不存在异常行驶行为时的横向偏移速度区间;

若满足,则确定所述自动驾驶车辆存在所述横向晃动行为和画龙行为。

6.根据权利要求5所述的方法,其中,确定所述异常行驶行为的度量指标数据,包括:根据所述横向偏移速度的峰值和谷值,确定摆动次数;其中,每出现一次峰值和谷值,则认为摆动一次;

根据所述横向偏移速度的峰值和谷值,确定最大横向偏移速度;

根据所述最大横向偏移速度、预设的横向偏移速度的阈值上限和阈值下限,计算摆动强度;

将所述摆动次数和所述摆动强度作为横向晃动行为和画龙行为对应的度量指标数据。

7.根据权利要求1所述的方法,其中,若所述自动驾驶车辆的行驶速度小于预设速度阈值,则所述横向晃动行为和画龙行为对应的检测指标数据为横摆角速度和横摆角加速度。

8.根据权利要求7所述的方法,其中,根据所述检测指标数据和所述异常行驶行为对应的预设检测策略,确定所述自动驾驶车辆是否存在所述异常行驶行为,包括:若所述横摆角速度和横摆角加速度满足预设检测策略中包括的目标筛选条件,则确定所述自动驾驶车辆存在异常行驶行为;

其中,所述目标筛选条件包括:所述横摆角速度的峰值和谷值之间的幅值差异小于预设角速度阈值;

所述横摆角速度的峰值发生时刻和横摆角速度的谷值发生时刻之间的时间差小于预设时间阈值;

所述横摆角加速度处于预设横摆角加速度区间之外。

9.根据权利要求7所述的方法,还包括:

确定所述自动驾驶车辆所处的当前行驶场景,并判断所述当前行驶场景是否属于目标行驶场景;其中,所述目标行驶场景包括自动驾驶车辆经过分岔或汇聚车道的场景、自动驾驶车辆转弯后立即变道的场景和自动驾驶车辆遭遇阻塞绕行的场景;

若不属于所述目标行驶场景,则确定所述自动驾驶车辆存在异常行驶行为。

10.根据权利要求7所述的方法,其中,确定所述异常行驶行为的度量指标数据,包括:根据所述横摆角速度的峰值和谷值,确定摆动次数;其中,每出现一次峰值和谷值,则认为摆动一次;

根据所述横摆角加速度的峰值和谷值,确定最大横摆角加速度;

根据所述最大横摆角加速度、预设的横摆角速度的阈值上限和阈值下限,计算摆动强度;

将所述摆动次数和所述摆动强度作为所述横向晃动行为和画龙行为对应的度量指标数据。

11.根据权利要求1所述的方法,其中,所述横向加速度超限行为对应的检测指标数据为检测到的所述自动驾驶车辆的横向加速度;

根据所述检测指标数据和所述异常行驶行为对应的预设检测策略,确定所述自动驾驶车辆是否存在所述异常行驶行为,包括:判断检测到的所述自动驾驶车辆的横向加速度是否处于预设横向加速度区间内;其中,所述预设横向加速度区间的下限为根据所述自动驾驶车辆当前所处的场景和预先标定的不同场景的横向加速度阈值确定;所述预设横向加速度区间的上限是根据横向加速度的检测历史数据确定;

若是,则确定所述自动驾驶车辆存在横向加速度超限行为。

12.根据权利要求11所述的方法,其中,确定所述异常行驶行为的度量指标数据,包括:根据检测到的所述自动驾驶车辆的横向加速度、所述预设横向加速度区间的下限和上限,计算超限强度,并将所述超限强度作为所述异常行驶行为的度量指标数据。

13.一种车辆异常行驶行为检测装置,包括:

数据获取模块,用于在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据;

检测模块,用于根据所述检测指标数据和所述异常行驶行为对应的预设检测策略,确定所述自动驾驶车辆是否存在所述异常行驶行为;其中,所述异常行驶行为是指横向加速度超限行为、横向晃动行为或画龙行为,不同异常行驶行为对应不同的检测指标数据和不同的预设检测策略;

度量模块,用于若存在所述异常行驶行为,则确定所述异常行驶行为的度量指标数据。

14.根据权利要求13所述的装置,其中,若自动驾驶车辆的行驶速度大于或等于预设速度阈值,则所述横向晃动行为和画龙行为对应的检测指标数据为横向偏移速度。

15.根据权利要求14所述的装置,其中,数据获取模块包括:第一获取单元,用于获取所述自动驾驶车辆在当前时刻的当前横向偏移速度,以及所述自动驾驶车辆在当前时刻之前预设时长内的历史横向偏移速度;

第二获取单元,用于将所述当前横向偏移速度和所述历史横向偏移速度作为所述横向晃动行为和画龙行为对应的检测指标数据。

16.根据权利要求15所述的装置,其中,第一获取单元还用于:根据所述自动驾驶车辆在当前时刻的行驶速度以及所述自动驾驶车辆在当前时刻相对于规划路径的航向角,确定所述当前横向偏移速度。

17.根据权利要求15所述的装置,其中,所述检测模块还用于包括:从所述历史横向偏移速度和当前横向偏移速度中,确定横向偏移速度的峰值和谷值;

判断所述横向偏移速度的峰值和谷值是否满足所述预设检测策略;其中,所述预设检测策略中包括不存在异常行驶行为时的横向偏移速度区间;

若满足,则确定所述自动驾驶车辆存在所述横向晃动行为和画龙行为。

18.根据权利要求17所述的装置,其中,所述度量模块还用于:根据所述横向偏移速度的峰值和谷值,确定摆动次数;其中,每出现一次峰值和谷值,则认为摆动一次;

根据所述横向偏移速度的峰值和谷值,确定最大横向偏移速度;

根据所述最大横向偏移速度、预设的横向偏移速度的阈值上限和阈值下限,计算摆动强度;

将所述摆动次数和所述摆动强度作为横向晃动行为和画龙行为对应的度量指标数据。

19. 一种电子设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1‑12中任一项所述的车辆异常行驶行为检测方法。

20.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1‑12中任一项所述的车辆异常行驶行为检测方法。

说明书 :

车辆异常行驶行为检测方法、装置、电子设备和存储介质

技术领域

[0001] 本公开涉及数据处理技术领域,尤其涉及自动驾驶技术领域,具体涉及一种车辆异常行驶行为检测方法、装置、电子设备、存储介质和计算机程序产品。

背景技术

[0002] 随着车辆技术和电子技术的快速发展,自动驾驶汽车越来越多地出现在人们的生活中。其中,自动驾驶汽车又称无人驾驶汽车、电脑驾驶汽车或轮式移动机器人,是一种通过计算机系统实现无人驾驶的智能汽车。在使用过程中,自动驾驶汽车无需人为操作,便可以按照预先规划设定的行驶路线,自主且安全地操作汽车进行正常行驶。

发明内容

[0003] 本公开提供了一种车辆异常行驶行为检测方法、装置、电子设备、存储介质和计算机程序产品。
[0004] 根据本公开的一方面,提供了一种车辆异常行驶行为检测方法,包括:
[0005] 在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据;
[0006] 根据检测指标数据和异常行驶行为对应的预设检测策略,确定自动驾驶车辆是否存在异常行驶行为;
[0007] 若存在,则确定异常行驶行为的度量指标数据。
[0008] 根据本公开的一方面,提供了一种车辆异常行驶行为检测装置,包括:
[0009] 数据获取模块,用于在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据;
[0010] 检测模块,用于根据检测指标数据和异常行驶行为对应的预设检测策略,确定自动驾驶车辆是否存在异常行驶行为;
[0011] 度量模块,用于若存在异常行驶行为,则确定异常行驶行为的度量指标数据。
[0012] 根据本公开的另一方面,提供了一种电子设备,包括:
[0013] 至少一个处理器;以及
[0014] 与至少一个处理器通信连接的存储器;其中,
[0015] 存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开任意实施例的车辆异常行驶行为检测方法。
[0016] 根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行本公开任意实施例的车辆异常行驶行为检测方法。
[0017] 根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开任意实施例的车辆异常行驶行为检测方法。
[0018] 根据本公开的技术,可以快速准确的检测出自动驾驶车辆行驶过程中存在的异常行驶行为;并可以对异常行驶行为进行定量分析。
[0019] 应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

[0020] 附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0021] 图1是本公开实施例提供的一种车辆异常行驶行为检测方法的流程示意图;
[0022] 图2a是本公开实施例提供的又一种车辆异常行驶行为检测方法的流程示意图;
[0023] 图2b是本公开实施例提供的在Frenet参考系下车辆相对于规划路径的运动示意图;
[0024] 图2c是本公开实施例提供的典型存在画龙行为路测数据片段横向偏移速度随时间变化曲线;
[0025] 图2d是本公开实施例提供的正常路测数据片段横向偏移速度随时间变化曲线;
[0026] 图2e是本公开实施例提供的存在晃动或画龙行为问题数据集中横向偏移速度最值分布图;
[0027] 图2f是本公开实施例提供的正常数据集中横向偏移速度最值分布图;
[0028] 图3是本公开实施例提供的又一种车辆异常行驶行为检测方法的流程示意图;
[0029] 图4是本公开实施例提供的车辆异常行驶行为检测方法的逻辑流程图;
[0030] 图5是本公开实施例提供的一种车辆异常行驶行为检测装置的结构示意图;
[0031] 图6是用来实现本公开实施例的车辆异常行驶行为检测方法的电子设备的框图。

具体实施方式

[0032] 以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0033] 本实施例中,在自动驾驶车辆在行驶过程中,由于方向盘转动会导致自动驾驶车辆航线角发生改变,此时由于车身所受的向心力和侧向力的作用,车内乘客能够感知到自动驾驶车辆的横向运动,乘客对这种运动的感受为横向体感。然而出于各种原因,如在系统异常或者规划模块出现不合理的规划情况下,自动驾驶车辆会出现异常行驶行为,异常行驶行为不仅会影响车辆的横向稳定性,还会导致横向体感异常的问题,也即影响乘客的横向舒适性。因此需要在自动驾驶车辆行驶过程中,实时评估可能存在的异常行驶行为,以便自动驾驶系统对异常行驶行为进行校正。而要检测异常行驶行为,可选的,通过安全员(乘客)对自动驾驶运行状态时车辆的横向体感进行人工评估,进而识别车辆是否有异常行驶行为。但是这种评估方式是定性的,且不同的安全员(乘客)对横向舒适性的感受不同,同时,用这种手段也需要一定的人工成本。另一种方式中,通过检测自动驾驶运行状态时车辆的方向盘转角或者航向角变化,来评估车辆是否存在异常行驶行为。但是这种方式由于使用了来自车辆底盘的信号(方向盘转角)或者IMU(Inertial Measurement Unit,自惯性测量单元)的信号(航向角),它们作为外部信号会存在一定的噪声;除此之外,检测过程中不容易区分是由于车辆所在车道本身的曲率变化导致的(例如转弯),还是由于车辆行驶异常导致了方向盘转动或者航向角的变化。另一种方式中,通过采集自动驾驶车辆的行驶轨迹,结合高精地图或者感知车道线,对行驶轨迹进行评估,判断车辆是否存在异常行驶行为,但是这种方式需要事先采集行驶轨迹进行处理,因此该方法只适用于离线回放,从计算效率上很难满足在线检测的实时性。考虑到上述几种识别异常行驶行为的方式均存在一定的缺陷,因此提出了本公开方案的车辆异常行驶行为检测方法,重新确定识别每种异常行驶行为所需的检测指标和检测策略,进而进行异常行驶行为的识别,同时对存在的异常行驶行为进行定量的度量。本公开方案的具体实现流程,可参见如下实施例。
[0034] 图1为本公开实施例的一种车辆异常行驶行为检测方法的流程示意图,本实施例可适用于检测自动驾驶车辆行驶过程中存在的异常行驶行为的情况。该方法可由一种车辆异常行驶行为检测装置来执行,该装置采用软件和/或硬件的方式实现,并集成在电子设备上,例如集成在自动驾驶车辆中。
[0035] 具体的,参见图1,车辆异常行驶行为检测方法如下:
[0036] S101、在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据。
[0037] 本实施例中,异常行驶行为可选的是影响乘客横向体感的行驶行为。可选的,自动驾驶车辆行驶过程中存在的异常行驶行为可分为多种类型,例如异常行驶行为包括横向加速度超限行为、横向晃动行为和画龙行为中的至少一种;其中,横向加速度超限行为是指自动驾驶车辆行驶过程中横向加速度过大;横向晃动行为是指自动驾驶车辆行驶过程中存在横向抖动;画龙行为是指自动驾驶车辆会在道路上来回摆动前进。其中,横向加速度超限行为对应的检测指标数据为自动驾驶车辆的横向加速度,横向晃动行为和画龙行为对应的检测指标数据可选的为横向偏移速度或横摆角速度。在获取异常行驶行为对应的检测指标数据时,可以从相关传感器或相关功能模块中直接获取,也可以通过数据运算的方式计算得到,在此不做具体限定。
[0038] S102、根据检测指标数据和异常行驶行为对应的预设检测策略,确定自动驾驶车辆是否存在异常行驶行为。
[0039] 本实施例中,每种异常行驶行为各自对应一种预设检测策略,也即,针对不同类型的异常行驶行为采用不同的检测策略进行异常检测。其中,预设检测策略中至少包括根据检测指标数据判断是否存在异常行驶行为的方法或判断条件。如此,在得到任一异常行驶行为对应的检测指标数据后,可直接调用预设检测策略中的方法或判断条件,以确定自动驾驶车辆是否存在所该异常行驶行为,如此实现了异常行驶行为的快速检测。
[0040] S103、存在异常行驶行为的情况下,则确定异常行驶行为的度量指标数据。
[0041] 在确定自动驾驶车辆存在异常行驶行为后,还可以进一步的确定异常行驶行为的度量指标数据,其中,度量指标数据是用于衡量异常行驶行为的严重程度的指标数据,由此实现了对异常行驶行为的定量分析。
[0042] 本公开方案中,将异常行驶行为限定为横向加速度超限行为、横向晃动行为和画龙行为中的至少一种,可以保证全面的检测出影响乘客横向体感的异常行驶行为;而且每种异常行驶行为各自对应一种预设检测策略,可以快速准确的检测出自动驾驶车辆行驶过程中存在的异常行驶行为;同时还可以对存在的异常行驶行为进行定量分析,以确定异常行驶行为的严重程度。
[0043] 图2a是根据本公开实施例的又一车辆异常行驶行为检测方法的流程示意图。本实施例中,自动驾驶车辆在不同场景行驶时,同一异常行驶行为对应的检测指标数据可能不同,例如,在高速域场景中,自动驾驶车辆的行驶速度大于或等于预设速度阈值,此时,横向晃动行为和画龙行为对应的检测指标数据为横向偏移速度。在高速域场景中,判断自动驾驶车辆是否存在横向晃动行为或画龙行为的流程,可参见图2a。
[0044] S201、在自动驾驶车辆行驶过程中,获取自动驾驶车辆在当前时刻的当前横向偏移速度,以及自动驾驶车辆在当前时刻之前预设时长内的历史横向偏移速度。
[0045] S202、将当前横向偏移速度和历史横向偏移速度作为横向晃动行为或画龙行为对应的检测指标数据。
[0046] 由于横向晃动行为或画龙行为是一个持续一定时间的运动过程,因此要确定是否存在横向晃动行为或画龙行为,需要获取一定时长内各时间点的横向偏移速度。在实现时,可以先获取当前时刻的当前横向偏移速度,再获取自动驾驶车辆在当前时刻之前预设时长内的历史横向偏移速度,进而将当前横向偏移速度和历史横向偏移速度作为横向晃动行为或画龙行为对应的检测指标数据。在另一种实施方案中,可以预先确定一个可以滑动且具有一定时长的时间窗口,在自动驾驶车辆运行过程中,时间窗口沿着时间轴自动向前滑动,如此,只需确定当前时间窗口下各时间点的横向偏移速度,并将各时间点的横向偏移速度作为横向晃动行为或画龙行为对应的检测指标数据。
[0047] 需要说明的是,之所以选择横向偏移速度作为画龙行为或横向晃动行为的检测指标数据,是因为在发生画龙行为或横向晃动行为时,横向偏移速度会显著增大。本实施例中的横向偏移速度可以直接通过测量设备测量来获取,也可以先计算自动驾驶车辆相对于规划路径的横向偏移距离,在对横向偏移距离进行时间求导运算后得到。
[0048] 本实施例中,在推导横向偏移速度时,参见图2b,其示出了在Frenet参考系下车辆相对于规划路径的运动示意图,在大地坐标系下,车辆后轴中心点向量的坐标为其中,自变量s和d为该点在以规划路径形成的Frenet参考系下的坐标,其中,d表示后轴中心相对于规划路径的横向偏移距离,s是车辆相对路径原点的距离。 和 分别为该中心点的法向量和切向量,其中,切向量的方向即为车辆后轴中心的速度方向,航向角为 车辆后轴中心在规划路径上的投影点向量为 该点对应的切向量和法向量分别为 和
对应的航向角为 车辆后轴中心点的向量可以表示为投影点向量与横向偏移向量之和,可以表示为:
[0049]
[0050] 则横向偏移距离可以表示为:
[0051]
[0052] 投影点法向量 表示为 则其对时间微分为:
[0053] 其中,κr表示投影点的角速度。
[0054] 横向偏移距离对时间求导,可以得到横向偏移速度为:
[0055]
[0056] 其中 ,投影点法向 量 和后轴中心点的 切向 量 分 别表 示为和
[0057] 因此,横向偏移速度可以通过车辆的行驶速度与车辆相对规划路径的航向角正弦值乘积求得。
[0058] 在上述基础上,针对任一时间点的横向偏移速度,可以根据自动驾驶车辆在当前时刻的行驶速度以及自动驾驶车辆在当前时刻相对于规划路径的航向角,确定当前横向偏移速度,具体的,将自动驾驶车辆在当前时刻相对于规划路径的航向角的正弦值,与当前时间点的行驶速度相乘,乘积结果作为该时间点的横向偏移速度。如此可以快速精准的确定每个时间点的横向偏移速度,进而保证横向偏移行为或画龙行为对应的检测指标数据的获取效率。
[0059] 本实施例中,要判断是否存在画龙行为或横向晃动行为,需要预先确定这两种异常行为在高速域场景下的预设检测策略。可选的,可通过离线统计的方式确定预设检测策略。具体的,从路测问题中筛选出车辆在自动驾驶状态下发生横向晃动/画龙行为的问题场景,形成正样本集,任意取该正样本集中的一个样本,计算横向偏移速度随时间的变化,如图2c所示,其中,横向偏移速度的采样频率为10Hz,可知在画龙行为发生阶段,横向偏移速度存在显著的波动(方向规定车辆在规划路径左侧为正,右侧为负)。取负样本(正常样本)中的某个样本进行分析,长度为500多秒,得到如图2d所示的横向偏移速度,图中横轴为时间,纵轴为横向偏移速度,单位m/s。可以看到,正常情不存在横向晃动或画龙行为的横向偏移速度基本位于‑0.22~0.22m/s范围内。
[0060] 基于上述分析,从横向晃动/画龙行为正样本集(约114个问题片段)和负样本(约100个片段)中分别统计了以横向偏移速度最值的分布情况。如下图2e所示,图中横轴为样本的序列号,纵轴为横向偏移速度,则可以看出画龙行为正样本的横向偏移速度分布几乎都位于上下分割线的上侧和下侧,而在负样本中(图2f)则基本上位于上下分割线的内部,因此可以用横向偏移速度能够显著判断自动驾驶车是否发生晃动/画龙。因此,确定的预设检测策略包括不存在异常行驶行为时的横向偏移速度区间(例如‑0.22‑0.22),具体的检测策略为横向偏移速度不在横向偏移速度区间内,具体的,可用如下表达式表示:
[0061] 其中,δv0等于0.22。 和 分别表示横向偏移速度的峰值和谷值。如此,通过该预设检测策略可以快速且准确的确定车辆在高速域中是否存在画龙行为或横向晃动行为。
[0062] 在上述基础上,根据检测指标数据和异常行驶行为对应的预设检测策略,确定自动驾驶车辆是否存在异常行驶行为的过程可参见S203‑S205的步骤。
[0063] S203、从历史横向偏移速度和当前横向偏移速度中,确定横向偏移速度的峰值和谷值。
[0064] S204、判断横向偏移速度的峰值和谷值是否满足预设检测策略;其中,预设检测策略中包括不存在异常行驶行为时的横向偏移速度区间。
[0065] 也即是判断横向偏移速度的峰值和谷值,是否满足这个条件。
[0066] S205、在满足预设检测策略的情况下,则确定自动驾驶车辆存在横向晃动行为或画龙行为。
[0067] S206、确定横向晃动行为或画龙行为的度量指标数据。
[0068] 本实施例中,引入摆动强度和摆动次数作为衡量高速域下横向晃动或画龙行为的度量指标,具体的,摆动次数的确定过程如下:根据横向偏移速度的峰值和谷值,确定摆动次数;其中,每出现一次峰值和谷值,则认为摆动一次;需要说明的是,摆动次数越多,则自动驾驶车辆存在画龙行为或横向晃动行为越严重。
[0069] 确定摆动前强度的过程如下:根据横向偏移速度的峰值和谷值,确定最大横向偏移速度,例如将峰值和谷值中绝对值最大的数值作为最大横向偏移速度;根据最大横向偏移速度、预设的横向偏移速度的阈值上限和阈值下限,计算摆动强度;其中,摆动强度的取值范围在0‑1之间。示例性的,按照如下公式计算摆动强度Sa:
[0070] 其中,|vd|是确定的最大横向偏移速度;δv1表示横向偏移速度设定的阈值上限,一般通过统计高速域中横向晃动或画龙行为数据集中所有的横向偏移速度最值获得,δv0表示设定的阈值下限,是个标定值,用于区分是否发生晃动或画龙,一般通过统计高速域晃动或画龙数据集和正常数据集中的横向偏移速度获得,例如,高速域中,该值为0.22。
[0071] 将摆动次数和摆动强度作为横向晃动行为和画龙行为对应的度量指标数据。
[0072] 本实施例中,通过该预设检测策略可以快速且准确的确定车辆在高速域中是否存在画龙行为或横向晃动行为;而且通过将摆动次数和摆动强度作为度量指标数据,实现了定量分析异常行驶行为的目的。
[0073] 本公开实施例中,对于行驶在城市或城郊的自动驾驶车辆而言,车速一般低于80km/h,当车速较低时,采用横向偏移速度指标进行画龙或横向晃动判定时会存在漏检和误检问题,漏检是由于车辆相对规划路径的航向角偏差不变时,车速越小,横向偏移速度也更小,因此需要调整检测阈值。当检测阈值调小后,由于城市域的自动驾驶路况比高速域通常更复杂,包含更多的弯道和掉头场景,势必会带来一些误检。因此,在低速域中,需要重新确定画龙行为或横向晃动行为的检测指标。而申请人发现,当车辆发生画龙行为或横向晃动行为时,车辆的横摆角速度会发生显著的变化,而在车辆正常转弯和掉头过程中,横摆角速度也会发生显著变化,横摆角速度可用于衡量车辆的摆动程度。为了区分车辆处于异常的画龙行为,还是处于正常的转弯、借道换道和掉头行为,需对横摆角速度进行限定,所以引入横摆角加速度,也即是将横摆角速度和横摆角加速度作为低速域(自动驾驶车辆的行驶速度小于预设速度阈值)下,横向晃动行为和画龙行为对应的检测指标数据。在此基础上,低速域中车辆异常行为检测方法的具体实现过程可参见如下实施例。
[0074] 图3是根据本公开实施例的又一车辆异常行驶行为检测方法的流程示意图。本实施例适用于确定低速域场景中车辆行驶过程中存在的异常行驶行为。参见图3,车辆异常行驶行为检测方法具体如下:
[0075] S301、在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据。
[0076] 本实施例中,获取检测指标数据时,先确定当前时间出口下,不同时间点的横摆角速度和横摆角加速度。其中,横摆角速度可以从车辆的定位模块中获取,而横摆角角速度是通过对横摆角速度进行时间差分和一阶巴特沃斯滤波后得到。进而将其中的横摆角速度的峰值和谷值,以及横摆角加速度的峰值和谷值,作为检测指标数据。
[0077] 在得到检测指标数据后,根据检测指标数据异常行驶行为对应的预设检测策略,确定自动驾驶车辆是否存在异常行驶行为的过程可参见步骤S302,包括:
[0078] S302、若横摆角速度和横摆角加速度满足预设检测策略中包括的目标筛选条件,则确定自动驾驶车辆存在异常行驶行为。
[0079] 其中,目标筛选条件包括:(1)横摆角速度的峰值和谷值之间的幅值差异小于预设角速度阈值,例如该条可用如下公式表示: 其中,wmin为横摆角速度谷值,wmax为横摆角速度峰值,ra为预设阈值。(2)横摆角度的峰值发生时刻和横摆角速度的谷值发生时刻之间的时间差小于预设时间阈值。(3)横摆角加速度处于预设横摆角加速度区间之外,例如该条可用如下公式表示:max(|αmin|,|αmax|)>δα0;其中,αmin为横摆角加速度谷值,αmax为横摆角加速度峰值,δα0为预设横摆角加速度阈值的下限。
[0080] 在此需要说明的是,其中,条件1是为了过滤车辆正常的转弯或掉头,而条件2则是为了过滤车辆处在正常的借道、变道等场景,条件3用于衡量车的摆动是否达到可感知的程度。如此只有同时满足上述三个筛选条件才能精准确定存在画龙行为或横向晃动行为。
[0081] 进一步的,为了进一步保证低速域下异常行驶行为(画龙行为或横向晃动行为)检测的准确性,还可以对自动驾驶车辆的行驶场景进行判断。例如,确定自动驾驶车辆所处的当前行驶场景,并判断当前行驶场景是否属于目标行驶场景;其中,目标行驶场景包括自动驾驶车辆经过分岔或汇聚车道的场景、自动驾驶车辆转弯后立即变道的场景和自动驾驶车辆遭遇阻塞绕行的场景;若不属于目标行驶场景,则确定自动驾驶车辆存在异常行驶行为,即存在画龙行为或横向晃动行为。需要说明的是,可通过车辆的规划路径,以及从高精地图获取车辆所在车道的属性,例如车道类型和车道中心线曲率等,判断当前行驶场景是否为分岔或汇聚车道的场景、转弯后立即变道的场景。可通过获取主车感知阻塞状态和决策状态来判断当前行驶场景是否为遭遇阻塞绕行的场景。
[0082] S303、存在异常行驶行为的情况下,则确定低速域下横向晃动行为或画龙行为的度量指标数据。
[0083] 本实施例中,引入摆动强度和摆动次数作为衡量低速域下横向晃动或画龙行为的度量指标,具体的,摆动次数的确定过程如下:根据横摆角速度的峰值和谷值,确定摆动次数;其中,每出现一次峰值和谷值,则认为摆动一次;需要说明的是,摆动次数越多,则自动驾驶车辆存在画龙行为或横向晃动行为越严重。
[0084] 确定摆动前强度的过程如下:根据横摆角加速度的峰值和谷值,确定最大横摆角加速度,例如将峰值和谷值中绝对值最大的数值作为最大横摆角加速度;根据最大横摆角加速度、预设的横摆角加速度的阈值上限和阈值下限,计算摆动强度;其中,摆动强度的取值范围在0~1之间。示例性的,按照如下公式计算摆动强度Sa:
[0085] 其中,δα1为横摆角加速度设定的阈值上限,一般通过统计城市域(即低速域)横向晃动\画龙行为数据集中所有的横摆角加速度最值获得,δα0为横摆角加速度设定的阈值下限,通过统计城市域横向晃动\画龙行为数据集和正常数据集的横摆角加速度标定获得。
[0086] 将摆动次数和摆动强度作为低速域中横向晃动行为和画龙行为对应的度量指标数据。
[0087] 本实施例中,通过预设检测策略中的目标筛选条件,可以快速且准确的确定车辆在低速域中是否存在画龙行为或横向晃动行为;而且通过将摆动次数和摆动强度作为度量指标数据,实现了定量分析异常行驶行为的目的。
[0088] 图4是根据本公开实施例的车辆异常行驶行为检测方法的逻辑流程图。参见图4,车辆异常行驶行为检测方法如下:
[0089] S401、在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据。
[0090] 本实施例中,需要关注的异常行驶行为为横向加速度超限行为,横向加速度超限行为对应的检测指标数据为检测到的自动驾驶车辆的横向加速度;而自动驾驶车辆的横向加速度可以从车辆的定位模块中获取。需要说明的是,之所以在定位模块中获取,而不是直接在自惯性测量单元(Inertial Measurement Unit,简称IMU)中获取,是因为如果直接从IMU中获取,得到的数据中存在噪声;相反的,由于定位模块会对含有噪声的横向加速度进行滤波处理,使得从定位模块中获取的横向加速度不含噪声;进而保证后续异常检测的准确性。
[0091] S402、判断检测到的自动驾驶车辆的横向加速度是否处于预设横向加速度区间内。
[0092] 本实施例中,检测横向加速度是否超限的检测策略中包括预设的横向加速度区间,其中,预设横向加速度区间的下限为根据自动驾驶车辆当前所处的场景和预先标定的不同场景的横向加速度阈值确定,例如可以预先根据不同场景不同车速下进行横向加速度标定,得到横向加速度阈值标定表,进而根据车辆当前所处场景以及场景下的道路曲率半径确定横向加速度区间的下限;预设横向加速度区间的上限是根据横向加速度的检测历史数据确定,例如将历史检测数据中最大的横向加速度作为上限。
[0093] S403、若横向加速度处于预设横向加速度区间内,则确定自动驾驶车辆存在横向加速度超限行为。
[0094] S404、确定横向加速度超限行为的度量指标数据。
[0095] 可选的,根据检测到的自动驾驶车辆的横向加速度、预设横向加速度区间的下限和上限,计算超限强度,并将超限强度作为异常行驶行为的度量指标数据。示例性的,可以按照如下公式确定超限强度sa:
[0096] 其中,ay为获取的横向加速度;ta为预设横向加速度区间的下限,ta,max为预设横向加速度区间的上限。
[0097] 本实施例中,可根据是否及时检测出是否存再在横向加速度超限行为,进而获知车辆的横向舒适性;通过根据超限强度定量的分析横向加速度超限的严重程度。
[0098] 图5是根据本公开实施例的车辆异常行驶行为检测装置的结构示意图,本实施例可适用于检测自动驾驶车辆行驶过程中存在的异常行驶行为的情况。参见图5,该装置包括:
[0099] 数据获取模块501,用于在自动驾驶车辆行驶过程中,获取异常行驶行为对应的检测指标数据;
[0100] 检测模块502,用于根据检测指标数据和所述异常行驶行为对应的预设检测策略,确定自动驾驶车辆是否存在异常行驶行为;
[0101] 度量模块503,用于若存在异常行驶行为,则确定异常行驶行为的度量指标数据。
[0102] 在上述实施例的基础上,可选的,异常行驶行为包括横向加速度超限行为、横向晃动行为和画龙行为中的至少一种。
[0103] 在上述实施例的基础上,可选的,若自动驾驶车辆的行驶速度大于或等于预设速度阈值,则横向晃动行为和画龙行为对应的检测指标数据为横向偏移速度。
[0104] 在上述实施例的基础上,可选的,数据获取模块包括:
[0105] 第一获取单元,用于获取自动驾驶车辆在当前时刻的当前横向偏移速度,以及自动驾驶车辆在当前时刻之前预设时长内的历史横向偏移速度;
[0106] 第二获取单元,用于将当前横向偏移速度和历史横向偏移速度作为横向晃动行为和画龙行为对应的检测指标数据。
[0107] 在上述实施例的基础上,可选的,第一获取单元还用于:
[0108] 根据自动驾驶车辆在当前时刻的行驶速度以及自动驾驶车辆在当前时刻相对于规划路径的航向角,确定当前横向偏移速度。
[0109] 在上述实施例的基础上,可选的,检测模块还用于包括:
[0110] 从历史横向偏移速度和当前横向偏移速度中,确定横向偏移速度的峰值和谷值;
[0111] 判断横向偏移速度的峰值和谷值是否满足预设检测策略;其中,预设检测策略中包括不存在异常行驶行为时的横向偏移速度区间;
[0112] 若满足,则确定自动驾驶车辆存在横向晃动行为和画龙行为。
[0113] 在上述实施例的基础上,可选的,度量模块还用于:
[0114] 根据横向偏移速度的峰值和谷值,确定摆动次数;其中,每出现一次峰值和谷值,则认为摆动一次;
[0115] 根据横向偏移速度的峰值和谷值,确定最大横向偏移速度;
[0116] 根据最大横向偏移速度、预设的横向偏移速度的阈值上限和阈值下限,计算摆动强度;
[0117] 将摆动次数和摆动强度作为横向晃动行为和画龙行为对应的度量指标数据。
[0118] 在上述实施例的基础上,可选的,若自动驾驶车辆的行驶速度小于预设速度阈值,则横向晃动行为和画龙行为对应的检测指标数据为横摆角速度和横摆角加速度。
[0119] 在上述实施例的基础上,可选的,检测模块还用于:
[0120] 若横摆角速度和横摆角加速度满足预设检测策略中包括的目标筛选条件,则确定自动驾驶车辆存在异常行驶行为;
[0121] 其中,目标筛选条件包括:横摆角速度的峰值和谷值之间的幅值差异小于预设角速度阈值;
[0122] 横摆角度的峰值发生时刻和横摆角速度的谷值发生时刻之间的时间差小于预设时间阈值;
[0123] 横摆角加速度处于预设横摆角加速度区间之外。
[0124] 在上述实施例的基础上,可选的,还包括场景验证模块,用于:
[0125] 确定自动驾驶车辆所处的当前行驶场景,并判断当前行驶场景是否属于目标行驶场景;其中,目标行驶场景包括自动驾驶车辆经过分岔或汇聚车道的场景、自动驾驶车辆转弯后立即变道的场景和自动驾驶车辆遭遇阻塞绕行的场景;
[0126] 若不属于目标行驶场景,则确定自动驾驶车辆存在异常行驶行为。
[0127] 在上述实施例的基础上,可选的,度量模块还用于:
[0128] 根据横摆角速度的峰值和谷值,确定摆动次数;其中,每出现一次峰值和谷值,则认为摆动一次;
[0129] 根据横摆角加速度的峰值和谷值,确定最大横摆角加速度;
[0130] 根据最大横摆角加速度、预设的横摆角速度的阈值上限和阈值下限,计算摆动强度;
[0131] 将摆动次数和摆动强度作为横向晃动行为和画龙行为对应的度量指标数据。
[0132] 在上述实施例的基础上,可选的,横向加速度超限行为对应的检测指标数据为检测到的自动驾驶车辆的横向加速度;
[0133] 检测模块还用于:
[0134] 判断检测到的自动驾驶车辆的横向加速度是否处于预设横向加速度区间内;其中,预设横向加速度区间的下限为根据自动驾驶车辆当前所处的场景和预先标定的不同场景的横向加速度阈值确定;预设横向加速度区间的上限是根据横向加速度的检测历史数据确定;
[0135] 若是,则确定自动驾驶车辆存在横向加速度超限行为。
[0136] 在上述实施例的基础上,可选的,度量模块还用于:
[0137] 根据检测到的自动驾驶车辆的横向加速度、预设横向加速度区间的下限和上限,计算超限强度,并将超限强度作为异常行驶行为的度量指标数据。
[0138] 本公开实施例提供的车辆异常行驶行为检测装置可执行本公开任意实施例提供的车辆异常行驶行为检测方法,具备执行方法相应的功能模块和有益效果。本实施例中未详尽描述的内容可以参考本公开任意方法实施例中的描述。
[0139] 本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
[0140] 根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
[0141] 图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
[0142] 如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
[0143] 设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0144] 计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如车辆异常行驶行为检测方法。例如,在一些实施例中,车辆异常行驶行为检测方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM603并由计算单元601执行时,可以执行上文描述的车辆异常行驶行为检测方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行车辆异常行驶行为检测方法。
[0145] 本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、复杂可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0146] 用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0147] 在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD‑ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0148] 为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0149] 可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
[0150] 计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端‑服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
[0151] 应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
[0152] 上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。