一种基于智能手机感知行人安全方法与流程

文档序号:17148462发布日期:2019-03-19 23:12阅读:447来源:国知局
一种基于智能手机感知行人安全方法与流程

本发明属于信息技术领域,具体地指一种基于智能手机感知行人安全方法。



背景技术:

随着道路交通事业的飞速发展,交通事故发生率呈上升趋势,在这些交通事故当中,行人安全受到侵害占有很大的比重。计量经济学的分析结果表明,行人交通事故死亡率近年来只增不减,很大程度上是由于电子设备如手机的高频使用导致行人分心发生交通事故。智能手机普及,移动通信技术飞速发展,互联网上新奇事物随手可得,但这导致了分心使用手机的行人越来越多据调查,大约有26%的行人在穿越街道过程中使用智能手机发短信,51%的行人通电话以及36%的人戴耳机听音乐。在我国,据调查显示,玩手机已经成为机动车交通事故的主要诱因,约占所有诱因的10%。如何解决智能手机带来的行人安全问题,除了完善道路交通制度与提高行人安全意识之外,技术手段也能够有效预防行人交通事故的发生。

行人交通事故因其可预见性而可以避免。现有的项目中,对行人交通事故的避免方法主要分为两类,即车辆的行人识别技术以及基于定位的行人安全预警技术。

较为成熟的是自动驾驶技术中对行人的识别,及时发现过路行人进行制动,其主要技术包括图像均衡、图像分割检测、特征提取、图像识别,随着机器学习技术的发展,图像识别技术越发成熟,其识别精度有很大提高。而及时提醒分心的过马路行人,更能有效防止行人交通事故的发生。

户外的行人定位技术中,最常见的是基于gps的行人定位技术,但gps用于区分行人道与马路的精度不足,难以在建筑物高耸、人流密集的道路上对单个行人进行精确定位,并且地图数据没有对人行道和马路进行区分,难以向用户做出正确预警。利用无线信号在其覆盖区域进行定位,在室内有较好效果,但在室外难以区分行人道与马路,无法对行人危险状态进行检测。通过用户智能手机的后置摄像头,使用图像识别的方法进行车辆识别,并融合环境中的车辆行驶声音以及能见度等级等数据,判断当前行人的位置,能够在危险状态下给予行人警示,但使用手机摄像头限制了用户的行为,不具有实用性。



技术实现要素:

本发明就是针对现有技术的不足,提供了一种基于智能手机感知行人安全方法,识别危险状态,给予提醒。

本发明的技术方案为一种基于机器学习的行人步态识别以及事件预测方法,包含以下的步骤:

步骤1,数据的收集与预处理。在智能手机上,以特定频率f从加速度传感器、陀螺仪、磁力计进行信号收集,分别得到三轴的加速度、角速度和磁力计数值。通过得到的加速度以及磁力计数值,得到智能手机的姿态,即偏航角、俯仰角以及滚动倾斜角,具体方法为通过加速度数值(单位m/s2)以及磁力计数值(单位μt)进行归一化后,得到手机三轴加速度值ax,ay,az以及三轴磁场强度ma,mb,mc,根据旋转角的定义关系,得出旋转矩阵r,进而求出偏航角、俯仰角以及滚动倾斜角。此外,根据三轴加速度,计算出合加速度值:

求解出手机姿态后,利用巴特沃斯低通滤波器去除远大于行人正常走路对智能手机产生影响的信号,巴特沃斯滤波器特征在于能够在有效去除截止频率外信号的前提下,在通频带的频率响应曲线最平滑,对于截止频率为ωc的n阶巴特沃斯低通滤波器可由如下公式表示:

软件定义的巴特沃斯滤波器阶数n在实际应用中由截止频率的精确度以及滤波器的复杂度决定,越高阶的滤波器截止频率等参数越精确,但计算复杂度更高,如何平衡两项指标由实际设备的性能以及能耗需求实际调整。使用此滤波器对三轴加速度、合加速度、三轴角速度以及姿态三个角度进行低通滤波,能够有效地去除由于硬件和环境影响而产生的高频信号,得到较为纯净的三轴加速度、合加速度、三轴角速度以及对于世界坐标系的三轴角度,用作下列步骤的处理。

