WiFi and UWB fused positioning method

Through the fusion positioning method of WiFi and UWB, combined with the fusion fingerprint positioning regression model, Hessian-PSO three-dimensional positioning algorithm and HMMK joint algorithm, the problems of low accuracy and poor stability in complex dynamic environments are solved, and more efficient positioning accuracy and stability are achieved.

CN120166524APending Publication Date: 2025-06-17SHENYANG LIGONG UNIV
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510473633.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-16
Publication Date
2025-06-17

AI Technical Summary

Technical Problem

The existing indoor positioning technology has problems such as low positioning accuracy and poor positioning stability in complex dynamic environments.

Method used

Using the fusion positioning method of WiFi and UWB, by obtaining the distance between the access point and the receiver, the distance between the base station and the tag and the signal strength value, a fusion fingerprint positioning regression model and Hessian-PSO three-dimensional positioning algorithm are constructed, and combined with the HMMK joint algorithm is optimized.

Benefits of technology

It effectively improves positioning accuracy and positioning stability, and can achieve more accurate positioning in complex dynamic environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120166524A_ABST
    Figure CN120166524A_ABST
Patent Text Reader

Abstract

The invention provides a WiFi and UWB fused positioning method, and relates to the field of indoor positioning, a data set is constructed and preprocessed through a WiFi-RTT technology and a UWB-TWR technology, the data set is processed by fusing a fingerprint positioning regression model and a Hessian-PSO three-dimensional positioning algorithm, accurate positioning of a to-be-measured point is realized, and the accuracy of the to-be-measured point is improved. And further optimization is carried out based on an HMMK joint algorithm to obtain an optimal state sequence, so that the problems of low positioning precision, poor positioning stability and the like in a complex dynamic environment are solved, and the positioning precision and the positioning stability are effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of indoor positioning, and more specifically to a positioning method that combines WiFi and UWB. Background Art

[0002] Indoor positioning is one of the research hotspots of current positioning services. Since indoor positioning technology faces a more complex environment than outdoor positioning technology, the research on indoor positioning mainly focuses on two main issues: improving accuracy and anti-interference. However, current positioning technologies have low positioning accuracy and poor positioning stability in complex dynamic environments. Summary of the Invention

[0003] Aiming at the deficiencies of the prior art, the purpose of the present invention is to propose a positioning method that combines WiFi and UWB, including:

[0004] Step 1: Obtain the distances between each access point AP and the receiving end, obtaining the distances between four access points AP and the receiving end, and further obtaining the distances between four access points AP and the receiving end at different positions of the point to be measured, forming a first data set. Obtain the distances between each base station and the tag, obtaining the distances between four base stations and the tag, and further obtaining the distances between four base stations and the tag at different positions of the point to be measured, forming a second data set. Obtain the signal strength values from each base station to the tag, obtaining the signal strength values from four base stations to the tag, and further obtaining the signal strength values from four base stations to the tag at different positions of the point to be measured, forming a third data set. Preprocess the first data set, the second data set, and the third data set to obtain the preprocessed first data set, the preprocessed second data set, and the preprocessed third data set;

[0005] Among them, one of the access points AP and one of the base stations correspond to a target position, and there are four target positions. The receiving end and the tag correspond to the point to be measured;

[0006] Step 2: Construct a fusion fingerprint positioning regression model. According to the preprocessed first data set, the preprocessed second data set, and the preprocessed third data set, generate a time series, input the time series into the fusion fingerprint positioning regression model, obtain the predicted values of the coordinates corresponding to the time series. According to the predicted values of the coordinates corresponding to the time series and the true values of the coordinates corresponding to the time series, update the parameters in the fusion fingerprint positioning regression model. After multiple updates, obtain the trained fusion fingerprint positioning regression model. Input the time series to be predicted into the trained fusion fingerprint positioning regression model to obtain the initial target coordinates

[0007] Step 3: Design the Hessian-PSO three-dimensional positioning algorithm. Based on the Hessian-PSO three-dimensional positioning algorithm, process the initial target coordinates to obtain the final coordinates

[0008] Step 4: Construct the HMMK joint algorithm. According to the hidden Markov model, calculate the optimal state at each moment to obtain the optimal state sequence.

[0009] Optionally, Step 2 specifically includes:

[0010] Step 2.1: Construct a fusion fingerprint positioning regression model. The fusion fingerprint positioning regression model includes an input layer, a one-dimensional convolutional neural network, an activation layer, a pooling layer, dropout, and an MLP;

