Precise positioning method, device, equipment and storage medium for inertial measurement sensor for intelligent terminal equipment

By optimizing inertial data acquisition and attitude solution, combining real-time attitude information for gait detection and step length estimation, and matching with map data, the problem of insufficient accuracy in the lack of external signal environment is solved, and high-precision and reliable positioning services are achieved.

CN119413163BActive Publication Date: 2025-04-04SHENZHEN SMART CARE TECH LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510012379.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-06
Publication Date
2025-04-04
Estimated Expiration
2045-01-06

AI Technical Summary

Technical Problem

Traditional inertial measurement sensor (IMU)-based positioning methods are difficult to maintain high-precision positioning in an environment where external signals are lacking or weakening.

Method used

By optimizing the inertial data acquisition and attitude solution process, combining real-time attitude information for gait detection and step length estimation, and matching the trajectory path with preset map data to improve positioning accuracy and reliability.

Benefits of technology

It effectively slows down the speed of positioning error accumulation over time, improves positioning accuracy in complex environments, and ensures that smart terminal devices provide reliable positioning services in various environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119413163B_ABST
    Figure CN119413163B_ABST
Patent Text Reader

Abstract

The present invention relates to a precise positioning method, device, equipment and storage medium for an inertial measurement sensor for a smart terminal device, comprising the following steps: performing posture calculation on the original inertial data to obtain real-time posture information of a smart watch; performing gait detection and step length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and step length information; obtaining predetermined initial positioning information, and performing dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain a trajectory path of the smart watch; matching the trajectory path with preset map data to obtain position information of the smart watch in an actual environment, thereby solving the technical problem that a traditional IMU-based positioning method usually relies on an external signal source to correct errors, and the traditional method is difficult to maintain high-precision positioning in an environment with no or only weak external signals.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of inertial measurement sensors, and in particular to a precise positioning method, device, equipment and storage medium for an inertial measurement sensor for a smart terminal device. Background Art

[0002] With the popularization of smart terminal devices, especially the widespread use of wearable devices such as smart watches, users have an increasing demand for these devices in health management, sports tracking and navigation services. Inertial measurement sensors (IMU), including accelerometers and gyroscopes, play an important role in application scenarios such as indoor positioning and activity recognition because they can provide high-frequency attitude data. However, due to the problems of bias instability, noise and scale factor error of IMU itself, long-term use will lead to accumulation of positioning errors and affect positioning accuracy. In addition, traditional IMU-based positioning methods usually rely on external signal sources (such as GPS) to correct errors, but in environments with no or only weak external signals, such as urban canyons with tall buildings or underground spaces, traditional methods are difficult to maintain high-precision positioning.

[0003] In response to the above problems, researchers began to explore methods of using IMU for precise positioning to reduce dependence on external signals such as GPS and improve positioning accuracy in complex environments. This study proposes a precise positioning method for inertial measurement sensors applied to smart watches, aiming to improve the accuracy of gait detection and step length estimation by optimizing the inertial data acquisition and attitude solution process. This method not only considers the quality improvement of the original inertial data, but also combines real-time attitude information to make dead reckoning more reliable, thereby effectively slowing down the rate at which positioning errors accumulate over time. At the same time, by matching the trajectory path with the preset map data, the accuracy of the positioning results is further improved, enabling smart watches to provide users with reliable positioning services in various environments.

[0004] In summary, the background of this study is that the existing technology cannot fully meet the needs of users, especially the need to achieve continuous and high-precision positioning in complex environments. By proposing a new IMU-based precise positioning algorithm, this study attempts to solve the limitations of the current positioning function of smart terminal devices, that is, how to maintain the continuity and accuracy of positioning in an environment without GPS signals or with weak signals. This method can not only enhance the functions of portable devices such as smart watches, but also promote the development of more location-based services, such as personal health monitoring, emergency response, and the convenience of daily life, providing strong technical support for future smart city and Internet of Things applications. Summary of the invention

[0005] The main purpose of the present invention is to provide a precise positioning method, device, equipment and storage medium for inertial measurement sensors for intelligent terminal devices, which solves the technical problem that traditional IMU-based positioning methods usually rely on external signal sources (such as GPS) to correct errors. In environments with no or only weak external signals, such as urban canyons with tall buildings or underground spaces, traditional methods are difficult to maintain high-precision positioning.

[0006] To achieve the above object, the present invention provides a precise positioning method of an inertial measurement sensor for a smart terminal device, which is applied to a smart watch, wherein the smart watch is equipped with an inertial measurement sensor, and comprises the following steps:

[0007] Using the inertial measurement sensor to collect inertial data of the smart watch to obtain raw inertial data, wherein the raw inertial data includes accelerometer data and three-axis angular velocity;

[0008] Performing attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch;

[0009] Performing gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information;

[0010] Acquire predetermined initial positioning information, and perform dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain a trajectory path of the smart watch;

[0011] The trajectory path is matched with the preset map data to obtain the location information of the smart watch in the actual environment.

[0012] Furthermore, the inertial measurement sensor is used to collect accelerometer data and three-axis angular velocity data of the smart watch to obtain raw inertial data, including:

[0013] The inertial measurement sensor is used to collect accelerometer data and three-axis angular velocity data of the smart watch to obtain a preliminary original sensor signal;

[0014] Adding a timestamp to the preliminary raw sensor signal based on a preset synchronous clock source to ensure the time consistency of all sensor outputs, thereby obtaining a preliminary raw sensor signal with a time stamp;

[0015] Preliminarily formatting the preliminary raw sensor signal with the time mark to obtain a standardized raw data frame;

[0016] Pre-filtering the standardized raw data frame using a preset digital filter to obtain purified raw inertial data;

[0017] The purified raw inertial data is subjected to coordinate system transformation to obtain raw inertial data in a unified coordinate system.

[0018] Furthermore, performing attitude calculation on the original inertial data to obtain real-time attitude information of the smart watch includes:

[0019] The accelerometer data and the three-axis angular velocity in the raw inertial data are integrated by using a quaternion representation method to obtain a preliminary attitude quaternion of the smart watch;

[0020] Using a gradient descent algorithm, the preliminary attitude quaternion is subjected to attitude optimization to obtain an optimized attitude quaternion;

[0021] Convert the optimized attitude quaternion into Euler angle representation to obtain real-time preliminary angle information of the smart watch; wherein the preliminary angle information includes pitch angle, yaw angle and roll angle;

[0022] Integrating the preliminary angle information to obtain an angular velocity integral value;

[0023] It is determined whether the angular velocity integral value is within a preset angular velocity range. If not, magnetometer data is obtained by a magnetometer arranged in the smart watch, and angle correction is performed on the preliminary angle information based on the magnetometer data and the angular velocity integral value to obtain real-time posture information of the smart watch.

[0024] Further, the performing gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information includes:

[0025] Performing gait peak detection on the smart watch based on the real-time posture information to obtain a gait event sequence; wherein the gait event sequence includes heel-touching and toe-off;

[0026] Calculating the time intervals between adjacent gait events through the gait event sequence to obtain the gait cycle time;

[0027] Utilizing a preset gait feature extraction algorithm, gait feature parameters of the target user are extracted based on the gait cycle time and the real-time posture information; wherein the gait feature parameters include step frequency, stride symmetry, and gait stability;

[0028] Performing spectrum analysis on the real-time posture information to obtain gait frequency characteristics;

[0029] By using a preset ergonomic stride length estimation model, based on the gait frequency characteristics and the gait cycle time, the stride length of the target user is estimated to obtain stride length information.

[0030] Further, performing dead reckoning positioning on the smart watch based on the initial positioning information, the step information and the real-time posture information to obtain a trajectory path of the smart watch includes:

[0031] Extracting features from the initial positioning information using a preset relative positioning algorithm to obtain initial position feature information; wherein the initial position feature information includes a three-dimensional coordinate vector and a heading reference angle;

[0032] Using a recursive least squares filtering algorithm to perform data fusion on the step length information and the initial position feature information to obtain fusion state parameters, wherein the fusion state parameters include a step length projection matrix and a heading change amount;

[0033] Performing kinematics calculation on the fusion state parameters and the real-time posture information to obtain displacement vector parameters; wherein the displacement vector parameters include a position increment sequence and a posture change rate;

