Inertial measurement unit based speed estimation method and apparatus

CN122525159APending Publication Date: 2026-08-07TSINGHUA UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
TSINGHUA UNIVERSITY
Filing Date
2026-06-08
Publication Date
2026-08-07

AI Technical Summary

Technical Problem

[0004]本申请提供一种基于惯性测量单元的速度估计方法及装置,以解决相关技术中,由于依赖于特定运动状态或大量训练数据抑制惯性测量单元的误差,导致难以在保证计算效率的同时持续、稳定地获得高精度速度信息,从而限制惯性测量单元的速度测量性能等问题

Benefits of technology

[0019]本申请第五方面实施例提供一种计算机程序产品,包括计算机程序,计算机程序被执行时,以用于实现如上的基于惯性测量单元的速度估计方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122525159A_ABST
    Figure CN122525159A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of speed measurement, in particular to a speed estimation method and device based on an inertial measurement unit, wherein the method comprises the following steps: obtaining a measurement value of the inertial measurement unit based on a coordinate system of the inertial measurement unit on a target vehicle which is established in advance; determining a constraint set of the target vehicle, so as to calculate a speed increment vector and a constraint matrix of the target vehicle by using the measurement value based on the constraint set; determining an extended speed increment vector and a steering matrix of the target vehicle according to the speed increment vector and the constraint matrix; and estimating the speed of the target vehicle according to the steering matrix and the extended speed increment vector. Thus, the problems such as the limitation of the speed measurement performance of the inertial measurement unit are solved, wherein the related art depends on a specific motion state or a large amount of training data to suppress the error of the inertial measurement unit, so that it is difficult to continuously and stably obtain high-precision speed information while ensuring the calculation efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of velocity measurement technology, and in particular to a velocity estimation method and apparatus based on an inertial measurement unit. Background Technology

[0002] In the absence of external observation information, such as GNSS or odometers, for extended periods, the velocity, attitude, and position errors of the inertial measurement unit (IMU) accumulate during the integration process. To suppress error divergence, related technologies typically employ motion pseudo-observation constraint methods. These methods utilize the motion laws satisfied by the carrier under specific motion states to construct constraint information, such as zero-velocity updates and nonholonomic constraints, to correct the IMU's calculation results. Furthermore, deep learning networks are used to learn the carrier's motion laws and error characteristics, generating constraint information to participate in the inertial integration process, thereby reducing the accumulated error of the IMU.

[0003] However, in related technologies, motion pseudo-observation constraints typically rely on specific motion states or constraint events for triggering, making it difficult for constraint information to continuously and stably participate in inertial measurement unit (IMU) calculations. Furthermore, constraint integration methods based on deep learning networks usually depend on large amounts of training data, resulting in high training costs, limited generalization ability, and significant computational resource consumption. In summary, related technologies struggle to continuously and stably suppress long-term accumulated errors in IMUs while ensuring computational efficiency, thus limiting the velocity measurement performance and engineering application scope of IMUs in complex environments. Summary of the Invention

[0004] This application provides a velocity estimation method and apparatus based on an inertial measurement unit (IMU) to address the problems in related technologies, such as the difficulty in obtaining high-precision velocity information continuously and stably while ensuring computational efficiency, due to the reliance on specific motion states or a large amount of training data to suppress the errors of the IMU, thus limiting the velocity measurement performance of the IMU.

[0005] The first aspect of this application provides a speed estimation method based on an inertial measurement unit (IMU), comprising the following steps: acquiring the measurement values ​​of the IMU based on a pre-established coordinate system of the IMU on a target vehicle; determining a constraint set for the target vehicle, and calculating the speed increment vector and constraint matrix of the target vehicle using the measurement values ​​based on the constraint set; determining the extended speed increment vector and steering matrix of the target vehicle according to the speed increment vector and the constraint matrix, and estimating the speed of the target vehicle according to the steering matrix and the extended speed increment vector.

[0006] Using the above techniques, based on the target vehicle's velocity increment vector and the constraint matrix, the target vehicle's steering matrix and extended velocity increment vector are determined, thereby estimating the vehicle's speed. By utilizing vehicle attitude change constraints and velocity change constraints, a complete kinematic relationship can be constructed, transforming the speed estimation problem into a constrained geometric problem. This reduces the dependence on initial velocity and external observation information, achieving low-complexity and high-precision vehicle speed estimation.

