Position estimation device and method for estimating position

The position estimation device uses multiple amplitude detection methods and real-time attitude correction to improve step counting accuracy, addressing inaccuracies in PDR-based systems and enhancing position estimation precision.

JP2025004478APending Publication Date: 2025-01-15CHIBA UNIV
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023104193
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-06-26
Publication Date
2025-01-15

AI Technical Summary

Technical Problem

Existing position estimation devices using PDR face inaccuracies in counting steps due to short stride lengths and miscounting from noise, leading to significant discrepancies in position estimation.

Method used

A position estimation device that utilizes multiple amplitude detection methods based on acceleration in different axes to accurately count steps, compensating for missed counts and reducing processing requirements, while incorporating attitude estimation from sensors to separate and correct sensor orientations in real-time.

Benefits of technology

Enhances the accuracy of step counting and position estimation by compensating for missed steps and improving the determination of stride length and direction, achieving high precision in indoor and outdoor environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025004478000001_ABST
    Figure 2025004478000001_ABST
Patent Text Reader

Abstract

To provide a position estimation device and a method for estimating a position with high accuracy of estimating the position.SOLUTION: A position estimation device 10 includes: a number-of-step estimation unit for estimating the number of steps; a step length estimation unit for estimating the step length; a direction-of-travelling estimation unit for estimating a direction of travelling. The number-of-step estimation unit includes: first amplitude detection means capable of detecting the number of steps from a first amplitude based on the acceleration of a one-axis direction in a lengthwise direction in a predetermined cycle; and second amplitude detection means capable of detecting the number of steps from a second amplitude based on the acceleration of the one-axis direction or a two-axis direction in a lateral direction in the predetermined cycle.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a pedestrian position estimation device and a pedestrian position estimation method. [Background technology]

[0002] In recent years, the spread of mobile terminals such as smartphones and tablets has led to an increasing demand for location estimation devices and methods that estimate user location information. Such location estimation methods are broadly classified into star reckoning and dead reckoning.

[0003] GPS (Global Positioning System), known as an example of a star reckoning method, can estimate a location accurately by receiving radio waves from multiple artificial satellites. However, accurate location estimation is best performed outdoors or in other locations with few obstructions, and is not suitable for underground or indoor facilities.

[0004] PDR (Pedestrian Dead Reckoning), known as an example of a dead reckoning technique, can estimate the relative position from a certain point based on acceleration, geomagnetism, etc. obtained from sensors built into mobile terminals. Therefore, it has the advantage of being able to estimate the position regardless of whether it is indoors or outdoors.

[0005] For example, the position estimation device in Patent Document 1 estimates position using PDR, and estimates the number of steps, stride length, and direction of travel based on acceleration, geomagnetism, etc. acquired from sensors.The device calculates the distance traveled from a certain point as the product of the number of steps and stride length, and can estimate the position after travel by reflecting the estimated direction of travel. [Prior art documents] [Patent documents]

[0006] [Patent Document 1] JP-A-9-89584 (pages 4 and 5, Figure 3) Summary of the Invention [Problem to be solved by the invention]

[0007] In a position estimation device such as that in Patent Document 1, an acceleration sensor that detects acceleration in each direction along three axes, the x-axis, y-axis, and z-axis, is used to estimate the number of steps regardless of the walking state, such as so-called multitasking, in which the position estimation device is held in front of the body and the user walks while looking at the screen, or so-called waving walking, in which the device is held to the side of the body and the user walks while waving.

[0008] Common methods for estimating the number of steps using an acceleration sensor include estimating the number of steps by comparing the peak value obtained from the acceleration in the z-axis direction with a preset threshold, or estimating the number of steps based on the number of times the acceleration in the z-axis direction switches from increasing to decreasing.

[0009] However, the former method may not count steps unless the peak value exceeds the threshold due to a small stride, and the latter method may count noise such as vibrations when landing as steps. In particular, in position estimation using PDR, errors in the number of steps are a major factor in causing significant deviations in position estimation.

[0010] The present invention has been made in light of the above-mentioned problems, and has an object to provide a position estimation device and a position estimation method that achieve high position estimation accuracy. [Means for solving the problem]

[0011] The position estimation device according to the present invention, which solves the above problems, A position estimation device including a step count estimation unit that estimates a step count, a stride length estimation unit that estimates a stride length, and a traveling direction estimation unit that estimates a traveling direction, The step count estimation unit is characterized by having a first amplitude detection means capable of detecting the number of steps from a first amplitude based on acceleration in at least one vertical axis direction in a predetermined period, and a second amplitude detection means capable of detecting the number of steps from a second amplitude based on acceleration in one or two horizontal axes directions in the predetermined period. With this configuration, by using the first amplitude detection means and the second amplitude detection means in combination, it is possible to compensate for steps not detected by one means by detection by the other means, thereby improving the accuracy of detecting the number of steps.

[0012] When the number of steps is detected by the first amplitude detection means or the second amplitude detection means, the step number estimation unit does not use other amplitude detection means. This can reduce the amount of processing required to estimate the number of steps.

[0013] The step number estimation unit performs detection by the first amplitude detection means prior to the second amplitude detection means. This makes it easy to determine the predetermined period.

[0014] The position estimation device further includes an attitude estimation unit that estimates an attitude based on acceleration, angular velocity, and geomagnetism. This makes it possible to separate the acceleration in each of the two horizontal axes and the acceleration in one vertical axis in real time regardless of the state of the sensor.

[0015] The step count estimation unit determines a walking state according to a tilt of a roll axis. This allows the walking state to be determined in real time.

[0016] the step number estimation unit further includes a third amplitude detection means capable of detecting a step number from a third amplitude based on an acceleration in one axial direction in a vertical direction in a specific cycle; If the walking state determined by the posture estimation unit is a hand-waving walking state, the first amplitude detection means and the second amplitude detection means are used in combination, and if the walking state determined by the posture estimation unit is a hand-waving walking state, the third amplitude detection means is used. This makes it possible to estimate the number of steps using the most suitable detection means according to the walking state.

[0017] The stride estimating unit estimates the stride based on acceleration in two lateral directions and acceleration in one vertical direction. This allows changes in stride length to be determined with high accuracy.

