INS / GNSS information fusion positioning method based on hidden Kalman network
By combining the Hidden Kalman Network framework with multi-scale decoupling CACNN, LSTM and RNN, the noise and model error accumulation problems in INS/GNSS information fusion positioning are solved, the positioning accuracy and computational efficiency are improved, and it can adapt to different environmental changes.
Patent Information
- Application Number
- CN202410984826.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-22
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2044-07-22
AI Technical Summary
The existing INS/GNSS information fusion positioning method has problems of noise accumulation and model error accumulation in high-precision position perception, which leads to a decrease in navigation accuracy. In addition, the existing algorithm has high computational complexity or insufficient adaptability.
A navigation framework based on hidden Kalman network is adopted, combined with multi-scale decoupling CACNN, LSTM network and RNN network, and information fusion positioning is achieved through prediction module and update module. CNN is used to extract implicit information of two-dimensional images, LSTM processes time series data, RNN estimates Kalman gain, and adaptive learning model and noise are adopted.
The accuracy and computational efficiency of INS/GNSS information fusion positioning are improved, the computational complexity is reduced, the adaptability and interpretability of the model are enhanced, and high-precision position estimation is achieved.
Smart Images

Figure CN118759552B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of multi-source information fusion positioning, and in particular to an INS / GNSS information fusion positioning method based on a hidden Kalman network. Background Art
[0002] High-precision position sensing is crucial for autonomous navigation of unmanned aerial vehicles (UAVs). Inertial navigation systems (INS) are a key means of achieving this. However, conventional inertial sensors have high noise levels, which accumulate over time, causing the navigation solution to drift. Therefore, using an IMU directly for navigation is challenging. This issue can be addressed from two perspectives: first, using new inertial navigation data processing algorithms, such as the multi-scale three-dimensional continuous attractor neural network (3D-CANN); second, using external auxiliary sensors to fuse multi-source information, such as GNSS receivers. This fusion is typically achieved using two approaches: model-state-based nonlinear filters, such as the extended Kalman filter (EKF); and second, data-driven methods, such as training deep neural networks (DNNs).
[0003] For 3D-CANN, this neural system can successfully integrate the path of self-motion information for large-scale three-dimensional navigation and provide robust and error-correctable position information. It can suppress the serious drift that occurs in UAV IMU-based navigation, but it cannot completely eliminate error accumulation and can only delay the accumulation process. In addition, the algorithm uses a 3D-CANN network at each scale, and the computational complexity increases exponentially with the number of grids, requiring a trade-off between computational accuracy and complexity.
[0004] For the INS / GNSS information fusion positioning algorithm implemented using EKF, a fixed covariance matrix was initially used. This method was unable to adapt to time-varying model evolution errors and measurement errors, resulting in large positioning errors. Later, an adaptive filter was developed to update algorithm-related parameters at each iteration, but this method still has problems such as inaccurate modeling of model evolution errors and measurement errors, and the inability to directly model propagation models and measurement models.
[0005] For data-driven filtering methods, there is no need to assume propagation models and measurement models, which can solve the problem of model incompatibility to a certain extent, but it cannot consider the model state evolution information.
[0006] The Latent KalmanNet proposed in 2024 combines the advantages of propagation-based models and data-driven filtering algorithms. It uses data-driven learning to simultaneously learn observation-based estimation (through CNN encoder) and Kalman gain (through RNN), and uses the KalmanNet architecture to combine the two to achieve tracking of high-dimensional measurements. However, this method is not designed for INS / GNSS information fusion positioning, and its direct application effect is poor.
[0007] Therefore, it is necessary to study a new INS / GNSS information fusion positioning method, which can adaptively learn the model and noise while considering the model's "prediction → update" evolution information to achieve high-precision INS / GNSS information fusion positioning. Summary of the Invention
[0008] In view of this, the present invention provides an INS / GNSS information fusion positioning method based on a hidden Kalman network, which can improve the accuracy of INS / GNSS information fusion positioning.
[0009] In order to solve the above technical problems, the present invention is implemented as follows.
[0010] An INS / GNSS information fusion positioning method based on a hidden Kalman network is provided. The method adopts a hidden Kalman network navigation framework to achieve positioning. The hidden Kalman network navigation framework includes an encoder and a Kalman network. The Kalman network includes a prediction module and an update module.
[0011] The prediction module uses a multi-scale decoupled continuous attractor convolutional neural network (CACNN) to predict the drone's position based on inertial navigation information. Constructing a sequence of drone position estimates The multi-scale decoupling CACNN includes a multi-scale two-dimensional image feature construction module and a convolutional neural network CNN; the input of the multi-scale two-dimensional image feature construction module is 9 types of data, namely the three-dimensional displacement of the drone in this epoch, the three-dimensional attitude rotation of the drone in this epoch and the three-dimensional attitude of the drone output by the multi-scale decoupling CACNN in the previous epoch; at each scale, the 9 types of data are used to construct a local excitation matrix e, and the local excitation matrix e is used to update the grid cell activity matrix P and normalize it to obtain the two-dimensional image features of the current scale; the two-dimensional image features of M scales constitute the multi-scale two-dimensional image features; CNN is used to extract the implicit information in the multi-scale two-dimensional image features, and the systematic error caused by the inappropriate selection of CACNN modeling parameters is corrected to obtain the corrected drone position estimation change. Using the information from the previous epoch to fuse the positioning results Perform position superposition to obtain the estimated position of the UAV in this epoch
[0012] The local excitation matrix e consists of 9 excitation rows, each of which includes K grids; the grid size r of M scales m Incremental; the grid elements are based on the grid size r m and the excitation value determined by the number of grids K;
[0013] The encoder uses an LSTM network to estimate the sequence of drone positions output by the prediction module. and satellite positioning information to obtain the UAV position estimation sequence output by the encoder
[0014] The Kalman gain estimator in the update module uses a recurrent neural network RNN to estimate the sequence of drone positions output by the prediction module. The encoder outputs the estimated sequence of drone positions And the information fusion positioning results of the previous epoch Update Kalman gain K G ; The update module uses the updated Kalman gain to combine and Obtain information fusion positioning results
[0015] Preferably, the local excitation matrix e is obtained as follows:
[0016] Denote any of the nine types of data as α, then for the mth scale, the excitation value of the kth network in the K grids corresponding to α is e α,k , the calculation formula is:
[0017]
[0018] Where u = (k-(K+1) / 2)·r m -mod(α,K·r m ), mod(α,K·r m ) indicates that K·r is used for α m Modulo, δ α is the set self-motion variance;
[0019] At the mth scale, the K network excitation values of data α form the excitation row vector e α ; The excitation row vectors of 9 data constitute the 9×K local excitation matrix e of the mth scale.
[0020] Preferably, the method of updating the grid cell activity matrix P using the local excitation matrix e is:
[0021] The update formula is:
[0022] P new =ReLU(Pold ⊙e-ψ)
[0023] Among them, P new and P old They represent the grid cell activity matrices before and after the update, respectively; ψ represents the set global inhibition level, ⊙ represents the Hadamard product, and ReLU(·) represents the linear rectifier unit.
[0024] Preferably, the network architecture of the CNN includes the following connected in sequence:
[0025] A first 2D convolutional layer with a filter size of 3*3 and 256 channels; a first normalization layer; a first ReLU layer;
[0026] A second 2D convolutional layer with a filter size of 3*3 and 128 channels; a second batch normalization layer; a second ReLU layer;
[0027] A third two-dimensional convolutional layer with a filter size of 3*3 and 64 channels; a third batch normalization layer; a third ReLU layer;
[0028] a flattened layer;
[0029] A fully connected layer with an output size of 6*1, and
[0030] A regression output layer with an output size of 6*1.
[0031] Preferably, the network architecture of the LSTM network adopted by the encoder includes:
[0032] An LSTM layer with 150 hidden units connected to the first fully connected layer with an output size of 3*T, where T is the length of the input data sequence;
[0033] A second fully connected layer with an output size of 3*T;
[0034] The first and second fully connected layers are connected to a data concatenation layer with an output size of 6*T;
[0035] The data concatenation layer is sequentially connected to a fully connected layer with an output size of 3*T and a regression output layer with an output size of 3*T.
[0036] Preferably, the network architecture of the RNN network adopted by the Kalman gain estimator includes the following connected in sequence:
[0037] A GRU layer with 100 hidden units;
[0038] A fully connected layer with an output size of 3*T, where T is the length of the input data sequence; and
[0039] A regression output layer with an output size of 3*T.
[0040] Preferably, the method further comprises determining whether there is a GNSS observation:
[0041] When GNSS observations are missing, only the trained multi-scale decoupled CACNN is used to estimate the UAV position;
[0042] When there is GNSS observation, the encoder inputs the satellite position information sequence and the satellite observation information sequence to achieve GNSS-based positioning and obtain the UAV position estimation sequence The encoder outputs the estimated sequence of the drone position And the UAV position estimation sequence output by the prediction module Input Kalman gain estimator to realize Kalman gain K G Estimates of Kalman gain K G The update scheme realizes the information fusion positioning of INS and GNSS.
[0043] Beneficial effects:
[0044] (1) The present invention designs a prediction module based on a multi-scale decoupled CACNN. This module converts the information used for prediction into multi-scale two-dimensional data, which is equivalent to an image. Subsequently, a CNN with better performance on image data is used for prediction. The CNN grid can extract the implicit information in the two-dimensional image, correct the systematic error caused by inappropriate selection of CACNN modeling parameters, and obtain the corrected drone position estimate change. This further obtains a more accurate drone position estimate sequence for Kalman gain prediction. This improves the accuracy of the entire INS / GNSS information fusion positioning. In addition, the present invention uses two-dimensional images to reduce computational complexity.
[0045] (2) This paper considers the temporal correlation between satellite and receiver trajectories and replaces the encoder’s CNN network with an LSTM network. While CNNs are very effective in processing data with significant spatial correlation (such as images), LSTMs are generally considered a more suitable choice for processing time series data due to their ability to capture long-term dependencies and handle variable-length inputs. This makes LSTMs well-suited for processing dynamic and complex time series data such as satellite position and pseudorange observations.
[0046] (3) The present invention constructs reasonable input and output for the RNN network of the Kalman gain estimation module, making the training process easier to successfully implement and obtaining better joint estimation performance.
[0047] (4) The navigation framework of the present invention combines the advantages of nonlinear filtering based on model state and data-driven methods. It can adaptively learn models and noise while considering the evolutionary relationship of "prediction → update", and has both interpretability and wide applicability. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1 This is a schematic diagram of the hidden Kalman network navigation framework of the present invention.
[0049] Figure 2 This is a flow chart of an INS / GNSS information fusion positioning method based on a hidden Kalman network according to the present invention;
[0050] Figure 3 for Figure 1 The structure diagram of the multi-scale decoupled CACNN;
[0051] Figure 4 for Figure 1 Schematic diagram of the encoder network architecture;
[0052] Figure 5 for Figure 1 Schematic diagram of the network architecture of the Kalman gain estimator. DETAILED DESCRIPTION
[0053] The present invention is described in detail below with reference to the accompanying drawings and embodiments.
[0054] The embodiment of the present invention provides an INS / GNSS information fusion positioning method based on a hidden Kalman network, which uses a hidden Kalman network navigation framework to achieve positioning. Figure 1 As shown, it includes an encoder and a Kalman network; the Kalman network includes a prediction module and a Kalman gain estimator. The present invention designs a prediction module based on multi-scale decoupling CACNN (Continuous Attractor Convolutional Neural Network), which converts the information used for prediction into multi-scale two-dimensional data, which is equivalent to an image. Subsequently, a convolutional neural network (CNN) with better performance on image data is used for prediction. The CNN grid can extract implicit information from the two-dimensional image, correct the systematic error caused by inappropriate selection of CACNN modeling parameters, and obtain the corrected drone position estimation change, thereby obtaining a more accurate drone position estimation sequence for Kalman gain prediction. This improves the accuracy of the entire INS / GNSS information fusion positioning.
[0055] Figure 2The flowchart of the INS / GNSS information fusion positioning method based on the hidden Kalman network of the present invention is shown. As shown in the figure, the method includes the following steps:
[0056] Step 1: The prediction module uses multi-scale decoupled CACNN to predict the drone’s position based on inertial navigation information. Constructing a sequence of drone position estimates
[0057] The input of the multi-scale decoupled CACNN here is 9 types of data, namely the three-dimensional displacement of the drone in this epoch, the three-dimensional attitude rotation of the drone in this epoch, and the three-dimensional attitude of the drone output by the multi-scale decoupled CACNN in the previous epoch; at each scale, the 9 types of data are used to construct the local excitation matrix e, and the local excitation matrix e is used to update the grid cell activity matrix P and normalize it to obtain the two-dimensional image features of the current scale m. By changing the scale, multi-scale two-dimensional image features are obtained. The multi-scale two-dimensional image features are then input into the CNN network, and the CNN network is used to extract the implicit information in the two-dimensional image, correct the systematic error caused by the inappropriate selection of CACNN modeling parameters, and obtain the corrected change in the drone position estimate. Using the information from the previous epoch to fuse the positioning results Perform position superposition to obtain the estimated position of the drone Then construct the sequence
[0058] Step 2: The encoder uses a recurrent neural network (RNN) network to estimate the sequence of drone positions output by the prediction module and satellite positioning information from the satellite to obtain the UAV position estimation sequence output by the encoder
[0059] Step 3: The Kalman gain estimator in the update module also uses the RNN network to estimate the sequence of drone positions output by the prediction module and the estimated position sequence of the UAV output by the encoder And the sequence of information fusion positioning results shifted forward one epoch Update Kalman gain K G ; The update module uses the updated Kalman gain to combine and Achieve high-precision information fusion positioning.
[0060] Figure 3 The structural diagram of the multi-scale decoupled CACNN in the prediction module is shown in the figure. As shown in the figure, the input data of the multi-scale decoupled CACNN network includes the three-dimensional displacement of the UAV in the current epoch t obtained by the integration of the inertial navigation algorithm. The three-dimensional attitude rotation of the UAV in this epoch t output by the inertial navigation device is ω=[ωx ,ω y ,ω z ] T , the three-dimensional pose of the drone (Euler angle) output by CACNN at the previous epoch t-1 The 9 input data consist of 3D displacement, 3D posture rotation and 3D posture Euler angle.
[0061] The output data of the multi-scale decoupled CACNN network includes the three-dimensional displacement of the UAV in this epoch δp = [δp x ,δp y ,δp z ] T and the three-dimensional attitude of this epoch (Euler angles) δp=[δp x ,δp y ,δp z ] T The UAV position estimate of this epoch can be obtained by superimposing the information fusion positioning result of the previous epoch.
[0062] The multi-scale decoupled CACNN includes a multi-scale two-dimensional image feature construction module and a CNN network.
[0063] The multi-scale 2D image feature construction module converts the nine input data types into multi-scale 2D image features. This conversion utilizes a multi-scale decoupled CANN vector group. These decoupled CANN vector groups store the activation values used to update the grid cell activity matrix P. After normalization, the P matrix becomes the input data for the subsequent CNN network.
[0064] Still see Figure 3 The input data of the multi-scale two-dimensional image feature construction module are the above 9 types of data, each of which corresponds to a line of excitation. Each excitation line includes K grids, and the grid size is different at different scales. The grid element is based on the grid size r m The excitation value is determined by the number of grids K. At the same scale, 9 rows of excitation lines form a two-dimensional array, called a decoupled CANN vector group, also known as the local excitation matrix e. The local excitation matrix e is used to update the grid cell activity matrix P and normalize it to obtain the two-dimensional image features of the current scale m. For M scales, m ranges from 1 to M, and its grid size r m Increasing or decreasing. The decoupled CANN vector group 1 to decoupled CANN vector group M corresponding to the M scales are Figure 3 The output of the multi-scale 2D image feature construction module is M normalized P matrices, i.e., multi-scale 2D image features. The M-scale 2D image features form M×9×K 3D data, which is the output data of the multi-scale 2D image feature construction module.
[0065] The CNN network constructs the multi-scale two-dimensional image features to the drone position estimation change Nonlinear mapping of . Figure 3 The network structure of the CNN network includes multiple network layers connected in sequence, namely: a first two-dimensional convolutional layer with a filter size of 3*3 and 256 channels; a first batch normalization layer; a first ReLU layer; a second two-dimensional convolutional layer with a filter size of 3*3 and 128 channels; a second batch normalization layer; a second ReLU layer; a third two-dimensional convolutional layer with a filter size of 3*3 and 64 channels; a third batch normalization layer; a third ReLU layer; a flattening layer; a fully connected layer with an output size of 6*1, and a regression output layer with an output size of 6*1.
[0066] Based on the above structure, the training and use of the multi-scale decoupled CACNN of the present invention are as follows:
[0067] Step 11: Prepare training data for multi-scale decoupled CACNN.
[0068] The input data of the multi-scale decoupled CACNN include: the three-dimensional displacement of the UAV in the current epoch t obtained by integrating the inertial navigation algorithm The three-dimensional attitude rotation of the UAV in this epoch t output by the inertial navigation device is ω=[ω x ,ω y ,ω z ] T , the three-dimensional pose of the drone output by CACNN at the previous epoch t-1
[0069] The output data of the multi-scale decoupled CACNN include: the three-dimensional displacement of the UAV in this epoch δp = [δp x ,δp y ,δp z ] T and the three-dimensional posture of this epoch
[0070] Get the input data and give the true value of the 3D displacement and 3D attitude of the drone in this epoch as the label; the input data + label constitute the training sample, which is used as the supervised learning of the CACNN network. N}, and obtain the above information for each epoch of each trajectory. The above data are normalized for network training, and the parameters used for normalization are recorded for data recovery.
[0071] Then the obtained data is normalized. For the same type of data with different trajectories at different times, For example, let the nth trajectory at time t be Recorded as First find The maximum value in and minimum value Use the following formula to Perform normalization:
[0072]
[0073] The normalized data is marked with a superscript "'" on the basis of the original data to distinguish them. The normalization method for other types of data is the same as the above formula. Nine groups of normalized input data and six groups of normalized output data are obtained respectively, and the maximum values used for normalization are recorded. Then, step 12 is executed.
[0074] Step 12: Organize the normalized data into the input and output format of the multi-scale decoupled CACNN network.
[0075] This step includes the following sub-steps:
[0076] Step 121, initialize the grid cell activity matrix P. Select a scale m and a fixed number of grid sizes K, the grid size at the scale m is r m Construct a 9×K matrix of all 1s as the initial grid cell activity matrix.
[0077] Step 122: construct a local excitation matrix e, which consists of nine excitation row vectors corresponding to nine types of input data: The elements in the matrix e are the excitation row vectors. for In this step, we first initialize e to a 9×K matrix of all 1s.
[0078] Step 123: Calculate K element values in each excitation row vector.
[0079] by Introducing the incentive row vector as an example Calculation method: For The kth element in The calculation method is:
[0080]
[0081] in Express Use K·r m Modulus, express The normalized result of δ x is the normalized ego-motion variance. x The value of can be selected as a number in (0,1). When the variance of δ is large, x The value is selected to be larger, otherwise, δ x The value is selected to be smaller. In the actual set, you can also use the actual The variance is calculated as the value of δ x value.
[0082] Step 124, use K and r to calculate the nine groups of data. m Calculate the excitation vector and obtain the excitation matrix.
[0083] Step 125: Update the grid cell activity matrix P. Use the following formula to update the grid cell activity matrix P:
[0084] P new =ReLU(P old ⊙e-ψ)
[0085] Among them, P new and P old Represent the P matrix before and after the update, ψ represents the set global suppression level, represents the Hadamard product, and ReLU(·) represents the linear rectifier unit. Its working principle is as follows:
[0086]
[0087] Step 126: normalize the grid cell activity matrix P. For each element in P, use P i,j For example, P i,j Represents the element in the i-th row and j-th column of P, which is normalized using the following formula:
[0088]
[0089] Step 127: Construct a decoupled CANN image group. Select M different grid sizes r = {r1, r2, ..., r M}, for each r m , execute steps 121-126 respectively, and finally obtain M P matrices. Arrange these M P matrices sequentially in the third dimension to obtain multi-scale decoupled CACNN input data with a size of 9×K×M.
[0090] Step 13: Train the CACNN network.
[0091] The input data is fed into the CACNN network. The CACNN network outputs the corrected estimate of the drone’s position change. and pose estimation The results are compared with the corresponding labels and fed back to the network for network parameter optimization.
[0092] In one embodiment, the batch size of the training scheme is set to 30, and the network is trained in small batches for 150 iterations using the Adam optimizer, with a learning rate of 0.001, M of 5, K of 101, r of {0.01, 0.02, 0.03, 0.05, 0.07}, and δ x Take 0.4, and ψ take 0.4.
[0093] CACNN network output Further use the maximum value recorded in step 11 to perform denormalization and input it into the inertial navigation device to correct its attitude error; then Delay one epoch as input to the next epoch CACNN.
[0094] At the same time, the estimated position of the drone at time t is obtained by the following formula
[0095]
[0096] in Represents the estimated value of the information fusion positioning result output by the hidden Kalman network navigation framework in the last epoch The last data of .
[0097] Step 14: During actual positioning, obtain 9 types of data, normalize them and input them into the multi-scale decoupled CACNN to obtain the estimated position change of the drone. and pose estimation Further use the normalized maximum value recorded to perform denormalization and input it into the inertial navigation device to correct its attitude error; then Delay one epoch as the input of the next epoch CACNN. Superimposed on the previous epoch position estimate The last data of the epoch is used to obtain the estimated position of the UAV in this epoch. use Construct sequence to obtain drone position estimation sequence
[0098] Figure 4 This is a schematic diagram of the encoder network architecture of the present invention. As shown, the encoder in this embodiment uses a long short-term memory (LSTM) network, which is generally considered a more suitable choice due to its ability to capture long-term dependencies and handle variable-length inputs. This makes LSTM well-suited for processing dynamic and complex time series data such as satellite position and pseudorange observations.
[0099] The input data of the encoder network include: satellite position information sequence (azimuth, elevation and distance of satellite position relative to the receiver starting position), satellite observation information sequence (difference value of pseudorange relative to the initial epoch pseudorange), and the drone position estimation sequence output by the prediction module The output data is the real position information sequence of the UAV (based on the northeast celestial coordinate system, with the initial position of the UAV as the origin); assuming the sequence length is T, the epoch time interval is δt, and the maximum number of visible satellites in the data set is N, we can get the encoder input data of size (N*(3+1))×T and the encoder output data of size 3×T.
[0100] The LSTM network model used by the encoder can be Figure 4 The structure shown in the figure consists of an LSTM layer with 150 hidden units, two fully connected layers with an output size of 3*T, a data concatenation layer with an output size of 6*T, a fully connected layer with an output size of 3*T, and a regression output layer with an output size of 3*T. The parameter in the encoder network is denoted by Θ. The LSTM layer is connected to a fully connected layer, the two fully connected layers are connected to the data concatenation layer, and the data concatenation layer is connected to the fully connected layers and the regression output layer in turn.
[0101] Figure 5 Schematic diagram of the network architecture of the Kalman gain estimator of the present invention. The Kalman gain estimator of the present invention adopts an RNN network, specifically a GRU network.
[0102] The input data of the Kalman gain estimator includes: the UAV position estimation sequence output by the encoder UAV position estimation sequence output by CACNN The position estimate output by the positioning frame is shifted forward by one epoch. in Depend on According to The corresponding time combination is output as the Kalman gain true value sequence K G .
[0103] The parameter in the Kalman gain estimator network is denoted as Ψ. The schematic diagram of the model is shown in the attached figure. Figure 3 As shown in the figure, its network architecture includes: a GRU layer with 100 hidden units, a fully connected layer with an output size of 3*T, and a regression output layer with an output size of 3*T.
[0104] The encoder and Kalman gain estimator are trained and used as follows:
[0105] Step 21: Normalize the input data of the encoder and the Kalman gain estimator respectively.
[0106] The x-axis position of the output data of the hidden Kalman network For example, let the nth trajectory at time t be Recorded as First find The maximum value in and minimum value Use the following formula to Perform normalization:
[0107]
[0108] The normalized data is distinguished by adding a superscript ' to the original data. The normalization method for other types of data is the same as above, and the maximum value used for normalization is recorded.
[0109] Step 22: Start training the INS / GNSS information fusion positioning framework model. First, initialize the training parameters and input. Randomly initialize the parameters in the network and input the normalized data into the network.
[0110] Step 23: Warm-start the encoder network and select some data to train the encoder network separately. The batch size is set to 30, and the network is trained in small batches for 300 iterations using the Adam optimizer with a learning rate of 0.001. For a batch containing Q groups of data, the network loss L is calculated using the following MSE function: Q (Θ):
[0111]
[0112] in and They represent the encoder estimated 3D position and the true 3D position of the qth group of data at time t in the batch, respectively.
[0113] In step 24, the batch size is set to 30, and for a batch containing Q groups of data, the encoder network and the Kalman gain estimator network are trained alternately.
[0114] In this step, first, the Kalman gain estimator network is trained using the Adam optimizer with a learning rate of 0.001. The network loss L is calculated using the following MSE function: Q (Θ,Ψ), and update the Kalman gain estimator network parameters;
[0115]
[0116] Then, the encoder network is trained using the Adam optimizer with a learning rate of 0.001 and L QThe (Θ,Ψ) function calculates the network loss and updates the encoder network parameters Θ;
[0117] This step is repeated 150 times to complete the training of the information fusion positioning framework.
[0118] Step 14: Use the trained model to estimate the drone’s position.
[0119] During the actual estimation, the three-dimensional displacement of the UAV in this epoch, the three-dimensional attitude rotation of the UAV in this epoch, and the three-dimensional attitude of the UAV output in the previous epoch are obtained, processed into a multi-scale decoupled CANN vector group, and input into the CNN network to obtain the UAV position estimate. Then follow the encoder output The corresponding time is combined into the UAV position estimation sequence UAV position estimation sequence Output to the encoder and update module.
[0120] The encoder uses satellite positioning information and the UAV position to estimate the sequence Obtaining a sequence of drone position estimates to the Kalman gain estimator.
[0121] The Kalman gain estimator is based on and Generate Kalman gain K G ; Then update the calculation unit in the module to calculate Get the drone's position estimate
[0122] When using the fusion positioning method of the present invention, since the observation frequency of GNSS is much smaller than the output frequency of INS, when GNSS observation is missing, only the trained multi-scale decoupled CACNN is used to estimate the position change and integrate to obtain the UAV trajectory; when GNSS observation is present, the GNSS / INS information fusion positioning framework starts working: the encoder network inputs the satellite position information sequence and the satellite observation quantity information sequence to realize GNSS-based positioning; the encoder output result and the CACNN position estimation result are input into the Kalman gain estimator to realize K G The estimation of Kalman gain is used to update the method to achieve high-precision information fusion positioning.
[0123] The above specific embodiments merely illustrate the design principles of the present invention. The shapes and names of the components described herein may vary and are not limiting. Therefore, those skilled in the art may modify or substitute equivalents for the technical solutions described in the above embodiments. Such modifications and substitutions, without departing from the inventive spirit and technical solutions of the present invention, shall fall within the scope of protection of the present invention.
Claims
1. An INS / GNSS information fusion positioning method based on a hidden Kalman network, characterized in that: The method uses a hidden Kalman network navigation framework to achieve positioning; the hidden Kalman network navigation framework includes an encoder and a Kalman network; the Kalman network includes a prediction module and an update module; The prediction module uses a multi-scale decoupled continuous attractor convolutional neural network (CACNN) to predict the drone's position based on inertial navigation information. Constructing a sequence of drone position estimates The multi-scale decoupled CACNN includes a multi-scale two-dimensional image feature construction module and a convolutional neural network (CNN). The input of the multi-scale two-dimensional image feature construction module is nine types of data: the three-dimensional displacement of the drone in the current epoch, the three-dimensional attitude rotation of the drone in the current epoch, and the three-dimensional attitude of the drone output by the multi-scale decoupled CACNN in the previous epoch. At each scale, nine types of data are used to construct a local excitation matrix e, which is then used to update the grid cell activity matrix P and normalize it to obtain the two-dimensional image features of the current scale. M-scale two-dimensional image features form multi-scale two-dimensional image features; CNN is used to extract implicit information from multi-scale two-dimensional image features, correct the system error caused by inappropriate selection of CACNN modeling parameters, and obtain the corrected drone position estimation change Using the information from the previous epoch to fuse the positioning results Perform position superposition to obtain the estimated position of the UAV in this epoch The local excitation matrix e consists of 9 excitation rows, each of which includes K grids; the grid size r of M scales m Incremental; the grid elements are based on the grid size r m and the excitation value determined by the number of grids K; The encoder uses an LSTM network to estimate the sequence of drone positions output by the prediction module. and satellite positioning information to obtain the UAV position estimation sequence output by the encoder The Kalman gain estimator in the update module uses a recurrent neural network RNN to estimate the sequence of drone positions output by the prediction module. The encoder outputs the estimated sequence of drone positions And the information fusion positioning results of the previous epoch Update Kalman gain K G ; The update module uses the updated Kalman gain to combine and Obtain information fusion positioning results 2. The method according to claim 1, wherein The local excitation matrix e is obtained as follows: Denote any of the nine types of data as α, then for the mth scale, the excitation value of the kth network in the K grids corresponding to α is e α,k , the calculation formula is: Where u = (k-(K+1) / 2)·r m -mod(α,K·r m ), mod(α,K·r m ) indicates that K·r is used for α m Modulo, δ α is the set self-motion variance; At the mth scale, the K network excitation values of data α form the excitation row vector e α ; The excitation row vectors of the 9 data constitute the 9×K local excitation matrix e of the mth scale.
3. The method according to claim 1, wherein The grid cell activity matrix P is updated using the local excitation matrix e as follows: The update formula is: P new =ReLU(P old ⊙e−ψ) Among them, P new and P old They represent the grid cell activity matrices before and after the update, respectively; ψ represents the set global inhibition level, ⊙ represents the Hadamard product, and ReLU(·) represents the linear rectifier unit.
4. The method according to claim 1, wherein The network architecture of the CNN includes the following connected in sequence: A first 2D convolutional layer with a filter size of 3*3 and 256 channels; a first normalization layer; a first ReLU layer; A second 2D convolutional layer with a filter size of 3*3 and 128 channels; a second batch normalization layer; a second ReLU layer; A third two-dimensional convolutional layer with a filter size of 3*3 and 64 channels; a third batch normalization layer; a third ReLU layer; a flattened layer; A fully connected layer with an output size of 6*1, and A regression output layer with an output size of 6*1.
5. The method according to claim 1, wherein The network architecture of the LSTM network used by the encoder includes: An LSTM layer with 150 hidden units connected to the first fully connected layer with an output size of 3*T, where T is the length of the input data sequence; A second fully connected layer with an output size of 3*T; The first and second fully connected layers are connected to a data concatenation layer with an output size of 6*T; The data concatenation layer is sequentially connected to a fully connected layer with an output size of 3*T and a regression output layer with an output size of 3*T.
6. The method according to claim 1, wherein The network architecture of the RNN network used by the Kalman gain estimator includes the following connected in sequence: A GRU layer with 100 hidden units; A fully connected layer with an output size of 3*T, where T is the length of the input data sequence; and A regression output layer with an output size of 3*T.
7. The method according to claim 1, wherein The method further includes determining whether there is a GNSS observation: When GNSS observations are missing, only the trained multi-scale decoupled CACNN is used to estimate the UAV position; When there is GNSS observation, the encoder inputs the satellite position information sequence and the satellite observation information sequence to achieve GNSS-based positioning and obtain the UAV position estimation sequence The encoder outputs the estimated sequence of the drone position And the UAV position estimation sequence output by the prediction module Input Kalman gain estimator to realize Kalman gain K G Estimates of Kalman gain K G The update scheme realizes the information fusion positioning of INS and GNSS.
Citation Information
Patent Citations
Self-evolution ANFIS and UKF combined GPS / MEMS-INS integrated positioning error dynamic forecasting method
CN101819041A
Quasi tightly coupled GNSS-INS integration process
US20140152493A1