WO2019047410A1 - 一种步数的统计方法及装置 - Google Patents

一种步数的统计方法及装置 Download PDF

Info

Publication number
WO2019047410A1
WO2019047410A1 PCT/CN2017/116405 CN2017116405W WO2019047410A1 WO 2019047410 A1 WO2019047410 A1 WO 2019047410A1 CN 2017116405 W CN2017116405 W CN 2017116405W WO 2019047410 A1 WO2019047410 A1 WO 2019047410A1
Authority
WO
WIPO (PCT)
Prior art keywords
acceleration
motion
preset
user
target
Prior art date
Application number
PCT/CN2017/116405
Other languages
English (en)
French (fr)
Inventor
覃大选
Original Assignee
上海斐讯数据通信技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 上海斐讯数据通信技术有限公司 filed Critical 上海斐讯数据通信技术有限公司
Publication of WO2019047410A1 publication Critical patent/WO2019047410A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C22/00Measuring distance traversed on the ground by vehicles, persons, animals or other moving solid bodies, e.g. using odometers, using pedometers
    • G01C22/006Pedometers

Definitions

  • the invention relates to the field of computers, in particular to a statistical method and device for the number of steps.
  • the GPS signal is used to measure the distance of the motion, so as to calculate the corresponding number of steps.
  • the similarity between the acceleration sequences generated by the continuous motion of the pedestrian is used to calculate the number of steps.
  • the statistical method of the first step often needs to add additional hardware facilities, and the accuracy of its GPS has a great influence on the final estimation result, and it cannot work on a device that does not support GPS.
  • the statistical method of the second step uses the correlation analysis algorithm, and the complexity is high.
  • the statistical method of the third step is different for different people, such as walking habits, running posture, standing up, body rotation and other factors, resulting in the threshold setting of the step counting algorithm based on peak wave valley detection is not very reasonable, This produces an error in the number of calculation steps.
  • the present invention provides a statistical method for the number of steps, comprising the steps of: S100 acquiring acceleration data of a user; S200 generating an acceleration curve according to the acceleration data, and obtaining a user acceleration period; S300, the user acceleration period and all preset acceleration periods Matching, matching to obtain a target preset acceleration period; S400 performing differential operation on the acceleration curve to obtain a target extreme point; S500, according to the target extreme point and the target preset acceleration period, the statistical differential value is equal to the preset
  • the number of values, the number of outputs is the number of statistical steps.
  • the step S100 includes the following steps: S010: collecting user motion information; the user motion information includes motion type information, and motion step information and motion time information corresponding to the motion type information; S020 according to the motion The motion step number information corresponding to the type information and the motion time information are calculated to obtain the preset acceleration period corresponding to the motion type information.
  • the step S200 includes the following steps: S210 performs a vector operation according to the acceleration data to obtain a combined motion acceleration; the acceleration data is a preset direction and an acceleration value corresponding to the preset direction; S220 is according to the combined motion The acceleration and the time corresponding to the combined motion acceleration generate an acceleration curve; S230 obtains the user acceleration period according to the acceleration curve; and the step S300 includes the step of: S310: matching the user acceleration period with all preset acceleration periods And determining whether the matching is successful; if yes, executing step S320; otherwise, performing step S330; S320 matching to obtain the target preset acceleration period, and performing step S400; S330 determining that the user has not performed any preset motion.
  • step S400 includes the following steps: S410: performing a differential operation on the generated acceleration curve to obtain a plurality of extreme points of the acceleration curve; S420 searching the target extremum among the plurality of extreme points Point; the target extreme point is the first extreme point on the acceleration curve.
  • step S500 includes the following steps: S510: calculating a differential value at each of the target preset acceleration periods according to the target extreme point as a starting point; and S520, the differential value is equal to the preset value. Quantity; S530 outputs the number as a statistical step.
  • the present invention also provides a statistical device for the number of steps, comprising: an acquisition module for acquiring acceleration data of a user; a first operation module, generating an acceleration curve according to the acceleration data, and obtaining a user acceleration period; and a matching module, the user
  • the acceleration period is matched with all preset acceleration periods to obtain a target preset acceleration period;
  • the second operation module performs differential operation on the acceleration curve to obtain a target extreme point;
  • a statistical module according to the target extreme point and The target preset acceleration period, the statistical differential value is equal to the number of preset values, and the quantity is output as a statistical step number.
  • the method further includes: an acquisition module, collecting user motion information; the user motion information includes motion type information, and motion step number information and motion time information corresponding to the motion type information; and a third operation module, according to the The motion step number information corresponding to the motion type information collected by the acquisition module and the motion time information are calculated to obtain the preset acceleration period corresponding to the motion type information.
  • the first operation module includes: a first operation unit, performing vector operation according to the acceleration data acquired by the acquisition module to obtain a combined motion acceleration; the acceleration data is a preset direction and the preset direction Corresponding acceleration value; generating unit, generating an acceleration curve according to the combined motion acceleration calculated by the first operation unit and the time corresponding to the combined motion acceleration; and the second operation unit, according to the generated by the generating unit
  • the acceleration curve is obtained by the user acceleration cycle;
  • the matching module includes: a matching unit that matches the user acceleration period with all preset acceleration periods to determine whether the matching is successful, and if so, the matching obtains the target preset acceleration period And a determining unit that determines that the user has not performed any preset motion when the matching unit determines that the user acceleration period fails to match all the preset acceleration periods.
  • the second operation module includes: a third operation unit that performs differential operation on the generated acceleration curve to obtain a plurality of extreme points of the acceleration curve; and a search unit at the plurality of extreme points Searching for the target extremum point; the target extremum point is the first extreme point on the acceleration curve.
  • the statistic module includes: a fourth operation unit, calculating a differential value at each of the target preset acceleration periods according to the target extreme point as a starting point; and a statistical unit, statistic that the differential value is equal to The number of preset values; the output unit, which outputs the number of statistical steps.
  • the present invention solves the inaccuracy of the number of steps calculated due to differences in walking habits, running postures, and the like of different people.
  • the present invention simplifies the algorithm of step count statistics by counting the number of differential values equal to the preset value, which is faster and more accurate.
  • the present invention makes full use of the periodicity of a person during exercise, and can more accurately calculate the number of steps in the exercise process.
  • FIG. 1 is a flow chart showing an embodiment of a statistical method of a step number of the present invention
  • FIG. 2 is a flow chart showing another embodiment of a statistical method of the number of steps of the present invention.
  • FIG. 3 is a schematic diagram of an acceleration curve of a statistical method of a step number of the present invention.
  • FIG. 4 is a schematic structural view of an embodiment of a statistical device for a step of the present invention.
  • FIG. 5 is a schematic structural view of another embodiment of a statistical device for a step of the present invention.
  • FIG. 6 is a flow chart showing an example of a statistical method of a step number of the present invention.
  • FIG. 7 is a view showing an example of a direction of a triaxial acceleration sensor during motion of an example of a statistical method of the number of steps;
  • Fig. 8 is a graph showing the change of the combined motion acceleration during the motion of an example of the statistical method of the step number of the present invention.
  • S100 acquires acceleration data of the user
  • S200 generates an acceleration curve according to the acceleration data, and obtains a user acceleration period
  • S300 matches the user acceleration period with all preset acceleration periods, and obtains a target preset acceleration period by matching
  • S400 performs differential operation on the acceleration curve to obtain a target extreme point
  • the statistical differential value is equal to the number of preset values, and the quantity is output as a statistical step number.
  • step counting is widely used in many wearable devices and mobile terminals.
  • most of the steps are measured by GPS signals to measure the distance of motion, and then the number of steps is reversed.
  • This method is very effective, but it does not work indoors or on devices without GPS signals.
  • GPS accuracy also has a large interference with the results.
  • the invention acquires the acceleration generated in three directions, and generally collects acceleration data in three directions of the user through a three-axis sensor, fully utilizes the periodicity of the acceleration curve during the motion, and obtains the user acceleration period, and all presets.
  • the acceleration period is matched to obtain the target preset acceleration period, and then the acceleration curve is differentiated to find the target extreme point, and the number of steps in the motion process is calculated according to the target extreme point and the target preset acceleration period, thereby further improving the step counting. Precision.
  • the invention fully utilizes the periodicity of the person during the movement process, and can more accurately calculate the number of steps in the movement process. It solves the difference in the walking steps and the running posture due to different people, resulting in inaccurate steps.
  • the statistical differential value is equal to the preset value, which simplifies the algorithm of step counting, which is faster and more accurate.
  • the user motion information includes motion type information, and motion step number information and motion time information corresponding to the motion type information;
  • the preset preset acceleration period T 6 n 6 /t 6 .
  • the invention establishes different preset acceleration periods for each user, so that the step number recording misjudgment caused by the difference in the magnitude of the motion amplitude of different users is reduced, and the accuracy of the step counting is improved.
  • S100 acquires acceleration data of the user
  • the step S200 includes the following steps:
  • S210 performs a vector operation according to the acceleration data to obtain a combined motion acceleration;
  • the acceleration data is a preset direction and an acceleration value corresponding to the preset direction;
  • S220 generates an acceleration curve according to the combined motion acceleration and the time corresponding to the combined motion acceleration
  • S230 obtains the user acceleration period according to the acceleration curve
  • the preset direction is the acceleration data of the three directions.
  • the acceleration data of the user is acquired by the acceleration sensor, and the acceleration data of the three directions can also be obtained by using the plurality of acceleration sensors, as long as the three directions can be acquired.
  • the scheme of the acceleration data belongs to the protection range of the present invention, and the three directions include the X-axis direction, the Y-axis direction, and the Z-axis direction. It is assumed that the X-axis direction is the horizontal front-rear direction, the Y-axis direction is the horizontal left-right direction, the Z-axis direction is the vertical direction, and the vertical direction is the forward direction.
  • the accelerations in the vertical direction and the horizontal direction exhibit periodic changes, that is, the user moves in the foot, due to the single foot
  • the acceleration in the vertical direction tends to increase in the positive direction.
  • the maximum acceleration value it tends to decrease in the positive direction, and decreases to zero in the acceleration value.
  • the vertical direction acceleration is increasing in the reverse direction because the center of gravity moves down until the two feet touch the ground. After increasing to the maximum acceleration value, the trend is reversed downward, and the acceleration value is reduced to zero. .
  • the present invention can obtain the user acceleration period of the user motion according to the acceleration data, and then the acceleration cycle of the user. Matching with all preset acceleration periods to obtain a target preset acceleration period, and generating an acceleration curve according to the combined motion acceleration and the time corresponding to the combined motion acceleration. As shown in FIG.
  • the acceleration curve is generated according to the combined motion acceleration and the time corresponding to the combined motion acceleration, wherein the A axis is the combined motion acceleration, the t axis is the time corresponding to the combined motion acceleration, and the point a is before the user lifts the foot.
  • the acceleration value that is, the combined motion acceleration of the acceleration in the vertical direction and the horizontal direction is zero. From the point a, the user's combined motion acceleration is vertically upward and the horizontal direction is forward, and the point b is the maximum value of the combined motion acceleration of the user's foot.
  • the point c is the acceleration of the combined motion when the user lifts the foot to the highest point.
  • the user starts to put the foot, and in the process of putting the foot, the acceleration is vertically downward and the horizontal is decreasing forward, and the d point is for the user to put The maximum value of the combined motion acceleration of the foot, and the point e is zero when the user puts the foot to the ground. And so on, get f, g, h, i.
  • the invention eliminates the difference of walking habits and running postures of different people, and is unreasonable in setting the threshold value, resulting in inaccurate calculation steps, and the invention has accurate step counting, small calculation amount, and improves user experience. .
  • the step S300 includes the following steps:
  • step S310 the user acceleration period is matched with all the preset acceleration periods to determine whether the matching is successful; if yes, step S320 is performed; otherwise, step S330 is performed;
  • step S320 is matched to obtain the target preset acceleration period, and step S400 is performed;
  • the step S400 includes the following steps:
  • the target extremum point is a first extreme point on the acceleration curve
  • the generated acceleration curve L in FIG. 3 is subjected to differential operation, that is, sin(t) is differentiated to obtain cos(t), and the differential curve L′ after the differential operation corresponding to the acceleration curve L is obtained, so the differential curve L is obtained.
  • the acceleration curve omits the change of the combined motion acceleration at the subsequent time
  • the differential curve also omits the subsequent differential value in time, and will not be described here.
  • the target extremum point is searched for the b point on the differential curve L'.
  • the acceleration curve is symmetric with the acceleration curve L in FIG. 3, and will not be described in detail herein.
  • the corresponding differential curve is also symmetrical with the differential curve L' in FIG. 3, and will not be described in detail herein.
  • the step S500 includes the following steps:
  • S520 calculates that the differential value is equal to the quantity of the preset value
  • S530 outputs the number as a statistical step number.
  • each b+ is performed in this time range.
  • the differential value of m ⁇ T k is determined whether the differential value of each b+m ⁇ Tk is equal to a preset value, that is, whether the differential value of each b+m ⁇ Tk is equal to zero, so that the statistical differential value is equal to zero, thereby obtaining The number of steps in the exercise. For example, assuming that the point e in the acceleration curve L in FIG.
  • the slow walking period T 2 3 seconds
  • fast walking period T 3 0.5 seconds
  • normal running period T 4 0.5 seconds
  • jogging period T 5 0.3 seconds
  • fast running period T 6 0.1
  • the invention fully utilizes the periodicity of the person during the movement process, and can more accurately calculate the number of steps in the movement process. Compared with the step counting algorithm detected by the peak wave trough, the differences in walking habits and running postures due to different people are excluded, and the threshold setting is unreasonable, resulting in inaccurate calculation steps, and the present invention is accurate in steps. The amount of calculation is small.
  • the present invention provides an embodiment of a statistical device for the number of steps, including:
  • a first operation module generating an acceleration curve according to the acceleration data, and obtaining a user acceleration period
  • Matching module matching the user acceleration period with all preset acceleration periods, and matching to obtain a target preset acceleration period
  • a second operation module performing differential operation on the acceleration curve to obtain a target extremum point
  • the statistics module outputs a statistical value equal to the preset value according to the target extreme point and the target preset acceleration period, and outputs the quantity as a statistical step.
  • the threshold setting of the step counting algorithm based on the peak-to-valley detection is not very reasonable due to differences in walking habits, running postures, standing ups, and body rotations for different people. This produces an error in the number of calculation steps.
  • the invention acquires the acceleration generated in three directions, and generally collects acceleration data in three directions of the user through a three-axis sensor, fully utilizes the periodicity of the acceleration curve during the motion, and obtains the user acceleration period, and all presets.
  • the acceleration period is matched to obtain the target preset acceleration period, and then the acceleration curve is differentiated to find the target extreme point, and the number of steps in the motion process is calculated according to the target extreme point and the target preset acceleration period, thereby further improving the step counting. Precision.
  • the statistical differential value is equal to the preset value, which simplifies the algorithm of step counting, which is faster and more accurate.
  • the present invention provides another embodiment of a statistical device for the number of steps.
  • the other parts of the embodiment are the same as the previous embodiment, and include: an acquisition module, a first operation module, a matching module, and a second Operation module and statistics module;
  • Collecting module collecting user motion information;
  • the user motion information includes motion type information, and motion step number information and motion time information corresponding to the motion type information;
  • the third operation module performs an operation according to the motion step number information and the motion time information corresponding to the motion type information collected by the collection module, to obtain the preset acceleration period corresponding to the motion type information.
  • the training of the preset exercise such as normal walking, slow walking, fast walking, normal running, jogging, fast running, and the like
  • the training of the preset movements, and the number of motion steps for recording various preset movements are respectively n1.
  • the invention establishes different preset acceleration periods for each user, so that the step number recording is misjudged due to the difference in the magnitude of the motion amplitude of different users, and the step of step counting is improved. Exact.
  • the first operation module includes:
  • a first operation unit performs a vector operation according to the acceleration data acquired by the acquisition module to obtain a combined motion acceleration;
  • the acceleration data is a preset direction and an acceleration value corresponding to the preset direction;
  • a generating unit generating an acceleration curve according to the combined motion acceleration calculated by the first computing unit and the time corresponding to the combined motion acceleration
  • the second operation unit obtains the user acceleration period according to the acceleration curve generated by the generating unit.
  • the preset direction is the acceleration data of the three directions.
  • the acceleration data of the user is acquired by the acceleration sensor, and the acceleration data of the three directions can also be obtained by using the plurality of acceleration sensors, as long as the three directions can be acquired.
  • the scheme of the acceleration data belongs to the protection range of the present invention, and the three directions include the X-axis direction, the Y-axis direction, and the Z-axis direction. It is assumed that the X-axis direction is the horizontal front-rear direction, the Y-axis direction is the horizontal left-right direction, the Z-axis direction is the vertical direction, and the vertical direction is the forward direction.
  • the accelerations in the vertical direction and the horizontal direction exhibit periodic changes, that is, the user moves in the foot, due to the single foot
  • the acceleration in the vertical direction tends to increase in the positive direction.
  • the maximum acceleration value it tends to decrease in the positive direction, and decreases to zero in the acceleration value.
  • the vertical direction acceleration is increasing in the reverse direction because the center of gravity moves down until the two feet touch the ground. After increasing to the maximum acceleration value, the trend is reversed downward, and the acceleration value is reduced to zero. .
  • the present invention can obtain the user acceleration period of the user motion according to the acceleration data, and then the acceleration cycle of the user. Matching with all preset acceleration periods to obtain a target preset acceleration period, and generating an acceleration curve according to the combined motion acceleration and the time corresponding to the combined motion acceleration. As shown in FIG.
  • the acceleration curve is generated according to the combined motion acceleration and the time corresponding to the combined motion acceleration, wherein the A axis is the combined motion acceleration, the t axis is the time corresponding to the combined motion acceleration, and the point a is before the user lifts the foot.
  • the acceleration value that is, the combined motion acceleration of the acceleration in the vertical direction and the horizontal direction is zero. From the point a, the user's combined motion acceleration is vertically upward and the horizontal direction is forward, and the point b is the maximum value of the combined motion acceleration of the user's foot.
  • the point c is the acceleration of the combined motion when the user lifts the foot to the highest point.
  • the user starts to put the foot, and in the process of putting the foot, the acceleration is vertically downward and the horizontal is decreasing forward, and the d point is for the user to put The maximum value of the combined motion acceleration of the foot, and the point e is zero when the user puts the foot to the ground. And so on, get f, g, h, i.
  • the invention eliminates the difference of walking habits and running postures of different people, and is unreasonable in setting the threshold value, resulting in inaccurate calculation steps, and the invention has accurate step counting, small calculation amount, and improves user experience. .
  • the matching module includes:
  • the matching unit matches the user acceleration period with all preset acceleration periods to determine whether the matching is successful, and if so, the matching obtains the target preset acceleration period;
  • the determining unit determines that the user does not perform any preset motion when the matching unit determines that the user acceleration period fails to match all the preset acceleration periods.
  • the second operation module includes:
  • a third operation unit performing differential operation on the generated acceleration curve to obtain a plurality of extreme points of the acceleration curve
  • a search unit that searches for the target extremum point among the plurality of extreme points; the target extremum point is a first extreme point on the acceleration curve.
  • the generated acceleration curve L in FIG. 3 is subjected to differential operation, that is, sin(t) is differentiated to obtain cos(t), and the differential curve L′ after the differential operation corresponding to the acceleration curve L is obtained, so the differential curve L is obtained.
  • the acceleration curve omits the change of the combined motion acceleration at the subsequent time
  • the differential curve also omits the subsequent differential value in time, and will not be described here.
  • the target extremum point is searched for the b point on the differential curve L'.
  • the acceleration curve is symmetric with the acceleration curve L in FIG. 3, and will not be described in detail herein.
  • the corresponding differential curve is also symmetrical with the differential curve L' in FIG. 3, and will not be described in detail herein.
  • the statistics module includes:
  • a fourth operation unit calculating a differential value at each of the target preset acceleration periods according to the target extreme point as a starting point
  • the output unit outputs the number as a statistical step.
  • each b+ is performed in this time range.
  • the differential value of m ⁇ T k is determined whether the differential value of each b+m ⁇ Tk is equal to a preset value, that is, whether the differential value of each b+m ⁇ Tk is equal to zero, so that the statistical differential value is equal to zero, thereby obtaining The number of steps in the exercise. For example, assuming that the point e in the acceleration curve L in FIG.
  • the slow walking period T 2 3 seconds
  • fast walking period T 3 0.5 seconds
  • normal running period T 4 0.5 seconds
  • jogging period T 5 0.3 seconds
  • fast running period T 6 0.1
  • the invention fully utilizes the periodicity of the person during the movement process, and can more accurately calculate the number of steps in the movement process. Compared with the step counting algorithm detected by the peak wave trough, the differences in walking habits and running postures due to different people are excluded, and the threshold setting is unreasonable, resulting in inaccurate calculation steps, and the present invention is accurate in steps. The amount of calculation is small.
  • the three-axis accelerometer has the characteristics of small size and light weight, can measure space acceleration, and can comprehensively and accurately reflect the motion properties of objects, and has been widely used in aerospace, robotics, automobiles and medicine.
  • the acceleration of the three dimensions in the space is detected by a three-axis acceleration sensor.
  • the first algorithm is to set the threshold, filter, peak and valley detection to calculate the number of steps to walk.
  • the second algorithm is a correlation analysis algorithm that uses the similarity between acceleration sequences generated by continuous motion of pedestrians to calculate the number of steps.
  • the implementation of the correlation analysis algorithm has a high complexity. Because people are walking, jogging, running, etc., their acceleration and time are roughly sinusoidal in certain directions. Therefore, by setting the threshold, the peak value or the trough value is used to detect the number of motion steps. Due to the acceleration that a person produces during exercise, its relationship with time is approximately a sinusoid.
  • the invention firstly exercises the preset motion for the individual, obtains the corresponding preset acceleration period, obtains the acceleration generated in the preset direction through the three-axis acceleration sensor, and synthesizes into a combined motion acceleration A, making full use of the motion process.
  • the period of the acceleration curve A is obtained, and the period of the combined motion acceleration A is obtained, and matched with the preset acceleration period; then the combined motion acceleration A is differentiated to find the first extreme point, and the next target preset acceleration period is determined.
  • the differential value is 0, to calculate the corresponding number of steps in the motion process, further improve the accuracy of the step.
  • the specific step of the present invention is shown in Figure 5:
  • preset exercise training such as walking, jogging, running, etc.
  • preset acceleration periods T1, T2, T3, which are used to match each person's motion characteristics
  • step S33 determining whether T is equal to T1; if yes, obtaining a target preset acceleration period is T1, and performing step S4; Then, return to step S2;
  • step S51 using the target preset acceleration period T1, determining whether the differential at the preset acceleration period of the next preset motion is 0, if it is 0, the step is +1 step, continuing to step 51; otherwise, returning to step 3;
  • step S52 using the target preset acceleration period T2, determining whether the differential at the preset acceleration period of the next preset motion is 0, if it is 0, the step is +1 step, continuing to step 52; otherwise, returning to step 3;
  • the combined motion acceleration A is approximately a sine wave, and three preset acceleration periods are plotted on FIG. 7 for convenience of description.
  • T the preset acceleration periods
  • T3 the preset acceleration periods
  • S31, S32, and S33 of FIG. 5 are in no order.
  • the matching judgment is not matched with all the preset acceleration periods, then the person is considered to have no motion, so the number of motion steps If it does not increase, then return to step S2.
  • S4 is performed, that is, the obtained combined motion acceleration A is differentiated, and the first extreme point A'(t1) is found, and t1 is horizontal.
  • the coordinate of the axis time; the coordinates of the horizontal axis time of the first extreme point obtained by the same T2 and T3 are t2 and t3.
  • the invention aims at each person, performs the training of the preset motion, obtains the corresponding period, and fully utilizes the periodicity of the combined motion acceleration A, performs differential operation on A, finds the first extreme point, and judges the next target pre- It is determined whether the differential value at the acceleration period is 0, to calculate the corresponding number of steps, and further improve the accuracy of the step.
  • the invention fully utilizes the periodicity of the person during the movement process, and can more accurately calculate the number of steps in the movement process. Compared with a step-by-step algorithm based on peak-to-valley detection, it is excluded that the difference in threshold setting is unreasonable due to differences in walking habits and running postures of different people, resulting in inaccurate calculation steps.
  • the acquired acceleration curve can be smoothed, and the curve smoothing method is numerous.
  • the method of obtaining the period T of the motion acceleration A may be any existing method and can be accurately obtained.
  • the matching of the periods, that is, T is considered to be matched within the tolerance range allowed by each of T1, T2, and T3.
  • the differential value at the next preset motion is close to the preset value such as zero, and the differential value here is also considered to be the preset value.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)

