Self-calibration IMU intention recognition method and system

By employing a self-calibrating IMU intent recognition method, utilizing sliding window analysis and complementary filters to suppress gyroscope drift, and combining logical correlation verification to generate control commands, the drift and intent ambiguity problems of the IMU system are solved, thereby improving the system's stability and the accuracy of user intent recognition.

CN121577066APending Publication Date: 2026-02-27SHENZHEN KUKAI BRAIN MACHINE INTELLIGENT TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511683407.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-17
Publication Date
2026-02-27

AI Technical Summary

Technical Problem

Existing IMU systems suffer from gyroscope drift during long-term integration calculations, causing the system to gradually lose accuracy in judging the user's orientation, requiring frequent manual calibration, and making it difficult to distinguish between actions and states, leading to false triggers and repeated commands.

Method used

A self-calibrating IMU intent recognition method is adopted, which analyzes dynamic and static features through a sliding window, combines complementary filters and zero-rate update mechanism to suppress drift, normalizes the yaw angle using hyperbolic tangent function, generates control commands using logical correlation verification, and includes a suppression-compensation mechanism for drift calibration.

Benefits of technology

This achieves long-term stability and accuracy of the IMU system, reduces the frequency of manual calibration, improves the accuracy of user intent recognition, and avoids false triggering and command duplication.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121577066A_ABST
    Figure CN121577066A_ABST
Patent Text Reader

Abstract

The invention discloses a self-calibration IMU intention recognition method and system, and belongs to the technical field of man-machine interaction. The method aims at solving the problems that in the prior art, due to drifting of a sensor, the long-term stability is poor, and due to the fact that an action process and a static posture cannot be distinguished, an instruction is mistakenly triggered and repeated. In order to solve the problem, the method provided by the invention comprises the following steps: acquiring a motion data stream of a sensor, and segmenting the motion data stream into analysis windows; independently determining an action code for representing a dynamic process in the window based on the dynamic characteristics in the analysis window; independently determining a state code for representing the static posture of the tail end of the window based on the static characteristics in the analysis window; and generating a control instruction based on the logic association verification between the action code and the state code. In addition, drift is suppressed through a zero-speed updating mechanism, and drift is actively compensated by resetting a yaw reference when the upright posture is detected.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of human-computer interaction, in particular to a signal processing method based on an inertial measurement unit (IMU), and more particularly to a self-calibration IMU intention recognition method and system. BACKGROUND

[0002] With the development of human-computer interaction technology, gesture tracking and gesture recognition using wearable devices (such as IMU-based head or hand devices) has become an important research direction. Such solutions usually collect user motion data through IMU, calculate the pose, and then recognize specific gestures (such as nodding, turning the head) to generate control instructions.

[0003] The most similar prior art to the present application is usually to directly process the IMU data stream and recognize specific actions by setting a threshold.

[0004] However, these solutions generally face two major technical problems in practical applications:

[0005] Sensor drift problem: Gyroscopes will produce cumulative errors, i.e., "drift", when integrating for a long time to calculate angles. Especially in the calculation of yaw angle (i.e., horizontal rotation), the drift problem is particularly serious due to the lack of an absolute reference. This causes the system's judgment of the user's orientation to gradually lose accuracy, requiring frequent manual calibration by the user, which seriously affects the user experience.

[0006] User intention ambiguity problem: Existing solutions cannot distinguish between a complete "action process" with control intention and a "static pose" that is ultimately maintained. This can lead to two common errors:

[0007] False triggering: The user's unintentional shaking or just turning his head to look elsewhere may be mistakenly recognized as a control instruction by the system due to the motion amplitude reaching the threshold.

[0008] Instruction repetition: After the user completes a head-turning action, the head remains in the final pose of the turning. At this time, the existing system may repeatedly send instructions because the pose angle continues to be outside the threshold, which is not the user's intention.

[0009] In summary, the existing technology has the shortcomings of poor robustness, decreasing accuracy over time, low instruction recognition accuracy, and inability to accurately capture user intention. SUMMARY