[0007] Optionally, in one embodiment of this application, determining the constraint set of the target vehicle includes: calculating the coordinate transformation matrix of the target vehicle based on the measured values; calculating the change in heading angle and the change in pitch angle of the target vehicle based on the coordinate transformation matrix; and determining the constraint set based on the preset time window length constraint of the target vehicle, the change in heading angle, and the change in pitch angle.

[0008] By using the above technical means, the constraint set is determined based on the preset time window length constraint, the change in heading angle and the change in pitch angle of the target vehicle. This can be used to standardize the speed and attitude state estimation process, limit unreasonable state changes, and ensure that speed and attitude estimation can still maintain continuity and stability even when there are insufficient constraint events or the triggering frequency is low.

[0009] Optionally, in one embodiment of this application, the formula for calculating the constraint matrix is: , in, Represents the constraint matrix. This indicates the change in heading angle. This indicates the change in pitch angle.

[0010] By using the above technical means, the constraint matrix is ​​determined based on the changes in heading angle and pitch angle. This can transform the characteristics of vehicle attitude change into kinematic constraints, establish the attitude correlation between adjacent moments, provide a basis for the construction of the steering matrix and the generation of extended velocity increment vectors, thereby enhancing the representation ability of vehicle motion state and improving the accuracy and reliability of subsequent speed estimation.

[0011] Optionally, in one embodiment of this application, the formula for estimating the speed of the target vehicle is: , in, Indicates the estimated speed. Represents the steering matrix. Represents the extended velocity increment vector. This represents the velocity vector to be solved.

[0012] By employing the above techniques, and using the non-negative least squares formula to estimate vehicle speed based on the steering matrix and extended velocity increment vector, the vehicle speed estimation problem can be transformed into a constrained optimization problem. This allows for the direct calculation of vehicle speed without relying on initial speed values ​​and a large amount of training data, achieving low-complexity, high-precision speed estimation while balancing computational efficiency and physical interpretability.

[0013] A second aspect of this application provides a velocity estimation device based on an inertial measurement unit (IMU), comprising: an acquisition module for acquiring measurement values ​​of the IMU based on a pre-established coordinate system of the IMU on a target vehicle; a calculation module for determining a constraint set of the target vehicle, and calculating a velocity increment vector and a constraint matrix of the target vehicle based on the constraint set and the measurement values; and an estimation module for determining an extended velocity increment vector and a steering matrix of the target vehicle based on the velocity increment vector and the constraint matrix, and estimating the velocity of the target vehicle based on the steering matrix and the extended velocity increment vector.

[0014] Optionally, in one embodiment of this application, the calculation module includes: a first calculation unit, configured to calculate the coordinate transformation matrix of the target vehicle based on the measured values; a second calculation unit, configured to calculate the change in heading angle and the change in pitch angle of the target vehicle based on the coordinate transformation matrix; and a determination unit, configured to determine the constraint set based on a preset time window constraint of the target vehicle, the change in heading angle, and the change in pitch angle.

[0015] Optionally, in one embodiment of this application, the formula for calculating the constraint matrix is: , in, Represents the constraint matrix. This indicates the change in heading angle. This indicates the change in pitch angle.

[0016] Optionally, in one embodiment of this application, the formula for estimating the speed of the target vehicle is: , in, Indicates the estimated speed. Represents the steering matrix. Represents the extended velocity increment vector. This represents the velocity vector to be solved.

[0017] A third aspect of this application provides an electronic device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor. The processor executes the program to implement the velocity estimation method based on an inertial measurement unit as described in the above embodiments.

[0018] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described velocity estimation method based on an inertial measurement unit.

[0019] A fifth aspect of this application provides a computer program product, including a computer program that, when executed, is used to implement the above-described velocity estimation method based on an inertial measurement unit.

[0020] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0021] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein: Figure 1 This is a flowchart of a velocity estimation method based on an inertial measurement unit provided according to an embodiment of this application; Figure 2 This is a schematic diagram illustrating the principle of a velocity estimation method based on an inertial measurement unit according to an embodiment of this application; Figure 3 This is a flowchart illustrating a velocity estimation method based on an inertial measurement unit according to an embodiment of this application; Figure 4 This is a schematic diagram of the vehicle trajectory corresponding to three sets of KITTI data in one embodiment of this application; Figure 5 This is a schematic diagram of the running trajectory corresponding to self-collected vehicle-mounted data in one embodiment of this application; Figure 6 This is a schematic diagram of the speed estimation results before and after 28 turning moments in KITTI data 1 according to an embodiment of this application; Figure 7 This is a schematic diagram of the speed estimation results before and after 14 turning moments in KITTI data 2 of one embodiment of this application; Figure 8 This is a schematic diagram of the speed estimation results before and after 25 turning moments in KITTI data 3 according to an embodiment of this application; Figure 9 This is a schematic diagram of the speed estimation results before and after 12 turning moments in a self-collected dataset according to an embodiment of this application; Figure 10 This is a schematic diagram of two-dimensional position estimation results for three different IMU track recursion methods according to an embodiment of this application; Figure 11 This is a block diagram of a velocity estimation device based on an inertial measurement unit according to an embodiment of this application; Figure 12 This is a schematic diagram of the structure of an electronic device according to an embodiment of this application.

