CN113378801B - Intelligent bracelet accurate step counting method based on neural network - Google Patents

Intelligent bracelet accurate step counting method based on neural network Download PDF

Info

Publication number
CN113378801B
CN113378801B CN202110916088.1A CN202110916088A CN113378801B CN 113378801 B CN113378801 B CN 113378801B CN 202110916088 A CN202110916088 A CN 202110916088A CN 113378801 B CN113378801 B CN 113378801B
Authority
CN
China
Prior art keywords
axis
frequency
curve
data
acceleration
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202110916088.1A
Other languages
Chinese (zh)
Other versions
CN113378801A (en
Inventor
仇惠莲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Mengyao Technology Co ltd
Original Assignee
Shenzhen Mengyao Technology Co ltd
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 Shenzhen Mengyao Technology Co ltd filed Critical Shenzhen Mengyao Technology Co ltd
Priority to CN202110916088.1A priority Critical patent/CN113378801B/en
Publication of CN113378801A publication Critical patent/CN113378801A/en
Application granted granted Critical
Publication of CN113378801B publication Critical patent/CN113378801B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing
    • G06F2218/08Feature extraction
    • G06F2218/10Feature extraction by analysing the shape of a waveform, e.g. extracting parameters relating to peaks
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)

Abstract

The invention relates to an intelligent bracelet accurate step counting method based on a neural network, which comprises the steps of extracting data of a bracelet acceleration sensor during exercise, eliminating error data caused by non-stepping behaviors, and dividing exercise data into sections according to different step frequencies; and selecting basic data according to the contribution of each axis to the final acceleration data for re-fitting for counting, and comparing the characteristics of the residual data of each axis to judge the possibility that the fitting data represents the real step number. Screening fitting data according to the possibility that each section of data represents real data to calculate accurate step number; the error receipt that the non-step action that can eliminate bracelet acceleration sensor produced when counting steps caused carries out, the data curve of each axle statistics carries out from the new fitting and is used for counting steps among the acceleration sensor, judges the authenticity of motion in each axle, counts out true step number in the fitting curve according to the authenticity of each axle, has removed and has caused the inaccurate defect of step number statistics because of other factors, has improved the accuracy of bracelet statistics step number.

Description

