使用手机自动判断驾驶行为的方法与流程

文档序号:12694774阅读:398来源:国知局

本发明涉及用户驾驶行为的判断方法,特别涉及使用手机自动判断驾驶行为的方法。



背景技术:

已有的记录驾驶者驾驶行为的方法是使用OBD(On-Board Diagnostic)盒子,即车载诊断系统;这种技术需要驾驶者额外的硬件投入,且收集到的驾驶行为数据仅能与车辆挂钩,无法与驾驶者关联。



技术实现要素:

本发明要解决的技术问题是提供一种用户不需要额外的硬件投入,仅使用智能手机就能完成全部判断过程的使用手机自动判断驾驶行为的方法。

为达到上述目的,本发明的技术方案如下:

使用手机自动判断驾驶行为的方法,所述方法包括如下步骤:

(1)打开手机端APP应用软件;点击开始按键进入使用模式;此后无论用户是否打开App还是将App退出至后台运行都会自动判断用户的驾驶行为;手机利用内置的GPS定位模块和传感器模块实时采集用户驾驶速度数据;

(2)APP应用软件会以当前位置为中心设置地理围栏;

(3)APP应用应用软件进入休眠模式,停止定位;

(4)当用户出围栏时对驾驶速度是否超过预先设定的阈值进行判断;如果驾驶速度超过预先设定的阈值,则进入下个程序;如果驾驶速度没有超过预先设定的阈值,则APP应用软件重复步骤(2)直至驾驶速度超过预先设定的阈值为止;

(5)对手机状态是否满足行程开始条件进行判断;如果满足,则进入下个程序,如果不满足,则APP应用软件返回步骤(2)重新判断直至手机状态满足行程开始条件;

(6)对运动状态是否满足行程开始条件进行判断;如果满足,则进入下个程序,如果不满足,则APP应用软件返回步骤(2)重新判断直至运动状态满足形成开始条件;

(7)记录GPS定位模块采集的数据以及传感器模块采集的数据,并将采集到的数据传递给APP应用软件驾驶行为分析库函数中进行计算;

(8)对速度是否低于预先设定的阈值进行判断;如果速度低于预先设定的阈值,则进入下个程序;如果不低于预先设定的阈值,则APP应用软件返回步骤(7)直至速度低于预先设定的阈值为止;

(9)对手机状态是否满足行程结束条件进行判断;如果满足,则用户驾驶行程结束;如果不满足,则进入下个程序;

(10)对运动状态是否满足行程结束条件进行判断;如果满足,则用户驾驶行程结束;如果不满足,则APP应用软件返回步骤(7)直至运动状态满足行程结束条件;

(11)APP应用软件在行程结束后进行数据清洗,然后在使用传感器数据二次过滤行程过滤掉乘车者行程数据而仅留下驾驶者行程数据;

(12)对非驾车状态点的比例是否超过阈值进行判断,如果超出阈值,则结束;如果未超出阈值,则将数据进行压缩、分片、上传至APP应用软件服务端,并最终在APP应用软件上显示出来。

在本发明的一个实施例中,当用户出围栏时对驾驶速度是否超过预先设定阈值的判断方法为:使用手机GPS定位模块返回的数据,其中包含有瞬时的原始速度,单位是米/秒,阈值是2.235m/s,等于8km/h,阈值是根据200个实验样本,5分钟的非驾驶行程数据,取上95分位数,取整后作为触发阈值的。

在本发明的一个实施例中,对手机状态是否满足行程开始条件的判断方法为:在本步骤中存在最长不超过一分钟缓冲时长,本阶段开始时,每秒从GPS定位模块取一次速度,若任一次定位速度大于2.235m/s,则进入下个程序;若在一分钟内所返回的速度均不超过2.235m/s,则App应用软件返回步骤(2)。

在本发明的一个实施例中,对运动状态是否满足形成开始条件的判断方法为:在本步骤中存在最长不超过一分钟缓冲时长,本阶段开始时,使用手机GPS定位模块来获取手机用户的瞬时速度数值,每秒一次,共计60组,使用传感器九轴数据得到用户姿态判断数据,每秒五次,共计300组;具体的做法是,使用重力传感器和磁力传感器回传的六轴数据,合成旋转矩阵R,使用R左乘加速度三轴向量数据,得到校正到车辆坐标系后的三轴加速度向量(x,y,z);若z轴大小不在0.9-1.1个重力加速度内,且x与y的平方和大于1m/s2,则记录该组数据判断值为1;当300组数中有100组以上为1时,返回步骤(2),重新判断直至运动状态满足行程开始条件;当300组数中没有30组判断值为1时,则进入下个程序;当300组数中有30-100个判断值为1时,计算60s内的平均速度,若平均速度大于3m/s则进入下个程序,否则App应用软件返回步骤(2)。

