一种用户行为数据处理方法、装置、设备及存储介质与流程

文档序号:25586831发布日期:2021-06-22 17:02阅读:93来源:国知局
一种用户行为数据处理方法、装置、设备及存储介质与流程

本公开涉及计算机技术领域,具体而言,涉及一种用户行为数据处理方法、装置、设备及存储介质。



背景技术:

室内导航技术可以让置身于大型商场、医院、学校等大型室内场所里的人,即使在建筑物内,仍能利用精确的定位功能确定自己的位置并找到想去的地方,因此得到越来越多的重视。在室内导航技术中,行人航位推算(pedestriandeadreckoning,pdr)技术由于无需在建筑物内预装信标节点,利用惯性传感器(如加速度传感器、陀螺仪、磁力计等)计算人的步长和方向,即推测出行人在建筑物内的踪迹。

pdr技术本身的精度严重依赖于输入的数据质量,然而目前针对普通用户的pdr技术,大多是通过用户的终端设备(例如手机)进行加速度数据采集,再通过终端设备中的应用进行数据处理计算,以进行用户步数和导航等的推算,例如用户可以通过终端设备上的网页端进行pdr运算,但是随着终端设备负载的变化和数据传输帧率等因素的变化,导致数据处理的准确性低,如在数据处理时网页端拿到的加速度数据的帧率较低,较低的帧率导致了步数的时间戳检测不准,网页端无法获取传感器采集的真实时间戳,只能近似使用数据更新时的时间戳,误差较大,而且在网页端负载较高的时候,帧率会进一步下降并伴有随机性的丢帧,导致检测难度进一步增加,会导致误差增大。



技术实现要素:

有鉴于此,本公开实施例至少提供一种用户行为数据处理方法、装置、电子设备及可读存储介质,可以有效检测用户行动步数,有助于提高检测结果的精度和准确率,以解决上述现有技术存在的技术问题中的至少一个。

本公开实施例提供了一种用户行为数据处理方法,所述方法包括:

获取终端的加速度数据,以及在获取所述加速度数据期间对应的数据传输帧率;

对所述加速度数据进行低通滤波处理,得到处理后的有效加速度数据;

基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点;

基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

本实施例中,通过低通滤波处理对获取到的通过终端(例如移动终端等)上的加速度计采集到的加速度数据进行处理,并通过获取加速度数据期间的数据传输帧率对低通滤波处理后的有效加速度数据进行筛选,从而确定出用户的步数,滤波后的数据不仅满足后续使用要求的同时,还能够保证只占用很少的计算量,使算法能够在网页端运行,可以有效降低数据的滞后性,而且数据的筛选可以适应不同帧率的加速度数据,通过加速度数据即可有效对用户行走步数进行检测,有效提高检测准确率。

在一种可选的实施方式中,所述方法还包括:

当检测到目标网页在所述终端上加载完毕,并处于运行状态时,控制终端的加速度传感器采集所述终端的加速度数据。

这样,通过实时运行的网页即可进行步数统计和检测,无需安装app,应用简单便捷,应用前景广泛。

在一种可选的实施方式中,所述基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点,包括:

确定所述有效加速度数据中的多个数据时间节点,和每个数据时间节点对应的加速度计模长;

根据每个数据时间节点的加速度计模长,确定表征用户行动的步数统计数组;

从所述步数统计数组中确定出多个预选数据拐点;

将所述多个预选数据拐点中,加速度计模长小于与所述数据传输帧率匹配的加速度计模长阈值的预选数据拐点删除,得到所述有效加速度数据中的多个有效数据拐点。

这样,通过相邻数据节点之间的计算得到的步数统计数组,可以准确有效的对数据进行处理,有效减少数据的漏处理。

在一种可选的实施方式中,所述根据每个数据时间节点的加速度计模长,确定表征用户行动的步数统计数组,包括:

计算所述多个数据时间节点中每相邻两个数据时间节点中的在后时间节点对应的加速度计模长,与在先时间节点对应的加速度计模长之间的差值;

若所述差值大于或者等于第一比较阈值,将在后时间节点对应的加速度计模长记为在数组中的第一标记元素;

若所述差值小于所述第一比较阈值,将在后时间节点对应的加速度计模长记为在数组中的第二标记元素;

按照每个第一标记元素对应的数据时间节点和每个第二标记元素对应的数据时间节点的先后顺序进行排序,得到包括多个第一标记元素和多个第二标记元素的表征用户行动的步数统计数组。

在一种可选的实施方式中,所述根据所述步数统计数组,确定出表征用户行动的多个预选数据拐点,包括:

遍历所述步数统计数组,若相邻的两个标记元素中的在先标记元素与在后标记元素不同,且该在先标记元素为所述第一标记元素的情况下,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