[0018] A position estimation method according to the present invention that solves the above problems includes: A position estimation method including a step count estimation process for estimating a step count, a stride length estimation process for estimating a stride length, and a traveling direction estimation process for estimating a traveling direction, The step count estimation process is characterized by having a first amplitude detection step capable of detecting the number of steps from a first amplitude based on acceleration in at least one vertical axis direction in a predetermined period, and a second amplitude detection step capable of detecting the number of steps from a second amplitude based on acceleration in one or two horizontal axes directions in the predetermined period. With this configuration, by using the first amplitude detection process and the second amplitude detection process in combination, which detect different amplitudes, it is possible to compensate for steps not detected by one process by detection of the other process, thereby improving the accuracy of detecting the number of steps. [Brief description of the drawings]

[0019] [Figure 1] 1 is a schematic diagram of a position estimation device according to an embodiment of the present invention; [Diagram 2] 13 is a flowchart of a step count estimation process. [Diagram 3] 11 is a flowchart outlining a step count estimation step for walking while doing other things. [Figure 4] 13(a) and 13(b) are a graph and a table showing an example of processing timing and maximum and minimum values ​​during walking while doing something else using Adiff. [Diagram 5] 13 is a graph showing an example of application of the criterion during multitask walking using Axy,max. [Figure 6]11 is a flowchart outlining a step count estimation step based on hand-waving walking. [Figure 7] 11 is a graph showing an example of acceleration values ​​during hand-waving walking. [Figure 8] 13A is a graph showing an example of acceleration values ​​when walking while doing other things, and FIG. 13B is a graph showing an example of acceleration values ​​when walking while waving hands. [Figure 9] FIG. 11 is a diagram illustrating an example of a position estimation result. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0020] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A position estimation device and a position estimation method according to the present invention will be described below based on embodiments. EXAMPLES

[0021] A position estimation device and a position estimation method according to an embodiment of the present invention will be described with reference to FIGS.

[0022] As shown in FIG. 1, a position estimation device 10 performs position estimation by PDR using sensors 2, 3, and 4 and a control unit 5 in a mobile terminal 1, which is typified by a smartphone, a tablet terminal, or the like.

[0023] The position estimation device 10 is mainly composed of an acceleration sensor 2, an angular velocity sensor 3, a geomagnetic sensor 4, and a control unit 5, all of which are built into the mobile terminal 1. In this embodiment, the acceleration sensor 2, the angular velocity sensor 3, and the geomagnetic sensor 4 have all been subjected to offset adjustment.

[0024] The acceleration sensor 2 detects acceleration in the x-axis direction, the y-axis direction, and the z-axis direction in a local coordinate system based on the acceleration sensor 2 itself.

[0025] In this embodiment, for ease of explanation, the two horizontal axes in the local coordinate system are referred to as the x-axis and y-axis, and one vertical axis is referred to as the z-axis, the two horizontal axes in the world coordinate system are referred to as the pitch axis and roll axis, and one vertical axis is referred to as the yaw axis.

[0026] The angular velocity sensor 3 detects angular velocities around the x-axis, y-axis, and z-axis in a local coordinate system based on the angular velocity sensor 3 itself.

[0027] The geomagnetic sensor 4 detects the value of magnetic force in the x-axis direction, the y-axis direction, and the z-axis direction in a local coordinate system based on the geomagnetic sensor 4 itself.

[0028] The control unit 5 is composed of a CPU, main memory, etc. (not shown), and performs functions such as storing, reading, and controlling programs for position estimation, storing values ​​obtained from the sensors 2, 3, and 4, and performing various calculations using these values ​​and storing the results of those calculations.

[0029] The control unit 5 is configured to be able to execute posture estimation processing 20, step count estimation processing 30, stride length estimation processing 40, traveling direction estimation processing 50, and position estimation processing 60. The control unit 5 stores a position estimation program, and executes the processes in the order of posture estimation processing 20, step count estimation processing 30, stride length estimation processing 40, traveling direction estimation processing 50, and position estimation processing 60. The processes will be explained below in the order of execution.

[0030] [Posture estimation processing] First, the attitude estimation process 20 will be described. The control unit 5 converts the local coordinate values ​​acquired from the sensors 2, 3, and 4 into world coordinate values ​​using a complementary filter. This complementary filter corrects the value calculated using the value acquired from the angular velocity sensor 3 using the value acquired from the acceleration sensor 2, and further corrects it using the value acquired from the geomagnetic sensor 4.

[0031] From the following, the value obtained from acceleration sensor 2 is a = (a x ,a y ,a z) [m / s 2 ], and the value obtained from the angular velocity sensor 3 is ω = (ω x ,ω y ,ω z ) [rad / s], and the value obtained from the geomagnetic sensor 4 is m = (m x ,m y ,m z )[T], the rotation matrix that rotates the vector with the quaternion q is R(q), the difference between the previous processing time t-1 and the current processing time t is ΔT[s], and the gravitational acceleration is g=9.798[m / s 2 ].

[0032] [[Posture Estimation Using Angular Rate Sensors]] In the posture estimation using the angular velocity sensor 3, the control unit 5 calculates the quaternion q at time t using the value ω obtained from the angular velocity sensor 3. t =[q t,0 ,q t,1 ,q t,2 ,q t,3 ] T The initial value of the quaternion is q=[1,0,0,0]. T It is.

[0033] Quaternion q at time t t is the quaternion that changed from time t-1 to time t, that is, the quaternion q that changed during ΔT. ’ =[q ’ 0,q ’ 1,q ’ 2,q ’ 3] T Calculate the quaternion q at time t-1. t-1 =[q t-1,0 ,q t-1,1 ,q t-1,2 ,q t-1,3 ] T The quaternion q that changed during ΔT can be calculated by reflecting ’ can be calculated using the following formula 1.

[0034]

number

[0035] Also, the quaternion q at time t t can be calculated using the following formula 2.

[0036]

number

[0037] [[Correction using acceleration sensors]] In the correction using the acceleration sensor 2, the control unit 5 calculates the quaternion q at time t calculated from the value ω of the angular velocity sensor 3. t The quaternion q represents the attitude corrected using the value a of the acceleration sensor 2. ’ t Request.

