Reading correction method and device of inertial navigation system and inertial navigation system
By training a pre-defined model and using a Kalman filter to predict the drift of the inertial navigation system, the problem of decreased positioning accuracy of the inertial navigation system when global satellite signals are unavailable is solved, and accurate positioning is achieved in the absence of satellite signals.
Patent Information
- Application Number
- CN202410724755.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-05
- Publication Date
- 2025-12-05
AI Technical Summary
When global satellite navigation system signals are unavailable, the integral drift of the inertial navigation system leads to a decrease in positioning accuracy, making it impossible to provide accurate vehicle positioning.
A pre-set model is trained using a large amount of real sample data. The drift of the inertial navigation system is predicted by Kalman filter and deep neural network. The drift is then used to correct the inertial navigation system readings, and real-time correction is performed by combining sensor data.
Maintain good navigation accuracy and provide accurate vehicle positioning when global satellite navigation system signals are unavailable.
Smart Images

Figure CN121067908A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of vehicle positioning in autonomous driving technology, and in particular to a reading correction method and device of an inertial navigation system and the inertial navigation system. BACKGROUND
[0002] In an autonomous driving system, it is crucial to obtain accurate vehicle positioning information. At present, a global navigation satellite system (GNSS) and an inertial navigation system (INS) are commonly used as the main positioning method.
[0003] A global navigation satellite system, such as a GPS (Global Positioning System), GLONASS (GLOBAL NAVIGATION SATELLITE SYSTEM), Galileo or BeiDou, calculates the absolute position of a vehicle by receiving signals from multiple satellites. However, the performance of the global navigation satellite system is affected by various environmental factors, including building obstructions, tunnels, bridges and antenna shadows, which can cause the global navigation satellite system signals to be lost or interfered, thereby affecting the positioning accuracy. To compensate for the shortcomings of the global navigation satellite system, an inertial navigation system is used to measure acceleration and angular velocity through internal sensors, so that even in the case where the global navigation satellite system signals cannot be received, the autonomous driving system can still provide continuous position, velocity and attitude information by integrating the acceleration and angular velocity measured by the internal sensors. However, the main problem of the inertial navigation system is that there is an integral drift, specifically, due to the noise and errors of the sensors, the errors will accumulate over time, resulting in a decrease in the positioning accuracy of the inertial navigation system after a long time of operation.
[0004] Therefore, how to accurately determine the positioning using the inertial navigation system when the global navigation satellite system is unavailable has become a technical problem to be solved by those skilled in the art. SUMMARY
[0005] The present application provides a reading correction method and device of an inertial navigation system and the inertial navigation system, in which a large amount of real sample data is used to train a preset model so that the preset model can predict the inertial navigation system drift based on driving data, the first inertial navigation system reading is corrected using the inertial navigation system drift, and finally the accurate positioning of the vehicle is obtained, which still maintains good navigation accuracy in the case where the global navigation satellite system signals are unavailable.
[0006] In a first aspect, the embodiments of the present application provide a reading correction method of an inertial navigation system, comprising:
[0007] detecting whether a global satellite navigation system signal is available;
[0008] if the global satellite navigation system signal is unavailable, obtaining driving data, the driving data comprising a first environmental parameter and a first inertial navigation system reading;
[0009] preprocessing the driving data to obtain preprocessed driving data;
[0010] inputting the processed driving data into a preset model to output a first drift amount, wherein the preset model is obtained by training real sample data under different driving scenarios;
[0011] correcting the first inertial navigation system reading according to the first drift amount.
[0012] In the present application, a preset model is trained by using a large amount of real sample data to enable the preset model to predict an inertial navigation system drift amount based on driving data, and the first inertial navigation system reading is corrected by using the inertial navigation system drift amount, so that the accurate positioning of a vehicle is finally obtained, and good navigation accuracy is maintained even in the case that the global satellite navigation system signal is unavailable.
[0013] In some embodiments, the step of correcting the first inertial navigation system reading according to the first drift amount comprises:
[0014] obtaining system data;
[0015] predicting the system data by using a Kalman filter to output a first state estimation and a first covariance, wherein the first state estimation comprises a second drift amount and an inertial navigation system reading prediction value;
[0016] inputting the first drift amount as observation data into the Kalman filter, so that the Kalman filter updates the second drift amount, the first covariance and the inertial navigation system reading prediction value according to the first state estimation, the first covariance and the observation data;
[0017] correcting the first inertial navigation system reading according to the updated inertial navigation system reading prediction value and the updated first covariance.
[0018] In the present application, the first drift is used as observation data, which is input into the Kalman filter to update the second drift, the first covariance and the inertial navigation system reading prediction. The first inertial navigation system reading is corrected by using the updated inertial navigation system reading prediction and the updated first covariance, so as to improve the accuracy of the first inertial navigation system reading, and finally obtain the accurate positioning of the vehicle, which still maintains good navigation precision in the case that the global satellite navigation system signal is unavailable.
[0019] In some embodiments, the step of modifying the first inertial navigation system reading according to the updated inertial navigation system reading prediction and the updated first covariance comprises:
[0020] determining whether the updated first covariance exceeds a preset covariance;
[0021] if the preset covariance is not exceeded, the first inertial navigation system reading is modified by using the updated inertial navigation system reading prediction.
[0022] In the present application, if the updated first covariance is particularly large, it indicates that the updated first state estimation is not accurate enough, and at this time, it needs to be handled carefully. If the updated first covariance does not exceed the preset covariance, the first inertial navigation system reading can be corrected by using the updated inertial navigation system reading prediction, so as to obtain the accurate positioning of the vehicle, which still maintains good navigation precision in the case that the global satellite navigation system signal is unavailable.
[0023] In some embodiments, before the step of detecting whether the global satellite navigation system signal is available, the method further comprises:
[0024] collecting real sample data generated in different driving scenes, the real sample data comprising a large number of global satellite navigation system readings, second inertial navigation system readings and second environmental parameters, the driving scenes comprising weather conditions, road conditions and traffic conditions;
[0025] preprocessing the real sample data to obtain a plurality of groups of samples, the samples comprising inertial navigation system real drift, second environmental parameters and second inertial navigation system readings;
[0026] dividing the plurality of groups of samples to obtain a training set, a validation set and a test set;
[0027] determining a preset model by using the training set, the validation set and the test set.
[0028] In the present application, the real sample data is preprocessed, so that the real sample data is easier to be processed, and finally a preset model with high applicability is obtained, so as to obtain accurate positioning of the vehicle, and good navigation accuracy is still maintained in the case that the global satellite navigation system signal is unavailable.
[0029] In some embodiments, the step of determining the preset model by using the training set, the validation set and the test set comprises:
[0030] training the deep neural network model by using the training set to obtain a to-be-determined model;
[0031] verifying the to-be-determined model by using the validation set to obtain a verification result;
[0032] if the verification result is that the performance has reached the standard, determining whether the early stopping step needs to be performed;
[0033] if the early stopping step needs to be performed, testing the to-be-determined model by using the test set to obtain a test result;
[0034] if the test result meets the preset requirement, determining that the to-be-determined model is the preset model.
[0035] In the present application, the parameters in the preset model are corrected by using the training set, the validation set and the test set, so as to improve the prediction accuracy of the preset model, so as to obtain accurate positioning of the vehicle, and good navigation accuracy is still maintained in the case that the global satellite navigation system signal is unavailable.
[0036] In some embodiments, the step of determining whether the early stopping step needs to be performed comprises:
[0037] verifying the to-be-determined model by using the validation set to determine whether the verification error of the to-be-determined model in a plurality of continuous training periods meets a preset change trend;
[0038] if the verification error of the to-be-determined model in the plurality of continuous training periods meets the preset change trend, determining that the early stopping step needs to be performed;
[0039] if the verification error of the to-be-determined model in the plurality of continuous training periods does not meet the preset change trend, determining that the early stopping step does not need to be performed.
[0040] In the present application, the verification result of the to-be-determined model verified by the validation set is that the performance has reached the standard, but in order to determine whether the performance of the to-be-determined model can be further improved, it is further determined whether the early stopping step needs to be performed, so as to improve the accuracy of the preset model, so as to obtain accurate positioning of the vehicle, and good navigation accuracy is still maintained in the case that the global satellite navigation system signal is unavailable.
[0041] In some embodiments, the method further comprises:
[0042] If the verification result is that the performance is up to standard, the early stopping step does not need to be performed, or the test result does not meet the preset requirement, the to-be-determined model is trained using the training set to update the to-be-determined model, and the step of verifying the to-be-determined model using the verification set to obtain a verification result is re-executed.
[0043] In the present application, when the test result does not meet the preset requirement, the to-be-determined model is continuously trained using the training set, thereby improving the accuracy of the preset model, so as to obtain accurate positioning of the vehicle, and good navigation accuracy is still maintained in the case where the global satellite navigation system signal is unavailable.
[0044] In a second aspect, the embodiments of the present application provide a reading correction device of an inertial navigation system, comprising:
[0045] A detection unit is configured to detect whether a global satellite navigation system signal is available;
[0046] An acquisition unit is configured to acquire driving data if the global satellite navigation system signal is unavailable, the driving data comprising a first environmental parameter and a first inertial navigation system reading;
[0047] A first preprocessing unit is configured to pre-process the driving data to obtain pre-processed driving data;
[0048] An input unit is configured to input the processed driving data to a preset model to output a first drift amount, wherein the preset model is trained using real sample data in different driving scenarios;
[0049] A correction unit is configured to correct the first inertial navigation system reading according to the first drift amount.
[0050] In the present application, the preset model is trained using a large amount of real sample data, so that the preset model can predict the inertial navigation system drift amount based on the driving data, the first inertial navigation system reading is corrected using the inertial navigation system drift amount, and finally accurate positioning of the vehicle is obtained, and good navigation accuracy is still maintained in the case where the global satellite navigation system signal is unavailable.
[0051] In a third aspect, the embodiments of the present application provide an inertial navigation system, comprising:
[0052] a processor; and
[0053] a memory arranged to store computer executable instructions that, when executed, cause the processor to perform the steps of the reading correction method of the inertial navigation system.
[0054] The system in the present application uses a large amount of real sample data to train a preset model, so that the preset model can predict the inertial navigation system drift based on driving data, correct the first inertial navigation system reading by using the inertial navigation system drift, and finally obtain accurate positioning of the vehicle, which still maintains good navigation accuracy in the case that the global satellite navigation system signal is unavailable.
[0055] In a fourth aspect, the embodiments of the present application provide a computer readable storage medium having a computer program stored thereon, wherein the computer program is executed by a processor to implement the steps of the reading correction method of the inertial navigation system.
[0056] The readable storage medium in the present application uses a large amount of real sample data to train a preset model, so that the preset model can predict the inertial navigation system drift based on driving data, correct the first inertial navigation system reading by using the inertial navigation system drift, and finally obtain accurate positioning of the vehicle, which still maintains good navigation accuracy in the case that the global satellite navigation system signal is unavailable. BRIEF DESCRIPTION OF DRAWINGS
[0057] Figure 1 An exemplary flowchart of a reading correction method of an inertial navigation system according to some embodiments is shown;
[0058] Figure 2 An exemplary flowchart of another reading correction method of an inertial navigation system according to some embodiments is shown;
[0059] Figure 3 An exemplary flowchart of still another reading correction method of an inertial navigation system according to some embodiments is shown;
[0060] Figure 4 An exemplary flowchart of still another reading correction method of an inertial navigation system according to some embodiments is shown;
[0061] Figure 5 An exemplary structural schematic diagram of a reading correction device of an inertial navigation system according to some embodiments is shown. DETAILED DESCRIPTION
[0062] In order to make the purpose and implementation of the present application clearer, the exemplary embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the exemplary embodiments of the present application. Obviously, the described exemplary embodiments are only some of the embodiments of the present application, but not all the embodiments.
[0063] It should be noted that the brief description of the terms in the present application is only for the convenience of understanding the embodiments described next, and is not intended to limit the embodiments of the present application. Unless otherwise specified, these terms should be understood according to their ordinary and general meanings.
[0064] The terms "first", "second", "third" and the like in the specification and claims of the present application and the above-described drawings are used to distinguish similar or like objects or entities, and do not necessarily mean a specific order or sequence, unless otherwise noted. It should be understood that the terms used in this way can be interchanged under appropriate circumstances.
[0065] The terms "include" and "have" and any variations thereof are intended to cover but not exclusive inclusion, for example, a product or device including a series of components does not have to be limited to all components clearly listed, but can include other components not clearly listed or inherent to these products or devices.
[0066] In an autonomous driving system, it is essential to obtain accurate vehicle positioning information. Currently, global satellite navigation systems and inertial navigation systems are often used as the main positioning method.
[0067] Global satellite navigation systems, such as GPS, GLONASS, Galileo or BeiDou, calculate the absolute position of the vehicle by receiving multiple satellite signals. However, the performance of global satellite navigation systems is affected by various environmental factors, including building obstructions, tunnels, bridges, and antenna shadows, which can cause global satellite navigation system signals to be lost or interfered, thereby affecting their positioning accuracy.
[0068] To make up for the shortcomings of global satellite navigation systems, inertial navigation systems use internal sensors to measure acceleration and angular velocity. Even in situations where global satellite navigation system signals cannot be received, by integrating the acceleration and angular velocity measured by the internal sensors, the autonomous driving system can provide continuous position, velocity and attitude information. However, the main problem of inertial navigation systems is that there is an integral drift. Specifically, due to the noise and error of the sensor, the error will accumulate over time, resulting in a decrease in the positioning accuracy of the inertial navigation system after a long period of operation. Therefore, how to accurately determine the positioning using the inertial navigation system when the global satellite navigation system is not available has become a technical problem to be solved by those skilled in the art.
[0069] To solve the above technical problems, the embodiment of the present application provides a reading correction method, device, medium and inertial navigation system of the inertial navigation system. In the method, a large amount of real sample data is used to train a preset model, so that the preset model can predict the inertial navigation system drift based on driving data, and the first inertial navigation system reading is corrected by using the inertial navigation system drift, and finally the accurate positioning of the vehicle is obtained.
[0070] Figure 1 An exemplary flow chart of a reading correction method of an inertial navigation system according to some embodiments is shown, which includes steps S100-S600.
[0071] S100, detecting whether the global satellite navigation system signal is available.
[0072] In the embodiment of the present application, it is detected in real time whether the global satellite navigation system signal is available.
[0073] S200, when the global satellite navigation system signal is available, the global satellite navigation system signal is directly used to provide accurate navigation information for the autonomous vehicle. Once it is found that the global satellite navigation system signal is unavailable, since it is necessary to continuously provide accurate navigation information for the vehicle, the inertial navigation system needs to be started at this time, and then the preset model is used to predict the inertial navigation system drift, so as to modify the inertial navigation system reading by using the predicted inertial navigation system drift, and the modified inertial navigation system reading is used to provide accurate navigation information for the vehicle.
[0074] In some embodiments, necessary sensors are installed and configured on the vehicle for autonomous driving, and the sensors include a global satellite navigation system receiver. In the embodiment of the present application, detecting whether the global satellite navigation system signal is available can include detecting whether the global satellite navigation system signal received by the global satellite navigation receiver is available. It should be noted that before the data is collected by using the sensors, the sensors need to be accurately calibrated and checked to ensure that the sensors can work normally.
[0075] In the embodiment of the present application, if the global satellite navigation system signal is unstable or lost, it is determined that the global satellite navigation system signal is unavailable. If the global satellite navigation system signal is stable, it is determined that the global satellite navigation system signal is available.
[0076] S300, if the global satellite navigation system signal is unavailable, driving data is obtained, and the driving data includes a first environmental parameter and a first inertial navigation system reading.
[0077] In the embodiment of the present application, when the global satellite navigation system signal is unavailable, the preset model is used to predict the inertial navigation system drift. Before prediction, the driving data needs to be obtained first, and the driving data is used as the input data of the preset model.
[0078] In the embodiments of the present application, the driving data comprises environmental parameters and first inertial navigation system readings, wherein the first environmental data can be determined according to sensors installed on the autonomous vehicle. In the embodiments of the present application, sensors for measuring environmental parameters are also installed on the autonomous vehicle, including thermometers, hygrometers, and road condition detectors, etc. The first environmental parameters are obtained by using the thermometers, hygrometers, and road condition detectors, etc.
[0079] In the embodiments of the present application, the first inertial navigation system readings can be determined according to an IMU (Inertial Measurement Unit), which contains an accelerometer and a gyroscope. The IMU is installed on the autonomous vehicle, and the accelerometer and the gyroscope in the IMU can measure acceleration and angular velocity. The IMU calculates the position and speed of the vehicle according to the acceleration and angular velocity. In the embodiments of the present application, in addition to determining the accurate position of the vehicle, the accurate speed of the vehicle can also be determined, so the first inertial navigation system readings comprise not only the position of the vehicle, but also the speed of the vehicle.
[0080] S400, pre-processing the driving data to obtain pre-processed driving data.
[0081] In the embodiments of the present application, the driving data is filtered, denoised, standardized, and normalized, etc., so that the processed driving data can be correctly analyzed by the preset model.
[0082] S500, inputting the processed driving data into a preset model to output a first drift, wherein the preset model is trained by using real sample data in different driving scenarios.
[0083] In the embodiments of the present application, in order to ensure that the preset model can accurately predict the second drift in different driving scenarios, real sample data in different driving scenarios obtained in advance when the global satellite navigation system signal is available is used to train the preset model.
[0084] In the embodiments of the present application, the output value of the preset model is a probability distribution, representing the probability of various possible drifts. The drift corresponding to the highest probability is selected from the probability distribution, and the drift is taken as the first drift.
[0085] The determination process of the preset model is described below. Figure 2 An exemplary flowchart of another method for correcting readings of an inertial navigation system according to some embodiments is shown. The generation process of the preset model comprises S501-S504.
[0086] S501, collect real sample data generated in different driving scenarios, the real sample data including a large number of global satellite navigation system readings, second inertial navigation system readings and second environment parameters, the driving scenarios including weather conditions, road conditions and traffic conditions, of course, the driving scenarios can also include other conditions affecting vehicle driving.
[0087] In the embodiments of the application, the weather conditions can be sunny, rainy and snowy, etc., the road conditions can be urban streets, highways and rural roads, etc. The traffic conditions can be peak hours and night hours, etc.
[0088] In some embodiments, real sample data measured by a global satellite navigation system receiver, an IMU and a sensor for measuring environment parameters in different driving scenarios is collected. The global satellite navigation system readings are determined by the global satellite navigation system receiver, and the second inertial navigation system readings are determined by the IMU. In the embodiments of the application, the process of determining the second inertial navigation system readings by the IMU is the same as the process of determining the first inertial navigation system readings by the IMU described above, and will not be described here. The second environment parameters are determined by the sensor for measuring environment parameters.
[0089] S502, pre-process the real sample data to obtain a plurality of groups of samples, the samples including inertial navigation system real drift, second environment parameters and second inertial navigation system readings.
[0090] In the embodiments of the application, pre-processing the real sample data can include filtering and denoising, time alignment and data conversion, etc.
[0091] The purpose of the time alignment is to ensure that the data in each group of samples is synchronized, and is determined according to the same driving scenario at the same time.
[0092] Specifically, the real sample data includes a large number of global satellite navigation system readings, second inertial navigation system readings and second environment parameters, and each data has a corresponding time stamp. For example, the global satellite navigation system reading a corresponds to the time stamp A, the global satellite navigation system reading b corresponds to the time stamp B, the second inertial navigation system reading a corresponds to the time stamp A, the second inertial navigation system reading b corresponds to the time stamp B, the second environment parameter a corresponds to the time stamp A, and the second environment parameter b corresponds to the time stamp B. The global satellite navigation system readings, the second inertial navigation system readings and the second environment parameters with the same time stamp are collected together, for example, the global satellite navigation system reading a, the second inertial navigation system reading a and the second environment parameter a with the time stamp A are collected together. In this way, the global satellite navigation system reading a, the second inertial navigation system reading a and the second environment parameter a can be synchronized.
[0093] In some embodiments, the global satellite navigation system signal is a GPS coordinate. Since the GPS coordinate is a global coordinate, it needs to be converted into a coordinate that can intuitively reflect the running state of the vehicle, i.e., the global satellite navigation system reading.
[0094] In addition, in order to train the preset model, the drift amount can be predicted, and the preprocessing of the real sample data further includes determining the inertial navigation system real drift amount of the global satellite navigation system reading and the second inertial navigation system reading corresponding to the same timestamp by using a difference method. Specifically, the global satellite navigation system reading includes a first speed (Vel_global satellite navigation system) and a first position (Pos_global satellite navigation system). The second inertial navigation system reading includes a second speed (Vel_inertial navigation system) and a second position (Pos_inertial navigation system). The difference between the first speed (Vel_global satellite navigation system) and the second speed (Vel_inertial navigation system) is taken as the speed drift amount. The difference between the first position (Pos_global satellite navigation system) and the second position (Pos_inertial navigation system) is taken as the position drift amount. The speed drift amount and the position drift amount are set as the inertial navigation system real drift amount.
[0095] In some embodiments, the inertial navigation system real drift amount can include one or more of the speed drift amount and the position drift amount.
[0096] In some embodiments, a plurality of groups of samples are stored in a reliable storage medium, such as a hard disk or a cloud storage service, and the samples can be properly organized and indexed to facilitate subsequent data analysis and model training.
[0097] S503, dividing the plurality of groups of samples to obtain a training set, a validation set, and a test set.
[0098] In the embodiments of the present application, in the process of determining the preset model, the training set is used to train the deep neural network model, then the validation set is used for verification, and finally the test set is used for testing, so that the preset model can be finally obtained. Therefore, after preprocessing a large amount of real sample data collected, the real sample data is divided into a training set, a validation set, and a test set.
[0099] In some embodiments, the real sample data can be divided into a training set, a validation set, and a test set according to a certain proportion. The number of samples in the training set is greater than that in the validation set and that in the test set.
[0100] S504, determining a preset model by using the training set, the validation set, and the test set.
[0101] In some embodiments, Figure 3An example shows a flow chart of a reading correction method of another inertial navigation system according to some embodiments. The step of determining a preset model by using the training set, the validation set and the test set includes S5041-S5048.
[0102] S5041, training a deep neural network model by using the training set to obtain a to-be-determined model.
[0103] In the embodiments of the present application, the second environmental parameters and the second inertial navigation system readings in the training set are taken as inputs, and the real drift of the inertial navigation system is taken as an output to train a deep neural network model, which adopts a supervised learning manner.
[0104] In the embodiments of the present application, the deep neural network model adopts a recurrent neural network of a long short-term memory (LSTM) type. The LSTM model structure includes an input layer, an LSTM layer, a full connection layer and an output layer. The structure of the deep neural network model is set according to the problem and data characteristics of the preset model, such as selecting the LSTM model, setting the number of network layers and the number of neurons.
[0105] In one example, one input layer is set, which receives original driving data, including the second inertial navigation system readings and the second environmental parameters. The LSTM layer can be set to multiple, for example, 3-5 LSTM layers, which can help the model to capture time dependence of different scales. The number of neurons of each layer can be increased according to the complexity of the problem, for example, set to 500-1000. The full connection layer can also be set to multiple, for example, 2-4 full connection layers, which can extract high-level features and perform nonlinear transformation. The number of neurons of each layer can be set to a larger value, for example, 1000-2000. One output layer is set for the output layer. For the embodiments of the present application, the output layer is used to predict the drift of the inertial navigation system, so the output layer usually has only one neuron.
[0106] In the embodiments of the present application, the deep neural network model is trained by using the data in the training set, and the model is continuously optimized through steps such as forward propagation, back propagation and weight update to obtain the to-be-determined model.
[0107] S5042, verifying the to-be-determined model by using the validation set to obtain a verification result.
[0108] In the embodiments of the present application, the performance of the to-be-determined model is evaluated by using the validation set. After one round of training is completed by using the training set, the to-be-determined model is verified by using the validation set, and the verification error is determined. If the verification error is lower than the preset error, it is determined that the verification result is that the performance has reached the standard. If the preset error is not lower than the preset error, it is determined that the verification result is that the performance has not reached the standard.
[0109] S5043, determining whether the verification result is that the performance has reached the standard.
[0110] In the embodiments of the present application, the to-be-determined model is verified by using the validation set, and the verification result, that is, the performance of the to-be-determined model is obtained. The verification result includes that the performance has reached the standard and that the performance has not reached the standard.
[0111] In some embodiments, S5044, if the verification result is that the performance has not reached the standard, the to-be-determined model is continuously trained by using the training set to update the to-be-determined model, and the step of verifying the to-be-determined model by using the validation set to obtain the verification result is re-executed.
[0112] In the embodiments of the present application, if the verification result is that the performance has not reached the standard, the to-be-determined model is continuously trained by using the training set. After a new round of training is performed in this way, the parameters in the to-be-determined model are updated. Then the step of verifying the to-be-determined model by using the validation set to obtain the verification result is re-executed. It should be noted that the to-be-determined model verified by using the validation set is the to-be-determined model whose parameters are updated. If the verification result is still that the performance has not reached the standard, the to-be-determined model is continuously trained by using the training set until the verification result is that the performance has reached the standard.
[0113] S5046, if the verification result is that the performance has reached the standard, it is determined whether the early stopping step needs to be executed.
[0114] In the embodiments of the present application, the verification result of the to-be-determined model verified by using the validation set is that the performance has reached the standard. However, in order to determine whether the performance of the to-be-determined model can be further improved, it is further determined whether the early stopping step needs to be executed. When the early stopping step needs to be executed, the to-be-determined model is no longer trained by using the training set for a new round. When the early stopping step does not need to be executed, the to-be-determined model is continuously trained by using the training set for a new round.
[0115] In some embodiments, the determination of whether the early stopping step needs to be executed includes:
[0116] The verification error of the to-be-determined model in a plurality of consecutive training periods is determined by using the validation set to determine whether the verification error conforms to a preset change trend.
[0117] The training period (Epoch) in the embodiments of the present application refers to the process of training the entire training set once to determine the model. For example, there are 1000 samples in the training set, in a training period, the 1000 samples are all used to train the to-be-determined model, and the parameters of the to-be-determined model are updated. A plurality of training periods are continuously trained, and the model performance is evaluated after each training period using the validation set, i.e., the validation error of the to-be-determined model is determined.
[0118] If the validation error of the to-be-determined model in a plurality of continuous training periods meets the preset change trend, it is determined that the early stopping step needs to be performed; if the validation error of the to-be-determined model in a plurality of continuous training periods does not meet the preset change trend, it is determined that the early stopping step does not need to be performed.
[0119] In the embodiments of the present application, the preset change trend includes no obvious decrease or starting to rise.
[0120] It should be noted that when the validation error starts to rise, it may mean that the to-be-determined model starts to overfit, i.e., the to-be-determined model learns the training data too deeply, so as to lose the generalization ability to unseen data, at this time, early stopping needs to be considered, early stopping can prevent overfitting and maintain the generalization performance of the model. If the validation error of the to-be-determined model in a plurality of continuous training periods does not obviously decrease, it means that the to-be-determined model is relatively stable, at this time, early stopping can also be considered.
[0121] In some embodiments, the obvious decrease can be determined by the difference between the adjacent two validation errors. If the difference between the validation errors is greater than a preset difference, it is determined that there is an obvious decrease.
[0122] In some embodiments, if the early stopping step does not need to be performed, the step S5044 of training the to-be-determined model using the training set is performed to update the to-be-determined model, and the step S5042 of verifying the to-be-determined model using the validation set to obtain the validation result is re-executed.
[0123] In the embodiments of the present application, if the early stopping step is not needed to be performed, the to-be-determined model is continuously trained by using the training set. After a new round of training, the parameters in the to-be-determined model are updated. The step of verifying the to-be-determined model by using the verification set to obtain a verification result is re-executed. If the verification result is that the performance is not up to the standard, the to-be-determined model is continuously trained by using the training set, the step of verifying the to-be-determined model by using the verification set to obtain a verification result is continuously executed until the verification result is that the performance is up to the standard. If the verification result is that the performance is up to the standard, it is continuously determined whether the early stopping step is needed to be performed. If the early stopping step is still not needed to be performed, the to-be-determined model is continuously trained by using the training set to update the to-be-determined model, and the step of verifying the to-be-determined model by using the verification set to obtain a verification result is re-executed until it is determined that the step is needed to be performed.
[0124] S5046, if the early stopping step is needed to be performed, the to-be-determined model is tested by using the test set to obtain a test result.
[0125] In the embodiments of the present application, according to the performance of the to-be-determined model on the test set, the parameters of the to-be-determined model are adjusted or the structure of the to-be-determined model is adjusted to further improve the prediction accuracy of the to-be-determined model. If the performance of the optimized to-be-determined model meets the preset requirement, it is considered that the preset model is determined to be completed; otherwise, the to-be-determined model needs to be continuously trained by using the training set to continue to optimize the model.
[0126] S5047, it is determined whether the test result meets the preset requirement.
[0127] S5048, if the test result meets the preset requirement, the to-be-determined model is determined to be the preset model.
[0128] In some embodiments, if the test result does not meet the preset requirement, the step S5044 of training the to-be-determined model by using the training set is executed to update the to-be-determined model, and the step S5042 of verifying the to-be-determined model by using the verification set to obtain a verification result is re-executed.
[0129] In the embodiments of the present application, if the test result does not meet the preset requirement, the to-be-determined model is continuously trained by using the training set, and the step of verifying the to-be-determined model by using the verification set to obtain a verification result is re-executed until the test result meets the preset requirement.
[0130] S600, the first inertial navigation system reading is modified by using the first drift amount.
[0131] In the embodiments of the present application, the first drift amount output by the preset model is used to modify the first inertial navigation system reading. In this way, accurate first inertial navigation system readings can be obtained in real time, and thus the navigation system of the vehicle can be adjusted using the accurate first inertial navigation system readings when the global satellite navigation system signal is unavailable.
[0132] In some embodiments, before the first drift amount is used to modify the first inertial navigation system reading, the method can further include further processing the first drift amount according to the application, historical data or vehicle state. Of course, the first drift amount can also be directly used to modify the first inertial navigation system reading.
[0133] In the embodiments of the present application, since different applications require different accuracies of the inertial navigation system reading, the first drift amount can be further processed according to the application to meet the accuracy of the inertial navigation system reading required by different applications.
[0134] In some embodiments, further processing the first drift amount according to the application includes:
[0135] For applications requiring extremely high accuracy (such as autonomous vehicles), the first drift amount needs to be finely adjusted through a post-processing step, such as considering more contextual information and using complex algorithms to further optimize the first drift amount.
[0136] In some embodiments, the prediction of the first drift amount is used as an input to a control system, and the system is sensitive to noise in the input, so further filtering or smoothing of the first drift amount is required. For example, moving average, exponential smoothing or advanced filter algorithms (such as Kalman filter) can be used to reduce the instantaneous changes and noise of the first drift amount.
[0137] In other embodiments, in a complex environment (such as urban traffic), and a large amount of contextual information is available (such as road conditions, traffic flow, weather, etc.), then these information can be used to adjust the first drift amount. For example, if it is known that the vehicle is in a traffic jam, the first drift amount can be reduced because the motion of the vehicle can be relatively small in this case.
[0138] In some embodiments, there are multiple models or methods that can predict the first drift amount. Ensemble learning or model combination techniques can be used to fuse these prediction results to improve the overall prediction performance. For example, a weighted average of the prediction results of each model can be calculated, where the weights can be determined based on the historical performance of each model.
[0139] In some applications, there is an opportunity to obtain feedback of the actual effect of the first drift (e.g. through subsequent GNSS measurements). In this case, these feedbacks can be used to adjust the first drift online, or to update the model parameters, in a similar way as online learning or incremental learning.
[0140] For applications with very high real-time requirements (e.g. certain emergency response systems), it can be acceptable to accept a slightly lower accuracy, but require the model to provide the first drift quickly. In this case, the post-processing step can be simplified or omitted to reduce the computation time.
[0141] In some embodiments, the further processing of the first drift according to historical data includes smoothing, trend adjustment, and / or feedback correction.
[0142] Smoothing includes using a moving average of the first drift (or error) at past time points to smooth the current first drift. This can reduce the impact of transient noise and outliers on the prediction results.
[0143] Trend adjustment includes if some fixed trends or periodic patterns are observed from the historical data (e.g. the first drift always increases or decreases at certain times or conditions), these information can be used to adjust the first drift.
[0144] Feedback correction includes if GNSS signals are available, the historical true drift data (e.g. subsequent GNSS measurements) can be used as feedback, compared with the first drift, and then adjust the current and future first drift according to the error size and direction.
[0145] In some embodiments, the further processing of the first drift according to vehicle state data includes dynamic adjustment and / or environmental factor adjustment.
[0146] Dynamic adjustment includes the motion state of the vehicle (e.g. speed, acceleration, turning angle, etc.) can affect the first drift. In high-speed driving, sharp turning, or strong vibration, the first drift can increase. Therefore, the first drift can be dynamically adjusted according to the motion state of the vehicle.
[0147] Environmental factor adjustment includes the external environment of the vehicle (e.g. road condition, weather, terrain, etc.) can also affect the first drift. For example, bumpy road, slippery road, or steep mountain road, can all cause the first drift to increase. Therefore, the first drift can be further adjusted according to these environmental factors.
[0148] In some embodiments, when the global satellite navigation system signal is unavailable or a large error in the inertial navigation system reading is identified, the first inertial navigation system reading can be corrected according to the first drift amount by using a Kalman filter.
[0149] In some embodiments, identifying whether there is a large error in the inertial navigation system reading can be achieved by checking the internal data consistency of the inertial navigation system to identify possible errors. For example, if there is a large difference between the speed calculated from the acceleration and the speed directly measured by the speedometer, there can be an error.
[0150] In some embodiments, Figure 4 An exemplary schematic diagram of yet another method for correcting readings of an inertial navigation system according to some embodiments is shown. The step of correcting the first inertial navigation system reading according to the first drift amount includes S601-S604.
[0151] S601, acquiring system data.
[0152] In the embodiments of the present application, the system data generally refers to known system states, control inputs and observation data. Specifically, in the inertial navigation system, the system states can include position, speed, attitude and the like, the control inputs can be acceleration or angular velocity instructions, and the observation data can include readings collected from various sensors such as accelerometers, gyroscopes and the like.
[0153] S602, predicting the system data by using a Kalman filter to output a first state estimate and a first covariance, wherein the first state estimate includes a second drift amount and an inertial navigation system reading prediction value.
[0154] In some embodiments, the step S601 and the step S602 can be completed before the first drift amount is output by using a preset model, and specifically can be executed after it is detected that the global satellite navigation system signal is unavailable.
[0155] The Kalman filter is a recursive estimation algorithm used to estimate the state of a linear dynamic system in the presence of noise. The Kalman filter consists of two main steps: a prediction step and an update step. In the embodiments of the present application, all necessary parameters are initialized in the construction of the Kalman filter, including the state transition matrix F, the observation matrix H, the control input matrix B, the process noise covariance Q, the observation noise covariance R, the error covariance P and the initial state x0.
[0156] The prediction step makes a prediction based on the state transition matrix and the current state, i.e. the current system data, and updates the covariance. Specifically, first, the next state is predicted based on the current state using the state transition matrix. At the same time, the uncertainty of the state (represented as the covariance) is also predicted. This step only depends on the model itself and the input, and does not take into account any observations / measurement values.
[0157] Specifically, the next state estimate and the covariance are calculated according to the following formula.
[0158] x pred = F * x + B * u;
[0159] P pred = F * P * F T + Q;
[0160] where x pred is the next state estimate; F is the state transition matrix; x is the state vector, i.e. obtained by system state conversion; B is the control input matrix, i.e. obtained by control data conversion; u is the control input; P pred is the covariance matrix (i.e. the covariance); P is the covariance matrix of the state vector; F T is the transpose of the state transition matrix; and Q is the process noise covariance matrix.
[0161] The update step includes adjusting the prediction value generated by the prediction step using the observation data, i.e. obtaining the first state estimate and the first covariance. First, the residual between the prediction value in the next state estimate and the observation value (i.e. the observation data) is calculated, and then the Kalman gain is used to determine how much of the prediction value and how much of the observation value should be believed. If the uncertainty of the prediction is small, then more weight will be given to the prediction value; otherwise, more weight will be given to the observation value. Finally, based on this information, the next state estimate and the covariance are updated, i.e. the first state estimate and the first covariance in the embodiments of the present application are obtained.
[0162] Specifically, the first state estimate and the first covariance are obtained according to the following formula.
[0163] K = P pred * H T *(H * P pred * H T + R) -1 ;
[0164] x update = x pred + K * (y - H * x pred );
[0165] P update = (I - K * H) * P pred .
[0166] wherein K is a Kalman gain; H is an observation matrix; H T is a transpose of the observation matrix; R is an observation noise covariance matrix; x update is a first state estimate, comprising an inertial navigation system reading prediction and a second drift; y is an observation vector, converted from observation data; P update is a first covariance matrix, i.e., a first covariance.
[0167] S603, inputting the first drift as the observation data to the Kalman filter, so that the Kalman filter updates the second drift, the first covariance and the inertial navigation system reading prediction according to the first state estimate, the first covariance and the observation data.
[0168] In some embodiments, the step of updating the second drift, the first covariance and the inertial navigation system reading prediction according to the first state estimate, the first covariance and the observation data by the Kalman filter comprises:
[0169] calculating an observation residual by using the second drift and the first drift;
[0170] calculating a Kalman gain by using the observation data and the first covariance;
[0171] updating the first state estimate by using the Kalman gain and the observation residual;
[0172] updating the first covariance by using the Kalman gain and the observation data.
[0173] In the embodiments of the present application, the step of updating the second drift, the first covariance and the inertial navigation system reading prediction according to the first state estimate, the first covariance and the observation data by the Kalman filter is the same as the process of updating steps in the Kalman filter introduced above, and will not be repeated here.
[0174] S604, correcting the first inertial navigation system reading according to the updated inertial navigation system reading prediction and the updated first covariance.
[0175] In some embodiments, the step of correcting the first inertial navigation system reading according to the updated inertial navigation system reading prediction and the updated first covariance comprises:
[0176] judging whether the updated first covariance exceeds a preset covariance;
[0177] if the updated first covariance does not exceed the preset covariance, correcting the first inertial navigation system reading by using the updated inertial navigation system reading prediction.
[0178] In the embodiments of the present application, if the updated first covariance is particularly large, it indicates that the updated first state estimation is not accurate enough, and at this time, careful processing is needed. If the updated first covariance does not exceed the preset covariance, the updated inertial navigation system reading prediction value can be used to correct the first inertial navigation system reading. In some embodiments, the updated inertial navigation system reading prediction value can be used to replace the first inertial navigation system reading.
[0179] In some embodiments, the updated second drift obtained in step S603 can also be used to correct the first inertial navigation system reading.
[0180] In the embodiments of the present application, the updated inertial navigation system reading prediction value obtained by the Kalman filter can be directly used to replace the first inertial navigation system reading. In addition, since the updated second drift represents the deviation between the first inertial navigation system reading and the updated inertial navigation system reading prediction value, the updated second drift obtained by the Kalman filter can be used to correct the first inertial navigation system reading.
[0181] In the embodiments of the present application, by using the prediction model and the Kalman filter, the drift of the inertial navigation system (inertial navigation system) can be predicted and corrected, so that accurate position, speed and attitude information can be continuously provided even in the case where the global navigation satellite system (global satellite navigation system) signal cannot be received, thereby improving the accuracy of automatic driving. The embodiments of the present application can perform robust navigation in various environments, and can maintain good navigation accuracy even in the case where the global satellite navigation system signal cannot be received in urban canyons, tunnels and the like. In the implementation process, the steps of data preprocessing, drift prediction and Kalman filtering are all performed in real time, and can quickly respond to changes in the actual driving environment. In addition, according to different actual driving scenarios and data inputs, the prediction model and the Kalman filter can be adjusted in real time to adapt to complex and changeable driving environments.
[0182] Since positioning accuracy is crucial for driving safety in unmanned vehicle automatic driving, the method in the embodiments of the present application can provide more accurate position information, which helps to avoid collisions and improve driving safety.
[0183] In the above embodiment, a reading correction method of an inertial navigation system is provided. The method trains a preset model using a large amount of real sample data, so that the preset model can predict the drift of the inertial navigation system based on driving data, correct the first inertial navigation system reading by using the drift of the inertial navigation system, and finally obtain the accurate positioning of the vehicle. Good navigation accuracy is still maintained in the case where the global satellite navigation system signal is unavailable. The method comprises the following steps: detecting whether the global satellite navigation system signal is available; if the global satellite navigation system signal is unavailable, obtaining driving data, the driving data comprising a first environmental parameter and a first inertial navigation system reading; preprocessing the driving data to obtain preprocessed driving data; inputting the preprocessed driving data into a preset model to output a first drift, wherein the preset model is trained using real sample data in different driving scenarios; and correcting the first inertial navigation system reading according to the first drift.
[0184] Further, as an implementation of the method shown in the above Figure 1 The embodiment of the present application provides an inertial navigation system reading correction device, Figure 5 An exemplary structure diagram of an inertial navigation system reading correction device according to some embodiments is shown. As shown in the figure, Figure 5 The device comprises a detection unit 501, an acquisition unit 502, a first preprocessing unit 503, an input unit 504 and a correction unit 505.
[0185] The detection unit is configured to detect whether a global satellite navigation system signal is available.
[0186] The acquisition unit is configured to acquire driving data if the global satellite navigation system signal is unavailable, the driving data comprising a first environmental parameter and a first inertial navigation system reading.
[0187] The first preprocessing unit is configured to preprocess the driving data to obtain preprocessed driving data.
[0188] The input unit is configured to input the preprocessed driving data into a preset model to output a first drift, wherein the preset model is trained using real sample data in different driving scenarios.
[0189] The correction unit is configured to correct the first inertial navigation system reading according to the first drift.
[0190] In a specific application scenario, the correction unit comprises:
[0191] The system data acquisition unit is configured to acquire system data.
[0192] an output unit configured to predict the system data using a Kalman filter to output a first state estimate and a first covariance, wherein the first state estimate comprises a second drift and an inertial navigation system reading prediction value;
[0193] an input unit configured to input the first drift as observation data to the Kalman filter, so that the Kalman filter updates the second drift, the first covariance and the inertial navigation system reading prediction value according to the first state estimate, the first covariance and the observation data;
[0194] a first modification unit configured to modify the first inertial navigation system reading according to the updated inertial navigation system reading prediction value and the updated first covariance.
[0195] In a specific application scenario, the apparatus further comprises:
[0196] a collection unit configured to collect real sample data generated in different driving scenarios, the real sample data comprising a large number of global satellite navigation system readings, second inertial navigation system readings and second environmental parameters, the driving scenarios comprising weather conditions, road conditions and traffic conditions;
[0197] a second preprocessing unit configured to preprocess the real sample data to obtain a plurality of groups of samples, the samples comprising inertial navigation system real drifts, second environmental parameters and second inertial navigation system readings;
[0198] a division unit configured to divide the plurality of groups of samples to obtain a training set, a verification set and a test set;
[0199] a first determination unit configured to determine a preset model using the training set, the verification set and the test set.
[0200] In a specific application scenario, the first determination unit comprises:
[0201] a deep neural network model training unit configured to train a deep neural network model using the training set to obtain a to-be-determined model;
[0202] a verification unit configured to verify the to-be-determined model using the verification set to obtain a verification result;
[0203] a first judgment unit configured to judge whether an early stopping step needs to be performed if the verification result is that the performance has reached a standard;
[0204] a test unit configured to test the to-be-determined model using the test set to obtain a test result if the early stopping step needs to be performed;
[0205] The second determining unit is configured to determine that the to-be-determined model is the preset model if the test result meets the preset requirement.
[0206] In a specific application scenario, the first judging unit comprises:
[0207] The second judging unit is configured to judge whether the validation error of the to-be-determined model in the plurality of continuous training periods meets a preset variation trend by using the validation set.
[0208] The third determining unit is configured to determine that the early stopping step needs to be performed if the validation error of the to-be-determined model in the plurality of continuous training periods meets the preset variation trend.
[0209] The fourth determining unit is configured to determine that the early stopping step does not need to be performed if the validation error of the to-be-determined model in the plurality of continuous training periods does not meet the preset variation trend.
[0210] In a specific application scenario, the apparatus further comprises:
[0211] The updating unit is configured to train the to-be-determined model by using the training set to update the to-be-determined model, and re-perform the step of validating the to-be-determined model by using the validation set to obtain a validation result, if the validation result is that the performance is up to the standard, the early stopping step does not need to be performed, or the test result does not meet the preset requirement.
[0212] In a specific application scenario, the first modifying unit comprises:
[0213] The third judging unit is configured to judge whether the updated first covariance exceeds a preset covariance.
[0214] The second modifying unit is configured to modify the first inertial navigation system reading by using the updated inertial navigation system reading prediction value if the preset covariance is not exceeded.
[0215] According to an embodiment of the present application, a storage medium is provided, and the storage medium stores at least one executable instruction. The computer executable instruction can execute the reading correction method of the inertial navigation system in any method embodiment described above.
[0216] Based on such understanding, the technical solution of the present application can be embodied in the form of a software product. The software product can be stored in a non-volatile storage medium (which can be a CD-ROM, a U disk, a mobile hard disk, etc.), and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the method described in each embodiment scenario of the present application.
[0217] The embodiment of the present application further provides an electronic device for reading correction of an inertial navigation system, which can be a computer, a smart phone, a tablet computer, a smart watch, a server, a network device or the like. The electronic device comprises a storage medium and a processor. The storage medium is used for storing a computer program. The processor is used for executing the computer program to implement the reading correction method of the inertial navigation system.
[0218] Optionally, the electronic device can further comprise a user interface, a network interface, a camera, a radio frequency (RF) circuit, a sensor, an audio circuit, a WI-FI module and the like. The user interface can comprise a display, an input unit such as a keyboard and the like. Optionally, the user interface can further comprise a USB interface, a card reader interface and the like. The network interface can optionally comprise a standard wired interface, a wireless interface (such as a WI-FI interface) and the like.
[0219] Those skilled in the art can understand that the structure of the electronic device provided by the embodiment does not constitute a limitation on the electronic device, and the electronic device can comprise more or fewer components, or some components can be combined, or different components can be arranged.
[0220] The storage medium can further comprise an operating device and a network communication module. The operating device is a program for managing and saving hardware and software resources of the electronic device, and supports the running of an information processing program and other software and / or programs. The network communication module is used for realizing communication between various controls in the storage medium, and communication with other hardware and software in the electronic device.
[0221] The embodiment of the present application further provides an inertial navigation system, a processor; and
[0222] The memory arranged to store computer executable instructions, wherein the executable instructions, when executed, cause the processor to perform the steps of the reading correction method of the inertial navigation system.
[0223] Those skilled in the art can clearly understand that the present application can be implemented by means of software plus necessary general hardware platforms, or by hardware.
[0224] Those skilled in the art can understand that the units in the embodiments of the present application are only schematic and not necessarily the units that must be implemented in the embodiments of the present application. Those skilled in the art can understand that the units in the embodiments of the present application can be distributed in the devices in the embodiments of the present application according to the description of the embodiments of the present application, or can be correspondingly changed and located in one or more devices different from the embodiments of the present application. The units in the above-described embodiments of the present application can be combined into one unit, or can be further split into more sub-units.
[0225] The above application number is only for description, and does not represent the advantages and disadvantages of the implementation scene. The above disclosure is only some specific implementation scenes of the application, but the application is not limited thereto, and any changes that can be thought of by those skilled in the art should fall within the protection scope of the application.
Claims
1. A method of reading correction for an inertial navigation system, characterized in that, The method comprises: detecting whether a global satellite navigation system signal is available; if the global satellite navigation system signal is not available, obtaining driving data, the driving data comprising a first environmental parameter and a first inertial navigation system reading; preprocessing the driving data to obtain preprocessed driving data; inputting the preprocessed driving data into a preset model to output a first drift amount, wherein the preset model is obtained by training real sample data under different driving scenarios; correcting the first inertial navigation system reading according to the first drift amount.
2. The method of claim 1, wherein, The step of correcting the first inertial navigation system reading according to the first drift amount comprises: obtaining system data; predicting the system data using a Kalman filter to output a first state estimate and a first covariance, wherein the first state estimate comprises a second drift amount and an inertial navigation system reading prediction value; inputting the first drift amount as observation data into the Kalman filter, so that the Kalman filter updates the second drift amount, the first covariance and the inertial navigation system reading prediction value according to the first state estimate, the first covariance and the observation data; correcting the first inertial navigation system reading according to the updated inertial navigation system reading prediction value and the updated first covariance.
3. The method of claim 2, wherein, The step of correcting the first inertial navigation system reading according to the updated inertial navigation system reading prediction value and the updated first covariance comprises: determining whether the updated first covariance exceeds a preset covariance; if the updated first covariance does not exceed the preset covariance, modifying the first inertial navigation system reading using the updated inertial navigation system reading prediction value.
4. The method of claim 1, wherein, Before the step of detecting whether a global satellite navigation system signal is available, the method further comprises: collecting real sample data generated under different driving scenarios, the real sample data comprising a large number of global satellite navigation system readings, second inertial navigation system readings and second environmental parameters, the driving scenarios comprising weather conditions, road conditions and traffic conditions; preprocessing the real sample data to obtain a plurality of groups of samples, the samples comprising inertial navigation system real drift amounts, second environmental parameters and second inertial navigation system readings; dividing the plurality of groups of samples to obtain a training set, a validation set and a test set; determining a preset model using the training set, the validation set and the test set.
5. The method of claim 4, wherein, The step of determining a preset model using the training set, the validation set and the test set comprises: training a deep neural network model using the training set to obtain a to-be-determined model; verifying the to-be-determined model using the validation set to obtain a verification result; if the verification result indicates that the performance has reached the standard, determining whether an early stopping step needs to be performed; if the early stopping step needs to be performed, testing the to-be-determined model using the test set to obtain a test result; if the test result meets a preset requirement, determining that the to-be-determined model is the preset model.
6. The method of claim 5, wherein, The step of determining whether an early stopping step needs to be performed comprises: The verification set is used to determine whether the validation error of the to-be-determined model in a plurality of continuous training periods conforms to a preset change trend; If the validation error of the to-be-determined model in a plurality of continuous training periods conforms to a preset change trend, it is determined that the early stopping step needs to be performed; If the validation error of the to-be-determined model in a plurality of continuous training periods does not conform to a preset change trend, it is determined that the early stopping step does not need to be performed.
7. The method of claim 5, wherein, Also comprising: If the verification result is that the performance is up to standard, the early stopping step does not need to be performed, or the test result does not meet the preset requirement, the to-be-determined model is trained using the training set to update the to-be-determined model, and the step of verifying the to-be-determined model using the verification set to obtain a verification result is re-executed.
8. A reading correction device for an inertial navigation system, characterized in that Comprising: A detection unit configured to detect whether a global satellite navigation system signal is available; An acquisition unit configured to acquire driving data including a first environmental parameter and a first inertial navigation system reading if the global satellite navigation system signal is not available; A first preprocessing unit configured to preprocess the driving data to obtain preprocessed driving data; An input unit configured to input the preprocessed driving data to a preset model to output a first drift amount, wherein the preset model is trained using real sample data in different driving scenarios; A correction unit configured to correct the first inertial navigation system reading according to the first drift amount.
9. An inertial navigation system comprising: a processor; and a memory arranged to store computer executable instructions which, when executed by the processor, cause the processor to perform the steps of the method of claim 1-7.
10. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program, when executed by the processor, implements the steps of the method of claim 1-7.
Citation Information
Patent Citations
Unmanned aerial vehicle, method and device for navigating unmanned aerial vehicle and storage medium
CN107643088A
Adaptive UKF algorithm navigation method and system thereof
CN109781099A
Substation inspection robot navigation method and system based on neural network assistance
CN111366156A
Navigation method and device, storage medium and electronic device
CN111982106A
NARX neural network assisted integrated navigation method
CN113252031A