[0010] (I) Technical problems to be solved

[0011] The first object of the present application is to provide a self-calibration IMU intention recognition method to solve the problem of poor long-term running stability and the need for manual calibration caused by gyro drift in the prior art.

[0012] The second object of the present application is to provide an IMU intent recognition method and system that can accurately recognize user intent, in order to solve the problem of false triggering and instruction repetition caused by the confusion between "action" and "state" in the prior art.

[0013] (B) Technical solutions

[0014] To achieve the above object, the present application provides an IMU intent recognition method in one aspect, which is deployed in a system comprising an IMU sensor and a micro processing unit, comprising the following steps:

[0015] (a) obtaining a motion data stream of the IMU sensor and dividing it into analysis windows;

[0016] (b) within the analysis window, independently determining an action code for representing the dynamic process in the window based on dynamic features;

[0017] (c) within the analysis window, independently determining a state code for representing the static posture at the end of the window based on static features;

[0018] (d) generating a control instruction based on the logical association check between the action code and the state code.

[0019] Preferably, the step (d) comprises:

[0020] intent explicitness check: requiring the action code to match the state code;

[0021] and instruction novelty check: requiring the action code to be different from the last generated control instruction.

[0022] Preferably, the method further comprises solving the yaw drift problem through a "suppression-compensation" cooperative mechanism, which comprises:

[0023] drift suppression: pausing the integral accumulation of yaw angle through zero speed update mechanism when motion is detected to be stationary;

[0024] and drift compensation: dynamically updating a yaw reference and resetting the yaw reference when the state code indicates an upright state.

[0025] Preferably, the drift suppression mechanism comprises:

[0026] calculating the variance of angular velocity in a time period;

[0027] and when the variance is lower than a preset stationary threshold, determining that the motion is stationary and activating the zero speed update.

[0028] Preferably, said step (c) comprises:

[0029] computing a relative yaw angle affected by drift;

[0030] and normalizing said relative yaw angle to a bounded attitude feature by means of a non-linear hyperbolic tangent function.

[0031] Preferably, said step (b) of determining said motion code comprises a "principal axis recognition" step, which comprises:

[0032] comparing the peak angular velocity in the pitch direction and the peak angular velocity in the yaw direction within said analysis window to determine a principal motion axis;

[0033] and determining said motion code only if the peak angular velocity of said principal motion axis exceeds its corresponding motion threshold.

[0034] Preferably, said static feature in said step (c) is a hybrid feature comprising:

[0035] an average acceleration value for determining the pitch state;

[0036] and a normalized yaw angle for determining the yaw state.

[0037] Preferably, said method further comprises solving the pitch angle with a complementary filter that coherently fuses:

[0038] the short-term accuracy of the gyroscope integration;

[0039] and the long-term stability of the accelerometer solution.

[0040] Preferably, said drift compensation step further comprises two calibration strategies:

[0041] a forceful reset when the user returns to the upright posture without motion;

[0042] a smooth update when the user returns to the upright posture with motion.

[0043] The present application also discloses a self-calibrating IMU intent recognition system, comprising:

[0044] an IMU sensor;

[0045] a microprocessor;

[0046] and a memory having computer executable instructions stored thereon, which, when executed by said microprocessor, cause said system to perform any of the above methods. BRIEF DESCRIPTION OF DRAWINGS

[0047] Figure 1 Flowchart for self-calibration IMU intent recognition method of the present application.

[0048] Figure 2 Module diagram for self-calibration IMU intent recognition system of the present application. DETAILED DESCRIPTION

[0049] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and not intended to limit the present application.

[0050] In the description of the present application, unless otherwise specified, the meaning of "a plurality of" is two or more; the orientations or positional relationships indicated by the terms "center", "longitudinal", "transverse", "upper", "lower", "left", "right", "inner", "outer", "front end", "rear end", "head", "tail", "vertical", "horizontal", "top", "bottom", "inner", "outer" and the like are based on the orientations or positional relationships shown in the drawings, and are only for the purpose of facilitating the description of the present application and simplifying the description, and are not intended to indicate or imply that the device or element referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as limiting the present application. In addition, the terms "first", "second", "third" and the like are only for descriptive purposes and cannot be understood as indicating or implying relative importance.