Intelligent bracelet accurate step counting method based on neural network
Technical Field
The application relates to the technical field of artificial intelligence, in particular to an accurate step counting method for an intelligent bracelet based on a neural network.
Background
With the development of society, people pay more and more attention to their health, and walking and running are a convenient and effective exercise way, which makes people have more and more demands on accurate step counting. The action information of the human body during walking and running can be obtained through the worn three-axis acceleration sensor, and the step number of the user can be calculated by carrying out statistics on the number of acceleration wave crests after appropriate filtering on the obtained acceleration.
Placing acceleration sensor on the bracelet and obtaining the mode of user's step number more complicated, just can simplify to simple harmonic motion when the action of people's wrist step is the regular motion of repeatability again, and accelerometer in-service use can receive the interference of various factors, compares in the waist, and the acceleration of hand is stable inadequately, and the meter step precision of bracelet is not high.
At present, the interference is eliminated by setting a threshold value for parameters such as a wave peak value and a period of accelerometer data, but the method can only eliminate acceleration changes caused by behaviors with obvious differences in other accelerations such as sitting on a bus, shaking a mobile phone and the like, and shaking of the bracelet on the pedometer is easily mistakenly detected as human motion, so that the real and accurate step number cannot be obtained. In the prior art, real motion and shaking of the pedometer are distinguished by measuring the similarity of each wave peak in the acceleration data of the bracelet, but the method is difficult to determine the threshold value of the similarity and is easily influenced by noise, the similarity of the wave peaks is reduced when the shaking frequency of the pedometer changes, and at the moment, the step counting algorithm cannot judge whether the motion data is real or not.
Disclosure of Invention
In order to solve the technical problems, the application provides an accurate step counting method of a smart bracelet based on a neural network, which comprises the steps of splitting and extracting data of the bracelet acceleration sensor, selecting data according to the contribution of the data of each axis to the acceleration to refit the acceleration, comparing different components of residual data of each axis to measure the possibility that the fitting data represents real motion, and counting the number of wave crests representing the real motion data to obtain accurate step number:
the application is realized through the following technical scheme, and an intelligent bracelet accurate step counting method based on a neural network is characterized by comprising the following steps:
respectively extracting x-axis, y-axis and z-axis motion data graphs in the bracelet acceleration sensor, and acquiring a real acceleration a graph of the acceleration sensor through the x-axis, y-axis and z-axis motion data graphs; segmenting the real acceleration a curve graph by using an extreme value in the real acceleration a curve graph, deleting error data caused by non-striding, and segmenting the real acceleration a curve graph with the error data deleted according to step frequency;
acquiring a fitting curve of a real acceleration a curve, comparing the fitting curve with the curve before fitting, and marking the repeated points after comparison according to high frequency, medium frequency and low frequency;
corresponding the step frequency section of the segmented real acceleration a curve graph to the x-axis, y-axis and z-axis motion data curve graphs of the acceleration sensor, segmenting the x-axis, y-axis and z-axis of the acceleration sensor, and respectively acquiring the amplitude-frequency curve of each segment of the x-axis, y-axis and z-axis of the acceleration sensor;
selecting points corresponding to the marked high frequency, medium frequency and low frequency on the amplitude-frequency curves of the x axis, the y axis and the z axis of the acceleration sensor, and obtaining a fitted acceleration curve-fitted a sequence according to the selected points;
extracting wave crests in an x-axis, y-axis and z-axis motion data curve graph in the acceleration sensor to obtain the scale of the current wave crest;
segmenting the wave crest widths on the x axis, the y axis and the z axis in the acceleration sensor according to the obtained wave crest scale;
acquiring component vectors in each section, acquiring the similarity of two adjacent sections on each axis of an x axis, a y axis and a z axis in the acceleration sensor and the similarity between two sections at the same position of the x axis, the y axis and the z axis in the acceleration sensor by using the acquired component vectors in each section, comparing the acquired similarity with a set threshold, and when the similarity is greater than the threshold, performing digital marking on the projection axis of the x axis, the y axis and the z axis at the position corresponding to the section to acquire a heat axis;
segmenting the heat axis according to the wave crest in the acceleration curve-fitting a sequence, and confirming the possibility that the current segment represents real motion data;
and selecting a real motion segment and a possible motion segment, and acquiring the real step number of the bracelet by utilizing the selected possible motion segment and the real motion segment.
Preferably, the graph of the true acceleration a of the acceleration sensor is obtained by the vector sum of data in the graphs of the x-axis motion data, the y-axis motion data and the z-axis motion data of the acceleration sensor.
Preferably, the deleting error data caused by the non-stride includes:
data that do not conform to the walking rule and data that do not conform to the walking time;
the data which do not conform to the walking rule are confirmed according to the following method: calculating the node number n of each segmented section passing through the wave crest in the extreme value segmented curve chart of the real acceleration a, and deleting the data of the section if n is less than 6;
the data not conforming to the walking time is confirmed according to the following method: and calculating the time difference dt between two extreme points in each segment, and deleting the segment of data if dt is less than 0.1 s.
Preferably, the fitting curve of the real acceleration a curve is fitted according to the following method:
partitioning the real acceleration a curve graph of each section after being segmented according to wave crests;
obtaining the average value of the data of the same position of each block in each section to obtain an average block, solving the average value of the data in the average block, and performing Fourier transform by using the difference value of the data in the average block and the average value to obtain an amplitude-frequency curve of a real acceleration a curve;
fitting the amplitude-frequency curve of the true acceleration a curve based on an exponential function to obtain a fitting curve of the true acceleration a curve;
and comparing the fitting curve of the real acceleration a curve with the amplitude-frequency curve of the real acceleration a curve, marking the frequency of the coincident point of the two curves, and dividing the marked frequency into a high frequency part, a medium frequency part and a low frequency part.
Preferably, after segmenting the x-axis, the y-axis and the z-axis of the acceleration sensor, the amplitude-frequency curves of each segment of the x-axis, the y-axis and the z-axis of the acceleration sensor are respectively obtained as follows:
calculating the range R of the data in each section of the x-axis, the y-axis and the z-axis of the acceleration sensorx、Ry、Rz,RxIs a great difference of the x-axis, RyIs the range of y-axis, RzIs the range of the z axis;
comparing and calculating the range of the x axis, the y axis and the z axis, taking the axis with the minimum range as a high-frequency axis, taking the axis with the maximum range as a low-frequency axis, and taking the rest axes as a medium-frequency axis;
partitioning the data in the high-frequency axis, the low-frequency axis and the medium-frequency axis according to wave peaks, solving the mean value of the data at the same position of all the blocks on each axis to obtain three-axis mean value blocks respectively, and transforming the three-axis mean value blocks respectively by utilizing Fourier transform to obtain amplitude-frequency curves of each bar of the x axis, the y axis and the z axis of the acceleration sensor respectively;
and projecting the marked high-frequency, medium-frequency and low-frequency points on the amplitude-frequency curves of the x axis, the y axis and the z axis of the acceleration sensor onto the amplitude-frequency curves of each bar of the x axis, the y axis and the z axis of the acceleration sensor respectively, selecting the low-frequency points in the low-frequency axis, the medium-frequency points in the medium-frequency axis and the high-frequency points in the high-frequency axis, and performing inverse transformation on data in the selected points to obtain a fitted acceleration curve-a sequence.
Preferably, the method for obtaining the scale of the current peak is as follows:
obtaining an amplitude-frequency curve and a phase-frequency curve of each peak using a short-time fourier transform;
taking the point of the maximum frequency in the amplitude-frequency curve as the basic frequency point of the current peak;
obtaining a phase point corresponding to a phase-frequency curve by using the fundamental frequency point;
marking a plurality of phase frequency points with the same phase as the phase point on a phase-frequency curve;
marking corresponding amplitude frequency points on an amplitude-frequency curve by using the plurality of phase frequency points; marking the amplitude frequency point;
deleting the frequency in the amplitude frequency point and the same frequency marked by the real acceleration a curve; and calculating the scale of the current peak by taking the residual frequency as the reciprocal.
Preferably, the method for segmenting the widths of the wave crests in the acceleration sensor on the x axis, the y axis and the z axis is as follows:
obtaining the width T of a peak, wherein the width of the peak is the distance between two adjacent peaks;
segmentation is performed according to the following mathematical formula:
Figure GDA0003279669370000041
in the formula, tnThe current wave crest has the same selected scale, and N is the number of segments;
and acquiring component feature vectors of each segment according to the following method:
the component vectors for each segment are:
A=[a1 a2 a3 a4 a5]T
in the formula: a is1Is the scale of the current segment, a2Is the relative position of the current segment, a3Is the relative modulus of the current segment, a4Is the relative phase of the current segment, a5Is the relative amplitude of the current segment;
wherein:
Figure GDA0003279669370000042
in the formula: t is tnSelecting a corresponding scale for the current section, wherein T is the width of the current wave crest;
Figure GDA0003279669370000043
in the formula: p is the center position of the current segment, p0Is the starting point of the corresponding wave crest;
Figure GDA0003279669370000044
in the formula: r is the range of the data in the current segment, and R is the range of the corresponding wave crest;
Figure GDA0003279669370000045
in the formula: phi is the phase of the frequency corresponding to the current segment scale;
Figure GDA0003279669370000046
in the formula: a. themThe amplitude of the corresponding frequency for the current segment scale.
Preferably, the similarity between two adjacent segments on each of the x-axis, the y-axis and the z-axis in the acceleration sensor and the similarity between two segments at the same position of the x-axis, the y-axis and the z-axis in the acceleration sensor are obtained according to the cosine values of the component eigenvectors.
Preferably, the possibility that the current segment represents true motion data is confirmed as follows:
comparing the Euclidean distance d between the heat degree of each section of the segmented rear heat degree shaft and the heat degree of the rear adjacent section;
when d is>X1When the motion is not true, the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a non-true motion section;
when X is present1>d>X2When the section is a possible motion section, the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a possible motion section;
when d is<X2And when the section of the acceleration curve corresponding to the section of the heat axis-fitting a sequence is real motion.
Preferably, the real number of steps of the bracelet is obtained by the following method:
calculating the Housdov distance D between the possible motion segment and other segment dataH
When the Hausdorff distance DHWhen the value is less than the threshold value Y, the segment is a non-real motion segment;
when the Hausdorff distance DHWhen the value is not less than the threshold value Y, the probability p that the segment represents the real motion segment is calculatedn(ii) a The expression is as follows:
Figure GDA0003279669370000051
wherein D is the maximum value of the calculated Euclidean distance;
counting the number of real motion segments as the number of real steps n2The true number of steps in a possible motion segment is: p is a radical ofn*n1,n1Is a Hausdorff distance DHThe number of possible motion segments not less than the threshold value Y:
n=pn*n1+n2
n is the final real number of steps of the bracelet.
The beneficial effect of this application is: error data caused by non-stepping behaviors generated by the bracelet acceleration sensor during step counting can be eliminated;
the data curve of each axis statistics in the acceleration sensor is fitted from the beginning to count the steps, the authenticity of the movement in each axis is judged, the real step number is counted in the fitting curve according to the authenticity of each axis, the defect that the step number counting is inaccurate due to other factors is overcome, and the accuracy of the bracelet step counting is improved.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a graph of the motion data measured by a hand ring acceleration sensor at the same step frequency in the embodiment of the present application;
FIG. 2 is an amplitude-frequency curve and a fitted graph of a true acceleration a curve in an embodiment of the present application;
FIG. 3 is a schematic diagram of the embodiment of the present application illustrating the segmentation of the peak width;
FIG. 4 is a schematic diagram of the heat accumulation of a segment in the current peak of the x-axis in the embodiment of the present application;
FIG. 5 is a schematic diagram of the heat accumulation of a segment in the y-axis current peak in the embodiment of the present application;
FIG. 6 is a schematic diagram of the heat accumulation of a segment in the current peak of the z-axis in the embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the application, as detailed in the appended claims.
At present, a common step counting principle of a bracelet is a peak value detection algorithm, namely, a vector sum of triaxial data of an accelerometer is solved to synthesize acceleration data, and after the acceleration data are subjected to low-pass filtering, a threshold value is set to judge whether a peak value is effective or not, and effective data are recorded as step numbers. The step number measured by the method is easily influenced by the step shaker, the shaking of the bracelet on the step shaker is mistakenly detected as the motion of a person, and therefore the true and accurate step number cannot be obtained
In order to solve the technical problem, an embodiment of the present application provides an accurate step counting method for an intelligent bracelet based on a neural network, including:
because the number of data in the current intelligent bracelet acceleration sensor is three, including three directions of an x axis, a y axis and a z axis, the acceleration sensor curve graph extracted in the extraction process of the embodiment is the x axis, y axis and z axis motion data curve graph in the bracelet acceleration sensor;
due to the inherent noise in the circuit, when the bracelet is static, the reading of the acceleration sensor of the intelligent bracelet is not zero, but generally not more than 0.01m/s2. In daily life, behaviors such as waving hands, sitting pirate ships, riding cars and the like can cause fluctuation similar to striding, so that non-striding data in data (namely a graph) need to be eliminated;
when extracting the three-axis data curve in the hand ring, the embodiment adopted by the application is to acquire the data of the acceleration sensor and record that the absolute values of the data from the three axes exceed 0.01m/s2When the absolute value of the data on three axes is less than 0.01m/s2The previous data is obtained from the extracted data to obtain three-axis data curve, and the absolute values in the three-axis curve (x-axis, y-axis and z-axis motion data curve chart of the acceleration sensor are all lower than 0.01m/s2Data of (d) vector sum, obtaining a graph of true acceleration a as described in fig. 1; segmenting the real acceleration a curve graph by using an extreme point in the real acceleration a curve graph, namely, a segment is arranged between two adjacent extreme points; deleting data which are not striding in the acceleration a curve according to the following conditions;
if a person walks, the person generally walks for a plurality of steps continuously without 4 or 5 continuous fluctuations, which is most likely to be interference signals; therefore, the segment number n of a is calculated, and if n is less than 6, the current a sequence is removed;
the reflex nerves of the human body determine the limit of the rapid movement of the human body, so that the human body cannot walk two steps within 0.2s, one wave peak represents walking one step on the reading of the sensor, each wave peak has three extreme points of one large, two small and one large, namely each wave peak is divided into two sections. Therefore, the width of each segment, namely the time difference dt between two adjacent pole points is calculated, and if dt is less than 0.1s, the data of the current segment is removed.
When the bracelet acceleration sensor is used for counting steps, the running frequency and the walking frequency of a person are different, even the same running frequency is adopted, and sometimes the person runs fast and sometimes runs slowly; if the data of the acceleration sensor fluctuates due to the rocker, the frequency of the cradle is changed at regular time to simulate real motion as much as possible. When data are compared, different step frequencies can greatly influence identification of real step numbers, so that a curve graph of real acceleration a needs to be segmented according to the step frequencies, the accuracy of processing in the later period is higher, during segmentation, different motion data are segmented according to rhythm, data generated by the same motion frequency are segmented into one segment, and the same segment is divided into different wave crests. The DNN is used for segmenting and splitting the data of the acceleration sensor into wave peaks, the used network is of an FC structure, and the network training is as follows:
the training data set is the acceleration acquired and synthesized by the bracelet acceleration sensor; the labels are corresponding sub-small nodes and sub-wave peak points;
the LOSS function is cross entropy.
To this end, data that may represent true motion is segmented by step frequency, separating peaks that may represent one step at a time. The acceleration data of the same section are all the same step frequency, the fundamental frequency of each peak of the same step frequency is equal, namely the width of each peak in the section is approximately equal.
The embodiment mainly exemplifies the case that the step number is inaccurate due to the step running caused by the non-step behavior of the pedometer;
the step shaker drives the cradle to simulate the swing arm action of a person through electromagnetic induction, so that the indication fluctuation of the bracelet sensor is caused to generate step numbers, but the cradle acts strictly according to a program rule, and the action of shaking each time is basically consistent. Although a rocker is also present to change the period of the rocking cycle in a timed manner, the readings of the peaks are substantially the same for the same period of the rocking cycle and do not differ significantly. And due to the limitation of the mechanical structure of the step shaking device, the acceleration data of different shaking periods are different though the fundamental frequencies are different. If the bracelet is actually moved by a human body, the bracelet acceleration data fluctuation has large low-frequency similarity and small high-frequency similarity, but completely consistent fluctuation does not occur. Therefore, the fluctuation with too high similarity can be regarded as the fluctuation which cannot represent the real step number, but the fluctuation of the indication number of the bracelet sensor caused by the step shaker.
Analyzing a human motion model, if the motion of the wrist during the motion of the human body is simplified into simple harmonic motion, the period of the acceleration can directly represent the period of the motion of the wrist, the period of the acceleration data has the number of times of the actual motion of the wrist, and the normal motion of the human body is realized by swinging the wrist once every step, namely the number of the acceleration periods is equal to the number of steps. The acceleration measured by the accelerometer on the bracelet is triaxial data after the real acceleration is decomposed, and due to the special layout of the acceleration sensor on the bracelet, different frequency components can be reflected by different axial data, for example, in fig. 1, the low-frequency component and the module value of the actual acceleration can be reflected by x-axis data, the medium-frequency component and the partial module value of the actual acceleration can be reflected by y-axis data, and the high-frequency component and the module value variation of the actual acceleration can be reflected by z-axis data. Therefore, the scheme determines the contribution to the actual acceleration through the frequency and the modulus value of the data of different axes, separates the data of different axes and refits the acceleration data.
And the data with small contribution degree on the remaining different axes is still an important component of the actual acceleration data although the data has no decisive effect on the period of the actual acceleration data, can reflect the characteristics of the actual acceleration data, and can determine the possibility that the fitting acceleration data represents the actual motion by analyzing the data. However, due to the interference of random noise and inherent noise, the repetition rate of residual data cannot be directly calculated, the scheme selects characteristic frequency based on the phases of peak data and fundamental frequency, divides different scales by the characteristic frequency, measures the repeated information of the peaks with different scales and different components to mark the heat of the repeated information, and estimates the possibility that each peak represents real information according to the heat of the repeated information of each peak.
Specifically, the real acceleration a curve of each section after being segmented according to the step frequency is segmented according to the wave crest, and because the fundamental frequency of each section is the same, the width of each block is equal;
averaging data at the same position of each block in each section to obtain an average block, averaging all data in the average block, subtracting the average value from each data in the average block, and performing Fourier transform on the average block with the average value subtracted to obtain an amplitude-frequency curve (one frequency in the curve is a horizontal axis, and the amplitude is a vertical axis) of a real acceleration a curve shown in FIG. 2, wherein the absolute value of the intrinsic noise does not exceed 0.01, and the Fourier transform does not consider the frequency above 50 Hz;
acquiring the frequency corresponding to the maximum amplitude of the amplitude-frequency curve of the real acceleration a curve as a basic frequency point of the real acceleration a curve, namely an upward point in the curve in transition; fitting is carried out based on the obtained fundamental frequency points and the exponential function, and a fitting curve of a real acceleration a curve is obtained;
as shown in fig. 2, comparing the fitted curve with the amplitude-frequency curve of the true acceleration a curve to obtain the coincidence point of the two curves, marking the coincidence point, and respectively dividing the frequency corresponding to the marked coincidence point into a high frequency part, a medium frequency part and a low frequency part;
corresponding the step frequency section of the segmented real acceleration a curve chart to the x-axis, y-axis and z-axis motion data curve charts of the acceleration sensor, segmenting the x-axis, y-axis and z-axis of the acceleration sensor respectively, and calculating the range R in each section of three-axis (x-axis, y-axis and z-axis) datax、Ry、Rz(value of peak minus trough), RxIs a great difference of the x-axis, RyIs the range of y-axis, RzIs the range of the z axis; comparing the three axes, the axis with the minimum range is the high frequency axis, the axis with the maximum range is the low frequency axis, the remaining axes are the medium frequency axes (for example: R)xIs a minimum value, the x-axis is the high frequency axis, RyMaximum value, y-axis is low frequency axis, z-axis is medium frequency axis);
partitioning the data curves in the high-frequency axis, the low-frequency axis and the medium-frequency axis according to wave peaks, solving the mean value of data at the same position of all blocks on each axis to obtain three-axis mean value blocks respectively, and transforming the three-axis mean value blocks respectively by utilizing Fourier transform to obtain amplitude-frequency curves of each bar of the x axis, the y axis and the z axis of the acceleration sensor respectively (the frequency above 50Hz is not considered in the same way);
and projecting the marked high-frequency, medium-frequency and low-frequency points on the amplitude-frequency curves of the x axis, the y axis and the z axis of the acceleration sensor onto the amplitude-frequency curves of each bar of the x axis, the y axis and the z axis of the acceleration sensor respectively, selecting the low-frequency points in the low-frequency axis, the medium-frequency points in the medium-frequency axis and the high-frequency points in the high-frequency axis, and performing inverse transformation on data in the selected points to obtain a fitted acceleration curve-a sequence. The logic adopted is that data of different axes are decomposed by Fourier transform, special frequency on the special axis is selected, and Fourier inverse transform is carried out on the selected frequency to obtain a fitting sequence a;
extracting wave crests in the x-axis, y-axis and z-axis motion data curve graphs in the acceleration sensor,
obtaining an amplitude-frequency curve and a phase-frequency curve of each peak using a short-time fourier transform;
searching the maximum amplitude frequency in the amplitude-frequency curve of each peak as the fundamental frequency point of the current peak;
obtaining a phase point corresponding to a phase-frequency curve by using the fundamental frequency point; specifically, the fundamental frequency of the fundamental frequency point is projected onto a phase-frequency curve to obtain a phase point corresponding to the phase-frequency curve, and then a horizontal line and a horizontal line with the same phase are made on the phase point, and a point where the horizontal line intersects with the phase-frequency curveMarking to obtain a plurality of phase frequency points with the same phase as the phase point; then marking points with the same frequency as the phase frequency points of the phase-frequency curve on the amplitude-frequency curve to obtain amplitude frequency points; removing the frequency points marked by the amplitude-frequency curve of the fitting curve and the real acceleration a curve from the amplitude frequency points; obtaining the remaining frequency points (namely, selecting frequencies); taking the reciprocal of these chosen frequencies as the chosen scale t of the current peak1、t2、t3……tn(ii) a The corresponding frequency of the extreme point in the frequency and amplitude-frequency curve with the same fundamental frequency phase is the frequency which can accurately reflect the acceleration data characteristics.
In this embodiment, the widths of the wave crests on the x axis, the y axis and the z axis in the acceleration sensor need to be segmented according to the obtained wave crest scale; then acquiring a component vector of each section;
specifically, the method comprises the following steps: the segmentation is carried out according to different scales, i.e. t1、t2、t3……tn(ii) a Segmenting the peak data on different axes (x-axis, y-axis, z-axis):
and for each wave peak on the triaxial data, segmenting the data in the wave peak by using the selected scale of the current wave peak. The specific steps of segmenting under each scale of the current peak are as follows:
obtaining the peak width T, namely the interval of two adjacent peak points;
the formula for deriving the number of segments N based on different selected scales is as follows:
Figure GDA0003279669370000101
wherein, tnSelecting the same scale for the current wave crest;
uniformly selecting N points in the current wave crest;
using the selected point as the center of each segment and the current scale tnDetermining a data segment for each segment width;
in one embodiment, as shown in FIG. 3, the current peak width is T and the dimension is TnWave crestThe width is not necessarily integral multiple of the scale, and the number of the segments under the current scale is obtained by rounding up. If the peak width is 6, the current scale is 4, 6 divided by 4 yields 1.5, and rounding up yields 2, as shown in the figure, where rounding up is to avoid missing a data segment, if rounding down yields 1, the data is divided into one segment, and if only 4 out of 6 numbers are compared, the remaining 2 numbers will be missed, which is inaccurate. Rounding up is to avoid missing data.
The number of segments is the number of segment center points, which are used to locate the segment, and to minimize repetition, the segment center points are uniformly distributed under the current peak, as shown by two black points in the following figure, and the segments are determined by taking the segment center points as the center and the current dimension as the width, as shown by the framed part in the following figure.
Determining the component vector of the current segment formed by the information of each segment;
the first dimension of the vector represents the scale of the current segment, i.e.:
Figure GDA0003279669370000111
wherein, tnAnd T is the width of the current wave crest for the selected scale corresponding to the current segment.
The second dimension of the vector represents the relative position of the current segment, i.e.:
Figure GDA0003279669370000112
where p is the center position of the current segment, p0Is the starting point of the corresponding peak.
The third dimension of the vector represents the relative modulus of the current segment, i.e.:
Figure GDA0003279669370000113
wherein R is the range of the data in the current segment, and R is the range of the corresponding peak.
The fourth dimension of the vector represents the relative phase of the current segment, i.e.:
Figure GDA0003279669370000114
wherein, phi is the phase of the frequency corresponding to the current segment scale.
The fifth dimension of the vector represents the relative magnitude of the current segment, i.e.:
Figure GDA0003279669370000115
wherein A ismThe amplitude of the frequency corresponding to the current segment scale.
The component feature vector for each segment is:
A=[a1 a2 a3 a4 a5]T
each segment has a component feature vector describing the segment, which represents the information contained in the segment;
combining and pairing every two different sections of the wave crests in the same axis and the same position of different axes in the x axis, the y axis and the z axis; calculating Euclidean distance between each pair of feature vectors to measure the similarity between the two segments;
specifically, the method comprises the following steps of; calculating the component vectors of each section to obtain cosine similarity S1 of two adjacent section component feature vectors in each wave peak on each axis of the x axis, the y axis and the z axis in the acceleration sensor;
cosine similarity S2 of component eigenvectors between two sections at the same position of the x axis, the y axis and the z axis in the acceleration sensor;
generating a heat axis which is a horizontal axis of the curve image of the middle x axis, the y axis and the z axis;
comparing S1, S2 with the set threshold value, when the data position in a pair of segments greater than the threshold value is marked on the heat axis;
every time the heat axis is marked once, the heat of the corresponding position is increased by one, and the threshold value in the embodiment is 0.8.
An example of this embodiment is shown in fig. 4, 5 and 6, and the heat represents the repeatability of data for each segment. The boxed portions in the figure represent different data segments on different axes at different scales. The more data pieces similar to the a-piece data, the greater the heat of the a-piece data. Because the data of the acceleration sensor has a wave crest every time the walker shakes once, the shaking of the walker every time is basically consistent with the real motion, the section A is compared with the sections on different wave crests of the same shaft; and because the data obtained by the acceleration sensor is triaxial every time the sensor is shaken, the A section is compared with the data sections on the peaks of the same time period in other two axes.
Each peak is divided into different segments, and the position of each segment is accumulated with a heat, and the heat of different positions is different for each peak, namely the data of different positions is different from the repeated condition of other data. The following figures illustrate schematically: the two-row sequence is the heat degree of the positions of the two peaks, and the Euclidean distance of the two heat degrees is calculated to judge the possibility that the data of the current position represents the real step number; the greater the Euclidean distance, the greater the likelihood of representing a true number of steps; the smaller the euclidean distance, the smaller the possible property representing the true step count.
...... 5 5 6 7 7 7 5 4 3 3 ......
...... 7 7 5 5 5 5 4 4 4 4 ......
The euclidean distance of the two sequences in the first table above is calculated as follows:
Figure GDA0003279669370000121
segmenting the heat axis according to the wave crest in the acceleration curve-fitting a sequence, and confirming the possibility that the current segment represents real motion data; the possibilities include non-true motion segments, and possible motion segments;
specifically, in the determination, the method adopted in this embodiment is: and segmenting the heat axis according to wave crests in the fitted a sequence, wherein one wave crest has a corresponding segment of heat.
The euclidean distance d of each segment heat with its next adjacent segment heat is compared to determine the likelihood that the current segment represents true motion data.
When d is>X1When the motion is not true, the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a non-true motion section;
when X is present1>d>X2When the section is a possible motion section, the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a possible motion section;
when d is<X2When the motion is detected, the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a real motion section;
x in the present example1The value taken is 9, X2The value taken is 3.
Another example of this embodiment is shown in table two, where the euclidean distance between each peak and the heat of its succeeding peak is shown, and (5556) in the table shows peaks that may represent possible motion segments, (12131414) shows peaks that may represent non-true motion segments, and (22.6) shows peaks of true motion segments;
counting the number of real motion segments, namely, the segment with the Euclidean distance of (22.6) in the segment and 2 steps;
then calculating the step number of the possible motion segment;
calculating the Housdov distance D between the possible motion segment and other segment dataH
When the Hausdorff distance DHWhen the value is less than the threshold value Y, the segment is a non-real motion segment;
when the Hausdorff distance DHWhen the value is not less than the threshold value Y, the probability p that the segment represents the real motion segment is calculatedn(ii) a The expression is as follows:
Figure GDA0003279669370000131
wherein D is the maximum value of the calculated Euclidean distance;
counting the number of real motion segments as the number of real steps n2The true number of steps in a possible motion segment is: p is a radical ofn*n1,n1Is a Hausdorff distance DHThe number of possible motion segments not less than the threshold value Y:
n=pn*n1+n2
n is the final real number of steps of the bracelet.
The above disclosure is only for the purpose of illustrating the preferred embodiments of the present application and is not to be construed as limiting the scope of the present application, so that the present application is not limited thereto, and all equivalent variations and modifications can be made to the present application.