[0038] Corrected quaternion q ’ t is the quaternion q at time t calculated from the value ω of the angular velocity sensor 3 using the absolute angles of the pitch and roll axes with respect to the world coordinates calculated using the value a of the acceleration sensor 2. t The correction strength is adjusted to reduce errors that occur when the value changes significantly during acceleration or deceleration. This will be explained in detail later.

[0039] Quaternion q at time t obtained from the value ω of angular velocity sensor 3 t Since there is some error in this quaternion q t If the value of acceleration sensor 2 is rotated based on the above, the value a obtained from acceleration sensor 2 will be a value that is slightly shifted from (0,0,g). Let G = (G x ,G y ,G z ), the vector G can be calculated by the following equation 3. Note that a in equation 3 is the value a obtained from the acceleration sensor 2.

[0040]

number

[0041] Find the quaternion that rotates G to (0,0,g) and give q t By multiplying and rotating it, the quaternion q corrected using the value a of the acceleration sensor 2 is obtained. ’ t The reference vector (0,0,g) is a0 = (0,0,1), and the rotation axis unit vector that represents the rotation direction in the quaternion is a n =(a n,x ,a n,y ,a n,z ), then the rotation axis unit vector a n can be calculated using the following formula 4.

[0042]

number

[0043] Also, the scalar representing the rotation angle is θ a Then, the scalar θ a can be calculated using the following formula 5.

[0044]

number

[0045] And the acceleration correction quaternion is q a Then, the correction quaternion q a can be calculated from the following equation 6. As can be seen from equation 6, the yaw axis component is 0, that is, only corrections for the pitch axis and roll axis are calculated.

[0046]

number

[0047] Correction Quaternion q aIf we use it as it is, there is a risk that it will be affected by all the noise detected by the acceleration sensor 2, so we use a quaternion q that does not rotate anything. I = (1, 0, 0, 0) is used. If the value representing the correction strength of the correction quaternion is α, then the new correction quaternion q ’ a can be expressed as the following equation 7.

[0048]

number

[0049] In order to adjust the correction strength according to the magnitude of the vector obtained from the value a of the acceleration sensor 2, the correction strength α is determined as shown in the following formula 8. α0 is a fixed correction strength, and f(e g ) is a function of the error relative to the gravitational acceleration g.

[0050]

number

[0051] Also, f(e g ) are defined as in the following equations 9 and 10. It is necessary to conduct experiments to find the appropriate values ​​for α0, e1, and e2.

[0052]

number

[0053]

number

[0054] From the above, the quaternion q corrected using the value a of the acceleration sensor 2 is ’ t can be obtained as Equation 11.

[0055]

number

[0056] [[Correction using geomagnetic sensors]] In the correction using the geomagnetic sensor 4, the control unit 5 calculates the quaternion q ’ t The quaternion q represents the attitude after further correcting it using the value m of the geomagnetic sensor 4. ’’ t Request.

[0057] Further corrected quaternion q ’’ t is a quaternion q corrected using the value a of the acceleration sensor 2, using the absolute angle of the yaw axis with respect to the world coordinates obtained using the value m of the geomagnetic sensor 4. ’ t Then, the correction strength is adjusted in the same manner as in the correction using the acceleration sensor 2. This will be described in detail below.

[0058] Quaternion q calculated from acceleration and angular velocity ’ t If the value m of the geomagnetic sensor 4 is rotated based on the above, the value L = (L x ,L y ,L z ) can be calculated from the following formula 12. In order to make it easier to distinguish between characters, the letter L is written in capital letters in the examples.

[0059]

number

[0060] L x ,L y Considering this, we can calculate the error with respect to the direction at the time when processing started. If the direction was north at the time when processing started, the error with respect to north can be calculated. The correction quaternion by the geomagnetic sensor 4 is q m Then, the correction quaternion q m can be calculated using the following formula 13.

[0061]

number

[0062] Correction quaternion q m If we use it as it is, there is a risk that it will be affected by all the noise of the geomagnetic sensor 4, so we use the quaternion q I = (1, 0, 0, 0) is used. If the value representing the correction strength of the correction quaternion is β, then the new correction quaternion q ’ m can be expressed as the following equation 14. It is necessary to find the appropriate value for β through experiments.

[0063]

number

[0064] From the above, the quaternion q corrected using the geomagnetic sensor 4 is ’’ t , i.e., the quaternion q corrected for all axes, pitch, roll, and yaw. ’’ t can be calculated using the following formula 15.

[0065]

number

[0066] As described above, in this embodiment, the acceleration sensor 2, the angular velocity sensor 3, the geomagnetic sensor 4, the control unit 5, and the attitude estimation process 20 stored in the control unit 5 constitute the attitude estimation unit of the present invention.

[0067] In the attitude estimation process 20 of this embodiment, since the attitude changed from the attitude of one cycle before can be obtained using the value acquired from the angular velocity sensor 3, it is possible to always obtain in real time the direction in which the sensors 2, 3, and 4 are pointing in the world coordinates. It is possible to separate the acceleration of each of the pitch axis and roll axis, and the acceleration in the yaw axis direction in real time.

[0068] Furthermore, the attitude estimated from the values ​​obtained from the angular velocity sensor 3 is corrected with values ​​obtained from the acceleration sensor 2 and the geomagnetic sensor 4, so that the direction in which the sensors 2, 3, and 4 are pointing in the world coordinates can always be determined in real time with high accuracy.

[0069] In addition, the complementary filter has the advantage that the amount of calculation is less than that of the extended Kalman filter, which is known as another filter capable of estimating attitude, and that it converges faster than the Madgwick filter, i.e., it takes less time to indicate an accurate attitude. In other words, it is a filter suitable for estimating attitude in real time. Note that attitude estimation may be performed using a filter other than the complementary filter.

[0070] In addition, in this embodiment, quaternions are used to calculate angles, so not only are the number of trigonometric functions that appear smaller than in calculations using Euler angles, and the time required for calculation is shorter, but there is also the advantage that there is no rotation singularity known as gimbal lock.

[0071] Hereinafter, for the sake of simplicity, unless otherwise specified, the value of the acceleration sensor 2 is the acceleration A corrected to the pitch axis, roll axis, and yaw axis values ​​in the world coordinate system. x ,A y ,A z In other words, in the following explanation, acceleration A x is the acceleration in the pitch axis direction, and the acceleration A y is the acceleration in the roll axis direction, and the acceleration A z is the acceleration in the yaw axis direction. This is the quaternion q ’’ tThe acceleration in the local coordinate system obtained from the acceleration sensor 2 can be obtained by rotating the acceleration in the local coordinate system using the above formula.