[0011] Step 2.2: Generate a time series X = [x1, x2, …, x L of length L according to the preprocessed first dataset, the preprocessed second dataset, and the preprocessed third dataset. The i-th sample in the time series is represented as x i = [D w D u RSSI], where D w = [d w0 d w1 d w2 d w3 , D u = [d u0 d u1 d u2 d u3 , RSSI = [rssi0 rssi1 rssi2 rssi3]. Among them, the data included in the i-th sample are the data measured at the position of the point to be measured. d w0 represents the position from the access point AP0 to the receiver in the i-th sample, d w1 represents the position from the access point AP1 to the receiver in the i-th sample, d w2 represents the position from the access point AP2 to the receiver in the i-th sample, d w3 represents the position from the access point AP3 to the receiver in the i-th sample, d u0 represents the position from the base station 0 to the receiver in the i-th sample, d u1 represents the position from the base station 1 to the receiver in the i-th sample, d u2 represents the position from the base station 2 to the receiver in the i-th sample, d u3Denote the position from base station 3 to the receiving end in the $i$-th sample, $rssi0$ represents the signal strength value from base station 0 to the tag in the $i$-th sample, $rssi1$ represents the signal strength value from base station 1 to the tag in the $i$-th sample, $rssi2$ represents the signal strength value from base station 2 to the tag in the $i$-th sample, and $rssi3$ represents the signal strength value from base station 3 to the tag in the $i$-th sample;

[0012] Step 2.3: Process the time series through a one-dimensional convolutional neural network to obtain the output of the one-dimensional convolutional neural network

[0013] Step 2.4: For the output of the one-dimensional convolutional neural network Perform a flattening operation to obtain the flattened data $X'$, which is specifically represented by the following formula:

[0014]

[0015] where, $Flatten(·)$ is the flattening operation function;

[0016] Furthermore, take $X'$ as $X$ 0 Input it into the multi-layer perceptron MLP to obtain the output $X$ of the multi-layer perceptron MLP c+1 , and the specific calculation formula is represented by the following formula:

[0017] $X$ c+1 $= Dropout(f(W$ c $X$ c $+ b$ c ));

[0018] where, $X$ c represents the output of the $c$-th layer of the multi-layer perceptron MLP, $W$ c is the weight of the fully connected layer of the $c$-th layer, $b$ c is the bias of the fully connected layer of the $c$-th layer, $X$ c+1 represents the output of the $(c + 1)$-th layer of the multi-layer perceptron MLP, that is, the predicted value of the coordinates, and then obtain the predicted value of the coordinates of each sample;

[0019] Step 2.5: According to the predicted value of the coordinates of each sample in the time series and the true value of the coordinates of the corresponding sample, calculate the final loss function value, which is specifically represented by the following formula:

[0020]

[0021] where, $\omega - Huber$ ih represents the loss of the $h$-th output of the $i$-th sample, $\omega$ h represents the weight of the $h$-th output variable, $g$ is the threshold, used to determine whether to use the mean square error $MS$ or the mean absolute error $MAE$ of the sample, $y$ih denote the true value of the coordinates of the h-th output of the i-th sample; denote the predicted value of the coordinates of the h-th output of the i-th sample; L represents the total number of samples, i.e., the length of the historical time series, m2 represents the number of output variables of each sample, and ω-HuberLoss represents the value of the final loss function;

[0022] Update the parameters in the fusion fingerprint positioning regression model according to the value of the final loss function until the fusion fingerprint positioning regression model converges, and obtain the trained fusion fingerprint positioning regression model;

[0023] Step 2.6: Input the time series to be predicted into the trained fusion fingerprint positioning regression model to obtain the initial target coordinates

[0024] Optionally, Step 2.3 specifically includes:

[0025] Step 2.3.1: Input the time series into the one-dimensional convolutional layer to obtain the output Y1 of the one-dimensional convolutional layer, where the convolutional kernel of the one-dimensional convolutional layer is expressed as Specifically expressed by the following formula:

[0026]

[0027] where S represents the stride size of the convolutional kernel sliding on the time series, x 1,n·(S+j) represents the j-th data with a stride size of S at the n-th index output in the first sample x1, m1 represents the total number of convolutional kernels, y 1,n represents the output at the n-th index after the convolution process, M1 represents the length of the output Y1 of the one-dimensional convolutional layer, P1 represents the padding size in the one-dimensional convolutional layer, S1 represents the stride size, represents rounding down;

[0028] Step 2.3.2: Process the output Y1 of the one-dimensional convolutional layer through the activation function ReLU to obtain the output of the activation function Specifically implemented by the following formula:

[0029]

[0030] where the output of the activation function The parameters in are expressed as represents the output at the n-th index after the activation function;

[0031] Step 2.3.3: Process the output of the activation function through Dropout to obtain the output of Dropout. Specifically expressed by the following formula:

[0032]

[0033] Among them, y' 1,n is the output after Dropout, D[n1] is a random variable, and D[n1] represents whether it is retained, follows a Bernoulli distribution, p represents the probability of being discarded, and l represents the number of stacked layers;

[0034] Step 2.3.4: Input the output of Dropout into the max-pooling layer to obtain the output of the one-dimensional convolutional neural network Specifically, it is represented by the following formula:

[0035]

[0036] Among them, is the a-th output element after pooling, s a represents the translation index length after the a-th pooling, m is the relative position index of the window, the size of the window is k, the window range is from 0 to k - 1, s represents the stride size, M out is the output sequence length, M l is the sequence length after passing through the one-dimensional convolutional neural network with l layers.

[0037] Optionally, Step 3 specifically includes:

[0038] Step 3.1: Construct the restricted ranges of the x and y axes and the restricted range of the z axis according to the initial target coordinates Specifically, it is represented by the following formula:

[0039]

[0040] Among them, d x represents the semi-axis length along the x axis, d y represents the semi-axis length along the y axis, d z represents the semi-axis length along the z axis;

[0041] Construct the objective function, specifically represented by the following formula:

[0042] f(x, y, z) = sum((AN - b) 2 );

[0043] Among them, A, N, and b are represented as:

[0044]

[0045] Among them, (x1, y1, z1), (x2, y2, z2), (x3, y3, z3), and (x4, y4, z4) are the true coordinates of four base stations, and D1, D2, D3, and D4 represent the distances from the point to be measured to the four target positions respectively;

[0046] Step 3.2: According to the true distance between the base station and the point to be measured, further determine the objective function, and the expanded objective function is expressed as:

[0047]

[0048] Among them, d true,r is the true distance between the r-th base station and the point to be measured, and d obs,r represents the distance between the r-th base station and the initial target coordinates, which is expressed as:

[0049]

[0050] Among them, (x r , y r , z r ) are the true coordinates of the r-th base station;

[0051] Take the first-order derivative of f(x, y, z) to obtain the gradient formula, which is specifically expressed by the following formula:

[0052]

[0053] Take the second-order derivative of f(x, y, z) and substitute it into the Hessian matrix formula to obtain the Hessian matrix. The Hessian matrix formula is specifically expressed by the following formula:

[0054]

[0055] Based on the above formula, when D1, D2, D3, and D4 represent the distances from the access point to the receiving end, the Hessian matrix of WiFi is obtained; when D1, D2, D3, and D4 represent the distances from the base station to the tag, the Hessian matrix of UWB is obtained;

[0056] Step 3.3: According to the Hessian matrix of WiFi and the Hessian matrix of UWB, use PSO filtering to optimize the coordinate position to obtain the optimal coordinates of WiFi and the optimal coordinates of UWB

[0057] Specifically, randomly initialize the positions and velocities of N particles, and initialize the best position and the global optimal solution; update the velocity and position of each particle, which is specifically expressed by the following formula:

[0058]

[0059] p u (τ + 1) = p u (τ) + v u (τ + 1);

[0060] where v u (τ + 1) is the velocity of the u-th particle at the (τ + 1)-th iteration, ω is the inertia weight, c1 is the individual learning factor, c2 is the social learning factor, r1 and r2 are random numbers, and v u (τ) represents the velocity of the u-th particle at the τ-th iteration, and p best (τ) is the best position at the τ-th iteration, and g best (τ) is the global optimal solution at the τ-th iteration, and p u (τ) is the position of the u-th particle at the τ-th iteration, and p u (τ) = (x u (τ), y u (τ), z u (τ)), where x u (τ) is the coordinate of the u-th particle on the x-axis at the τ-th iteration, y u (τ) is the coordinate of the u-th particle on the y-axis at the τ-th iteration, and z u (τ) is the coordinate of the u-th particle on the z-axis at the τ-th iteration, and p u (τ + 1) is the position of the u-th particle at the (τ + 1)-th iteration, and α represents the learning rate, is the gradient correction term based on the Hessian matrix;

[0061] Based on the above formula, the positions and velocities of all particles are updated to obtain the updated positions of all particles after update. Based on the Hessian-PSO algorithm, the global optimal solution is determined among the updated positions of all particles after update, which is specifically represented by the following formula:

[0062] g best (τ + 1) = Hessian-PSO τ (p1(τ + 1), p2(τ + 1), …, p N (τ + 1));

[0063] When the number of iterations reaches the threshold, the global optimal solution is taken as the best position, that is, the optimal coordinates;

[0064] Based on this, when is the gradient correction term of the Hessian matrix based on WiFi, for each sample in the time series to be predicted, the optimal coordinates of the WiFi of the i-th sample are obtained When When it is the gradient correction term of the Hessian matrix based on UWB, for each sample in the time series to be predicted, the optimal coordinates of UWB for the i-th sample are obtained

[0065] Step 3.4: Use the least squares method to calculate the numerical values of the weights α, β, and γ, and establish a linear model for the x-axis coordinate, which is specifically represented by the following formula:

[0066]

[0067] where e is the error between the measured distance and the actual distance, and RSS represents the residual sum of squares;

[0068] Take the partial derivative of the weight α and set the partial derivative of the weight α to 0. After sorting and simplifying, the following formula is obtained:

[0069]

[0070] Substitute the sorted and simplified formula into the linear model for the x-axis coordinate to obtain the following formula:

[0071]

[0072] Finally, the numerical value of the weight α is solved, which is specifically represented by the following formula:

[0073]

[0074] Based on the above formula, replace α with β, replace x with y to obtain the numerical value of the weight β, replace α with γ, and replace x with z to obtain the numerical value of the weight γ;

[0075] Step 3.5: Calculate the final coordinates according to the numerical values of the weights α, β, and γ Specifically represented by the following formula:

[0076]

[0077] where α is the weight of the coordinates measured by WiFi in the x-axis coordinate, 1 - α is the weight of the coordinates measured by UWB in the x-axis coordinate, β is the weight of the coordinates measured by WiFi in the y-axis coordinate, 1 - β is the weight of the coordinates measured by UWB in the y-axis coordinate, γ is the weight of the coordinates measured by WiFi in the z-axis coordinate, and 1 - γ is the weight of the coordinates measured by UWB in the z-axis coordinate.

[0078] Optionally, step 4 specifically includes:

[0079] Step 4.1: Establish the state space. The motion states are divided into a stationary state S1, a uniform motion state S2, and an accelerated motion state S3, which are represented by the following formula:

[0080] S = {S1, S2, S3};

[0081] Based on the state space, establish the state transition matrix A of the hidden Markov chain, which is represented as:

[0082]

[0083] Among them, the elements in the state transition matrix A are represented as indicating the transition from state S σ to state

[0084] Step 4.2: Set the observation sequence O = {O1, O2, …, O t}, where O t = (x t , y t , z t ), O t ∈ O, and O t includes the three-dimensional coordinates observed at time t. Furthermore, obtain the observation probability matrix B, which is specifically represented by the following formula:

[0085]

[0086] Among them, the elements in the observation probability matrix B are represented as Among them, indicates the probability of observing O in state t . According to the observation probability matrix B, calculate the velocity v t , acceleration a t and eigenvector χ t , which are represented by the following formula:

[0087]

[0088] a t = v t - v t-1 ;

[0089] χ t = [v t , a t ;

[0090] Among them, x t is the x-axis coordinate observed at time t, x t-1 is the x-axis coordinate observed at time t - 1, y t is the y-axis coordinate observed at time t, yt-1 is the observed y-axis coordinate at time t-1, z t is the observed z-axis coordinate at time t, z t-1 is the observed z-axis coordinate at time t-1, v t-1 is the velocity at time t-1;

[0091] Step 4.3: According to the state transition matrix A, the observation probability matrix B, the velocity v t , the acceleration a t and the eigenvector F t , based on the Markov chain, calculate the state transition probability matrix P. The sum of the elements in each row of the state transition probability matrix P is 1. The state transition probability matrix P is expressed as:

[0092]

[0093] where the elements in the state transition probability matrix P are expressed as or both represent the probability of transitioning from state S σ to state ;

[0094] Step 4.4: Set the initial state probability δ1(σ) = π σ b σ (O1), where δ1(σ) represents the optimal path probability of reaching state S σ at time 1, π σ represents the probability of state S σ , and b σ (O1) represents the probability of observing I1 in state S σ . According to the initial state probability, the observation probability matrix B, and the state transition probability matrix P, calculate δ t (σ) and the path of the transition of state S σ and store it in ψ t (σ). Specifically, it is implemented through the following formula:

[0095]

[0096] where δ t (σ) represents the optimal path probability of reaching state S σ at time t, and δ t-1 (σ) represents the optimal path probability of reaching state S σ at time t-1, traverse all the states S σ at the previous moment to obtain the maximum probability path reaching state S σ at time t-1. Among them, the path of the initial state transition is stored as ψ1(σ) = 0;

[0097] Step 4.5: Obtain the complete optimal state sequence through path storage, which is specifically implemented by the following formula:

[0098]

[0099] where is the optimal state at time t + 1, is the optimal state at time t, represents the path storage of the optimal state at time t + 1, and also represents the optimal state at time t + 1 is transferred from state .

[0100] Optionally, Step 1 specifically includes:

[0101] Step 1.1: Measure the distance between each access point AP and the receiver through the WiFi-RTT technology to obtain the distances between four access points AP and the receiver. Then, for different positions of the point to be measured, measure multiple groups of distances between four access points AP and the receiver to form a first data set; Measure the distance between each base station and the tag through the UWB-TWR technology to obtain the distances between four base stations and the tag. Then, for different positions of the point to be measured, measure multiple groups of distances between four base stations and the tag to form a second data set, and measure the signal strength value from each base station to the tag to obtain the signal strength values from four base stations to the tag. Then, for different positions of the point to be measured, measure multiple groups of signal strength values from four base stations to the tag to form a third data set;

[0102] Step 1.2: Preprocess the first data set, the second data set, and the third data set to obtain the preprocessed first data set, the preprocessed second data set, and the preprocessed third data set;

[0103] Specifically, for the first data set, the second data set, and the third data set, find zero values and delete the entire rows where the zero values are located to obtain the deleted first data set, the deleted second data set, and the preprocessed third data set;

[0104] Adopt the interpolation method to enhance the data of the distances between the access points AP and the receiver in the deleted first data set and expand it to the same dimension as the distances between the base stations and the tag to obtain the expanded first data set;

[0105] Sort the distances between access points (APs) and receivers in the expanded first dataset in ascending order, and then determine the first quartile Q1, the second quartile Q2, and the third quartile Q3. Among them, in the expanded first dataset, the distances smaller than the first quartile Q1 account for 25% of the expanded first dataset, the distances smaller than the second quartile Q2 account for 50% of the expanded first dataset, and the distances smaller than the third quartile Q3 account for 75% of the expanded first dataset. Calculate the interquartile range (IQR) based on the first quartile Q1 and the third quartile Q3, specifically calculated by the following formula:

[0106] IQR = Q3 - Q1;

[0107] Calculate the upper bound value and the lower bound value based on the interquartile range (IQR), the first quartile Q1, and the third quartile Q3, specifically calculated by the following formula:

[0108]

[0109] Then, in the expanded first dataset, obtain the distances lower than the lower bound value and the distances higher than the upper bound value. Delete the distances lower than the lower bound value and the distances higher than the upper bound value in the expanded first dataset, and fill them with the second quartile Q2 to obtain the preprocessed first dataset;

[0110] Similarly, sort the distances between the base stations and the tags in the deleted second dataset in ascending order, and then determine the first quartile Q1, the second quartile Q2, and the third quartile Q3. Calculate the interquartile range (IQR) based on the first quartile Q1 and the third quartile Q3. Calculate the upper bound value and the lower bound value based on the interquartile range (IQR), the first quartile Q1, and the third quartile Q3. Then, in the deleted second dataset, obtain the distances lower than the lower bound value and the distances higher than the upper bound value. Delete the distances lower than the lower bound value and the distances higher than the upper bound value in the deleted second dataset, and fill them with the second quartile Q2 to obtain the preprocessed second dataset.

[0111] The beneficial effects of adopting the above technical solutions are as follows:

[0112] The present invention constructs a dataset and preprocesses the dataset through the WiFi-RTT technology and the UWB-TWR technology, and then processes the dataset through the fusion fingerprint positioning regression model and the Hessian-PSO three-dimensional positioning algorithm to achieve precise positioning of the point to be measured. Furthermore, based on the HMMK joint algorithm for further optimization, the optimal state sequence is obtained, solving the problems of low positioning accuracy and poor positioning stability in complex dynamic environments, and effectively improving the positioning accuracy and positioning stability. Description of the Drawings

[0113] Figure 1 Schematic flowchart of a positioning method integrating WiFi and UWB in an embodiment of the present invention;

[0114] Figure 2 Schematic structural diagram of a fusion fingerprint positioning regression model in an embodiment of the present invention;

[0115] Figure 3 Layout diagram of four base stations in an embodiment of the present invention;

[0116] Figure 4 Location map of reference points in an embodiment of the present invention;

[0117] Figure 5 Trajectory diagram in an embodiment of the present invention;

[0118] Figure 6 Schematic diagram of the experimental results of the ablation experiment on the length of the time series in an embodiment of the present invention;

[0119] Figure 7 Schematic diagram of the experimental results of the ablation experiment on the number of Conv 2D in an embodiment of the present invention;

[0120] Figure 8 Schematic diagram of the experimental results of the ablation experiment on the loss function in an embodiment of the present invention;

[0121] Figure 9 Model training iteration diagram of the training set and the test set in an embodiment of the present invention;

[0122] Figure 10 Average Euclidean distance diagram of the training set and the test set in an embodiment of the present invention;

[0123] Figure 11 Measurement point error diagram in an embodiment of the present invention;

[0124] Figure 12 Result diagram of the first joint algorithm for Trajectory 1. Among them, (a) is the three-dimensional result diagram of the first joint algorithm, and (b) is the two-dimensional result diagram of the first joint algorithm;

[0125] Figure 13 Result diagram of the second joint algorithm for Trajectory 1. Among them, (a) is the three-dimensional result diagram of the second joint algorithm, and (b) is the two-dimensional result diagram of the second joint algorithm;

[0126] Figure 14 Result diagram of the third joint algorithm for Trajectory 1. Among them, (a) is the three-dimensional result diagram of the third joint algorithm, and (b) is the two-dimensional result diagram of the third joint algorithm;

[0127] Figure 15 It is the result diagram of the first joint algorithm for trajectory 2. Among them, (a) is the three-dimensional result diagram of the first joint algorithm, and (b) is the two-dimensional result diagram of the first joint algorithm;

[0128] Figure 16 It is the result diagram of the second joint algorithm for trajectory 2. Among them, (a) is the three-dimensional result diagram of the second joint algorithm, and (b) is the two-dimensional result diagram of the second joint algorithm;

[0129] Figure 17 It is the result diagram of the third joint algorithm for trajectory 2. Among them, (a) is the three-dimensional result diagram of the third joint algorithm, and (b) is the two-dimensional result diagram of the third joint algorithm. Detailed implementation manners

[0130] The following combines the accompanying drawings and embodiments to further describe in detail the specific implementation manners of the present invention. The following embodiments are used to illustrate the present invention, but are not used to limit the scope of the present invention.

[0131] Aiming at the problems existing in the prior art, the accuracy and stability of positioning are improved by fusing WiFi and UWB positioning. In order to solve the problems of inaccurate positioning of specific positions and inaccurate fitting of motion trajectories, a positioning method based on the fusion of WiFi and UWB is proposed, which solves the problems of low positioning accuracy and poor positioning stability in complex dynamic environments, and effectively improves the positioning accuracy and positioning stability.

[0132] Aiming at the low positioning accuracy and poor stability of the prior art, the method of the present invention is based on the fusion technology of WiFi and UWB, and a positioning system and method for fusing WiFi and UWB are proposed to improve the positioning accuracy and positioning stability.

[0133] In order to solve the above problems, the overall block diagram of a positioning system and method for fusing WiFi and UWB provided by the present invention is as Figure 1 shown, including: data preprocessing, a fusion fingerprint positioning regression model, a Hessian-PSO (Hessian matrix-Particle Swarm Optimization) three-dimensional positioning algorithm, and an HMMK joint algorithm (Hidden Markov Model-Kalman filtering).

[0134] Specifically, the present invention provides a positioning method for fusing WiFi and UWB, combined with Figure 1 , which may include the following steps:

[0135] Step 1: Obtain the distances between each access point AP (Access Point, AP) and the receiver, getting the distances between four access points AP and the receiver, and further obtain the distances between four access points AP and the receiver at different positions of the point to be measured, forming a first data set. Obtain the distances between each base station and the tag, getting the distances between four base stations and the tag, and further obtain the distances between four base stations and the tag at different positions of the point to be measured, forming a second data set. Obtain the signal strength values from each base station to the tag, getting the signal strength values from four base stations to the tag, and further obtain the signal strength values from four base stations to the tag at different positions of the point to be measured, forming a third data set. Preprocess the first data set, the second data set, and the third data set to obtain the preprocessed first data set, the preprocessed second data set, and the preprocessed third data set;

[0136] Among them, one of the access points AP and one of the base stations correspond to a target position, and there are four target positions. The receiver and the tag correspond to the point to be measured;

[0137] That is to say, in step 1.1, measure the distances between each access point AP and the receiver through the WiFi-RTT (WiFi-Round Trip Time, WiFi-RTT) technology, getting the distances between four access points AP and the receiver, and further measure multiple groups of distances between four access points AP and the receiver at different positions of the point to be measured, forming a first data set. Measure the distances between each base station and the tag through the UWB-TWR (UWB-Two Way Ranging, UWB-TWR) technology, getting the distances between four base stations and the tag, and further measure multiple groups of distances between four base stations and the tag at different positions of the point to be measured, forming a second data set. Measure the signal strength values from each base station to the tag, getting the signal strength values from four base stations to the tag, and further measure multiple groups of signal strength values from four base stations to the tag at different positions of the point to be measured, forming a third data set;

[0138] That is to say, in the present invention, 4 target positions are set indoors, and an access point AP and a base station are set at each target position. A target device is set for the position of the point to be measured. Among them, the target device can implement the WiFi-RTT function, and the target device serves as the receiver and is connected to the UWB tag;

[0139] Step 1.2: Preprocess the first data set, the second data set, and the third data set to obtain the preprocessed first data set, the preprocessed second data set, and the preprocessed third data set;

[0140] Specifically, for the first data set, the second data set, and the third data set, find zero values and delete the entire rows where the zero values are located to obtain the first data set after deletion, the second data set after deletion, and the preprocessed third data set;

[0141] Using the interpolation method, enhance the data of the distance between the access point AP and the receiving end in the first data set after deletion, and expand it to the same dimension as the distance between the base station and the tag to obtain the expanded first data set;

[0142] Sort the distances between the access point AP and the receiving end in the expanded first data set in ascending order, and then determine the first quartile Q1, the second quartile Q2, and the third quartile Q3. Among them, in the expanded first data set, the distances smaller than the first quartile Q1 account for 25% of the expanded first data set, the distances smaller than the second quartile Q2 account for 50% of the expanded first data set, and the distances smaller than the third quartile Q3 account for 75% of the expanded first data set. According to the first quartile Q1 and the third quartile Q3, calculate the interquartile range IQR, which is specifically calculated by the following formula:

[0143] IQR = Q3 - Q1;

[0144] According to the interquartile range IQR, the first quartile Q1, and the third quartile Q3, calculate the upper limit value and the lower limit value, which are specifically calculated by the following formula:

[0145]

[0146] Then, in the expanded first data set, obtain the distances lower than the lower limit value and the distances higher than the upper limit value. Delete the distances lower than the lower limit value and the distances higher than the upper limit value in the expanded first data set, and fill them with the second quartile Q2 to obtain the preprocessed first data set;

[0147] Similarly, sort the distances between the base station and the tag in the second data set after deletion in ascending order, then determine the first quartile Q1, the second quartile Q2, and the third quartile Q3. According to the first quartile Q1 and the third quartile Q3, calculate the interquartile range IQR. According to the interquartile range IQR, the first quartile Q1, and the third quartile Q3, calculate the upper limit value and the lower limit value. Then, in the second data set after deletion, obtain the distances lower than the lower limit value and the distances higher than the upper limit value. Delete the distances lower than the lower limit value and the distances higher than the upper limit value in the second data set after deletion, and fill them with the second quartile Q2 to obtain the preprocessed second data set.

[0148] Step 2: Construct a fused fingerprint positioning regression model. Generate a time series based on the preprocessed first dataset, the preprocessed second dataset, and the preprocessed third dataset. Input the time series into the fused fingerprint positioning regression model to obtain the predicted values of the coordinates corresponding to the time series. Update the parameters in the fused fingerprint positioning regression model according to the predicted values of the coordinates corresponding to the time series and the true values of the coordinates corresponding to the time series. After multiple updates, obtain the trained fused fingerprint positioning regression model. Input the time series to be predicted into the trained fused fingerprint positioning regression model to obtain the initial target coordinates

[0149] Step 2.1: Construct a fused fingerprint positioning regression model, combining Figure 2 , the fused fingerprint positioning regression model includes an input layer, a one-dimensional convolutional neural network, an activation layer, a pooling layer, dropout, and an MLP;

[0150] Step 2.2: Generate a time series X = [x1, x2, …, x L of length L based on the preprocessed first dataset, the preprocessed second dataset, and the preprocessed third dataset. The i-th sample in the time series is denoted as x i = [D w D u RSSI], where D w = [d w0 d w1 d w2 d w3 , D u = [d u0 d u1 d u2 d u3 , RSSI = [rssi0 rssi1 rssi2rssi3]. Among them, the data included in the i-th sample is the data measured at the position of the point to be measured. d w0 represents the position from the access point AP0 to the receiver in the i-th sample. d w1 represents the position from the access point AP1 to the receiver in the i-th sample. d w2 represents the position from the access point AP2 to the receiver in the i-th sample. d w3 represents the position from the access point AP3 to the receiver in the i-th sample. d u0 represents the position from the base station 0 to the receiver in the i-th sample. d u1 represents the position from the base station 1 to the receiver in the i-th sample. d u2 represents the position from the base station 2 to the receiver in the i-th sample. d u3Denote the position from base station 3 to the receiving end in the i-th sample, rssi0 represents the signal strength value from base station 0 to the tag in the i-th sample, rssi1 represents the signal strength value from base station 1 to the tag in the i-th sample, rssi2 represents the signal strength value from base station 2 to the tag in the i-th sample, and rssi3 represents the signal strength value from base station 3 to the tag in the i-th sample;

[0151] Among them, the time series is input in the form of a tensor (N, L, C), where C is the size of the feature dimension and N is the batch size.

[0152] Step 2.3: Process the time series through a one-dimensional convolutional neural network to obtain the output of the one-dimensional convolutional neural network

[0153] Step 2.3.1: Input the time series into the one-dimensional convolutional layer to obtain the output Y1 of the one-dimensional convolutional layer. Among them, the convolutional kernel of the one-dimensional convolutional layer is expressed as Specifically, it is expressed by the following formula:

[0154]

[0155] Among them, S represents the stride size of the convolutional kernel sliding on the time series, x 1,n·(S+j) represents the j-th data with a stride size of S at the n-th index output in the first sample x1, m1 represents the total number of convolutional kernels, y 1,n represents the output at the n-th index after the convolution process, M1 represents the length of the output Y1 of the one-dimensional convolutional layer, P1 represents the padding size in the one-dimensional convolutional layer, and S1 represents the stride size, represents rounding down;

[0156] Step 2.3.2: Use an activation function to introduce non-linearity to subsequent layers. Specifically, process the output Y1 of the one-dimensional convolutional layer through the activation function ReLU to obtain the output of the activation function Specifically, it is implemented by the following formula:

[0157]

[0158] Among them, the output of the activation function The parameters in are expressed as represents the output at the n-th index after the activation function;

[0159] Step 2.3.3: Adopt Dropout to randomly ignore a part of neurons. Dropout will set the outputs of some neurons to zero with a certain probability during each forward propagation. Specifically, process the output of the activation function through Dropout to obtain the output Specifically, it is expressed by the following formula:

[0160]

[0161] Where y′ 1,n is the output after Dropout, D[n1] is a random variable, and D[n1] represents whether it is retained, follows a Bernoulli distribution, p represents the probability of being discarded, and l represents the number of stacked layers;

[0162] Step 2.3.4: Input the output of Dropout into the max-pooling layer to obtain the output of the one-dimensional convolutional neural network Specifically, it is expressed by the following formula:

[0163]

[0164] Where is the a-th output element after pooling, s a represents the translation index length after the a-th pooling, m is the relative position index of the window, the size of the window is k, the window range is from 0 to k - 1, s represents the stride size, M out is the sequence length of the output l and M

[0165] is the sequence length after passing through the one-dimensional convolutional neural network with l layers. Step 2.4: Perform scale change to transform the two-dimensional features into one-dimensional features suitable for processing by MLP (Multilayer Perceptron). Specifically, flatten the output

[0166]

[0167] of the one-dimensional convolutional neural network to obtain the flattened data X′. Specifically, it is expressed by the following formula:

[0168] Use a Multilayer Perceptron (MLP) to further process and analyze the features extracted by the convolutional layer. Introduce non-linearity through MLP so that the model can learn the non-linear relationship between complex distances and positions.

[0169] Then use X′ as X 0 input into the Multilayer Perceptron MLP to obtain the output X c+1 of the Multilayer Perceptron MLP. The specific calculation formula is expressed by the following formula:

[0170] X c+1 = Dropout(f(W c X c + b c ));

[0171] Among them, X c represents the output of the c-th layer of the multi-layer perceptron MLP, W c is the weight of the fully connected layer of the c-th layer, b c is the bias of the fully connected layer of the c-th layer, X c+1 represents the output of the (c + 1)-th layer of the multi-layer perceptron MLP; that is, the predicted value of the coordinates, and then the predicted values of the coordinates of each sample are obtained; in specific implementation, the data of the third layer is output, that is, X 3 .

[0172] Step 2.5: According to the predicted values of the coordinates of each sample in the time series and the true values of the coordinates of the corresponding samples, calculate the final loss function value, which is specifically represented by the following formula:

[0173]

[0174] Among them, ω-Huber ih represents the loss of the h-th output of the i-th sample, ω h represents the weight of the h-th output variable, g is the threshold used to determine whether to use the mean square error MS or the mean absolute error MAE of the sample, y ih represents the true value of the coordinates of the h-th output of the i-th sample; represents the predicted value of the coordinates of the h-th output of the i-th sample; L represents the total number of samples, that is, the length of the historical time series, m2 represents the number of output variables of each sample, and ω-HuberLoss represents the final loss function value;

[0175] According to the final loss function value, update the parameters in the fusion fingerprint positioning regression model until the fusion fingerprint positioning regression model converges, and obtain the trained fusion fingerprint positioning regression model;

[0176] Step 2.6: Input the time series to be predicted into the trained fusion fingerprint positioning regression model to obtain the initial target coordinates

[0177] It should be noted that the generation method and expression of the time series to be predicted are the same as those of the time series in the previous text, except that the specific values in the time series are different.

[0178] Step 3: Design the Hessian-PSO three-dimensional positioning algorithm. Based on the Hessian-PSO three-dimensional positioning algorithm, for the initial target coordinates Processed to obtain the final coordinates

[0179] Step 3.1: Since there is an importance deviation between the restricted ranges of the x and y axes and the restricted range of the z axis, an elliptical space restriction is adopted to provide space restriction for the subsequent search algorithm. Specifically, based on the initial target coordinates Construct the restricted ranges of the x and y axes and the restricted range of the z axis, which are specifically represented by the following formulas:

[0180]

[0181] where d x represents the semi-major axis length along the x axis, d y represents the semi-major axis length along the y axis, and d z represents the semi-major axis length along the z axis;

[0182] In the present invention, the optimization function uses variance as the objective function. Thus, the objective function is constructed, which is specifically represented by the following formula:

[0183] f(x, y, z) = sum((AN - b) 2 );

[0184] where A, N, and b are expressed as:

[0185]

[0186] where (x1, y1, z1), (x2, y2, z2), (x3, y3, z3), (x4, y4, z4) are the true coordinates of four base stations, and D1, D2, D3, D4 represent the distances from the point to be measured to the four target positions respectively;

[0187] Step 3.2: Use the second derivative information of the Hessian matrix to help the Particle Swarm Optimization (PSO) better optimize the curvature of the objective function, thereby improving the convergence accuracy, solving the non-convex optimization problem, and improving the positioning accuracy. Construct the Hessian matrix. First, determine the objective function. Specifically, based on the true distance between the base station and the point to be measured, further determine the objective function, and the objective function is expanded as:

[0188]

[0189] where d true,r is the true distance between the r-th base station and the point to be measured, and d obs,r represents the distance between the r-th base station and the initial target coordinates, which is expressed as:

[0190]

[0191] Among them, (x r , y r , z r ) is the true coordinate of the r-th base station;

[0192] Perform the first-order derivative of f(x, y, z) to obtain the gradient formula, which is specifically expressed by the following formula:

[0193]

[0194] Perform the second-order derivative of f(x, y, z), substitute it into the Hessian matrix formula, and obtain the Hessian matrix. The Hessian matrix formula is specifically expressed by the following formula:

[0195]

[0196] Based on the above formula, when D1, D2, D3, D4 represent the distances from the access point to the receiving end, the Hessian matrix of WiFi is obtained; when D1, D2, D3, D4 represent the distances from the base station to the tag, the Hessian matrix of UWB is obtained;

[0197] Step 3.3: According to the Hessian matrix of WiFi and the Hessian matrix of UWB, use PSO filtering to optimize the coordinate position to obtain the optimal coordinates of WiFi and the optimal coordinates of UWB

[0198] Specifically, randomly initialize the positions and velocities of N particles, and initialize the best position and the global optimal solution; update the velocities and positions of each particle, and use the Hessian matrix to capture the curvature information of the objective function, which is specifically expressed by the following formula:

[0199]

[0200] p u (τ + 1) = p u (τ) + v u (τ + 1);

[0201] Among them, v u (τ + 1) is the velocity of the u-th particle at the (τ + 1)-th iteration, ω is the inertia weight, which controls the forward speed of the particle, c1 is the individual learning factor, c2 is the social learning factor, which adjusts the speeds of the particle approaching its own optimal solution and the global optimal solution; r1 and r2 are random numbers, which increase the randomness of the particle movement, v u (τ) represents the velocity of the u-th particle at the τ-th iteration, p best (τ) is the best position at the τ-th iteration, gbest (τ) The global optimal solution at the τ-th iteration, p u (τ) is the position of the u-th particle at the τ-th iteration, p u (τ) = (x u (τ), y u (τ), z u (τ)), x u (τ) is the coordinate of the u-th particle on the x-axis at the τ-th iteration, y u (τ) is the coordinate of the u-th particle on the y-axis at the τ-th iteration, z u (τ) is the coordinate of the u-th particle on the z-axis at the τ-th iteration, p u (τ + 1) is the position of the u-th particle at the (τ + 1)-th iteration, α represents the learning rate, which is used to control the influence of the Hessian matrix on the velocity, is the gradient correction term based on the Hessian matrix;

[0202] Based on the above formula, the positions and velocities of all particles are updated to obtain the updated positions of all particles after update. Based on the Hessian - PSO algorithm, the global optimal solution is determined among the updated positions of all particles after update, which is specifically represented by the following formula:

[0203] g best (τ + 1) = Hessian - PSO τ (p1(τ + 1), p2(τ + 1), …, p N (τ + 1));

[0204] When the number of iterations reaches the threshold, the global optimal solution is taken as the best position, that is, the optimal coordinates;

[0205] Based on this, when is the gradient correction term of the Hessian matrix based on WiFi, for each sample in the time series to be predicted, the optimal coordinates of WiFi for the i-th sample are obtained When is the gradient correction term of the Hessian matrix based on UWB, for each sample in the time series to be predicted, the optimal coordinates of UWB for the i-th sample are obtained

[0206] Step 3.4: Use the least squares method to calculate the numerical values of the weights α, the weights β, and the weights γ, and establish a linear model for the x-axis coordinates, which is specifically represented by the following formula:

[0207]

[0208] Among them, e is the error between the measured distance and the actual distance, and RSS represents the residual sum of squares;

[0209] Take the partial derivative of the weight α and set the partial derivative of the weight α to 0. After sorting and simplifying, the following formula is obtained:

[0210]

[0211] Substitute the sorted and simplified formula into the linear model about the x-axis coordinate to obtain the following formula:

[0212]

[0213] Finally, the value of the weight α is solved, which is specifically expressed by the following formula:

[0214]

[0215] Based on the above formula, replace α with β and x with y to obtain the value of the weight β. Replace α with γ and x with z to obtain the value of the weight γ;

[0216] Step 3.5: Calculate the final coordinates according to the values of the weight α, the weight β, and the weight γ Specifically, it is expressed by the following formula:

[0217]

[0218] Among them, α is the weight of the coordinates measured by WiFi under the x-axis coordinate, 1 - α is the weight of the coordinates measured by UWB under the x-axis coordinate, β is the weight of the coordinates measured by WiFi under the y-axis coordinate, 1 - β is the weight of the coordinates measured by UWB under the y-axis coordinate, γ is the weight of the coordinates measured by WiFi under the z-axis coordinate, and 1 - γ is the weight of the coordinates measured by UWB under the z-axis coordinate.

[0219] Step 4: Construct the HMMK joint algorithm. According to the hidden Markov model, calculate the optimal state at each moment to obtain the optimal state sequence.

[0220] Step 4.1: Establish the state space. Divide the motion state into a stationary state S1, a uniform motion state S2, and an accelerated motion state S3, which is expressed by the following formula:

[0221] S = {S1, S2, S3};

[0222] Based on the state space, establish the state transition matrix A of the hidden Markov chain, which is expressed as:

[0223]

[0224] Among them, the elements in the state transition matrix A are expressed as Denote from state S σ transfer to state

[0225] Step 4.2: Set the observation sequence O = {O1, O2, …, O t}, where, O t =(x t , y t , z t ), O t ∈O, O t includes the three-dimensional coordinates observed at time t, and then obtain the observation probability matrix B, which is specifically represented by the following formula:

[0226]

[0227] where, the elements in the observation probability matrix B are represented as where, represents the probability of observing O in state t . According to the observation probability matrix B, calculate the velocity v t , acceleration a t and eigenvector χ t , which are represented by the following formula:

[0228]

[0229] a t = v t - v t-1 ;

[0230] χ t = [v t , a t ;

[0231] where, x t is the x-axis coordinate observed at time t, x t-1 is the x-axis coordinate observed at time t - 1, y t is the y-axis coordinate observed at time t, y t-1 is the y-axis coordinate observed at time t - 1, z t is the z-axis coordinate observed at time t, z t-1 is the z-axis coordinate observed at time t - 1, v t-1 is the velocity at time t - 1;

[0232] Step 4.3: According to the state transition matrix A, observation probability matrix B, velocity v t , acceleration a t and eigenvector F t, based on the Markov chain, the state transition probability matrix P is calculated. The sum of the elements in each row of the state transition probability matrix P is 1, and the state transition probability matrix P is expressed as:

[0233]

[0234] Among them, the elements in the state transition probability matrix P are expressed as or Both represent the probability of transitioning from state S σ to state ;

[0235] Step 4.4: Set the initial state probability δ1(σ) = π σ b σ (O1), where δ1(σ) represents the best path probability of reaching state S σ at time 1, π σ represents the probability of state S σ , and b σ (O1) represents the probability of observing O1 in state S σ . According to the initial state probability, the observation probability matrix B, and the state transition probability matrix P, δ t (σ) and the path of state S σ transition are stored in ψ t (σ), which is specifically implemented through the following formula:

[0236]

[0237] Among them, δ t (σ) represents the best path probability of reaching state S σ at time t, and δ t-1 (σ) represents the best path probability of reaching state S σ at time t - 1. Traverse all the states S σ at the previous moment to obtain the maximum probability path reaching state S σ at time t - 1, where the path of the initial state transition is stored as ψ1(σ) = 0;

[0238] Step 4.5: Obtain the complete optimal state sequence through path storage, which is specifically implemented through the following formula:

[0239]

[0240] Among them, is the optimal state at time t + 1, is the optimal state at time t, represents the optimal state at time t + 1 The path storage also represents the optimal state at time t+1 is transferred from state .

[0241] In another implementation, the present invention also effectively estimates the state of the system from the measured data with noise by using Kalman filtering, that is, by updating the observation probability matrix B through Kalman filtering, and then performing the content of step 4.4 based on the updated observation probability matrix B. The process of updating the observation probability matrix B through Kalman filtering specifically includes:

[0242] Construct a state equation, expressed as:

[0243] x t = F t x t-1 + B t u t + w t ;

[0244]

[0245] where Xt is the state variable, F t is the state transition matrix of Kalman filtering, B t is the control input model, u t is the control input vector, w t is the process noise, Δt is the time interval, is the acceleration in the x direction at time t, is the acceleration in the y direction at time t, is the acceleration in the z direction at time t, is the velocity in the x direction at time t, is the velocity in the y direction at time t, is the velocity in the z direction at time t, xt is the x-axis coordinate observed at time t, yt is the y-axis coordinate observed at time t, and zt is the z-axis coordinate observed at time t;

[0246] Construct an observation equation based on the state variable Xt, expressed as:

[0247] Z t = H t X t + W t ;

[0248]

[0249] where Z t is the sensor measurement value at time t, is the measurement value of the position of the point to be measured in the x direction by the sensor, is the measured value of the position of the measurement point by the sensor in the y direction, is the measured value of the position of the measurement point by the sensor in the z direction, H t is the observation matrix, W t is the random interference introduced during the measurement process;

[0250] Based on the state estimate at time t-1 and the current control input, estimate the state estimate at time t, and calculate the predicted value of the state covariance at time t, which is specifically expressed by the following formula:

[0251]

[0252] P t - = F t P t-1 F t T + Q;

[0253] Among them, represents the predicted value of the state at time t, represents the predicted value of the state at time t-1, P t - is the predicted value of the state covariance at time t, P t-1 is the state covariance matrix at time t-1, and Q is the covariance matrix of the process noise;

[0254] According to the predicted value of the state covariance at time t, calculate the Kalman gain, which is specifically expressed by the following formula:

[0255]

[0256] Among them, K t represents the Kalman gain at time t, R is the observation noise covariance matrix, represents the correction factor;

[0257] Update the predicted value of the state at time t according to the Kalman gain, which is specifically expressed by the following formula:

[0258]

[0259] Among them, represents the predicted value of the state at time t after update;

[0260] Based on the Kalman gain and the predicted value of the state covariance at time t, calculate the state estimation covariance, which is specifically expressed by the following formula:

[0261] P t =(I - K t H t )Pt - ;

[0262] where P t represents the state covariance matrix at time t, and I represents the identity matrix;

[0263] By recursively performing the prediction and update steps, the Kalman filter can provide the state prediction value and the state covariance matrix at each moment at each moment.

[0264] Based on the above scheme, the present invention conducted the following experiments:

[0265] (1) Experimental environment.

[0266] When the present invention conducts specific experiments, the experimental scenario selects the hall of a certain experimental building, the experimental area is 15m * 17m, and there are sometimes students and teachers going to and from classes in the hall. Base stations and APs are arranged at the four corners respectively, both are fixed on tripods, and the height of the tripods is set to 1.75m to minimize the interference of obstacles as much as possible. The arrangement of the four base stations is as Figure 3 shown, where d1, d2, d3, and d4 are all distance values, only for illustration in the figure.

[0267] In the specific implementation process, a notebook and tags are used to collect data. First, configure the notebook to implement the WiFi - RTT function, and the UWB tag is connected to the notebook through a serial port for power supply and data transmission. The data collector carries a notebook with a UWB tag and continuously collects data for 60 seconds at each reference point to provide sufficient distance data for the fingerprint point regression model for fusion. The reference points are selected according to the regular grid method, the target area is divided into regular grids of 1.5m * 1.5m, and reference points are set at each intersection of the grids. A total of 120 reference points are set in the experiment, and the positions are as Figure 4 shown, and the D w , D u and RSSI values of 120 reference points are measured. At the same time, two trajectories are randomly tested in the experimental site. Trajectory 1 is a dotted line, with two pentagons marking the starting and ending points; Trajectory 2 is a solid - line loop, with a five - pointed star indicating the starting and ending points, and the passing points are marked with circles. The trajectory diagram is shown in Figure 5 . The tests are carried out in uniform and variable - speed motion modes respectively.

[0268] (2) Positioning accuracy index.

[0269] The positioning accuracy index adopted in this experiment is the Euclidean distance L2 between the true coordinates and the measured coordinates, and the positioning performance of the system is evaluated by calculating the difference between the actual position and the predicted position, which is specifically expressed by the following formula:

[0270]

[0271] Among them, (x i , y i , z i ) are the predicted position coordinates, (x, y, z) are the actual position coordinates, and N is the number of base stations.

[0272] (3) Fusion fingerprint positioning regression model testing.

[0273] The experiment of the fusion fingerprint positioning regression model designed by the present invention is mainly analyzed from the aspects of experimental settings, ablation experiments, and model results.

[0274] Experimental settings: The parameter settings for model training are shown in Table 2. The learning rate is 0.001, the eps value is 1×10 -8 , the weight decay coefficient is 0.01, the betas parameter is set to (0.9, 0.999), the batch size is 64, the ratios of the training set and the test set are 0.8 and 0.2 respectively, and a total of 300 iterations are performed.

[0275] Table 2 Parameter settings table

[0276]

[0277] The network layer design is shown in Table 3. The model includes multiple 1D convolutional layers, 2D max pooling layers, fully connected layers, and Dropout layers. Specifically, conv1, conv2, and conv3 are 1D convolutional layers, using a 3×3 convolutional kernel and a padding of 1, with the number of parameters being 1332, 3972, and 1332 respectively, and the activation function is ReLU. Each convolutional layer is followed by a Dropout layer with a probability of 0.2. pool1 is a 2D max pooling layer with a convolutional kernel of 3×3 and a stride of 2. Finally, the model includes two fully connected layers linear1 and linear2, with the number of parameters being 444 and 39 respectively, linear1 uses the ReLU activation function, and linear2 is the output layer.

[0278] Table 3 Network layer design

[0279]

[0280] Ablation experiments: Tests are mainly carried out from three aspects: experiments on the length of the time series, the number of network layers, and loss function experiments. The experimental parameters are shown in Table 4.

[0281] Table 4 Experimental parameters

[0282]

[0283] Optimal time series length: The range of the time series length is set to (8, 12, 16, 20). FromFigure 6 It can be seen that when the sequence length is 16, the model performance is the best. However, too short or too long sequence lengths will lead to poor model performance. The reason may be that too short a sequence length will weaken the feature representation ability, while too long a sequence length fails to further improve the model performance, but instead increases the model parameters and reduces the learning speed.

[0284] Number of network layers: The number range of Conv 2D is set to (1, 2, 3, 4). From Figure 7 It can be seen that when the number of Conv 2D is 3 layers, the model performance is the best. Too few Conv 2D network layers will result in poor feature extraction effect, while too many Conv 2D network layers will lead to over-extraction of features. Therefore, the number of Conv 2D layers in the model of the present invention is selected as 3 layers.

[0285] Loss function: The loss functions selected are MSE, MAE, and Huber, and the L2 value is used for comparison to observe the change of Loss. From Figure 8 it can be known that when the loss function selects Huber, the L2 value is the lowest. This is because Huber combines the advantages of MSE and MAE, has stronger anti-outlier ability, and can better dynamically adapt in different error intervals.

[0286] Model results: Figure 9 Show the performance of the training set and the test set during the model training iteration process. After 100 rounds of iteration, the model has basically converged. However, due to the existence of dropout, the model effectively avoids overfitting and ensures the generalization of the training set and the test set. Finally, the Loss of the training set converges to 0.0428. This shows that the model can stably process the training data with low loss after training and has good prediction ability. Figure 10 Show the change of the average Euclidean distance between the prediction and the true coordinates during the training iteration of the training set and the test set. As the number of training rounds increases, the accuracy of the model's predicted coordinates improves, the average Euclidean distance continuously decreases, and the coordinate prediction accuracy gradually increases. Finally, the average Euclidean distance of the training set converges to 0.4385 meters, indicating that the model has achieved remarkable results in reducing the prediction error and verifying the effectiveness of the model.

[0287] (4) Analysis of the static position results of the WiFi and UWB fusion positioning method.

[0288] For the fuzzy solution obtained by the fusion fingerprint positioning regression model, the position coordinates are obtained using the Hessian-PSO three-dimensional positioning algorithm. Table 5 shows the parameter settings of Hessian-PSO. The number of particles in PSO is set to 30, the number of iterations is 50, and the inertia weight, self-learning factor, and social learning factor are set to 0.8, 1.5, and 1.5 respectively.

[0289] Table 5 Hessian-PSO Parameter Settings

[0290]

[0291] Through experiments on 120 positions, the results are as follows Figure 11 shown. The error is mainly concentrated between 0.2m and 0.5m, indicating that the error at most positions is relatively small and has relatively stable accuracy. There are individual points where the positioning accuracy is close to 0.9m, much higher than other measurement points, which may be due to the influence of human factors during the measurement process, resulting in large data errors. After calculation, the average error of the 120 positions is 0.3358m.

[0292] (5) Dynamic positioning analysis of the positioning method for the fusion of WiFi and UWB.

[0293] In the experiments conducted in the present invention, Trajectory 1 and Trajectory 2 were each measured 3 times to ensure the accuracy and stability of the results. Through multiple measurements, the changes in each trajectory were observed, and then its positioning accuracy was analyzed.

[0294] Based on the ambiguous solutions obtained by the Hessian-PSO three-dimensional positioning algorithm, the HMM model and the Kalman filtering algorithm were used for optimization.

[0295] The test results of Trajectory 1 are as shown in Figure 12 、 Figure 13 and Figure 14 shown, where Figure 12 、 Figure 13 and Figure 14 are the results diagrams of the combined algorithm for the 1st, 2nd, and 3rd times of Trajectory 1 respectively. Figure 12 、 Figure 13 and Figure 14 all include the three-dimensional result diagram (a) and the two-dimensional result diagram (b). Among them, the discrete position information in the shape of a circle is the original measurement position with deviation points, the discrete position information in the shape of a pentagram is the position information after passing through the HMM model, the dark color is the trajectory optimized by the HMMK combined algorithm, and the light color is the true trajectory. These 3 test experiments show that there is a large deviation between the yellow discrete position information only through the HMM model and the actual measurement trajectory, while the red trajectory optimized by the HMMK combined algorithm is closer to the true Trajectory 1 and can better fit the current motion trajectory. However, the positioning errors of the 2nd and 3rd measurements are larger than those of the 1st measurement, which may be due to the existence of human factors during the measurement process, resulting in a deviation between the measured route and the route actually intended to be measured.

[0296] The test results of Trajectory 2 are as shown in Figure 15 、 Figure 16 and Figure 17 shown, where Figure 15 、Figure 16 and Figure 17 are the first, second, and third combined algorithm result diagrams of trajectory 2 respectively, Figure 15 , Figure 16 and Figure 17 both include the three-dimensional result diagram (a) and the two-dimensional result diagram (b). The meaning of the position identifiers in the figure is the same as that of trajectory 1. From these three measurement experiments, it can be seen that only the yellow discrete positions of the HMM model have a large deviation from the real trajectory and it is difficult to accurately locate the trajectory information, while the red trajectory optimized by the HMMK combined algorithm is closer to the real trajectory 2 and can better fit the motion trajectory. The tests on trajectory 1 and trajectory 2 show that the HMMK combined algorithm is more suitable for dynamic positioning than the Hessian-PSO three-dimensional positioning algorithm.

[0297] The above description is only a preferred embodiment of the present disclosure and an explanation of the applied technical principles. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present disclosure is not limited to the technical solutions formed by the specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above inventive concept. For example, the technical solutions formed by mutually replacing the above features with the (but not limited to) technical features with similar functions disclosed in the embodiments of the present disclosure.

Claims

1. A positioning method combining WiFi and UWB, characterized in that: include: Step 1: obtaining the distance between each access point AP and the receiving end, obtaining the distance between four access points AP and the receiving end, and then obtaining the distance between four access points AP and the receiving end at different positions of the point to be measured to form a first data set, obtaining the distance between each base station and the tag, obtaining the distance between four base stations and the tag, and then obtaining the distance between four base stations and the tag at different positions of the point to be measured to form a second data set, obtaining the signal strength value from each base station to the tag, obtaining the signal strength values ​​from four base stations to the tag, and then obtaining the signal strength values ​​from four base stations to the tag at different positions of the point to be measured to form a third data set, preprocessing the first data set, the second data set and the third data set to obtain a preprocessed first data set, a preprocessed second data set and a preprocessed third data set; Wherein, one access point AP and one base station correspond to one target location, there are four target locations, and the receiving end and the tag correspond to the point to be measured; Step 2: Construct a fusion fingerprint positioning regression model. Generate a time series based on the preprocessed first data set, the preprocessed second data set, and the preprocessed third data set. Input the time series into the fusion fingerprint positioning regression model to obtain the predicted value of the coordinates corresponding to the time series. Update the parameters in the fusion fingerprint positioning regression model based on the predicted value of the coordinates corresponding to the time series and the true value of the coordinates corresponding to the time series. After multiple updates, obtain a trained fusion fingerprint positioning regression model. Input the time series to be predicted into the trained fusion fingerprint positioning regression model to obtain the initial target coordinates. Step 3: Design the Hessian-PSO 3D positioning algorithm. Based on the Hessian-PSO 3D positioning algorithm, calculate the initial target coordinates. Processing to get the final coordinates Step 4: Construct the HMMK joint algorithm, calculate the optimal state at each moment according to the hidden Markov model, and obtain the optimal state sequence.

2. The positioning method of WiFi and UWB fusion according to claim 1, characterized in that: Step 2 specifically includes: Step 2.1: construct a fusion fingerprint positioning regression model, which includes an input layer, a one-dimensional convolutional neural network, an activation layer, a pooling layer, dropout and MLP; Step 2.2: Generate a time series X = [x1, x2, …, x] with a length of L based on the preprocessed first data set, the preprocessed second data set, and the preprocessed third data set. L ], the i-th sample in the time series is represented by x i =[D w D u RSSI], where D w =[d w0 d w1 d w2 d w3 ], D u =[d u0 d u1 d u2 d u3 ], RSSI = [rssi0 rssi1 rssi2rssi3], where the data contained in the i-th sample is the data measured at the position i of the point to be measured, d w0 represents the location from access point AP0 to the receiving end in the i-th sample, d w1 represents the location from access point AP1 to the receiving end in the i-th sample, d w2 represents the location from access point AP2 to the receiving end in the i-th sample, d w3 represents the location from access point AP3 to the receiving end in the i-th sample, d u0 represents the position from base station 0 to the receiving end in the i-th sample, d u1 represents the position from base station 1 to the receiving end in the i-th sample, d u2 represents the position from base station 2 to the receiving end in the i-th sample, d u3 represents the position of base station 3 to the receiving end in the i-th sample, rssi0 represents the signal strength value from base station 0 to the tag in the i-th sample, rssi1 represents the signal strength value from base station 1 to the tag in the i-th sample, rssi2 represents the signal strength value from base station 2 to the tag in the i-th sample, and rssi3 represents the signal strength value from base station 3 to the tag in the i-th sample; Step 2.3: Process the time series through a one-dimensional convolutional neural network to obtain the output of the one-dimensional convolutional neural network Step 2.4: Output of 1D Convolutional Neural Network Perform a flattening operation to obtain the flattened data X', which is specifically expressed by the following formula: Among them, Flatten(·) is the flattening operation function; Then X' is taken as X 0 Input the multi-layer perceptron MLP and get the output X of the multi-layer perceptron MLP c+1 , the specific calculation formula is expressed by the following formula: X c+1 =Dropout(f(W c X c +b c )); Among them, X c represents the output of the cth layer of the multi-layer perceptron MLP, W c is the weight of the full connection of layer c, b c is the bias of the fully connected layer c, X c+1 Represents the output of the c+1th layer of the multi-layer perceptron MLP, that is, the predicted value of the coordinates, and then obtains the predicted value of the coordinates of each sample; Step 2.5: According to the predicted value of the coordinates of each sample in the time series and the true value of the coordinates of the corresponding sample, calculate the final loss function value, which is specifically expressed by the following formula: Among them, ω-Huber ih represents the loss of the h-th output of the i-th sample, ω h represents the weight of the h-th output variable, g is the threshold used to decide whether to use the mean square error MS or the mean absolute error MAE of the sample, y ih Represents the true value of the coordinate of the hth output of the i-th sample; represents the predicted value of the coordinates of the hth output of the i-th sample; L represents the total number of samples, i.e., the length of the historical time series; m2 represents the number of output variables for each sample; and ω-HuberLoss represents the final loss function value; According to the final loss function value, the parameters in the fusion fingerprint positioning regression model are updated until the fusion fingerprint positioning regression model converges to obtain a trained fusion fingerprint positioning regression model; Step 2.6: Input the time series to be predicted into the trained fusion fingerprint positioning regression model to obtain the initial target coordinates 3. The WiFi and UWB fusion positioning method according to claim 2, characterized in that: Step 2.3 specifically includes: Step 2.3.1: Input the time series into the one-dimensional convolution layer to obtain the output Y1 of the one-dimensional convolution layer, where the convolution kernel of the one-dimensional convolution layer is expressed as It is specifically expressed by the following formula: Among them, S represents the stride size of the convolution kernel sliding on the time series, x 1,n (S+j) represents the jth data of the nth index output in the first sample x1 with a stride size of S, m1 represents the total number of convolution kernels, y 1,n represents the output of the nth index after the convolution process, M1 represents the length of the output Y1 of the one-dimensional convolution layer, P1 represents the size of the padding in the one-dimensional convolution layer, S1 represents the stride size, Indicates rounding down; Step 2.3.2: Process the output Y1 of the one-dimensional convolutional layer through the activation function ReLU to obtain the output of the activation function This is achieved specifically through the following formula: Among them, the output of the activation function The parameters in are expressed as Represents the output of the nth index after the activation function; Step 2.3.3: Dropout the output of the activation function Process and get the output of Dropout It is specifically expressed by the following formula: Among them, y′ 1,n for The output after Dropout, D[n1] is a random variable, D[n1] represents Whether it is retained or not follows the Bernoulli distribution, where p represents the probability of being discarded and l represents the number of stacking layers; Step 2.3.4: Dropout output Input to the maximum pooling layer to get the output of the one-dimensional convolutional neural network It is specifically expressed by the following formula: in, for The ath output element after pooling, s a represents the translation index length after the ath pooling, m is the relative position index of the window, the size of the window is k, the window range is from 0 to k-1, s represents the stride size, M out Output The sequence length, M l is the length of the sequence after passing through the l-layer one-dimensional convolutional neural network.

4. The positioning method of WiFi and UWB fusion according to claim 1, characterized in that: Step 3 specifically includes: Step 3.1: Based on the initial target coordinates Construct the x-axis and y-axis limit ranges and the z-axis limit range, which are specifically expressed by the following formulas: Among them, d x represents the semi-axis length along the x-axis, d y represents the semi-axis length along the y-axis, d z represents the semi-axis length along the z-axis; Construct the objective function, which is specifically expressed by the following formula: f(x,y,z)=sum((AN-b) 2 ); Among them, A, N, and b are expressed as: Among them, (x1, y1, z1), (x2, y2, z2), (x3, y3, z3), (x4, y4, z4) are the real coordinates of the four base stations, and D1, D2, D3, D4 represent the distances from the point to be measured to the four target locations respectively; Step 3.2: According to the actual distance between the base station and the point to be measured, the objective function is further determined. The objective function is expanded as follows: Among them, d true,r is the actual distance between the rth base station and the point to be measured, d obs,r Represents the distance between the rth base station and the initial target coordinates, expressed as: Among them, (x r ,y r ,z r ) is the real coordinate of the rth base station; Taking the first-order derivative of f(x, y, z), we get the gradient formula, which is specifically expressed by the following formula: Take the second-order derivative of f(x, y, z) and substitute it into the Hessian matrix formula to obtain the Hessian matrix. The Hessian matrix formula is specifically expressed by the following formula: Based on the above formula, when D1, D2, D3, and D4 represent the distance from the access point to the receiver, the Hessian matrix of WiFi is obtained, and when D1, D2, D3, and D4 represent the distance from the base station to the tag, the Hessian matrix of UWB is obtained; Step 3.3: Based on the Hessian matrix of WiFi and the Hessian matrix of UWB, use PSO filtering to optimize the coordinate position and obtain the optimal coordinates of WiFi. And the optimal coordinates of UWB Specifically, the positions and velocities of N particles are randomly initialized, and the optimal position and the global optimal solution are initialized; the speed and position of each particle are updated, which is specifically expressed by the following formula: v u (τ+1)=ω·v u (τ)+c1·r1·(p best (t)-p u (τ))+c2·r2·(g best (t)-x u (t))-a·H -1 ▽f; p u (τ+1)=p u (t)+v u (t+1); Among them, v u (τ+1) is the velocity of the uth particle in the τ+1th iteration, ω is the inertia weight, c1 is the individual learning factor, c2 is the social learning factor, r1 and r2 are random numbers, v u (τ) represents the velocity of the u-th particle in the τ-th iteration, p best (τ) is the best position of the τth iteration, g best (τ) is the global optimal solution of the τth iteration, p u (τ) is the position of the u-th particle in the τ-th iteration, p u (τ)=(x u (τ), y u (τ), z u (τ)), x u (τ) is the x-axis coordinate of the u-th particle in the τ-th iteration, y u (τ) is the y-axis coordinate of the u-th particle in the τ-th iteration, z u (τ) is the coordinate of the u-th particle on the z-axis at the τ-th iteration, p u (τ+1) is the position of the u-th particle in the τ+1-th iteration, α is the learning rate, H -1 ▽f is the gradient correction term based on the Hessian matrix; Based on the above formula, the positions and velocities of all particles are updated to obtain the updated positions of all particles. Based on the Hessian-PSO algorithm, the global optimal solution is determined among the updated positions of all particles, which is specifically expressed by the following formula: g best (τ+1)=Hessian-PSO τ (p1(τ+1),p2(τ+1),…,p N (t+1)); When the number of iterations reaches the threshold, the global optimal solution is taken as the best position, that is, the optimal coordinates; Based on this, in H -1 When ▽f is the gradient correction term of the Hessian matrix based on WiFi, for each sample in the time series to be predicted, the optimal coordinates of WiFi for the i-th sample are obtained: In H -1 When ▽f is the gradient correction term of the Hessian matrix based on UWB, for each sample in the time series to be predicted, the optimal coordinates of the UWB of the i-th sample are obtained: Step 3.4: Use the least squares method to calculate the values ​​of weight α, weight β and weight γ, and establish a linear model about the x-axis coordinate, which is specifically expressed by the following formula: Where e is the error between the measured distance and the actual distance, and RSS represents the residual sum of squares; Find the partial derivative of weight α and set the partial derivative of weight α to 0. After arranging and simplifying, we get the following formula: Substituting the simplified formula into the linear model about the x-axis coordinate, we get the following formula: Finally, the value of the weight α is obtained, which is specifically expressed by the following formula: Based on the above formula, replace α with β and x with y to get the value of weight β, replace α with γ and x with z to get the value of weight γ; Step 3.5: Calculate the final coordinates based on the values ​​of weight α, weight β, and weight γ It is specifically expressed by the following formula: Among them, α is the weight of the coordinates measured by WiFi in the x-axis coordinate, 1-α is the weight of the coordinates measured by UWB in the x-axis coordinate, β is the weight of the coordinates calculated by WiFi in the y-axis coordinate, 1-β is the weight of the coordinates calculated by UWB in the y-axis coordinate, γ is the weight of the coordinates calculated by WiFi in the z-axis coordinate, and 1-γ is the weight of the coordinates calculated by UWB in the z-axis coordinate.

5. The positioning method of WiFi and UWB fusion according to claim 1, characterized in that: Step 4 specifically includes: Step 4.1: Establish the state space and divide the motion state into static state S1, uniform motion S2, and accelerated motion S3, which are expressed by the following formula: S = {S1, S2, S3}; Based on the state space, the state transfer matrix A of the hidden Markov chain is established, which is expressed as: Among them, the elements in the state transfer matrix A are expressed as Indicates that from state S σ Transfer to state Step 4.2: Set the observation sequence O = {O1, O2, ..., O t }, where O t =(x t ,y t ,z t ),O t ∈O,O t Including the three-dimensional coordinates observed at time t, and then obtaining the observation probability matrix B, which is specifically expressed by the following formula: Among them, the elements in the observation probability matrix B are expressed as in, Indicates that the status Observe O t The probability of the observation is calculated according to the observation probability matrix B, and the speed v at time t is calculated. t , acceleration a t and the eigenvector χ t , expressed by the following formula: and t =in t -v t-1 ; x t =[v t ,a t ]; Among them, x t is the observed x-axis coordinate at time t, x t-1 is the observed x-axis coordinate at time t-1, y t is the observed y-axis coordinate at time t, y t-1 is the observed y-axis coordinate at time t-1, z t is the observed z-axis coordinate at time t, z t-1 is the observed z-axis coordinate at time t-1, v t-1 is the speed at time t-1; Step 4.3: According to the state transfer matrix A, observation probability matrix B, speed v t , acceleration a t and the eigenvector F t Based on the Markov chain, the state transition probability matrix P is calculated. The sum of the elements in each row of the state transition probability matrix P is 1. The state transition probability matrix P is expressed as: Among them, the elements in the state transition probability matrix P are expressed as or Both represent the state S σ Transfer to state probability; Step 4.4: Set the initial state probability δ1(σ) = π σ b σ (O1), where δ1(σ) means reaching state S at time 1 σ The best path probability, π σ Indicates state S σ The probability of b σ (O1) means in state S σ The probability of observing O1 under the condition of δ is calculated according to the initial state probability, the observation probability matrix B and the state transition probability matrix P. t (σ) and state S σ The path of the transfer is stored in t (σ), which is specifically realized by the following formula: Among them, δ t (σ) represents the state S reached at time t σ The best path probability, δ t-1 (σ) indicates the state S reached at time t-1 σ The best path probability, For all states S at the previous moment σ Traverse to get the state S at time t-1 σ The maximum probability path, where the path of the initial state transfer stores ψ1(σ)=0; Step 4.5: Obtain the complete optimal state sequence through path storage, which is specifically achieved through the following formula: in, is the optimal state at time t+1, is the optimal state at time t, Represents the optimal state at time t+1 The path storage also represents the optimal state at time t+1 From the state Transferred.

6. The positioning method of WiFi and UWB fusion according to claim 1, characterized in that: Step 1 specifically includes: Step 1.1: Measure the distance between each access point AP and the receiving end by using the WiFi-RTT technology to obtain the distance between the four access points AP and the receiving end, and then measure multiple groups of distances between the four access points AP and the receiving end for different positions of the point to be measured to form a first data set; measure the distance between each base station and the tag by using the UWB-TWR technology to obtain the distance between the four base stations and the tag, and then measure multiple groups of distances between the four base stations and the tag for different positions of the point to be measured to form a second data set, measure the signal strength value from each base station to the tag to obtain the signal strength values ​​from the four base stations to the tag, and then measure multiple groups of signal strength values ​​from the four base stations to the tag for different positions of the point to be measured to form a third data set; Step 1.2: preprocessing the first data set, the second data set and the third data set to obtain a preprocessed first data set, a preprocessed second data set and a preprocessed third data set; Specifically, for the first data set, the second data set, and the third data set, search for zero values, and delete the entire row of data where the zero values ​​are located, to obtain the deleted first data set, the deleted second data set, and the preprocessed third data set; Using an interpolation method, data enhancement is performed on the distance between the access point AP and the receiving end in the deleted first data set, and the data is expanded to the same dimension as the distance between the base station and the tag, thereby obtaining an expanded first data set; The distances between the access point AP and the receiving end in the expanded first data set are sorted in ascending order to determine the first quartile Q1, the second quartile Q2 and the third quartile Q3, wherein in the expanded first data set, the distances smaller than the first quartile Q1 account for 25% of the expanded first data set, the distances smaller than the second quartile Q2 account for 50% of the expanded first data set, and the distances smaller than the third quartile Q3 account for 75% of the expanded first data set. The interquartile range IQR is calculated based on the first quartile Q1 and the third quartile Q3, and is specifically calculated using the following formula: IQR = Q3-Q1; According to the interquartile range IQR, the first quartile Q1 and the third quartile Q3, the upper limit and the lower limit are calculated by the following formula: Then, in the expanded first data set, the distance of the value below the lower limit and the distance of the value above the upper limit are obtained, the distance of the value below the lower limit and the distance of the value above the upper limit in the expanded first data set are deleted, and the second quartile Q2 is used for filling, so as to obtain the preprocessed first data set; Similarly, the distances between the base stations and the tags in the deleted second data set are sorted in ascending order, and then the first quartile Q1, the second quartile Q2 and the third quartile Q3 are determined. The interquartile range IQR is calculated based on the first quartile Q1 and the third quartile Q3. The upper limit value and the lower limit value are calculated based on the interquartile range IQR, the first quartile Q1 and the third quartile Q3, and then the distances of the values ​​below the lower limit and the distances of the values ​​above the upper limit are obtained in the deleted second data set. The distances of the values ​​below the lower limit and the distances of the values ​​above the upper limit in the deleted second data set are deleted, and the second quartile Q2 is used to fill them, so as to obtain the preprocessed second data set.

Citation Information

Cited By

  • Intelligent auxiliary positioning system and method for rigging and lifting hook

    CN121218332A