[0051] In the description of the present application, it should be noted that, unless otherwise specified and limited, the terms "mounting", "connection", "connection" should be understood broadly, for example, it can be fixedly connected, or it can be detachably connected, or integrally connected; it can be mechanically connected, or it can be electrically connected; it can be directly connected, or it can be indirectly connected through an intermediate medium, and it can be the communication inside two elements. For those skilled in the art, the specific meaning of the above terms in the present application can be understood according to the specific circumstances.

[0052] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and not intended to limit the present application.

[0053] The core of the embodiment of the present application is a real-time "action-state" correlation decision algorithm based on sliding window. The method divides the continuous motion data stream into discrete analysis windows, independently analyzes the dynamic characteristics (action) and static characteristics (state) in each window, and finally determines the real intention of the user through strict logical correlation verification and generates instructions.

[0054] Please see Figure 1 The following describes in detail an embodiment of a self-calibrating IMU intent recognition method. This method is deployed in a system containing an IMU sensor and a microprocessor unit.

[0055] Step (a): The data acquisition and windowed processing system continuously acquires the raw triaxial acceleration data a(t) from the IMU. x (t),a y (t),a z (t)] and triaxial angular velocity data ω(t)=[ω x (t),ω y (t),ω z (t)].

[0056] To perform real-time analysis, the system divides the data stream into fixed durations T. W (e.g. T) W A continuously sliding analysis window W (0.5 seconds) k (k is the window number).

[0057] The data set within this window is represented as {a(t),ω(t)|t∈[k·T]} W ,(k+1)·T W All subsequent attitude calculations and logical judgments are performed within this data window that has a complete context.

[0058] Attitude calculation within each data window requires the algorithm to calculate the head's attitude angles, namely pitch and yaw, point-by-point. To obtain a pitch angle that can respond quickly to instantaneous motion while maintaining long-term stability without drift, this embodiment employs a complementary filter. This method collaboratively fuses the short-term accuracy of gyroscope integration and the long-term stability of accelerometer calculations using a specific coefficient α. Its update equation is as follows:

[0059] θ(t i )=α·(θ(t i-1 )+ω z (t i )·Δt)+(1-α)·θ accel (t i )

[0060] Where: θ(t) i ) is at discrete time t i The final pitch angle estimate; α is the complementary filter coefficient (e.g., 0.98); Δt is the sampling period of 12; ω z (t i ) is the Z-axis angular velocity; θ accel (t i) is the pitch angle reference calculated by the accelerometer, whose formula is:

[0061] For the more challenging yaw angle drift problem, this embodiment introduces the zero-velocity update (ZUPT) mechanism as a drift suppression means. The core logic is: when the system detects that the motion is stationary, the integral accumulation of the angle should be suspended, thereby preventing the generation of drift from the root.

[0062] To achieve this purpose, this embodiment first designs a logic "switch" S(t i ) that can judge the stationary state in real time. The "switch" works by calculating the variance Var{·} of the Y-axis angular velocity in the near future (the time length is T Z ). When the motion is stable or stationary, the variance will decrease significantly. Its determination logic is as follows:

[0063]

[0064] Where τ ZUPT is a pre-set stationary threshold. With this switch, the update process of the yaw angle ψ(t i ) is intelligently adjusted:

[0065] ψ(t i ) = ψ(t i-1 ) + (1 - S(t i ))·ω y (t i )·Δt

[0066] In this way, the integral term of the angular velocity is adjusted by (1 - S(t i )). In the motion state, this term is 1, and the integration proceeds normally; while in the stationary state, this term becomes 0, and the integration is dynamically suspended, thereby effectively suppressing the accumulation of drift.