[0072] [Step count estimation process] Next, a description will be given of the step count estimation process 30. As shown in Fig. 2, the control unit 5 executes an angular velocity determination step S1, a walking state determination step S2, a step count estimation step S3 based on walking while doing other things, and a step count estimation step S4 based on walking with waving hands.

[0073] If the angular velocity acquired from the angular velocity sensor 3 is less than a certain value in the angular velocity determination step S1, the control unit 5 proceeds to the walking state determination step S2 (step S1: Yes). If the angular velocity is equal to or greater than the certain value, it determines that it is time to switch between doing something and waving walking, does not count the number of steps (step S1: No), and repeatedly executes step S1 until the angular velocity acquired from the angular velocity sensor 3 becomes less than the certain value.

[0074] [[Walking state determination]] In the walking state determination step S2, the control unit 5 determines the quaternion q ’’ t The tilt of the roll axis is calculated using the above formula. If the tilt of the roll axis is less than a certain angle, it is determined that the person is walking while doing something, and the process proceeds to step S3, which is estimating the number of steps due to walking while doing something. If the tilt of the roll axis is equal to or greater than a certain angle, it is determined that the person is walking while waving hands, and the process proceeds to step S4, which is estimating the number of steps due to walking while waving hands.

[0075] [[Estimating step count while walking]] Referring to FIG. 3, when the control unit 5 proceeds to step S3 (see FIG. 2) of estimating the number of steps while walking, the control unit 5 calculates the acceleration A x , acceleration in the roll axis direction A y and the acceleration A in the yaw direction z Read A diff Calculate the value of and compare it with the acceleration A x ,A y ,A zThe time when the value is read (hereinafter referred to as the "time of step S30") is stored in association with the value (step S30). diff is the difference between the acceleration norm and the gravitational acceleration g, and is calculated by the following equation 16.

[0076]

number

[0077] As shown in Figure 4, when walking while doing other things, diff fluctuates in a waveform according to the elapsed time. diff is the acceleration A in the yaw axis direction z In addition, at least one of the accelerations A in the pitch axis direction changes depending on the walking. x and the acceleration A in the roll axis direction y In particular, when walking while doing other things, there is no influence of hand movements, and the acceleration A x ,A y is easily obtained.

[0078] This results in an acceleration A in the yaw axis direction. z Even if the distance is the same, A diff The amplitude of A is larger than that of A when not walking such as stepping on the spot. diff Since the amplitude of the walking motion is likely to be larger than that of the walking motion, it becomes easier to determine whether or not the person is walking while doing something else.

