[0052] 下面结合具体实施例对本发明做进一步的分析。
[0053] 如图1基于9轴传感器的驾驶行为视觉感知装置包括摄像头、9轴传感器、第一数据预处理模块、第二数据预处理模块、中央处理模块、实时决策处理单元;
[0054] 所述摄像头用于采集车辆行驶过程中周围环境的视频信息,然后传输给第一数据预处理模块;
[0055] 所述摄像头至少为4个分别安装在车身的四周,用于采集车辆行驶过程中周围环境的视频信息;四个摄像头的安装位置分别为:挡风玻璃下的前视宽视野摄像头,车辆左右两侧的侧方前视摄像头和车尾的后视摄像头。其中前视宽视野摄像头的视角为120度,左右两侧摄像头的视角为90度,尾部的后视摄像头的视角为120度。视频的采样频率为30帧/秒、20帧/秒或者10帧/秒,根据车辆当前车速选择对应的采样频率。
[0056] 所述9轴传感器用于采集车辆行驶过程中车辆自身的加速度和角速度数据,然后传输给第二数据预处理模块;
[0057] 所述第一数据预处理模块用于接收摄像头采集数据,并对其进行解码压缩,获得数字图像,然后传送至中央处理模块;
[0058] 所述第二数据预处理模块用于接收9轴传感器采集数据,并对其进行滤波预处理,然后传送至中央处理模块;
[0059] 所述中央处理模块包括时序同步模块、深度学习模块、触发判断模块、分类模块、自身车辆风险计算模块;深度学习模块包括resnet模型、LSTM1模型、LSTM2模型、LSTM3模型、LSTM4模型;resnet模型接收第一数据预处理模块传送的数字图像进行图像特征提取;LSTM1模型、LSTM2模型、LSTM3模型、LSTM4模型分别接收resnet模型输出的特征进行急加、急减、急转向、变道分类,然后发送至触发判断模块;触发判断模块根据深度学习模块传送的分类结果和时序同步模块处理后的9轴传感器的加速度和角速度,利用混淆矩阵计算精度或灵敏度指标,根据阈值判断结果触发LSTM1模型、LSTM2模型、LSTM3模型;分类模块使用聚类算法对深度学习模块输出的分类结果进行分类,得到跟车过近和风险变道分类结果;
自身车辆风险计算模块根据分类模块输出的驾驶行为分类结果结合实时决策处理单元传送的车辆状态信息,计算得到自身车辆的风险结果,然后传送至实时决策处理单元和车内中控显示屏;时序同步模块用于第二数据预处理模块传送的9轴传感器的加速度和角速度的值与LSTM1模型、LSTM2模型、LSTM3模型、LSTM4模型的输出值做时间采样的同步,保证所有数据在时序上是同步的。
[0060] 所述实时决策处理单元是用于监控车辆自身信息的单元,从车身CAN数据总线获取车辆的刹车、油门、转向灯、车速、启动与熄灯等车辆状态信息,并通过UART异步收发传输器传输到中央处理模块;同时若自身车辆风险大于阈值,实时决策处理单元将刹车和方向盘转向信号以中断信号的方式将数据传输给中央处理模块;同时若综合风险评估结果大于阈值,实时决策处理单元通过CAN总线发送“辅助刹车请求”指令给车辆的整车控制器VCU;
[0061] 作为优选,所述实时决策处理单元采用cortex‑m3处理器。
[0062] 所述车内中控显示屏还可以搭载语音播报系统,用以实时提醒驾驶员车辆风险。
[0063] 本装置还可以包括移动客户端,中央处理模块通过WIFI/4G/5G的方式将数据信息同步共享到移动客户端和后台数据中心。
[0064] 本发明基于上述装置的驾驶行为视觉感知方法,如图6具体包括以下步骤:
[0065] 步骤(1)、9轴传感器实时采集行驶过程中信号数据,并对其进行预处理,得到x‑y方向的加速度和角速度数据:
[0066] 在车辆的行驶过程中,由于震动等原因9轴传感器的测量值中包含了较多的噪声,需要对9轴传感器采集的加速度和角速度数据进行滤波预处理;
[0067] 所述的预处理采用卡尔曼滤波和滑动平均滤波串联的方式,如图2具体是:
[0068] 在x‑y方向加速度信号 通过以下卡尔曼滤波器获得:
[0069] 时间节拍更新步骤:
[0070] 测量更新步骤:
[0071] 其中 表示k‑1时刻系统滤波后的加速度值, 表示经过时间节拍更新后第k时刻的加速度信号;Pk‑1表示k‑1时刻测量过程加速度的噪声协方差, 表示经过时间节拍更‑5新后第k时刻加速度的噪声协方差,Q表示系统的噪声协方差,一般取Q=10 ;Kk表示k时刻卡尔曼滤波系统的增益,R表示测量过程中的噪声协方差,一般取R=0.01;zk表示k时刻加速度测量值。
[0072] 在α,β,γ三轴方向的角速度信号 通过以下卡尔曼滤波器获得:
[0073] 时间节拍更新步骤:
[0074] 测量更新步骤:
[0075] 其中 表示k‑1时刻系统滤波后的角速度值, 表示经过时间节拍更新后第k时‑4刻的角速度信号,Yk为k时刻角速度测量值;Q表示系统的噪声协方差,一般取Q=10 ;R表示测量过程中的噪声协方差,一般取R=0.04。
[0076] 步骤(2)、车身周围四个摄像头实时采集周边视频,对其进行解码得到数字图像信息压缩;每一组数字图像信息序列可以用矩阵的方式表示:
[0077]
[0078] 其中fig.n表示视频序列中的第n张图片,sequence描述了fig_num张大小为width×height的图片组成的图片序列。
[0079] 步骤(3)、采用弱监督深度学习方式,利用特征提取、聚类和混淆矩阵判别相结合的方式实现9轴传感器的数据融合和驾驶行为的判别;以下提到的resnet50模型、4个LSTM模型均为常规模型,故不详解。
[0080] 具体过程如下:
[0081] 3.1将步骤(2)图像输入到resnet50模型获取图像的特征信息;其中resnet50模型的输入为步骤(2)图片数据,输出为1*1000一维特征向量。
[0082] 3.2如图5采用4个LSTM(Long Short‑Term Memory,长短期记忆神经网络)模型以实现对四种不同驾驶行为的分类;再对LSTM1至LSTM3输出分类结果和步骤(1)预处理后的加速度和角速度进行时序同步,然后利用混淆矩阵计算灵敏度和精度指标,最后判断精度或灵敏度指标是否小于阈值,若是则LSTM1至LSTM3进入自训练流程;反之则触发LSTM1至LSTM3;
[0083] LSTM1模型的输入是步骤3.1输出的特征向量,输出是急加速和非急加速的分类。
[0084] LSTM2模型的输入是步骤3.1输出的特征向量,输出是急减速和非急减速的分类。
[0085] LSTM3模型的输入是步骤3.1输出的特征向量,输出是急转向和非急转向的分类。
[0086] LSTM4模型的输入是步骤3.1输出的特征向量,输出是风险变道和正常变道的分类。
[0087]
[0088] TP表示LSTM模型计算得到分类结果为正值,且9轴传感器测量的结果也为正值的数据样本数量。
[0089] FP表示LSTM模型计算得到分类结果为正值,且9轴传感器测量的结果也为负值的数据样本数量。
[0090] FN表示LSTM模型计算得到分类结果为负值,且9轴传感器测量的结果也为正值的数据样本数量。
[0091] TN表示表示LSTM模型计算得到分类结果为负值,且9轴传感器测量的结果也为负值的数据样本数量。
[0092] a)采样单位时间内经过步骤(1)滤波后的加速度和角速度,对加速度信号或角速度信号大于athresh1、athresh2和ωthresh的采样数据点,作为混淆矩阵中的真实值。
[0093] 真实值:Nk=P(xk,Ts)
[0094] 其中Ts表示判断急加、急减或急转向对应的阈值athresh1、athresh2或ωthresh;xk为k时刻测量得到的加速度或角速度信号;P为逻辑判断函数,当xk大于Ts取1,反之取0。
[0095] b)采样单位时间内经过步骤3.2中的LSTM1、LSTM2和LSTM3模型的分类输出进行判别急加速、急减速和急转向的分类概率,使用0.5作为阈值对分类概率做二值化处理,处理的结果作为预测值用于计算精度和灵敏度。
[0096] 预测值:Mk=P(yk,0.5)
[0097] 其中yk为k时刻LSTM1、LSTM2和LSTM3模型预测得到的急加速、急减速和急转向的分类概率值。P为逻辑判断函数,当yk大于0.5取1,反之取0。
[0098] LSTM1、LSTM2和LSTM3的自训练流程中损失函数采用交叉熵函数E(Nk,yk),使得交叉熵函数达到最小值:
[0099]
[0100] 本发明采用阈值触发的方式控制LSTM1、LSTM2和LSTM3模型的运算是否执行,当9轴传感器采集到的数据未达到阈值时,不进行LSTM1‑LSTM3的运算,可以很好的节省系统的计算资源,减少系统的整体功耗。当9轴传感器采集到的数据达到阈值时,LSTM1、LSTM2和LSTM3模型持续预测急加速、急减速和急转向的概率大小,并能够根据和9轴传感器输出的偏差采用自学习的方式自动学习更新LSTM1‑LSTM3中的参数。
[0101] 图3为深度学习模块流程示意图。
[0102] 3.3使用聚类算法对步骤(3)输出的分类结果(即四个模型的输出值)进行分类,得到跟车过近和风险变道分类结果;其中聚类算法采用k‑means算法实现。
[0103] 3.3.1随机选择两个步骤3.2模型输出值[急加急减急转向风险变道]作为初始聚类中心Ki,i=2。
[0104] 3.3.2每个步骤3.2第j个模型输出值Pj到初始聚类中心Ki的距离D(Pj,Ki),将Pj点分配到距离最小的初始聚类中心Ki所在分类。
[0105]
[0106] 3.3.3重新计算两个聚类的聚类中心:
[0107]
[0108] 其中xj表示第i个聚类上各坐标值, 为Ki所在聚类的测量值的集合, 为Ki所在聚类测量的次数之和。
[0109] 3.3.4然后重复3.3.2‑3.3.3,直到聚类中心没有变化。
[0110] 如图4所示,利用步骤(3)采用k‑means聚类算法构建驾驶风险分类器,并计算出风险大小。k‑means聚类算法通过以下步骤求取出跟车过近和风险变道这两个分类簇的质心。当步骤(2)中更新输出的急加速、急减速、急转向和风险行驶组成的观测值输入k‑means模型后,通过计算出当前的感测向量和两个分类簇质心的距离,通过距离的大小来判断当前的驾驶行为属于哪个分类。
[0111] 步骤(4)、考虑结合车身CAN数据总线获取的转向灯状态的自身车辆的驾驶行为变道风险系数,以及自身车辆的车速信息,根据公式(1)获得自身车辆的风险结果。
[0112] Riski=xi*yi 公式(1)
[0113] 其中xi表示第i种驾驶行为的变道风险系数,yi表示第i种驾驶行为的车速风险系数,i=1、2分别表示跟车过近和风险变道两种驾驶行为。
[0114] 若驾驶行为跟车过近时,
[0115] 变道风险系数 其中a1为常数,根据经验值设定。
[0116] 若驾驶行为风险变道时,
[0117] 变道风险系数 其中a2、a3为常数,根据经验值设定。
[0118] 车速风险系数 其中a4、a5、a6、a7、a8、a9为常数,根据经验值设定;Ai表示第i驾驶行为车速风险权重系数;v表示自身车辆的当前车速。
[0119] 步骤(5)、步骤(4)自身车辆风险结果传送至实时决策处理单元,判断自身车辆的风险结果是否大于阈值,若是则通过CAN数据总线发送“辅助刹车请求”指令给车辆的整车控制器VCU,同时实时决策处理单元将刹车和方向盘转向信号以中断信号的方式将数据传输给中央处理模块;反之则不向CAN数据总线发送信息,同时实时决策处理单元持续采集车辆CAN数据。