Abstract

本发明提供了一种步数的统计方法及装置,其方法包括:S100获取用户的加速度数据;S200根据所述加速度数据生成加速度曲线,并得到用户加速度周期;S300将所述用户加速度周期与所有预设加速度周期进行匹配,匹配得到目标预设加速度周期;S400将所述加速度曲线进行微分运算,得到目标极值点;S500根据所述目标极值点以及所述目标预设加速度周期,统计微分值等于预设值的数量,输出所述数量为统计步数。本发明充分利用人在运动过程中的周期性,能更精确得计算出运动过程中的步数。

Description

一种步数的统计方法及装置 技术领域
本发明涉及计算机领域,尤指一种步数的统计方法及装置。
背景技术
随着科学技术的飞速发展,人们生活水平的不断提高,人们对自身的健康关注度也随之增加。目前,大多数人通过慢跑、快走(散步)、快跑等单一方式或相组合的方式进行体育锻炼,来达到减肥、塑形和增肌的目标。为了帮助人们更好地了解锻炼的情况,从而科学得进行锻炼指导与规划。如何来精确得获得运动过程的步数,是作为分析运动的一项关键数据。
现有的大多步数的统计方法,一是通过GPS信号来测算运动的距离,以此来推算出相应的步数。二是通过相关性分析算法,利用行人连续运动产生的加速度序列之间的相似性来进行步数的计算。三是由于人在行走、慢跑、快跑等运动过程中,其在某些特定方向上,产生的加速度与时间大致为一个正弦曲线,设置阈值,经过滤波,波峰和波谷的检测,来计算行走的步数。
其中,第一种步数的统计方法,往往需要添加额外的硬件设施,其GPS的精度对最终的推算结果影响较大,且无法在不支持GPS的设备上工作。第二种步数的统计方法利用相关性分析算法,复杂度较高。第三种步数的统计方法,针对不同的人,其走路习惯、跑步的姿势、起立坐下、身体转动等因素的差异,导致基于波峰波谷检测的计步算法的阈值设定不是很合理,从而产生计算步数上的误差。
发明内容
本发明的目的是提供一种步数的统计方法及装置,实现提升计步的精确度。
本发明提供的技术方案如下:
本发明提供一种步数的统计方法,包括步骤:S100获取用户的加速度数据;S200根据所述加速度数据生成加速度曲线,并得到用户加速度周期;S300将所述用户加速度周期与所有预设加速度周期进行匹配,匹配得到目标预设加速度周期;S400将所述加速度曲线进行微分运算,得到目标极值点;S500根据所述目标极值点以及所述目标预设加速度周期,统计微分值等于预设值的数量,输出所述数量为统计步数。
进一步的,所述步骤S100之前包括步骤:S010采集用户运动信息;所述用户运动信息包括运动类型信息,以及对应于所述运动类型信息的运动步数信息和运动时间信息;S020根据所述运动类型信息对应的所述运动步数信息和所述运动时间信息进行运算,得到对应于所述运动类型信息的所述预设加速度周期。
进一步的,所述步骤S200包括步骤:S210根据所述加速度数据进行矢量运算,得到合运动加速度;所述加速度数据为预设方向以及所述预设方向对应的加速度值;S220根据所述合运动加速度以及所述合运动加速度对应的时间生成加速度曲线;S230根据所述加速度曲线,得到所述用户加速度周期;所述步骤S300包括步骤:S310将所述用户加速度周期与所有预设加速度周期进行匹配,判断是否匹配成功;若是,执行步骤S320;否则,执行步骤S330;S320匹配得到所述目标预设加速度周期,并执行步骤S400;S330判定用户未进行任何预设运动。
进一步的,所述步骤S400包括步骤:S410将生成的所述加速度曲线进行微分运算,得到所述加速度曲线的多个极值点;S420在所述多个极值点中搜索所述目标极值点;所述目标极值点为所述加速度曲线上的第一个极值点。
进一步的,所述步骤S500包括步骤:S510根据所述目标极值点为起始点,运算每个所述目标预设加速度周期处的微分值;S520统计所述微分值等于所述预设值的数量;S530输出所述数量为统计步数。
本发明还提供一种步数的统计装置,包括:获取模块,获取用户的加速度数据;第一运算模块,根据所述加速度数据生成加速度曲线,并得到用户加速度周期;匹配模块,将所述用户加速度周期与所有预设加速度周期进行匹配,匹配得到目标预设加速度周期;第二运算模块,将所述加速度曲线进行微分运算,得到目标极值点;统计模块,根据所述目标极值点以及所述目标预设加速度周期,统计微分值等于预设值的数量,输出所述数量为统计步数。
进一步的,还包括:采集模块,采集用户运动信息;所述用户运动信息包括运动类型信息,以及对应于所述运动类型信息的运动步数信息和运动时间信息;第三运算模块,根据所述采集模块采集的所述运动类型信息对应的所述运动步数信息和所述运动时间信息进行运算,得到对应于所述运动类型信息的所述预设加速度周期。
进一步的,所述第一运算模块包括:第一运算单元,根据所述获取模块获取的所述加速度数据进行矢量运算,得到合运动加速度;所述加速度数据为预设方向以及所述预设方向对应的加速度值;生成单元,根据所述第一运算单元运算得到的所述合运动加速度以及所述合运动加速度对应的时间生成加速度曲线;第二运算单元,根据所述生成单元生成的所述加速度曲线,得到所述用户加速度周期;所述匹配模块包括:匹配单元,将所述用户加速度周期与所有预设加速度周期进行匹配,判断是否匹配成功,若是,匹配得到所述目标预设加速度周期;判定单元,当所述匹配单元判断所述用户加速度周期与所有预设加速度周期匹配失败时,判定用户未进行任何预设运动。
进一步的,所述第二运算模块包括:第三运算单元,将生成的所述加速度曲线进行微分运算,得到所述加速度曲线的多个极值点;搜索单元,在所述多个极值点中搜索所述目标极值点;所述目标极值点为所述加速度曲线上的第一个极值点。
进一步的,所述统计模块包括:第四运算单元,根据所述目标极值点为起始点,运算每个所述目标预设加速度周期处的微分值;统计单元,统计所述微分值等于所述预设值的数量;输出单元,输出所述数量为统计步数。
通过本发明提供的一种步数的统计方法及装置,能够带来以下至少一种有益效果:
1)本发明解决了由于不同的人,其行走习惯、跑步的姿势等差异,导致计算的步数不准确。
2)本发明通过统计微分值等于预设值的数量,简化了步数统计的算法,更加快速准确。
3)本发明充分利用人在运动过程中的周期性,能更精确得计算出运动过程中的步数。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对一种步数的统计方法及装置的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1是本发明一种步数的统计方法的一个实施例的流程图;
图2是本发明一种步数的统计方法的另一个实施例的流程图;
图3是本发明一种步数的统计方法的加速度曲线的示意图;
图4是本发明一种步数的统计装置的一个实施例的结构示意图;
图5是本发明一种步数的统计装置的另一个实施例的结构示意图;
图6是本发明一种步数的统计方法的一个实例的流程图;
图7是本发明一种步数的统计方法的一个实例的运动过程中的三轴加速度传感器方向的示例图;
图8是本发明一种步数的统计方法的一个实例的运动过程中合运动加速度变化图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
图1是本发明一种步数的统计方法的一个实施例,包括:
S100获取用户的加速度数据;
S200根据所述加速度数据生成加速度曲线,并得到用户加速度周期;
S300将所述用户加速度周期与所有预设加速度周期进行匹配,匹配得到目标预设加速度周期;
S400将所述加速度曲线进行微分运算,得到目标极值点;
S500根据所述目标极值点以及所述目标预设加速度周期,统计微分值等于预设值的数量,输出所述数量为统计步数。
具体的,现如今,越来越多的用户开始注重自身的日常锻炼,计步作为一种有效记录监控锻炼的监控手段,被广泛的应用在许许多多的可穿戴设备,移动终端中。目前,大部分的计步都是通过GPS信号来测算运动距离,再反推运动步数实现的。这种方法很是有效,但在室内或没有GPS信号的设备上无法工作。同时,GPS精度对结果的干扰也比较大。另外还有的计步是通过检测波峰和波谷,检测到连续两个波峰之间有一个波谷(或者连续两个波谷之间有一个波峰)时,记为一步。而由于针对不同的人,其走路习惯、跑步的姿势、起立坐下、身体转动等因素的差异,导致基于波峰波谷检测的计步算法的阈值设定不是很合理,从而产生计算步数上的误差。本发明获取三个方向上产生的加速度,通常通过三轴传感器进行采集用户的三个方向上的加速度数据,充分利用运动过程中的加速度曲线的周期性,求出用户加速度周期,与所有预设加速度周期进行匹配得到目标预设加速度周期,然后对加速度曲线进行微分找出目标极值点,根据目标极值点以及目标预设加速度周期来推算统计出运动过程中步数,进一步提高计步的精度。本发明充分利用人在运动过程中的周期性,能更精确得计算出运动过程中的步数。解决了由于不同的人,其行走习惯、跑步的姿势等差异,导致计算的步数不准确,另外,统计微分值等于预设值的数量,简化了步数统计的算法,更加快速准确。
图2是本发明一种步数的统计方法的另一个实施例,包括:
S010采集用户运动信息;所述用户运动信息包括运动类型信息,以及对应于所述运动类型信息的运动步数信息和运动时间信息;
S020根据所述运动类型信息对应的所述运动步数信息和所述运动时间信息进行运算,得到对应于所述运动类型信息的所述预设加速度周期;
具体的,采集用户运动信息,将用户运动信息中的运动类型信息对应的运动步数信息和运动时间信息进行运算,得到对应于运动类型信息的预设加速度周期,Tk=nk/tk。例如针对每个用户,进行预设运动的训练,比如正常行走、慢走,快走,正常跑步、慢跑、快跑等等预设运动的训练,记录各种预设运动的运动步数分别为n1、n2、n3、n4、n5、n6,运动时间分别为t1、t2、t3、t4、t5、t6,那么正常行走对应的预设加速度周期T1=n1/t1,以此类推依次得到慢走对应的预设加速度周期T2=n2/t2,快走对应的预设加速度周期T3=n3/t3,正常跑步对应的预设加速度周期T4=n4/t4,慢跑对应的预设加速度周期T5=n5/t5,快跑对应的预设加速度周期T6=n6/t6。本发明针对每个用户建立不同的预设加速度周期,这样减少因为不同用户的运动幅度的大小不同导致的步数记录误判,提升计步的准确度。
S100获取用户的加速度数据;
优选的,所述步骤S200包括步骤:
S210根据所述加速度数据进行矢量运算,得到合运动加速度;所述加速度数据为预设方向以及所述预设方向对应的加速度值;
S220根据所述合运动加速度以及所述合运动加速度对应的时间生成加速度曲线;
S230根据所述加速度曲线,得到所述用户加速度周期;
具体的,预设方向是三个方向的加速度数据,本实施例中通过加速度传感器获取用户的加速度数据,也可以通过多个加速度传感器获三个方向的加速度数据,只要是能够获取三个方向的加速度数据的方案均属于本发明的保护范围,三个方向包括X轴方向,Y轴方向和Z轴方向。假设X轴方向为水平前后方向,Y轴方向为水平左右方向,Z轴方向为垂直方向,垂直方向向上为正向。那么由于用户在水平步行运动的过程中,垂直方向和水平方向(水平前后方向以及水平左右方向)两个方向的加速度呈现周期性的变化,即用户在步行抬脚的动作中,由于单只脚触地重心向上,垂直方向加速度是呈正向递增的趋势,递增至最大加速度值后呈正向递减的趋势,递减至加速度值为零。之后用户继续步行放脚的动作中,由于重心下移直至两脚触地,垂直方向加速度是呈反向递增的趋势,递增至最大加速度值后成反向递减的趋势,递减至加速度值为零。另外用户在步行抬脚的动作中,水平方向的加速度在收脚时减小,在迈步时增加。因此,用户步行时的垂直加速度和水平加速度的变化规律是一个周期性的过程,所以本发明获取到用户的加速度数据后,根据加速度数据能够得到用户运动的用户加速度周期,然后将用户的加速度周期与所有的预设加速度周期进行匹配得到目标预设加速度周期,根据合运动加速度以及合运动加速度对应的时间生成加速度曲线。如图3所示,为根据合运动加速度以及合运动加速度对应的时间生成的加速度曲线,其中,A轴为合运动加速度,t轴为合运动加速度对应的时间,a点为用户抬脚之前的加速度值,即其垂直方向和水平方向的加速度的合运动加速度为零,从a点开始用户的合运动加速度为垂直向上并且水平向前递增,b点为用户抬脚的合运动加速度的最大值,c点为用户抬脚至最高点的时候的合运动加速度为零,从c点开始用户开始放脚,并且放脚过程中合加速度为垂直向下并且水平向前递减,d点为用户放脚的合运动加速度的最大值,e点为用户放脚至地面的时候的合运动加速度为零。以此类推得到f,g,h,i。从上述特征绘制得到如图3中的加速度曲线,从而得到用户加速度周期为T0=e。本发明排除了由于不同的人,其走路习惯、跑步的姿势等差异,在阈值的设置上不合理,导致计算的步数不准确,本发明计步准确,运算量小,提升用户的使用体验。
优选的,所述步骤S300包括步骤:
S310将所述用户加速度周期与所有预设加速度周期进行匹配,判断是否匹配成功;若是,执行步骤S320;否则,执行步骤S330;
S320匹配得到所述目标预设加速度周期,并执行步骤S400;
S330判定用户未进行任何预设运动;
具体的,如图3所示,由于得到的用户加速度周期T0=e,因此与S010-S020之间得到的预设加速度周期进行匹配,判断T0与哪个时间范围的预设加速度周期Tk是匹配的,从而得到目标预设加速度周期T=Tk。如果与上述所有的预设加速度周期进行匹配,没有在上述所有的预设加速度周期的范围内,那么就能够判定用户没有进行任何的预设运动。判定没有进行任何预设运动,那么就可以停止计步,节省系统的资源,省电省CPU,提高步数的统计装置的寿命。
优选的,所述步骤S400包括步骤:
S410将生成的所述加速度曲线进行微分运算,得到所述加速度曲线的多个极值点;
S420在所述多个极值点中搜索所述目标极值点;所述目标极值点为所述加速度曲线上的第一个极值点;
具体的,将图3中的生成的加速度曲线L进行微分运算,即sin(t)求微分得到cos(t),得到加速度曲线L对应的微分运算后的微分曲线L',因此从微分曲线L'中可以看出有多个极值点,由于加速度曲线省略了后续的时间上的合运动加速度的变化,因此微分曲线也相应的省略了后续的时间上的微分值,在此不再赘述。其中,在微分曲线L'上搜索到目标极值点为b点。此处,若是以垂直向下为正向,那么加速度曲线与图3中的加速度曲线L是呈t轴对称的,在此不细述。那么其对应的微分曲线也是与图3中的微分曲线L'是呈t轴对称的,在此不细述。
优选的,所述步骤S500包括步骤:
S510根据所述目标极值点为起始点,运算每个所述目标预设加速度周期处的微分值;
S520统计所述微分值等于所述预设值的数量;
S530输出所述数量为统计步数。
具体的,根据图3所示的微分曲线L'的目标极值点即第一个极值点b为起点,运算范围为(b,+∞),在此时间范围内进行运算每个b+m×Tk的微分值,判断每个b+m×Tk的微分值是否等于预设值,即每个b+m×Tk的微分值是否等于零,从而统计微分值等于零的数量,以此得到运动的计步步数。例如,假设图3中加速度曲线L中的e点为1秒,那么用户加速度周期为T0=1秒,而假设所有预设加速度周期包括正常行走周期T1=1秒,慢走周期T2=3秒,快走周期T3=0.5秒,正常跑步周期T4=0.5秒,慢跑周期T5=0.3秒,快跑周期T6=0.1,经过匹配得到T0=T3,说明用户正处于正常行走的状态,那么目标预设加速度周期就为T1,从b点为起点,即b=0.25秒为起点,那么在b+1×T1,b+2×T1,b+3×T1,b+4×T1,……b+m×T1,判断这些点0.25+1×1=1.25即f点等等这些点中微分值等于零的数量,从而以此数量为用户运动的步数。本发明充分利用人在运动过程中的周期性,能更精确得计算出运动过程中的步数。相比通过波峰波谷检测的计步算法,排除了由于不同的人,其走路习惯、跑步的姿势等差异,在阈值的设置上不合理,导致计算的步数不准确,本发明计步准 确,运算量小。
参考图4所示,本发明提供一种步数的统计装置的一个实施例,包括:
获取模块,获取用户的加速度数据;
第一运算模块,根据所述加速度数据生成加速度曲线,并得到用户加速度周期;
匹配模块,将所述用户加速度周期与所有预设加速度周期进行匹配,匹配得到目标预设加速度周期;
第二运算模块,将所述加速度曲线进行微分运算,得到目标极值点;
统计模块,根据所述目标极值点以及所述目标预设加速度周期,统计微分值等于预设值的数量,输出所述数量为统计步数。
具体的,本实施例中,由于针对不同的人,其走路习惯、跑步的姿势、起立坐下、身体转动等因素的差异,导致基于波峰波谷检测的计步算法的阈值设定不是很合理,从而产生计算步数上的误差。本发明获取三个方向上产生的加速度,通常通过三轴传感器进行采集用户的三个方向上的加速度数据,充分利用运动过程中的加速度曲线的周期性,求出用户加速度周期,与所有预设加速度周期进行匹配得到目标预设加速度周期,然后对加速度曲线进行微分找出目标极值点,根据目标极值点以及目标预设加速度周期来推算统计出运动过程中步数,进一步提高计步的精度。充分利用人在运动过程中的周期性,能更精确得计算出运动过程中的步数。解决了由于不同的人,其行走习惯、跑步的姿势等差异,导致计算的步数不准确,另外,统计微分值等于预设值的数量,简化了步数统计的算法,更加快速准确。
参考图5所示,本发明提供一种步数的统计装置的另一个实施例,本实施例中其他部分与上一实施例相同,包括:获取模块、第一运算模块、匹配模块、第二运算模块和统计模块;
此外,还包括:
采集模块,采集用户运动信息;所述用户运动信息包括运动类型信息,以及对应于所述运动类型信息的运动步数信息和运动时间信息;
第三运算模块,根据所述采集模块采集的所述运动类型信息对应的所述运动步数信息和所述运动时间信息进行运算,得到对应于所述运动类型信息的所述预设加速度周期。
具体的,本实施例中,采集用户运动信息,将用户运动信息中的运动类型信息对应的运动步数信息和运动时间信息进行运算,得到对应于运动类型信息的预设加速度周期,Tk=nk/tk。例如针对每个用户,进行预设运动的训练,比如正常行走、慢走,快走,正常跑步、慢跑、快跑等等预设运动的训练,记录各种预设运动的运动步数分别为n1、n2、n3、n4、n5、n6,运动时间分别为t1、t2、t3、t4、t5、t6,那么正常行走对应的预设加速度周期T1=n1/t1,以此类推依次得到慢走对应的预设加速度周期T2=n2/t2,快走对应的预设加速度周期T3=n3/t3,正常跑步对应的预设加速度周期T4=n4/t4,慢跑对应的预设加速度周期T5=n5/t5,快跑对应的预设加速度周期T6=n6/t6。本发明针对每个用户建立不同的预设加速度周期,这样减少因为不同用户的运动幅度的大小不同导致的步数记录误判,提升计步的准 确度。
优选的,所述第一运算模块包括:
第一运算单元,根据所述获取模块获取的所述加速度数据进行矢量运算,得到合运动加速度;所述加速度数据为预设方向以及所述预设方向对应的加速度值;
生成单元,根据所述第一运算单元运算得到的所述合运动加速度以及所述合运动加速度对应的时间生成加速度曲线;
第二运算单元,根据所述生成单元生成的所述加速度曲线,得到所述用户加速度周期。
具体的,预设方向是三个方向的加速度数据,本实施例中通过加速度传感器获取用户的加速度数据,也可以通过多个加速度传感器获三个方向的加速度数据,只要是能够获取三个方向的加速度数据的方案均属于本发明的保护范围,三个方向包括X轴方向,Y轴方向和Z轴方向。假设X轴方向为水平前后方向,Y轴方向为水平左右方向,Z轴方向为垂直方向,垂直方向向上为正向。那么由于用户在水平步行运动的过程中,垂直方向和水平方向(水平前后方向以及水平左右方向)两个方向的加速度呈现周期性的变化,即用户在步行抬脚的动作中,由于单只脚触地重心向上,垂直方向加速度是呈正向递增的趋势,递增至最大加速度值后呈正向递减的趋势,递减至加速度值为零。之后用户继续步行放脚的动作中,由于重心下移直至两脚触地,垂直方向加速度是呈反向递增的趋势,递增至最大加速度值后成反向递减的趋势,递减至加速度值为零。另外用户在步行抬脚的动作中,水平方向的加速度在收脚时减小,在迈步时增加。因此,用户步行时的垂直加速度和水平加速度的变化规律是一个周期性的过程,所以本发明获取到用户的加速度数据后,根据加速度数据能够得到用户运动的用户加速度周期,然后将用户的加速度周期与所有的预设加速度周期进行匹配得到目标预设加速度周期,根据合运动加速度以及合运动加速度对应的时间生成加速度曲线。如图3所示,为根据合运动加速度以及合运动加速度对应的时间生成的加速度曲线,其中,A轴为合运动加速度,t轴为合运动加速度对应的时间,a点为用户抬脚之前的加速度值,即其垂直方向和水平方向的加速度的合运动加速度为零,从a点开始用户的合运动加速度为垂直向上并且水平向前递增,b点为用户抬脚的合运动加速度的最大值,c点为用户抬脚至最高点的时候的合运动加速度为零,从c点开始用户开始放脚,并且放脚过程中合加速度为垂直向下并且水平向前递减,d点为用户放脚的合运动加速度的最大值,e点为用户放脚至地面的时候的合运动加速度为零。以此类推得到f,g,h,i。从上述特征绘制得到如图3中的加速度曲线,从而得到用户加速度周期为T0=e。本发明排除了由于不同的人,其走路习惯、跑步的姿势等差异,在阈值的设置上不合理,导致计算的步数不准确,本发明计步准确,运算量小,提升用户的使用体验。
优选的,所述匹配模块包括:
匹配单元,将所述用户加速度周期与所有预设加速度周期进行匹配,判断是否匹配成功,若是,匹配得到所述目标预设加速度周期;
判定单元,当所述匹配单元判断所述用户加速度周期与所有预设加速度周期匹配失败时,判定用户未进行任何预设运动。
具体的,如图3所示,由于得到的用户加速度周期T0=e,因此与S010-S020之间得到的预设加速度周期进行匹配,判断T0与哪个时间范围的预设加速度周期Tk是匹配的,从而得到目标预设加速度周期T=Tk。如果与上述所有的预设加速度周期进行匹配,没有在上述所有的预设加速度周期的范围内,那么就能够判定用户没有进行任何的预设运动。判定没有进行任何预设运动,那么就可以停止计步,节省系统的资源,省电省CPU,提高步数的统计装置的寿命。
优选的,所述第二运算模块包括:
第三运算单元,将生成的所述加速度曲线进行微分运算,得到所述加速度曲线的多个极值点;
搜索单元,在所述多个极值点中搜索所述目标极值点;所述目标极值点为所述加速度曲线上的第一个极值点。
具体的,将图3中的生成的加速度曲线L进行微分运算,即sin(t)求微分得到cos(t),得到加速度曲线L对应的微分运算后的微分曲线L',因此从微分曲线L'中可以看出有多个极值点,由于加速度曲线省略了后续的时间上的合运动加速度的变化,因此微分曲线也相应的省略了后续的时间上的微分值,在此不再赘述。其中,在微分曲线L'上搜索到目标极值点为b点。此处,若是以垂直向下为正向,那么加速度曲线与图3中的加速度曲线L是呈t轴对称的,在此不细述。那么其对应的微分曲线也是与图3中的微分曲线L'是呈t轴对称的,在此不细述。
优选的,所述统计模块包括:
第四运算单元,根据所述目标极值点为起始点,运算每个所述目标预设加速度周期处的微分值;
统计单元,统计所述微分值等于所述预设值的数量;
输出单元,输出所述数量为统计步数。
具体的,根据图3所示的微分曲线L'的目标极值点即第一个极值点b为起点,运算范围为(b,+∞),在此时间范围内进行运算每个b+m×Tk的微分值,判断每个b+m×Tk的微分值是否等于预设值,即每个b+m×Tk的微分值是否等于零,从而统计微分值等于零的数量,以此得到运动的计步步数。例如,假设图3中加速度曲线L中的e点为1秒,那么用户加速度周期为T0=1秒,而假设所有预设加速度周期包括正常行走周期T1=1秒,慢走周期T2=3秒,快走周期T3=0.5秒,正常跑步周期T4=0.5秒,慢跑周期T5=0.3秒,快跑周期T6=0.1,经过匹配得到T0=T3,说明用户正处于正常行走的状态,那么目标预设加速度周期就为T1,从b点为起点,即b=0.25秒为起点,那么在b+1×T1,b+2×T1,b+3×T1,b+4×T1,……b+m×T1,判断这些点0.25+1×1=1.25即f点等等这些点中微分值等于零的数量, 从而以此数量为用户运动的步数。本发明充分利用人在运动过程中的周期性,能更精确得计算出运动过程中的步数。相比通过波峰波谷检测的计步算法,排除了由于不同的人,其走路习惯、跑步的姿势等差异,在阈值的设置上不合理,导致计算的步数不准确,本发明计步准确,运算量小。
在上述所有实施例中,随着科学技术的飞速发展,人们生活水平的不断提高,人们对自身的健康关注度也随之增加。目前,大多数人通过慢跑、快走(散步)、快跑等单一方式或相组合的方式进行体育锻炼,来达到减肥、塑形和增肌的目标。为了帮助人们更好地了解锻炼的情况,从而科学得进行锻炼指导与规划。如何来精确得获得运动过程的步数,是作为分析运动的一项关键数据。目前,三轴加速度传感器具有体积小和重量轻特点,可以测量空间加速度,能够全面准确反映物体的运动性质,在航空航天、机器人、汽车和医学等领域得到广泛的应用。通过三轴加速度传感器,检测空间中的三个维度的加速度。第一种算法是设置阈值,经过滤波,波峰和波谷的检测,来计算行走的步数。第二种算法是相关性分析算法,利用行人连续运动产生的加速度序列之间的相似性来进行步数的计算。相关性分析算法的实现,复杂度较高。由于人在行走、慢跑、快跑等运动过程中,其在某些特定方向上,产生的加速度与时间大致为一个正弦曲线。所以通过设置阈值,采用波峰值或波谷值来检测计算运动步数。由于人在运动过程中,会产生的加速度,其与时间的关系近似为一个正弦曲线。不同的人,虽然其走路习惯、跑步的姿势、起立坐下、身体转动等存在差异,但其过程一定是具有周期性的。本发明会首先针对个人进行预设运动的训练,得到相应的预设加速度周期,通过三轴加速度传感器来得到预设方向上产生的加速度,合成为一个合运动加速度A,充分利用运动过程中的加速度曲线A的周期性,求出合运动加速度A的周期,与预设加速度周期进行匹配;然后对合运动加速度A进行微分找出第一个极值点,并判断下一个目标预设加速度周期的微分值是否为0,来推算出运动过程中相应的步数,进一步提高了计步的精度。本发明具体的计步步骤如图5所示:
S1、针对个人,对其进行预设运动的训练,比如行走、慢跑、快跑等,记录下预设加速度周期T1、T2、T3,用来匹配每个人的运动特征;
S2、将三个不同方向上的加速度合成为一个合运动加速度A,该合运动加速度A是一个近似的正弦波;
S3、求出合运动加速度A的用户加速度周期T,与预设运动的预设加速度周期进行匹配判断;
S31、判断T是否等于T1;若是,得到目标预设加速度周期为T1,并执行步骤S4;否则,执行步骤S32;
S32、判断T是否等于T1;若是,得到目标预设加速度周期为T1,并执行步骤S4;否则,执行步骤S33;
S33、判断T是否等于T1;若是,得到目标预设加速度周期为T1,并执行步骤S4;否 则,返回步骤S2;
S4、对得到的A进行微分,找出第一个极值点,记录下横轴的时间坐标,记为t;
S51、利用目标预设加速度周期T1,判断下一个预设运动的预设加速度周期处的微分是不是为0,如果为0,则步数+1步,继续步骤51;否则回到步骤3;
S52、利用目标预设加速度周期T2,判断下一个预设运动的预设加速度周期处的微分是不是为0,如果为0,则步数+1步,继续步骤52;否则回到步骤3;
S53、利用目标预设加速度周期T3,判断下一个预设运动的预设加速度周期处的微分是不是为0,如果为0,则步数+1步,继续步骤53;否则回到步骤3。
下面结合结合图5进行说明,本实例中,首先针对个人,进行预设运动的训练,比如行走、慢跑、快跑;具体实施方式为行走若干步数,记步数为n,时间为s,那么行走的周期记为T1,则T1=n/s;同理,依次得到慢跑、快跑的周期T2、T3;当人在运动过程中,图6所示,在前后(X方向)、左右(Y方向)、上下(Z方向)三个方向上会产生一定的加速度的变化,通过三轴加速度传感器将三个方向的加速度采集下来,并合成为一个合运动加速度A,如图7所示,为最终合成的合运动加速度A的曲线,由于人运动过程中的周期性,可知合运动加速度A近似为正弦波,为叙述方便将三个预设加速度周期均绘制在图7上进行说明。求出A的用户加速度周期,记为T,并将T与所有的预设运动的预设加速度周期T1、T2、T3进行匹配,本实例中图5的S31,S32,S33是没有先后顺序的,只要将用户加速度周期T与所有的预设加速度周期T1,T2,T3进行判断,如果与所有的预设加速度周期进行匹配判断均不匹配,那么即可认为此人没有运动,因此运动步数不会增加,那么回到步骤S2。如果根据匹配判断与任意一个预设加速度周期T1、T2、T3匹配,则进行S4,即对得到的合运动加速度A进行微分,找出第一个极值点A'(t1),t1为横轴时间的坐标;同理T2、T3得到的第一个极值点的横轴时间的坐标为t2、t3。利用预设加速度周期T1或T2或T3,判断A'(T1+t1)或A'(T2+t2)或A'(T3+t3)处的微分值是否为0,若是,则步数加1,继续进行该步骤,判断下一个A'(T1+2×t1)、A'(T2+2×t2)、A'(T3+2×t3),……A'(T1+m×t1)、A'(T2+m×t2)、A'(T3+m×t3)处的微分值;否则,回到步骤3。本发明图5中判断用户当前处于T1对应的运动状态时,通过S51进行统计计步。同理步数的统计装置判断用户当前处于T2(或者T3)对应的运动状态时,通过S52(或者S53)进行统计计步。
本发明针对每个人,进行预设运动的训练,得到相应的周期,并充分利用合运动加速度A的的周期性,对A做微分运算,找出第一个极值点,判断下一个目标预设加速度周期处的微分值是否为0,来推算出相应的步数,进一步提高了计步的精度。本发明充分利用人在运动过程中的周期性,能更精确得计算出运动过程中的步数。相比于一种基于波峰波谷检测的计步算法,排除了由于不同的人,其走路习惯、跑步的姿势等差异,在阈值的设置上不合理,导致计算的步数不准确。
上述所有实施例中,可以对获取的加速度曲线进行平滑处理,曲线平滑处理的方式众多, 在此不一一例举。求合运动加速度A的周期T的方法,可以是现有的任意方法,能准确得到即可。周期的匹配,即T在T1、T2、T3各自允许的误差范围内,就认为是匹配的。下一个预设运动处的微分值,接近于预设值如零时,也认为此处的微分值为预设值。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

  1. 一种步数的统计方法,其特征在于,包括步骤:
    S100获取用户的加速度数据;
    S200根据所述加速度数据生成加速度曲线,并得到用户加速度周期;
    S300将所述用户加速度周期与所有预设加速度周期进行匹配,匹配得到目标预设加速度周期;
    S400将所述加速度曲线进行微分运算,得到目标极值点;
    S500根据所述目标极值点以及所述目标预设加速度周期,统计微分值等于预设值的数量,输出所述数量为统计步数。
  2. 根据权利要求1所述的步数的统计方法,其特征在于,所述步骤S100之前包括步骤:
    S010采集用户运动信息;所述用户运动信息包括运动类型信息,以及对应于所述运动类型信息的运动步数信息和运动时间信息;
    S020根据所述运动类型信息对应的所述运动步数信息和所述运动时间信息进行运算,得到对应于所述运动类型信息的所述预设加速度周期。
  3. 根据权利要求1所述的步数的统计方法,其特征在于,所述步骤S200包括步骤:
    S210根据所述加速度数据进行矢量运算,得到合运动加速度;所述加速度数据为预设方向以及所述预设方向对应的加速度值;
    S220根据所述合运动加速度以及所述合运动加速度对应的时间生成加速度曲线;
    S230根据所述加速度曲线,得到所述用户加速度周期;
    所述步骤S300包括步骤:
    S310将所述用户加速度周期与所有预设加速度周期进行匹配,判断是否匹配成功;若是,执行步骤S320;否则,执行步骤S330;
    S320匹配得到所述目标预设加速度周期,并执行步骤S400;
    S330判定用户未进行任何预设运动。
  4. 根据权利要求1所述的步数的统计方法,其特征在于,所述步骤S400包括步骤:
    S410将生成的所述加速度曲线进行微分运算,得到所述加速度曲线的多个极值点;
    S420在所述多个极值点中搜索所述目标极值点;所述目标极值点为所述加速度曲线上的第一个极值点。
  5. 根据权利要求1-4任一项所述的步数的统计方法,其特征在于,所述 步骤S500包括步骤:
    S510根据所述目标极值点为起始点,运算每个所述目标预设加速度周期处的微分值;
    S520统计所述微分值等于所述预设值的数量;
    S530输出所述数量为统计步数。
  6. 一种步数的统计装置,其特征在于,包括:
    获取模块,获取用户的加速度数据;
    第一运算模块,根据所述加速度数据生成加速度曲线,并得到用户加速度周期;
    匹配模块,将所述用户加速度周期与所有预设加速度周期进行匹配,匹配得到目标预设加速度周期;
    第二运算模块,将所述加速度曲线进行微分运算,得到目标极值点;
    统计模块,根据所述目标极值点以及所述目标预设加速度周期,统计微分值等于预设值的数量,输出所述数量为统计步数。
  7. 根据权利要求6所述的步数的统计装置,其特征在于,还包括:
    采集模块,采集用户运动信息;所述用户运动信息包括运动类型信息,以及对应于所述运动类型信息的运动步数信息和运动时间信息;
    第三运算模块,根据所述采集模块采集的所述运动类型信息对应的所述运动步数信息和所述运动时间信息进行运算,得到对应于所述运动类型信息的所述预设加速度周期。
  8. 根据权利要求6所述的步数的统计装置,其特征在于,所述第一运算模块包括:
    第一运算单元,根据所述获取模块获取的所述加速度数据进行矢量运算,得到合运动加速度;所述加速度数据为预设方向以及所述预设方向对应的加速度值;
    生成单元,根据所述第一运算单元运算得到的所述合运动加速度以及所述合运动加速度对应的时间生成加速度曲线;
    第二运算单元,根据所述生成单元生成的所述加速度曲线,得到所述用户加速度周期;
    所述匹配模块包括:
    匹配单元,将所述用户加速度周期与所有预设加速度周期进行匹配,判断是否匹配成功,若是,匹配得到所述目标预设加速度周期;
    判定单元,当所述匹配单元判断所述用户加速度周期与所有预设加速度周期匹配失败时,判定用户未进行任何预设运动。
  9. 根据权利要求6所述的步数的统计装置,其特征在于,所述第二运算模块包括:
    第三运算单元,将生成的所述加速度曲线进行微分运算,得到所述加速度曲线的多个极值点;
    搜索单元,在所述多个极值点中搜索所述目标极值点;所述目标极值点为所述加速度曲线上的第一个极值点。
  10. 根据权利要求6-9任一项所述的步数的统计装置,其特征在于,所述统计模块包括:
    第四运算单元,根据所述目标极值点为起始点,运算每个所述目标预设加速度周期处的微分值;
    统计单元,统计所述微分值等于所述预设值的数量;
    输出单元,输出所述数量为统计步数。