在一种可选的实施方式中,所述从所述步数统计数组中确定出多个预选数据拐点,包括:

计算所述步数统计数组中每相邻两个标记元素中的在先标记元素对应的数组元素值与在后标记元素对应的数组元素值之间的差值;

若所述差值大于所述第一比较阈值,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

在一种可选的实施方式中,所述方法还包括:

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔小于与所述数据传输帧率匹配的第一时长阈值,删除所述相邻的两个有效数据拐点中对应的加速度计模长小的有效数据拐点;将剩余的有效数据拐点确定为从所述有效加速度数据中确定出的多个有效数据拐点;和/或

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔大于与所述数据传输帧率匹配的第二时长阈值,将所述加速度计模长阈值调小;若检测到该相邻的两个有效数据拐点之间存在对应的加速度计模长大于调小后的所述加速度计模长阈值的时间采集节点,将检测到的该时间采集节点确定为从所述有效加速度数据中确定的有效数据拐点。

在上述实施方式中,能够精确筛选出抖动数据,并将抖动数据删除,可以保证数据的准确性,有利于提高步数统计结果的有效性,可以有效降低由于数据的抖动带来的漏检和误检。

在一种可选的实施方式中,所述方法还包括:

确定所述多个有效数据拐点中对应的数据时间节点的时间顺序位于最后的至少两个有效数据拐点;

基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点和加速度计模长,确定用户的当前步长和当前速度。

在一种可选的实施方式中,所述基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点和加速度计模长,确定用户的当前步长和当前速度,包括:

基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点,确定所述用户的当前步频;

根据所述当前步频,以及基于所述至少两个有效数据拐点中每个有效数据拐点的加速度计模长确定的模长方差,计算所述用户的当前步长;

根据所述当前步长,和基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点确定的行动时间,计算所述用户的当前速度。

本公开实施例还提供一种用户行为数据处理装置,所述装置包括:

数据获取模块,用于获取终端的加速度数据,以及在获取所述加速度数据期间对应的数据传输帧率;

数据滤波模块,用于对所述有效加速度数据进行低通滤波处理,得到处理后的有效加速度数据;

第一拐点确定模块,用于基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点;

步数确定模块,用于基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

在一种可选的实施方式中,所述装置还包括:

数据采集模块,用于当检测到目标网页在所述终端上加载完毕,并处于运行状态时,控制终端的加速度传感器采集所述终端的加速度数据。

在一种可选的实施方式中,所述第一拐点确定模块具体用于:

确定所述有效加速度数据中的多个数据时间节点,和每个数据时间节点对应的加速度计模长;

根据每个数据时间节点的加速度计模长,确定表征用户行动的步数统计数组;

从所述步数统计数组中确定出多个预选数据拐点;

将所述多个预选数据拐点中,加速度计模长小于与所述数据传输帧率匹配的加速度计模长阈值的预选数据拐点删除,得到所述有效加速度数据中的多个有效数据拐点。

在一种可选的实施方式中,所述第一拐点确定模块在用于根据每个数据时间节点的加速度计模长,确定表征用户行动的步数统计数组时,具体用于:

计算所述多个数据时间节点中每相邻两个数据时间节点中的在后时间节点对应的加速度计模长,与在先时间节点对应的加速度计模长之间的差值;

若所述差值大于或者等于第一比较阈值,将在后时间节点对应的加速度计模长记为在数组中的第一标记元素;

若所述差值小于所述第一比较阈值,将在后时间节点对应的加速度计模长记为在数组中的第二标记元素;

按照每个第一标记元素对应的数据时间节点和每个第二标记元素对应的数据时间节点的先后顺序进行排序,得到包括多个第一标记元素和多个第二标记元素的表征用户行动的步数统计数组。

在一种可选的实施方式中,所述第一拐点确定模块在用于根据所述步数统计数组,确定出表征用户行动的多个预选数据拐点时,具体用于:

遍历所述步数统计数组,若相邻的两个标记元素中的在先标记元素与在后标记元素不同,且该在先标记元素为所述第一标记元素的情况下,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

在一种可选的实施方式中,所述第一拐点确定模块在用于从所述步数统计数组中确定出多个预选数据拐点时,具体用于:

计算所述步数统计数组中每相邻两个标记元素中的在先标记元素对应的数组元素值与在后标记元素对应的数组元素值之间的差值;

若所述差值大于所述第一比较阈值,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

在一种可选的实施方式中,所述装置还包括拐点筛选模块,所述拐点筛选模块用于:

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔小于与所述数据传输帧率匹配的第一时长阈值,删除所述相邻的两个有效数据拐点中对应的加速度计模长小的有效数据拐点;将剩余的有效数据拐点确定为从所述有效加速度数据中确定出的多个有效数据拐点;和/或

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔大于与所述数据传输帧率匹配的第二时长阈值,将所述加速度计模长阈值调小;若检测到该相邻的两个有效数据拐点之间存在对应的加速度计模长大于调小后的所述加速度计模长阈值的时间采集节点,将检测到的该时间采集节点确定为从所述有效加速度数据中确定的有效数据拐点。