步骤2,进行步态周期的划分。为对行人经过地形进行识别判断,首先对行人步态周期进行划分,以在每个步态周期内进行特征提取,分析地形特征。传统的基于阈值划分的技术只是简单在合加速度超过阈值线时划分为一步,未考虑这一步经历时间以及实际行走状态而导致错判、漏判。在传统的基于阈值划分行走周期的技术基础上,提出一种对合加速度进行自适应的行走周期划分方法,根据最近一段数据点实时调整阈值,对不同人的行走状态以及同一人不同行走状态的行走周期进行精确划分。具体来说,使用对于新收到的数据点,经过滤波后得到的加速度a′x,a′y,a′z后,根据历史数据的前n-1步平均值和二阶矩以及从上一步划分后新收集n2个点的平均值、二阶矩,得到加权的平均值、方差,通过如下数学公式进行合加速度阈值的计算:

使用有限状态机的方法,根据合加速度超的阈值以及状态经历的时间阈值共同设立状态转移的事件,将到达的最后一个状态sm记为行走周期的末尾,即下个行走周期的开始。具体来说,初始状态为未达到阈值状态s0,对应于站立或其他非行走状态;在合加速度超过上述计算动态阈值后,进入加速度上升状态s2,对应于摆动相,此状态减少其他动作产生噪声(峰值点低于阈值)的影响;达到峰值点后进入状态s3,对应脚跟击地,划分为新一步开始;低于动态计算的阈值后进入状态s4,对应于另一只脚的摆动相;合加速度低于前n-1步平均值μn-1后进入支撑相状态s1;在s1状态判断动态阈值到达状态s2,进而到s3成功监测到一步结束,同时是新一步的开始。除s0状态外,每个状态记录其经历时间,根据一般人行走各步态周期的时长,当状态超过一定时间后未到达下一个状态,即转到状态s0,认为不是正常行走状态,重新寻找一步的开始,以减少误判。

步骤3,周期内步态特征的提取。划分步态周期后,对一个周期内的行人步行数据进行特征提取,在时域以及频域进行特征提取,时域的特征包括但不限于平均值、周期时长、中位数、上分位数、下分位数、上下分位数之差、最大值、最小值、90%分位点、标准差、二阶矩、三阶矩、四阶矩、范数、熵等;频域特征包括最大两个峰值的值以及熵。系统通过使用傅里叶变换将一个步态周期的信号映射到频域范围内,进行频域特征的提取。系统对两个硬件传感器以及第三个软件传感器去除噪声之后的数据,择取其中能够反映用户行走状态的方向进行特征提取,以减少后续计算量,软件传感器指方向传感器。对每一步,将十个轴的上述时域以及频域的所有特征组成特征向量v=(v1,v2,v3......vn),作步骤4的事件识别,十轴包括三轴加速度、合加速度、三轴角速度、三轴姿态角的轴。

步骤4,步态周期对应事件的识别。本系统对步态周期的事件划分为:上路肩、下路肩、上小坡、下小坡、转向等5种事件。5种事件通过3种方法进行识别预测。

首先判断是否出现上下路肩事件,因这种事件容易检测且对行人安全威胁较大。通过这一步的特征中加速度的最大值变化进行判断,即判断此步合加速度最大值是否超过阈值且在各方向中是否有下述对应规律来识别是否为上下路肩事件:下路肩时合加速度最大值较大,并且在前进方向、重力方向有加速的特点;上路肩时合加速度较小(但比正常大)且在前进方向加速度较小、重力反方向加速度较大。

其次判断行人是否转向,转向对后面判断上下小坡有影响,先将转向事件分离出来。系统通过三轴姿态中偏航角ψ的平均值组成的序列判断转向,即判断

值为真,则为转向。

最后,本系统使用元算法组成的机器学习分类器进行上下小坡的分类。仅使用单个分类器组成的机器学习方式难以做出准确判断,因此使用logitboost元算法提高分类器的性能。具体来说,先构建较弱的单层决策树分类器,并对训练数据的每个样本赋予相等的权重,构成权重向量w。该算法则先在训练集中训练出弱分类器,并且计算错误率,在接下来的迭代中,重新分配样本权重,为错误分类的分类器分配更多的权重αi,αi是由错误率ε计算得到的,错误率即一个分类器中未正确分类的样本数占全部样本数的比值,则αi由如下计算得出:

logitboost是对adaboost的一个核优化方法,对于其核函数替换为回归分析中的损失函数,即对于