在本发明的一个实施例中,对速度是否低于预先设定阈值的判断方法为:使用手机GPS定位模块返回的数据,其中包含有瞬时的原始速度,单位是米/秒,阈值是2.235m/s,等于8km/h,阈值是根据200个实验样本,5分钟的非驾驶行程数据,取上95分位数,取整后作为触发阈值的。

在本发明的一个实施例中,对手机状态是否满足行程结束条件的判断方法为:本阶段仍存在最多不超过一分钟的缓冲期,当连续六十秒速度都低于2.235m/s时,行程结束,当任意一次定位获得的速度大于2.235m/s时,进入下个程序。

在本发明的一个实施例中,运动状态是否满足行程结束条件的判断方法为:在本步骤中存在一分钟的缓冲时长,使用手机GPS定位模块手机用户的瞬时速度数值,每秒一次,共计60组,使用传感器九轴数据得到用户姿态判断数据,每秒五次,共计300组;具体的做法是,使用重力传感器和磁力传感器回传的六轴数据,合成旋转矩阵R,使用R左乘加速度三轴向量数据,得到校正到车辆坐标系后的三轴加速度向量(x,y,z);若z轴大小不在0.9-1.1个重力加速度内,且x与y的平方和大于1m/s2,则记录该组数据判断值为1;当300组判断值中1的个数少于30个时,返回步骤(7),否则进入下个程序。

在本发明的一个实施例中,数据清洗分为五步:

第一步,检查每个字段是否存在不合理的错误数值,longitude应在0-360之间,latitude应在-90-90之间,timestamp应大于1356969600000,course应在0-360之间,speed应在0-56之间,以上区间均包含端点,对每行数据,仅当所有字段均在范围内时保留;

第二步,用惯性导航的原理,线性差值补全GPS点的数据,使得相邻的两条数据间的间隔在800-1200毫秒之间;

第三步,若speed字段出现最多不超过连续3个缺失的,将speed缺失的几行用前后非缺失行线性差值补全;

第四步,若course字段出现最多不超过连续3个缺失的,将course缺失的几行用前后非缺失行线性差值补全;

第五步,计算速度的前10秒移动平均速度。

在本发明的一个实施例中,使用传感器数据二次过滤行程过滤掉乘车者行程数据而仅留下驾驶者行程数据的方法为:将九轴传感器的数据按每分钟归集,每分钟为300组数据,每组数据计算出一个判断值,0或者1;具体的做法是,使用重力传感器和磁力传感器回传的六轴数据,合成旋转矩阵R,使用R左乘加速度三轴向量数据,得到校正到车辆坐标系后的三轴加速度向量(x,y,z);若z轴大小不在0.9-1.1个重力加速度内,且x与y的平方和大于1m/s2,则记录该组数据判断值为1,否则则为0;当300组判断值中1的个数少于30个时,该分钟被用户姿态被记为驾驶;当300组判断值中1的个数在30-100之间时,若该分钟的平均速度小于3m/s,则标记为非驾驶,若大于等于3m/s,则标记为驾驶;当300组判断值中1的个数大于100个时,该分钟被用户姿态被记为非驾驶。

在本发明的一个实施例中,非驾车状态点的比例是否超过阈值的判断方法为:对于总行程时间而言,若前一步骤中标记的非驾驶状态大于65%,则该段行程数据被过滤掉,直接丢弃;否则将数据压缩、分片、上传至服务器,进行事件提取并对行程打分后,在App应用软件上显示出来。

通过上述技术方案,本发明的有益效果是:

一、用户不需要额外的硬件投入,仅使用智能手机就能完成全部的判断过程。

二、在驾驶行为判断中完全不需要驾驶者的人工干预,仅需要对手机APP授予GPS定位权限即可。