[0067] Step (b): determine the action code, this step focuses on the dynamic features in the window, aiming to answer: "what did the user do?". This embodiment introduces a "principal axis recognition" step. The algorithm first determines the peak angular velocity in the window, defined as: the peak angular velocity in the yaw direction: the peak angular velocity in the pitch direction: Then, the algorithm compares the sizes of the two peak angular velocities (for example, ω z,max > ω y,max or ω y,max > ω z,max ) to determine a main motion axis.

[0068] Finally, the algorithm takes the peak angular velocity on the main motion axis (at t peakThe preset action threshold value corresponding to the time point is compared. Only when the threshold value is exceeded, the action code C is determined according to the direction thereof action The complete determination function is as follows:

[0069]

[0070] Where τ action,z,neg , τ action,z,pos , τ action,y,neg , τ action,y,pos is a series of preset action threshold values.

[0071] Step (c): determining the state code C This step is parallel to step (b), and focuses on the posture at the end of the window, aiming to answer: "What posture is the user's head in?". The static feature of this embodiment is a hybrid feature, and different physical quantities are used for different characteristics of different axes: average acceleration value: for the pitch state (head up / down), the system analyzes the X-axis average acceleration value a x at the end of the window, which is affected by gravity. Normalized yaw angle: for the yaw state (turn left / right), a normalized angle feature is used. To solve the technical contradiction that the yaw angle drift causes the state determination to be unreliable, this embodiment uses the following scheme: first, calculate the difference between the average yaw angle ψ end at the end of the window and the dynamic reference ψ baseline , to obtain a relative yaw angle ψ rel affected by drift, which is ψ end - ψ baseline . ψ rel is a value without bound, which will continuously accumulate with drift, making it difficult and unreliable to set a fixed threshold. To solve this problem, the invention uses a nonlinear hyperbolic tangent (tanh) function to provide a robust "compression" mechanism, which normalizes this unbounded ψ rel to a bounded posture feature ψ norm :

[0072]

[0073] Where tanh is the hyperbolic tangent function, μ range and σ range are preset parameters used to define the normalization range. In this way, the system obtains a very robust posture feature that is not affected by the cumulative value of the original angle, so that the subsequent state determination can be based on stable and reliable threshold values. Finally, the system outputs the state code C state according to the above hybrid feature, and the determination rule is as follows:

[0074]

[0075] Where τstate,acc,up τ state,acc,down τ state,yaw,left τ state,yaw,right It is a series of preset state thresholds.

[0076] Step (d): Logical association verification. This is the core decision-making process of this invention. An instruction C... out,k An alert will only be issued if all three of the following stringent conditions are met simultaneously. This decision logic is precisely defined by the following formula:

[0077]

[0078] Where C out,k-1 For the previously successfully generated instruction, ∧ represents a logical AND. This logical association check resolves the "ambiguity of intent" contradiction, which includes: Intent explicitness check: requiring the action code to match the status code (i.e., C). action =C state This ensures that the user's action is complete (e.g., a "turn right" action results in a "turned right" state), effectively preventing accidental triggering caused by unintentional shaking or intermediate processes. Instruction novelty check: The action code to be generated must be different from the previously generated control instruction (i.e., C...). action ≠C out,k-1 This ensures that even if the user maintains a pose (C) state (Unchanged), the instruction will only be triggered once, fundamentally solving the instruction duplication problem. Action salience verification: requires C... action ≠0, meaning a specific action exceeding the threshold must be detected. The "drift compensation" mechanism within the "suppression-compensation" collaborative mechanism, to ensure the long-term accuracy of the system, also includes a drift compensation mechanism that dynamically updates the yaw reference ψ. baseline This mechanism works in conjunction with the aforementioned "Drift Suppression" (ZUPT) mechanism to form a complete drift solution. This update mechanism is intelligent, incorporating two calibration strategies, and its recursive update process is as follows:

[0079]

[0080] Where β is the update weight (e.g., 0.5).

[0081] Strategy 1 (Forceful Reset): When a user is detected to naturally return to an upright posture without any action (C state,k =0∧C action,k If the value is 0, the system assumes that the user has performed a non-intrusive calibration and will then perform a forceful reset to zero the baseline.

[0082] Strategy 2 (Smooth Update): If the user returns to an upright posture after completing an action (C...state,k = 0 A C action,k ≠ 0), the system performs a smooth update, weighting the old baseline with the current error.

[0083] Strategy 3 (Stability): In all other cases (e.g. staying in a certain pose), the baseline remains unchanged to ensure safety and stability of the calibration.

[0084] See Figure 2 The embodiments of the present application also provide a self-calibration IMU intent recognition system. The system can be a wearable device, such as a head-mounted controller or a gesture recognition ring. The system includes: an IMU sensor: for collecting three-axis acceleration a(t) and three-axis angular velocity ω(t) data. A microprocessor: as the control and computing core of the system. Memory: for storing program code and data. The memory stores computer executable instructions, which when executed by the microprocessor, cause the system to perform the above self-calibration IMU intent recognition method. For example, the microprocessor executes instructions to window the IMU data, solve the pose through the complementary filter and ZUPT mechanism, determine the action code and state code through the principal axis recognition and tanh normalization steps, respectively, and finally generate the control instruction through the intent clarity check and instruction novelty check, while self-calibrating through the dynamic baseline calibration mechanism.

[0085] Each of the embodiments in the specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other. The above is merely a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or replacements within the technical scope disclosed by the present application can be easily thought of by those skilled in the art, which should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A self-calibrating IMU intent recognition method, deployed in a system comprising an IMU sensor and a micro-processing unit, characterized in that, The method comprises the following steps: (a) obtaining a motion data stream from the IMU sensor and segmenting it into analysis windows; (b) determining, within each analysis window, an action code representing the dynamic process within the window based on dynamic features; (c) determining, within each analysis window, a state code representing the static posture at the end of the window based on static features; (d) generating a control instruction based on a logical association check between the action code and the state code.

2. The method of claim 1, wherein, The step (d) comprises: an intention explicitness check requiring the action code to match the state code; and an instruction novelty check requiring the action code to be different from the last generated control instruction.

3. The method of claim 1, wherein, The method further comprises solving the yaw drift problem by a "suppression-compensation” synergy mechanism, which comprises: drift suppression by pausing the integration of the yaw angle through a zero-velocity update mechanism when motionless is detected; and drift compensation by dynamically updating a yaw reference and resetting it when the state code indicates an upright state.

4. The method of claim 3, wherein, The drift suppression mechanism comprises: calculating the variance of the angular velocity over a time period; and determining motionless when the variance is below a pre-set motionless threshold and activating the zero-velocity update.

5. The method of claim 1, wherein, The step (c) comprises: calculating a relative yaw angle affected by drift; and normalizing the relative yaw angle to a bounded posture feature through a non-linear hyperbolic tangent function.

6. The method of claim 1, wherein, The process of determining the action code in step (b) comprises a "principal axis identification” step, which comprises: comparing the peak angular velocity in the pitch direction and the peak angular velocity in the yaw direction within the analysis window to determine a principal motion axis; and determining the action code only when the peak angular velocity of the principal motion axis exceeds its corresponding action threshold.

7. The method of claim 1, wherein, The static feature in step (c) is a hybrid feature comprising: an average acceleration value for determining the pitch state; and a normalized yaw angle for determining the yaw state.

8. The method of claim 1, wherein, The method further comprises solving the pitch angle using a complementary filter that synergistically fuses: the short-term accuracy of the gyroscope integration; and the long-term stability of the accelerometer solution through a specific coefficient (a).

9. The method of claim 3, wherein, The drift compensation step further comprises two calibration strategies: a forceful reset when the user returns to the upright posture without motion; and a smooth update when the user returns to the upright posture with motion.

10. A self-calibrating IMU intention recognition system comprising: an IMU sensor; a microprocessor; and a memory having computer executable instructions stored thereon, which, when executed by the microprocessor, cause the system to perform the method of any one of claims 1 to 9.