的最小化为标准进行训练。对于分类器分类样本y′i以及其标签yi,样本的权重wi计算方法如下:

由此生成新的权重向量w(t+1),本轮迭代结束。该训练直到训练错误率为0或迭代次数达到上限为止。

本发明收集用户行走看手机时的惯性传感器数据,通过两步分类的方式,使用两种强弱不同的分类器进行上下坡检测。较弱分类器用来检测用户是否上下坡,通过选择主要的传感器以及方向实现,能够使用较少的特征数据得出较准确分类;较强的分类器使用更多的传感器轴的数据进行训练,有更大分类器的规模,能够细致分析用户行走状态。由于平地数据较多,两步强弱不同的分类方式能够减少特征的提取,在移动应用中提升效率降低能耗。

上述三种方法依次进行,判断出一种事件后停止后续的判断,最终得到此步的5种行人事件,达到行人步态识别以及事件预测的目的。若判断行人在马路上,则提醒用户,提醒用户的形式为通知形式或直接弹出当前手机活动。

本发明的优点在于:

利用城镇规划中的道路标准,通过使用手机内置的传感器,检测手机姿态的改变,对用户行为进行定性和定量的分析,构建行人所经过地形模型,识别行人的安全状态,并给予必要提醒,增加行人过马路的安全性。

附图说明

图1是本发明实施实例的数据处理的流程图。

图2是本发明实例的事件判别的流程图。

具体实施方式

下面结合附图和具体实施例对本发明作进一步的详细描述:

标准规划的城镇中,人行道和马路由路肩(即一小级的台阶)隔开,并且人行道的末尾由较为平缓的小短坡过渡到马路上,这能够方便行人行走以及小型非机动车辆经过。这些地形具有特殊性,因此能够通过检测这些地形判断用户的位置以及安全状态。

本发明提供的方法能够用计算机软件技术,如android编程,实现流程。参见图1,以检测用户正常行走并相对静止握住智能手机浏览内容为例,阐述数据处理及识别流程。

步骤1,在用户开启应用服务后,后台以一定速率采集智能手机的加速度计、陀螺仪、磁力计数据,并通过计算旋转矩阵r,得到智能手机的姿态参数。通过低通滤波器滤除高频噪声,保留由于用户行走而产生的低频信号,并去除直流分量。

实例具体的过程如下:

在装有google安卓系统的智能手机上,采样频率为f=100hz,得到三轴的加速度α、角速度ω、地磁强度矢量f的数据,即能够获得900数据点/秒的采样频率。由三轴加速度值ax,ay,az以及三轴磁场强度ma,mb,mc,计算的偏航角ψm、俯仰角θ以及滚动倾角γ过程如下:

在具体实现中,使用安卓系统api自带的sensormanager.getrotationmatrix()方法得到旋转矩阵r,以及通过sensormanager.getorientation()方法得到姿态角,每次调用此api就能得到旋转矩阵r,再调用后一个类的静态方法能够计算得出姿态角,较为精确。

原始信号中有许多因为环境或硬件影响而产生的高频信号,这种信号不是由人行走而产生,会影响之后对事件的判断。考虑到人行走而对智能手机惯性传感器产生的影响相比于硬件变化产生的影响频率较低,因此使用低通滤器能够有效地去除高频信号,得到较为纯净的包含面部表情变化产生对信号影响的信号。考虑到行走的频率在0.3hz~2hz范围内,实例中对合加速度序列进行截止频率为2的6阶低通滤波,用于步骤2的步态周期划分;对于三轴加速度、三轴角速度、三轴姿态角则进行截止频率为5的6阶低通滤波,用于步骤3的步态周期内特征的提取。上述两种低通滤波的传递函数如下:

使用巴特沃斯低通滤波器能够将通频带外的信号有效地去除,并且其频率响应中通频带2hz以及5hz前后的信号有平稳的过渡。

步骤2,对步态周期进行划分。对步态周期的划分能够让系统精确提取用户行走过程中的特定状态的数据,帮助系统对相应事件的判别。先对三轴加速度数据进行滤波,得到a′x,a′y,a′z,计算合加速度an,并且根据前n-1步平均值μn-1以及二阶矩en-1(a2),计算前n步的平均值μn以及二阶矩en(a2)如下:

例如,根据上下路肩时前后几步的合加速度峰值点相关关系,使用p1=0.3计算加权平均,得到的加权平均为:

使用p3=0.73计算阈值,即:

通过有限状态机的方式,将未超过阈值的状态称为s1,当超过阈值thrn时,状态为s2,在一定时间内出现峰值时记为状态s3,低于阈值时记为s4,在低于平均值时记为s5。在峰值记录开始点,在每个状态中,若超过该步态周期时间ti,或一个步态周期的总时间超过t,则判定为不是一个正常行走步态周期,将其舍弃。正常行走的一小步周期为0.6秒至0.8秒之间,选取t=1.5s用有限状态机的方式进行步态周期的划分。

步骤3,提取步态周期的特征。系统划分步态周期后,对于每一小步的数据,在行人上下路肩以及上下小坡时,智能手机收集到的x轴和z轴方向的加速度、z轴方向的角速度以及手机姿态中的俯仰角θ产生较为明显的变化,对应于行人前进方向以及加速度方向的变化,对加速度ax,az序列、陀螺仪ωz序列以及俯仰角θ序列进行低通滤波后的数据进行特征提取,包括了时域以及频域的特征。具体特征提取方式如下:

在一个正常的步态周期内数据,通过5hz的低通滤波器对加速度ax、ay、az以及合加速度a,角速度ωx、ωy、ωz,以及方向角θ、γ、ψ进行滤波。对于其中的所有数据序列进行特征提取,每一个传感器轴提取特定的18种特征,在时域信号中,提取平均值、周期时长、中位数、上分位数、下分位数、上下分位数之差、最大值、最小值、90%分位点、标准差、二阶矩、三阶矩、四阶矩、范数等;其后,使用离散傅里叶变换(dft)的方法,通过o(n2)的复杂度,计算出该段数据的频域,并计算出最大两个峰值以及其频率下标,以及频域的熵。当频域中没有两个峰值时,第二个峰值大小设为0,频率下标也为0;在进行离散傅里叶变换后,计算其熵,将频率响应分成若干等级,计算每个等级所占比例作为不同等级的概率pi,则熵由如下公式计算得出

因此能够计算出改段数据的频域熵。

步骤4,步态周期事件的识别以及用户走过地形的建模。系统对于每一步的周期分类,预测用户的事件,并以此构建用户经过地形的模型,并且对危险状态进行警示。系统使用合加速度判断此小步是否为上下路肩,进而判断各方向上的加速度是否符合上路肩或下路肩的规律,以得出上下路肩的时间判断;系统对航向角进行判断,以判断出行人的转向;最后,系统通过步骤3提取的特征,进行机器学习的分类,预测此小步发生的上小坡或下小坡的事件。具体过程如下:

在检测路肩事件,考虑到行人单手拿智能手机情况下,行走时左右脚交替撞击地面对智能手机造成的不同影响,其峰值会呈现交替大小的改变,系统对于合加速度,在每两小步内提取出峰值组成序列对于计算前几步与后两步峰值的加权平均,如使用权值w=[0.18,0.32,0.25,0,0.11,0.14]就算出加权平均比较,根据正常行人行走的步态周期中进入摆动相时的合加速度统计值设定阈值,若上述比值超过阈值,如thrcurb=1.73,说明合加速度增大,发生上下路肩事件,此后对前进方向的前一步加速度最大值判断,若超过则判定为下路肩;若否,则判断前第2步最大值则判断为上台阶。对于转向的判断,通过设定阈值thrturn=68°判断是否转向,通过前7至前5步的偏航角均值ψ1与前两步平均值ψ2之差的绝对值|ψ1-ψ2|>thrturn,判断为转向。若上述事件都未出现,则将提取的特征使用机器学习的方法,使用logitboost方法提高的分类器进行两步分类,对于每个用户收集的训练集数据训练出两步的分类器:第一个分类器先根据ax,az,ωy,θ序列提取的特征进行预测,若判断为上下小坡,则提取ax,ay,az,ωy,θ的数据的特征进行第二步分类,得出上下坡的事件判断。根据判断的事件,构建经过地形的模型,若判断为在马路上,则给予用户提示,根据置信度,给予通知形势(低置信度,如判断一对下小坡)或直接弹出活动(高置信度,如判断到一对下小坡接着一对下路肩)。

以上实施例仅用于说明本发明的设计思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例。所以,凡依据本发明所揭示的原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1