[0034] Performing gait cycle analysis on the displacement vector parameters by a zero-speed detection algorithm to obtain trajectory segmentation data; wherein the trajectory segmentation data includes motion segments and static intervals;

[0035] Using a Bezier curve fitting algorithm to perform curve fitting on the trajectory segment data to obtain smooth trajectory data;

[0036] Error correction is performed on the smooth trajectory data based on a particle filtering algorithm to obtain the trajectory path of the smart watch.

[0037] Furthermore, matching the trajectory path with preset map data to obtain location information of the smart watch in the actual environment includes:

[0038] Using a preset quadtree algorithm, the preset map data is divided according to spatial regions to obtain layered map data;

[0039] Performing segmented trajectory path processing on the smart watch based on the layered map data to obtain a segmented trajectory path;

[0040] Using a map projection algorithm, the segmented trajectory path is converted from the original coordinate system to a coordinate system corresponding to the layered map data to obtain a converted trajectory path;

[0041] Performing feature extraction on the converted trajectory path and the layered map data to obtain trajectory features and map features;

[0042] Using a cosine similarity algorithm to calculate the similarity between the trajectory feature and the map feature to obtain a similarity value;

[0043] Based on the similarity value, the trajectory features and the map features are screened and located to obtain the location information of the smart watch in the actual environment.

[0044] Furthermore, the segmenting process of the trajectory path of the smart watch based on the layered map data to obtain the segmented trajectory path includes:

[0045] The trajectory path is initially segmented by a multi-resolution grid segmentation algorithm to obtain initial segmented trajectory path information;

[0046] Extracting the topological structure and road width information of the layered map data, and performing topological matching on the initial segmented trajectory path based on the topological structure to obtain topological matching trajectory path segment information;

[0047] The topology matching trajectory path segment information is smoothed by a Kalman filter algorithm to obtain smoothed trajectory path segment information;

[0048] Based on the road width information, width constraints are imposed on the smooth trajectory path segment information to obtain constrained trajectory path segment information;

[0049] Based on a feature point detection algorithm, feature points are extracted from the constraint trajectory path segment information to obtain a feature point set;

[0050] The feature point set is subjected to path reorganization and cluster analysis to obtain a segmented trajectory path.

[0051] The present invention also provides a precise positioning device of an inertial measurement sensor for a smart terminal device, which is applied to a smart watch. The smart watch is equipped with an inertial measurement sensor, including:

[0052] A collection module, used to collect inertial data of the smart watch using the inertial measurement sensor to obtain raw inertial data, wherein the raw inertial data includes accelerometer data and three-axis angular velocity;

[0053] A calculation module, used to perform attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch;

[0054] An estimation module, configured to perform gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information;

[0055] A dead reckoning module, configured to obtain predetermined initial positioning information, and perform dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain the position coordinates of the smart watch;

[0056] The matching module is used to match the position coordinates with preset map data to obtain the position information of the smart watch in the actual environment.

[0057] The present invention also provides a computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of any one of the above methods when executing the computer program.

[0058] The present invention also provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned methods are implemented.

[0059] The precise positioning method of an inertial measurement sensor for a smart terminal device provided by the present invention comprises the following steps: using the inertial measurement sensor to collect inertial data of the smart watch to obtain raw inertial data, performing attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch; performing gait detection and step length estimation on the smart watch based on the real-time attitude information to obtain gait characteristic parameters and step length information; obtaining predetermined initial positioning information, and performing dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time attitude information to obtain a trajectory path of the smart watch; matching the trajectory path with preset map data to obtain location information of the smart watch in an actual environment. Through the above technical means, the technical problem that the traditional IMU-based positioning method usually relies on an external signal source (such as GPS) to correct errors and the traditional method is difficult to maintain high-precision positioning in an environment with no or only weak external signals, such as an urban canyon or underground space with tall buildings, is solved, and the original inertial data is refined and dead reckoning is performed in combination with real-time attitude information, thereby effectively slowing down the speed at which the error grows over time. At the same time, by correcting the positioning results through map matching, the error accumulation in the long-term positioning process is further controlled, ensuring the beneficial effects of the stability and reliability of the positioning results. BRIEF DESCRIPTION OF THE DRAWINGS

[0060] Figure 1 It is a schematic diagram of the steps of a method for accurately positioning a smart terminal device using an inertial measurement sensor in one embodiment of the present invention;

[0061] Figure 2 It is a structural block diagram of a precise positioning device for an inertial measurement sensor for an intelligent terminal device in one embodiment of the present invention;

[0062] Figure 3 It is a schematic block diagram of the structure of a computer device according to an embodiment of the present invention.

[0063] The realization of the purpose, functional features and advantages of the present invention will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0064] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0065] like Figure 1 As shown, Figure 1 It is a schematic diagram of the steps of a precise positioning method using an inertial measurement sensor for a smart terminal device in one embodiment of the present invention;

[0066] In one embodiment of the present invention, a precise positioning method for an inertial measurement sensor of a smart terminal device is provided, which is applied to a smart watch, wherein the inertial measurement sensor is installed in the smart watch, and comprises the following steps:

[0067] Step S1, using the inertial measurement sensor to collect inertial data of the smart watch to obtain raw inertial data, wherein the raw inertial data includes accelerometer data and three-axis angular velocity.

[0068] Specifically, when implementing the step of "using the inertial measurement sensor to collect inertial data of the smart watch to obtain raw inertial data, wherein the raw inertial data includes accelerometer data and three-axis angular velocity" described above, it is first necessary to understand that the smart watch has an integrated inertial measurement unit (IMU), which can sense and record the motion state of the device in three-dimensional space in real time. Specifically, when the user wears the smart watch and moves, the built-in accelerometer will continuously monitor the linear acceleration changes along the three mutually perpendicular axes, while the gyroscope is responsible for capturing the angular velocity of rotation around these three axes, namely the so-called three-axis angular velocity. In order to ensure the validity and accuracy of the data, during the data collection process, the smart watch regularly reads this information from the IMU through its built-in microprocessor and saves them as raw inertial data. For example, suppose a running enthusiast is jogging in the park. As his arms swing naturally, the accelerometer in the smart watch will detect the acceleration changes caused by each swing of his arms, and the gyroscope will also record the angular velocity generated by the rotation of his wrist. These data points are collected continuously to form a set of time-varying sequences that reflect the user's wrist motion characteristics throughout the activity. These raw inertial data are then crucial for subsequent posture resolution, as they provide the basis for calculating the spatial position of the smartwatch. For example, when the user changes direction or walks up and down stairs, the data from the accelerometer and gyroscope can help the system determine this change in posture. Moreover, through further processing of these raw data, gait characteristic parameters such as step frequency, step length, etc. can be extracted, which is very important for providing precise positioning services and accurate motion tracking. Therefore, ensuring high-quality inertial data collection is a key step in achieving precise positioning of smartwatches, which not only provides users with reliable navigation support, but also lays a solid foundation for functions such as health management and motion analysis.

[0069] Step S2, performing attitude calculation on the original inertial data to obtain real-time attitude information of the smart watch.

[0070] Specifically, after the inertial data collection is realized, the next step is to perform attitude solution on the raw inertial data to obtain the real-time attitude information of the smart watch. This process is completed by complex mathematical algorithms and models, aiming to convert the data obtained from the accelerometer and gyroscope into information describing the spatial orientation of the device. Specifically, when the wearer of the smart watch jogs in the park, each swing of the arm or rotation of the wrist will cause changes in the readings of the accelerometer and the three-axis angular velocity sensor. After these changes are recorded as raw inertial data, the system needs to further process these data in order to accurately understand the current spatial position and direction of the watch. To achieve this, the microprocessor inside the smart watch first pre-processes the received accelerometer data and three-axis angular velocity data. This step includes filtering, denoising and other operations to eliminate inaccuracies caused by sensor errors or external interference. Then, based on these purified data, the system uses advanced attitude solution algorithms such as Kalman filters and complementary filters to perform calculations. For example, during running, when the user's arms swing naturally, the smart watch can not only sense linear acceleration, but also capture angular velocity changes caused by rotational motion. Through attitude solution, the system can determine the attitude angle of the watch relative to the ground, such as pitch, roll and yaw, and then understand the user's actual movement pattern. In addition, attitude solution is not just to provide a static attitude snapshot, it also needs to continuously track and update the position and direction of the smart watch to ensure that the real-time attitude information provided always matches the user's actual activities. For example, when the user changes the direction of travel or goes up and down stairs, the smart watch can quickly adjust its internal attitude model to reflect the new attitude state. This real-time attitude monitoring is crucial for subsequent gait detection and step length estimation because it provides the necessary input parameters to help the system more accurately determine the distance of each step and the direction of walking. Ultimately, by performing detailed attitude solution on the raw inertial data, the smart watch can still provide users with reliable navigation services without external positioning signals, and support functions such as health management and motion analysis, greatly improving the user experience and the application value of the device.