在一种可选的实施方式中,所述装置还包括:

第二拐点确定模块,用于确定所述多个有效数据拐点中对应的数据时间节点的时间顺序位于最后的至少两个有效数据拐点;

行动统计模块,用于基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点和加速度计模长,确定用户的当前步长和当前速度。

在一种可选的实施方式中,所述行动统计模块具体用于:

基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点,确定所述用户的当前步频;

根据所述当前步频,以及基于所述至少两个有效数据拐点中每个有效数据拐点的加速度计模长确定的模长方差,计算所述用户的当前步长;

根据所述当前步长,和基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点确定的行动时间,计算所述用户的当前速度。

本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述的用户行为数据处理方法的步骤。

本公开实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的用户行为数据处理方法的步骤。

本公开实施例提供的用户行为数据处理方法、装置、设备及可读存储介质,可以对加速度数据进行低通滤波处理,再通过获取加速度数据期间的数据传输帧率,对低通滤波处理后得到的有效加速度数据进行计算时所需的阈值进行调整,从而确定出用户的步数,滤波后的数据不仅满足后续使用要求的同时,还能够保证只占用很少的计算量,使算法能够在网页端运行,可以有效降低数据的滞后性,而且数据的筛选可以适应不同帧率的加速度数据,通过加速度数据即可有效对用户行走步数进行检测,有效提高检测准确率。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本公开实施例提供的一种用户行为数据处理方法的流程图;

图2为本公开实施例提供的加速度数据处理的示意图;

图3为本公开实施例提供的另一种用户行为数据处理方法的流程图;

图4为本公开实施例提供的用户行为数据处理装置的示意图之一;

图5为本公开实施例提供的用户行为数据处理装置的示意图之二;

图6为本公开实施例提供的用户行为数据处理装置的示意图之三;

图7为本公开实施例提供的用户行为数据处理装置的示意图之四;

图8为本公开实施例提供的一种计算机设备的示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

基于上述研究,本公开提供了一种用户行为数据处理方法,可以对加速度数据进行低通滤波处理,再根据获取加速度数据期间的不同帧率,对经过低通滤波处理后的有效加速度数据进行筛选所需的阈值进行调整,通过有效加速度数据即可有效对用户行走步数进行检测,滤波后的数据能够保证只占用很少的计算量,使算法能够在网页端运行,可以有效降低数据的滞后性,帮助解决数据传输帧率导致的低准确率的问题,而且数据的筛选可以适应不同帧率的加速度数,有助于提高检测准确率。

为便于对本实施例进行理解,首先对本公开实施例所公开的一种用户行为数据处理方法进行详细介绍,本公开实施例所提供的用户行为数据处理方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(userequipment,ue)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(personaldigitalassistant,pda)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该用户行为数据处理方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

下面以执行主体为终端设备为例对本公开实施例提供的用户行为数据处理方法加以说明。

请参阅图1,图1为本公开实施例提供的一种用户行为数据处理方法的流程图。如图1中所示,所述方法包括:

s101:获取终端的加速度数据,以及在获取所述加速度数据期间对应的数据传输帧率。

该步骤中,在需要检测用户的行动步数,或者检测用户的行动步数以用于后续为用户计算速度、步长或者导航时,例如用户在终端上加载用于计算速度、步长或者导航的目标网页时,可以通过用户的终端上的加速度传感器采集加速度数据,目标网页可以获取所述加速度传感器采集加速度数据并对加速度数据进行封装处理,然后就可以获取到目标网页发送的封装处理后的加速度数据,并且可以通过对目标网页发送的加速度数据的计算等,得到获取所述加速度数据期间对应的数据传输帧率。

其中,终端上的加速度传感器,可以是终端上自带的原生的加速度传感器,也可以是在终端上后安装的加速度传感器。例如,可以是用户的手机或者可穿戴设备,以及手机或者可穿戴设备上的加速度传感器,或者根据需要,在用户的笔记本电脑或者车载设备等设备上,加装的加速度传感器。

在获取所述加速度数据期间对应的数据传输帧率,可以是指在接收所述目标网页发送的封装处理后的加速度数据期间,所述目标网页发送所述加速度数据的数据传输帧率。

其中,所述数据传输帧率,可以是在每个时间点时,加速度数据对应的每个时间点的帧率,也可以是加速度数据的平均帧率,还可以是根据接收加速度数据的整个时间段内的帧率波动,将整个时间段划分为多个子时间段,然后使用每个子时间段内的平均帧率。例如,每隔2秒统计下最近2秒内网页发送过来多少次加速度数据,通过这个计算帧率,如果2秒内发送给我们80个数据,那么帧率可以认为是40。上述例举的计算方式仅为示例说明,并不局限于此。