[0022] Figure label: 10- Velocity estimation device based on inertial measurement unit; 100- Acquisition module, 200- Calculation module, 300- Estimation module; 1201- Memory, 1202- Processor, 1203- Communication interface. Detailed Implementation

[0023] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.

[0024] The following description, with reference to the accompanying drawings, illustrates a velocity estimation method and apparatus based on an inertial measurement unit (IMU) according to embodiments of this application. Addressing the technical problem mentioned in the background art—that relying on specific motion states or large amounts of training data to suppress IMU errors makes it difficult to continuously and stably obtain high-precision velocity information while maintaining computational efficiency—this application provides a velocity estimation method based on an IMU. This method aims to achieve high-precision vehicle velocity estimation based on an IMU without relying on specific motion states, external observation information, or large amounts of training data, while simultaneously considering computational efficiency and physical interpretability, providing reliable velocity information for inertial navigation systems and multi-sensor fusion systems.

[0025] Specifically, Figure 1 This is a flowchart illustrating a velocity estimation method based on an inertial measurement unit provided in an embodiment of this application.

[0026] like Figure 1 As shown, the velocity estimation method based on an inertial measurement unit includes the following steps: In step S101, the measurement values ​​of the inertial measurement unit are obtained based on the pre-established coordinate system of the inertial measurement unit on the target vehicle.

[0027] First, in this embodiment, the IMU coordinate system and the target vehicle coordinate system can be aligned to obtain the coordinate system of the inertial measurement unit on the target vehicle. For example, in this embodiment, the IMU's X-axis can be aligned with the vehicle's forward direction, the IMU's Y-axis with the vehicle's lateral direction, and the IMU's Z-axis with the vehicle's vertical direction. The IMU coordinate system can be referred to as the b-system, and the target vehicle coordinate system can be referred to as the v-system.

[0028] Secondly, the embodiments of this application can obtain IMU measurement values ​​based on the b-series, which can be the acceleration output by the inertial measurement unit after the vehicle experiences changes in motion such as turning, U-turn, lane change, and uphill / downhill during normal driving. and angular velocity ;in, The time of observation is represented. Further, in the embodiments of this application, the velocity increment vector of the vehicle in the b frame can be obtained by integrating the acceleration in the IMU measurement over time; or the attitude change of the vehicle at adjacent sampling times can be obtained by performing attitude calculation on the angular velocity, which can be used for subsequent velocity calculation; wherein, the IMU measurement can be applied in a specific way according to the actual situation, and no specific limitation is made here.

[0029] Based on the measured values, the embodiments of this application can further estimate the velocity, position and attitude information of the carrier through methods such as integral calculation or attitude calculation, thereby providing basic motion state information for subsequent velocity calculation.

[0030] In step S102, a constraint set for the target vehicle is determined, and the speed increment vector and constraint matrix of the target vehicle are calculated based on the constraint set using the measured values.

[0031] The constraint set for the target vehicle refers to a set of prior constraints or rules established based on the vehicle's motion characteristics. These constraints are used to limit or constrain inconsistencies during the state estimation process. For example, the constraint set may include, but is not limited to, pitch angle changes not exceeding 5° and heading angle changes not exceeding 10°. These constraints limit the longitudinal attitude and horizontal steering changes of the vehicle between adjacent sampling times, thereby suppressing abnormal attitude deviations caused by sensor noise, ensuring the stability and rationality of the state estimation, and providing reliable constraints for subsequent optimization calculations, allowing the vehicle's attitude and heading to change continuously within a reasonable range.

[0032] The velocity increment vector refers to the vector representation of the velocity change of a target vehicle between adjacent sampling times in three-dimensional space. It is usually obtained by integrating the corresponding acceleration measured by the IMU and can be used to characterize the magnitude and direction of the vehicle velocity change.