[0071] Step S3: performing gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information.

[0072] Specifically, after the posture solution of the original inertial data is realized and the real-time posture information of the smart watch is obtained, the next step is to perform gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information. This process involves using the previously solved posture information to analyze the user's movement pattern and extract walking-related features from it. Specifically, when the wearer of the smart watch is jogging in the park, the algorithm inside the watch will continuously monitor the acceleration and angular velocity changes caused by arm swings, wrist rotations, etc., which reflect the rhythm and intensity of the user's steps. In order to achieve gait detection, the system first relies on real-time posture information to identify specific action patterns, such as walking or running. By comparing the current posture angle with the preset gait model, the smart watch can determine when key events such as foot contact and departure occur. For example, during running, every time the user's foot touches the ground, the watch will detect an obvious acceleration peak, which marks the beginning of a new step. At the same time, the three-axis angular velocity data provided by the gyroscope helps confirm the rotation of the wrist and further verify the different stages of the gait cycle. In this way, the system can accurately capture each gait cycle and calculate gait characteristic parameters such as step frequency and stride length. On this basis, the step length estimation is to infer the actual length of each step based on the above gait characteristic parameters and real-time posture information. Since the stride length of different people may vary greatly, and the stride length of the same person at different speeds may also be different, the smart watch adopts an adaptive method to estimate the stride length. For example, for people who run frequently, the watch can learn the average stride length of the user at different speeds through a period of learning. Then, in subsequent exercise, combined with real-time posture information and gait characteristic parameters, the smart watch can dynamically adjust the stride length estimation value to ensure its accuracy. In addition, if the user goes up and down stairs or changes the direction of travel, the system will also adjust the stride length estimation based on the real-time posture information to reflect the changes in the actual walking situation. In summary, through the application of real-time posture information, the smart watch can not only accurately detect gait, but also reasonably estimate the stride length, providing users with detailed sports data analysis. This capability enables smart watches to provide reliable sports tracking services, such as recording running distance and calculating calorie consumption, even without GPS signals, greatly enhancing the functionality and user experience of the device. At the same time, this also provides strong technical support for areas such as health management and sports guidance, making smart watches an ideal companion for personal health and fitness.

[0073] Step S4, obtaining predetermined initial positioning information, and performing dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain a trajectory path of the smart watch.

[0074] Specifically, after the gait detection and stride length estimation of the smart watch based on the real-time posture information are realized, the next step is to obtain the predetermined initial positioning information, and perform dead reckoning positioning on the smart watch based on the initial positioning information, the stride length information and the real-time posture information to obtain the trajectory path of the smart watch. This process is the key to ensure that the smart watch can provide continuous and accurate location tracking services without external positioning signals. First, the smart watch needs a reliable starting point to start its dead reckoning. This starting point is the so-called predetermined initial positioning information, which can come from a variety of sources, such as GPS signals, Wi-Fi hotspot positioning, or the starting position manually entered by the user. Once this initial positioning information is obtained, the smart watch has a reference point, from which it can gradually update its position according to the user's movement. For example, when a running enthusiast is jogging in a park, he may obtain an accurate starting position through GPS before entering the park, and this position is the initial positioning information. Once entering an area where the GPS signal is weak or there is no signal coverage, such as a dense forest, the smart watch relies on the previously obtained initial positioning information as a reference. Next, the smartwatch uses the stride length information and real-time posture information calculated in the previous steps to perform dead reckoning. The stride length information provides the approximate distance traveled for each step, while the real-time posture information helps determine the direction change of each step. Combining these two data, the smartwatch can estimate the approximate location of the user at each moment, thereby constructing a continuous trajectory path. For example, during running, every time the user takes a step, the smartwatch will update the position coordinates based on the known stride length and current posture angle. If the user turns or changes the direction of travel, the real-time posture information will capture these changes, allowing the smartwatch to adjust the direction of the trajectory path accordingly to maintain the accuracy of position tracking. In addition, to further improve the accuracy of dead reckoning, the smartwatch may use some advanced algorithms and technologies, such as Kalman filters or other prediction models, to fuse data from different sensors and correct possible errors. This helps to mitigate the problem of position drift caused by long-term walking, ensuring that the smartwatch can provide relatively accurate position information even in the absence of external positioning signals. Finally, by matching the trajectory path with the preset map data, the smartwatch can also provide users with more intuitive location feedback, allowing them to clearly understand their exact location in the actual environment, thereby achieving uninterrupted navigation services and personal sports management. In summary, by obtaining the predetermined initial positioning information and combining the step length information and real-time posture information for dead reckoning, the smartwatch can not only maintain efficient location tracking in an environment lacking GPS signals, but also bring users more accurate and personalized sports analysis functions, greatly improving the functionality and user experience of the device.

[0075] Step S5, matching the trajectory path with preset map data to obtain the location information of the smart watch in the actual environment.

[0076] Specifically, after the smart watch is positioned by dead reckoning based on the initial positioning information, step information and real-time posture information to obtain the trajectory path of the smart watch, the next step is to match the trajectory path with the preset map data to obtain the location information of the smart watch in the actual environment. This process is to ensure that the location information provided by the smart watch is not only accurate but also intuitive, so that the user can clearly understand the specific location and surrounding environment where he is. Specifically, the smart watch compares and analyzes the trajectory path obtained by dead reckoning with the map data pre-stored or obtained online through a built-in algorithm. Map data usually contains detailed geographic information, such as road networks, building outlines, natural terrain features, etc. When the smart watch calculates a trajectory path, the system will find the route or area on the map that is most likely to correspond to this path. For example, in the application scenario of jogging in the park, the smart watch gradually updates its position according to the user's pace and direction changes, and forms a trajectory path. Subsequently, this path will be matched with known landmarks such as trails, lawns, and lakes in the park. If the user's trajectory shows that he is walking along a specific trail, the smartwatch can confirm which part of the map this trajectory corresponds to, thereby accurately locating the user's position. In order to improve the matching accuracy, the smartwatch may adopt a variety of technical means. On the one hand, it can quickly find the most similar path by optimizing the search algorithm; on the other hand, it can also use machine learning models to predict the user's behavior patterns and further narrow the matching range. In addition, considering that there may be unrecorded new facilities or temporary obstacles in the real world, the smartwatch may also combine sensor data (such as altitude changes sensed by the barometer) and other auxiliary information to make more refined adjustments. For example, if the user is crossing a grassy area that has not been recorded in detail, the smartwatch can infer the approximate direction and distance based on the data of the accelerometer and gyroscope, and then try to find the closest matching point on the map. Ultimately, by matching the trajectory path with the preset map data, the smartwatch can not only provide accurate location coordinates, but also show the user's specific location relative to the surrounding environment. This ability is crucial for users because it not only helps them better understand their route, but also provides reliable location information support for help in emergency situations. For example, if a user feels unwell and needs help during a run, they can immediately share their exact location with emergency personnel or friends and family. At the same time, this also brings more practical value to smart watches, such as more personalized sports tracking, navigation guidance, and social interaction functions, greatly improving the user experience and the versatility of the device. In summary, by matching the trajectory path with the preset map data, the smart watch realizes the conversion from abstract data to intuitive location information, which not only enhances the positioning capability of the device in complex environments, but also lays a solid foundation for its wide application in health management, sports analysis and other fields.

[0077] In a specific embodiment, the collecting accelerometer data and three-axis angular velocity data of the smart watch using the inertial measurement sensor to obtain raw inertial data includes:

[0078] The inertial measurement sensor is used to collect accelerometer data and three-axis angular velocity data of the smart watch to obtain a preliminary original sensor signal;

[0079] Adding a timestamp to the preliminary raw sensor signal based on a preset synchronous clock source to ensure the time consistency of all sensor outputs, thereby obtaining a preliminary raw sensor signal with a time stamp;

[0080] Preliminarily formatting the preliminary raw sensor signal with the time mark to obtain a standardized raw data frame;

[0081] Pre-filtering the standardized raw data frame using a preset digital filter to obtain purified raw inertial data;

[0082] The purified raw inertial data is subjected to coordinate system transformation to obtain raw inertial data in a unified coordinate system.

[0083] Specifically, in the process of using the inertial measurement sensor to collect accelerometer data and three-axis angular velocity data of the smart watch to obtain raw inertial data, it is first necessary to understand that this is a multi-step process designed to ensure that the data obtained from the sensor is not only accurate but also time-consistent. The process begins with the acquisition of accelerometer data and three-axis angular velocity data of the smart watch through the inertial measurement sensor to obtain preliminary raw sensor signals. This link is the starting point of the entire data processing chain, which directly determines the basic quality of all subsequent analysis and calculations. Specifically, when a user wears a smart watch and jogs in the park, the inertial measurement unit (IMU) inside the watch will continuously sense and record the subtle changes caused by each arm swing and wrist rotation. These changes are captured in the form of raw electrical signals to form preliminary raw sensor signals. For example, when the user's foot touches the ground, the accelerometer in the watch detects a significant acceleration peak, and the gyroscope records the angular velocity of the wrist rotation. This information is crucial for subsequent posture resolution because it provides first-hand information about the user's motion state. However, in order to make these preliminary raw sensor signals effective for further processing, a series of optimization and conversion operations are required. Next, a time stamp is added to the preliminary raw sensor signal based on a preset synchronous clock source to ensure the time consistency of all sensor outputs, and a preliminary raw sensor signal with a time stamp is obtained. This is because different types of sensors may have different sampling frequencies and delay characteristics. If they are not synchronized, the correlation and accuracy between the data will be seriously affected. Therefore, by introducing a common clock source and marking each data point with an accurate time tag, it can be ensured that the data from different sensors can maintain a consistent time relationship even in high-speed motion. For example, during running, no matter how fast the user's arms swing, the watch can accurately record the specific time of each action, making subsequent data processing more reliable. Subsequently, the preliminary raw sensor signal with a time stamp is preliminarily formatted to obtain a standardized raw data frame. This process involves organizing the messy raw signals according to a unified standard so that the subsequent processing algorithm can directly read and parse them. The standardized raw data frame usually includes a specific field structure, such as sensor type, sampling time, data value, etc., which not only improves the readability of the data, but also prepares for the next step of digital filtering and coordinate system conversion. For example, after formatting, each frame of data clearly indicates whether it is from an accelerometer or a gyroscope, as well as the corresponding timestamp and specific value, which facilitates the system to quickly identify and process. Next, the standardized raw data frame is pre-filtered using a preset digital filter to obtain purified raw inertial data. This is to eliminate errors caused by noise in the sensor itself or external interference, thereby improving the quality of the data.Digital filters can select appropriate types according to different application scenarios, such as low-pass filters for removing high-frequency noise and high-pass filters for eliminating slowly changing biases. For example, in a running scenario, a low-pass filter can help filter out unnecessary acceleration fluctuations caused by slight arm shaking, while a high-pass filter can reduce zero drift problems that may occur after long-term use. Through such pre-filtering, the smart watch can obtain cleaner and more stable data, providing a solid foundation for subsequent gait detection and posture solution. Finally, the purified raw inertial data is subjected to a coordinate system transformation to obtain raw inertial data in a unified coordinate system. This transformation is to ensure that all sensor data can be compared and analyzed in the same reference frame. The IMU inside the smart watch may use different local coordinate systems to describe its perceived motion, but in order to achieve accurate posture solution and position estimation, these data must be unified into a global coordinate system. For example, assuming that the watch uses a self-centered coordinate system by default, when performing gait analysis, it needs to be converted into a world coordinate system parallel to the ground so that the user's actual walking direction and distance can be correctly reflected. Through this coordinate system conversion, the smart watch can not only more accurately determine the distance and direction of each step of the user, but also support the precise positioning needs in complex environments. In summary, by performing the above series of processing on the accelerometer data and three-axis angular velocity data collected by the inertial measurement sensor, the smart watch can not only obtain high-quality raw inertial data, but also ensure the accuracy of these data in time and space. This lays a solid foundation for subsequent advanced functions such as posture solution, gait detection, step length estimation, and dead reckoning, and greatly enhances the application value of the device in health management, sports tracking, and personal navigation. At the same time, this process also shows how smart watches can provide users with more personalized and reliable sports analysis services through sophisticated data processing technology, making them an indispensable part of daily life.

[0084] In a specific embodiment, performing attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch includes:

[0085] The accelerometer data and the three-axis angular velocity in the raw inertial data are integrated by using a quaternion representation method to obtain a preliminary attitude quaternion of the smart watch;

[0086] Using a gradient descent algorithm, the preliminary attitude quaternion is subjected to attitude optimization to obtain an optimized attitude quaternion;

[0087] Convert the optimized attitude quaternion into Euler angle representation to obtain real-time preliminary angle information of the smart watch; wherein the preliminary angle information includes pitch angle, yaw angle and roll angle;

[0088] Integrating the preliminary angle information to obtain an angular velocity integral value;

[0089] It is determined whether the angular velocity integral value is within a preset angular velocity range. If not, magnetometer data is obtained by a magnetometer arranged in the smart watch, and angle correction is performed on the preliminary angle information based on the magnetometer data and the angular velocity integral value to obtain real-time posture information of the smart watch.

[0090] Specifically, in the process of performing attitude solution on the raw inertial data to obtain the real-time attitude information of the smart watch, it is first necessary to understand that this is a multi-step and technology-intensive process, which aims to extract accurate attitude information from the data obtained by the accelerometer and the three-axis angular velocity sensor. This process begins with the fusion of the accelerometer data and the three-axis angular velocity in the raw inertial data through the quaternion representation to obtain the preliminary attitude quaternion of the smart watch. This link is the basis of the entire attitude solution, which directly determines the accuracy of all subsequent calculations. Specifically, when the user wears a smart watch and jogs in the park, the IMU inside the watch will continuously record the subtle changes caused by each arm swing and wrist rotation. These changes are converted into accelerometer data and three-axis angular velocity data, and are input into the system as raw inertial data. In order to effectively integrate these two different types of data, it is a common practice to use quaternion representation. Quaternions can avoid the universal lock problem that may occur in the Euler angle representation, and at the same time provide a compact and efficient mathematical model to describe rotation. For example, during running, whenever the user's feet touch or leave the ground, the accelerometer and gyroscope in the watch will capture the corresponding acceleration peak and angular velocity changes. Through the quaternion representation, these data are fused together to form a preliminary attitude quaternion, which not only simplifies the complexity of subsequent processing, but also improves the accuracy of attitude estimation. Next, the gradient descent algorithm is used to perform attitude optimization on the preliminary attitude quaternion to obtain the optimized attitude quaternion. The gradient descent algorithm is an iterative optimization method used to minimize the error function to find the optimal solution. In this context, it is used to adjust the preliminary attitude quaternion to reduce the error caused by sensor noise or external interference. For example, in the running scene, although the preliminary attitude after quaternion fusion is relatively accurate, there may still be certain deviations. Through the gradient descent algorithm, these deviations can be gradually corrected, making the final attitude quaternion closer to the actual situation. This optimization process ensures that the smart watch can provide stable and reliable attitude information even in complex sports modes. Then, the optimized attitude quaternion is converted into Euler angle representation to obtain the real-time preliminary angle information of the smart watch; wherein the preliminary angle information includes pitch angle, yaw angle and roll angle. This is because although quaternions have advantages in mathematics, in practical applications, people are often more accustomed to using intuitive angle representations to understand the posture of objects. Therefore, by converting the optimized attitude quaternion into Euler angles, pitch angles, yaw angles and roll angles that are easy to understand and use can be obtained. For example, during running, users may want to know whether their arms are maintained at a suitable swing angle or whether their wrists tend to over-rotate. In this way, smart watches can not only provide accurate posture information, but also help users better monitor and adjust their exercise postures.On this basis, the preliminary angle information is integrated to obtain the angular velocity integral value. This is because in some cases, relying solely on the data of the accelerometer and gyroscope may not be sufficient to provide completely accurate posture information, especially when the device undergoes long-term continuous movement, the cumulative error may gradually increase. By integrating the preliminary angle information, the accumulated angle change over a period of time can be estimated, thereby further refining the posture estimation. For example, during running, if the user suddenly changes the direction of travel, the angular velocity integral value can help the system respond to this change more quickly and improve the speed and accuracy of posture update. Finally, it is determined whether the angular velocity integral value is within the preset angular velocity range. If not, the magnetometer data is obtained by the magnetometer set in the smart watch, and the preliminary angle information is corrected based on the magnetometer data and the angular velocity integral value to obtain the real-time posture information of the smart watch. This is because the magnetometer can sense the direction of the earth's magnetic field, providing an absolute reference point, which helps to correct the posture drift caused by long-term accumulation. For example, during running, if the smart watch detects that the angular velocity integral value exceeds the preset range, it means that there may be a large posture error. At this point, the system starts the magnetometer and uses the magnetic field direction information it provides to correct the current attitude estimation, ensuring that the smartwatch can provide consistent high-precision positioning services no matter how the user moves. In summary, by performing the above series of attitude solution operations on the raw inertial data, the smartwatch can not only obtain highly accurate real-time attitude information, but also effectively cope with various complex motion environments. This process shows how smartwatches can provide users with more personalized and reliable motion analysis services through advanced algorithms and technologies, making them a powerful assistant in health management, sports tracking, and personal navigation. At the same time, this also shows that smartwatches can still maintain efficient position tracking capabilities in the absence of external positioning signals, greatly improving the functionality and user experience of the device.