示例性的,当用户在逛商场、学校或者展览馆等具有一定范围的室内或者露天场地时,需要找到相应的店铺、教室或者展览品时,可以查看相应区域的室内导航地图进行寻找,此时如果需要用户下载相应的app则比较繁琐,并且浪费流量等,大多会选择使用web端的方式,用户通过扫描二维码等方式打开相应web即可进行查看甚至导航,此时,可以通过用户的手机上的加速度传感器采集用户行走时的加速度数据。

s102:对所述加速度数据进行低通滤波处理,得到处理后的有效加速度数据。

由于采集的原始的加速度数据中可能会存在一些噪声,造成数据波形的抖动,例如图2中所示的示例,图2为本公开实施例提供的加速度数据处理的示意图,在得到所述加速度数据后,可以通过所述加速度数据得到用于表征用户行动的波形曲线210,由图中可知,波形曲线210中存在较多抖动和噪声。

因此,该步骤中,可以对获取到的所述加速度数据进行低通滤波处理,从而得到滤波处理后的有效加速度数据。

经过低通滤波处理后,即可得到噪声大大减小的有效加速度数据,以及对应的较平滑的波形曲线,如图2中的波形曲线220。

其中,鉴于终端上的加速度传感器的帧率较低,因此本公开实施例中使用低通滤波,对三轴加速度计的模长进行滤波,既可以达到计算量低,还可以很好的去处数据噪声,而且选取较缓和的滤波系数,可以避免滤波后的数据滞后的过于严重。

示例性的,可以通过以下公式对所述加速度数据进行低通滤波:

y(k)=x(k)*alpha+(1-alpha)*y(k-1);

其中,y(k)为滤波后加速度数据k的模长,x(k)为加速度数据k原始模长,alpha为滤波系数,y(k-1)为加速度数据k的前一个加速度数据k-1的滤波后的模长。

其中,滤波系数alpha,可以是通过深度学习的方式得到的不同的加速度传感器所对应的系数。

s103:基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点。

该步骤中,在获取到所述有效加速度数据和所述数据传输帧率之后,可以通过所述数据传输帧率计算出用于对所述有效加速度数据进行筛选的加速度计模长阈值,或者是获取将所述数据传输帧率发送给后台之后,后台计算出的加速度计模长阈值,再或者是根据预设的帧率和模长阈值之间的映射关系来获取的与所述数据传输帧率相对应的加速度计模长阈值,以对所述有效加速度数据进行筛选,从而得到多个有效数据拐点。

相应的,与所述数据传输帧率匹配的加速度计模长阈值,可以是采集加速度数据时每个时间点的加速度计模长阈值,也可以是使用整个数据采集时间段内的平均帧率对应的固定加速度计模长阈值,还可以是整个数据采集时间段的多个子时间段中每个子时间段的平均帧率,所对应的每个加速度计模长阈值。

示例性的,如图2中所示的示例,在得到所述有效加速度数据后,可以根据所述有效加速度数据得出用于表征用户行动步数的波形拐点曲线230,从波形拐点曲线230中可以得到波形的多个拐点,这些拐点即可以作为用户行动的有效数据拐点。

这样,根据数据传输帧率确定加速度计模长阈值,以对加速度数据进行筛选,可以实现通过数据传输帧率对加速度计模长阈值进行调整,以适应不同帧率下获取的加速度数据,并且在终端不同的工作状态导致获取数据时的帧率发生变化时,及时调整数据筛选的阈值,可以有效提高数据筛选精度,保证后续步数等计算的准确性。

s104:基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

该步骤中,通过确定出的有效数据拐点的拐点数量,就可以得出用户的行动步数,即用户的行动步数等于拐点数量。

示例行的,可以通过图2所示的示例中的波形拐点曲线230中的拐点数量,即可得出用户的行动步数。

本公开实施例提供的用户行为数据处理方法,虽然是通过web端为例进行说明的,但并不局限于此,在其他实施例中,还可以通过app进行使用,此时无需app去获取数据的时间戳,这样可以有效减少app的计算量,直接将得出的用户的行动步数提供给app,以进行后续的计算即可。

本公开实施例提供的用户行为数据处理方法,通过获取终端的加速度数据,以及获取所述加速度数据期间对应的数据传输帧率;对所述加速度数据进行低通滤波处理,得到处理后的有效加速度数据;基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点;基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

这样,通过对获取的加速度数据进行低通滤波处理,再通过获取加速度数据期间的数据传输帧率,对低通滤波处理后得到的有效加速度数据进行计算时所需的阈值进行调整,从而确定出用户的步数,滤波后的数据不仅满足后续使用要求的同时,还能够保证只占用很少的计算量,使算法能够在网页端运行,可以有效降低数据的滞后性,而且数据的筛选可以适应不同帧率的加速度数据,通过加速度数据即可有效对用户行走步数进行检测,有效提高检测准确率。