[0079] A diff Actual experiments have shown that the waveform of A changes depending on whether the person is walking or not. diff In order to count the number of steps from the waveform of A diff A when the value of changes from negative to positive diff The timing when A = 0 is the start timing of a given cycle (see Calculation timing in Figure 4(a)). diff A when the value of changes from negative to positive diffThe timing when A = 0 is the end timing of that cycle and the start timing of the next specified cycle. In other words, the specified cycle corresponds to a 360-degree cycle of a sine wave, and A diff Maximum value of A diff,max and the minimum value A diff,min One by one (□A in Figure 4(a) diff,max , 〇A diff,min (See references below.) This is explained in detail below.

[0080] Returning to FIG. 3, the control unit 5 performs steps S30 to S32 as diff By repeating this process until the value of changes from negative to positive (step S32: Yes), the maximum value A in a predetermined period from the current processing timing to just after the previous processing timing (hereinafter referred to as the "current period") is obtained. diff,max , minimum value A diff,min , maximum value A x,max , maximum value A y,max get.

[0081] Specifically, regarding the current cycle, if the current processing timing is 1.767 s in FIG. 4, the previous processing timing is 1.202 s in FIG. 4, and the cycle from just after 1.202 s to 1.767 s is the current cycle. diff,max is 3.750 [m / s 2 ], minimum A diff,min -1.489 [m / s 2 ]

[0082] In step S33, the control unit 5 calculates the maximum value A diff,max and the minimum value A diff,min The difference is calculated and set to a constant (first threshold A diff,th ) or more. diff,max and the minimum value A diff,min If the difference is equal to or greater than a certain value (step S33: Yes), the process proceeds to step S34.

[0083] This results in a maximum value of A diff,max and the minimum value A diff,minIf the difference is less than a certain level, it is determined that the walking style cannot be regarded as a normal walking style (for example, a walking style in which the feet press against the floor or ground with more than a certain amount of force), and the current cycle can be excluded as being likely to be noise.

[0084] In step S34, the control unit 5 calculates the maximum value A diff,max and the minimum value A diff,min Take the absolute value of each and find the maximum value A diff,max The absolute value of is constant (second threshold A max,th ) or more, and the minimum value A diff,min The absolute value of is constant (third threshold A min,th If at least one of the absolute values ​​is equal to or greater than a certain value (step S34: Yes), the process proceeds to step S35.

[0085] This results in a maximum value of A diff,max Absolute value or minimum value of A diff,min If only the absolute value of is large, it is determined that this is not a typical walking style (for example, a walking style in which the feet press against the floor or ground with more than a certain amount of force), and the current cycle can be excluded as being likely to be noise.

[0086] In step S35, the control unit 5 calculates the maximum value A diff,max The time at which step S30 was calculated (hereafter, “this A diff,max The maximum value A in the period in which walking was determined to have occurred last time diff,max The time at which step S30 was calculated (hereinafter, the time at which the diff,max The difference between the step [s] (hereinafter, "this time step ") is calculated, and the t calculated in the cycle in which walking was determined to have occurred last time is step [s] (hereafter, "last t step " (Compare with "

[0087] This time t step and the previous t step The difference is the tolerance (tolerance ±Tolt stepIf it is within the range of t (step S35: Yes), the process proceeds to step S36. step and the previous t step If the difference is regarded as the time interval between one step, it is possible to determine whether or not this is a correct time interval between one step, to determine whether the person walked in a normal walking manner (for example, a walking manner in which the foot moves forward a specified distance or more) or whether it was noise, and to remove the noise.

[0088] In step S36, the control unit 5 increments the number of steps by 1 and diff,max Change the time to the previous A diff,max Store the time as t step to the previous t step and the process proceeds to step S38.

[0089] On the other hand, in step S33, the maximum value A diff,max and the minimum value A diff,min If the difference is less than a certain value (step S33: No), or if the difference is less than the maximum value A diff,max The absolute value of is less than a certain value and the minimum value A diff,min If the absolute value of is less than a certain value (step S34: No), the process proceeds to step S37. This is because the walking style is different from the general walking style, for example, walking with shuffling feet, and the like, and the acceleration A in the yaw axis direction is different from the general walking style. z This is because, when is small, steps S33 and S34 may not be satisfied even if one step has actually been taken.

[0090] Referring also to FIG. 5, in step S37, the control unit 5 step Calculate [s] and calculate the acceleration A x and acceleration A y The maximum value of the norm A xy,max Calculate the maximum value A xy,max is the maximum value A in this period x,max and the maximum value A y,max Calculate the maximum value A from the following formula 17. xy,max is constant (fourth threshold A xy,th ) or more, the process proceeds to step S36. Note that the waveform in FIG. 5 is a waveform detected at a different time from the waveform in FIG.

[0091]

number

[0092] In step S35, the control unit 5 step and the previous t step is within the allowable range (step S35: No), and the maximum value A xy,max If it is less than the certain value (step S37: No), the process proceeds to step S38 without counting the number of steps.

[0093] In step S38, the control unit 5 determines the maximum value A diff,max and the minimum value A diff,min and the maximum value A x,max and the maximum value A y,max And this time, step and the maximum value A xy,max Initialize.

[0094] In addition, the first threshold A diff,th and the second threshold A max,th and the third threshold A min,th And, while the tolerance ±Tolt step and the fourth threshold A xy,th is a value adopted based on an experiment on walking while doing other things. When the number of steps was estimated for hand-waving walking using step S3 for estimating the number of steps for walking while doing other things, a correct result was not obtained.

[0095] Estimating the number of steps while walking In order to confirm the accuracy of the estimation of the number of steps in step S3, a person actually walked while holding the mobile terminal 1, and the results shown in Figs. 4 and 5 were obtained.

[0096] The values ​​shown in Figures 4(a) and (b) were obtained by taking three steps while walking while doing other things. The timing of lifting the foot and the timing of putting the foot down during each step overlapped with three cycles: one including processing timing 1.767 s, one including processing timing 2.790 s, and one including processing timing 3.301 s.

[0097] The cycle including the processing timing 1.767s, the cycle including the processing timing 2.790s, and the cycle including the processing timing 3.301s satisfy steps S33, S34, and S35, and are counted as one step in step S36, but walking was not counted in the other cycles. From this, it was confirmed that the cycles including the processing timing 1.767s, the cycle including the processing timing 2.790s, and the cycle including the processing timing 3.301s were considered to be noise caused by shaking during walking, and were not counted as steps.

[0098] The values ​​shown in Fig. 5 were obtained by taking two steps while walking while doing other things, and the timing of lifting the foot and the timing of putting the foot down during each step overlapped with a cycle including the processing timing of 1.411 s and a cycle including the processing timing of 1.762 s. The cycle including the processing timing of 1.762 s satisfies steps S33, S34, and S35, and is counted as one step in step S36.

[0099] On the other hand, the walking style in the cycle including the processing timing of 1.411 s was different from the general walking style, and the walking style was a shuffling style with little lifting of the feet. x ,A y It can be seen that the maximum value A of this period changes significantly. xy,max is the fourth threshold A xy,th The step S37 is satisfied, and one step is counted in step S36. xy,max It was confirmed that the number of steps not counted in steps S33 and S34 can be supplemented by step S37 by counting the number of steps as long as the number of steps is equal to or greater than a certain value.

[0100] In an experiment in which 100 steps were walked in one set, the estimated number of steps in most sets was 100 steps, with a few estimated to be 99 steps. When the number of steps counted through steps S33 to S35 was compared with the number of steps counted through step S37, it was found that approximately 90% of the steps were counted through steps S33 to S35, and the remaining 10% were counted through step S37.

[0101] As described above, in the present embodiment, in the step S3 of estimating the number of steps due to walking while doing other things, the first amplitude A diff Steps S30 to S35 are steps for detecting the first amplitude, which can detect the number of steps from a predetermined period in the waveform of the x ,A y By combining this with step S37 as a second amplitude detection step that can detect the number of steps from a predetermined period in the waveform, it is possible to compensate for steps not detected in one step by detection of the other, thereby improving the accuracy of detecting the number of steps.

[0102] Furthermore, when the number of steps is detected by steps S30 to S35, step S37 is not executed, so that the processing required for estimating the number of steps can be reduced.

[0103] Also, A diff In other words, the acceleration A in the yaw axis direction can be determined by the waveform of z Since the specified period can be determined using the acceleration A in the pitch axis direction, the magnitude of which can change depending on the direction of travel. x and the acceleration A in the roll axis direction y In comparison with a configuration in which the predetermined period is determined using only the signal level, the predetermined period can be determined more easily.

[0104] [[Estimating number of steps while walking with hand gestures]] 6, when the control unit 5 proceeds to step S4 (see FIG. 2) of estimating the number of steps by waving the hands, the control unit 5 calculates the acceleration A x ,A y ,A z Read the acceleration A x,A y ,A z Each value and acceleration A x ,A y ,A z The time when the value was read (hereinafter referred to as "the time of step S40") is stored in association with the value (step S40).

[0105] As shown in Figure 7, the acceleration A x ,A y ,A z It can be seen that each value changes in a waveform according to the elapsed time. In particular, the acceleration A x ,A y For each step, depending on the direction of the hand movement, a value in the opposite direction to the direction of travel or an attenuated value may be obtained.

[0106] In order to count the number of steps from these waveforms, the acceleration A z -Calculate the value of the gravitational acceleration g, and calculate the acceleration A as the calculated value changes from negative to positive. z -The timing when the gravitational acceleration g becomes zero is set as the start of a specific cycle, and the next acceleration A z -Acceleration A as the value of gravitational acceleration g changes from negative to positive z -The moment when the gravitational acceleration g becomes zero is the end of that cycle and the start of the next specific cycle.

[0107] Also, acceleration A x ,A y ,A z Each particular period has an acceleration A z -It corresponds to a specific period of gravitational acceleration g, and the acceleration A x ,A y ,A z The start and end timing of each is acceleration A z -The timing is the same as the start and end timing of the gravitational acceleration g. In other words, a specific period corresponds to a 360-degree period of a sine wave, and the acceleration A z Maximum value of A z,max and the minimum value A z,min Each of them contains one of the following. The details are explained below.

[0108] Returning to FIG. 6, the control unit 5 performs steps S40 to S42 with the acceleration A z By repeating this process until the value of changes from negative to positive (step S42: Yes), the maximum value A z,max , minimum value A z,min , maximum value A x,max , maximum value A y,max get.

[0109] In step S43, the control unit 5 determines the maximum value A z,max and the minimum value A z,min The difference is calculated and fixed (5th threshold A z,th ) or more. z,max and the minimum value A z,min If the difference is equal to or greater than a certain value (step S43: Yes), the process proceeds to step S44.

[0110] In step S44, the control unit 5 calculates the acceleration A x and acceleration A y The maximum value of the norm A xy,max Calculate the maximum value A (Equation 17 above). xy,max is constant (6th threshold A xy,th ) or more, the process proceeds to step S45.

[0111] In step S45, the control unit 5 calculates the maximum value A z,max The time at which step S40 was read (hereafter, z,max The maximum value A in the period in which walking was determined to have occurred last time z,max The time at which step S40 was read (hereafter, "the previous A z,max The difference between the step [s] (hereinafter, "this time step " is written) is calculated, and t calculated at a predetermined period when walking was determined to have occurred last time is calculated. step [s] (hereafter, "last t step ") is compared with the current tstep and the previous t step The difference is the tolerance (hand gesture tolerance ±Tolt step If it is within the range (step S45: Yes), the process proceeds to step S46.

[0112] In step S46, the number of steps is incremented by 1. z,max Change the time to the previous A z,max Store the time as t step to the previous t step Then, the process proceeds to step S47.

[0113] In step S43, the control unit 5 determines the maximum value A z,max and the minimum value A z,min In step S44, the difference between the maximum value A xy,max is less than a certain value, or in step S45, step and the previous t step If they are significantly different (step S45: No), the process proceeds to step S47 without counting the number of steps.

[0114] In step S47, the control unit 5 determines the maximum value A z,max and the minimum value A z,min and the maximum value A x,max and the maximum value A y,max And this time, step and the maximum value A xy,max Initialize.

[0115] In addition, the fifth threshold A z,th and the sixth threshold A xy,th and hand movement tolerance ±Tolt step is a value adopted based on an experiment with hand-waving walking. When the number of steps in multitasking was estimated using step S4, which is the step number estimation method using hand-waving walking, a correct result was not obtained.

[0116] In an experiment in which participants walked 100 steps in one set, the estimated number of steps was 100 in most sets, with a few estimated at 99 steps.

[0117] As described above, in this embodiment, the step count estimation unit of the present invention is constituted by the sensors 2, 3, the control unit 5, the calculation results of the posture estimation process 20 stored by the control unit 5, and the step count estimation process 30 stored by the control unit 5.

[0118] Furthermore, out of the step number estimation steps S3 and S4, the step number estimation step that is most suitable for the walking state determined by the result of the posture estimation process 20 can be used to estimate the step number.

[0119] In this embodiment, a first amplitude detection means is configured from the acceleration sensor 2, control unit 5, the calculation result of posture estimation process 20 stored by control unit 5, and steps S30 to S35 of step count estimation process 30 stored by control unit 5. A second amplitude detection means is configured from the acceleration sensor 2, control unit 5, the calculation result of posture estimation process 20 stored by control unit 5, and step S37 of step count estimation process 30 stored by control unit 5.

[0120] In this embodiment, the acceleration sensor 2, the control unit 5, the calculation result of the posture estimation process 20 stored in the control unit 5, and steps S40 to S43 and S45 of the step count estimation process 30 stored in the control unit 5 constitute a third amplitude detection means, and the acceleration A in the yaw axis direction as the third amplitude is z The number of steps can be estimated from specific cycles in the waveform.

[0121] In this embodiment, the acceleration sensor 2, the control unit 5, the calculation result of the posture estimation process 20 stored in the control unit 5, and the fourth amplitude detection means used together with the third amplitude detection means from step S44 in the step count estimation process 30 stored in the control unit 5 are configured. x ,A y The number of steps can be estimated from specific cycles in the waveform.

[0122] [Step length estimation processing] Next, the stride length estimation process 40 will be described. With reference to FIG. 1, when the number of steps is counted in the step number estimation process 30, the control unit 5 calculates a maximum value Az,max , minimum value A z,min , maximum value A xy,max The stride length is estimated by reading the data. This will be explained in detail below.

[0123] As shown in Fig. 8(a) and (b), the acceleration A x ,A y ,A z It can be seen that the acceleration A changes according to the stride length. In Fig. 8(a), the waveform around 2.5 s is for a large stride, the waveform around 10.0 s is for a normal stride length (hereafter referred to as "normal walking"), and the waveform around 17.0 s is for a small stride. In Fig. 8(b), the waveform around 3.0 s is for a large stride, the waveform around 8.5 s is for normal walking, and the waveform around 14.5 s is for a small stride. Note that in all waveforms, the acceleration A y The large value is due to walking in the direction of the roll axis.

[0124] In the stride length estimation process 40, the control unit 5 estimates the stride length based on how much larger or smaller the stride length is from the standard stride length that is used during normal walking. In order to perform this estimation, it is necessary to determine the magnitude of acceleration during normal walking. ave is calculated from the following formula 18. That is, in order to simplify the process, it is preferable that the stride estimation process 40 be performed before steps S38 and S47 (see FIGS. 3 and 6) in which each value is initialized are performed.

[0125]

number

[0126] In addition, since we need the acceleration compared to normal walking, we set A so that the magnitude of the acceleration during normal walking is zero. adjust is defined as the following equation 19.

[0127]

number

[0128] C normal is a constant, and it is necessary to calculate the magnitude of acceleration during normal walking through experiments for each of the cases of walking while doing something and walking with hands waving. From this point of view, it is preferable that this is performed before steps S38 and S47 (see FIG. 3 and FIG. 6) are executed.

[0129] The estimated stride length is L, and the reference stride length is L. s Then, the estimated stride length L is calculated by the following equation 20. In equation 20, the constant K L is the maximum value of the stride length adjustment, and must be determined by experiment for each case of walking while doing something and walking with hands waving. Note that in the examples, the letter L is written in capital letters to make it easier to distinguish the letters.

[0130]

number

[0131] The function g(x) is defined as the following equation 21.

[0132]

number

[0133] In Equation 21, when the value of x is greater than -1 and less than +1, the value of x is cubed. adjust Even if there is some error in the value, the value will be small unless the error is large.

[0134] Also, in formula 20, L s If we set is a fixed value (h-1) that is a stride length that can be easily calculated from a person's height h [m], the following equation 22 can be obtained from the above equations 18 to 20.

[0135]

number

[0136] As described above, in this embodiment, the stride estimation unit of the present invention is constituted by the sensors 2, 3, the control unit 5, the calculation results of the posture estimation process 20 stored by the control unit 5, the calculation results of the step count estimation process 30 stored by the control unit 5, and the stride estimation process 40 stored by the control unit 5.

[0137] In addition, in the stride estimation process 40, the acceleration A x ,A y and the acceleration A in the vertical direction z In detail, the acceleration in the two lateral directions A x ,A y and the acceleration A in the vertical direction z In other words, the acceleration A x ,A y and acceleration A z Since the stride length L is estimated by independently evaluating and on the same evaluation axis, the change in the stride length L can be accurately determined.

[0138] [Travel direction estimation process] Next, the traveling direction estimation process 50 will be described. With reference to FIG. 1, when the number of steps is counted in the step number estimation process 30, the control unit 5 calculates the quaternion q ’’ t The direction of travel is estimated by reading the rotation angle around the yaw axis in the world coordinates using the above formula. More specifically, the direction of travel is estimated by reading the rotation angle around the yaw axis at the moment when the maximum value of acceleration occurs during step counting. In other words, when walking while doing other things, the maximum value A diff,max The direction of travel when measuring the maximum value A z,max The direction of travel at the time of measurement is estimated.

[0139] As described above, in this embodiment, the traveling direction estimation unit of the present invention is constituted by the sensors 2, 3, 4, the control unit 5, the calculation results of the posture estimation process 20 stored by the control unit 5, the calculation results of the step count estimation process 30 stored by the control unit 5, and the traveling direction estimation process 50 stored by the control unit 5.

[0140] [Location estimation process] In the position estimation process 60, the control unit 5 starts the process when the number of steps is counted in the step count estimation process 30, and calculates the position by accumulating based on the stride length obtained from the stride length estimation process 40 and the traveling direction obtained from the traveling direction estimation process 50.

[0141] The position at the previous count is P t-1 =(P t-1,x ,P t-1,y ) T , current position P t =(P t,x ,P t,y ) T Let L be the estimated stride length and θ be the direction of travel. Then, the current position P t can be calculated from the following equation 23. Note that the current position P t is the position when the positive direction of the roll axis is north and the positive direction of the pitch axis is east. This can be changed to any direction when offsetting.

[0142]

number

[0143] As described above, in this embodiment, the position estimation unit of the present invention is composed of the sensors 2, 3, 4, the control unit 5, the calculation results of the posture estimation process 20 stored by the control unit 5, the calculation results of the step count estimation process 30 stored by the control unit 5, the calculation results of the stride length estimation process 40 stored by the control unit 5, the calculation results of the traveling direction estimation process 50 stored by the control unit 5, and the position estimation process 60 stored by the control unit 5.

[0144] When an experiment was carried out using the position estimation device 10, the results shown in FIG. 9 were obtained.

[0145] Figure 9(a) shows the results when walking along a rectangular course indicated by a dashed line, and the estimated trajectory is indicated by a solid line. It can be seen that the error distance in this estimation is suppressed to about 1m.

[0146] Figure 9(b) shows the results when walking with hand gestures along a rectangular course. In this estimation, the error distance is suppressed to about 1.5 m.

[0147] As can be seen from these results, by walking along a rectangular course, sufficient accuracy was achieved in estimating the trajectory, both in the case of walking while doing something else and in the case of walking with waving hands.

[0148] Figure 9(c) shows the results when the subject walked along the circular course indicated by the dashed line, and the estimated trajectory is indicated by the solid line. It can be seen that the error distance in this estimation is suppressed to about 1.5 m.

[0149] Figure 9(d) shows the result when walking with hand gestures along a circular course. In this estimation, the error distance is suppressed to about 1.5 m.

[0150] As can be seen from these results, walking along a circular course resulted in sufficient accuracy in estimating the trajectory, both in the case of walking while doing something else and in the case of walking with waving hands.

[0151] [effect] As described above, the position estimation device 10 and the position estimation method according to the present embodiment are capable of estimating the attitude in real time by using the angular velocity ω in the attitude estimation process 20.

[0152] Furthermore, in the step count estimation process 30, the step count could be estimated with sufficient accuracy even when the user was walking while doing something else or walking with waving hands.

[0153] More specifically, in the walking state determination step S2 of the step count estimation process 30 described above, by determining whether the walking is a walking with one hand moving or a walking with one hand waving, a reference value corresponding to the walking with one hand moving (first threshold A diff,th , the second threshold A max,th , the third threshold A min,th , while the tolerance ±Tolt step , 4th threshold A xy,th) and the reference value corresponding to hand-waving walking (5th threshold A z,th and the sixth threshold A xy,th and hand movement tolerance ±Tolt step ) can be switched to either the reference value or the step count, so that the number of steps can be determined using an appropriate reference value. This improves the accuracy of the step count estimation.

[0154] Furthermore, in the stride length estimation process 40, the error between the actual stride length and the estimated stride length could be suppressed to about ±10 cm at most, and the stride length could be estimated with an accuracy of about ±5 cm.

[0155] Furthermore, in the traveling direction estimation process 50, an error of about ±6 deg was observed in hand-waving walking, but an estimation was possible with an accuracy of about ±2 deg in multitasking walking.

[0156] In addition, in the position estimation process 60, the evaluation trajectory could be estimated with an accuracy of about 1.5 m. Also, the results showed that the shape of the trajectory could be sufficiently discriminated.

[0157] From the above, it is believed that the position estimation device 10 and the position estimation method of this embodiment are generally capable of trajectory estimation when walking while doing something else or walking with waving hands, and have provided sufficient results as a means of unrestricted self-position estimation.

[0158] Therefore, by utilizing the position estimation device 10 and position estimation method of this embodiment, it is possible to accurately obtain position information of estimated subjects (dementia patients, people requiring observation, etc.) in nursing homes, hospitals, home care, etc., position information of estimated subjects (users, store clerks, station staff, etc.) in large-scale facilities (commercial facilities, large stations, etc.) and navigation, and activity information of estimated subjects exercising (walking, jogging, etc.) in indoor facilities.

[0159] Although the embodiments of the present invention have been described above with reference to the drawings, the specific configuration is not limited to these embodiments, and the present invention also includes modifications and additions that do not deviate from the gist of the present invention.

[0160] For example, in the above embodiment, the position estimation device is described as being composed of various sensors, control units, etc. built into a mobile terminal, but this is not limited to this, and the device may be a terminal dedicated to position estimation that is equipped with only the various sensors and control units necessary for position estimation.

[0161] In the embodiment, in the step of estimating the number of steps by walking while doing other things, diff The waveform of the first amplitude is exemplified as the first amplitude, but is not limited to this. z The waveform containing only this may be the first amplitude, and may be changed as appropriate as long as it contains acceleration in the yaw axis direction.

[0162] In addition, in the above embodiment, the specified period or the specific period is described as corresponding to a 360-degree period of a sine wave, but this is not limited to this and may be corresponding to a 180-degree period of a sine wave, and the size of the period may be changed as appropriate.

[0163] In the above embodiment, the step count estimation step for walking while doing other things is performed when any of the conditions in steps S30 to S35 is not satisfied. However, the present invention is not limited to this, and the step S37 may be performed when all of the conditions in steps S30 to S35 are satisfied. In other words, the detection by the first amplitude detection means and the detection by the second amplitude detection means may be performed in this order.

[0164] With such a configuration, for example, the number of steps may be incremented by 1 if all of the conditions in steps S30 to S35 and S37 are met, the number of steps may be incremented by 1 if any of the conditions in steps S30 to S35 are not met but the condition in step S37 is met, and the number of steps may not be counted if neither any of the conditions in steps S30 to S35 nor the condition in step S37 is met.

[0165] In the embodiment, in the step of estimating the number of steps while walking, diffHowever, the present invention is not limited to this configuration, and may be applied to a variety of applications, including the use of the acceleration A x ,A y That is, detection by the second amplitude detection means may be performed prior to detection by the first amplitude detection means.

[0166] In the above embodiment, the posture estimation unit is described as including an acceleration sensor, an angular velocity sensor, and a magnetic sensor, but is not limited thereto, and the type and number of sensors may be changed as appropriate. For example, the posture estimation unit may further include an air pressure sensor, and may not include a geomagnetic sensor, and the configuration may be changed as appropriate.

[0167] In the above embodiment, the step count estimation unit has been described as including the calculation result of the posture estimation process stored in the control unit, but this is not limited thereto, and may be configured not to include the calculation result of the posture estimation process, or may include one or more calculation results of other estimation units, and the configuration may be changed as appropriate. This also applies to the stride length estimation unit and the traveling direction estimation unit.

[0168] In the embodiment, the stride estimation unit calculates the acceleration A x ,A y and the acceleration A in the vertical direction z However, the stride length is not limited to this. x ,A y The stride length can be estimated using only the acceleration A z Alternatively, the stride length may be estimated based on only the parameters, and the applied parameters may be changed as appropriate. [Explanation of symbols]

[0169] 1. Mobile devices 2. Acceleration sensor 3 Angular rate sensor 4 Geomagnetic Sensor 5. Control section 10 Position estimation device 20 Posture Estimation Processing 30 Step count estimation process 40 Stride length estimation processing 50 Direction Estimation Processing 60 Position Estimation Processing S30~S35 steps (first amplitude detection step) S37 step (second amplitude detection step)

Claims

1. A position estimation device including a step count estimation unit that estimates a step count, a stride length estimation unit that estimates a stride length, and a traveling direction estimation unit that estimates a traveling direction, The step count estimation unit is a position estimation device having a first amplitude detection means capable of detecting the number of steps from a first amplitude based on acceleration in at least one vertical axis direction in a predetermined period, and a second amplitude detection means capable of detecting the number of steps from a second amplitude based on acceleration in one or two horizontal axes directions in the predetermined period.

2. The position estimation device according to claim 1 , wherein when the number of steps is detected by the first amplitude detection means or the second amplitude detection means, the step number estimation unit does not use other amplitude detection means.

3. The position estimation device according to claim 2 , wherein the step count estimation unit performs detection by the first amplitude detection means prior to detection by the second amplitude detection means.

4. The position estimation device according to claim 1 , further comprising an attitude estimation unit that estimates an attitude based on acceleration, angular velocity, and geomagnetism.

5. The position estimation device according to claim 4 , wherein the step count estimation unit determines the walking state according to an inclination of a roll axis.

6. the step count estimation unit further includes a third amplitude detection means capable of detecting a step count from a third amplitude based on an acceleration in one axial direction in a vertical direction in a specific cycle; 6. The position estimation device according to claim 5, wherein when the determined walking state is a walking while doing something, the first amplitude detection means and the second amplitude detection means are used in combination, and when the walking state determined by the posture estimation unit is a walking while waving hands state, the third amplitude detection means is used.

7. The position estimation device according to claim 1 , wherein the stride estimating unit estimates the stride based on acceleration in two lateral directions and acceleration in one vertical direction.

8. A position estimation method including a step count estimation process for estimating a step count, a stride length estimation process for estimating a stride length, and a traveling direction estimation process for estimating a traveling direction, The step count estimation process is a position estimation method including a first amplitude detection step capable of detecting the number of steps from a first amplitude based on acceleration in at least one vertical axis direction in a predetermined period, and a second amplitude detection step capable of detecting the number of steps from a second amplitude based on acceleration in one or two horizontal axes directions in the predetermined period.

Citation Information

Patent Citations

  • Portable navigation system

    JP1997089584A