Claims (10)

1. An intelligent bracelet accurate step counting method based on a neural network is characterized by comprising the following steps:
respectively extracting x-axis, y-axis and z-axis motion data graphs in the bracelet acceleration sensor, and acquiring a real acceleration a graph of the acceleration sensor through the x-axis, y-axis and z-axis motion data graphs; segmenting the real acceleration a curve graph by using an extreme value in the real acceleration a curve graph, deleting error data caused by non-striding, and segmenting the real acceleration a curve graph with the error data deleted according to step frequency;
acquiring a fitting curve of a real acceleration a curve, comparing the fitting curve with the curve before fitting, and marking the repeated points after comparison according to high frequency, medium frequency and low frequency;
corresponding the step frequency section of the segmented real acceleration a curve graph to the x-axis, y-axis and z-axis motion data curve graphs of the acceleration sensor, segmenting the x-axis, y-axis and z-axis of the acceleration sensor, and respectively acquiring the amplitude-frequency curve of each segment of the x-axis, y-axis and z-axis of the acceleration sensor;
selecting points corresponding to the marked high frequency, medium frequency and low frequency on the amplitude-frequency curves of the x axis, the y axis and the z axis of the acceleration sensor, and obtaining a fitted acceleration curve-fitted a sequence according to the selected points;
extracting wave crests in an x-axis, y-axis and z-axis motion data curve graph in the acceleration sensor to obtain the scale of the current wave crest;
segmenting the wave crest widths on the x axis, the y axis and the z axis in the acceleration sensor according to the obtained wave crest scale;
acquiring component vectors in each section, acquiring the similarity of two adjacent sections on each axis of an x axis, a y axis and a z axis in the acceleration sensor and the similarity between two sections at the same position of the x axis, the y axis and the z axis in the acceleration sensor by using the acquired component vectors in each section, comparing the acquired similarity with a set threshold, and when the similarity is greater than the threshold, performing digital marking on the projection axis of the x axis, the y axis and the z axis at the position corresponding to the section to acquire a heat axis;
segmenting the heat axis according to the wave crest in the acceleration curve-fitting a sequence, and confirming the possibility that the current segment represents real motion data;
and selecting a real motion segment and a possible motion segment, and acquiring the real step number of the bracelet by utilizing the selected possible motion segment and the real motion segment.
2. The accurate step counting method for the smart band based on the neural network as claimed in claim 1, wherein the real acceleration a curve of the acceleration sensor is obtained by vector summation of data in x-axis, y-axis and z-axis motion data curves of the acceleration sensor.
3. The method for accurately counting the steps of the smart band based on the neural network as claimed in claim 1 or 2, wherein the deleting error data caused by non-striding comprises:
data that do not conform to the walking rule and data that do not conform to the walking time;
the data which do not conform to the walking rule are confirmed according to the following method: calculating the node number n of each segmented section passing through the wave crest in the extreme value segmented curve chart of the real acceleration a, and deleting the data of the section if n is less than 6;
the data not conforming to the walking time is confirmed according to the following method: and calculating the time difference dt between two extreme points in each segment, and deleting the segment of data if dt is less than 0.1 s.
4. The accurate step counting method for the smart band based on the neural network as claimed in claim 1, wherein the fitting curve of the true acceleration a-curve is fitted according to the following method:
partitioning the real acceleration a curve graph of each section after being segmented according to wave crests;
obtaining the average value of the data of the same position of each block in each section to obtain an average block, solving the average value of the data in the average block, and performing Fourier transform by using the difference value of the data in the average block and the average value to obtain an amplitude-frequency curve of a real acceleration a curve;
fitting the amplitude-frequency curve of the true acceleration a curve based on an exponential function to obtain a fitting curve of the true acceleration a curve;
and comparing the fitting curve of the real acceleration a curve with the amplitude-frequency curve of the real acceleration a curve, marking the frequency of the coincident point of the two curves, and dividing the marked frequency into a high frequency part, a medium frequency part and a low frequency part.
5. The accurate step counting method for the smart band based on the neural network as claimed in claim 1, wherein after segmenting the x-axis, the y-axis and the z-axis of the acceleration sensor, the amplitude-frequency curves of each segment of the x-axis, the y-axis and the z-axis of the acceleration sensor are respectively obtained as follows:
calculating the range R of the data in each section of the x-axis, the y-axis and the z-axis of the acceleration sensorx、Ry、Rz,RxIs a great difference of the x-axis, RyIs the range of y-axis, RzIs the range of the z axis;
comparing and calculating the range of the x axis, the y axis and the z axis, taking the axis with the minimum range as a high-frequency axis, taking the axis with the maximum range as a low-frequency axis, and taking the rest axes as a medium-frequency axis;
partitioning the data in the high-frequency axis, the low-frequency axis and the medium-frequency axis according to wave peaks, solving the mean value of the data at the same position of all the blocks on each axis to obtain three-axis mean value blocks respectively, and transforming the three-axis mean value blocks respectively by utilizing Fourier transform to obtain amplitude-frequency curves of each bar of the x axis, the y axis and the z axis of the acceleration sensor respectively;
and projecting the marked high-frequency, medium-frequency and low-frequency points on the amplitude-frequency curves of the x axis, the y axis and the z axis of the acceleration sensor onto the amplitude-frequency curves of each bar of the x axis, the y axis and the z axis of the acceleration sensor respectively, selecting the low-frequency points in the low-frequency axis, the medium-frequency points in the medium-frequency axis and the high-frequency points in the high-frequency axis, and performing inverse transformation on data in the selected points to obtain a fitted acceleration curve-a sequence.
6. The accurate step counting method for the smart band based on the neural network as claimed in claim 1, wherein the method for obtaining the scale of the current peak is as follows:
obtaining an amplitude-frequency curve and a phase-frequency curve of each peak using a short-time fourier transform;
taking the point of the maximum frequency in the amplitude-frequency curve as the basic frequency point of the current peak;
obtaining a phase point corresponding to a phase-frequency curve by using the fundamental frequency point;
marking a plurality of phase frequency points with the same phase as the phase point on a phase-frequency curve;
marking corresponding amplitude frequency points on an amplitude-frequency curve by using the plurality of phase frequency points; marking the amplitude frequency point;
deleting the frequency in the amplitude frequency point and the same frequency marked by the real acceleration a curve; and calculating the scale of the current peak by taking the residual frequency as the reciprocal.
7. The accurate step counting method for the smart band based on the neural network as claimed in claim 1, wherein the method for segmenting the widths of the wave crests on the x-axis, the y-axis and the z-axis of the acceleration sensor is as follows:
obtaining the width T of a peak, wherein the width of the peak is the distance between two adjacent peaks;
segmentation is performed according to the following mathematical formula:
Figure FDA0003279669360000031
in the formula, tnThe current wave crest has the same selected scale, and N is the number of segments;
and acquiring component feature vectors of each segment according to the following method:
the component vectors for each segment are:
A=[a1 a2 a3 a4 a5]T
in the formula: a is1Is the scale of the current segment, a2Is the relative position of the current segment, a3Is the relative modulus of the current segment, a4Is the relative phase of the current segment, a5Is the relative amplitude of the current segment;
wherein:
Figure FDA0003279669360000032
in the formula: t is tnFor the corresponding selection of the current segmentScaling, wherein T is the width of the current peak;
Figure FDA0003279669360000033
in the formula: p is the center position of the current segment, p0Is the starting point of the corresponding wave crest;
Figure FDA0003279669360000041
in the formula: r is the range of the data in the current segment, and R is the range of the corresponding wave crest;
Figure FDA0003279669360000042
in the formula: phi is the phase of the frequency corresponding to the current segment scale;
Figure FDA0003279669360000043
in the formula: a. themThe amplitude of the corresponding frequency for the current segment scale.
8. The accurate step counting method for the smart band based on the neural network as claimed in claim 7, wherein the similarity between two adjacent segments on each axis of the x-axis, the y-axis and the z-axis in the acceleration sensor and the similarity between two segments at the same position of the x-axis, the y-axis and the z-axis in the acceleration sensor are obtained according to the cosine value of the component eigenvector.
9. The accurate step counting method for smart band based on neural network as claimed in claim 7, wherein the possibility that the current segment represents the real motion data is confirmed according to the following method:
comparing the Euclidean distance d between the heat degree of each section of the segmented rear heat degree shaft and the heat degree of the rear adjacent section;
when d is>X1When the motion is not true, the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a non-true motion section;
when X is present1>d>X2When the section is a possible motion section, the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a possible motion section;
when d is<X2And when the section of the acceleration curve-fitting a sequence corresponding to the section of the heat axis is a real motion section.
10. The accurate step counting method for the smart band based on the neural network as claimed in claim 9, wherein the real step count of the smart band is obtained by using the following method:
calculating the Housdov distance D between the possible motion segment and other segment dataH
When the Hausdorff distance DHWhen the value is less than the threshold value Y, the segment is a non-real motion segment;
when the Hausdorff distance DHWhen the value is not less than the threshold value Y, the probability p that the segment represents the real motion segment is calculatedn(ii) a The expression is as follows:
Figure FDA0003279669360000044
wherein D is the maximum value of the calculated Euclidean distance;
counting the number of real motion segments as the number of real steps n2The true number of steps in a possible motion segment is: p is a radical ofn*n1,n1Is a Hausdorff distance DHThe number of possible motion segments not less than the threshold value Y:
n=pn*n1+n2
n is the final real number of steps of the bracelet.
CN202110916088.1A 2021-08-11 2021-08-11 Intelligent bracelet accurate step counting method based on neural network Active CN113378801B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110916088.1A CN113378801B (en) 2021-08-11 2021-08-11 Intelligent bracelet accurate step counting method based on neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110916088.1A CN113378801B (en) 2021-08-11 2021-08-11 Intelligent bracelet accurate step counting method based on neural network