[0033] A constraint matrix is ​​a mathematical matrix form used to express motion constraint relationships. It can link state variables such as velocity, attitude, or position with constraint conditions, and constrain and modify the state during the optimization process.

[0034] Based on the velocity increment vector and constraint matrix, the embodiments of this application can provide a kinematic constraint basis for subsequent steering matrix construction and extended velocity increment vector generation, and further be used for the optimization solution of vehicle speed, thereby improving the accuracy and stability of speed estimation.

[0035] As one possible implementation method, in one embodiment of this application, determining the constraint set of the target vehicle includes: calculating the coordinate transformation matrix of the target vehicle based on the measured values; calculating the change in heading angle and the change in pitch angle of the target vehicle based on the coordinate transformation matrix; and determining the constraint set based on the preset time window length constraint of the target vehicle, the change in heading angle, and the change in pitch angle.

[0036] The change in heading angle refers to the change in the vehicle's rotation angle around a vertical axis, such as the Z-axis, between adjacent moments. It is generally used to describe the vehicle's steering behavior, such as the degree of left or right turn. The change in pitch angle refers to the change in the vehicle's rotation angle around a horizontal axis, such as the Y-axis, between adjacent moments. It is used to describe the vehicle's forward or backward tilting, such as uphill or downhill movement.

[0037] Preset time window length constraint refers to a constraint mechanism that limits the length range of the time window in the process of state estimation or constraint modeling based on sliding time window. For example, the preset time window length can be 1 second, 2 seconds, etc. By limiting the span of the time window, it can be ensured that the data involved in the calculation has strong timeliness and relevance, avoid the introduction of cumulative errors or weak related information interference from historical information over too long a time range, and reduce the computational dimension and complexity of state estimation, thereby improving the real-time performance and stability of the system while ensuring the estimation accuracy.

[0038] For example, embodiments of this application assume a set of times of vehicle speed. ,in This represents the number of points to be estimated. Initialize the constraint set. Steering matrix and extended velocity increment vector : , And construct the vehicle velocity vector to be solved. .

[0039] First, the embodiments of this application traverse all Combination, in which and Secondly, embodiments of this application can utilize methods including, but not limited to, the direction cosine matrix update method, the quaternion integration method, or the small angle increment method, to update the matrix from... Time's up Calculate the coordinate transformation matrix using all IMU measurements at time 10. Subsequently, embodiments of this application can calculate the attitude angle change using methods such as Euler angle decomposition, and convert it into a heading angle change. and pitch angle change .

[0040] Furthermore, the embodiments of this application traverse all A combination is considered if it satisfies any one of the following conditions. Add the combination to the set In this process, we obtain the constraint set: Condition 1: ; Condition 2: and( or ); in, This represents the threshold value for the constraint window length, which can be 1s, 2s, etc. and These represent the threshold values ​​for changes in heading and pitch angles, respectively, and can be 5°, 10°, etc.; each of these can be specifically set by those skilled in the art according to the actual situation.

[0041] For sets All of them In combination, the embodiments of this application can utilize Time and The velocity increment vector between time intervals is recursively calculated from the IMU measurements at different times through time integration or numerical integration. And by combining the constraint set, we obtain the constraint matrix. .

[0042] Optionally, in one embodiment of this application, the formula for calculating the constraint matrix can be expressed as: , in, Represents the constraint matrix. This indicates the change in heading angle. This indicates the change in pitch angle.

[0043] The embodiments of this application can use a constraint matrix to structurally represent the motion constraints of the target vehicle in the form of a mathematical matrix, providing basic data for attitude angle changes and speed increment correction, and realizing continuous constraint and dynamic correction of the vehicle's motion state.

[0044] In step S103, the extended velocity increment vector and steering matrix of the target vehicle are determined based on the velocity increment vector and the constraint matrix, so as to estimate the speed of the target vehicle based on the steering matrix and the extended velocity increment vector.

[0045] The steering matrix can convert the attitude changes of the vehicle at adjacent sampling times into a mathematical and structured representation, including but not limited to changes in heading angle and pitch angle, to describe the attitude changes of the vehicle coordinate system relative to the previous time.

[0046] Extended velocity increment vector refers to an extended eigenvector obtained by transforming velocity changes in different coordinate systems based on the velocity increment vector and combining it with the steering matrix, while also incorporating the kinematic constraints represented by the constraint matrix. It is used to enhance the expressive ability of vehicle velocity change information and improve the accuracy and stability of subsequent velocity estimation.

