一种基于机器学习的多传感器车辆行驶检测系统及方法与流程

文档序号:18890282发布日期:2019-10-15 21:42阅读:302来源:国知局
一种基于机器学习的多传感器车辆行驶检测系统及方法与流程
本发明涉及一种基于多传感器的驾驶行为检测系统和方法,属于物联网
技术领域

背景技术
:随着生活水平的快速提升和私家车辆的普及,涌现出大批的驾驶新手,同时也存在许多驾驶娴熟却对当前交规不熟悉的人员。开车用户需要一个能够对自身驾驶技术进行量化评判的标准和指导的方法。另外,对于车辆保险业,依据用户行为调整业务需求能够针对性的推出更加合理的保险业务。通过对用户的驾驶过程的行为检测和量化分级,一方面能够合理化车险的销售模式,增加车险业务的盈利;另一方面也能促进用户驾驶水平的提高,养成良好的驾驶素养。经调查,除酒驾和不可抗力等因素影响外,司机的不良驾驶习惯导致了大部分交通事故。不良的驾驶习惯主要包含不当的横向车辆控制如转向、变道和掉头等,和纵向控制如急加速和急减速等。加上新兴的无人驾驶和高级辅助驾驶软硬件产品的层出不穷,同样需要能够实时、高效、准确地对车辆的行驶行为进行识别和判断。目前辅助驾驶的车辆行驶状态检测方法主要有三类:基于车载诊断系统obd(on-boarddiagnostic)的检测方法、基于视频监控的检测方法以及基于车载内置专用传感器的检测方法等。基于obd的检测系统通过专用接口和车辆诊断码读取车辆的控制器局域网络can总线数据,具有较高的实时性、准确性和稳定性。但不同汽车生产公司的obd编码不同,甚至对编码进行了加密操作,无法建立具有普适性的检测方案,同时破解obd存在侵权问题,也不利于车辆的安全性和驾驶员隐私保护,这使得基于obd的技术难以普及。基于视频监控的检测技术比较准确,但是受限于环境光线和天气影响较大;另外,图像语义信息过于复杂,识别分析计算复杂度、硬件成本和存储成本均很高。在一些高端车辆的驾驶辅助系统中,通过装备高价专用传感器、电子雷达和监控设备来提高驾驶员的驾驶体验感和车辆的安全性。这些设备在一定程度上能为驾驶提供便利,但一般不具备对驾驶行为分析的能力。而在新兴的无人驾驶车辆中,通常需要装备高精度、高频率、价格更加昂贵的惯性导航设备、长距离的激光雷达、中近程声波雷达和高清摄像头,以及高性能计算机和网络带宽支持。单个设备的成本高达上万到几十万不等,设备安装、调试和使用也比较复杂。早期的研究中,有相关方法利用智能手机的前置/后置摄像头采集车辆行驶中的道路前后方信息,通过相关算法推算道路变化趋势、或识别车道线及路边绿化带变化,进行驾驶行为的检测,但由于软硬件、以及环境周边其他因素的限制,实时性和精准度难以保证(参考文件1:chend,chokt,hans,etal.invisiblesensingofvehiclesteeringwithsmartphones[c]//internationalconferenceonmobilesystems,applications,andservices.acm,2015:1-13)。另外,部分方法利用智能手机中的加速度传感器、陀螺仪和电子罗盘对驾驶行为进行检测,能够有效的降低计算的时空复杂度,环境光照和天气对这类方法没有影响(参考文件2:johnsonda,trivedimm.drivingstylerecognitionusingasmartphoneasasensorplatform[j].2011,263(2261):1609-1615)。但电子罗盘容易受到环境周边的磁场(发动机、耳机等)干扰,影响计算结果和精度;加速度传感器和陀螺仪在数据采集的过程中容易受到传感器的噪声干扰,影响识别精度和结果。总的而言,利用惯性传感器的识别方法大部分缺乏对噪声数据的有效过滤,或是通过经验设置简单的判断逻辑,和使用相对单一的阈值对车辆的行驶进行判断,都使得这类方法的识别精度较低,逻辑较为简单,缺乏对特殊情况的考虑,容易形成误判。技术实现要素:针对目前辅助驾驶的车辆行驶状态检测方法中设备安装成本高、使用复杂,利用智能手机的前置/后置摄像头采集车辆行驶中的道路前后方信息,受智能手机中的加速度传感器、陀螺仪和电子罗盘的检测精度影响,识别精度较低、逻辑较为简单,缺乏对特殊情况的考虑,容易形成误判的问题,本发明提出一种基于机器学习(machinelearning)的多传感器车辆行驶检测系统及方法,利用普及率高、价格低廉的智能手机、平板电脑、车载导航和定制车载辅助驾驶等智能终端设备中的传感器和计算芯片作为驾驶行为检测的硬件基础,利用统计机器学习方法对驾驶数据建模,实时的通过分类器模型对驾驶行为进行识别和判断。本发明提供的一种基于机器学习的多传感器车辆行驶检测系统,包括两个部分:1)智能终端设备,固定在车辆刚体结构中,与车辆形成固定的相对惯性系,利用智能终端设备中传感器实时捕获和过滤数据,进行模型配置;2)云端服务器,用于用户和行车数据存储和驾驶行为检测模型的训练。所述的智能终端设备搭载三轴加速度传感器及三轴陀螺仪、多波过滤器、特征提取模块、数据传输模块、模型配置模块和实时驾驶模式识别模块。所述的加速度传感器及陀螺仪实时采集车辆行驶过程中的加速度和角速度并传输给多波过滤器。所述的多波过滤器对输入的数据进行滤波,对z轴陀螺仪数据的波形进行监听,采集有效波,同时过滤掉陀螺仪和加速度传感器在有效波时间区间外的数据。所述的特征提取模块对每个有效波内的各轴上的加速度和角速度提取特征,特征包括最大值、最小值、均值、方差、标准差、上四分位数和下四分位数、以及转向角度。转向角度是特征提取模块对有效波时间区间内的z轴陀螺仪的转向角度积分得到。所述的数据传输模块将加速度传感器和陀螺仪采集的数据以及特征提取模块计算的统计特征和转向角度,传输给云端服务器。所述的模型配置模块,根据从云端服务器发送来的模型配置参数,对本地对应的分类器模型进行配置。加速度传感器及陀螺仪实时采集的数据经多波过滤器和特征提取模块后输出特征给实时驾驶模式识别模块,实时驾驶模式识别模块通过分类器模型对驾驶行为进行实时分类检测,输出结果。所述的云端服务器接收各智能终端设备发送的数据存入数据库,利用模型训练模块进行分类器模型训练,输出最好的分类器模型参数发送给智能终端设备;所述的模型训练模块利用机器学习算法训练不同的分类器模型,分类器模型的输入为有效波的特征,输出为车辆转向分类,分类结果包括六类:左转弯、右转弯、左车道变换、右车道变换、u形转弯以及空事件;对不属于其他五类的噪声属于空事件。所述的多波过滤器,监听z轴陀螺仪数据,当监听数据大于等于检测阈值t1时,开始计时,当监听数据低于检测阈值t1时,停止计时,更新本次计时时间段d内的监听数据最大值m,若d大于持续时间dur并且最大值m大于基本阈值t2,确认为一个有效波,否则不是一个有效波;对每个有效波,保存三轴加速度传感器及三轴陀螺仪在有效波时间区间内的数据;检测阈值t1、基本阈值t2和持续时间dur由用户预先设置。本发明提供的基于机器学习的多传感器车辆行驶检测方法,实现步骤包括如下:步骤1:通过固定在车辆刚体结构与车辆形成固定相对惯性系统的智能终端设备进行车辆行驶数据读取;所述的智能终端设备上搭载有加速度传感器及陀螺仪,实时读取车辆行驶过程中的三轴加速度和三轴角速度;步骤2:利用多波滤波器对某一轴陀螺仪的实时数据波形进行有效波采集,同时对其他轴陀螺仪和三轴加速度传感器保留对应有效波时间区间内的采集数据;步骤3:对每个有效波内的三轴加速度和三轴角速度进行统计特征提取,包括:最大值、最小值、上四分位数、下四分位数、均值、方差和标准差;对每个有效波内的z轴陀螺仪上的数据进行积分,获得转向角度θ;统计特征和转向角度作为有效波的特征;步骤4:将三轴加速度和三轴角速度以及获取的有效波的特征进行封装,添加时间戳序列,然后放入传输队列,云端服务器在链路状态正常时通知传输队列发生数据,一次上传一组数据包,并等待云服务器终端确认;云服务器终端每次确认对应智能终端设备所发送的最后一个数据包的时间戳;当传输队列收到云服务器终端确认后删除在队列中删除已发送的数据包;步骤5:云端服务器在接收到来自不同智能终端设备的上传数据后,先按用户进行建表存储,每个用户对应一组历史行驶数据,保存有效波时间区间内的全部传感器数据和特征;在需要进行模型训练时,将所有用户的有效波的特征数据集进行整合;步骤6:利用不同的机器学习算法进行分类器模型训练,将有效波的特征作为输入,将车辆转向分类作为结果输出;并对训练得到的模型进行对比,选取其中最优的分类器模型;所述的车辆转向分类结果包括六类:左转弯、右转弯、左车道变换、右车道变换、u形转弯以及空事件;不属于其他五类转向的噪声数据属于空事件;步骤7:云端服务器将最优分类器模型的配置参数发送给智能终端设备,智能终端设备配置本地分类器模型进行实时驾驶行为检测。本发明与现有技术相比,具有以下优势和积极效果:(1)本发明检测系统实现的硬件成本低,对于普通用户只需要利用现有的带有陀螺仪和加速度传感器的智能设备即可;并且所需硬件的安装简易,操作方便。云端服务器只需要少量带宽用于数据上传,和较大的存储硬盘进行数据存储,所需要的cpu或gpu性能普通,模型训练的计算资源也并不多。(2)多波过滤器能够有效降低噪声数据和传统滑动窗口方式的数据采集的不稳定性,过滤器只对车辆发生的转向行为进行识别,同时能够自适应的动态调整采样区间的大小,对车辆转向行为区间识别准确度高。(3)通过所设计多波过滤器和对比选择后统计特征参数提取,所需传输的数据量小,且对驾驶行为的描述更为精准,同时将计算复杂度相对较高的模型训练放在云端服务器进行,智能端设备在实时的驾驶行为检测时仅需要少量计算资源,能够降低对智能终端设备的功耗,降低本地的存储成本。(4)使用多种机器学习模型进行竞争对比,首先,分类器模型的生成是基于大量车辆行驶行为的统计得到,要比一般的根据人为主观设定模型更为准确,所考虑的参数系数也更具有一般普适性;另外,除了考虑准确性之外,还考虑了roc曲线面积,pr平衡点等描述模型在不同情况下稳定性参数,通过多个参数来衡量不同机器学习模型的优劣,能够进一步对模型进行筛选。(5)在云端服务器使用来自不同驾驶员和不同车辆的数据进行模型训练,要比采用单一样本源数据所训练得到的分类器模型更为稳定、准确性更高。同时,所采用的迭代式增量学习模式,能够使得模型的准确性和稳定性随时间推移和数据量增长而逐渐优化。(6)通过云端服务器学习,本地配置模型的方式,实时数据采集和识别,能够快速得到分类结果,时延小、速度快、功耗低。附图说明图1为本发明的车辆行驶检测系统的实现示意图;图2为本发明的车辆行驶检测系统中智能终端与云端通信的架构示意图;图3为本发明中方法采用的车辆和智能终端设备惯性系统相对坐标系示意图;图4为本发明中多波过滤器检测的基本波形示意图;图5为本发明中多波过滤器工作流程的伪代码示意图;图6为本发明中多波过滤器检测模式有限状态机的示意图;图7为本发明实施例中多波滤波器与传统滑动窗口检测的时间区间对比示意图;图8为本发明实施例中部分传感器数据的统计特征集二维映射关系示意图;图9为本发明实施例中根据熵和信息增益得到的前30个统计特征示意图;图10为本发明中进行数据上传的流程图;图11为本发明实施例中roc曲线示意图;图12为本发明实施例中pr曲线及平衡点示意图;图13为本发明进行车辆行驶行为识别的实现架构示意图。具体实施方式为了便于本领域普通技术人员理解和实施本发明,下面结合附图对本发明作进一步的详细和深入描述。本发明提出的一种基于机器学习(machinelearning)的多传感器车辆行驶检测系统及方法,主要用于不同类型的车辆行驶检测,不受外界环境光照和天气影响,目的是对正在行驶中发生转向、变道和掉头的车辆的行驶模式的传感器数据进行基于机器学习的分类模型训练,实时对以上几类行驶模式进行识别和判断。本发明中的方法所需调用的传感器数量少、计算量低、功耗小,对智能终端设备的计算要求和空间要求极小,有很好的普适性,且成本低。本发明的技术实现是借助普及率较高的智能终端设备中的传感器捕获车辆行驶数据,通过众包技术和云计算对大量不同车辆行驶数据进行采集和汇总,在收集了大量的数据之后,通过大数据技术和机器学习算法对采集到的数据进行模型训练,最后将得到的模型配置参数信息发送给智能终端中的软件,用于实时检查的驾驶行为。同时,针对所采集的数据的不断增加,云端服务器能够以周期迭代、或车型迭代的方式,利用数据进行模型再训练和模型增量学习,逐渐优化分类器模型的准确度和稳定性。如图1和2所示,本发明的基于机器学习的多传感器车辆行驶检测系统主要包括固定在车辆的刚体结构上的智能终端设备以及云端服务器。智能终端设备与车辆形成相对固定的惯性系统和相对坐标系,如图3所示,车辆所在坐标系为xvyvzv,智能设备所在的坐标系为xpypzp。智能硬件设备可以是智能手机、智能后视镜、行车记录仪、平板电脑、车载导航或定制驾驶辅助设备等等设备,主要用于采集和处理行驶数据,实时对驾驶行为进行识别。智能设备通过网络与云端服务器通信。云端服务器主要对从智能终端设备上传的数据进行训练和建模,下发训练好的检测模型给智能终端。云端服务器通过模型训练模块得到一个最好的分类器模型及其配置参数的配置文件后,通过网络将相关配置文件(数据量小)更新到各智能终端设备。智能终端设备根据所得到的配置文件读取配置参数,对本地分类器进行配置。智能终端设备实现的功能包括:对底层传感器的调度、数据读取、数据过滤、统计特征提取、数据上传、模型配置和实时驾驶模式识别。智能终端设备上搭载的传感器有加速度传感器和陀螺仪。智能终端设备上还设置有多波过滤器、特征提取模块、数据传输模块、模型配置模块和实时驾驶模式识别模块。加速度传感器和陀螺仪为三轴加速度传感器和三轴陀螺仪,为智能终端设备中的传感器,分别用于采集车辆行驶过程中车辆在三轴的运动加速度和运动角速度,并将实时采集的行驶数据通过总线传输到传输给多波滤波器。车辆运行的过程中,行驶的模式能够直接反馈在智能终端设备的各传感器读数(采集值)的变化上。多波过滤器(multiwavefilter)对输入的车辆行驶数据进行滤波。除了受不同传感器制造商、自身配置、精度、刷新频率等因素对传感器采集数值有影响之外,车辆行驶过程中的周边环境(道路坡度、路面材质等)也会对传感器读数带来噪声。本发明针对所采集的传感器波形数据重新设计了多波滤波器,先对受噪声较小的陀螺仪数据波形进行监听,采集有效波,并对陀螺仪和加速度传感器波形范围外的所有传感器数据进行过滤,以便能够有效识别车辆在转向、变道和掉头等车辆行驶行为。本发明设计的多波过滤器,监听z轴陀螺仪数据,当监听数据大于等于检测阈值t1时,开始计时,当监听数据低于检测阈值t1时,停止计时,更新本次计时时间段d内的监听数据最大值m,若d大于持续时间dur并且最大值m大于基本阈值t2,确认为一个有效波,否则不是一个有效波;对每个有效波,保存三轴加速度传感器及三轴陀螺仪在有效波时间区间内的数据;检测阈值t1、基本阈值t2和持续时间dur由用户预先设置。特征提取模块对采集的有效波,按照所设计的统计参数计算公式,计算各传感器数据的统计特征和转向角度。本发明分别提取三轴加速度和三轴角速度的统计特征:最大值、最小值、均值、方差、标准差、上四分位数和下四分位数。在有效波时间区间内对z轴陀螺仪的角速度积分得到转向角度。进一步的,特征提取模块还可以对提取到的统计信息进行降维处理,选取正向增益效果较明显的统计特征,将选出的统计特征和转向角度作为有效波的特征。数据传输模块用于设备终端与云端服务器进行数据传输和通信。智能终端设备对实时采集的数据、所提取的特征进行封装后,通过3/4g,wifi等网络将数据提交给云端服务器。模型配置模块根据云端服务器发送来的模型配置参数,对本地对应的分类器模型进行配置。在云端服务器周期性更新模型及参数时,模型配置模块及时接收推送信息,更新模型配置。在本地分类器模型配置有效后,实时驾驶模式识别模块对陀螺仪和加速度传感器采集的数据,经多波过滤器和特征提取模块后,利用本地配置好的分类器模型进行实时转向行为分类检测,并进行信息显示。云端服务器上布置有数据库和模型训练模块等。云端服务器接收各智能终端设备上传的车辆行驶数据,通过整理和归档,可将来自不同车辆的车辆行驶数据进行整合。在模型训练模块中利用不同的机器学习算法训练不同的分类器模型,分类器模型的输入为对有效波提取的特征,输出为车辆转向分类,分类结果包括六类:左转弯、右转弯、左车道变换、右车道变换、u形转弯以及空事件,对不属于其他五类分类结果的数据作为噪声,都属于空事件。最后在模型训练模块中选取效果最好的分类器模型,并将该分类器模型参数发送给智能终端设备。分类器模型并不是一直不变的,会虽然采集的数据量的增长,进行周期性训练,来改进配置参数。在实时的驾驶行为分类识别时,云端服务器将选出的最好的分类器模型的参数传输给各智能终端,然后在车辆实时行驶的过程中,通过对智能终端设备中的传感器反馈的数值,采用多波过滤器对传感器数据进行过滤,消除噪声数据,然后利用配置好的分类器模型对驾驶行为进行实时分类检测。本发明通过一个改进的多波过滤器对传感器数据进行预处理,有效降低噪声干扰;通过对波形数据提取统计特征进一步降低数据计算量;基于机器学习的分类器模型提高了识别的准确度。相应地,本发明提出的基于智能设备传感器数据融合和机器学习的驾驶行为检测方法,只需要调用普通智能设备终端中的陀螺仪和加速度传感器,不受天气、光线等环节因素的影响;需要将智能设备终端固定在车辆刚体结构,形成相对惯性坐标系;通过不同车辆采集的大量数据,能够有效保证训练集的完备性和全面性;同时模型能够迭代更新优化,保证准确性和稳定性都相对较高。下面结合一个实例来说明本发明基于机器学习的多传感器车辆行驶检测方法的一个实现步骤流程。步骤1:驾驶数据采集及预处理。通过固定在车辆刚体结构的智能设备和对应的软件读取传感器数据,实时采集车辆驾驶数据。智能终端设备固定在车辆刚体结构中,车辆和智能终端设备形成一个相对固定的惯性系统,如图3所示,智能终端设备中内置的传感器能够测量车辆加速度α在三轴方向上的值,其中,车辆所在坐标系为xvyvzv,yv轴对应车辆前进方向,xv轴对应车辆水平移动方向,zv轴代表车辆的空间垂直方向,智能终端设备所在的坐标系为xpypzp,yp轴代表智能终端设备沿车辆前进的方向,xp轴代表智能终端设备的水平移动方向,zp轴代表智能终端设备的空间垂直移动方向。车辆的行驶会导致传感器发生相关的感知数据变化,通过相对应的软件系统调度智能终端设备底层的陀螺仪、加速度传感器,采集车辆在行驶过程中的三轴角速度和三轴加速度。本发明实施例中,以android系统的智能终端设备为例,通过开发android的软件,能够调度智能终端设备底层的传感器。但受到设备制造商和芯片厂商设计的影响,智能终端设备内置传感器的类型和刷新频率都不太相同,但是基本都包括陀螺仪和加速度传感器;此外,设定传感器刷新时间为20ms,能够相对有效地采集传感器数据。在获取模型的训练数据时,需要对采集的数据进行标记,在采集训练数据时,需要用户根据驾驶员的驾驶行为对采集的数据进行标记,利用智能终端设备内置的软件系统通过语言或文本输入对当前采集数据的驾驶行为进行标记,得到一个传感器数据与驾驶行为相对应的映射关系。步骤2:对步骤1获取的实时传感器数据进行过滤。考虑到传感器自身制造工艺、车辆周边环境等对传感器读数所带来的噪声,本发明改进设计了一种多波过滤器,能过滤无效数据和噪声影响,减少额外计算资源消耗,获取有效的识别车辆在转向、变道和掉头等车辆行驶行为时的传感器数据。本发明首先对受噪声较小的某一轴陀螺仪数据的波形进行实时监听,通过多波过滤器实时采集有效波形段,然后对有效波形对应时间区间内的其他轴的陀螺仪数据和加速度传感器数据进行过滤,保留在对应时间区间内所有检测到的其它轴陀螺仪和加速度传感器的数据。多波过滤器首先对陀螺仪波形数据进行采集和识别。以单个波为基本单元,多波过滤器周期性读取陀螺仪数据,并设定一个计时器。如图4所示,本发明多波过滤器multivave在进行数据过滤时设定的基本波参数示意,多波过滤器工作流程伪代码和检测模式有限状态机分别如图5和如图6所示。多波过滤器动态检测分为四个模式:空闲(silence)模式:等待出现潜在波,如果传感器数值大于检测阈值,开始计时,并更新当前已记录的传感器数据的最大值m,跳转到检测(check)模式;检测(check)模式:每轮刷新传感器读数,并更新计时器时间和最大值m,如果传感器读数低于检测阈值,根据计时器判断持续时间和最大值是否满足基本波设定,如果满足跳转到记录(recording)模式,否则跳转到空闲(silence)模式。记录模式:负责记录当前波持续的起始时间点,并跳转到潜在波等待(checkingnextwave)模式。潜在波等待模式:继续读取传感器数值,并维持另一个倒计时器,在倒计时结束前出现下一个可能的波则跳转到检测模式;否则结束,并进入空闲模式。一次过滤结果可能包含若干个连续波,持续时间认为是一个独立车辆行驶模式。本发明实施例中,多波过滤器在滤波过程中,会记录三轴陀螺仪和三轴加速度传感器数据,将加速度、角速度及时间戳记录在数组表ar中。多波过滤器持续监听陀螺仪在垂直方向z轴的实时数据gz,进行数据过滤,过滤过程为:(1)设定基本波相关阈值,包括:检测阈值t1、基本阈值t2、持续时间阈值dur和等待时间阈值lt,这些值可根据经验预先设置。当采集的数据大于等于检测阈值t1时,表示可能是一个有效波,也有可能是传感器噪声,需要进一步确定。低于检测阈值t1的数据将被直接忽略,因为过低可以认为车辆没有进行任何动作,这样可以很大程度上减少计算量,不必把每个时刻考虑进去。在进一步检测时,当数据gz大于基本波动阈值t2时,才认为是一个有效波。高于t1但小于等于t2时,可以认为车辆有轻微扰动,但不是产生转弯或变道的动作。dur是一个动作对应的基本波的持续时间下限,只有超过持续时间dur才被认为是一个有效波,因为传感器可能产生一些跳点噪声。在某个时刻产生了大于t2的数据,但是由于传感器误差而产生的,其持续时间将会非常短,所以将有效波的时间小于dur将不被认为是一个基本波,这样也更好的减少跳点噪声对滤波器的影响。lt是下一波的等待时间,只有超出这个等待时间才能认为是一个波的结束,也就是一个动作的结束。如果持续时间短于lt,那么说明这个基本波还没有结束,有的动作例如变道会产生多个波组成的一个动作。(2)进行检测,过程如下201~203:201)监听数据gz,如果数据gz大于等于检测阈值t1,进入检测模式,计时器开始计时;否则,继续监听。202)开始计时,实时更新最大值m,设置m为max(gz),max(gz)代表当前已采集的数据gz的最大值。在数据gz大于等于t1过程中,持续计时。当数据gz出现低于检测阈值t1时,检测当前计时器时间d,若d大于持续时间dur并且最大值m大于基本阈值t2,确认为一个有效波,并初始化计时器。如果不满足d大于dur及m大于基本阈值t2的条件,即当m≤t2或d≤dur,则当前不是一个有效波,不进行记录,初始化计时器、最大值m以及数组列表al,然后转201执行。对于基本波来说,陀螺仪z轴所采集的最大值m应该大于阈值t2,一个波的持续时间应该比dur长,否则不会被认为是一个动作产生的波形。如果检测到一个动作产生的有效波形,则将当前波形对应在数组表ar中的数据记录在数组列表al中。203)确认有效波之后,输出一个有效波数据al,继续检查下一个波,计时器开始计时,若在等待时间lt内出现下一个波,即当波出现时当前计时器时间d小于等于lt,则在等待时间lt内,继续监测数据gz,当gz大于等于t1时,转202执行,继续记录;若d大于lt,则停止记录,跳转201。在检测到第一个波形之后,multiwave滤波器在一个周期内不断寻找下一个可能的波形。如果没有波形产生,则动作结束,或者记录新的波形,等待下一个波形。在滤波过程中,如果检测到一个动作产生的波形,则将当前波形的所有数据ar记录在数组列表al中;如果不符合一个波形的基本特征,则数据将被丢弃。获得的有效波数据al对应于一个车辆转向动作。如图7所示,是本发明实施例对三轴xgygzg上陀螺仪数据波形采集的波形示意,分别显示了具有50%重叠(半窗长度步长)和多波滤波器的固定滑动窗口的不同采样模式。图中的slidingwindow是传统滑动窗口,multiwave是本发明多波过滤器检测出的时间区间。通过对比,可发现本发明多波过滤器与传统滑动窗口识别时间区间相比,能够较为准确识别出车辆的转向持续时间,而降低噪声和冗余数据的采集,进而避免对计算资源和存储资源的浪费。接着根据总的持续时间,对加速度传感器和陀螺仪数据进行过滤,得到一个过滤后的连续的传感器数据集。步骤3:对步骤2过滤得到的各有效波区间内的各轴数据,分别统计在每一轴数据在每个有效波区间内的统计特征,统计特征包括:最大值、最小值、均值、方差、标准差、上四分位数和下四分位数。由于过滤后的数据集仍然是一个按传感器刷新周期高频数据,数据量较大。通过计算每个传感器轴的对应数据的统计特征,能够得到一个反馈该时间段内的传感器特征的统计特征数据集。在一个有效波区间内,每一轴都采集7维度的特征,对于三轴加速度传感器和三轴陀螺仪的数据,共采集42维特征数据。分别对加速度传感器的三轴和陀螺仪的三轴取上述的7种统计特征值,共42维特征值,再通过对z轴陀螺仪的转向角度积分,将其积分值作为第43维特征值。对于一个有效波的转向角度θ的积分计算方式如下:其中,d表示有效单波持续时间,avg_gz是从z轴陀螺仪获取的数据的平均值,设将有效波分为n个时间段t,每个区间的角度变化量为δθi,i=1,……n,n为正整数,δθi代表在i时刻陀螺仪垂直轴的读数。由上面公式,也可直接根据陀螺仪垂直轴在有效波时间内的角速度均值来计算对应方向上的转向角度θ。本发明实施例中对部分传感器数据的统计特征进行二维映射,对不同特征测试验证,不同特征呈现独特的分布并且对驾驶转向行为检测有贡献。如图8所示,为本发明实施例对部分的统计特征进行二维映射,与驾驶转向行为检测的关系。图8的(a)是对陀螺仪垂直轴向数据的下四分位数downquartile与上四分位数upperquartile组合,识别左车道left-lane,左转left-turn,右车道right-lane,右转right-turn,u形转弯u-turn。图8的(b)是加速度传感器x轴上数据ax的上四分位点和ax的平均数mean的组合,可以识别左车道和右车道。图8的(c)是gz的标准差sd和gz的最小值min的组合,可以识别左车道、右车道和u形转弯。图8的(d)是ax的最大值max和ax的最小值min的组合,可以识别左转和右转。图8体现了传感器数据在一定程度上表现出较好的二维可分性,但又无法独立的利用某两个参数进行简单的区分。对已经提取到的统计信息进行特征降维处理,从而进一步的降低数据的总量,以及智能终端设备计算的复杂度和云存储的空间成本,具体处理方式如下,infogain(c,f)=e(g)-e(c/f)其中,infogain(c,f)是将c类数据中的f特征进行信息增益处理,e(c)是c的熵,e(c/f)是给定f的c的熵,p(f)是特征f在数据中取值f的概率,p(c)是指从c类中取到类别c的概率。本发明中,c类是指驾驶转向行为的6种分类:左转弯、右转弯、左变道、右变道、掉头和空事件,空事件表示除了上述五种驾驶转向行为之外的噪声。本发明对于每个有效波,具有43维特征,因此特征f是指43维特征。但在实验过程中,并不是每一维特征都能对最终的分类结果产生正面或者显著影响,所以根据上面熵计算方式,采取正向增益较明显的特征数据来进行最后的数据封装训练,例如选取前30个正向增益较明显的特征,于是信息量由43维降到了30维。如图9所示,本发明根据熵得到占据信息增益排名前30个特征,其余特征的信息增益非常低就忽略掉。得到的30个特征包括:加速度传感器在x轴的最小值ax-min、最大值ax-max、标准差ax-sd、方差ax-var、均值ax-mean、上四分位数ax-quartiles-up和下四分位数ax-quartiles-down,加速度传感器在y轴的标准差ay-sd、方差ay-var,加速度传感器在z轴的标准差az-sd、方差az-var、均值az-mean,陀螺仪在x轴的最小值gx-min、最大值gx-max、均值gx-mean、上四分位数gx-quartiles-up和下四分位数gx-quartiles-down,陀螺仪在y轴的最小值gy-min、最大值gy-max、均值gy-mean、上四分位数gy-quartiles-up和下四分位数gy-quartiles-down,陀螺仪在z轴的最小值gz-min、最大值gz-max、标准差gz-sd、方差gz-var,均值gz-mean、上四分位数gy-quartiles-up、下四分位数gy-quartiles-down以及转向角度gz-or。步骤4:将步骤3获得的统计特征数据进行封装,上传到云端服务器。由于车载环境,车辆行驶时处于高速运动状态,传感器数据采集频率较高在20hz,虽然传输数据量不大,但设备通信链路无法保证恒定的稳定性,为避免连续进行数据传输带来的通讯开销,智能终端设备首先将数据按格式进行一次封装,并添加相应的时间戳序列,再通过一个简单的传输队列加确认机制对数据进行上传。如图10所示,智能终端设备所封装的数据包括传感器原始采集数据和统计特征数据,按格式将待上传数据封装,并添加部首、本地用户信息和时间戳序列,加入数据队列,排队等待传输。网络轮询检测模块检测网络状态,在网络链路状态正常情况时通知数据传输队列进行发送,一次上传一组数据,并等待云端服务器确认。云端服务器每次确认智能终端设备所发送的最后一个数据封包的时间戳,发送回执给智能终端设备,智能终端设备在接收到回执序列后,将数据队列中删除已经上传成功的数据,并更新队列。步骤5:云端服务器将接收到的来自不同用户智能终端设备的数据,先按用户进行存储。云端服务器在接收到来自不同智能终端设备的传感器数据后,先按用户进行建表存储,每个用户对应一组历史车辆行驶数据,同时保留有效波形内全部传感器数据和传感器统计特征数据。传感器统计特征数据也就是步骤3中的有效波的特征。在需要按车型进行模型训练时,仅将所有用户的传感器统计特征数据集进行整合,形成一张大的数据表,为后续模型训练做准备。步骤6:云端服务器对不同用户的统计特征数据,进行数据融合,通过机器学习算法来训练若干模型,得到不同模型。通过多次运行求均值的方式,对比配置参数,得到一个最优模型及相关配置参数。移动终端设备将标记好车辆行驶行为的传感器统计特征上传给云端服务器,云端服务器选择主流的机器学习算法,如:决策树、knn、贝叶斯、随机森林等算法等,分别训练独立的分类器模型。云端服务器的模型训练模块,对上传的统计特征集,重新按照对应机器学习方法所需的格式,将统计特征数据集及标记重构新表,并按车型进行大致分类,训练分类器。在训练的时候,进行多次存留法和交叉验证法,求取模型识别准确率、roc曲线覆盖面积、pr曲线平衡点大小的均值,作为模型识别准确性和稳定性的依据,选择性能最好的模型分类器作为最终结果。本发明所建立的分类器模型,输入为终端设备传输来的特征,输出为车辆转向分类,包括六类,左转弯、右转弯、左车道变换、右车道变换、u形转弯以及空事件。本发明使用转向角度,主要为了识别一些较大的弯的动作分类,如车辆进入匝道时,由于匝道转弯弧度较大,转弯时间长,没有转向角度很容易被误分类。本发明实施例中,在进行训练的时候采用随机抽样留存的方式,每次对整个数据集进行随机抽样,按照70%训练,30%验证的比例重复各机器训练算法50次。并分别计算各训练算法下的模型准确率、roc曲线覆盖面积和pr曲线与y=x交点到原点距离的均值,共同衡量模型的识别的准确性和稳定性。最终选择三个值加权最高的模型作为结果,并生成对应的模型配置参数。图11和图12中对三种机器学习算法进行比较,rf为随机森林,nb为朴素贝叶斯,j48为决策树。其中,利用roc曲线如图11所示,roc曲线覆盖面积越大,说明模型准确性和稳定性越高;pr曲线如图12所示,平衡点为pr曲线与方程y=x的焦点,平衡点距原点越远,模型的稳定性和准确性越高。位于云端服务区的模型训练数据库中,最开始存储的是用户标记的统计特征数据,随着云端服务器采集的数据规模不断增加,可获得的训练数据也越来越多。可以按实际需要设定按时间为周期或按数据增长量为周期的迭代训练,周期性对模型进行更新和优化。例如,设置按照时间周期(月、季度)进行迭代训练或按数据增长规模(百分比),得到检测用的新模型,利用不断增长的数据来弥补原先因数据量少导致所训练模型的不足。同时,考虑模型更新的有效性,通过规模更大的新数据集直接测试原先模型,一并进行对比。如果新模型的三项指标比原模型低3%,则不进行更新,如果指标均超过3%则进行更新。步骤7:云端服务器将检测模型的参数配置文件发送给智能终端设备,智能终端设备接收相关模型配置文件,完成本地模型配置。同样按照步骤1~3采集并过滤数据,提取统计特征,输入模型进行实时的驾驶行为识别。如图13所示,云端服务器生成分类器模型后,将配置文件发送给各智能终端设备。智能终端设备中已经部署了所有的模型,接收到云端服务器发送的模型配置文件后,按需填写本地的模型类别及相关参数,得到一个本地的分类器模型。在车辆行驶过程中,软件实时读取传感器数值,并通过多波过滤器进行过滤和统计特征提取,得到每次车辆行驶行为的对应统计特征数据。将统计特征数据作为输入,输入已经配置好的本地分类器模型中,由分类器模型识别输出车辆行驶行为的结果。为了充分验证本发明方法的性能,在不同城市道路和郊区道路上利用不同类型车辆和智能终端设备进行交叉测试。其中,智能终端设备型号包括七款高中低不同性能的智能手机:酷派、红米2a、红米note、红米note3、三星s3、三星s4和nexus6;接受测试的车辆有六辆:小型轿车三辆和suv三辆;参与测试驾驶员包括:专车司机、的士司机和私家车车主三类人群;驾驶测试时间共计约93小时,驾驶距离400公里左右。本发明通过对现有的机器学习模型的比较测试,发现决策树(j48)和随机森林的模型优于其他模型,检测效果显著,准确度高。本发明实施例中,第一期分类器模型为决策树模型,第二期模型为随机森林模型,车辆行驶行为的识别准确率分别如下表:表1前两期模型准确率识别行为左转右转左变道右变道掉头决策树97.3%95.9%93.9%97.4%79.7%随机森林99.4%100%100%100%77.4%通过上面步骤,本发明利用传感器的统计特征,和额外的转向角度,识别出车辆转向检测的特征:左/右转弯、左/右车道变换和u形转弯。通过上面说明,本发明通过使用车载智能设备中的传感器结合机器学习算法,实时对车辆转向、变道和掉头等驾驶行为进行检测,实现一种能够用于驾驶员驾驶行为、无人驾驶和高级驾驶辅助中的车辆行驶行为进行实时检测和识别的基础性技术。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1