三、判断与反馈是即时的,在行程结束后驾驶者即可看到该段行程的详情,算法已自训练好,对新用户无需额外的训练样本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明工作流程图;

具体实施方式

为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。

参见图1所示,本发明公开了使用手机自动判断驾驶行为的方法,方法包括如下步骤:

(1)打开手机端APP应用软件;点击开始按键进入使用模式;此后无论用户是否打开App还是将App退出至后台运行都会自动判断用户的驾驶行为;手机利用内置的GPS定位模块和传感器模块实时采集用户驾驶速度数据。

(2)手机端APP应用软件会以当前位置为圆心,设置半径120m的地理围栏。

(3)APP应用应用软件进入休眠模式,停止定位。

(4)当用户出围栏时对驾驶速度是否超过预先设定的阈值进行判断;如果驾驶速度超过预先设定的阈值,则进入下个程序;如果驾驶速度没有超过预先设定的阈值,则APP应用软件重复步骤(2)直至驾驶速度超过预先设定的阈值为止;当用户出围栏时对驾驶速度是否超过预先设定阈值的判断方法为:使用手机GPS定位模块返回的数据,其中包含有瞬时的原始速度,单位是米/秒,阈值是2.235m/s,等于8km/h,阈值是根据200个实验样本,5分钟的非驾驶行程数据,取上95分位数,取整后作为触发阈值的,如果驾驶速度超过2.235m/s,则进入下个程序;如果驾驶速度没有超过2.235m/s,则APP应用软件重复步骤(2)直至驾驶速度超过2.235m/s为止。

(5)对手机状态是否满足行程开始条件进行判断;如果满足,则进入下个程序,如果不满足,则APP应用软件返回步骤(2)重新判断直至手机状态满足行程开始条件;对手机状态是否满足行程开始条件的判断方法为:在本步骤中存在最长不超过一分钟缓冲时长,本阶段开始时,每秒从GPS定位模块取一次速度,若任一次定位速度大于2.235m/s,则进入下个程序;若在一分钟内所返回的速度均不超过2.235m/s,则App应用软件返回步骤(2)。

(6)对运动状态是否满足行程开始条件进行判断;如果满足,则进入下个程序,如果不满足,则APP应用软件返回步骤(2)重新判断直至运动状态满足形成开始条件;对运动状态是否满足形成开始条件的判断方法为:在本步骤中存在最长不超过一分钟缓冲时长,本阶段开始时,使用手机GPS定位模块来获取手机用户的瞬时速度数值,每秒一次,共计60组,使用传感器九轴数据得到用户姿态判断数据,每秒五次,共计300组;具体的做法是,使用重力传感器和磁力传感器回传的六轴数据,合成旋转矩阵R,使用R左乘加速度三轴向量数据,得到校正到车辆坐标系后的三轴加速度向量(x,y,z);若z轴大小不在0.9-1.1个重力加速度内,且x与y的平方和大于1m/s2,则记录该组数据判断值为1;当300组数中有100组以上为1时,返回步骤(2),重新判断直至运动状态满足行程开始条件;当300组数中没有30组判断值为1时,则进入下个程序;当300组数中有30-100个判断值为1时,计算60s内的平均速度,若平均速度大于3m/s则进入下个程序,否则App应用软件返回步骤(2)。

(7)记录GPS定位模块采集的数据以及传感器模块采集的数据,并将采集到的数据传递给APP应用软件驾驶行为分析库函数中进行计算;本发明是用手机自动判断用户驾驶行为并收集用户驾驶行为数据的部分,不涉及到后期对收集到的驾驶行为进行分析处理的部分;主要收集GPS模块数据,每秒一次,三个传感器的九轴数据,每秒五次,以及对点亮和熄灭屏幕的事件监听,并将数据写到sqlite数据库中;后期服务器端的算法会通过这些数据判断用户是否存在不文明的驾驶行为:如急加速、急刹车、急左转、急右转、变道、使用手机等。

(8)对速度是否低于预先设定的阈值进行判断;如果速度低于预先设定的阈值,则进入下个程序;如果不低于预先设定的阈值,则APP应用软件返回步骤(7)直至速度低于预先设定的阈值为止;对速度是否低于预先设定阈值的判断方法为:使用手机GPS定位模块返回的数据,其中包含有瞬时的原始速度,单位是米/秒,阈值是2.235m/s,等于8km/h,阈值是根据200个实验样本,5分钟的非驾驶行程数据,取上95分位数,取整后作为触发阈值的;如果速度低于预先设定的2.235m/s,则进入下个程序;如果不低于预先设定的2.235m/s,则APP应用软件返回步骤(7)直至速度低于预先设定的2.235m/s为止。

