基于小波能量熵的司机疲劳驾驶行为响应算法
2021-12-10徐陶祎
徐陶祎,张 翼
(武汉科技大学城市学院,湖北武汉430083)
1 引言
司机的疲劳驾驶是交通事故出现的核心原因之一。美国交通部一项专门围绕商用车辆的研究报告表明,至少百分之二十的商用车辆事故是由于司机疲劳驾驶所导致[1-3]。当下,很多国家均通过驾驶时间约束的形式控制司机疲劳驾驶情况,我国规定机动车持续驾驶时间不能大于4小时[4]。但是此类方法未考虑不同司机的身体素质、生活习惯等条件均存在差异,仅通过持续驾驶时间判断司机疲劳驾驶行为还有待深究[5,6]。
疲劳驾驶并非属于突发事件,很多交通安全事故也不全是司机在深度疲劳的状态下出现。若可以在司机刚刚发生疲劳情况时发出提醒,便可降低疲劳驾驶的事故率[7]。所以,研究司机疲劳驾驶行为,对优化交通安全存在价值。本文提出基于小波能量熵的司机疲劳驾驶行为响应算法,以期准确识别司机疲劳驾驶行为响应状态。
2 基于小波能量熵的司机疲劳驾驶行为响应算法
2.1 基于稀疏分解的司机方向盘转向信号去噪方法
2.1.1 信号的稀疏分解和匹配追踪算法
司机驾驶时方向盘转向信号的稀疏分解原理如下。
将车辆上传感器所采集的司机驾驶时方向盘转向信号集合设成E={fp,p=1,2,…,P},它的元素fp代表整个Hilbert空间的单位矢量,在下文E简称司机驾驶时方向盘转向信号的过完备原子库,元素fp简称司机驾驶时方向盘转向信号的原子。针对随意一个给定信号y而言,均能够通过E里n个司机驾驶时方向盘转向信号原子实施描述。则
(1)
其中,司机驾驶时方向盘转向信号原子的展开系数是βp;Jn是司机驾驶时方向盘转向信号量p的下标集。因为司机驾驶时方向盘转向信号原子库E属于过完备,原子线性不存在关系,所以式(1)的描述形式不唯一,稀疏分解即为在各种可能的分解方法里获取Jn取值最低的描述形式[8,9]。
(2)
(3)
(4)
将司机驾驶时方向盘转向信号g实施n次分解后,可得
(5)
司机驾驶时方向盘转向信号g稀疏分解成
(6)
2.1.2 信号去噪
将存在噪声的方向盘转向信号数学模型设成
g=gp+gn
(7)
其中,原始不存在噪声的方向盘转向信号与噪声信号依次是gp、gn。
因为不存在噪声的方向盘转向信号gp存在特定结构,如果在E里对含噪的方向盘转向信号g实施稀疏分解时,gp的结果特性和E里原子的特性存在关联性,gp能够描述为E中原子。但含噪信号结构不存在固定性,和E中随机一个原子不存在关联性,所以含噪信号不能描述为E里的方向盘转向信号原子[10]。所以对含噪信号实施稀疏分解时,方向盘转向信号原子和gp的内积将不小于方向盘转向信号和gn的内积,最先分解获取的是不存在噪声的方向盘转向信号,此情况下,去噪后的方向盘转向信号是
g′=gp+Sn+1g
(8)
g′=Ei(k)+Bi(k),去噪后的方向盘转向信号由高频分量信号Ei(k)与低频分量Bi(k)构成。假定第n次和第n+1次残差信号是Sng、Sn+1g那么残差比p(Sng)是
(9)
其中,φ是阈值。
2.2 基于小波能量熵的转向信号响应状态识别算法
2.2.1 小波多分辨分析
司机驾驶时方向盘转向信号的小波多分辨率分析是通过正交小波基,把去噪后方向盘转向信号分解成差异尺度中的各个分量,循环使用1组高通与低通滤波器对去噪后方向盘转向信号实现一一分解,信号和高通滤波器实施卷积计算后抽样便可获取方向盘转向信号的高频细节分量、信号的低频细节分量[11]。每次分解结束,把信号的采样频率缩小至其二分之一,再对低频分量实施分解,获取下一层次的分解分量。将高频分量信号与低频分量信号依次设成Ei(k)、Bi(k),i是分解尺度,那么司机驾驶时方向盘转向信号序列是
y(m)=+B1(m)=+E2(m)+B2(m)
(10)
其中,司机驾驶时方向盘转向信号序列g′∈y(m)在差异尺度的低频信号分量是Bi(m),高频信号分量是Ei(m);I是最大分解尺度;B1(m)是司机驾驶时方向盘转向信号y(m)在分解尺度是1级条件下的低频信号分量,B2(m)是司机驾驶时方向盘转向信号y(m)在分解尺度是2级条件下的低频信号分量;E2(m)是司机驾驶时方向盘转向信号y(m)在分解尺度是2级条件下的高频信号分量。
信息论里,熵代表各个方向盘转向信号的信息量均值与信源均值的不确定性,其可以描述司机驾驶时方向盘转向信号潜藏的有价值信息,但小波变换能够放大方向盘转向信号某部分的属性,因此运算小波能量熵值便可以挖掘司机驾驶时方向盘转向信号里微弱的异常信息。
设置方向盘转向信号序列y(m)在i尺度t时刻中的小波系数矢量是Vit,那么i尺度t时刻的小波能量是
(11)
(12)
其中,VEEi(k)是i尺度分解信号的相对能量。
2.2.2 转向信号小波能量熵测度
Fit(i)′=(Fit(i-2)+Fit(i-1)+Fit(i))/3
(13)
其中,Fit(i)′是平滑修正后方向盘转向信号t时刻的小波能量;另外,分析司机在疲劳状态下方向盘转向信号的修正特征可知,方向盘控制一般会存在3种阶段,详情如图1所示。
图1 方向盘控制阶段
正值、负值依次代表方向盘顺时针转动、方向盘逆时针转动。阶段1时,司机会突然大幅度摆动方向盘,这时司机刚在疲劳瞌睡状态里短时间清醒,发现车身出现不受控后,将响应做出紧急车辆控制行为;阶段2时,司机持续着小幅度修正方向盘,该阶段司机可以持续阶段1的清醒状态,而因为疲劳未能得到缓解,仅可以保持较短的清醒时间后,便进入疲倦状态;阶段3时,司机属于疲劳状态,对道路环境敏感度变小,方向盘不存在修正响应行为。
3 实验分析
为测试所提算法对司机疲劳驾驶行为响应状态的识别效果,在驾驶员仿真平台中模拟道路环境驾驶,通过Carsim构建道路环境与车辆模型,使用LabVIEW实现联合仿真。模拟3位司机进行测试,3位司机所驾驶的道路工况依次是S形、双道路,如图2、图3所示。
图2 S形道路
图3 双道路
在不同道路工况中,司机驾驶速度是80km/h。3位司机对车辆的驾驶熟练度依次是低熟练度、中熟练度、高熟练度,随机选择2020年12月10日3位司机13:00~17:00时间内的驾驶行为信息,3位司机在两种道路工况中司机驾驶行为响应状态如表1所示。
表1 3位司机在两种道路工况中司机驾驶行为响应状态
使用所提算法对两种道路工况中司机驾驶行为响应状态的识别结果如图4、图5所示。
图4 S形道路工况中所提算法识别结果
图5 双道路工况中所提算法识别结果
由表1、图4、图5可知,在S形、双道路两种道路工况中,所提算法对驾驶熟练度存在差异的司机驾驶行为响应状态识别结果和实际响应状态相符,则所提算法对司机疲劳驾驶行为响应状态的识别精度较高,识别结果可信。
司机疲劳驾驶行为响应状态的识别实时性十分重要,对司机的人身安全存在直接影响。为此,测试所提算法在两种道路工况中对3位司机疲劳驾驶行为响应状态的识别耗时,以此判断所提算法在司机疲劳驾驶行为响应状态识别应用中的实时性。测试结果如图6、图7所示。
图6 S形道路工况中所提算法识别结果
图7 双道路工况中所提算法识别结果
由图6、图7可知,在S形、双道路两种道路工况中,所提算法对驾驶熟练度存在差异的司机驾驶行为响应状态的识别耗时低于400ms,则识别耗时低于0.5s,实时性较高,所提算法可在短时间内快速识别司机疲劳驾驶行为响应状态。
因司机驾驶车辆的过程中,传感器在采集方向盘转向信号之时,车辆运行也存在一定噪声,存在抖动情况,这对传感器所采集的方向盘转向信号存在一定干扰,为此,测试所提算法在通过方向盘转向信号识别司机疲劳驾驶行为响应状态时,对含噪信号的去噪效果。方向盘转向信号去噪效果主要通过信噪比SNR体现,信噪比越高,方向盘转向信号的去噪效果越好。信噪比SNR的运算方法是
(14)
其中,M是方向盘转向信号的数据长度,t是司机驾驶时间。
所提算法在两种道路工况中对司机驾驶方向盘转向信号的去噪效果如图8、图9所示。
图8 S形道路工况中所提算法去噪效果
图9 双道路工况中所提算法去噪效果
由图8、图9可知,在S形、双道路两种道路工况中,所提算法对司机驾驶方向盘转向信号去噪后,司机驾驶方向盘转向信号的信噪比均大于0.90,去噪效果较好。
4 结束语
司机疲劳驾驶行为识别,是交通管理研究问题中的核心问题之一。本文提出基于小波能量熵的司机疲劳驾驶行为响应算法,对机疲劳驾驶行为响应状态进行有效识别。所提算法和其它算法不同之处在于,所提算法以司机驾驶方向盘转向信号为识别核心,通过司机对方向盘转向信号的响应操作状态,有效识别司机疲劳驾驶行为。由实验结果可知:所提算法对司机疲劳驾驶行为响应状态的识别精度较高,识别结果可信,且识别时间较短,在司机疲劳驾驶行为响应状态识别过程中,对司机驾驶方向盘转向信号的去噪效果极好,存在应用价值。在未来的研究工作中,本文将以司机疲劳驾驶行为响应状态和其它驾驶行为异常检测方法相结合,例如脑电波信号的采集,以此进一步优化所提算法的应用性能。