PCT/CN2017/116405 2017-09-11 2017-12-15 一种步数的统计方法及装置 WO2019047410A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710813736.4A CN107727110A (zh) 2017-09-11 2017-09-11 一种步数的统计方法及装置
CN201710813736.4 2017-09-11

Publications (1)

Publication Number Publication Date
WO2019047410A1 true WO2019047410A1 (zh) 2019-03-14

Family

ID=61206045

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/116405 WO2019047410A1 (zh) 2017-09-11 2017-12-15 一种步数的统计方法及装置

Country Status (2)

Country Link
CN (1) CN107727110A (zh)
WO (1) WO2019047410A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020221109A1 (zh) * 2019-04-30 2020-11-05 华为技术有限公司 一种移动距离计算方法、装置以及系统
CN112923922A (zh) * 2021-03-04 2021-06-08 香港理工大学深圳研究院 一种计步和确定行人的位置信息的方法、系统及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112902946B (zh) * 2021-01-14 2024-01-30 南京英锐创电子科技有限公司 轮胎状态检测方法、装置、计算机设备和存储介质
CN113324559B (zh) * 2021-05-10 2023-03-21 青岛海尔空调器有限总公司 一种运动计步方法、装置及空气处理设备
CN117553822B (zh) * 2024-01-12 2024-04-19 深圳三基同创电子有限公司 一种基于智能手表的步数统计方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101694499A (zh) * 2009-10-22 2010-04-14 浙江大学 基于行人步态检测的步速测量和传输的系统和方法
EP2386827A2 (en) * 2010-05-14 2011-11-16 Casio Computer Co., Ltd. Traveling state determining device and method for determining traveling state
CN104596537A (zh) * 2015-02-02 2015-05-06 成都星炫科技有限公司 一种计步方法
CN105628027A (zh) * 2016-02-19 2016-06-01 中国矿业大学 一种基于mems惯性器件的室内环境精确实时定位方法
CN106289309A (zh) * 2016-10-26 2017-01-04 深圳大学 基于三轴加速度传感器的计步方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101694499A (zh) * 2009-10-22 2010-04-14 浙江大学 基于行人步态检测的步速测量和传输的系统和方法
EP2386827A2 (en) * 2010-05-14 2011-11-16 Casio Computer Co., Ltd. Traveling state determining device and method for determining traveling state
CN104596537A (zh) * 2015-02-02 2015-05-06 成都星炫科技有限公司 一种计步方法
CN105628027A (zh) * 2016-02-19 2016-06-01 中国矿业大学 一种基于mems惯性器件的室内环境精确实时定位方法
CN106289309A (zh) * 2016-10-26 2017-01-04 深圳大学 基于三轴加速度传感器的计步方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020221109A1 (zh) * 2019-04-30 2020-11-05 华为技术有限公司 一种移动距离计算方法、装置以及系统
CN112923922A (zh) * 2021-03-04 2021-06-08 香港理工大学深圳研究院 一种计步和确定行人的位置信息的方法、系统及存储介质