[0047] This application embodiment can sequentially traverse all sets. In The steering matrix is ​​obtained from the velocity increment vector and constraint matrix according to the following equation. and extended velocity increment vector : , ; in, The matrix has 3 rows. N A matrix of columns, where the first column is... Column and number Columns correspond to All other columns are 0.

[0048] According to the above formula, the embodiments of this application can obtain a more accurate steering matrix and extended velocity increment vector to support high-precision recursion and constraint correction of vehicle speed, position and attitude.

[0049] Furthermore, in this embodiment, a nonnegative least squares problem of vehicle speed can be constructed based on the steering matrix and the extended speed increment vector. This problem can then be solved iteratively using conventional algorithms, such as unconstrained least squares combined with the active set method, to estimate the speed of the target vehicle. .

[0050] Optionally, in one embodiment of this application, the formula for estimating the speed of the target vehicle can be expressed as: , in, Indicates the estimated speed. Represents the steering matrix. Represents the extended velocity increment vector. This represents the velocity vector to be solved.

[0051] Using this method, the vehicle speed at different times can be directly obtained in the embodiments of this application. It is used for forward velocity updates, position calculations, and state estimations, while ensuring the physical feasibility and non-negative constraints of the velocity components.

[0052] It can be explained that during the turning process, there is a strong coupling relationship between the velocity increment vector measured by the IMU and the attitude change, which can form a geometric triangle for calculating the initial and final velocities of the vehicle. Therefore, the vehicle velocity can be solved using this triangle by using the observation at a single moment in this application embodiment.

[0053] Specifically, such as Figure 2 As shown, the vehicle and IMU at the moments before and after the turn. and The coordinate systems are represented by black and green arrows, respectively, and the velocity increments measured by the IMU are... As indicated by the red arrow (known), the red angle... Determined by the velocity increment (known), purple angle Determined by IMU attitude changes (known). The yellow and blue arrows correspond to the vehicle's initial velocity, respectively. With final velocity (Unknown), all coinciding with the vehicle's direction of travel. It can be seen that the red, yellow, and blue arrows together form a triangle. One side and two angles of this triangle are known. Based on geometry, the remaining two sides (corresponding to the initial and final velocities) are... and The triangle is the only determinable factor. Therefore, the embodiments of this application can solve for the vehicle speed based on the triangle, which has the characteristics of low complexity, does not depend on the initial value, and does not require a large amount of training data. The vehicle speed can be directly calculated through physical constraints and geometric relationships, thus balancing accuracy, computational efficiency and physical interpretability.

[0054] The following is a specific example, such as Figure 3 As shown in the figure, this application embodiment takes a typical vehicle navigation scenario as an example to further illustrate the speed estimation method based on inertial measurement unit.

[0055] It should be noted that the embodiments of this application do not depend on a specific navigation system architecture or IMU sensor model, and parameters such as data length, constraint window length threshold, and steering angle threshold can be flexibly configured according to the actual application scenario. The test environment configuration of the embodiments of this application is as follows: the vehicle coordinate system and the IMU coordinate system have been installed and aligned, and the raw IMU observation data is input into the computing terminal via serial input; the key parameter is set to the number of points to be estimated. =10, constraint window length threshold =5, Threshold for changes in heading and pitch angles and All are set to 10°. Embodiments of this application may include the following steps: Step S301, IMU data acquisition.

[0056] Select the set of times of vehicle movement And acquire raw IMU data during this period, including acceleration and angular velocity measurements.

[0057] Step S302: Initialize the constraint set.

[0058] Initialize constraint set Steering matrix and extended velocity increment vector : , And construct the velocity vector to be solved. .

[0059] Step S303: Iterate through the time set and calculate the attitude angle change.

[0060] Traverse all Combined calculation of coordinate transformation matrix And convert it into a change in heading angle. and pitch angle change .

[0061] As a concrete example, the change in heading angle As shown in Table 1.

[0062] Table 1

[0063] Step S304: Determine whether the constraints are met.

[0064] If the constraints are met, then Add the combination to the set If the constraint conditions are not met, proceed to step S305. If not, return to step S303.

[0065] The constraints include: 1) Or 2) and( or ).

[0066] This application uses Table 1 as an example, highlighting the corresponding... Add the combination to the set middle.

[0067] Step S305: Add the constraint set, calculate the velocity increment vector and constraint matrix.