[0091] In a specific embodiment, the step of performing gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information includes:

[0092] Performing gait peak detection on the smart watch based on the real-time posture information to obtain a gait event sequence; wherein the gait event sequence includes heel-touching and toe-off;

[0093] Calculating the time intervals between adjacent gait events through the gait event sequence to obtain the gait cycle time;

[0094] Utilizing a preset gait feature extraction algorithm, gait feature parameters of the target user are extracted based on the gait cycle time and the real-time posture information; wherein the gait feature parameters include step frequency, stride symmetry, and gait stability;

[0095] Performing spectrum analysis on the real-time posture information to obtain gait frequency characteristics;

[0096] By using a preset ergonomic stride length estimation model, based on the gait frequency characteristics and the gait cycle time, the stride length of the target user is estimated to obtain stride length information.

[0097] Specifically, in the process of gait detection and stride length estimation of the smart watch based on the real-time posture information, it is first necessary to understand that this is a complex process that combines multiple algorithms and technologies to extract accurate gait feature parameters and stride length information from the user's movement. This process begins with gait peak detection of the smart watch based on the real-time posture information to obtain a gait event sequence; wherein the gait event sequence includes heel contact and toe-off. This link is the basis of the entire gait analysis, which directly determines the accuracy of all subsequent calculations. Specifically, when the user wears a smart watch and jogs in the park, the IMU inside the watch will continuously record the subtle changes caused by each arm swing and wrist rotation. These changes are converted into accelerometer data and three-axis angular velocity data, and are input into the system as raw inertial data. In order to effectively identify the user's gait cycle, the use of gait peak detection method is a common and effective way. For example, during running, whenever the user's feet touch the ground or leave the ground, the accelerometer and gyroscope in the watch will capture the corresponding acceleration peak and angular velocity changes. By analyzing these data, the system can identify the moment of each heel touchdown (i.e., the beginning of each step) and toe lift-off (i.e., the end of each step), forming a gait event sequence. This event sequence not only reflects the user's walking rhythm, but also provides a basis for the subsequent time interval calculation. Next, the time interval between adjacent gait events is calculated through the gait event sequence to obtain the gait cycle time. This step is crucial for understanding the user's walking speed and cadence. Because the gait cycle time refers to the time interval from one heel touchdown to the next heel touchdown, it can directly reflect the user's step frequency and walking speed. For example, during running, if the user's gait cycle time is short, it means that their steps are faster; conversely, if the gait cycle time is long, it means that the steps are slower. By accurately calculating these time intervals, the smart watch can accurately track the user's motion state and provide more personalized motion analysis services. On this basis, the preset gait feature extraction algorithm is used to extract the gait feature parameters of the target user based on the gait cycle time and the real-time posture information; wherein, the gait feature parameters include cadence, stride symmetry and gait stability. Gait characteristic parameters are key indicators for describing the user's gait pattern. They not only help evaluate the user's exercise efficiency, but can also be used to monitor health conditions. For example, cadence refers to the number of steps completed per minute, stride symmetry reflects whether the distances taken by the left and right legs are consistent, and gait stability measures the degree of change in the user's posture during walking. By analyzing these characteristic parameters, smart watches can not only help users optimize their exercise postures, but also provide important diagnostic references for doctors or physical therapists. Furthermore, the real-time posture information is subjected to spectral analysis to obtain gait frequency characteristics. Spectral analysis is a mathematical tool used to reveal periodicity and frequency components in signals.In this context, it is used to identify regular patterns in gait, such as specific frequency components, which is very important for understanding the dynamic characteristics of gait. For example, during running, through spectrum analysis, the smart watch can capture the frequency characteristics unique to the user's steps, which helps to distinguish different types of motion patterns (such as walking and running) and provide support for more accurate step length estimation. In addition, spectrum analysis can also help identify abnormal gait patterns, such as unstable or asymmetric gait, which can indicate potential health problems. Finally, through the preset ergonomic step length estimation model, based on the gait frequency characteristics and the gait cycle time, the step length of the target user is estimated to obtain step length information. Step length estimation refers to predicting the actual distance of each step based on known gait characteristics. The step length estimation model in ergonomics usually takes into account multiple factors, such as height, weight, gender, etc., to ensure that the estimation result is as close to the actual situation as possible. For example, during running, the smart watch can calculate the approximate length of each step based on the user's gait frequency characteristics and gait cycle time, combined with the pre-stored ergonomic model. This not only provides users with an intuitive distance feedback, but also enables smart watches to provide reliable sports tracking services, such as calculating total running distance, calorie consumption, etc., even without GPS signals. In summary, by performing the above series of gait detection and stride length estimation operations on real-time posture information, smart watches can not only obtain highly accurate gait feature parameters and stride length information, but also effectively cope with various complex sports environments. This process shows how smart watches can provide users with more personalized and reliable sports analysis services through advanced algorithms and technologies, making them a powerful assistant in health management, sports tracking, and personal navigation. At the same time, this also shows that smart watches can still maintain efficient location tracking capabilities without external positioning signals, greatly improving the functionality and user experience of the device.

[0098] In a specific embodiment, performing dead reckoning positioning on the smart watch based on the initial positioning information, the step information, and the real-time posture information to obtain the trajectory path of the smart watch includes:

[0099] Extracting features from the initial positioning information using a preset relative positioning algorithm to obtain initial position feature information; wherein the initial position feature information includes a three-dimensional coordinate vector and a heading reference angle;

[0100] Using a recursive least squares filtering algorithm to perform data fusion on the step length information and the initial position feature information to obtain fusion state parameters, wherein the fusion state parameters include a step length projection matrix and a heading change amount;

[0101] Performing kinematics calculation on the fusion state parameters and the real-time posture information to obtain displacement vector parameters; wherein the displacement vector parameters include a position increment sequence and a posture change rate;

[0102] Performing gait cycle analysis on the displacement vector parameters by a zero-speed detection algorithm to obtain trajectory segmentation data; wherein the trajectory segmentation data includes motion segments and static intervals;

[0103] Using a Bezier curve fitting algorithm to perform curve fitting on the trajectory segment data to obtain smooth trajectory data;

[0104] Error correction is performed on the smooth trajectory data based on a particle filtering algorithm to obtain the trajectory path of the smart watch.