请参阅图3,图3为本公开实施例提供的另一种用户行为数据处理方法的流程图。如图3中所示,所述方法包括:

s301:当检测到目标网页在所述终端上加载完毕,并处于运行状态时,控制终端的加速度传感器采集所述终端的加速度数据。

示例性的,在具体使用场景中,例如用户需要进行运动信息的记录或者进行导航时,可以通过扫描二维码或者打开链接等方式,在web端打开相应的目标网页,此时,如果检测到目标网页在所述终端上加载完毕,并处于运行状态时,就可以控制终端的加速度传感器采集所述终端的加速度数据。

其中,由于终端是随着用户进行运动的,可以将终端的加速度数据认为是用户行动的加速度数据。

s302:获取终端的加速度数据,以及在获取所述加速度数据期间对应的数据传输帧率。

s303:对所述加速度数据进行低通滤波处理,得到处理后的有效加速度数据;

s304:基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点。

s305:基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

其中,步骤s302至步骤s305的描述可以参照步骤s101至步骤s104的描述,并且可以达到相同的技术效果和解决相同的技术问题,在此不做赘述。

在一些可能的实施例中,步骤s304包括:

s3041:确定所述有效加速度数据中的多个数据时间节点,和每个数据时间节点对应的加速度计模长。

该步骤中,可以通过所述有效加速度数据中每个数据所对应的采集时间戳,来确定多个数据时间节点,并且针对每个数据时间节点的加速度数据进行计算,得到每个数据时间节点对应的加速度计模长。

其中,所述数据时间节点,可以是目标网页发送的所述有效加速度数据时,所记录接收到对应接速度数据的接收时间,也可以是指采集所述有效加速度数据时数据采集时间。

s3042:根据每个数据时间节点的加速度计模长,确定表征用户行动的步数统计数组。

该步骤中,可以通过数组统计的方式,通过每个数据时间节点的加速度计模长对所述有效加速度数据中的每个数据进行计算,以得到表征用户行动的步数统计数组。

具体的,在确定表征用户行动的步数统计数组时,可以是通过计算所述多个数据时间节点中每相邻两个数据时间节点中的在后时间节点对应的加速度计模长,与在先时间节点对应的加速度计模长之间的差值,以进行数据统计,若所述差值大于或者等于第一比较阈值,可以将在后时间节点对应的加速度计模长记为在数组中的第一标记元素,若所述差值小于所述第一比较阈值,可以将在后时间节点对应的加速度计模长记为在数组中的第二标记元素,接着,按照每个第一标记元素对应的数据时间节点和每个第二标记元素对应的数据时间节点的先后顺序进行排序,即可得到包括多个第一标记元素和多个第二标记元素的表征用户行动的步数统计数组。

示例性的,以图2中的波形曲线220为例进行说明,波形曲线220由多个数据时间节点和对应的加速度计模长绘制而成,观察波形曲线可知,当曲线上升时,在后时间节点对应的新数据与在先时间节点对应的旧数据的差值为正数,而当曲线下降时差值为负数,为便于标记,可以对正数和负数分别记1和-1,第一比较阈值取0,这样即可得到表征用户行动的步数统计数组。

其中,为便于比较,本公开实施例中第一比较阈值可以取0,但并不局限于此,在其他公开实施例中,第一比较阈值还可以根据第一标记元素的数组元素值和第二标记元素的数组元素值进行取值。

s3043:从所述步数统计数组中确定出多个预选数据拐点。

该步骤中,在得到所述步数统计数组后,可以进一步对所述步数统计数组的标记元素进行筛选,从而得出筛选后的标记元素对应的数据时间节点,以得到少选后对应的多个预选数据拐点。

具体的,在一些可能的实施例中,确定多个预选数据拐点,可以是通过遍历所述步数统计数组,以对所述步数统计数组的标记元素进行比较,若相邻的两个标记元素中的在先标记元素与在后标记元素不同,且该在先标记元素为所述第一标记元素的情况下,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

示例性的,通过观察波形曲线可知,当曲线持续上升时,步数统计数组中的标记均为1,而当曲线持续下降时,步数统计数组中的标记均为-1,在得到包括一系列的包含交替存在的连续多个1和连续多个-1作为标记元素的步数统计数组后,例如(1,1…-1,-1…1,1…-1-1…),如果相邻的标记元素从1变为-1,或者相邻的标记元素从-1变为1时,即前后两个标记元素不同时,即可认为曲线出现了拐弯,进一步的通过观察波形曲线可知,相邻的标记元素从1变为-1,即从第一标记元素变为第二标记元素,在先标记元素为第一标记元素时,是波形从波峰拐向波谷,而相邻的标记元素从-1变为1,即从第二标记元素变为第一标记元素,在先标记元素为第二标记元素时,则是波形从波谷拐向波峰,因此,在标记元素从1变为-1时,可以将标记元素为1所对应的时间采集节点确定为预选数据拐点。