Also Published As

Publication number Publication date
CN107727110A (zh) 2018-02-23

Similar Documents

Publication Publication Date Title
WO2019047410A1 (zh) 一种步数的统计方法及装置
Ryu et al. Automated action recognition using an accelerometer-embedded wristband-type activity tracker
US10314520B2 (en) System and method for characterizing biomechanical activity
US10740650B2 (en) Systems and methods for non-contact tracking and analysis of exercise
Gu et al. Accurate step length estimation for pedestrian dead reckoning localization using stacked autoencoders
Dikovski et al. Evaluation of different feature sets for gait recognition using skeletal data from Kinect
CN109579853B (zh) 基于bp神经网络的惯性导航室内定位方法
Klein et al. Pedestrian dead reckoning with smartphone mode recognition
JP6629543B2 (ja) 歩行環境認識方法及び装置
Joshua et al. Accelerometer-based activity recognition in construction
CN103699795A (zh) 一种运动行为识别方法、装置及运动强度监测系统
US11826140B2 (en) System and method for human motion detection and tracking
US20210093917A1 (en) Detecting outdoor walking workouts on a wearable device
Mondal et al. Gait based personal identification system using rotation sensor
WO2018086321A1 (zh) 一种计步方法及装置
Uddin et al. SmartSpaghetti: Accurate and robust tracking of Human's location
CN111353345A (zh) 提供训练反馈的方法、装置、系统、电子设备、存储介质
CN109061215A (zh) 一种基于可穿戴设备的速度检测方法及可穿戴设备
Tinh et al. Image-based gramian angular field processing for pedestrian stride-length estimation using convolutional neural network
EP4247250A1 (en) Estimation of individual's maximum oxygen uptake, vo2max
Xia et al. Real-time recognition of human daily motion with smartphone sensor
Zhang et al. [Retracted] Information Collection, Analysis, and Monitoring System of Children’s Physical Training Based on Multisensor
Hölzke et al. Step Detection through Ultra-Low Complexity Zero Crossing Analysis
WO2023108498A1 (zh) 一种零速区间检测方法、行人导航系统及存储介质
Jahan et al. Walking steps counting and distance measurement on user smart phone

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17924581

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17924581

Country of ref document: EP

Kind code of ref document: A1