[0105] Specifically, in the process of performing dead reckoning positioning on the smart watch based on the initial positioning information, the step information and the real-time posture information to obtain the trajectory path of the smart watch, it is first necessary to understand that this is a complex process that combines multiple advanced algorithms and technologies, aiming to extract accurate position changes from the user's movement and construct a continuous and smooth trajectory path. This process begins with extracting features from the initial positioning information through a preset relative positioning algorithm to obtain initial position feature information; wherein the initial position feature information includes a three-dimensional coordinate vector and a heading reference angle. Specifically, when a user wears a smart watch and jogs in a park, the watch first needs a reliable starting point to start its dead reckoning. This starting point is the initial positioning information, which can be obtained through GPS signals or other positioning means. In order to ensure that this starting point can be used for subsequent calculations, the system will use a relative positioning algorithm to process these initial positioning data and extract key features. For example, the three-dimensional coordinate vector provides the spatial coordinates (such as longitude, latitude and altitude) of the user's starting position, and the heading reference angle indicates the direction in which the user initially traveled. These initial position feature information lays a solid foundation for subsequent dead reckoning, enabling the smartwatch to continue to provide accurate position tracking services without external positioning signals. Next, the step length information and the initial position feature information are fused using the recursive least squares filtering algorithm to obtain fusion state parameters, where the fusion state parameters include the step length projection matrix and the heading change. This step is to integrate data from different sources to improve the accuracy of position estimation. The recursive least squares filtering algorithm is a commonly used optimization method that can effectively reduce errors and improve data consistency. For example, during running, every time the user takes a step, the smartwatch updates its position based on the known step length information. At the same time, considering that the user may change the direction or speed of travel, the system will also dynamically adjust the distance and direction of each step in combination with the heading reference angle in the real-time posture information. In this way, the step length projection matrix can accurately reflect the actual movement of each step, and the heading change helps the system capture the changes in the walking direction and ensure the accuracy of the position update. Then, the fusion state parameters and the real-time posture information are kinematically solved to obtain displacement vector parameters; wherein the displacement vector parameters include a position increment sequence and a posture change rate. Kinematic solution refers to predicting the future position of an object by analyzing its motion characteristics based on physical principles. In this context, the smart watch uses fusion state parameters and real-time posture information to calculate the position increment and posture change rate brought by each step. For example, during running, every time the user completes a complete gait cycle, the system will determine the specific displacement caused by this step based on the step projection matrix and the heading change, combined with the real-time posture angle.These displacement vector parameters not only reflect the user's walking trajectory, but also provide detailed incremental information for subsequent trajectory construction. Further, the displacement vector parameters are analyzed for gait cycles by a zero-speed detection algorithm to obtain trajectory segmentation data; wherein the trajectory segmentation data includes motion segments and static intervals. This is because the user may have a short pause or rest time during the exercise, and the displacement during these time periods is actually zero. The zero-speed detection algorithm can identify these moments and divide the entire trajectory into several motion segments and static intervals. For example, during running, if the user stops to drink water or adjust his breathing, the smart watch can confirm that no obvious displacement occurs during this period by detecting the data of the accelerometer and gyroscope. This segmentation process helps to improve the accuracy of trajectory reconstruction and avoid the problem of position drift caused by long-term accumulated errors. On this basis, the Bezier curve fitting algorithm is used to fit the trajectory segmentation data to obtain smooth trajectory data. The Bezier curve is a mathematical tool that is often used to generate smooth curve shapes. In this application, it is used to connect discrete points between each motion segment to form a coherent and smooth trajectory path. For example, after the end of the run, the smartwatch can use the Bezier curve to fit a complete running route based on the end position of each exercise segment. This not only improves the visual effect of the trajectory, but also provides users with an intuitive position feedback, which is convenient for them to review their exercise route. Finally, the smooth trajectory data is error corrected based on the particle filter algorithm to obtain the trajectory path of the smartwatch. The particle filter algorithm is a nonlinear filtering technology that is particularly suitable for processing systems with uncertainty. In this scenario, it is used to correct the trajectory deviation caused by factors such as sensor noise and environmental interference. For example, during the running process, even after all the above steps are optimized, the smartwatch may still have a slight position error due to some unforeseen factors. Through the particle filter algorithm, the system can perform a probability evaluation between multiple hypothetical positions and select the most likely true trajectory as the final result. This method not only improves the reliability of the trajectory path, but also ensures that the smartwatch can provide stable and accurate location tracking services even in complex environments. In summary, by performing the above series of dead reckoning operations on the initial positioning information, step information, and real-time posture information, the smartwatch can not only obtain a highly accurate trajectory path, but also effectively cope with various complex sports environments. This process demonstrates how smart watches can provide users with more personalized and reliable sports analysis services through advanced algorithms and technologies, making them a powerful assistant in health management, sports tracking and personal navigation. At the same time, it also shows that smart watches can still maintain efficient location tracking capabilities without external positioning signals, greatly improving the functionality and user experience of the device.

[0106] In a specific embodiment, matching the trajectory path with preset map data to obtain the location information of the smart watch in the actual environment includes:

[0107] Using a preset quadtree algorithm, the preset map data is divided according to spatial regions to obtain layered map data;

[0108] Performing segmented trajectory path processing on the smart watch based on the layered map data to obtain a segmented trajectory path;

[0109] Using a map projection algorithm, the segmented trajectory path is converted from the original coordinate system to a coordinate system corresponding to the layered map data to obtain a converted trajectory path;

[0110] Performing feature extraction on the converted trajectory path and the layered map data to obtain trajectory features and map features;

[0111] Using a cosine similarity algorithm to calculate the similarity between the trajectory feature and the map feature to obtain a similarity value;

[0112] Based on the similarity value, the trajectory features and the map features are screened and located to obtain the location information of the smart watch in the actual environment.

[0113] Specifically, in the process of matching the trajectory path with the preset map data to obtain the location information of the smart watch in the actual environment, it is first necessary to understand that this is a complex process that combines multiple efficient algorithms and technologies to ensure that the location information provided by the smart watch is not only accurate but also intuitive. This process begins with the use of a preset quadtree algorithm to divide the preset map data according to spatial regions to obtain hierarchical map data. Specifically, when a user wears a smart watch to jog in the park, the system inside the watch first needs to process a large amount of map data. In order to improve matching efficiency and reduce the consumption of computing resources, the quadtree algorithm is used to perform structured processing on these map data. The quadtree is a hierarchical data structure that recursively divides an area into four equal sub-areas until the geographical features in each sub-area are simple enough or limited in number. For example, in the example of the park, the entire park can be regarded as a large area, and then gradually subdivided into multiple smaller areas, such as different sidewalks, lawns, lakes, etc. This hierarchical method not only simplifies the management of map data, but also facilitates the subsequent trajectory path processing. Next, the smart watch is segmented based on the hierarchical map data to obtain a segmented trajectory path. This is because the user's motion trajectory is usually continuous and complex, and directly matching it with the complete map may result in excessive computation. Therefore, by segmenting the user's trajectory path into several shorter segments and comparing them with the corresponding small area map data respectively, the matching speed and accuracy can be significantly improved. For example, during running, every time the user completes a certain distance or passes a landmark (such as a big tree or a small bridge), the smart watch will record this segment of the trajectory and try to find its corresponding area in the layered map data. This method not only makes the matching process more efficient, but also better adapts to the user's motion mode at different speeds. Subsequently, the map projection algorithm is used to transform the segmented trajectory path from the original coordinate system to the coordinate system corresponding to the layered map data to obtain the transformed trajectory path. This is because the smart watch and map data may use different coordinate systems to describe the geographic location, and to achieve accurate matching, it is necessary to ensure that both are in the same reference frame. The map projection algorithm can map points in one coordinate system to another coordinate system based on a specific mathematical model. For example, in a running scenario, if the smartwatch uses a local coordinate system centered on itself, and the map data is based on the longitude and latitude coordinates of the global positioning system, then each track path needs to be converted to the coordinate system used by the latter through a projection algorithm to ensure the consistency of the position information. On this basis, feature extraction is performed on the converted track path and the layered map data to obtain track features and map features.Feature extraction is the process of identifying and quantifying key attributes in data. For trajectory paths, this may include direction changes, curvature, speed, etc., while for map data, it may be road shape, building outlines, natural terrain, etc. For example, during running, the smart watch will analyze the direction and curvature of each segment of the track, and compare the road shape and other geographical features of the corresponding area in the layered map data. In this way, the system can obtain a series of feature parameters that can be used for matching, providing a basis for further similarity calculation. Further, the cosine similarity algorithm is used to calculate the similarity between the trajectory features and the map features to obtain a similarity value. Cosine similarity is a method of measuring the angle between two vectors, which can effectively evaluate the similarity between two sets of features. In this context, the cosine similarity algorithm is used to compare the matching degree between trajectory features and map features. For example, during running, every time the smart watch completes feature extraction for a segment of the track, it uses the cosine similarity algorithm to calculate the similarity value between the segment of the track and the corresponding area on the map. A high similarity value means that the segment of the track is likely to be in the area, otherwise it indicates that there may be a deviation. Finally, based on the similarity value, the trajectory features and the map features are screened and located to obtain the location information of the smart watch in the actual environment. This is a key step in the entire matching process, which determines whether the location information provided in the end is accurate and reliable. By comprehensively evaluating all similarity values, the smart watch can select the most likely real location as the output result. For example, after the end of the run, the smart watch can determine the specific location and the surrounding geographical features of the user's entire running process based on the similarity values ​​of each segment of the trajectory. This method not only improves the accuracy of the location information, but also provides users with an intuitive location feedback to help them better understand their sports routes. In summary, by performing the above series of matching operations on the trajectory path and the preset map data, the smart watch can not only obtain highly accurate actual location information, but also effectively cope with various complex sports environments. This process shows how smart watches can provide users with more personalized and reliable sports analysis services through advanced algorithms and technologies, making them a powerful assistant in health management, sports tracking and personal navigation. At the same time, this also reflects that smart watches can still maintain efficient location tracking capabilities in the absence of external positioning signals, greatly improving the functionality and user experience of the device.

[0114] In a specific embodiment, the segmenting of the trajectory path of the smart watch based on the layered map data to obtain the segmented trajectory path includes:

[0115] The trajectory path is initially segmented by a multi-resolution grid segmentation algorithm to obtain initial segmented trajectory path information;

[0116] Extracting the topological structure and road width information of the layered map data, and performing topological matching on the initial segmented trajectory path based on the topological structure to obtain topological matching trajectory path segment information;

[0117] The topology matching trajectory path segment information is smoothed by a Kalman filter algorithm to obtain smoothed trajectory path segment information;

[0118] Based on the road width information, width constraints are imposed on the smooth trajectory path segment information to obtain constrained trajectory path segment information;

[0119] Based on a feature point detection algorithm, feature points are extracted from the constraint trajectory path segment information to obtain a feature point set;

[0120] The feature point set is subjected to path reorganization and cluster analysis to obtain a segmented trajectory path.

[0121] Specifically, in the process of segmenting the trajectory path of the smart watch based on the layered map data to obtain the segmented trajectory path, it is first necessary to understand that this is a multi-step and technology-intensive process designed to ensure that accurate and meaningful trajectory information is extracted from the user's movement. The process begins with the initial segmentation of the trajectory path through a multi-resolution grid segmentation algorithm to obtain initial segmented trajectory path information. Specifically, when the user wears a smart watch and jogs in the park, the system inside the watch will first use a multi-resolution grid segmentation algorithm to process the user's entire motion trajectory. This algorithm divides the trajectory path into multiple smaller sections, each of which corresponds to a specific spatial area. For example, during running, whenever the user passes through different geographical features (such as sidewalks, lawns, and lakes), these areas can be regarded as different grid units. In this way, the smart watch can initially decompose the complex trajectory path into several simpler sections, providing a basis for subsequent fine processing. This method not only simplifies the calculation, but also enables each section to be independently matched with the corresponding area in the layered map data. Next, the topological structure and road width information of the layered map data are extracted, and the initial segmented trajectory path is topologically matched based on the topological structure to obtain topological matching trajectory path segment information. This is because the map data of different regions contains rich geographical information, such as road networks, building outlines, etc. By extracting these topological structures and road width information, the smart watch can more accurately understand the specific environment in which each segmented trajectory is located. For example, during running, if the user walks along a winding path, the smart watch can adjust the initial segmented trajectory according to the shape and width of the path to make it more in line with the actual road conditions. This topological matching not only improves the accuracy of the trajectory path, but also better reflects the user's actual movement pattern. Then, the topological matching trajectory path segment information is smoothed by the Kalman filter algorithm to obtain smoothed trajectory path segment information. Kalman filtering is a commonly used optimization method for reducing noise and improving data consistency. In this context, it is used to eliminate trajectory fluctuations caused by sensor errors or external interference. For example, during running, although the topological matching has made the trajectory path closer to the actual road, there may still be some minor deviations. Through the Kalman filter algorithm, the smart watch can smooth these trajectory segments to ensure that they are more stable and continuous. This step is crucial to improving the overall quality and reliability of the trajectory path, especially when the user changes direction or speed quickly. On this basis, based on the road width information, the smooth trajectory path segment information is width constrained to obtain constrained trajectory path segment information. This is because different types of roads have different widths, and the user's trajectory path should comply with these geometric constraints.For example, during running, if the user always walks along a narrow trail, their trajectory path should not exceed the boundary of the trail. By applying a width constraint to the smooth trajectory path, the smart watch can further correct the trajectory to make it more realistically reflect the user's actual motion path. This method not only improves the accuracy of the trajectory path, but also provides a more reliable basis for subsequent feature point extraction. Further, based on the feature point detection algorithm, feature point extraction is performed on the constrained trajectory path segment information to obtain a feature point set. Feature points refer to those points with significant geometric or semantic meanings, such as intersections, landmark buildings, etc. By identifying these feature points, the smart watch can obtain important information about the user's movement. For example, during running, whenever the user passes a landmark location (such as a park entrance or fountain), the smart watch will record the location at this moment as a feature point. These feature points not only help describe the user's motion route, but can also be used for subsequent path reorganization and cluster analysis. Finally, the feature point set is subjected to path reorganization and cluster analysis to obtain a segmented trajectory path. This is to ensure that the final trajectory path is both coherent and accurate. Path reorganization refers to reconstructing the user's motion route based on the relationship between feature points, while cluster analysis is to identify trajectory segments with similar features and classify them into one category. For example, after the end of the run, the smartwatch can divide the entire running route into several representative sections based on the feature point set, such as "starting point to the first fountain", "around the lake", etc. This method not only improves the readability and intuitiveness of the trajectory path, but also provides users with a detailed sports review tool to help them better understand their exercise habits and performance. In summary, by performing the above series of segmentation processing operations on the layered map data, the smartwatch can not only obtain highly accurate and meaningful segmented trajectory paths, but also effectively cope with various complex sports environments. This process shows how smartwatches can provide users with more personalized and reliable sports analysis services through advanced algorithms and technologies, making them a powerful assistant in health management, sports tracking and personal navigation. At the same time, this also shows that smartwatches can still maintain efficient location tracking capabilities without external positioning signals, greatly improving the functionality and user experience of the device.

[0122] The above describes the precise positioning method of the inertial measurement sensor for the smart terminal device in the embodiment of the present invention. The following describes the precise positioning device of the inertial measurement sensor for the smart terminal device in the embodiment of the present invention. Figure 2 In one embodiment of the present invention, an accurate positioning device for an inertial measurement sensor for a smart terminal device includes:

[0123] The acquisition module 21 is used to acquire inertial data of the smart watch by using the inertial measurement sensor to obtain raw inertial data, wherein the raw inertial data includes accelerometer data and three-axis angular velocity;

[0124] A calculation module 22, used for performing attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch;

[0125] An estimation module 23, configured to perform gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information;

[0126] The dead reckoning module 24 is used to obtain predetermined initial positioning information, and perform dead reckoning positioning on the smart watch based on the initial positioning information, the step information and the real-time posture information to obtain the position coordinates of the smart watch;

[0127] The matching module 25 is used to match the position coordinates with the preset map data to obtain the position information of the smart watch in the actual environment.

[0128] In this embodiment, for the specific implementation of each unit in the above device embodiment, please refer to the above method embodiment, which will not be repeated here.

[0129] Reference Figure 3 The present invention also provides a computer device in an embodiment, wherein the internal structure of the computer device can be as follows: Figure 3 As shown. The computer device includes a processor, a memory, a display screen, an input device, a network interface and a database connected through a system bus. Among them, the processor designed by the computer is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store the corresponding data in this embodiment. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, the above method is implemented.

[0130] Those skilled in the art will understand that Figure 3 The structure shown in the figure is merely a block diagram of a portion of the structure related to the solution of the present invention, and does not constitute a limitation on the computer device to which the solution of the present invention is applied.

[0131] An embodiment of the present invention further provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by a processor, the above method is implemented. It can be understood that the computer-readable storage medium in this embodiment can be a volatile readable storage medium or a non-volatile readable storage medium.

[0132] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media provided by the present invention and used in the embodiments may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in a variety of forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double-speed data rate SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM.

[0133] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, device, article or method including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, device, article or method. In the absence of further restrictions, an element defined by the sentence "includes a ..." does not exclude the presence of other identical elements in the process, device, article or method including the element.

[0134] The above description is only a preferred embodiment of the present invention, and does not limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made by using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A precise positioning method for an inertial measurement sensor of a smart terminal device, applied to a smart watch, wherein an inertial measurement sensor is installed in the smart watch, characterized in that: The following steps are involved: Using the inertial measurement sensor to collect inertial data of the smart watch to obtain raw inertial data, wherein the raw inertial data includes accelerometer data and three-axis angular velocity; Performing attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch; Performing gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information; Acquire predetermined initial positioning information, and perform dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain a trajectory path of the smart watch; Matching the trajectory path with preset map data to obtain the location information of the smart watch in the actual environment; The performing dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain a trajectory path of the smart watch includes: Extracting features from the initial positioning information using a preset relative positioning algorithm to obtain initial position feature information; wherein the initial position feature information includes a three-dimensional coordinate vector and a heading reference angle; Using a recursive least squares filtering algorithm to perform data fusion on the step length information and the initial position feature information to obtain fusion state parameters, wherein the fusion state parameters include a step length projection matrix and a heading change amount; Performing kinematics calculation on the fusion state parameters and the real-time posture information to obtain displacement vector parameters; wherein the displacement vector parameters include a position increment sequence and a posture change rate; Performing gait cycle analysis on the displacement vector parameters by a zero-speed detection algorithm to obtain trajectory segmentation data; wherein the trajectory segmentation data includes motion segments and static intervals; Using a Bezier curve fitting algorithm to perform curve fitting on the trajectory segment data to obtain smooth trajectory data; Error correction is performed on the smooth trajectory data based on a particle filtering algorithm to obtain the trajectory path of the smart watch.

2. The precise positioning method of an inertial measurement sensor for a smart terminal device according to claim 1, characterized in that: The method of collecting accelerometer data and three-axis angular velocity data of the smart watch using the inertial measurement sensor to obtain raw inertial data includes: The inertial measurement sensor is used to collect accelerometer data and three-axis angular velocity data of the smart watch to obtain a preliminary original sensor signal; Adding a timestamp to the preliminary raw sensor signal based on a preset synchronous clock source to ensure the time consistency of all sensor outputs, thereby obtaining a preliminary raw sensor signal with a time stamp; Preliminarily formatting the preliminary raw sensor signal with the time mark to obtain a standardized raw data frame; Pre-filtering the standardized raw data frame using a preset digital filter to obtain purified raw inertial data; The purified raw inertial data is subjected to coordinate system transformation to obtain raw inertial data in a unified coordinate system.

3. The precise positioning method of an inertial measurement sensor for a smart terminal device according to claim 1, characterized in that: The performing attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch includes: The accelerometer data and the three-axis angular velocity in the raw inertial data are integrated by using a quaternion representation method to obtain a preliminary attitude quaternion of the smart watch; Using a gradient descent algorithm, the preliminary attitude quaternion is subjected to attitude optimization to obtain an optimized attitude quaternion; Convert the optimized attitude quaternion into Euler angle representation to obtain real-time preliminary angle information of the smart watch; wherein the preliminary angle information includes pitch angle, yaw angle and roll angle; Integrating the preliminary angle information to obtain an angular velocity integral value; It is determined whether the angular velocity integral value is within a preset angular velocity range. If not, magnetometer data is obtained by a magnetometer arranged in the smart watch, and angle correction is performed on the preliminary angle information based on the magnetometer data and the angular velocity integral value to obtain real-time posture information of the smart watch.

4. The precise positioning method of an inertial measurement sensor for a smart terminal device according to claim 1, characterized in that: The performing gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information includes: Performing gait peak detection on the smart watch based on the real-time posture information to obtain a gait event sequence; wherein the gait event sequence includes heel-touching and toe-off; Calculating the time intervals between adjacent gait events through the gait event sequence to obtain the gait cycle time; Utilizing a preset gait feature extraction algorithm, gait feature parameters of the target user are extracted based on the gait cycle time and the real-time posture information; wherein the gait feature parameters include step frequency, stride symmetry, and gait stability; Performing spectrum analysis on the real-time posture information to obtain gait frequency characteristics; By using a preset ergonomic stride length estimation model, based on the gait frequency characteristics and the gait cycle time, the stride length of the target user is estimated to obtain stride length information.

5. The precise positioning method of an inertial measurement sensor for a smart terminal device according to claim 1, characterized in that: The step of matching the trajectory path with preset map data to obtain location information of the smart watch in the actual environment includes: Using a preset quadtree algorithm, the preset map data is divided according to spatial regions to obtain layered map data; Performing segmented trajectory path processing on the smart watch based on the layered map data to obtain a segmented trajectory path; Using a map projection algorithm, the segmented trajectory path is converted from the original coordinate system to a coordinate system corresponding to the layered map data to obtain a converted trajectory path; Performing feature extraction on the converted trajectory path and the layered map data to obtain trajectory features and map features; Using a cosine similarity algorithm to calculate the similarity between the trajectory feature and the map feature to obtain a similarity value; Based on the similarity value, the trajectory features and the map features are screened and located to obtain the location information of the smart watch in the actual environment.

6. The precise positioning method of an inertial measurement sensor for a smart terminal device according to claim 5, characterized in that: The segmenting process of the trajectory path of the smart watch based on the layered map data to obtain the segmented trajectory path includes: The trajectory path is initially segmented by a multi-resolution grid segmentation algorithm to obtain initial segmented trajectory path information; Extracting the topological structure and road width information of the layered map data, and performing topological matching on the initial segmented trajectory path based on the topological structure to obtain topological matching trajectory path segment information; The topology matching trajectory path segment information is smoothed by a Kalman filter algorithm to obtain smoothed trajectory path segment information; Based on the road width information, width constraints are imposed on the smooth trajectory path segment information to obtain constrained trajectory path segment information; Based on a feature point detection algorithm, feature points are extracted from the constraint trajectory path segment information to obtain a feature point set; The feature point set is subjected to path reorganization and cluster analysis to obtain a segmented trajectory path.

7. A precise positioning device for an inertial measurement sensor for a smart terminal device, applied to a smart watch, wherein an inertial measurement sensor is installed in the smart watch, characterized in that: include: A collection module, used to collect inertial data of the smart watch using the inertial measurement sensor to obtain raw inertial data, wherein the raw inertial data includes accelerometer data and three-axis angular velocity; A calculation module, used to perform attitude calculation on the raw inertial data to obtain real-time attitude information of the smart watch; An estimation module, configured to perform gait detection and stride length estimation on the smart watch based on the real-time posture information to obtain gait feature parameters and stride length information; A dead reckoning module, configured to obtain predetermined initial positioning information, and perform dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain the position coordinates of the smart watch; A matching module, used to match the location coordinates with preset map data to obtain location information of the smart watch in the actual environment; The performing dead reckoning positioning on the smart watch based on the initial positioning information, the step length information and the real-time posture information to obtain a trajectory path of the smart watch includes: Extracting features from the initial positioning information using a preset relative positioning algorithm to obtain initial position feature information; wherein the initial position feature information includes a three-dimensional coordinate vector and a heading reference angle; Using a recursive least squares filtering algorithm to perform data fusion on the step length information and the initial position feature information to obtain fusion state parameters, wherein the fusion state parameters include a step length projection matrix and a heading change amount; Performing kinematics calculation on the fusion state parameters and the real-time posture information to obtain displacement vector parameters; wherein the displacement vector parameters include a position increment sequence and a posture change rate; Performing gait cycle analysis on the displacement vector parameters by a zero-speed detection algorithm to obtain trajectory segmentation data; wherein the trajectory segmentation data includes motion segments and static intervals; Using a Bezier curve fitting algorithm to perform curve fitting on the trajectory segment data to obtain smooth trajectory data; Error correction is performed on the smooth trajectory data based on a particle filtering algorithm to obtain the trajectory path of the smart watch.

8. A computer device comprising a memory and a processor, wherein a computer program is stored in the memory, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Map matching and positioning method and system

    CN107167130A

  • Autonomous pedestrian positioning method based on smart phone

    CN111829516A