具体的,在一些可能的实施例中,确定多个预选数据拐点,还可以是通过计算所述步数统计数组中每相邻两个标记元素中的在先标记元素对应的数组元素值与在后标记元素对应的数组元素值之间的差值,若所述差值大于所述第一比较阈值,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

示例性的,通过观察波形曲线,并结合得到的所述步数统计数组可知,无论是曲线持续上升还是下降时,所述步数统计数组中的连续的标记元素对应的数组元素值均相同,例如均为1或者均为-1,因此,在得到所述步数统计数组后,可以使用将所述步数统计数组中相邻的两个标记元素对应的数组元素值进行计算,进一步的,如果相邻的标记元素从1变为-1,那么使用两者对应的数组元素值进行计算,即1-(-1)的结果为2,其大于所述第一比较阈值,这时即是波形从波峰拐向波谷,相反的如果相邻的标记元素从-1变为1,那么使用两者对应的数组元素值进行计算,即-1-1的结果为-2,这时即是波形从波谷拐向波峰,因此,可以将与该在先标记元素对应的时间采集节点,即将在先标记元素1所对应的时间采集节点确定为预选数据拐点。

相应的,本公开实施例是以在先标记元素对应的数组元素值与在后标记元素对应的数组元素值之间的差值为例进行统计,但并与局限于此,在其他实施例中,还可以是通过在后标记元素对应的数组元素值与在先标记元素对应的数组元素值之间的差值为例进行统计,相应的,此时得到的差值相应的设置于小于所述第一比较阈值即可,即如果差值是小于所述第一比较阈值的话,将与该在先标记元素对应的时间采集节点确定为预选数据拐点即可。

s3044:将所述多个预选数据拐点中,加速度计模长小于与所述数据传输帧率匹配的加速度计模长阈值的预选数据拐点删除,得到所述有效加速度数据中的多个有效数据拐点。

该步骤中,在得到所述多个预选数据拐点后,可以对所述多个预选数据拐点进行进一步筛选,将加速度计模长小于与所述数据传输帧率匹配的加速度计模长阈值的预选数据拐点删除,以将抖动数据去除,从而最终得到所述有效加速度数据中的多个有效数据拐点。

示例性的,如图2中波形曲线220的曲线段221所示,在加速度数据出现抖动后,相应的波形曲线也会出现抖动,如曲线段221中存在两个拐点,即对应有两个预选数据拐点,此时可以通过与所述数据传输帧率匹配的加速度计模长阈值,将小于所述加速度计模长阈值的拐点对应的预选数据拐点删除。

在一些可能的实施例中,所述方法还包括:

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔小于与所述数据传输帧率匹配的第一时长阈值,删除所述相邻的两个有效数据拐点中对应的加速度计模长小的有效数据拐点;将剩余的有效数据拐点确定为从所述有效加速度数据中确定出的多个有效数据拐点。

在进行加速度数据采集时,由于加速度传感器的抖动,导致数据抖动,可能会存在相邻的两个有效数据拐点相邻较近,但均大于所述加速度计模长阈值。

此时,在该步骤中,可以对确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔进行检测,如果存在时间间隔小于与所述数据传输帧率匹配的第一时长阈值的两个有效数据拐点,可以将对应的加速度计模长小的有效数据拐点删除。

示例性的,如图2中波形曲线220的曲线段222所示,在曲线段222中存在两个波形拐点,但两个波形拐点相距很近,即两者的时间间隔较小,小于与所述数据传输帧率匹配的第一时长阈值,此时,为了数据的准确性,可以将对应的加速度计模长小的有效数据拐点删除。

进一步的,若时间间隔小于与所述数据传输帧率匹配的第一时长阈值的两个有效数据拐点的加速度计模长相同,可以任意删除一个,留下另一个。

其中,与所述数据传输帧率匹配的第一时长阈值,可以根据数据处理精度等需求设置,也可以结合传输数据期间的不同帧率等因素,实时的通过计算等方式匹配得到的。

在一些可能的实施例中,所述方法还包括:

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔大于与所述数据传输帧率匹配的第二时长阈值,将所述加速度计模长阈值调小;若检测到该相邻的两个有效数据拐点之间存在对应的加速度计模长大于调小后的所述加速度计模长阈值的时间采集节点,将检测到的该时间采集节点确定为从所述有效加速度数据中确定的有效数据拐点。