[0068] For sets All of them Combine and calculate the velocity increment vector and constraint matrix .

[0069] Step S306: Calculate the steering matrix and the extended velocity increment vector.

[0070] This application embodiment iterates through all sets sequentially. In The steering matrix is ​​obtained. and extended velocity increment vector .

[0071] Step S307: Construct a non-negative least squares equation and solve it to output the velocity estimation result.

[0072] Furthermore, in this embodiment of the application, a non-negative least squares problem is constructed, and the speed is estimated by the direct least squares algorithm. The estimation results are shown in Table 2.

[0073] Table 2

[0074] It can be seen that the estimation results of the embodiments of this application are highly consistent with or extremely close to the true speed (true value), and can reliably and accurately reflect the motion state of the vehicle in all directions, thereby meeting the navigation and control requirements.

[0075] As one possible approach, to verify the effectiveness of the velocity estimation method based on inertial measurement units (IMUs), we conducted performance validation using the publicly available KITTI dataset from the autonomous driving field and a self-collected on-vehicle dataset. The KITTI dataset selected three typical vehicle trajectories, such as... Figure 4 As shown, from left to right, these are KITTI data 1, KITTI data 2, and KITTI data 3; the motion trajectories of the self-collected datasets are as follows. Figure 5 As shown. In Figure 4 , Figure 5 In the diagram, the blue curve represents the vehicle's actual trajectory, and the red marked segment represents the vehicle's effective turning moment.

[0076] In the experiment, for the 10-second data before and after each turning point, velocity estimation was performed on consecutive moments with 1-second intervals and N=10 points to be estimated. The estimation results for KITTI data 1, KITTI data 2, KITTI data 3, and the self-collected dataset are as follows: Figure 6 , Figure 7 , Figure 8 , Figure 9As shown in the figure, the vertical axis of each graph represents the velocity magnitude (in meters per second), and the horizontal axis represents the estimated time. The blue curve represents the true velocity value, the red curve represents the calculation result of the velocity estimation method based on the inertial measurement unit (IMU), and the green curve represents the estimation result based on the centripetal acceleration (CCA) method. The experimental results clearly show that, across the entire dataset, the velocity estimation result based on the IMU (red curve) is significantly higher than that based on the CCA method (green curve), achieving superior estimation accuracy. This demonstrates the effectiveness of the IMU-based velocity estimation method.

[0077] To quantify the performance improvement of the velocity estimation method based on inertial measurement units (IMUs), this application's embodiments statistically analyzed the root mean square errors (RMSEs) of the velocity estimation results from the IMU-based method and the centripetal acceleration-based method across four datasets: KITTI Data 1, KITTI Data 2, KITTI Data 3, and a self-collected dataset. Table 3 shows that the IMU-based velocity estimation method reduces the velocity estimation error by 1-2 orders of magnitude, with an error reduction rate exceeding 90%, resulting in a significant improvement in velocity measurement accuracy and stability.

[0078] Table 3

[0079] Furthermore, to illustrate the application value of the velocity estimation method based on inertial measurement units (IMUs), this application embodiment tests the improvement effect of the estimated velocity on IMU trajectory recursion using the KITTI dataset as the test object. This application embodiment divides each group of KITTI datasets into 50-second segments, resulting in 24 independent test trajectories. Each trajectory starts with a precise initial value, and three IMU dead reckoning schemes are compared: ① pure IMU recursion (without any external assistance); ② NHC (Non-Holonomic Constraint) assisted IMU recursion (a mainstream and commonly used scheme in vehicle navigation); ③ an IMU recursion scheme with NHC constraints superimposed on the velocity estimation method based on IMUs.

[0080] like Figure 10As shown in the figure, this application embodiment demonstrates the estimation results of three IMU recursion schemes on 24 trajectory segments. The horizontal and vertical axes represent the east-west direction (east is positive) and the north-south direction (north is positive), respectively. The blue curve represents the reference true trajectory, and the green, yellow, and red curves correspond to the results of pure IMU recursion, NHC-assisted recursion, and velocity estimation method-assisted recursion based on the inertial measurement unit, respectively. As can be seen from the figure, the red curve corresponding to the velocity estimation method-assisted recursion based on the inertial measurement unit has the highest degree of agreement with the reference trajectory, and its estimation accuracy is significantly better than the other two schemes. This fully demonstrates that the velocity estimation method based on the inertial measurement unit can effectively improve the accuracy of IMU dead reckoning.

