基于手机内置传感器的用户行为状态判断方法与流程

文档序号:11778628阅读:706来源:国知局
基于手机内置传感器的用户行为状态判断方法与流程

本发明涉及一种基于手机内置传感器的用户行为状态判断方法,特别是涉及对线性加速度传感器和重力加速度传感器数据进行采集、稳定频率、滤波去噪、计算以及分类达到用户行为状态判断的技术。



背景技术:

随着智能手机的普及以及传感器技术的进步,越来越多的手机内置各种传感器,这些传感器蕴藏的大数据可以帮助用户/第三方app更方便的分析用户日常行为,对第三方app来说可以了解用户当前行为状态,基于此对用户做场景化推荐/避免打扰用户;对用户来说,可以分析每天时间分配,合理安排自身时间规划。

目前手机只是配备了传感器,但是不管对android系统还是对ios系统来说,并不知道不同传感器数据对应的用户行为,对第三方app也是如此。因此,如果能通过传感器蕴含的丰富信息判断出用户当前的行为状态,对诸如驾驶类、时间管理类等场景类app有重要意义。



技术实现要素:

本发明主要解决的技术问题是提供了一种手机内置传感器可以精确判断用户行为状态的方法,该方法利用决策树方法,实现了用户行为状态识别效果。

其中,本发明的主要构思来源于个体不同行为状态会导致传感器不一样的受力,通过分析传感器的受力情况(三轴线性加速度和重力加速度数据),对传感器数据做相应的指标统计并根据预置的决策树阈值,动态的判断用户当前的行为模式;另外,本发明在使用传感器数据之前对传感器数据进行滤波处理,降低系统噪声和观测噪声对本发明精度的影响;第三,本发明无需预置个体用户行为数据作为训练;最后,本发明提供了一种在ios和android平台通用的状态识别方法,降低了app开发的成本。

本发明提供一种手机内置传感器可以精确判断用户行为状态的方法,其包括以下模块:频率设定模块,用于设定手机采集传感器数据的频率,所述传感器指的是线性加速度传感器和重力加速度传感器;滤波器模块,所述滤波器模块针对车辆行驶过程中的频谱特征对原始传感器数据进行滤波降噪处理;处理器模块,所述处理器模块根据用户不同行为模式,通过计算所述线性加速度传感器和重力加速度传感器上下四分位数之差、概率密度以及波动大小作为状态判断依据;分类器模块,所述分类器模块利用决策树方法动态判断用户行为,该决策树是由c5.0算法对预先收集的训练数据进行机器学习得到。

优选的,所述频率设定模块首先将android手机传感器频率设置为game模式(频率一般在30hz到50hz范围内波动),将ios手机传感器频率设置为35hz(频率一般在32hz到35hz范围内波动),从原始传感器频率中采样得到稳定的30hz传感器数据。

优选的,所述滤波器模块为巴特沃斯低通滤波器,所述巴特沃斯低通滤波器根据车辆行驶过程中的频谱特征设计,所述巴特沃斯低通滤波器对线性加速度数据和重力加速度进行滤波降噪处理,提高判断精度。

优选的,所述处理器模块从起始时间开始,将5秒内的数据(150条数据)作为判断数据源进行一次判断,分别计算这150条数据三轴线性加速数据的上下四分位点之差、三轴线性加速数据的值在[-0.05,0.05]之间的概率密度和,三轴线性加速数据的值在[-0.3,0.3]之间的概率密度和,三轴线性加速度和重力加速度的标准差。

优选的,分类器模块通过预置的决策树对上述指标进行分类,判断用户当前行为状态,其中预置的决策树由c5.0算法对训练数据学习得到。

优选的,所述基于手机内置传感器判断用户行为状态系统利用训练数据预先设计分类器决策树,无需用户预先配置自身行为数据。

优选的,上述三个模块通过c语言代码实现之后,ios系统支持直接调用本方法的c代码实现实现状态判断功能,android系统使用jni桥接后也可调用本方法的c代码实现状态判断功能。

本发明提供了一种ios和android平台通用的基于手机内置传感器判断用户行为状态方法,具体包括以下步骤:

步骤1,设定手机采样频率,并对手机采集数据进行抽样处理,以稳定数据输出频率;

步骤2,对加速度传感器数据做如下处理:

2-1)设计适用于状态判断的巴特沃斯低通滤波器;

2-2)对原始线性加速度信号和重力加速度信号进行滤波处理以消除背景噪声干扰;

步骤3,计算用户行为状态判断关键区分指标,包括三轴线性加速数据的上下四分位点之差、三轴线性加速数据的值在[-0.05,0.05]之间的概率密度和,三轴线性加速数据的值在[-0.3,0.3]之间的概率密度和以及三轴线性加速度和三轴重力加速度的标准差,其中:

3-1)计算上、下四分位数位置的公式分别为

3-2)计算三轴线性加速度的概率密度公式为,其中k为核密度函数;

3-3)三轴线性加速度的波动幅度计算公式为

作为本发明的进一步优化方案,步骤1采用递归法对原始数据进行抽样以稳定数据频率。

作为本发明的进一步优化方案,步骤2中根据车辆行驶时的频谱范围特征构造巴特沃斯低通滤波器实现降噪。

作为本发明的进一步优化方案,步骤3处理原始数据之前对原始数据有效性进行判断,如果原始数据中x轴的线性加速度为0的条数占比超过10%或者原始数据不到150条,则当前数据不可用,当前用户状态为未知。

作为本发明的进一步优化方案,步骤3采用高斯分布函数作为核密度估计函数。

本发明上述各方面与现有技术相比,首先本发明通过对用户不同行为时手机的受力状态进行分析,构建有效的分类器指标体系;其次,本发明采用c5.0算法对训练数据进行学习构建决策树,避免因训练数据分布不均匀导致的决策树偏差;第三,本发明的状态判断方法预置了决策树,无需预置用户行为数据进行训练,提高了本发明的实用性;最后,本发明通过c语言代码实现之后,ios系统支持直接调用本方法的c代码实现计步,android系统使用jni桥接后也可调用本方法的c代码实现计步,不需要额外的硬件设备。

附图说明

图1是展示了本发明的方法流程图。

图2是展示了本发明设计滤波器使用前后行驶过程中的加速度值的对比。

图3是展示了上下四分位点之差、三轴线性加速度数据在[-0.05,0.05]之间的概率密度和以及三轴重力加速度的标准差对状态的区分度。

图4是展示了本发明内置的状态判断决策树。

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