进行加速度数据采集时,由于加速度传感器的漏采集,导致数据漏检,可能会存在较长的时间内没有检测到有效数据。

因此,在该步骤中,如果检测到相邻的两个有效数据拐点之间的时间间隔大于与所述数据传输帧率匹配的第二时长阈值的话,可以认为存在数据的漏检测,此时可以相应的将所述加速度计模长阈值调小,然后通过调小的所述加速度计模长阈值对时间间隔大于与所述数据传输帧率匹配的第二时长阈值的两个有效数据拐点之间的数据重新进行筛选,以找出对应的加速度计模长大于调小后的所述加速度计模长阈值的时间采集节点,将之确定为从所述有效加速度数据中确定的有效数据拐点。

在一些可能的实施例中,所述方法还包括:

确定所述多个有效数据拐点中对应的数据时间节点的时间顺序位于最后的至少两个有效数据拐点;基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点和加速度计模长,确定用户的当前步长和当前速度。

在具体的应用中,用户一般会需要知道当前的运动数据,例如需要知道用户当前的实时速度等。

因此,在该步骤中,可以使用所述多个有效数据拐点中对应的数据时间节点的时间顺序位于最后的至少两个有效数据拐点,所对应数据时间节点和加速度计模长,来计算用户的当前步长和当前速度。

具体的,确定用户的当前步长和当前速度,可以是基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点,确定所述用户的当前步频,然后根据所述当前步频,以及基于所述至少两个有效数据拐点中每个有效数据拐点的加速度计模长确定的模长方差,计算所述用户的当前步长,接着根据所述当前步长,和基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点确定的行动时间,计算所述用户的当前速度。

其中,所述至少两个有效数据拐点中每两个有效数据拐点的数据时间节点之间的时间差,可以认为是用户行动的周期,周期的倒数即可认为是用户迈步的当前步频。

示例性的,可以通过以下公式计算用户的步长:

a=a+b*b+c*c;

其中,a为用户的步长,b为用户的当前步频,c为基于所述至少两个有效数据拐点中每个有效数据拐点的加速度计模长确定的模长方差,a、b、c为计算系数。a、b、c可以是通过利用大数据,如用户的历史数据等,通过深度学习的方法训练得到的。

其中,得到用户的步长后,可以将步长认为是用户行走的距离,然后使用用户行走的时间,例如根据每个有效数据拐点的数据时间节点确定行动时间,即可计算用户的速度。

本公开实施例提供的用户行为数据处理方法,通过当检测到目标网页在所述终端上加载完毕,并处于运行状态时,控制终端的加速度传感器采集所述终端的加速度数据;获取终端的加速度数据,以及在获取所述加速度数据期间对应的数据传输帧率;对所述加速度数据进行低通滤波处理,得到处理后的有效加速度数据;基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点;基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

这样,通过控制终端采集加速度数据,对获取的加速度数据进行低通滤波处理,再通过获取加速度数据期间的数据传输帧率,对处理后得到的有效加速度数据进行计算时所需的阈值进行调整,从而确定出用户的步数,滤波后的数据不仅满足后续使用要求的同时,还能够保证只占用很少的计算量,使算法能够在网页端运行,可以有效降低数据的滞后性,而且数据的筛选可以适应不同帧率的加速度数据,通过加速度数据即可有效对用户行走步数进行检测,有效提高检测准确率。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一发明构思,本公开实施例中还提供了与上述的用户行为数据处理方法对应的用户行为数据处理装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述用户行为数据处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

请参阅图4至图7,图4为本公开实施例提供的用户行为数据处理装置的示意图之一,图5为本公开实施例提供的用户行为数据处理装置的示意图之二,图6为本公开实施例提供的用户行为数据处理装置的示意图之三,图7为本公开实施例提供的用户行为数据处理装置的示意图之四。如图4中所示,本公开实施例提供的用户行为数据处理装置400包括:

数据获取模块410,用于获取终端的加速度数据,以及在获取所述加速度数据期间对应的数据传输帧率。

数据滤波模块420,用于对所述加速度数据进行低通滤波处理,得到处理后的有效加速度数据;

第一拐点确定模块430,用于基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点。

步数确定模块440,用于基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

在一种可选的实施方式中,如图5中所示,所述用户行为数据处理装置400还包括:

数据采集模块450,用于当检测到目标网页在所述终端上加载完毕,并处于运行状态时,控制终端的加速度传感器采集所述终端的加速度数据。

在一种可选的实施方式中,所述第一拐点确定模块430具体用于:

确定所述有效加速度数据中的多个数据时间节点,和每个数据时间节点对应的加速度计模长;

根据每个数据时间节点的加速度计模长,确定表征用户行动的步数统计数组;

从所述步数统计数组中确定出多个预选数据拐点;