(9)对手机状态是否满足行程结束条件进行判断;如果满足,则用户驾驶行程结束;如果不满足,则进入下个程序;对手机状态是否满足行程结束条件的判断方法为:本阶段仍存在最多不超过一分钟的缓冲期,当连续六十秒速度都低于2.235m/s时,行程结束,当任意一次定位获得的速度大于2.235m/s时,进入下个程序。

(10)对运动状态是否满足行程结束条件进行判断;如果满足,则用户驾驶行程结束;如果不满足,则APP应用软件返回步骤(7)直至运动状态满足行程结束条件;运动状态是否满足行程结束条件的判断方法为:在本步骤中存在一分钟的缓冲时长,使用手机GPS定位模块手机用户的瞬时速度数值,每秒一次,共计60组,使用传感器九轴数据得到用户姿态判断数据,每秒五次,共计300组;具体的做法是,使用重力传感器和磁力传感器回传的六轴数据,合成旋转矩阵R,使用R左乘加速度三轴向量数据,得到校正到车辆坐标系后的三轴加速度向量(x,y,z);若z轴大小不在0.9-1.1个重力加速度内,且x与y的平方和大于1m/s2,则记录该组数据判断值为1;当300组判断值中1的个数少于30个时,返回步骤(7),否则进入下个程序。

(11)APP应用软件在行程结束后进行数据清洗,然后在使用传感器数据二次过滤行程过滤掉乘车者行程数据而仅留下驾驶者行程数据;

数据清洗分为五步:

第一步,检查每个字段是否存在不合理的错误数值,longitude应在0-360之间,latitude应在-90-90之间,timestamp应大于1356969600000,course应在0-360之间,speed应在0-56之间,以上区间均包含端点,对每行数据,仅当所有字段均在范围内时保留;

第二步,用惯性导航的原理,线性差值补全GPS点的数据,使得相邻的两条数据间的间隔在800-1200毫秒之间;

第三步,若speed字段出现最多不超过连续3个缺失的,将speed缺失的几行用前后非缺失行线性差值补全;

第四步,若course字段出现最多不超过连续3个缺失的,将course缺失的几行用前后非缺失行线性差值补全;

第五步,计算速度的前10秒移动平均速度。

使用传感器数据二次过滤行程过滤掉乘车者行程数据而仅留下驾驶者行程数据的方法为:将九轴传感器的数据按每分钟归集,每分钟为300组数据,每组数据计算出一个判断值,0或者1;具体的做法是,使用重力传感器和磁力传感器回传的六轴数据,合成旋转矩阵R,使用R左乘加速度三轴向量数据,得到校正到车辆坐标系后的三轴加速度向量(x,y,z);若z轴大小不在0.9-1.1个重力加速度内,且x与y的平方和大于1m/s2,则记录该组数据判断值为1,否则则为0;当300组判断值中1的个数少于30个时,该分钟被用户姿态被记为驾驶;当300组判断值中1的个数在30-100之间时,若该分钟的平均速度小于3m/s,则标记为非驾驶,若大于等于3m/s,则标记为驾驶;当300组判断值中1的个数大于100个时,该分钟被用户姿态被记为非驾驶。

(12)对非驾车状态点的比例是否超过阈值进行判断,如果超出阈值,则结束;如果未超出阈值,则将数据进行压缩、分片、上传至APP应用软件服务端,并最终在APP应用软件上显示出来。

非驾车状态点的比例是否超过阈值的判断方法为:对于总行程时间而言,若前一步骤中标记的非驾驶状态大于65%,则该段行程数据被过滤掉,直接丢弃;否则将数据压缩、分片、上传至服务器,进行事件提取并对行程打分后,在App应用软件上显示出来,该阈值是根据坐车与乘客行为样本,使用SVM支持向量机算法学习得出的,此处不加赘述。

上述传感器模块还可以为重力感应器和/或距离感应器,其根据需要判断的用户驾驶行为而定,具体判断方法和本发明基本相同,此处不加赘述。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

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