[0081] Subsequently, the embodiments of this application statistically analyzed the average velocity error and two-dimensional position error of 24 trajectory segments, as shown in Table 4.

[0082] Table 4

[0083] Quantitative results show that, compared with pure IMU recursion and NHC-assisted recursion, the velocity estimation method based on the inertial measurement unit (IMU) can significantly reduce navigation errors when applied to IMU track recursion: the mean velocity error is reduced by 91.8% and 60.7% respectively, and the two-dimensional position error is also greatly suppressed, which verifies the application value of the velocity estimation method based on the IMU.

[0084] The velocity estimation method based on inertial measurement unit (IMU) proposed in this application constructs vehicle kinematic constraints based on velocity increment vectors and constraint matrices, providing a foundation for determining the steering matrix and generating extended velocity increment vectors. This transforms the vehicle velocity estimation process from cumulative integral calculation to a constrained optimization solution process, thereby reducing dependence on initial state and external observation information and improving the stability and robustness of velocity calculation. Simultaneously, it effectively suppresses the accumulation and propagation of IMU integral errors, improving the accuracy and reliability of vehicle velocity estimation while balancing computational efficiency and physical interpretability. Furthermore, this method has broad application value, capable of assisting IMU dead reckoning in suppressing long-term drift, or directly applied to multi-sensor calibration and monitoring systems to improve navigation and system reliability.

[0085] Next, with reference to the accompanying drawings, a velocity estimation device based on an inertial measurement unit according to an embodiment of this application is described.

[0086] Figure 11 This is a block diagram of a velocity estimation device based on an inertial measurement unit according to an embodiment of this application.

[0087] like Figure 11 As shown, the velocity estimation device 10 based on inertial measurement unit includes: an acquisition module 100, a calculation module 200, and an estimation module 300.

[0088] The acquisition module 100 is used to acquire the measurement values ​​of the inertial measurement unit based on the pre-established coordinate system of the inertial measurement unit on the target vehicle.

[0089] The calculation module 200 is used to determine the constraint set of the target vehicle, and to calculate the speed increment vector and constraint matrix of the target vehicle based on the constraint set and the measured values.

[0090] The estimation module 300 is used to determine the extended velocity increment vector and steering matrix of the target vehicle based on the velocity increment vector and the constraint matrix, so as to estimate the speed of the target vehicle based on the steering matrix and the extended velocity increment vector.

[0091] Optionally, in one embodiment of this application, the calculation module 200 includes: a first acquisition unit, a second acquisition unit, and a determination unit.

[0092] The first calculation unit is used to calculate the coordinate transformation matrix of the target vehicle based on the measured values.

[0093] The second calculation unit is used to calculate the changes in heading angle and pitch angle of the target vehicle based on the coordinate transformation matrix.

[0094] The determining unit is used to determine the constraint set based on the preset time window length constraint of the target vehicle, the change in heading angle, and the change in pitch angle.

[0095] Optionally, in one embodiment of this application, the formula for calculating the constraint matrix is: , in, Represents the constraint matrix. This indicates the change in heading angle. This indicates the change in pitch angle.

[0096] Optionally, in one embodiment of this application, the formula for estimating the speed of the target vehicle is: , in, Indicates the estimated speed. Represents the steering matrix. Represents the extended velocity increment vector. This represents the velocity vector to be solved.

[0097] It should be noted that the foregoing explanation of the velocity estimation method based on inertial measurement unit also applies to the velocity estimation device based on inertial measurement unit in this embodiment, and will not be repeated here.

[0098] According to the velocity estimation device based on the inertial measurement unit proposed in the embodiments of this application, the vehicle kinematic constraint relationship is constructed based on the velocity increment vector and constraint matrix, which provides a basis for determining the steering matrix and generating extended velocity increment vectors. This transforms the vehicle velocity estimation process from cumulative integral calculation to a constrained optimization solution process, thereby reducing the dependence on initial state and external observation information and improving the stability and robustness of velocity calculation. At the same time, it effectively suppresses the accumulation and propagation of integral errors of the inertial measurement unit, improves the accuracy and reliability of vehicle velocity estimation, and takes into account both computational efficiency and physical interpretability.

[0099] Figure 12 A schematic diagram of the structure of an electronic device provided in an embodiment of this application. The electronic device may include: The memory 1201, the processor 1202, and the computer program stored on the memory 1201 and executable on the processor 1202.

[0100] When the processor 1202 executes the program, it implements the velocity estimation method based on the inertial measurement unit provided in the above embodiments.