将所述多个预选数据拐点中,加速度计模长小于与所述数据传输帧率匹配的加速度计模长阈值的预选数据拐点删除,得到所述有效加速度数据中的多个有效数据拐点。

在一种可选的实施方式中,所述第一拐点确定模块430在用于根据每个数据时间节点的加速度计模长,确定表征用户行动的步数统计数组时,具体用于:

计算所述多个数据时间节点中每相邻两个数据时间节点中的在后时间节点对应的加速度计模长,与在先时间节点对应的加速度计模长之间的差值;

若所述差值大于或者等于第一比较阈值,将在后时间节点对应的加速度计模长记为在数组中的第一标记元素;

若所述差值小于所述第一比较阈值,将在后时间节点对应的加速度计模长记为在数组中的第二标记元素;

按照每个第一标记元素对应的数据时间节点和每个第二标记元素对应的数据时间节点的先后顺序进行排序,得到包括多个第一标记元素和多个第二标记元素的表征用户行动的步数统计数组。

在一种可选的实施方式中,所述第一拐点确定模块430在用于根据所述步数统计数组,确定出表征用户行动的多个预选数据拐点时,具体用于:

遍历所述步数统计数组,若相邻的两个标记元素中的在先标记元素与在后标记元素不同,且该在先标记元素为所述第一标记元素的情况下,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

在一种可选的实施方式中,所述第一拐点确定模块430在用于从所述步数统计数组中确定出多个预选数据拐点时,具体用于:

计算所述步数统计数组中每相邻两个标记元素中的在先标记元素对应的数组元素值与在后标记元素对应的数组元素值之间的差值;

若所述差值大于所述第一比较阈值,将与该在先标记元素对应的时间采集节点确定为预选数据拐点。

在一种可选的实施方式中,如图6中所示,所述用户行为数据处理装置400还包括拐点筛选模块460,所述拐点筛选模块460用于:

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔小于与所述数据传输帧率匹配的第一时长阈值,删除所述相邻的两个有效数据拐点中对应的加速度计模长小的有效数据拐点;将剩余的有效数据拐点确定为从所述有效加速度数据中确定出的多个有效数据拐点;和/或

若确定出的多个有效数据拐点中存在相邻的两个有效数据拐点之间的时间间隔大于与所述数据传输帧率匹配的第二时长阈值,将所述加速度计模长阈值调小;若检测到该相邻的两个有效数据拐点之间存在对应的加速度计模长大于调小后的所述加速度计模长阈值的时间采集节点,将检测到的该时间采集节点确定为从所述有效加速度数据中确定的有效数据拐点。

在一种可选的实施方式中,如图7中所示,所述用户行为数据处理装置400还包括:

第二拐点确定模块470,用于确定所述多个有效数据拐点中对应的数据时间节点的时间顺序位于最后的至少两个有效数据拐点;

行动统计模块480,用于基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点和加速度计模长,确定用户的当前步长和当前速度。

在一种可选的实施方式中,所述行动统计模块480具体用于:

基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点,确定所述用户的当前步频;

根据所述当前步频,以及基于所述至少两个有效数据拐点中每个有效数据拐点的加速度计模长确定的模长方差,计算所述用户的当前步长;

根据所述当前步长,和基于所述至少两个有效数据拐点中每个有效数据拐点的数据时间节点确定的行动时间,计算所述用户的当前速度。

本公开实施例提供的用户行为数据处理装置,通过获取终端的加速度数据,以及在获取所述加速度数据期间对应的数据传输帧率;对所述加速度数据进行低通滤波处理,得到处理后的有效加速度数据;基于与所述数据传输帧率匹配的加速度计模长阈值,从所述有效加速度数据中确定出多个有效数据拐点;基于得到的多个有效数据拐点的拐点数量,确定出用户的行动步数。

这样,可以对加速度数据进行低通滤波处理,再通过获取的加速度数据期间的数据传输帧率,对处理后的有效加速度数据进行计算时所需的阈值进行调整,从而确定出用户的步数,滤波后的数据不仅满足后续使用要求的同时,还能够保证只占用很少的计算量,使算法能够在网页端运行,可以有效降低数据的滞后性,而且数据的处理可以适应不同帧率的加速度数据,通过加速度数据即可有效对用户行走步数进行检测,有效提高检测准确率。

请参阅图8,图8为本公开实施例提供的一种计算机设备的示意图。如图8中所示,计算机设备800包括:处理器810、存储器820和总线830,所述存储器820存储有所述处理器810可执行的机器可读指令,当计算机设备800运行时,所述处理器810与所述存储器820之间通过总线830通信,所述机器可读指令被所述处理器810执行时执行上述的用户行为数据处理方法的步骤。

上述指令的具体执行过程可以参考本公开实施例中所述的用户行为数据处理方法的步骤,此处不再赘述。

本公开实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述方法实施例中所述的用户行为数据处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

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