Track correction method and device, equipment and medium

By using transformation matrix and geomagnetic contour deviation on the inertial guide trajectory to generate correction trajectory, the local optimal solution problem caused by geomagnetic distribution complexity is solved, and the accuracy of trajectory correction is improved.

CN120385333AActive Publication Date: 2025-07-29ZHEJIANG LAB
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202510886516.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-30
Publication Date
2025-07-29
Estimated Expiration
2045-06-30

AI Technical Summary

Technical Problem

The complexity of geomagnetic distribution leads to the local optimal solution of the positioning navigation technology based on geomagnetic information during the iteration process, resulting in serious deviations in trajectory correction.

Method used

By determining multiple target inertial guide track points on the inertial guide track, using a transformation matrix for transformation, combining three-way geomagnetic contour deviation, a correction track is generated. The first iteration uses a preset transformation matrix, and the subsequent iteration uses a guide matrix, which is based on the transformation track points and the geomagnetic contour intersection of the previous iteration.

Benefits of technology

The probability of transformation trajectory deviation is reduced, and iteratively falls into local optimal solutions in the wrong direction is avoided, which improves the accuracy of trajectory correction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120385333A_ABST
    Figure CN120385333A_ABST
Patent Text Reader

Abstract

The invention provides a trajectory correction method and device, equipment and a medium, and the method comprises the steps: determining a plurality of target inertial navigation trajectory points located in a target time window from an inertial navigation trajectory of a target object, carrying out the transformation of each target inertial navigation trajectory point through a transformation matrix, and obtaining transformation trajectory points, determining a matching error of the transformation trajectory point relative to an estimated trajectory point of the target object, moving a target time window on the inertial navigation trajectory according to a target time interval, returning to determine the matching error until a preset iteration condition is met, and determining the target time window according to the estimated trajectory point corresponding to each passed target time window when the preset iteration condition is met. The initial value of the transformation matrix used in the first iteration is the preset transformation matrix, and the initial values of the transformation matrixes used in the other iterations are the guide matrix generated in the previous iteration, so that the transformation of the next iteration can be guided through the guide matrix, and the transformation of the next iteration can be carried out towards a correct direction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of geomagnetic positioning, and more particularly, to a trajectory correction method, device, equipment and medium. Background Art

[0002] For positioning and navigation, the Earth's basic magnetic field provides a reliable resource for positioning and navigation due to its stable and highly prevalent characteristics. The positioning and navigation technology based on single-source geomagnetic information has emerged accordingly. This technology stands out with its advantages of low cost and good safety, and occupies an important position among many positioning and navigation technologies. Especially in outdoor and large-scale aviation and marine geomagnetic navigation and positioning scenarios, the Vector Iterative Closest ContourPoint (VICCP) algorithm is highly favored and shows significant advantages of good stability, providing strong guarantees for the accuracy and reliability of aviation geomagnetic navigation and positioning.

[0003] However, the complexity of geomagnetic distribution poses a huge challenge to the positioning and navigation technology based on geomagnetic information. Since the geomagnetic distribution presents diverse and irregular characteristics, there are significant differences in geomagnetic intensity and direction in different regions. When using the VICCP algorithm for iteration, this complexity easily leads to the algorithm falling into the dilemma of local optimal solutions, thus guiding the estimated trajectory to the wrong direction during the iteration process and causing serious deviation in trajectory correction. Summary of the Invention

[0004] In view of this, this application provides a trajectory correction method, device, equipment and medium, which can effectively reduce the situation of falling into local optimal solutions during the iteration process and improve the accuracy of trajectory correction.

[0005] Specifically, this application is implemented through the following technical solutions: According to the first aspect of this application, a trajectory correction method is provided, and the method includes: Obtain the inertial navigation trajectory of the target object; Determine multiple target inertial navigation trajectory points located in the target time window from the inertial navigation trajectory, and transform each of the target inertial navigation trajectory points through a transformation matrix to obtain the transformed trajectory points corresponding to each of the target inertial navigation trajectory points; Determine the matching error of the transformed trajectory point relative to the estimated trajectory point of the target object according to the length deviation between the first trajectory formed by multiple target inertial navigation trajectory points and the second trajectory formed by multiple transformed trajectory points, and the distance deviation between each transformed trajectory point and the corresponding three-axis geomagnetic isoline; the estimated trajectory point is generated based on the transformed trajectory point; Move the target time window on the inertial navigation trajectory at a target time interval, return to determine the matching error until a preset iteration condition is met, and generate a target correction trajectory based on the estimated trajectory points corresponding to each target time window passed when the preset iteration condition is met; Among them, the target correction trajectory is used to correct the inertial navigation trajectory; the initial value of the transformation matrix used in the first iteration is a preset transformation matrix, and the initial value of the transformation matrix used in the remaining iterations is the guiding matrix generated in the previous iteration. The guiding matrix is generated based on the last transformation trajectory point among the transformation trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point among the target inertial navigation trajectory points used in the previous iteration, and the three-way geomagnetic contour intersection point corresponding to the last target inertial navigation trajectory point.

[0006] In an optional implementation manner, the guiding matrix is determined through the following steps: Based on the last transformation trajectory point among the transformation trajectory points obtained in the previous iteration, determine a target guiding point, and construct a guiding area with the target guiding point as the center; Search for the three-way geomagnetic contour lines located in the guiding area according to a target window and a target step size to obtain at least one intersection point; Select the target intersection point closest to the target guiding point from the at least one intersection point; Generate the guiding matrix according to the rotation angle and translation amount of the target intersection point relative to the last target inertial navigation trajectory point.

[0007] In an optional implementation manner, the determining the target guiding point based on the last transformation trajectory point among the transformation trajectory points obtained in the previous iteration includes: Determine the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point; Obtain the historical trajectory point distance, where the historical trajectory point distance is the distance between the historical last target inertial navigation trajectory point and the historical last transformation trajectory point corresponding to a target historical moment; Determine the first distance deviation between the trajectory point distance and the historical trajectory point distance; Determine the target guiding point according to the comparison result between the first distance deviation and a first distance threshold.

[0008] In an optional implementation manner, the determining the target guiding point according to the comparison result between the first distance deviation and the first distance threshold includes: In the case where the first distance deviation is greater than or equal to the first distance threshold, determine the historical transformation trajectory point before the last transformation trajectory point, and determine the target guiding point based on the historical transformation trajectory point; When the first distance is less than the first distance threshold, the last transformed trajectory point is used as the target guiding point.

[0009] In an alternative implementation, determining the target guiding point based on the historical transformed trajectory points includes: Based on the longitude coordinates of the historical transformed trajectory points and a target multiple of the speed of the historical transformed trajectory points in the longitude direction, determining the longitude coordinates of the target guiding point, where the target multiple is determined based on the time interval between the historical transformed trajectory points and the last transformed trajectory point; Based on the latitude coordinates of the historical transformed trajectory points and the target multiple of the speed of the historical transformed trajectory points in the latitude direction, determining the latitude coordinates of the target guiding point.

[0010] In an alternative implementation, searching for at least one intersection point for the three - dimensional geomagnetic isolines located in the guiding area according to a target window and a target step size includes: Moving and intercepting a target window on the three - dimensional geomagnetic isolines in the guiding area according to the target step size; For the target window moved to any position according to the target step size, when the image attribute parameters of the target window meet the preset conditions, determining the center point of the target window as a candidate intersection point; Performing clustering processing on the candidate intersection points to obtain at least one intersection point.

[0011] In an alternative implementation, the method further includes: Determining a second distance deviation between the last transformed trajectory point obtained in the current iteration and the target intersection point; When the second distance deviation is greater than or equal to a second distance threshold, performing weighted processing on the last transformed trajectory point and the target intersection point obtained in the current iteration to obtain an adjusted last transformed trajectory point, and replacing the last transformed trajectory point obtained in the current iteration with the adjusted last transformed trajectory point; When the second distance deviation is less than the second distance threshold, replacing the last transformed trajectory point obtained in the current iteration with the target intersection point obtained in the current iteration.

[0012] In an alternative implementation, there is partial overlap between the target inertial navigation trajectory points used in two adjacent iterations; the length of the first trajectory is determined according to the distance between each pair of adjacent target inertial navigation trajectory points, and the length of the second trajectory is determined according to the distance between each pair of adjacent transformed trajectory points; During the process of iterations other than the first iteration, determining the matching error of the transformed trajectory points relative to the estimated trajectory points of the target object based on the length deviation between the first trajectory formed by a plurality of the target inertial trajectory points and the second trajectory formed by a plurality of the transformed trajectory points, and the distance deviation between each of the transformed trajectory points and the corresponding three-way geomagnetic isoline, includes: Determine the newly added target inertial trajectory points and the repeated target inertial trajectory points of the current iteration relative to the previous iteration; For each of the newly added target inertial trajectory points, determine the distance between the newly added target inertial trajectory point and the previous adjacent target inertial trajectory point of the newly added target inertial trajectory point as the first distance, and for each of the newly added transformed trajectory points corresponding to the newly added target inertial trajectory points, determine the distance between the newly added transformed trajectory point and the previous adjacent transformed trajectory point of the newly added transformed trajectory point as the second distance; Obtain the distance between each pair of adjacent repeated target inertial trajectory points obtained in the previous iteration as the third distance, and obtain the distance between each pair of adjacent repeated transformed trajectory points obtained in the previous iteration as the fourth distance, where the repeated transformed trajectory points are the transformed trajectory points corresponding to the repeated target inertial trajectory points; Based on the first distance, the second distance, the third distance, and the fourth distance, determine the length deviation obtained in the current iteration; Based on the length deviation obtained in the current iteration, the distance deviation between the newly added transformed trajectory point and the corresponding three-way geomagnetic isoline, and the distance deviation between the repeated transformed trajectory points and the corresponding three-way geomagnetic isoline obtained in the previous iteration, determine the matching error.

[0013] According to a second aspect of the present application, there is provided a trajectory correction device, the device includes: A trajectory acquisition module, configured to acquire an inertial trajectory for a target object; A trajectory transformation module, configured to determine a plurality of target inertial trajectory points located in a target time window from the inertial trajectory, and transform each of the target inertial trajectory points through a transformation matrix to obtain the transformed trajectory points respectively corresponding to each of the target inertial trajectory points; An error determination module, configured to determine the matching error of the transformed trajectory points relative to the estimated trajectory points of the target object based on the length deviation between the first trajectory formed by a plurality of the target inertial trajectory points and the second trajectory formed by a plurality of the transformed trajectory points, and the distance deviation between each of the transformed trajectory points and the corresponding three-way geomagnetic isoline; the estimated trajectory points are generated based on the transformed trajectory points; A trajectory generation module, configured to move the target time window on the inertial navigation trajectory at a target time interval, return and determine the matching error until a preset iteration condition is met, and generate a target correction trajectory based on the estimated trajectory points corresponding to each target time window passed when the preset iteration condition is met; Wherein, the target correction trajectory is used to correct the inertial navigation trajectory; the initial value of the transformation matrix used in the first iteration is a preset transformation matrix, and the initial value of the transformation matrix used in the remaining iterations is the guiding matrix generated in the previous iteration, and the guiding matrix is based on the last transformation trajectory point in the transformation trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point in the target inertial navigation trajectory points used in the previous iteration, and the triaxial geomagnetic isoline intersection point corresponding to the last target inertial navigation trajectory point.

[0014] According to a third aspect of the present application, there is provided a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, and when the processor executes the program, the steps of the trajectory correction method described in the first aspect above are implemented.

[0015] According to a fourth aspect of the present application, there is provided a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the steps of the trajectory correction method described in the first aspect above are implemented.

[0016] The trajectory correction method, device, equipment and medium provided by the embodiments of the present application determine multiple target inertial navigation trajectory points located in a target time window from the inertial navigation trajectory of a target object, transform each target inertial navigation trajectory point through a transformation matrix to obtain transformation trajectory points respectively corresponding to each target inertial navigation trajectory point, and then determine the matching error of the transformation trajectory point relative to the estimated trajectory point of the target object according to the length deviation between the first trajectory formed by multiple target inertial navigation trajectory points and the second trajectory formed by multiple transformation trajectory points, and the distance deviation between each transformation trajectory point and the corresponding triaxial geomagnetic isoline. Move the target time window on the inertial navigation trajectory at a target time interval, return and determine the matching error until a preset iteration condition is met, and generate a target correction trajectory based on the estimated trajectory points corresponding to each target time window passed when the preset iteration condition is met. Wherein, the target correction trajectory is used to correct the inertial navigation trajectory, the initial value of the transformation matrix used in the first iteration is a preset transformation matrix, and the initial value of the transformation matrix used in the remaining iterations is the guiding matrix generated in the previous iteration, and the guiding matrix is based on the last transformation trajectory point in the transformation trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point in the target inertial navigation trajectory points used in the previous iteration, and the triaxial geomagnetic isoline intersection point corresponding to the last transformation trajectory point.

[0017] In this way, in the process of the remaining iterations except the first iteration in the embodiments of the present application, when obtaining the transformed trajectory points by transforming the target inertial navigation trajectory points, the initial value of the transformation matrix used is the guidance matrix generated in the corresponding previous iteration, and the guidance matrix is generated based on the last transformed trajectory point in the transformed trajectory points obtained in the corresponding previous iteration, the last target inertial navigation trajectory point in the target inertial navigation trajectory points used in the previous iteration, and the three-axis geomagnetic isoline intersection point corresponding to the last target inertial navigation trajectory point. Thus, the trajectory point transformation in the next iteration can be guided by the guidance matrix, enabling the next iteration to perform matching transformation in the correct direction, reducing the probability of deviation of the transformed trajectory, avoiding the dilemma that the iteration falls into the local optimal solution in the wrong direction due to the complex magnetic field distribution, and further improving the accuracy of trajectory correction.

[0018] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and do not limit the technical solutions of the present disclosure.

[0019] To make the above objects, features, and advantages of the present disclosure more obvious and understandable, the following specifically enumerates preferred embodiments and, in conjunction with the accompanying drawings, makes the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 is a flowchart of a trajectory correction method shown in an exemplary embodiment of the present application; Figure 2 is a schematic diagram of moving a target time window on an inertial navigation trajectory shown in an exemplary embodiment of the present application; Figure 3 is a schematic diagram of the process of determining an intersection point shown in an exemplary embodiment of the present application; Figure 4a is a first schematic diagram of the effect of determining an intersection point shown in an exemplary embodiment of the present application; Figure 4b is a second schematic diagram of the effect of determining an intersection point shown in an exemplary embodiment of the present application; Figure 5 is a schematic diagram of guiding the direction of the next trajectory point transformation by a guidance matrix shown in an exemplary embodiment of the present application; Figure 6 is a schematic diagram of the process of trajectory correction shown in an exemplary embodiment of the present application; Figure 7 is a schematic diagram of the effect of trajectory correction shown in an exemplary embodiment of the present application; Figure 8 is a schematic diagram of a trajectory correction device shown in an exemplary embodiment of the present application; Figure 9It is a schematic structural diagram of a computer device shown in an exemplary embodiment of the present application. Detailed implementation manners

[0021] Here, the exemplary embodiments will be described in detail, and examples thereof are shown in the drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation manners described in the following exemplary embodiments do not represent all implementation manners consistent with the present application. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.

[0022] The terms used in the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application. The singular forms "a", "the", and "said" used in the present application and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" as used herein refers to and includes any or all possible combinations of one or more of the associated listed items.

[0023] It should be understood that although the terms first, second, third, etc. may be used in the present application to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present application, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "when" or "while" or "in response to determining".

[0024] The term "and / or" herein only describes an association relationship and indicates that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the term "at least one" herein represents any one of a plurality or any combination of at least two of a plurality. For example, including at least one of A, B, and C can represent including any one or more elements selected from the set composed of A, B, and C.

[0025] It has been found through research that by using geomagnetic-aided navigation, the position error accumulated by the inertial navigation system over a long time can be compensated. In practical applications, the geomagnetic distribution often shows diverse and irregular characteristics. There are significant differences in geomagnetic intensity and direction in different regions, and the non-monotonicity of magnetic induction lines is serious, resulting in the dilemma of falling into local optimal solutions, leading the iterative process to the wrong direction and causing serious deviation in trajectory correction.

[0026] Based on the above research, the present application provides a trajectory correction method, device, equipment and medium. During the remaining iterations except the first iteration, when obtaining the transformed trajectory points by transforming the target inertial navigation trajectory points, the initial value of the transformation matrix used is the guidance matrix generated in the corresponding previous iteration. The guidance matrix is generated based on the last transformed trajectory point in the transformed trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point in the target inertial navigation trajectory points used in the previous iteration, and the three-way geomagnetic isoline intersection point corresponding to the last target inertial navigation trajectory point. Thus, the trajectory point transformation in the next iteration can be guided by the guidance matrix, enabling the next iteration to perform matching transformation towards the correct orientation, reducing the probability of the transformed trajectory deviating, avoiding the dilemma that the iteration falls into the local optimal solution in the wrong orientation due to the complex magnetic field distribution, and further improving the accuracy of trajectory correction.

[0027] To facilitate the understanding of this embodiment, first, a trajectory correction method disclosed in the embodiments of the present application will be introduced in detail. The execution subject of the trajectory correction method provided in the embodiments of the present application is generally an electronic device with certain computing capabilities. The electronic device can be a server, a terminal device, or other processing devices. If it is a server, the server can be an independent physical server, a server cluster or a distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud storage, big data, and artificial intelligence platforms. If it is a terminal device, the terminal device can be a user equipment (UE), a mobile device, a terminal, a computing device, a vehicle-mounted device, etc. If it is other processing devices, other processing devices can be devices including a processor and a memory, which are not limited herein. In some possible implementation manners, the trajectory correction method can be implemented by the processor calling computer-readable instructions stored in the memory.

[0028] Next, with reference to the accompanying drawings, a trajectory correction method provided in the embodiments of the present application will be described.

[0029] See Figure 1 As shown in Figure 1 the flowchart of a trajectory correction method shown in an exemplary embodiment of the present application. As shown in S101: Obtain the inertial navigation trajectory of the target object.

[0030] Here, the target object is an object with stable magnetic measurement, such as an airplane, a submarine, etc.

[0031] Among them, the inertial navigation trajectory is the trajectory generated by an Inertial Navigation System (INS) set on the target object.

[0032] It can be understood that as the core device of the target object, the error of the INS accumulates over time and cannot maintain high precision for a long time. Therefore, it needs to be corrected. As a technology that uses the characteristics of geomagnetic field information for navigation, geomagnetic navigation has the characteristics of strong concealment, all-weather, and all-region, and the positioning error does not accumulate over time. Therefore, it can be combined with inertial navigation to achieve long-duration and high-precision navigation and positioning.

[0033] S102: Determine multiple target inertial navigation trajectory points located in the target time window from the inertial navigation trajectory, and transform each of the target inertial navigation trajectory points through a transformation matrix to obtain the transformed trajectory points corresponding to each of the target inertial navigation trajectory points.

[0034] Here, the inertial navigation trajectory changes continuously with the passage of time. Sampling target inertial navigation trajectory points from the inertial navigation trajectory through the target time window for trajectory correction can reflect the characteristics of trajectory changes and ensure navigation accuracy.

[0035] Among them, the target time window is used to indicate the number N of target inertial navigation trajectory points used in one iteration. It can be understood that the larger N is, the higher the correction accuracy, but it has a greater impact on storage space and processing efficiency. The specific value of N can be determined according to actual correction needs. Exemplarily, N 10.

[0036] Specifically, the transformed trajectory point can be obtained through the following formula (1): (1) Among them, represents the transformed trajectory point, represents the target inertial navigation trajectory point, represents the transformation matrix, represents the number of transformation calculations in a certain iteration process.

[0037] Here, the transformation matrix includes rotation parameters, translation parameters, and scaling parameters. Through the transformation matrix, the rotation, translation, and scaling of the target inertial navigation trajectory point can be achieved simultaneously, thereby improving the adaptability to the inertial navigation trajectory error and reducing trajectory divergence.

[0038] S103: Determine the matching error of the transformed trajectory point relative to the estimated trajectory point of the target object according to the length deviation between the first trajectory formed by multiple target inertial trajectory points and the second trajectory formed by multiple transformed trajectory points, and the distance deviation between each transformed trajectory point and the corresponding three-way geomagnetic isoline; the estimated trajectory point is generated based on the transformed trajectory point.

[0039] In this step, on the basis of determining the length deviation between the first trajectory formed by multiple target inertial trajectory points and the second trajectory formed by multiple transformed trajectory points, combined with the distance deviation between each transformed trajectory point and the corresponding three-way geomagnetic isoline, that is, according to the shape difference between the first trajectory and the second trajectory, and the total error of the second trajectory and the geomagnetic vector component isolines in three directions, determine the matching error, so that more dimensions of reference can be available when determining the matching error, and the distance minimization of the transformed trajectory relative to the estimated trajectory point is reflected through the matching error, ensuring the accuracy of the matching error.

[0040] In practical applications, especially in a navigation denied environment, it is generally impossible to obtain the true trajectory generated by the actual movement of the target object and the true trajectory points on the true trajectory. Among them, the navigation denied environment is an environment that interferes with or shields the Global Positioning System (GPS) signal, so the true trajectory cannot be obtained. Thus, the embodiments of the present disclosure use estimated trajectory points to approximately represent the true trajectory points.

[0041] Specifically, the matching error can be obtained through the following formula (2):

[0042] (2) Wherein, represents the matching error of the j-th transformation calculation in a certain iteration process, represents the number of target inertial trajectory points used in one iteration indicated by the target time window, represents the number of transformation calculations in a certain iteration process, represents the -th transformation calculation corresponding to the -th transformed trajectory point among the -th transformed trajectory point, represents the -th transformation calculation corresponding to the -th transformed trajectory point among the -th transformed trajectory point, represents the distance between and represents the The th target inertial trajectory point among the target inertial trajectory points, indicating the th target inertial trajectory point corresponding to the th transformation calculation, target inertial trajectory point among the indicating the distance between and indicating the length deviation between and indicating the th length deviation between the first trajectory and the second trajectory corresponding to the th transformation calculation, indicating the number of geomagnetic directions, indicating the geomagnetic true value contour line of each transformation trajectory point in the k direction, indicating the compensated geomagnetic contour line, indicating the distance deviation between and the corresponding indicating the total sum of the minimum distance deviations between each transformation trajectory point and the corresponding geomagnetic contour line.

[0043] Here, in each iteration, the transformation matrix and the matching error are continuously updated, that is, the determination of the transformation matrix and the matching error is performed multiple times.

[0044] Specifically, in each iteration, along the direction of decreasing matching error, the determination of the transformation matrix and the matching error is performed multiple times until the calculation stop condition is met.

[0045] It can be understood that in this iteration, as the determination process of the transformation matrix and the matching error continues, the transformation trajectory formed by the transformation trajectory points gradually approaches the estimated trajectory of the target object until the calculation stop condition is met. That is to say, the transformation trajectory points when the calculation stop condition is met are closest to the corresponding estimated trajectory points. At this time, the corresponding estimated trajectory points can be generated based on the transformation trajectory points when the calculation stop condition is met.

[0046] Among them, the calculation stop condition includes at least one of the following: the number of determinations of the transformation matrix or the number of determinations of the matching error reaches the target calculation number; the change rate of the transformation matrix is less than the preset matrix change threshold; the change rate of the matching error is less than the matching error change threshold.

[0047] Here, the change rate of the transformation matrix is the change rate of the transformation matrix used in this calculation compared to the transformation matrix used in the previous calculation, and the change rate of the matching error is the change rate of the matching error obtained in this calculation compared to the matching error obtained in the previous calculation.

[0048] When generating a corresponding estimated trajectory point based on the transformation trajectory point when the calculation stop condition is satisfied, specifically, considering that in practical applications, the transformation trajectory point when the calculation stop condition is satisfied may not be located on the geomagnetic isoline. Therefore, for the transformation trajectory point when the calculation stop condition is satisfied, if the transformation trajectory point is located on the geomagnetic isoline, use this transformation trajectory point as the estimated trajectory point. If the transformation trajectory point is not located on the geomagnetic isoline, determine the point on the geomagnetic isoline that is closest to this transformation trajectory point as the estimated trajectory point.

[0049] S104: Move the target time window on the inertial navigation trajectory at the target time interval, return to determine the matching error until the preset iteration condition is satisfied, and generate a target correction trajectory based on the estimated trajectory points corresponding to each target time window passed when the preset iteration condition is satisfied; wherein, the target correction trajectory is used to correct the inertial navigation trajectory; the initial value of the transformation matrix used in the first iteration is a preset transformation matrix, and the initial value of the transformation matrix used in the remaining iterations is the guiding matrix generated in the previous iteration, and the guiding matrix is generated based on the last transformation trajectory point in the transformation trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point in the target inertial navigation trajectory points used in the previous iteration, and the three-way geomagnetic isoline intersection point corresponding to the last target inertial navigation trajectory point.

[0050] Here, considering that within a certain time length, the trajectory change can be regarded as smooth movement, and the scaling amount, rotation amount, and offset amount of all inertial navigation trajectory points relative to the inertial navigation trajectory are basically the same. Therefore, the embodiments of the present application adopt the method of moving the target time window.

[0051] As the iteration process continues, the trajectory composed of the transformation trajectory points gradually approaches the estimated trajectory of the target object until the preset iteration condition is satisfied. At this time, a target correction trajectory can be generated based on the estimated trajectory points corresponding to each target time window passed when the preset iteration condition is satisfied.

[0052] Among them, the preset iteration condition includes at least one of the following: reaching the end point of the inertial navigation trajectory; satisfying a preset duration; receiving an iteration stop signal. The specific value of the preset duration can be set according to the iteration requirements and is not specifically limited here.

[0053] In some possible embodiments, there is partial overlap between the target inertial navigation trajectory points used in two adjacent iterations; the length of the first trajectory is determined according to the distances between each pair of two adjacent target inertial navigation trajectory points, and the length of the second trajectory is determined according to the distances between each pair of two adjacent transformed trajectory points.

[0054] During the process of the remaining iterations except the first iteration, determining the matching error of the transformed trajectory points relative to the estimated trajectory points of the target object based on the length deviation between the first trajectory formed by a plurality of the target inertial navigation trajectory points and the second trajectory formed by a plurality of the transformed trajectory points, and the distance deviation between each of the transformed trajectory points and the corresponding three-way geomagnetic isolines, includes: Determining the newly added target inertial navigation trajectory points and the repeated target inertial navigation trajectory points in the current iteration relative to the previous iteration; For each of the newly added target inertial navigation trajectory points, determining the distance between the newly added target inertial navigation trajectory point and the previous adjacent target inertial navigation trajectory point of the newly added target inertial navigation trajectory point as the first distance, and for each of the newly added transformed trajectory points corresponding to the newly added target inertial navigation trajectory points, determining the distance between the newly added transformed trajectory point and the previous adjacent transformed trajectory point of the newly added transformed trajectory point as the second distance; Obtaining the distances between each pair of two adjacent repeated target inertial navigation trajectory points obtained in the previous iteration as the third distance, and obtaining the distances between each pair of two adjacent repeated transformed trajectory points obtained in the previous iteration as the fourth distance, where the repeated transformed trajectory points are the transformed trajectory points corresponding to the repeated target inertial navigation trajectory points; Based on the first distance, the second distance, the third distance, and the fourth distance, determining the length deviation obtained in the current iteration; Based on the length deviation obtained in the current iteration, the distance deviation between the newly added transformed trajectory point and the corresponding three-way geomagnetic isoline, and the distance deviation between the repeated transformed trajectory point and the corresponding three-way geomagnetic isoline obtained in the previous iteration, determining the matching error.

[0055] For a clearer understanding, please refer to Figure 2 , which is a schematic diagram of moving a target time window on an inertial navigation trajectory shown in an exemplary embodiment of the present application. It is set that the target time window includes N target inertial navigation trajectory points. In this example, taking N as 6 and the target time interval as 1 s as an example for illustration. It can be understood that the sampling of the first target time window occurs at the moment when the time length corresponding to the inertial navigation trajectory H satisfies N * target time interval, such as Figure 2As shown, the six target inertial navigation trajectory points included in the first target time window are collected at ts, t+1s, t+2s, t+3s, t+4s, and t+5s in sequence. Then, the target time window slides every 1s, adding the target inertial navigation trajectory points of the most recent 1s and removing the target inertial navigation trajectory points at the farthest moment, ensuring that the number of target inertial navigation trajectory points participating in the iteration is always N. Correspondingly, the six target inertial navigation trajectory points included in the second target time window are collected at t+1s, t+2s, t+3s, t+4s, t+5s, and t+6s in sequence.

[0056] Combined with formula (2), it can be seen that when determining the matching error, the matching loss values (i.e., the corresponding length deviation and distance deviation) for each target inertial navigation trajectory point and each transformed trajectory point are calculated independently. In this way, in the case of smooth motion, the matching loss value corresponding to the current moment is relatively close to the matching loss value corresponding to the previous moment. The first trajectory transformation corresponding to two adjacent target time windows is small, and the second trajectory transformation corresponding to two adjacent target time windows is also small. Therefore, in the process of the remaining iterations except the first iteration, only the matching loss values of the newly added target inertial navigation trajectory points and the newly added transformed trajectory points in this iteration relative to the previous iteration need to be calculated, and the matching loss values of the repeated target inertial navigation trajectory points and the repeated transformed trajectory points obtained in the previous iteration are used.

[0057] In this example, for the iteration corresponding to the second target time window, the newly added target inertial navigation trajectory point relative to the previous iteration is the trajectory point collected at t+6s, and the repeated target inertial navigation trajectory points relative to the previous iteration are the trajectory points collected at t+1s, t+2s, t+3s, t+4s, and t+5s. It can be understood that the matching loss values of the trajectory points collected at t+1s, t+2s, t+3s, t+4s, and t+5s must have been calculated in the previous iteration. Therefore, in this iteration, when determining the matching error, only the matching loss value of the trajectory point collected at t+6s needs to be calculated, and the matching loss values of the trajectory points collected at t+1s, t+2s, t+3s, t+4s, and t+5s can use the existing results obtained in the previous iteration.

[0058] Specifically, determine the distance between the t+6s target inertial navigation trajectory point and the t+5s target inertial navigation trajectory point as the first distance, and determine the distance between the t+6s transformed trajectory point and the t+5s transformed trajectory point as the second distance; obtain the distance between the t+5s target inertial navigation trajectory point and the t+4s target inertial navigation trajectory point obtained in the previous iteration, the distance between the t+4s target inertial navigation trajectory point and the t+3s target inertial navigation trajectory point obtained in the previous iteration, the distance between the t+3s target inertial navigation trajectory point and the t+2s target inertial navigation trajectory point obtained in the previous iteration, and the distance between the t+2s target inertial navigation trajectory point and the t+1s target inertial navigation trajectory point obtained in the previous iteration as the third distance, and obtain the distance between the t+5s transformed trajectory point and the t+4s transformed trajectory point obtained in the previous iteration The distance between them, the distance between the t+4s transformation trajectory point and the t+3s transformation trajectory point obtained in the previous iteration, the distance between the t+3s transformation trajectory point and the t+2s transformation trajectory point obtained in the previous iteration, and the distance between the t+2s transformation trajectory point and the t+1s transformation trajectory point obtained in the previous iteration are taken as the fourth distance; based on the first distance, the second distance, the third distance and the fourth distance, the length deviation obtained in this iteration is determined; based on the length deviation obtained in this iteration, the distance deviation between the t+6s transformation trajectory point and the corresponding three-dimensional geomagnetic contour line, and the distance deviation between the t+1s, t+2s, t+3s, t+4s, t+5s transformation trajectory points and the corresponding three-dimensional geomagnetic contour lines obtained in the previous iteration, the matching error is determined.

[0059] In this way, when determining the matching error in each iteration, it is only necessary to determine the data associated with the newly added target inertial navigation trajectory points and the newly added transformed trajectory points relative to the previous iteration, and continue to use the data associated with the repeated target inertial navigation trajectory points and the repeated transformed trajectory points relative to the previous iteration, avoiding repeated calculations and greatly reducing computational overhead. While ensuring accuracy, it also significantly improves processing efficiency.

[0060] In practical applications, since navigation is real-time, the correction trajectory must be updated in real time as the navigation trajectory grows. In other words, the correction trajectory grows with each iteration, rather than being generated all at once. Iteration stops when the preset iteration conditions are met, and the resulting correction trajectory becomes the target correction trajectory.

[0061] For example, at the 15th second of iteration, the generated correction trajectory includes 15 estimated trajectory points. If the preset iteration condition is to transform 7200 target inertial navigation trajectory points, the target correction trajectory obtained when the iteration stops includes 7200 estimated trajectory points.

[0062] When generating a corrected trajectory based on the estimated trajectory points corresponding to each passed target time window, specifically, for each passed target time window, determine all the first estimated trajectory points corresponding to the first passed time window, and determine the second estimated trajectory points corresponding to the newly added transformed trajectory points obtained from the remaining passed time windows, and connect the first estimated trajectory points and the second estimated trajectory points in chronological order to generate a real-time corrected trajectory.

[0063] It can be understood that for the remaining iterations except the first iteration, the corrected trajectory generated in each iteration is generated based on the corrected trajectory generated in the previous iteration and the second estimated trajectory points corresponding to the newly added transformed trajectory points relative to the previous iteration.

[0064] In the embodiment of the present application, the initial value of the transformation matrix used in the first iteration is a preset transformation matrix. Optionally, the rotation parameter of the preset transformation matrix is 0, the translation parameter is 0, and the scaling parameter is 1.

[0065] The initial value of the transformation matrix used in the remaining iterations is the guiding matrix generated in the previous iteration. The guiding matrix is generated based on the last transformation trajectory point among the transformation trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point among the target inertial navigation trajectory points used in the previous iteration, and the three-way geomagnetic contour intersection point corresponding to the last target inertial navigation trajectory point, so that the transformation of the trajectory points in the next iteration can be guided by the guiding matrix, enabling the next iteration to perform matching transformation in the correct direction.

[0066] In some possible implementation manners, the guiding matrix is determined through the following steps: Based on the last transformation trajectory point among the transformation trajectory points obtained in the previous iteration, determine a target guiding point, and construct a guiding area with the target guiding point as the center; Search for the three-way geomagnetic contours located in the guiding area according to a target window and a target step size to obtain at least one intersection point; Screen out the target intersection point closest to the target guiding point from the at least one intersection point; Generate the guiding matrix according to the rotation angle and translation amount of the target intersection point relative to the last target inertial navigation trajectory point.

[0067] Here, in combination with the characteristic of the smooth movement of the target object within a short period of time, based on the last transformation trajectory point among the transformation trajectory points obtained in the previous iteration, a target guiding point is determined. A guiding area is constructed with the target guiding point as the center. Then, considering that the true value trajectory point is probably located at the intersection of the three-way geomagnetic isolines corresponding to it, or there is an intersection of the three-way geomagnetic isolines within the neighborhood of the true value trajectory point, the three-way geomagnetic isolines within the guiding area are searched to obtain at least one intersection point, and the target intersection point closest to the target guiding point is determined from them. According to the rotation angle and translation amount of the target intersection point relative to the last target inertial navigation trajectory point, the guiding matrix is generated, so as to use the guiding matrix as the initial value of the transformation matrix for the next iteration, avoiding starting the next iteration along the wrong azimuth of the previous iteration.

[0068] In some possible implementation manners, the determining the target guiding point based on the last transformation trajectory point among the transformation trajectory points obtained in the previous iteration includes: Determine the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point; Obtain the historical trajectory point distance, where the historical trajectory point distance is the distance between the historical last target inertial navigation trajectory point and the historical last transformation trajectory point corresponding to the target historical moment; Determine the first distance deviation between the trajectory point distance and the historical trajectory point distance; Determine the target guiding point according to the comparison result between the first distance deviation and the first distance threshold.

[0069] Here, considering that when the target object performs smooth movement, the drift of the inertial navigation trajectory is gradual. Therefore, by determining the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point, it is judged whether the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point will mutate, so as to determine the target guiding point.

[0070] Wherein, the initial value of the target historical moment is the moment when the first target inertial navigation trajectory point is collected on the inertial navigation trajectory. After that, it is updated every fixed duration, such as 300 s, so that the updated moment can be selected as the target historical moment.

[0071] In this way, by comparing the comparison result between the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point and the first distance deviation between the historical trajectory point distances, the target guiding point is determined, which helps to correct the last transformation trajectory point through the target guiding point.

[0072] In some possible implementation manners, the determining the target guiding point according to the comparison result between the first distance deviation and the first distance threshold includes: When the first distance deviation is greater than or equal to the first distance threshold, determine the historical transformation trajectory points before the last transformation trajectory point, and determine the target guiding point based on the historical transformation trajectory points; When the first distance is less than the first distance threshold, use the last transformation trajectory point as the target guiding point.

[0073] Among them, if the first distance deviation is greater than or equal to the first distance threshold, it means that the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point has a sudden change. At this time, determine the historical transformation trajectory points before the last transformation trajectory point, and perform regular constraints based on the motion law on the last transformation trajectory point based on the historical transformation trajectory points to determine the target guiding point, so as to suppress the deviation result of the last transformation trajectory point from being too rapid to a certain extent, and avoid accidental large matching errors caused by interference such as measurement noise and excessive cumulative errors of approximate matching.

[0074] If the first distance is less than the first distance threshold, it means that the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point has not changed suddenly. Therefore, there is no need to perform regular constraints based on the motion law on the last transformation trajectory point, and the last transformation trajectory point can be directly used as the target guiding point, which improves the processing efficiency while ensuring accuracy.

[0075] In some possible implementation manners, determining the target guiding point based on the historical transformation trajectory points includes: Determine the longitude coordinate of the target guiding point based on the longitude coordinate of the historical transformation trajectory point and the target multiple of the speed of the historical transformation trajectory point in the longitude direction, where the target multiple is determined based on the time interval between the historical transformation trajectory point and the last transformation trajectory point; Determine the latitude coordinate of the target guiding point based on the latitude coordinate of the historical transformation trajectory point and the target multiple of the speed of the historical transformation trajectory point in the latitude direction.

[0076] Among them, the sum of the longitude coordinate of the historical transformation trajectory point and the target multiple of the speed of the historical transformation trajectory point in the longitude direction can be determined as the longitude coordinate of the target guiding point, and the sum of the latitude coordinate of the historical transformation trajectory point and the target multiple of the speed of the historical transformation trajectory point in the latitude direction can be determined as the latitude coordinate of the target guiding point.

[0077] Here, the time interval between the historical transformation trajectory point and the last transformation trajectory point can be greater than 2 s. Continuing from the foregoing embodiment, for the second time window, its last transformation trajectory point is the transformation trajectory point at t + 6 s. At this time, the historical transformation trajectory point can be the transformation trajectory point at t + 4 s. In this way, by setting a certain time interval between the historical transformation trajectory point and the last transformation trajectory point, the deviation of the last transformation trajectory point can be suppressed relatively quickly.

[0078] Exemplarily, the target guidance point can be obtained through the following formula (3): (3) Wherein, in this example, the time interval between the historical transformation trajectory point and the last transformation trajectory point is taken as 2 s for illustration. represents the target guidance point, represents the latitude coordinate of the historical transformation trajectory point, represents the velocity of the carrier in the latitude direction at the moment of the last transformation trajectory point, represents the longitude coordinate of the historical transformation trajectory point, represents the velocity of the carrier in the longitude direction at the moment of the last transformation trajectory point, represents the trajectory point distance between the last transformation trajectory point and the last target inertial navigation trajectory point, represents the historical trajectory point distance, represents the first distance deviation, represents the first distance threshold, represents the last transformation trajectory point.

[0079] After determining the target guidance point, a guidance area is constructed with the target guidance point as the center. Theoretically speaking, the true value trajectory point should fall on the intersection point of the three-way geomagnetic isolines or at a position relatively close to the three-way geomagnetic isolines. In order to include the optimal solution in the guidance area as much as possible, in the embodiment of the present application, a rectangular range with the target guidance point as the center and a side length of is used as the guidance area.

[0080] Wherein, the specific value of the side length of the guidance area can be determined according to the navigation accuracy index of the target object. Taking the target object as an airplane as an example, the aviation navigation accuracy index is used to characterize the root mean square value of the average distance of trajectory correction achieved at different flight altitudes. Considering the magnetic measurement error, the one-way search range based on the target guidance point is set to 2 times the navigation accuracy index. For example, when navigating at an altitude of 3000 m, the side length is 0.8 km, which is represented by an image of 200 pix * 200 pix, and the resolution of each pixel is 40 m.

[0081] In some possible embodiments, searching for the three - dimensional geomagnetic isolines located in the guiding area according to the target window and the target step size to obtain at least one intersection point includes: Moving along the three - dimensional geomagnetic isolines in the guiding area according to the target step size and intercepting a target window; For the target window moved to any position according to the target step size, when the image attribute parameters of the target window meet the preset conditions, determining the center point of the target window as a candidate intersection point; Performing clustering processing on the candidate intersection points to obtain at least one intersection point.

[0082] In the above steps, in order to more clearly determine the position of the intersection point, the intersection point can be searched through the technology of Image Processing (IP).

[0083] Here, reference can be made simultaneously to Figure 3 , which is a schematic diagram of a process for determining an intersection point shown in an exemplary embodiment of the present application. As Figure 3 shown, for all pixel values of all pixel points of the image corresponding to the guiding area, they are all set to 0 to obtain a completely black guiding area, and then the three - dimensional geomagnetic isolines are traversed, and the three - dimensional geomagnetic isolines within the determined guiding area are intercepted, that is, the three - dimensional geomagnetic isolines within the range of , are determined, where represents the latitude coordinate of the target guiding point, and represents the longitude coordinate of the target guiding point.

[0084] In this embodiment, different pixel values are used to mark isolines in different directions, so that isolines in different directions can be distinguished. Exemplarily, referring to Figure 4a and Figure 4b , which is a schematic diagram of the effect of determining an intersection point shown in an exemplary embodiment of the present application. As Figure 4a and Figure 4b shown, the x - direction isolines are marked with a pixel value of 250, the y - direction isolines are marked with a pixel value of 150, and the z - direction isolines are marked with a pixel value of 50, so that isolines in different directions are identified with white of different brightnesses.

[0085] Moving along the three - dimensional geomagnetic isolines in the image corresponding to the guiding area according to the target step size and intercepting a target window. Among them, the target step size and the target window can be determined according to the size of the image corresponding to the guiding area. Exemplarily, when the image corresponding to the guiding area is 200pix * 200pix, the target step size is set to 5pix, and the target window is 20pix * 20pix.

[0086] For the target window that moves to any position according to the target step size, determine the image attribute parameters of the target window, and judge whether the image attribute parameters of the target window meet the preset conditions. When the image attribute parameters of the target window meet the preset conditions, determine the center point of the target window as the candidate intersection point. When the image attribute parameters of the target window do not meet the preset conditions, continue to move the target window.

[0087] Among them, the image attribute parameters of the target window include at least one of the following: mean avg, variance std, complexity index copml. The complexity index includes, for example, entropy, Local Binary Pattern (LBP).

[0088] The preset condition is that the image attribute parameters meet the corresponding threshold ranges. If there are multiple image attribute parameters, when all the multiple image attribute parameters meet the corresponding threshold ranges, it is determined that the preset conditions are met.

[0089] Exemplarily, for the mean avg, it needs to be greater than or equal to the mean threshold, that is, avg thr_avg; for the variance std, it needs to be within the variance range, that is, std thr_std_l and std thr_std_h; for the complexity index copml, it needs to be greater than or equal to the complexity index threshold, that is, copml thr_copml.

[0090] See Figure 4a and Figure 4b , perform clustering processing on the candidate intersection points (square marks) to obtain intersection points (star marks). Here, according to the different position distributions of the candidate intersection points, at least one intersection point can be obtained. As Figure 4a shown, three intersection points are obtained. As Figure 4b shown, one intersection point is obtained.

[0091] In this way, by using image processing technology to search for intersection points, the position coordinates of the intersection points can be accurately obtained while being simple and efficient.

[0092] After obtaining at least one intersection point, screen from the at least one intersection point to obtain the target intersection point that is the closest to the target guiding point , determine the rotation angle of the target intersection point relative to the last target inertial navigation trajectory point and the translation amount . From the rotation angle and the translation amount Construct a guiding matrix , so as to obtain the initial value of the transformation matrix used in the next iteration.

[0093] Refer to Figure 5 , which is a schematic diagram showing the guiding of the orientation of the transformation of the next trajectory point by a guiding matrix in an exemplary embodiment of the present application. As Figure 5 shown in , a Cartesian coordinate system is constructed with the longitude and latitude

[0094] center point. H represents the inertial navigation trajectory, the diamond mark a represents the last target inertial navigation trajectory point, C represents the three-way geomagnetic isoline, the star mark b represents the target intersection point, H’ represents the transformation trajectory composed of transformed trajectory points, the triangle mark c represents the target guiding point, and L represents the true value trajectory. It can be seen that if the transformation trajectory H’ continues to iterate along the orientation of the target guiding point c, it will continuously deviate from the true value trajectory L. By determining the guiding matrix through the target intersection point b, the subsequent iteration can be guided towards the correct orientation close to the true value trajectory L, reducing the probability of deviation of the transformation trajectory. In practical applications, there may be a situation where the three-way geomagnetic isoline is relatively sparse, or the deviation of the transformed trajectory point is relatively large, resulting in the inability to cluster and obtain the intersection point. At this time, the target guiding point relative to the last target inertial navigation trajectory point rotation angle and translation amount can be determined, and the guiding matrix is composed of the rotation angle , so as to obtain the initial value of the transformation matrix used in the next iteration.

[0095] In some possible implementation manners, the method further includes: Determine the second distance deviation between the last transformed trajectory point obtained in this iteration and the target intersection point; In the case where the second distance deviation is greater than or equal to the second distance threshold, perform weighted processing on the last transformed trajectory point obtained in this iteration and the target intersection point to obtain an adjusted last transformed trajectory point, and replace the last transformed trajectory point obtained in this iteration with the adjusted last transformed trajectory point; In the case where the second distance deviation is less than the second distance threshold, replace the last transformed trajectory point obtained in this iteration with the target intersection point obtained in this iteration.

[0096] Here, considering that the last transformation trajectory point may not exactly fall on the position of the target intersection point, and there may be a situation of local optimal solution in the guiding direction, these interferences may cause the last transformation trajectory point to deviate seriously from the target intersection point. Therefore, the last transformation trajectory point can be appropriately adjusted to further suppress the local optimal solution situation.

[0097] Specifically, if the second distance deviation between the last transformation trajectory point obtained in this iteration and the target intersection point is greater than or equal to the second distance threshold, it indicates that the last transformation trajectory point obtained in this iteration has a large deviation compared with the target intersection point. Therefore, weighted processing is performed on the last transformation trajectory point obtained in this iteration and the target intersection point to obtain an adjusted last transformation trajectory point, so as to adjust the last transformation point through the target intersection point, and then replace the last transformation trajectory point obtained in this iteration with the adjusted last transformation trajectory point to improve the accuracy of the iteration result.

[0098] If the second distance deviation is less than the second distance threshold, it indicates that the last transformation trajectory point obtained in this iteration has a small deviation compared with the target intersection point. Therefore, the target intersection point obtained in this iteration can be directly used to replace the last transformation trajectory point obtained in this iteration.

[0099] Specifically, the replaced last transformation trajectory point can be obtained through the following formula (4): (4) Where, represents the replaced last transformation trajectory point, represents the latitude coordinate of the last transformation trajectory point, represents the latitude coordinate of the target intersection point, represents the longitude coordinate of the last transformation trajectory point, represents the longitude coordinate of the target intersection point, represents the second distance deviation, represents the second distance threshold, represents the target intersection point, represents the weight coefficient. Optionally, .

[0100] To clearly show the trajectory correction process, please refer to Figure 6 , which is a schematic diagram of a trajectory correction process shown in an exemplary embodiment of the present application. As Figure 6 shown in, when starting the trajectory correction, first determine whether the preset iteration condition is satisfied. If not, determine multiple target inertial navigation trajectory points located in the target time window from the inertial navigation trajectory. Detect whether N target inertial navigation trajectory points can be accumulated. If not, return to determine whether the preset iteration condition is satisfied. If so, determine whether it is the first iteration.

[0101] In the first iteration, transform each target inertial navigation trajectory point in the first target time window. Based on each target inertial navigation trajectory point in the first target time window, determine the transformation matrix and the matching error multiple times along the direction of decreasing matching error until the calculation stop condition is met. If it is not the first iteration, use the guidance matrix generated in the previous iteration as the initial value of the transformation matrix, transform each target inertial navigation trajectory point in the corresponding target time window, determine the matching error based on the newly added target inertial navigation trajectory points and the repeated target inertial navigation trajectory points in the corresponding target time window, and determine the transformation matrix and the matching error multiple times along the direction of decreasing matching error until the calculation stop condition is met.

[0102] Then, based on the last transformed trajectory point, determine the target guidance point. With the target guidance point as the center, construct a guidance area, search for the three-way geomagnetic isolines located in the guidance area, and determine whether at least one intersection point can be obtained.

[0103] If at least one intersection point can be obtained, screen out the target intersection point, correct the last transformed trajectory point obtained in this iteration, and generate a guidance matrix according to the rotation angle and translation amount of the target intersection point relative to the last target inertial navigation trajectory point. If no intersection point can be obtained, generate a guidance matrix according to the rotation angle and translation amount of the target guidance point relative to the last target inertial navigation trajectory point. Here, the guidance matrix generated in this iteration is used as the initial value of the transformation matrix for the next iteration.

[0104] Repeat the above steps until the preset iteration condition is met to generate the target corrected trajectory. Among them, the specific step description refers to the foregoing embodiments and will not be elaborated here.

[0105] Exemplarily, refer to Figure 7 , which is a schematic diagram showing the effect of a trajectory correction shown in an exemplary embodiment of the present application. As shown in Figure 7 , inertial navigation trajectory points , , , , , etc. are collected from the inertial navigation trajectory H. According to the trajectory correction method provided in the embodiment of the present application, a corrected trajectory X can be generated. Correspondingly, the corrected trajectory X is composed of estimated trajectory points , , , , etc. It can be seen that each estimated trajectory point is located on the corresponding three-way geomagnetic isoline , , , , above, and compared with the inertial navigation trajectory H, the corrected trajectory X is closer to the true value trajectory L. Correspondingly, compared with the inertial navigation trajectory points , , , etc., the estimated trajectory points , , , etc. are closer to the true value trajectory points , , , etc.

[0106] In the process of the remaining iterations except the first iteration of the trajectory correction method provided in the embodiments of the present application, when obtaining the transformed trajectory points by transforming the target inertial navigation trajectory points, the initial value of the transformation matrix used is the guiding matrix generated in the corresponding previous iteration. The guiding matrix is generated based on the last transformed trajectory point in the transformed trajectory points obtained in the corresponding previous iteration, the last target inertial navigation trajectory point in the target inertial navigation trajectory points used in the previous iteration, and the three-axis geomagnetic isoline intersection point corresponding to the last target inertial navigation trajectory point. Thus, the trajectory point transformation of the next iteration can be guided by the guiding matrix, so that the next iteration can perform matching transformation in the correct direction, reduce the probability of deviation of the transformed trajectory, and avoid the dilemma that the iteration falls into the local optimal solution in the wrong direction due to the complex magnetic field distribution, thereby improving the accuracy of trajectory correction.

[0107] Those skilled in the art can understand that in the above method of the specific implementation manner, the writing order of each step does not mean a strict execution order and does not constitute any limitation to the implementation process. The specific execution order of each step should be determined according to its function and possible internal logic.

[0108] Based on the same inventive concept, the embodiments of the present application also provide a trajectory correction device corresponding to the trajectory correction method. Since the principle of solving problems by the trajectory correction device in the embodiments of the present application is similar to the above trajectory correction method in the embodiments of the present application, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be described again.

[0109] Please refer to Figure 8 , which is a schematic diagram of a trajectory correction device shown in an exemplary embodiment of the present application. As shown in Figure 8 , the trajectory correction device 800 provided in the embodiments of the present application includes: A trajectory acquisition module 801, configured to acquire the inertial navigation trajectory of a target object; A trajectory transformation module 802 is configured to determine multiple target inertial navigation trajectory points located in a target time window from the inertial navigation trajectory, and transform each of the target inertial navigation trajectory points through a transformation matrix to obtain transformed trajectory points corresponding to the respective target inertial navigation trajectory points; An error determination module 803 is configured to determine a matching error of the transformed trajectory point relative to an estimated trajectory point of the target object according to a length deviation between a first trajectory formed by the multiple target inertial navigation trajectory points and a second trajectory formed by the multiple transformed trajectory points, and a distance deviation between each of the transformed trajectory points and a corresponding three-way geomagnetic isoline; the estimated trajectory point is generated based on the transformed trajectory point; A trajectory generation module 804 is configured to move the target time window on the inertial navigation trajectory at a target time interval, return to determine the matching error until a preset iteration condition is satisfied, and generate a target correction trajectory based on the estimated trajectory points corresponding to the respective target time windows when the preset iteration condition is satisfied; Wherein, the target correction trajectory is used to correct the inertial navigation trajectory; the initial value of the transformation matrix used in the first iteration is a preset transformation matrix, and the initial value of the transformation matrix used in the remaining iterations is a guiding matrix generated in the previous iteration, and the guiding matrix is generated based on the last transformed trajectory point among the transformed trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point among the target inertial navigation trajectory points used in the previous iteration, and an intersection point of the three-way geomagnetic isoline corresponding to the last target inertial navigation trajectory point.

[0110] In some possible implementation manners, the trajectory transformation module 802 is configured to determine a guiding matrix through the following steps: Based on the last transformed trajectory point among the transformed trajectory points obtained in the previous iteration, determine a target guiding point, and construct a guiding area with the target guiding point as the center; Search for the three-way geomagnetic isoline located in the guiding area according to a target window and a target step length to obtain at least one intersection point; Screen out a target intersection point closest to the target guiding point from the at least one intersection point; Generate the guiding matrix according to a rotation angle and a translation amount of the target intersection point relative to the last target inertial navigation trajectory point.

[0111] In some possible implementation manners, when the trajectory transformation module 802 is configured to determine a target guiding point based on the last transformed trajectory point among the transformed trajectory points obtained in the previous iteration, it is specifically configured to: Determine a trajectory point distance between the last transformed trajectory point and the last target inertial navigation trajectory point; Obtain the historical trajectory point distance, where the historical trajectory point distance is the distance between the last historical inertial navigation trajectory point corresponding to the target historical moment and the last transformed trajectory point; Determine a first distance deviation between the trajectory point distance and the historical trajectory point distance; Determine a target guiding point according to the comparison result between the first distance deviation and a first distance threshold.

[0112] In some possible implementation manners, when the trajectory transformation module 802 is used to determine a target guiding point according to the comparison result between the first distance deviation and the first distance threshold, it is specifically used for: In the case where the first distance deviation is greater than or equal to the first distance threshold, determine a historical transformed trajectory point before the last transformed trajectory point, and determine the target guiding point based on the historical transformed trajectory point; In the case where the first distance is less than the first distance threshold, use the last transformed trajectory point as the target guiding point.

[0113] In some possible implementation manners, when the trajectory transformation module 802 is used to determine the target guiding point based on the historical transformed trajectory point, it is specifically used for: Based on the longitude coordinate of the historical transformed trajectory point and a target multiple of the speed of the historical transformed trajectory point in the longitude direction, determine the longitude coordinate of the target guiding point, where the target multiple is determined based on the time interval between the historical transformed trajectory point and the last transformed trajectory point; Based on the latitude coordinate of the historical transformed trajectory point and the target multiple of the speed of the historical transformed trajectory point in the latitude direction, determine the latitude coordinate of the target guiding point.

[0114] In some possible implementation manners, when the trajectory transformation module 802 is used to search for three-way geomagnetic isolines in the guiding area according to a target window and a target step length to obtain at least one intersection point, it is specifically used for: Move and intercept a target window on the three-way geomagnetic isolines in the guiding area according to the target step length; For the target window moved to any position according to the target step length, when the image attribute parameters of the target window meet the preset conditions, determine the center point of the target window as a candidate intersection point; Perform clustering processing on the candidate intersection points to obtain at least one intersection point.

[0115] In some possible implementation manners, during the remaining iterations except the first iteration, the trajectory transformation module 802 is further used for: Determine the second distance deviation between the last transformed trajectory point obtained in this iteration and the target intersection point; In the case where the second distance deviation is greater than or equal to the second distance threshold, perform weighted processing on the last transformed trajectory point and the target intersection point obtained in this iteration to obtain an adjusted last transformed trajectory point, and replace the last transformed trajectory point obtained in this iteration with the adjusted last transformed trajectory point; In the case where the second distance deviation is less than the second distance threshold, replace the last transformed trajectory point obtained in this iteration with the target intersection point obtained in this iteration.

[0116] In some possible implementation manners, there is partial overlap between the target inertial navigation trajectory points used in two adjacent iterations; the length of the first trajectory is determined according to the distance between each pair of adjacent target inertial navigation trajectory points, and the length of the second trajectory is determined according to the distance between each pair of adjacent transformed trajectory points; During the process of the remaining iterations except the first iteration, the error determination module 803 is specifically configured to: Determine the newly added target inertial navigation trajectory points and the repeated target inertial navigation trajectory points in this iteration relative to the previous iteration; For each of the newly added target inertial navigation trajectory points, determine the distance between the newly added target inertial navigation trajectory point and the previous adjacent target inertial navigation trajectory point of the newly added target inertial navigation trajectory point as the first distance, and for each newly added transformed trajectory point corresponding to the newly added target inertial navigation trajectory point, determine the distance between the newly added transformed trajectory point and the previous adjacent transformed trajectory point of the newly added transformed trajectory point as the second distance; Obtain the distance between each pair of adjacent repeated target inertial navigation trajectory points obtained in the previous iteration as the third distance, and obtain the distance between each pair of adjacent repeated transformed trajectory points obtained in the previous iteration as the fourth distance, where the repeated transformed trajectory points are the transformed trajectory points corresponding to the repeated target inertial navigation trajectory points; Based on the first distance, the second distance, the third distance, and the fourth distance, determine the length deviation obtained in this iteration; Based on the length deviation obtained in this iteration, the distance deviation between the newly added transformed trajectory point and the corresponding three-way geomagnetic isoline, and the distance deviation between the repeated transformed trajectory point and the corresponding three-way geomagnetic isoline obtained in the previous iteration, determine the matching error.

[0117] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this application. A person of ordinary skill in the art can understand and implement it without creative efforts.

[0118] Based on the same inventive concept, an embodiment of this application also provides a computer device 900. Referring to Figure 9 as shown, it is a schematic structural diagram of a computer device shown in an exemplary embodiment of this application, including: A processor 910, a memory 920, and a bus 930. Among them, the memory 920 is used to store execution instructions, including an internal memory 921 and an external memory 922; here, the internal memory 921 is also called the main memory, which is used to temporarily store the operation data in the processor 910 and the data exchanged with the external memory 922 such as a hard disk. The processor 910 exchanges data with the external memory 922 through the internal memory 921.

[0119] In the embodiment of this application, the memory 920 is specifically used to store the application program code for implementing the solution of this application, and is controlled by the processor 910 to execute. That is, when the electronic device 900 runs, the processor 910 communicates with the memory 920 through the bus 930, or the processor 910 communicates with the memory 920 in other ways, so that the processor 910 executes the application program code stored in the memory 920, and then executes the steps of the trajectory correction method described in any of the foregoing embodiments.

[0120] Among them, the memory 920 can be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), etc.

[0121] The processor 910 may be an integrated circuit chip with the ability to process signals. The above-mentioned processor may be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. It can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0122] It can be understood that the structure schematically shown in the embodiments of the present application does not constitute a specific limitation on the electronic device 900. In other embodiments of the present application, the electronic device 900 may include more or fewer components than shown in the figure, or combine certain components, or split certain components, or have different component arrangements. The components shown in the figure can be implemented in hardware, software, or a combination of software and hardware.

[0123] The embodiments of the present disclosure also provide a computer-readable storage medium, on which a computer program is stored. When the computer program is run by a processor, it executes the steps of the trajectory correction method described in the above method embodiments. Among them, the storage medium may be a volatile or non-volatile computer-readable storage medium.

[0124] The embodiments of the present disclosure also provide a computer program product, on which a computer program is stored. When the computer program is run by a processor, it executes the steps of the trajectory correction method provided in any of the above embodiments of the present disclosure. For details, please refer to the above method embodiments and will not be elaborated here.

[0125] Among them, the above computer program product can be specifically implemented in the form of hardware, software, or a combination thereof. In an optional embodiment, the computer program product is specifically embodied as a computer storage medium, which may be a volatile or non-volatile computer-readable storage medium. In another optional embodiment, the computer program product is specifically embodied as a software product, such as a Software Development Kit (SDK), etc.

[0126] Moreover, embodiments of the subject matter and the functional operations described in this specification can be implemented in: digital electronic circuitry, tangibly embodied computer software or firmware, computer hardware including the structures disclosed in this specification and their structural equivalents, or one or more of them in combination. Embodiments of the subject matter described in this specification can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a tangible non-transitory program carrier to be executed by, or to control the operation of, data processing apparatus. Alternatively or additionally, the program instructions can be encoded on an artificially generated propagated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal, that is generated to encode and transmit information to the appropriate receiver apparatus for execution by the data processing apparatus. A computer storage medium may be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or a combination of one or more of them.

[0127] The processes and logical flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform the functions corresponding by operating on input data and generating output. The processes and logical flows can also be performed by, or the apparatus can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).

[0128] Suitable computers for executing computer programs include, by way of example, both general and / or special purpose microprocessors, or any other type of central processing unit. Generally, a central processing unit will receive instructions and data from a read only memory and / or a random access memory. Basic elements of a computer include a central processing unit for performing or executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include one or more mass storage devices for storing data, such as magnetic disks, magneto-optical disks, or optical disks, etc., or the computer will be operatively coupled to such mass storage devices to receive data therefrom or to transfer data thereto, or both. However, a computer need not have such devices. In addition, a computer may be embedded in another device, such as a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a global positioning system (GPS) receiver, or a portable storage device such as a universal serial bus (USB) flash drive, to name just a few.

[0129] Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and memory devices, such as semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices), magnetic disks (e.g., internal hard disks or removable disks), magneto-optical disks, and CD-ROM and DVD-ROM disks. The processor and the memory may be supplemented by, or incorporated in, special purpose logic circuitry.

[0130] Although this specification contains many specific implementation details, these should not be construed as limiting the scope of any invention or the scope of what is claimed, but rather as mainly describing the features of specific embodiments of particular inventions. Certain features that are described in multiple embodiments in this specification may also be implemented in combination in a single embodiment. On the other hand, the various features described in a single embodiment may also be implemented separately in multiple embodiments or in any suitable sub-combination. In addition, although features may operate in certain combinations as described above and even be claimed as such initially, one or more features from a claimed combination may in some cases be removed from the combination, and the claimed combination may be directed to a sub-combination or a variation of a sub-combination.

[0131] Similarly, although operations are depicted in the drawings in a particular order, this should not be understood as requiring that the operations be performed in the particular order shown or sequentially, or that all illustrated operations be performed, to achieve the desired result. In some cases, multitasking and parallel processing may be advantageous. In addition, the separation of the various system modules and components in the above embodiments should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

[0132] Thus, specific embodiments of the subject matter have been described. Other embodiments are within the scope of the appended claims. In some cases, the acts recited in the claims may be performed in a different order and still achieve the desired result. In addition, the processes depicted in the drawings are not necessarily in the particular order or sequential order shown to achieve the desired result. In some implementations, multitasking and parallel processing may be advantageous.

[0133] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present application shall be included within the scope of protection of the present application.

Claims

1. A trajectory correction method, characterized in that, The method includes: Obtaining an inertial navigation trajectory for a target object; Determining a plurality of target inertial navigation trajectory points located in a target time window from the inertial navigation trajectory, and transforming each of the target inertial navigation trajectory points through a transformation matrix to obtain transformed trajectory points respectively corresponding to each of the target inertial navigation trajectory points; Determining a matching error of the transformed trajectory points relative to estimated trajectory points of the target object according to a length deviation between a first trajectory formed by the plurality of target inertial navigation trajectory points and a second trajectory formed by the plurality of transformed trajectory points, and a distance deviation between each of the transformed trajectory points and corresponding triaxial geomagnetic isolines; the estimated trajectory points are generated based on the transformed trajectory points; Moving the target time window on the inertial navigation trajectory at a target time interval, returning to determine the matching error until a preset iteration condition is satisfied, and generating a target correction trajectory based on the estimated trajectory points corresponding to each target time window when the preset iteration condition is satisfied; Wherein, the target correction trajectory is used to correct the inertial navigation trajectory; the initial value of the transformation matrix used in the first iteration is a preset transformation matrix, and the initial value of the transformation matrix used in the remaining iterations is a guiding matrix generated in the previous iteration, and the guiding matrix is generated based on the last transformed trajectory point among the transformed trajectory points obtained in the previous iteration, the last target inertial navigation trajectory point among the target inertial navigation trajectory points used in the previous iteration, and the intersection point of the triaxial geomagnetic isolines corresponding to the last target inertial navigation trajectory point.

2. The method according to claim 1, wherein The guiding matrix is determined through the following steps: Based on the last transformed trajectory point among the transformed trajectory points obtained in the previous iteration, determining a target guiding point, and constructing a guiding area with the target guiding point as the center; Searching for the triaxial geomagnetic isolines located in the guiding area according to a target window and a target step length to obtain at least one intersection point; Screening out a target intersection point closest to the target guiding point from the at least one intersection point; Generating the guiding matrix according to the rotation angle and translation amount of the target intersection point relative to the last target inertial navigation trajectory point.

3. The method according to claim 2, wherein The determining the target guiding point based on the last transformed trajectory point among the transformed trajectory points obtained in the previous iteration includes: Determining the trajectory point distance between the last transformed trajectory point and the last target inertial navigation trajectory point; Obtaining a historical trajectory point distance, where the historical trajectory point distance is the distance between the historical last target inertial navigation trajectory point and the historical last transformed trajectory point corresponding to a target historical moment; Determining a first distance deviation between the trajectory point distance and the historical trajectory point distance; Determining the target guiding point according to the comparison result between the first distance deviation and a first distance threshold.

4. The method according to claim 3, characterized in that, The determining the target guiding point according to the comparison result between the first distance deviation and the first distance threshold includes: In the case where the first distance deviation is greater than or equal to the first distance threshold, determining a historical transformed trajectory point located before the last transformed trajectory point, and determining the target guiding point based on the historical transformed trajectory point; When the first distance is less than the first distance threshold, the last transformed trajectory point is used as the target guiding point.

5. The method according to claim 4, characterized in that Determining the target guiding point based on the historical transformed trajectory points includes: Determining the longitude coordinate of the target guiding point based on the longitude coordinate of the historical transformed trajectory point and a target multiple of the speed of the historical transformed trajectory point in the longitude direction, where the target multiple is determined based on the time interval between the historical transformed trajectory point and the last transformed trajectory point; Determining the latitude coordinate of the target guiding point based on the latitude coordinate of the historical transformed trajectory point and the target multiple of the speed of the historical transformed trajectory point in the latitude direction.

6. The method according to claim 2, wherein Searching for at least one intersection point of the three-way geomagnetic isolines located in the guiding area according to a target window and a target step size includes: Moving and intercepting a target window on the three-way geomagnetic isolines in the guiding area according to the target step size; For the target window moved to any position according to the target step size, when the image attribute parameters of the target window meet the preset conditions, the center point of the target window is determined as a candidate intersection point; Performing clustering processing on the candidate intersection points to obtain at least one intersection point.

7. The method according to claim 2, characterized in that, The method further includes: Determining a second distance deviation between the last transformed trajectory point obtained in the current iteration and the target intersection point; When the second distance deviation is greater than or equal to a second distance threshold, performing weighted processing on the last transformed trajectory point and the target intersection point obtained in the current iteration to obtain an adjusted last transformed trajectory point, and replacing the last transformed trajectory point obtained in the current iteration with the adjusted last transformed trajectory point; When the second distance deviation is less than the second distance threshold, replacing the last transformed trajectory point obtained in the current iteration with the target intersection point obtained in the current iteration.

8. The method according to any one of claims 1-7, characterized in that There is partial overlap between the target inertial navigation trajectory points used in two adjacent iterations; the length of the first trajectory is determined according to the distance between each pair of adjacent target inertial navigation trajectory points, and the length of the second trajectory is determined according to the distance between each pair of adjacent transformed trajectory points; During the process of the remaining iterations except the first iteration, determining the matching error between the transformed trajectory point and the estimated trajectory point of the target object according to the length deviation between the first trajectory formed by multiple target inertial navigation trajectory points and the second trajectory formed by multiple transformed trajectory points, and the distance deviation between each transformed trajectory point and the corresponding three-way geomagnetic isoline includes: Determining the newly added target inertial navigation trajectory points and the repeated target inertial navigation trajectory points in the current iteration relative to the previous iteration; For each newly added target inertial navigation trajectory point, determining the distance between the newly added target inertial navigation trajectory point and the previous adjacent target inertial navigation trajectory point of the newly added target inertial navigation trajectory point as a first distance, and for each newly added transformed trajectory point corresponding to the newly added target inertial navigation trajectory point, determining the distance between the newly added transformed trajectory point and the previous adjacent transformed trajectory point of the newly added transformed trajectory point as a second distance; Obtain the distance between each pair of adjacent ones of the repeated target inertial trajectory points obtained in the previous iteration as the third distance, and obtain the distance between each pair of adjacent ones of the repeated transformed trajectory points obtained in the previous iteration as the fourth distance, where the repeated transformed trajectory points are the transformed trajectory points corresponding to the repeated target inertial trajectory points; Based on the first distance, the second distance, the third distance, and the fourth distance, determine the length deviation obtained in this iteration; Based on the length deviation obtained in this iteration, the distance deviation between the newly added transformed trajectory point and the corresponding three-way geomagnetic isoline, and the distance deviation between the repeated transformed trajectory point and the corresponding three-way geomagnetic isoline obtained in the previous iteration, determine the matching error.

9. A trajectory correction device, characterized in that, The device includes: A trajectory acquisition module, configured to acquire an inertial trajectory of a target object; A trajectory transformation module, configured to determine a plurality of target inertial trajectory points located in a target time window from the inertial trajectory, and transform each of the target inertial trajectory points through a transformation matrix to obtain the transformed trajectory points respectively corresponding to each of the target inertial trajectory points; An error determination module, configured to determine the matching error of the transformed trajectory point with respect to the estimated trajectory point of the target object according to the length deviation between the first trajectory formed by a plurality of the target inertial trajectory points and the second trajectory formed by a plurality of the transformed trajectory points, and the distance deviation between each of the transformed trajectory points and the corresponding three-way geomagnetic isoline; the estimated trajectory point is generated based on the transformed trajectory point; A trajectory generation module, configured to move the target time window on the inertial trajectory at a target time interval, return to determine the matching error until a preset iteration condition is satisfied, and generate a target correction trajectory based on the estimated trajectory points corresponding to each target time window passed when the preset iteration condition is satisfied; Wherein, the target correction trajectory is used to correct the inertial trajectory; the initial value of the transformation matrix used in the first iteration is a preset transformation matrix, and the initial value of the transformation matrix used in the remaining iterations is the guiding matrix generated in the previous iteration, and the guiding matrix is generated based on the last transformed trajectory point among the transformed trajectory points obtained in the previous iteration, the last target inertial trajectory point among the target inertial trajectory points used in the previous iteration, and the intersection point of the three-way geomagnetic isoline corresponding to the last target inertial trajectory point.

10. A computer device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the trajectory correction method according to any one of claims 1 to 8.

11. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the steps of the trajectory correction method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Isoline matching method based on sliding window data backtracking

    CN114061591A

  • Contour line matching method based on sliding window data backtracking

    US20230332899A1

  • Determining Confidence in Magnetic-Sensor Data

    US20250052576A1