Positioning model tuning method, electronic equipment and storage medium
By extracting and storing data within the historical period of the GNSS and INS fusion positioning model, tuning the model, and allowing positioning and playback at any time, the problem of low tuning efficiency caused by positioning result dependence and data loss is solved. , realizes efficient and accurate positioning model tuning.
Patent Information
- Application Number
- CN202411538964.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-31
- Publication Date
- 2025-02-07
AI Technical Summary
In the tuning process of the GNSS and INS fusion positioning model, since the positioning results depend on the results of the previous moment, it is necessary to start positioning and playback from the beginning moment, and data loss will lead to errors, affecting the tuning efficiency.
By extracting and storing observation data and state data in the historical period, the positioning model is tuned based on these data, allowing any time point to be selected in the historical period for positioning replay, reducing the dependence on the positioning results at the previous moment.
The tuning efficiency of the positioning model is improved, the time and data amount required for tuning is reduced, errors caused by data loss are avoided, and more accurate and efficient tuning of the positioning model is achieved.
Smart Images

Figure CN119395735A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of positioning technology, and in particular to a positioning model tuning method, electronic equipment and storage medium. Background Art
[0002] The global navigation satellite system (GNSS) and inertial navigation system (INS) integrated positioning system is a system that uses GNSS and INS for joint positioning. The system takes advantage of the complementary functions of GNSS and INS to improve the accuracy and performance of positioning and navigation.
[0003] In the related art, when using the GNSS and INS fusion positioning model for positioning, it is necessary to tune the GNSS and INS fusion positioning model. First, during the model operation, satellite observations and gyroscope observations are collected, and then the GNSS and INS fusion positioning model is tuned. Based on the collected satellite observations, gyroscope observations and the tuned GNSS and INS fusion positioning model, positioning playback is performed, and the tuning effect is observed based on the positioning playback results until a model that meets the tuning expectations is obtained.
[0004] However, in the above-mentioned tuning process, since each positioning result of the GNSS and INS fusion positioning model depends on the positioning result of the previous moment, it is necessary to start the positioning playback from the starting moment when performing positioning playback. If there is data loss when collecting satellite observations and gyroscope observations, it will also cause errors in the positioning results obtained during positioning playback, and multiple tunings are required to obtain a model that meets the tuning expectations, thus affecting the efficiency of the tuning. Summary of the invention
[0005] The present application provides a positioning model tuning method, electronic device and storage medium to solve the problem that each positioning result of the fusion positioning model of GNSS and INS depends on the positioning result of the previous moment, so it is necessary to start the positioning playback from the starting moment when performing positioning playback, and if there is data loss when collecting satellite observations and gyroscope observations, it will also cause errors in the positioning results obtained during positioning playback, and then multiple tunings are required to obtain a model that meets the tuning expectations, thereby affecting the tuning efficiency, thereby achieving the purpose of improving the tuning efficiency.
[0006] In a first aspect, the present application provides a method for optimizing a positioning model, comprising:
[0007] In the process of obtaining the first positioning result through the first positioning model within the historical period, extracting and storing historical model data from the first positioning model according to a preset period, the historical model data includes observation data and state data corresponding to one or more extraction time points, the observation data includes the observation input to the first positioning model at the extraction time point, and the state data includes the state parameters of the first positioning model at the extraction time point;
[0008] The first positioning model is tuned according to the historical model data to obtain an optimized positioning model.
[0009] Through the positioning model tuning method provided by the first aspect, in the process of obtaining the first positioning result through the first positioning model within the historical period, the historical model data is extracted and stored from the first positioning model according to a preset period, so as to facilitate tuning the first positioning model based on the historical model data, wherein the historical model data includes one or more observation data and state data corresponding to the extraction time point. The observation data includes the observation input to the first positioning model at the extraction time point. The state data includes the state parameters of the first positioning model at the extraction time point. Based on the historical model data, the first positioning model is tuned, so that when positioning playback, a time point can be selected in the historical period, and positioning playback can be performed based on the satellite observations, gyroscope observations and state parameters corresponding to the time point to obtain the playback result, thereby completing the tuning, without starting the positioning playback from the starting time in the historical period, and without relying on the positioning result of the previous moment, but selecting a suitable time point according to the needs to start the positioning playback to complete the tuning, thereby improving the tuning efficiency.
[0010] In a possible design, the first positioning model is tuned according to the historical model data to obtain an optimized positioning model, including:
[0011] Optimizing the first positioning model to obtain a second positioning model;
[0012] Perform positioning playback according to the historical model data, the second positioning model and the preset time point to obtain the second positioning result;
[0013] Determining a tuning error of a second positioning model according to the first positioning result and the second positioning result;
[0014] When the tuning error meets the expected tuning target, the second positioning model is determined as the optimized positioning model;
[0015] When the tuning error does not meet the expected tuning target, the first positioning model continues to be tuned until an optimized positioning model is obtained.
[0016] In a possible design, positioning playback is performed according to the historical model data, the second positioning model and the preset time point to obtain the second positioning result, including:
[0017] Acquire first positioning playback data and second positioning playback data from the historical model data, the first positioning playback data including observation data corresponding to the positioning playback time point, the second positioning playback data including state data corresponding to the positioning playback time point, the positioning playback time point being the extraction time point closest to the preset time point;
[0018] The second positioning playback data is determined as the state parameter of the second positioning model, and the first positioning playback data is input into the second positioning model to obtain a second positioning result.
[0019] In one possible design, the first positioning model includes a satellite positioning module, an inertial navigation positioning module and a fusion positioning module.
[0020] In a possible design, extracting and storing historical model data from the first positioning model according to a preset period includes:
[0021] According to a preset cycle, extract the gyroscope observation quantity input to the inertial navigation and positioning module and the satellite observation quantity input to the satellite positioning module, extract the first state information of the satellite positioning module, the second state information of the inertial navigation and positioning module and the third state information of the fusion positioning module;
[0022] The gyroscope observation quantity, the satellite observation quantity, the first state information, the second state information and the third state information are packaged and stored according to the extraction time point.
[0023] In one possible design, the first state information includes the rate of change of the observed characteristic value, the observed value estimate, the least squares positioning result, the system clock error, and the state vector of the satellite Kalman filter; the second state information includes the zero bias estimate, the lever arm estimate, and the temperature compensation table; and the third state information includes the state vector of the fused Kalman filter.
[0024] In a possible design, determining a tuning error of the second positioning model according to the first positioning result and the second positioning result includes:
[0025] According to the preset indicators, the first positioning result and the second positioning result are respectively compared with the true value result to obtain a tuning statistical result, where the tuning statistical result is used to indicate a first error between the first positioning result and the true value result, and a second error between the second positioning result and the true value result;
[0026] A tuning error is determined according to the first error and the second error.
[0027] In a second aspect, the present application provides a positioning model tuning device, which is a module for executing the positioning model tuning method in the first aspect and any possible design of the first aspect.
[0028] In a third aspect, the present application provides an electronic device comprising a memory and a processor, wherein the memory stores a computer executable program or instructions, and when the processor executes the computer executable program or instructions, it can implement a method for tuning the positioning model in the first aspect and any possible design of the first aspect.
[0029] In a fourth aspect, the present application provides an electronic device, comprising a processor, wherein when the processor executes a computer executable program or instruction in a memory, the processor implements a method for tuning a positioning model as in the first aspect and any possible design of the first aspect.
[0030] In a fifth aspect, the present application provides a computer-readable storage medium, on which a computer executable program or instructions are stored. When the computer executable program or instructions are executed by a processor, a method for tuning the positioning model provided in the first aspect of an embodiment of the present application and any possible design of the first aspect is implemented.
[0031] In a sixth aspect, the present application provides a computer program product, comprising: execution instructions, the execution instructions are stored in a readable storage medium, at least one processor of an electronic device can read the execution instructions from the readable storage medium, and at least one processor executes the execution instructions so that the electronic device implements the method in the first aspect and any possible design of the first aspect.
[0032] The above description is only an overview of the technical solution of the embodiment of the present application. In order to more clearly understand the technical means of the embodiment of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the embodiment of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] Figure 1 A flowchart of a positioning model tuning method provided in one embodiment of the present application.
[0034] Figure 2 A schematic diagram of the structure of a first positioning model provided in one embodiment of the present application.
[0035] Figure 3 A flowchart of a positioning model tuning method provided in one embodiment of the present application.
[0036] Figure 4 A schematic diagram of the structure of a first positioning model provided in one embodiment of the present application.
[0037] Figure 5 A flow chart of a method for obtaining a second positioning result provided in one embodiment of the present application.
[0038] Figure 6 A schematic diagram of the position of a preset time point provided in an embodiment of the present application.
[0039] Figure 7 A flow chart of a method for extracting and storing historical model data provided in one embodiment of the present application.
[0040] Figure 8 A flow chart of a method for determining a tuning error of a second positioning model provided in one embodiment of the present application.
[0041] Fig. 9 A schematic diagram of the structure of a positioning model tuning device provided in one embodiment of the present application.
[0042] Fig.10 A schematic diagram of the structure of an electronic device provided in one embodiment of the present application.
[0043] Fig.11 A schematic diagram of the structure of an electronic device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0044] In this application, "at least one" means one or more, and "plurality" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c alone can represent: a, b, c, a and b, a and c, or a, b, and c, where a, b, and c can be single or multiple. In addition, the terms "first" and "second" are used for descriptive purposes only and cannot be understood as indicating or implying relative importance.
[0045] The directions or positional relationships indicated by terms such as "center", "longitudinal", "lateral", "up", "down", "left", "right", "front", and "back" are based on the directions or positional relationships shown in the accompanying drawings and are only for the convenience of describing the present application and simplifying the description. They do not indicate or imply that the device or element referred to must have a specific direction, be constructed and operated in a specific direction, and therefore should not be understood as a limitation on the present application.
[0046] The terms "connected" and "connected" should be understood in a broad sense. For example, the "connected" or "connected" of a circuit structure can refer to not only physical connection, but also electrical connection or signal connection. For example, it can be directly connected, that is, physically connected, or indirectly connected through at least one intermediate element, as long as the circuit is connected, or it can be the internal connection of two elements; signal connection can refer to signal connection through a circuit or through a media medium, such as radio waves. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.
[0047] Exemplarily, the present application provides a method, device, electronic device, storage medium, program and chip for tuning a positioning model. In the process of obtaining a first positioning result through a first positioning model within a historical period, the satellite observations and gyroscope observations input into the first positioning model, as well as the state parameters of each module of the first positioning model are extracted and stored, and the first positioning model is tuned, so that during positioning playback, a time point can be selected in the historical period and positioning playback can be performed based on the satellite observations, gyroscope observations and state parameters corresponding to the time point to obtain a playback result, and the tuning effect is determined by the playback result and the first positioning result. This method does not need to start positioning playback from the starting moment, nor does it need to rely on the positioning result of the previous moment, but selects a suitable time point to start positioning playback according to the needs of the debugger, thereby improving the tuning efficiency.
[0048] The positioning model tuning method provided in the present application may be executed by an electronic device, or by a tuning device in the electronic device.
[0049] Among them, the electronic device can be a server, a desktop computer, a mobile phone, a tablet computer, a laptop computer, a wearable device, a vehicle-mounted device, an augmented reality (AR) / virtual reality (VR) device, etc.
[0050] The tuning device may be implemented by a combination of software and / or hardware. For example, the tuning device may be an application (APP), a web page, or a public account. In order to simplify the description, the embodiment of the present application is described by taking the execution of the tuning device as an example.
[0051] Next, combine Figure 1 , the tuning method of the positioning model provided in the embodiment of the present application is described.
[0052] See also Figure 1 , Figure 1 The following is a flow chart of a method for optimizing a positioning model provided in one embodiment of the present application. Figure 1As shown, the method includes:
[0053] S101 . In a process of obtaining a first positioning result by using a first positioning model within a historical period, extract and store historical model data from the first positioning model according to a preset period.
[0054] Among them, the first positioning model is the model that needs to be optimized.
[0055] Before tuning the first positioning model, it is necessary to collect data generated during the actual operation of the first positioning model in a historical period, so as to perform tuning according to the collected data and verify the tuning result.
[0056] The historical period is the period during which the first positioning model is run to obtain the first positioning result.
[0057] For example, the first positioning model is run for positioning from 8:00 am to 10:00 am on January 1, 2024, and the historical period is from 8:00 am to 10:00 am on January 1, 2024.
[0058] Of course, the historical period may also be a partial period for running the first positioning model to obtain the first positioning result, such as 8:00 am to 9:00 am on January 1, 2024 in the above example, and this application does not impose any restrictions on this.
[0059] The first positioning result includes all positioning results obtained by the first positioning model in the historical period. The number of positioning results varies based on different positioning cycles, where the positioning cycle is the cycle for obtaining positioning results by the first positioning model.
[0060] Based on this, in the process of actually running the first positioning model, the tuning device can extract and store historical model data from the first positioning model according to a preset period.
[0061] The preset period is a period during which the tuning device extracts historical model data from the first positioning model.
[0062] The preset period may be in various forms.
[0063] As a feasible implementation manner, the preset period may be N times the positioning period, where N is an integer greater than or equal to 1.
[0064] As another feasible implementation method, the preset period can be flexibly set based on actual conditions such as processor load and transmission bandwidth. When the processor load is large and / or the transmission bandwidth is tight, the preset period can be set larger to relieve the pressure on the processor or bandwidth. When the processor load is small and / or the transmission bandwidth is loose, the preset period can be set smaller, so that the tuning device can extract more data, which helps to improve the accuracy of subsequent tuning and positioning playback based on historical model data.
[0065] The historical model data includes observation data and state data corresponding to one or more extraction time points.
[0066] The observation data includes observations input into the first positioning model at the extraction time point.
[0067] The state data includes state parameters of the first positioning model at the extraction time point.
[0068] For example, the observation quantity may be a satellite observation quantity, a gyroscope observation quantity, etc.
[0069] The one or more extraction time points refer to the time when the tuning device extracts the historical model data from the first positioning model, and the extraction time points are related to a preset period.
[0070] Among them, the satellite observation is the observation collected by the GNSS receiver through the satellite. After collecting the satellite observation, the GNSS receiver inputs the satellite observation into the first positioning model. The gyroscope observation is the observation collected by the gyroscope device. After collecting the gyroscope observation, the gyroscope device inputs the gyroscope observation into the first positioning model. Thus, the satellite observation and the gyroscope observation can be fused through the first positioning model to obtain the positioning result.
[0071] During the fusion process, each module of the first positioning model will generate state parameters.
[0072] For example, the first positioning model may include a satellite positioning module, an inertial navigation positioning module, and a fusion positioning module.
[0073] The status parameters may include status parameters of a satellite positioning module, status parameters of an inertial navigation positioning module, and status parameters of a fusion positioning module.
[0074] The state parameters can reflect the model parameters of the corresponding module of the first positioning model at the extraction time point. Based on the model parameters, the tuning device can restore the state of the first positioning model at the extraction time point.
[0075] In some examples, the periods at which the tuning device extracts the observation data and the state data may be the same or different. That is, the tuning device may extract the observation data and the state data at the same period, or the tuning device may extract the observation data and the state data respectively at different periods, which is not limited in this application.
[0076] Thus, after extracting the observation data and state data, the tuning model can store the observation data and state data based on the extraction time point to obtain historical model data. The tuning model can store the historical model data in a memory, and this application does not limit this.
[0077] For example, the tuning module extracts observation data 1 and state data 1 from the first positioning model at time T1, extracts observation data 2 and state data 2 from the first positioning model at time T2, extracts observation data 3 and state data 3 from the first positioning model at time T3, extracts observation data 4 and state data 4 from the first positioning model at time T4, and extracts observation data 5 and state data 5 from the first positioning model at time T5. The tuning module stores the observation data, state data, and extraction time point at the same extraction time point in the memory, and obtains the historical model data shown in Table 1:
[0078] Table 1
[0079]
[0080]
[0081] Based on this, in the process of obtaining the first positioning result through the first positioning model within the historical period, the tuning model extracts and stores historical model data from the first positioning model according to a preset period, so as to optimize the first positioning model based on the historical model data.
[0082] S102: Optimize the first positioning model according to the historical model data to obtain an optimized positioning model.
[0083] In some instances, such as Figure 2 As shown, the first positioning model includes a satellite positioning module, an inertial navigation positioning module and a fusion positioning module.
[0084] The satellite positioning module is used to process the satellite observations to obtain satellite positioning results, and input the satellite positioning results into the fusion positioning module. The inertial navigation positioning module is used to process the gyroscope observations to obtain inertial navigation positioning results, and input the inertial navigation positioning results into the fusion positioning module. The fusion positioning module is used to fuse the satellite positioning results and the inertial navigation positioning results to obtain the positioning results.
[0085] The tuning device can tune the satellite positioning module, the inertial navigation positioning module and the fusion positioning module respectively.
[0086] Specifically, for the satellite positioning module, the tuning device can tune the weights of satellite observations, reduce the weights of problematic satellite observations, and increase the weights of observations with higher accuracy. The tuning device can also optimize the parameters of the least squares method, increase the model calculation time of the least squares method, and thus optimize the output results of the satellite positioning module.
[0087] For the inertial navigation and positioning module, the tuning device can adjust the parameters of the module used to process the gyroscope observation values, thereby optimizing the output result of the inertial navigation and positioning module.
[0088] For the fusion positioning module, the tuning device can adjust the weights of the satellite positioning results and the inertial navigation positioning results input into the fusion positioning module respectively, so as to optimize the output results of the fusion positioning module.
[0089] Therefore, the tuning device tunes the first positioning model according to the actual operating status of the first positioning model.
[0090] In some examples, the first positioning model includes a satellite positioning module and a fusion positioning module.
[0091] The satellite positioning module is used to process the satellite observations to obtain satellite positioning results, and input the satellite positioning results to the fusion positioning module. The fusion positioning module is used to receive the inertial navigation positioning results input from the outside, and fuse the satellite positioning results and the inertial navigation positioning results to obtain the positioning results.
[0092] The tuning device can tune the satellite positioning module and the fusion positioning module separately. For details on how to tune, please refer to Figure 2 Example.
[0093] In some examples, the first positioning model includes an inertial navigation positioning module and a fusion positioning module.
[0094] The inertial navigation positioning module is used to process the gyroscope observations to obtain the inertial navigation positioning results, and input the inertial navigation positioning results to the fusion positioning module. The fusion positioning module is used to receive the satellite positioning results input from the outside, and fuse the satellite positioning results and the inertial navigation positioning results to obtain the positioning results.
[0095] The tuning device can tune the inertial navigation positioning module and the fusion positioning module separately. For the specific tuning method, please refer to Figure 2 Example.
[0096] In some examples, the first positioning model includes an inertial navigation positioning module.
[0097] The inertial navigation positioning module is used to process the gyroscope observations to obtain the inertial navigation positioning results.
[0098] The tuning device tunes the inertial navigation and positioning module. For details on how to tune, please refer to Figure 2 Example.
[0099] In some examples, the first positioning model includes a satellite positioning module.
[0100] The satellite positioning module is used to process satellite observations to obtain satellite positioning results.
[0101] The tuning device tunes the satellite positioning module. For details on how to tune, please refer to Figure 2 Example.
[0102] In order to determine whether the tuning effect meets the tuning expectations, the tuning device also needs to perform positioning playback based on historical model data to verify the tuning effect.
[0103] Specifically, the tuning device may select a time point in the historical period to start positioning playback.
[0104] In some examples, the tuning device can determine from the historical model data whether there are missing observations extracted. If there are missing observations, the tuning device can determine the extraction time point after the missing time point as the positioning playback time point, and perform positioning playback from this time point to obtain the playback result, thereby avoiding the impact of missing observations on the playback result, thereby improving the accuracy of the playback result, avoiding multiple positioning playbacks, and helping to improve the tuning efficiency.
[0105] In other examples, the tuning device can select a time point such as 1 / 2 or 3 / 4 in a historical period as a positioning playback time point according to operator needs, and start positioning playback from this time point to obtain a playback result, thereby avoiding positioning playback from the start time of the historical period, reducing the time consumed by positioning playback, and reducing the amount of data required to run positioning playback, thereby improving positioning playback efficiency, and further helping to improve tuning efficiency.
[0106] After obtaining the playback result, the tuning device can compare the playback result, the first positioning result and the true value result to determine the error between the playback result and the true value result, and the error between the first positioning result and the true value result, thereby determining the tuning effect.
[0107] For example, if the error between the first positioning result and the true value result is smaller than the error between the playback result and the true value result, and the absolute value of the difference between the error between the first positioning result and the true value result and the error between the playback result and the true value result is greater than a preset threshold, it indicates that the tuning has achieved the expected tuning effect.
[0108] If the error between the first positioning result and the true value result is greater than the error between the playback result and the true value result, or the absolute value of the difference between the error between the first positioning result and the true value result and the error between the playback result and the true value result is less than or equal to a preset threshold, it indicates that the tuning has not achieved the expected tuning effect.
[0109] Among them, the expected tuning effect can be set based on experience.
[0110] Based on this, when the tuning achieves the expected tuning effect, the tuning device outputs the optimized positioning model. When the tuning does not achieve the expected tuning effect, the tuning device continues to tune the first positioning model until the tuning achieves the expected tuning effect, thereby completing the tuning.
[0111] In an embodiment of the present application, in the process of obtaining the first positioning result through the first positioning model within the historical period, the tuning device extracts and stores the historical model data from the first positioning model according to a preset period, so as to optimize the first positioning model based on the historical model data, wherein the historical model data includes one or more observation data and state data corresponding to the extraction time point. The observation data includes the observation input to the first positioning model at the extraction time point. The state data includes the state parameters of the first positioning model at the extraction time point. The tuning device tunes the first positioning model based on the historical model data, so that when positioning playback, the tuning device can select a time point in the historical period, and perform positioning playback based on the satellite observations, gyroscope observations and state parameters corresponding to the time point to obtain the playback result, thereby completing the tuning, without starting the positioning playback from the starting time in the historical period, and without relying on the positioning result of the previous moment, but selecting a suitable time point to start positioning playback according to the needs to complete the tuning, thereby improving the tuning efficiency.
[0112] Based on the above exemplary description, in S102, the tuning device may be configured as follows: Figure 3 The method shown in FIG. 1 is used to obtain the optimized positioning model.
[0113] See also Figure 3 , Figure 3 The following is a flow chart of a method for optimizing a positioning model provided in one embodiment of the present application. Figure 3 As shown, S102 may be performed through S102A to S102E as follows:
[0114] S102A: Optimize the first positioning model to obtain a second positioning model.
[0115] Among them, the first positioning model may include a satellite positioning module, an inertial navigation positioning module and a fusion positioning module.
[0116] In some examples, such as Figure 4 As shown, the satellite positioning module includes a weight adjustment module, a least square positioning module, and a first Kalman filter module. The inertial navigation positioning module includes a calibration compensation module and an inertial navigation inference module.
[0117] Specifically, for the weight adjustment module, the tuning device can identify observations with large errors according to the actual positioning situation and the characteristic values of the satellite observations, such as observations with too low elevation angles, too large variance values, and abnormal carrier-to-noise ratio changes. The tuning device increases the weights of observations with higher accuracy, reduces the weights of observations with larger errors, or directly refuses observations with larger errors to participate in positioning, thereby completing the tuning of the weight adjustment module.
[0118] For the least squares positioning module, the tuning module can adjust the iterative exit threshold of the least squares method and reduce the model calculation time to improve the positioning efficiency, thereby completing the tuning of the least squares positioning module.
[0119] For the first Kalman filter module, the tuning module can adjust the weight matrix of the module according to the actual deviation of the satellite observation quantity, improve the output quality of the first Kalman filter module, and thus complete the tuning of the first Kalman filter module.
[0120] For the calibration and compensation module, the tuning module can adjust the parameters of the zero bias estimation algorithm, the lever arm estimation algorithm and the temperature estimation algorithm, or directly replace the zero bias estimation algorithm, the lever arm estimation algorithm and the temperature estimation algorithm, so as to obtain the gyroscope compensation value more quickly and accurately, and calibrate the gyroscope observation quantity with higher precision, thereby completing the tuning of the calibration and compensation module.
[0121] For the fusion positioning module, the fusion positioning module includes a second Kalman filter module ( Figure 4 (not shown), the tuning device can adjust the weights of the satellite positioning results and the inertial navigation positioning results input to the second Kalman filter module respectively, optimize the output results of the second Kalman filter module, and thus complete the tuning of the fusion positioning module.
[0122] Based on this, the tuning device tunes each module of the first positioning model according to the actual operation status of the first positioning model to obtain the second positioning model.
[0123] S102B: Perform positioning playback according to the historical model data, the second positioning model and the preset time point to obtain a second positioning result.
[0124] Specifically, the tuning device may select a preset time point in the historical period, and perform positioning playback based on the preset time point.
[0125] In some examples, the tuning device can determine from the historical model data whether there are missing observations extracted. If there are missing observations, the tuning device can determine the latest time point among the missing time points as the preset time point, and determine the extraction time point after the preset time point that is closest to the preset time point as the positioning playback time point, and start positioning playback from the positioning playback time point to obtain a second positioning result, thereby avoiding the impact of missing observations on the playback result, thereby improving the accuracy of the playback result, avoiding multiple positioning playbacks, and helping to improve the tuning efficiency.
[0126] In other examples, the tuning device can select time points such as 1 / 2 and 3 / 4 in the historical period as preset time points according to operator needs, and determine the extracted time point after the preset time point that is closest to the preset time point as the positioning playback time point, and start positioning playback from the positioning playback time point to obtain a second positioning result, thereby reducing the time consumed by positioning playback and the amount of data required to run positioning playback, thereby improving the positioning playback efficiency, and further helping to improve the tuning efficiency.
[0127] Based on Table 1, for example, if the tuning device determines that the preset time point is T0, and the preset time point is between T1 and T2, the tuning device can determine T2 as the positioning playback time point, and start from time T2, using the data after time T2 in the historical model data for positioning playback, thereby obtaining a second positioning result.
[0128] The positioning period of the positioning playback may be consistent with the period of obtaining the first positioning result through the first positioning model, so that the tuning device can determine the tuning error according to the first positioning result and the second positioning result.
[0129] S102C: Determine a tuning error of the second positioning model according to the first positioning result and the second positioning result.
[0130] Specifically, the tuning device determines that after obtaining the playback result, the tuning device can compare the first positioning result, the second positioning result and the true value result respectively to determine the first error between the first positioning result and the true value result, and the second error between the second positioning result and the true value result. The tuning error can be the difference between the first error and the second error.
[0131] S102D. Determine whether the tuning error meets the expected tuning target.
[0132] If the tuning error meets the expected tuning target, the tuning device executes S102E; if the tuning error does not meet the expected tuning target, the tuning device executes S102A, that is, continues to tune the first positioning model until an optimized positioning model is obtained.
[0133] The expected tuning target is, for example: the second error is smaller than the first error, and the tuning error is smaller than or equal to a preset error value.
[0134] For example, if the preset error value is 10%, the first error between the first positioning result and the true value result is 20%, and the second error between the second positioning result and the true value result is 10%, then the tuning error is 10%, the second error is less than the first error, and the tuning error is less than or equal to the preset error value. Based on this, the tuning device can determine that the tuning error meets the expected tuning target. Otherwise, the tuning device can determine that the tuning error does not meet the expected tuning target.
[0135] When the tuning error does not meet the expected tuning target, the tuning device needs to continue to tune the first positioning model until an optimized positioning model is obtained.
[0136] S102E: Determine the second positioning model as the optimized positioning model.
[0137] When the tuning error meets the expected tuning target, it means that the tuning result of the second positioning model at this time is optimal, and the tuning device can determine the second positioning model as the optimized positioning model.
[0138] Based on the above exemplary description, in S102B, the tuning device can be as follows Figure 5 The method shown in FIG. 1 is used to obtain a second positioning result.
[0139] See also Figure 5 , Figure 5 A flow chart of a method for obtaining a second positioning result provided in an embodiment of the present application. Figure 5 As shown, the method includes:
[0140] S201. Acquire first positioning playback data and second positioning playback data from historical model data.
[0141] The first positioning playback data includes the observation data corresponding to the positioning playback time point.
[0142] The second positioning playback data includes the state parameters corresponding to the positioning playback time point.
[0143] The located playback time point is the extracted time point that is closest to the preset time point.
[0144] The tuning device obtains the observation data corresponding to the positioning playback time point from the historical model data to obtain the first positioning playback data, obtains the state data corresponding to the positioning playback time point to obtain the second positioning playback data.
[0145] Based on Table 1, for example, if the tuning device determines that the preset time point is T0, the relationship between T0, T1 and T2 is as follows: Figure 6 As shown, the tuning device can determine T2 as the positioning playback time point, determine the observation data 2 as the first playback data, and determine the state data 2 as the second playback data.
[0146] S202: Determine the second positioning playback data as the state parameter of the second positioning model, and input the first positioning playback data into the second positioning model to obtain a second positioning result.
[0147] Specifically, the tuning device determines the second positioning playback data as the state parameters of the second positioning model, thereby restoring the actual state of the second positioning model at the positioning playback time point. The tuning device inputs the first playback data into the second positioning model so as to start playback from the positioning playback time point to obtain the second positioning result.
[0148] In the above embodiment, the tuning device selects a suitable positioning playback time point to start playback, and restores the model state at the positioning playback time point based on the historical model data, so that the second positioning model can be played back from the positioning playback time point to obtain the second positioning result, and the second positioning result is consistent with the first positioning result in form, so that the tuning device can compare the first positioning result with the second positioning result. During the positioning playback process, the tuning device does not need to play back all the data from the beginning of the historical period, but selects a suitable positioning playback time point to start playback, thereby improving the tuning efficiency.
[0149] Based on the above exemplary description, the tuning device can be as follows Figure 7 The method shown extracts and stores historical model data.
[0150] See also Figure 7 , Figure 7 A flow chart of a method for extracting and storing historical model data provided in one embodiment of the present application. Figure 7 As shown, the method includes:
[0151] S301. According to a preset cycle, extract the gyroscope observation quantity input to the inertial navigation and positioning module and the satellite observation quantity input to the satellite positioning module, and extract the first state information of the satellite positioning module, the second state information of the inertial navigation and positioning module, and the third state information of the fusion positioning module.
[0152] In some examples, the first state information includes the rate of change of the observed value eigenvalue, the observed value estimate, the least squares positioning result, the system clock error, and the state vector of the satellite Kalman filter, the second state information includes the zero bias estimate, the lever arm estimate, and the temperature compensation table, and the third state information includes the state vector of the fused Kalman filter.
[0153] S302: Pack and store the gyroscope observation quantity, the satellite observation quantity, the first state information, the second state information and the third state information according to the extraction time point.
[0154] Based on this, the tuning device can quickly read the gyroscope observations, satellite observations, first state information, second state information and third state information corresponding to the extraction time point from the historical model data according to the extraction time point, without reading each piece of data, thereby further improving the tuning efficiency.
[0155] In addition to the above Figure 7 In addition to the method described in the embodiment, when the first positioning model includes a satellite positioning module and a fusion positioning module, the tuning device extracts the satellite observation quantity input into the satellite positioning module, extracts the first state information of the satellite positioning module and the third state information of the fusion positioning module, and stores the satellite observation quantity, the first state information and the third state information in packets according to the extraction time point.
[0156] When the first positioning model includes an inertial navigation positioning module and a fusion positioning module, the tuning device extracts the gyroscope observation quantity input into the inertial navigation positioning module, extracts the second state information of the inertial navigation positioning module and the third state information of the fusion positioning module, and stores the gyroscope observation quantity, the second state information and the third state information in packets according to the extraction time points.
[0157] When the first positioning model includes an inertial navigation positioning module, the tuning device extracts the gyroscope observation quantity input to the inertial navigation positioning module, extracts the second state information of the inertial navigation positioning module, and stores the gyroscope observation quantity and the second state information in packets according to the extraction time points.
[0158] When the first positioning model includes a satellite positioning module, the tuning device extracts satellite observation quantities input into the satellite positioning module, extracts first state information of the satellite positioning module, and stores the satellite observation quantities and the first state information in packets according to extraction time points.
[0159] Based on the above exemplary description, in S102C, the tuning device can be as follows Figure 8 The tuning error is determined in the manner shown.
[0160] See also Figure 8 , Figure 8A flow chart of a method for determining a tuning error provided in an embodiment of the present application. Figure 8 As shown, the method includes:
[0161] S401. According to preset indicators, the first positioning result and the second positioning result are compared with the true value result respectively to obtain the tuning statistical result.
[0162] The tuning statistical result is used to indicate a first error between the first positioning result and the true value result, and a second error between the second positioning result and the true value result.
[0163] The preset indicator is used to indicate the type of the tuning statistical result, such as statistical values such as variance, covariance, standard deviation or mean square error.
[0164] For example, when the preset indicator is variance, the first error may be the variance of the difference between each positioning result in the first positioning result and each positioning result in the true value result. The second error may be the variance of the difference between each positioning result in the second positioning result and each positioning result in the true value result.
[0165] For example, when the preset indicator is covariance, the first error may be the covariance of the difference between each positioning result in the first positioning result and each positioning result in the true value result. The second error may be the covariance of the difference between each positioning result in the second positioning result and each positioning result in the true value result.
[0166] Based on this, the tuning device can calculate the first error and the second error according to the first positioning result, the second positioning result and the true value result.
[0167] S402: Determine a tuning error according to the first error and the second error.
[0168] For example, when the first error is a first variance of the difference between each positioning result in the first positioning result and each positioning result in the true value result, and the second error is a second variance of the difference between each positioning result in the second positioning result and each positioning result in the true value result, the tuning device can determine the tuning error as the difference between the first variance and the second variance.
[0169] Based on this, the tuning device determines a tuning error.
[0170] Fig. 9 This is a schematic diagram of the structure of a positioning model tuning device provided in one embodiment of the present application. Fig. 9 As shown, the device includes: an extraction and storage module 101 and an optimization module 102.
[0171] The extraction and storage module 101 is used to extract and store historical model data from the first positioning model according to a preset period in the process of obtaining the first positioning result through the first positioning model within the historical period, wherein the historical model data includes observation data and state data corresponding to one or more extraction time points, the observation data includes the observation input to the first positioning model at the extraction time point, and the state data includes the state parameters of the first positioning model at the extraction time point;
[0172] The tuning module 102 is used to tune the first positioning model according to the historical model data to obtain an optimized positioning model.
[0173] It should be noted that the positioning model tuning device of the embodiment of the present application can be used to execute the technical solution of the above-mentioned method embodiment, and its implementation principle and technical effect are similar, which will not be repeated here.
[0174] In some examples, the tuning module 102 is specifically configured to tune the first positioning model to obtain a second positioning model;
[0175] Perform positioning playback according to the historical model data, the second positioning model and the preset time point to obtain the second positioning result;
[0176] Determining a tuning error of a second positioning model according to the first positioning result and the second positioning result;
[0177] When the tuning error meets the expected tuning target, the second positioning model is determined as the optimized positioning model;
[0178] When the tuning error does not meet the expected tuning target, the first positioning model continues to be tuned until an optimized positioning model is obtained.
[0179] In some examples, the tuning module 102 is specifically used to obtain first positioning playback data and second positioning playback data from the historical model data, the first positioning playback data includes observation data corresponding to the positioning playback time point, the second positioning playback data includes state data corresponding to the positioning playback time point, and the positioning playback time point is the extraction time point closest to the preset time point;
[0180] The second positioning playback data is determined as the state parameter of the second positioning model, and the first positioning playback data is input into the second positioning model to obtain a second positioning result.
[0181] In some examples, the first positioning model includes a satellite positioning module, an inertial navigation positioning module, and a fusion positioning module.
[0182] In some examples, the extraction storage module 101 is specifically used to extract the gyroscope observations input to the inertial navigation and positioning module and the satellite observations input to the satellite positioning module according to a preset period, and extract the first state information of the satellite positioning module, the second state information of the inertial navigation and positioning module, and the third state information of the fusion positioning module;
[0183] The gyroscope observation quantity, the satellite observation quantity, the first state information, the second state information and the third state information are packaged and stored according to the extraction time point.
[0184] In some examples, the first state information includes the rate of change of the observed value eigenvalue, the observed value estimate, the least squares positioning result, the system clock error, and the state vector of the satellite Kalman filter, the second state information includes the zero bias estimate, the lever arm estimate, and the temperature compensation table, and the third state information includes the state vector of the fused Kalman filter.
[0185] In some examples, the tuning module 102 is specifically used to compare the first positioning result and the second positioning result with the true value result according to a preset indicator to obtain a tuning statistical result, where the tuning statistical result is used to indicate a first error between the first positioning result and the true value result, and a second error between the second positioning result and the true value result;
[0186] A tuning error is determined according to the first error and the second error.
[0187] Fig.10 This is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Fig.10 As shown, the electronic device may include: a processor 201 and a memory 202, wherein the memory 202 stores a computer program, and when the processor 201 executes the computer program, the embodiment of the present application is implemented. Figures 1 to 8 The tuning method of the positioning model is shown.
[0188] Fig.11 This is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Fig.11 As shown, the electronic device may include: a processor 301, and when the processor 301 executes a computer executable program or an instruction in a memory to execute a computer program, the embodiment of the present application is implemented. Figures 1 to 8 The tuning method of the positioning model is shown.
[0189] The electronic device of the present application can be used to execute the technical solution of the above method embodiment, and its implementation principle and technical effect are similar. The operations implemented by each module can be further referred to the relevant description of the method embodiment, which will not be repeated here. The modules here can also be replaced by components or circuits.
[0190] Another embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the present application can be implemented. Figures 1 to 8 The tuning method of the positioning model is shown.
[0191] Another embodiment of the present application further provides a computer program product, including: an execution instruction, the execution instruction is stored in a readable storage medium, at least one processor of the electronic device can read the execution instruction from the readable storage medium, and at least one processor executes the execution instruction so that the electronic device implements the embodiment of the present application Figures 1 to 8 The tuning method of the positioning model is shown.
[0192] Another embodiment of the present application further provides a chip, which is connected to a memory, or has a memory integrated thereon. When a software program stored in the memory is executed, the method for tuning the positioning model in the above method embodiment is implemented.
[0193] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of modules or units is only a logical function division, and there may be other division methods in actual implementation, for example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.
[0194] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loading and executing computer program instructions on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, a computer, a server or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server, a data center, etc. that contains one or more available media integrated. The available medium can be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk Solid State Disk (SSD)), etc.
[0195] Those skilled in the art will appreciate that, although some embodiments herein include certain features included in other embodiments, the combination of features of different embodiments is meant to be within the scope of the present application and form different embodiments. For example, in the claims, any one of the claimed embodiments may be used in any combination.
[0196] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A method for optimizing a positioning model, characterized in that: The method comprises: In the process of obtaining a first positioning result through a first positioning model within a historical period, extracting and storing historical model data from the first positioning model according to a preset period, the historical model data including observation data and state data corresponding to one or more extraction time points, the observation data including observations input to the first positioning model at the extraction time point, and the state data including state parameters of the first positioning model at the extraction time point; The first positioning model is optimized according to the historical model data to obtain an optimized positioning model.
2. The method according to claim 1, characterized in that The step of optimizing the first positioning model according to the historical model data to obtain an optimized positioning model includes: Optimizing the first positioning model to obtain a second positioning model; Perform positioning playback according to the historical model data, the second positioning model and the preset time point to obtain a second positioning result; Determining a tuning error of the second positioning model according to the first positioning result and the second positioning result; When the tuning error meets the expected tuning target, determining the second positioning model as the optimized positioning model; When the tuning error does not meet the expected tuning target, continue to tune the first positioning model until an optimized positioning model is obtained.
3. The method according to claim 2, characterized in that The performing positioning playback according to the historical model data, the second positioning model and the preset time point to obtain a second positioning result includes: Acquire first positioning playback data and second positioning playback data from the historical model data, wherein the first positioning playback data includes observation data corresponding to a positioning playback time point, and the second positioning playback data includes state data corresponding to the positioning playback time point, and the positioning playback time point is an extraction time point closest to the preset time point; The second positioning playback data is determined as the state parameter of the second positioning model, and the first positioning playback data is input into the second positioning model to obtain the second positioning result.
4. The method according to any one of claims 1 to 3, characterized in that: The first positioning model includes a satellite positioning module, an inertial navigation positioning module and a fusion positioning module.
5. The method according to claim 4, characterized in that The extracting and storing historical model data from the first positioning model according to a preset period includes: According to the preset period, extracting the gyroscope observation quantity input to the inertial navigation and positioning module and the satellite observation quantity input to the satellite positioning module, extracting the first state information of the satellite positioning module, the second state information of the inertial navigation and positioning module and the third state information of the fusion positioning module; The gyroscope observation quantity, the satellite observation quantity, the first state information, the second state information and the third state information are stored in packets according to the extraction time point.
6. The method according to claim 5, characterized in that The first state information includes the rate of change of the observed characteristic value, the estimated value of the observed value, the least squares positioning result, the system clock error and the state vector of the satellite Kalman filter, the second state information includes the zero bias estimate, the lever arm estimate and the temperature compensation table, and the third state information includes the state vector of the fused Kalman filter.
7. The method according to claim 2 or 3, characterized in that: The determining, according to the first positioning result and the second positioning result, a tuning error of the second positioning model includes: According to preset indicators, the first positioning result and the second positioning result are respectively compared with the true value result to obtain a tuning statistical result, where the tuning statistical result is used to indicate a first error between the first positioning result and the true value result, and a second error between the second positioning result and the true value result; The tuning error is determined according to the first error and the second error.
8. An electronic device, characterized in that: include: processor; The processor is used to execute a computer executable program or instruction in the memory, so that the electronic device executes the method according to any one of claims 1 to 7.
9. An electronic device, characterized in that: include: At least one memory and at least one processor; the memory is used to store computer executable programs or instructions; the processor is used to call the computer executable programs or instructions in the memory, so that the electronic device executes the method described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer-executable program or instructions, and the computer-executable program or instructions are configured to execute the method according to any one of claims 1 to 7.
Citation Information
Cited By
Positioning algorithm tuning method and device and computer equipment
CN120949277A
A method, apparatus, and computer device for optimizing a positioning algorithm.
CN120949277B