[0101] Furthermore, electronic devices also include: Communication interface 1203 is used for communication between memory 1201 and processor 1202.

[0102] The memory 1201 is used to store computer programs that can run on the processor 1202.

[0103] The memory 1201 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage.

[0104] If the memory 1201, processor 1202, and communication interface 1203 are implemented independently, then the communication interface 1203, memory 1201, and processor 1202 can be interconnected via a bus to complete communication between them. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be divided into address buses, data buses, control buses, etc. For ease of representation, Figure 12 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0105] Optionally, in a specific implementation, if the memory 1201, processor 1202, and communication interface 1203 are integrated on a single chip, then the memory 1201, processor 1202, and communication interface 1203 can communicate with each other through an internal interface.

[0106] The processor 1202 may be a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application.

[0107] This embodiment also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described velocity estimation method based on an inertial measurement unit.

[0108] This application also provides a computer program product, including a computer program that can run computer instructions. When the computer instructions are executed by a processor, they implement the velocity estimation method based on an inertial measurement unit provided in this application.

[0109] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0110] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "N" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0111] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or N executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.

[0112] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0113] It should be understood that the various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, the N steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. If implemented in hardware, as in another embodiment, it can be implemented using any one or more of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0114] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0115] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0116] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.

Claims

1. A velocity estimation method based on an inertial measurement unit, characterized in that, Includes the following steps: Based on the pre-established coordinate system of the inertial measurement unit on the target vehicle, the measurement values ​​of the inertial measurement unit are obtained; Determine the constraint set of the target vehicle, and calculate the speed increment vector and constraint matrix of the target vehicle based on the measurement values ​​using the constraint set; The extended velocity increment vector and steering matrix of the target vehicle are determined based on the velocity increment vector and the constraint matrix, so as to estimate the speed of the target vehicle based on the steering matrix and the extended velocity increment vector.

2. The method according to claim 1, characterized in that, The determination of the constraint set for the target vehicle includes: Calculate the coordinate transformation matrix of the target vehicle based on the measured values; The changes in heading angle and pitch angle of the target vehicle are calculated based on the coordinate transformation matrix. The constraint set is determined based on the preset time window length constraint of the target vehicle, the change in heading angle, and the change in pitch angle.

3. The method according to claim 1, characterized in that, The formula for calculating the constraint matrix is ​​as follows: , in, Represents the constraint matrix. This indicates the change in heading angle. This indicates the change in pitch angle.

4. The method according to claim 1, characterized in that, The formula for estimating the speed of the target vehicle is: , in, Indicates the estimated speed. Represents the steering matrix. Represents the extended velocity increment vector. This represents the velocity vector to be solved.

5. A velocity estimation device based on an inertial measurement unit, characterized in that, include: The acquisition module is used to acquire the measurement values ​​of the inertial measurement unit based on the pre-established coordinate system of the inertial measurement unit on the target vehicle. A calculation module is used to determine the constraint set of the target vehicle, and to calculate the speed increment vector and constraint matrix of the target vehicle based on the constraint set and the measured values. An estimation module is used to determine the extended velocity increment vector and steering matrix of the target vehicle based on the velocity increment vector and the constraint matrix, so as to estimate the speed of the target vehicle based on the steering matrix and the extended velocity increment vector.

6. The apparatus according to claim 5, characterized in that, The computing module includes: The first calculation unit is used to calculate the coordinate transformation matrix of the target vehicle based on the measured values; The second calculation unit is used to calculate the change in heading angle and the change in pitch angle of the target vehicle based on the coordinate transformation matrix. The determining unit is used to determine the constraint set based on the preset time window length constraint of the target vehicle, the change in heading angle, and the change in pitch angle.

7. The apparatus according to claim 5, characterized in that, The formula for calculating the constraint matrix is ​​as follows: , in, Represents the constraint matrix. This indicates the change in heading angle. This indicates the change in pitch angle.

8. An electronic device, characterized in that, include: A memory, a processor, and a computer program stored in the memory and capable of running on the processor, the processor executing the program to implement the velocity estimation method based on an inertial measurement unit as described in any one of claims 1-4.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, The program is executed by the processor to implement the velocity estimation method based on the inertial measurement unit as described in any one of claims 1-4.

10. A computer program product, comprising a computer program, characterized in that, The computer program is executed to implement the velocity estimation method based on an inertial measurement unit as described in any one of claims 1-4.