Publications (2)

Publication Number Publication Date
CN113378801A CN113378801A (en) 2021-09-10
CN113378801B true CN113378801B (en) 2021-11-09

Family

ID=77576689

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110916088.1A Active CN113378801B (en) 2021-08-11 2021-08-11 Intelligent bracelet accurate step counting method based on neural network

Country Status (1)

Country Link
CN (1) CN113378801B (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110057380A (en) * 2019-04-30 2019-07-26 北京卡路里信息技术有限公司 Step-recording method, device, terminal and storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130085700A1 (en) * 2011-09-30 2013-04-04 Apple Inc. Techniques for improved pedometer readings
CN103997572B (en) * 2014-06-03 2016-01-20 深圳市爱康伟达智能医疗科技有限公司 A kind of step-recording method based on mobile phone acceleration sensor data and device
US10539429B1 (en) * 2014-11-03 2020-01-21 Savvysherpa, Llc Accelerometer-based systems and methods and quantifying steps
CN107314775B (en) * 2017-05-17 2019-09-10 浙江利尔达物联网技术有限公司 A kind of switching at runtime based on 3-axis acceleration sensor calculates the step-recording method of axis
CN107462258B (en) * 2017-07-13 2020-06-16 河海大学 Step counting method based on mobile phone three-axis acceleration sensor
CN109029492B (en) * 2018-10-12 2021-09-03 潍坊歌尔电子有限公司 Step counting method and device and wrist step counting equipment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110057380A (en) * 2019-04-30 2019-07-26 北京卡路里信息技术有限公司 Step-recording method, device, terminal and storage medium

Also Published As

Publication number Publication date
CN113378801A (en) 2021-09-10

Similar Documents

Publication Publication Date Title
US9700241B2 (en) Gait analysis system and method
CN106289309B (en) Step-recording method and device based on 3-axis acceleration sensor
CN105992932B (en) Improvement to walking is detected in the measurement result of user movement
CN110664390B (en) Heart rate monitoring system and method based on wrist strap type PPG and deep learning
CN103727959B (en) Step-recording method and device
CN107220617A (en) Human body attitude identifying system and method
CN106030246B (en) The equipment that is counted for the number of cycles of the cycle movement to object, method and system
EP3090685A1 (en) Pedometer and method for analyzing motion data
Ferrero et al. On gait recognition with smartphone accelerometer
CN106456030A (en) Device and method for removing artifacts in physiological measurements
CN105588577A (en) Detection method and detection apparatus for abnormal step counting in exercise monitoring device
CN107530030A (en) Determine the method and its implementation of human motion Activity Type
Tralie et al. (Quasi) periodicity quantification in video data, using topology
CN108836342A (en) It is a kind of based on inertial sensor without feature human motion identification method
CN109938740A (en) A kind of gait cycle detecting method, device and computer readable storage medium
CN105844626B (en) One kind is based on winding identification and local surface fitting magnetic resonance phase unwrapping method
CN112401876A (en) Method and system for human gait detection
CN105589977B (en) A kind of times of exercise monitoring method and device
JP2012524578A (en) System and method for determining the activity of moving elements
CN113378801B (en) Intelligent bracelet accurate step counting method based on neural network
Wang et al. Robust and accurate step counting based on motion mode recognition for pedestrian indoor positioning using a smartphone
CN114052693B (en) Heart rate analysis method, device and equipment
CN114755010A (en) Rotary machine vibration fault diagnosis method and system
CN111428690B (en) Identity authentication method based on gait signal topology analysis
US11842571B2 (en) System and method for exercise type recognition using wearables

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant