Positioning system and method for VR large space immersive tour
Patent Information
- Application Number
- CN202510659505.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-21
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2045-05-21
AI Technical Summary
[0003]然而,现有的大空间定位技术存在一定的局限性
(1)本发明采用自协方差矩阵与 IPCA 动态更新杂波子空间去除杂波,配合小波变换抑制热噪声,提升信号质量;利用 DBSCAN 聚类结合特征增强和异常值剔除,提高数据准确性与一致性;
Smart Images

Figure CN120563774B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the fields of artificial intelligence and computer vision technology, and specifically relates to a positioning system and method for VR large-space immersive tours. Background Technology
[0002] In the field of VR large-space immersive tours, the application of geospatial positioning technology is crucial. Precise geospatial positioning allows for a more realistic and personalized virtual experience. For example, in large museums or historical sites, visitors can wear VR devices to immerse themselves in highly realistic historical scenes, while geospatial positioning technology tracks their location in real time, ensuring a precise match between virtual content and the actual environment. This technology not only enhances the user's immersion but also allows for customized content and services based on the user's movement path. Furthermore, in venues such as commercial exhibitions and theme parks, geospatial positioning technology helps managers optimize visitor flow, improve service quality, and ensure visitor safety. For education and training, this technology makes remote learning more interactive and engaging, allowing students to explore various complex concepts and scenarios in a virtual environment.
[0003] However, existing large-space positioning technologies have certain limitations. Traditional large-space positioning methods, such as triangulation, rely on line-of-sight conditions, meaning that there must be no obstacles obstructing the signal transmission path to obtain accurate location information. However, in practical applications, especially in complex large-space environments, non-line-of-sight situations are very common, leading to performance limitations of traditional methods. Another widely studied method is passive target perception based on Wi-Fi Channel State Information (CSI). This method can overcome the influence of non-line-of-sight to some extent, but most existing methods require a large amount of labeled data for model training, which is costly and difficult to implement on a large scale. Furthermore, while Wi-Fi CSI provides rich environmental information, its high-dimensionality makes directly processing this data computationally demanding. Summary of the Invention
[0004] This invention aims to address the shortcomings of existing technologies and provides the following solutions: A positioning system for VR large-space immersive tours includes: a data input module, a data preprocessing module, a triangulation module, a feature engineering module, and a residual network module; The data input module is used to acquire Wi-Fi CSI data and timestamp data emitted by the VR device used by the tourist to obtain input data; The data preprocessing module is used to remove clutter and cluster the input data to obtain preprocessed data; The triangulation module is used to extract features from the preprocessed data to obtain a first feature vector; The feature engineering module is used to further process the preprocessed data to obtain a second feature vector; The residual network module is used to perform deep encoding on the first feature vector to obtain an encoded feature vector, and to fuse the encoded feature vector with the second feature vector, and to decode the fused feature to obtain the target position.
[0005] Preferably, the data preprocessing module includes: a dataset construction unit, a clutter removal unit, and a clustering unit; The dataset construction unit constructs a dataset based on the input data; The clutter removal unit performs clutter removal on the dataset based on the clutter subspace, then uses wavelet denoising enhancement to suppress thermal noise in the clutter-removed data, and finally reshapes the suppressed data to obtain the denoised data. The clustering unit performs feature enhancement clustering and outlier detection and removal on the denoised data based on the DBSCAN algorithm to obtain the preprocessed data.
[0006] Preferably, the triangulation module includes: an azimuth estimation unit, a positioning unit, and a fully connected unit; The azimuth estimation unit uses the preprocessed data to estimate a cluster-level azimuth array covariance matrix for each receiver array, and determines the azimuth of the cluster and array based on the azimuth array covariance matrix. The positioning unit is used to obtain the azimuth angle, time difference of arrival and receiver position, calculate the azimuth angle likelihood function and the time difference of arrival likelihood function, and then construct and solve the joint likelihood function to obtain the target position estimate. The fully connected unit encodes the target location estimate through fully connected encoding to obtain the first feature vector.
[0007] Preferably, the workflow of the azimuth estimation unit includes: For the sample covariance matrix Perform eigenvalue decomposition to obtain all eigenvalues. ,in, N Represents antenna data, H This indicates the conjugate transpose. This represents the observation data matrix consisting of array received signals / CSI observation data after clutter removal processing; Assuming the eigenvalues of the noise subspace are approximately equal, the average of the smallest eigenvalues is taken as the noise variance. ,in, K Indicates the number of signal sources.for The first part represents the sample covariance matrix. i One eigenvalue; Select the largest eigenvalue from all eigenvalues. ; Based on the noise variance and the maximum eigenvalue, the signal-to-noise ratio is dynamically adjusted using lumped parameters. ; The sample covariance matrix is adaptively corrected by dynamically adjusting the lumped parameters based on the calculated signal-to-noise ratio, resulting in the azimuth array covariance matrix: in, This represents the data after denoising. Mr This indicates the number of antenna rows in each array. Nsub This indicates the number of non-zero subcarriers in the Wi-Fi preamble field used for channel estimation. I Represents the identity matrix. Indicates the first c A set of indexes of data points in each cluster. c This indicates adaptive parameter adjustment; The azimuth angles of the cluster and the array are determined based on the azimuth array covariance matrix.
[0008] Preferably, the workflow of the positioning unit includes: Obtain the azimuth angles measured by each receiver. Measurement arrival time difference of each receiver pair Receiver location and the normal vector of the position ,in, b =1,2,..., B , B Indicates the number of receivers, and i and j represent the indices of the receiver pairs; The azimuth likelihood function is calculated based on the azimuth angle, the signal-to-noise ratio dynamically adjusted lumped parameters, the receiver position, and the position normal vector: in, oh Indicates mixed weights, I 0 represents the zeroth-order modified Bessel function. Indicates azimuth error. s This represents the standard deviation of a Gaussian distribution. This represents the angle function of the target relative to the receiver in the horizontal direction. xThe target position is represented by θ, and the angle integral variable is represented by θ. Calculate the time-of-arrival likelihood function based on the time difference of arrival and the receiver location: in, Indicates the target location x The corresponding theoretical time difference, v.c. Indicates the speed of signal propagation. s The standard deviation of time measurement error. The time difference of arrival (TDoA) between receiver i and receiver j is expressed in seconds. Let represent the position vector of the i-th receiver. This represents the position vector of the j-th receiver; A joint likelihood function is constructed based on the azimuth likelihood function and the time difference of arrival likelihood function, and the estimated target position is obtained by maximizing the joint likelihood function. in, This represents the estimated location of the target.
[0009] Preferably, the workflow of the feature engineering module includes: The denoised data is then converted to the time domain using a fast Fourier transform. Extracting components containing meaningful signals Ntap =12 time-domain taps to obtain the time-domain CSI array ; Calculate the feature array based on the time-domain CSI array: in, vec Indicates vectorization operation, c Indicates a cluster, iTX Indicates the first i One transmitter, t Indicates a time-domain tap. Let represent the target CSI sample after clutter removal (l-th sample). After FFT transformation to the time domain and extraction of Ntap time-domain taps, a sub-matrix is formed by all antenna rows and columns corresponding to the b-th receiver array and the t-th time-domain tap. Indicates the first The Wi-Fi data packet transmitter index corresponding to each data point; The feature array is vectorized to obtain the second feature vector. ,in, NTX Indicates the total number of transmitters. McThis indicates the number of antenna columns in each array. It represents the set of real numbers or the vector space of real numbers.
[0010] The present invention also provides a positioning method for VR large-space immersive tours, wherein the positioning method is applied to the positioning system described in any of the above claims, and includes the following steps: Obtain Wi-Fi CSI data and timestamp data emitted by the VR devices used by tourists to obtain input data; The input data is subjected to clutter removal and clustering to obtain preprocessed data; Feature extraction is performed on the preprocessed data to obtain a first feature vector; The preprocessed data is further processed to obtain a second feature vector; The first feature vector is deep encoded to obtain an encoded feature vector. The encoded feature vector is then fused with the second feature vector, and the fused feature vector is decoded to obtain the target position.
[0011] Preferably, the method for obtaining the preprocessed data includes: A dataset is constructed based on the input data; The dataset is clutter removed based on the clutter subspace, and then the clutter-removed data is subjected to thermal noise suppression using wavelet denoising enhancement. Finally, the suppressed data is reshaped to obtain the denoised data. The DBSCAN algorithm is used to perform feature enhancement clustering and outlier detection and removal on the denoised data to obtain the preprocessed data.
[0012] Preferably, the method for obtaining the first feature vector includes: The preprocessed data is used to estimate a cluster-level azimuth array covariance matrix for each receiver array, and the azimuth angles of the cluster and array are determined based on the azimuth array covariance matrix. The azimuth, time difference of arrival, and receiver position are obtained. The azimuth likelihood function and time difference of arrival likelihood function are calculated. Then, the joint likelihood function is constructed and solved to obtain the target position estimate. The target location estimate is encoded using fully connected encoding to obtain the first feature vector.
[0013] Preferably, the method for obtaining the second feature vector includes: The denoised data is then converted to the time domain using a fast Fourier transform. Extracting components containing meaningful signals Ntap =12 time-domain taps to obtain the time-domain CSI array ; Calculate the feature array based on the time-domain CSI array: in, vec Indicates vectorization operation, c Indicates a cluster, iTX Indicates the first i One transmitter, t Indicates a time-domain tap. Let represent the target CSI sample after clutter removal (l-th sample). After FFT transformation to the time domain and extraction of Ntap time-domain taps, a sub-matrix is formed by all antenna rows and columns corresponding to the b-th receiver array and the t-th time-domain tap. Indicates the first The Wi-Fi data packet transmitter index corresponding to each data point; The feature array is vectorized to obtain the second feature vector. ,in, NTX Indicates the total number of transmitters. Mc This indicates the number of antenna columns in each array. It represents the set of real numbers or the vector space of real numbers.
[0014] Compared with the prior art, the beneficial effects of the present invention are as follows: (1) This invention uses the autocovariance matrix and IPCA to dynamically update the clutter subspace to remove clutter, and combines wavelet transform to suppress thermal noise and improve signal quality; it also uses DBSCAN clustering combined with feature enhancement and outlier removal to improve data accuracy and consistency. (2) This invention estimates the covariance matrix by adaptive lumped parameters, uses the root MUSIC algorithm to determine the azimuth angle of arrival, and integrates TDoA information to construct a joint likelihood function. Multimodal information fusion improves positioning accuracy; adaptive parameter adjustment and outlier handling enhance positioning robustness.
[0015] (3) The residual network structure of the present invention includes an encoder, a decoder and an output layer. Feature engineering extracts temporal features and constructs dissimilarity measures such as Frobenius norm difference to enrich input features. Self-supervised training adopts a contrast-geodesic joint loss function, introduces a contrastive learning mechanism and dynamic hyperparameter adjustment to improve the model's discrimination ability and convergence stability.
[0016] (4) The present invention integrates the triangulation results with the neural network features after encoding, taking advantage of each other's strengths and overcoming the limitations of using triangulation or neural networks alone. It utilizes triangulation information to enrich the features of training data, reduces the neural network's dependence on labeled data, and enhances its generalization ability in complex environments.
[0017] (5) The present invention dynamically adjusts hyperparameters during the training process, such as the weights of geodesic loss and contrast loss, and the temperature parameter of contrast loss, to improve the model's adaptability and robustness; confidence-weighted sampling assigns higher weights to high-confidence sample pairs to suppress noise interference.
[0018] (6) The present invention uses location labels to determine the optimal affine transformation, minimizes the mean square error between the location labels and the transformed prediction, and improves the positioning accuracy. Attached Figure Description
[0019] To more clearly illustrate the technical solution of the present invention, the drawings used in the embodiments are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0020] Figure 1 This is a schematic diagram of the system structure according to an embodiment of the present invention; Figure 2 This is a schematic diagram of the system operation process according to an embodiment of the present invention. Detailed Implementation
[0021] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0022] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0023] Example 1 In this embodiment, as Figure 1 , Figure 2 As shown, a positioning system for VR large-space immersive tours includes: a data input module, a data preprocessing module, a triangulation module, a feature engineering module, and a residual network module.
[0024] The data input module is used to obtain Wi-Fi CSI data and timestamp data emitted by the VR devices used by tourists to obtain input data.
[0025] The data preprocessing module is used to remove clutter and cluster the input data to obtain preprocessed data. The data preprocessing module includes: a dataset construction unit, a clutter removal unit, and a clustering unit.
[0026] The dataset building unit constructs a dataset based on the input data.
[0027] In this embodiment, the dataset It is interpreted as a set of L data points, where each data point contains the following information: Among them, (1) It is a CSI array with dimensions of , B =4 indicates the number of ESPARGOS arrays. Mr =2 indicates the number of antenna rows in each array. Mc =4 indicates the number of antenna columns in each array. Nsub =53 indicates the number of non-zero subcarriers in the Wi-Fi preamble field used for channel estimation; (2) Indicate the three-dimensional position of the target (in meters, with the height coordinates assumed to be known); (3) Indicates the timestamp (in seconds); (4) This represents the index of the transmitter that sent the Wi-Fi data packets, with a value ranging from 1 to... NTX .
[0028] The clutter removal unit performs clutter removal on the dataset based on the clutter subspace, then uses wavelet denoising enhancement to suppress thermal noise in the clutter-removed data, and finally reshapes the suppressed data to obtain the denoised data.
[0029] In this embodiment, clutter refers to signal components reflected or scattered by objects other than the target, including direct path components. This embodiment is applied individually to each transmitter and is achieved by determining the clutter subspace and subtracting the projected clutter components from the CSI measurement. Specifically, it includes: (1) inputting vectorized CSI data: ,in, (2) Clutter subspace Through the autocovariance matrix R( t The eigenvectors corresponding to the K largest eigenvalues of the clutter subspace are used to determine the clutter order. This method uses a sliding window to adaptively update the clutter subspace. First, the data is segmented according to a time window (e.g., every 5 seconds), and the autocovariance matrix of each segment is calculated. Then, the clutter subspace is dynamically updated through incremental principal component analysis (IPCA). (3) For each CSI measurement The following formula can be used to remove clutter components: in, Represents a vectorized CSI array. This represents the clutter subspace. In this embodiment, clutter acquisition and removal are performed on a per-transmitter basis. Performed separately; (4) Applying wavelet transform to further suppress thermal noise can preserve the details of the target signal and reduce the impact of high-frequency noise. Specifically, for ,in, DWT (∙) represents the discrete wavelet transform, which decomposes the signal into subbands of different frequencies (approximation coefficients and detail coefficients). Threshold (∙) represents the threshold processing function. ,in , s Indicates the standard deviation of noise. N Indicates the signal length. IDWT (∙) is the inverse discrete wavelet transform, which recovers the low-frequency main body of the signal and preserves the high-frequency details, while suppressing noise; (5) Finally, the processed vector Remodel into an array This array describes the channel variations caused by the presence of a target, but is affected by thermal noise, phase noise and other errors, resulting in denoised data.
[0030] The clustering unit uses the DBSCAN algorithm to perform feature enhancement clustering and outlier detection and removal on the denoised data to obtain preprocessed data.
[0031] In this embodiment, instead of processing each data point individually, all data points measured within the same second interval (∆t = 1 second) are grouped into a cluster. Each cluster contains CSI data from all four transmitters. A set of data point indices containing the c-th cluster is defined. And calculate the average timestamp of the cluster. and average position label Specifically, this includes: (1) grouping all data points measured within the same second interval into a cluster; (2) each cluster containing CSI data from all four transmitters; (3) feature-enhanced clustering: combining CSI features (amplitude variance, phase gradient) to optimize clustering can avoid misgrouping caused by pure time clustering and improve cluster consistency: ① extracting feature vectors; ② using the DBSCAN algorithm for clustering: in, Min represents the neighborhood radius. samples Indicates the minimum number of samples; (4) Outlier detection and removal: Based on Mahalanobis distance, outlier CSI data points are detected, which can improve the data quality within the cluster and reduce noise interference: ① Calculate the mean of CSI data within the cluster. µC Covariance ΣC ; ② Eliminate those that satisfy Data points; (5) Define sets Includes the index l of the data points in the c-th cluster; (6) Calculate the average timestamp of the cluster: (7) Calculate the average position label of this cluster: .
[0032] The triangulation module is used to extract features from the preprocessed data to obtain the first feature vector. The triangulation module includes: an azimuth estimation unit, a positioning unit, and a fully connected unit.
[0033] The azimuth estimation unit uses the preprocessed data to estimate a cluster-level azimuth array covariance matrix for each receiver array, and determines the azimuth of the cluster and array based on the azimuth array covariance matrix.
[0034] In this embodiment, the workflow of the azimuth estimation unit includes: processing the sample covariance matrix. Perform eigenvalue decomposition to obtain all eigenvalues. ,in, N Represents antenna data, H This indicates the conjugate transpose. This represents the observation data matrix consisting of array received signals / CSI observation data after clutter removal processing; assuming that the eigenvalues of the noise subspace are approximately equal, the average of the smallest eigenvalues is taken as the noise variance. ,in, K The number of signal sources can be estimated using information theory criteria such as MDL or AIC. for The first part represents the sample covariance matrix. i Identify eigenvalues; select the largest eigenvalue from all eigenvalues. ; Calculate the signal-to-noise ratio based on noise variance and maximum eigenvalue, and dynamically adjust lumped parameters. This can improve the adaptability of the likelihood function, reduce the subjectivity of heuristic parameters, and enhance the robustness of the azimuth likelihood function; among which, The largest eigenvalue of the covariance matrix is used to characterize the principal component energy of the signal subspace, reflecting the intensity of the target signal. This represents the noise variance, used to quantify the level of environmental noise. It is estimated using the minimum eigenvalue of the covariance matrix. Indicates signal power. Equivalent to signal-to-noise ratio (SNR); the lumped parameters are dynamically adjusted using the calculated SNR to adaptively correct the sample covariance matrix, i.e., by adding a diagonal matrix related to noise power to suppress the influence of noise, thus obtaining the azimuth array covariance matrix: in, This represents the data after denoising. Mr This indicates the number of antenna rows in each array. Nsub This indicates the number of non-zero subcarriers in the Wi-Fi preamble field used for channel estimation. I This represents the identity matrix, used to stabilize the numerical properties of the covariance matrix through diagonal loading. Indicates the first c A set of indexes of data points in each cluster. c This indicates an adaptive adjustment parameter, determined by the signal-to-noise ratio (SNR), which dynamically adjusts the diagonal loading intensity; when the SNR is low (i.e., ... ), c Increase the diagonal loading to stabilize the matrix; when the signal-to-noise ratio is high (i.e., ), c Reduce signal size while preserving details. Then, using the MUSIC algorithm assuming a single source, analyze the covariance matrix of the azimuth array. Determine the cluster c and array b Azimuth (AOA) .
[0035] The positioning unit is used to obtain the azimuth, time difference of arrival and receiver position, calculate the azimuth likelihood function and the time difference of arrival likelihood function, and then construct and solve the joint likelihood function to obtain the target position estimate.
[0036] In this embodiment, the workflow of the positioning unit includes: (1) acquiring the azimuth angles measured by each receiver. Measurement arrival time difference of each receiver pair Receiver location and the normal vector of the position ,in, b =1,2,..., B , B Indicates the number of receivers. i , j (2) Calculate the azimuth likelihood function based on the azimuth angle, signal-to-noise ratio, dynamically adjusted lumped parameters, receiver position, and position normal vector: in, This represents the mixed weights, used to balance the contributions of the von Mises distribution (suitable for periodic angular errors) and the Gaussian distribution (suitable for small-range linear errors). I 0 denotes the zeroth-order modified Bessel function, which serves as a normalization constant in the von Mises distribution, ensuring that the integral of the probability density function equals 1. Indicates azimuth error. s The standard deviation represents the Gaussian distribution and is used to quantify the spread of azimuth error, reflecting the intensity of environmental interference. Indicates the position from the receiver To the target location x The azimuth angle, with reference to the receiver's normal vector. Defined coordinate system This represents the angle function of the target relative to the receiver in the horizontal direction. x (2) The target position is represented by θ, and the angle integral variable is represented by θ. (3) The likelihood function of the time difference of arrival is calculated based on the time difference of arrival and the receiver position: in, Indicates receiver i and j The time difference of arrival between the measurements Indicates the target location x The corresponding theoretical time difference can be calculated using geometric relationships. v.c. Indicates the speed of signal propagation. s The standard deviation of time measurement error reflects clock synchronization accuracy and multipath effects. The time difference of arrival (TDoA) between receiver i and receiver j is expressed in seconds. Let represent the position vector of the i-th receiver. Represents the position vector of the j-th receiver; (4) Target position estimation process: ① Use a single mode (such as only azimuth angle or only TDoA) for preliminary positioning to obtain the initial guessed position. ② Construct the joint likelihood function: based on the target location x Calculate the azimuth error of all receivers. Time difference error between the receiver and the receiver pair Then, substituting the azimuth likelihood function and the time-of-arrival likelihood function, a joint likelihood function is constructed. By maximizing the joint likelihood function, the target position estimate is obtained. in, This represents the estimated target position. Optimization methods: ① Gradient Ascent: Iteratively update the position using the derivative of the objective function with respect to x. ② Particle Filtering: In occlusion environments, approximate the posterior distribution through particle sampling. ③ Adaptive Parameter Adjustment: and s It can be dynamically adjusted according to the receiver's signal-to-noise ratio (e.g., increase when the signal-to-noise ratio is high). (, decrease σ), and ohIt can be trained using historical data or configured based on environmental complexity (reducing the load when multipath propagation is severe). oh ④ Outlier handling: Introduce Mahalanobis distance to detect outlier measurements and assign low weights to unreliable data.
[0037] The fully connected unit encodes the target location estimate through fully connected encoding to obtain the first feature vector.
[0038] The feature engineering module is used to further process the preprocessed data to obtain the second feature vector.
[0039] In this embodiment, the workflow of the feature engineering module includes: processing the denoised data... Transform to the time domain using Fast Fourier Transform; extract meaningful signal components. Ntap =12 time-domain taps to obtain the time-domain CSI array ; Calculate the feature array based on the time-domain CSI array: in, vec This represents a vectorization operation, which expands a multidimensional array column-wise into a column vector. It is used to convert multidimensional signal data into a vector form suitable for subsequent processing (such as neural network input). c Indicates a cluster, iTX Indicates the first i One transmitter, t Indicates a time-domain tap. Let represent the target CSI sample after clutter removal (l-th sample). After FFT transformation to the time domain and extraction of Ntap time-domain taps, a sub-matrix is formed by all antenna rows and columns corresponding to the b-th receiver array and the t-th time-domain tap. Indicates the first The Wi-Fi data packet transmitter index corresponding to each data point; vectorize the feature array to obtain the second feature vector. ,in, NTX Indicates the total number of transmitters. Mc This indicates the number of antenna columns in each array. It represents the set of real numbers or the vector space of real numbers.
[0040] The residual network module is used to perform deep encoding on the first feature vector to obtain the encoded feature vector, and then fuse the encoded feature vector with the second feature vector. Finally, the fused feature vector is decoded to obtain the target position.
[0041] In this embodiment, a residual network module is used to directly predict the target location. The network structure includes multiple densely connected layers, each using the ReLU activation function, and the last layer using a linear activation function to output the target coordinates. The encoder is specifically configured as follows: input layer → 1024 neurons (ReLU) → 512 neurons (ReLU) → 256 neurons (ReLU) → 128 neurons (ReLU) → 64 neurons (ReLU). The decoder has a similar structure to the encoder, but in the reverse order. Finally, an output layer (2 neurons, linear activation) is added to output the target location.
[0042] Then, the dissimilarity measure is fused: (1) Calculate the Frobenius norm difference: ① Construct the CSI matrix: Combine the CSI measurements in the same cluster after clutter removal into a matrix. and ② Calculate the difference matrix: ③ Calculate the Frobenius norm: directly quantifies the global difference in amplitude and phase between two CSI matrices, suitable for distance metrics in multidimensional signal space: in, Denotes the Frobenius norm. mr Indicates row index, mc Indicates column index, Indicates array index, Indicates the first In an array, the position Complex channel difference values at the location. (2) Fusion of dissimilarity measures: ① Using clustering i and clustering j Time difference between To create a fusion dissimilarity metric ② Applying the concept of geodesic dissimilarity metric, a geodesic fusion dissimilarity metric for training is obtained. .
[0043] Self-supervised training: The input to the neural network is the second feature vector after feature engineering. Self-supervised training is performed, and the output is the predicted target location coordinates. Specifically, this includes: (1) Unlike supervised training, channel mapping uses a specially designed twin loss function for self-supervised training: in, and Clustering Cx and Cy Location prediction in the potential space (channel map), parameters β The hyperparameters can be used to adjust the equation to give more weight to the absolute squared error (when...). β When it is large) or normalized squared error (when β When the value is relatively small. Loss function By comparing the Euclidean distances between predicted channel map locations The calculated dissimilarity To minimize. (2) Contrast-geodesic joint loss function, that is, on the basis of the original geodesic loss, a contrastive learning mechanism is introduced to enhance the model's ability to distinguish between similar / dissimilar samples: ① Define the contrast term: for each sample pair According to its dissimilarity measure Define tags: in, t The similarity threshold can be set by statistically analyzing the distance distribution between clusters; ② Contrast loss design: using contrast loss with a temperature parameter (InfoNCE variant): in, T This represents a temperature parameter that controls the sharpness of the distribution. This indicates that for all negative samples Cz Summation. (3) Dynamic hyperparameter adjustment, i.e., adaptive adjustment based on the training phase. β and temperature parameters T To improve convergence stability: ① Dynamic adjustment β : in, steps γ represents the number of training steps. decay Indicates the decay rate; in the early stages of training, β The error is relatively large, focusing on the normalization error; while in the later stages of training, β ① Reduce, focusing on absolute error. ② Dynamically adjust adaptive temperature T: adjust according to the distance distribution of samples within the batch. in, Nb Indicates batch size and dynamic temperature. This can make the contrast loss more robust to different data distributions. (4) Confidence-weighted sampling, that is, assigning higher weights to high-confidence sample pairs to suppress noise interference: ① Calculate the confidence level: in, ① The variance of the dissimilarity measure within a cluster; the smaller the variance, the higher the confidence level. ② Weighted loss: Incorporating confidence weights into the joint loss. in, Represents the twin loss function. l 1 and l 2 represents the weighting coefficient, used to balance geodesic loss and contrast loss. (5) Coordinate transformation: ① Although the relative position is ideally preserved, the coordinate frame of the channel map usually does not match the global coordinate frame; ② Location labels are used in the final evaluation step. To determine the optimal affine transformation To minimize location labels and the transformed prediction The mean square error between them; ③ Location labels are only used to determine the position in this final evaluation step. .
[0044] During network training, network parameters are optimized by constructing a joint loss function: (1) Constructing a triangulation loss function based on the azimuth likelihood function and the time difference of arrival likelihood function. : (2) The loss function of triangulation and the loss function of self-supervised training Taken together, they form the loss function for the entire network: in, and This represents the weighting coefficient, used to balance the triangulation loss and the self-supervised training loss.
[0045] Example 2 In this embodiment, a positioning method for VR large-space immersive tours includes the following steps: S1. Obtain Wi-Fi CSI data and timestamp data emitted by the VR device used by the tourist to obtain input data.
[0046] S2. Perform clutter removal and clustering on the input data to obtain preprocessed data.
[0047] The methods for obtaining preprocessed data include: constructing a dataset based on the input data; removing clutter from the dataset based on the clutter subspace, then using wavelet denoising enhancement to suppress thermal noise in the clutter-removed data, and finally reshaping the suppressed data to obtain denoised data; and using the DBSCAN algorithm to perform feature enhancement clustering and outlier detection and removal on the denoised data to obtain preprocessed data.
[0048] S3. Perform feature extraction on the preprocessed data to obtain the first feature vector.
[0049] The method for obtaining the first feature vector includes: estimating a cluster-level azimuth array covariance matrix for each receiver array using preprocessed data, and determining the azimuth of the cluster and array based on the azimuth array covariance matrix; obtaining the azimuth, time difference of arrival (TDOA), and receiver position, calculating the azimuth likelihood function and the TDOA likelihood function, and then constructing and solving the joint likelihood function to obtain the target position estimate; and encoding the target position estimate through fully connected coding to obtain the first feature vector.
[0050] S4. Further process the preprocessed data to obtain the second feature vector.
[0051] Methods for obtaining the second eigenvector include: transforming the denoised data to the time domain using a Fast Fourier Transform; and extracting the eigenvectors containing meaningful signal components. Ntap =12 time-domain taps to obtain the time-domain CSI array ; Calculate the feature array based on the time-domain CSI array: in, vec Indicates vectorization operation, c Indicates a cluster, iTX Indicates the first i One transmitter, t Indicates a time-domain tap. Let represent the target CSI sample after clutter removal (l-th sample). After FFT transformation to the time domain and extraction of Ntap time-domain taps, a sub-matrix is formed by all antenna rows and columns corresponding to the b-th receiver array and the t-th time-domain tap. Indicates the first The Wi-Fi data packet transmitter index corresponding to each data point; vectorize the feature array to obtain the second feature vector. ,in, NTX Indicates the total number of transmitters. Mc This indicates the number of antenna columns in each array. It represents the set of real numbers or the vector space of real numbers.
[0052] S5. Perform deep encoding on the first feature vector to obtain the encoded feature vector, fuse the encoded feature vector with the second feature vector, and decode the fused feature to obtain the target position.
[0053] The embodiments described above are merely preferred embodiments of the present invention and are not intended to limit the scope of the present invention. Various modifications and improvements made to the technical solutions of the present invention by those skilled in the art without departing from the spirit of the present invention should fall within the protection scope defined by the claims of the present invention.
Claims
1. A positioning system for VR large-space immersive tours, characterized in that, include: Data input module, data preprocessing module, triangulation module, feature engineering module, and residual network module; The data input module is used to acquire Wi-Fi CSI data and timestamp data emitted by the VR device used by the tourist to obtain input data; The data preprocessing module is used to remove clutter and cluster the input data to obtain preprocessed data; The triangulation module is used to extract features from the preprocessed data to obtain a first feature vector; The feature engineering module is used to further process the preprocessed data to obtain a second feature vector; The residual network module is used to perform deep encoding on the first feature vector to obtain an encoded feature vector, and to fuse the encoded feature vector with the second feature vector, and to decode the fused feature to obtain the target position. The data preprocessing module includes: a dataset construction unit, a clutter removal unit, and a clustering unit; The dataset construction unit constructs a dataset based on the input data; The clutter removal unit performs clutter removal on the dataset based on the clutter subspace, then uses wavelet denoising enhancement to suppress thermal noise in the clutter-removed data, and finally reshapes the suppressed data to obtain the denoised data. The clustering unit performs feature enhancement clustering and outlier detection and removal on the denoised data based on the DBSCAN algorithm to obtain the preprocessed data. The triangulation module includes: an azimuth estimation unit, a positioning unit, and a fully connected unit; The azimuth estimation unit uses the preprocessed data to estimate a cluster-level azimuth array covariance matrix for each receiver array, and determines the azimuth of the cluster and array based on the azimuth array covariance matrix. The positioning unit is used to obtain the azimuth angle, time difference of arrival and receiver position, calculate the azimuth angle likelihood function and the time difference of arrival likelihood function, and then construct and solve the joint likelihood function to obtain the target position estimate. The fully connected unit encodes the target location estimate using fully connected encoding to obtain the first feature vector; The workflow of the azimuth estimation unit includes: For the sample covariance matrix Perform eigenvalue decomposition to obtain all eigenvalues. ,in, N Represents antenna data, H This indicates the conjugate transpose. This represents the observation data matrix consisting of array received signals / CSI observation data after clutter removal processing; Assuming the eigenvalues of the noise subspace are approximately equal, the average of the smallest eigenvalues is taken as the noise variance. ,in, K Indicates the number of signal sources. λi The first part of the sample covariance matrix represents the... i One eigenvalue; Select the largest eigenvalue from all eigenvalues. ; Based on the noise variance and the maximum eigenvalue, the signal-to-noise ratio is dynamically adjusted using lumped parameters. ; The sample covariance matrix is adaptively corrected by dynamically adjusting the lumped parameters based on the calculated signal-to-noise ratio, resulting in the azimuth array covariance matrix: in, This represents the data after denoising. Mr This indicates the number of antenna rows in each array. Nsub This indicates the number of non-zero subcarriers in the Wi-Fi preamble field used for channel estimation. I Represents the identity matrix. Indicates the first c A set of indexes of data points in each cluster. γ This indicates adaptive parameter adjustment; The azimuth angles of the cluster and the array are determined based on the azimuth array covariance matrix. The workflow of the positioning unit includes: Obtain the azimuth angles measured by each receiver Measurement arrival time difference of each receiver pair Receiver location and the normal vector of the position ,in, b =1,2,..., B , B Indicates the number of receivers, and i and j represent the indices of the receiver pairs; The azimuth likelihood function is calculated based on the azimuth angle, the signal-to-noise ratio dynamically adjusted lumped parameters, the receiver position, and the position normal vector: in, ω Indicates mixed weights, I 0 represents the zeroth-order modified Bessel function. Indicates azimuth error. σ This represents the standard deviation of a Gaussian distribution. This represents the angle function of the target relative to the receiver in the horizontal direction. x The target position is represented by θ, and the integral variable of the angle is represented by θ. Calculate the time-of-arrival likelihood function based on the time difference of arrival and the receiver location: in, Indicates the target location x The corresponding theoretical time difference, vc Indicates the speed of signal propagation. σt The standard deviation of time measurement error. TDoA represents the measurement arrival time difference between receiver i and receiver j, in seconds. Let represent the position vector of the i-th receiver. This represents the position vector of the j-th receiver; A joint likelihood function is constructed based on the azimuth likelihood function and the time difference of arrival likelihood function, and the estimated target position is obtained by maximizing the joint likelihood function. in, This represents the estimated location of the target.
2. The positioning system for VR large-space immersive tours according to claim 1, characterized in that, The workflow of the feature engineering module includes: The denoised data is then converted to the time domain using a fast Fourier transform. Extracting components containing meaningful signals Ntap =12 time-domain taps to obtain the time-domain CSI array ; Calculate the feature array based on the time-domain CSI array: in, vec Indicates vectorization operation, c Indicates a cluster, iTX Indicates the first i One transmitter, t Indicates a time-domain tap. Let represent the target CSI sample after clutter removal. After FFT transformation to the time domain and extraction of Ntap time domain taps, a submatrix is formed by all antenna rows and columns corresponding to the b-th receiver array and the t-th time domain tap. Indicates the first The Wi-Fi data packet transmitter index corresponding to each data point; The feature array is vectorized to obtain the second feature vector. ,in, NTX Indicates the total number of transmitters. Mc This indicates the number of antenna columns in each array. It represents the set of real numbers or the vector space of real numbers.
3. A positioning method for VR large-space immersive tours, wherein the positioning method is applied to the positioning system described in any one of claims 1-2, characterized in that, Includes the following steps: Obtain Wi-Fi CSI data and timestamp data emitted by the VR devices used by tourists to obtain input data; The input data is subjected to clutter removal and clustering to obtain preprocessed data; Feature extraction is performed on the preprocessed data to obtain a first feature vector; The preprocessed data is further processed to obtain a second feature vector; The first feature vector is deep encoded to obtain an encoded feature vector. The encoded feature vector is then fused with the second feature vector, and the fused feature vector is decoded to obtain the target position.
4. The positioning method for VR large-space immersive tours according to claim 3, characterized in that, The methods for obtaining the preprocessed data include: A dataset is constructed based on the input data; The dataset is clutter removed based on the clutter subspace, and then the clutter-removed data is subjected to thermal noise suppression using wavelet denoising enhancement. Finally, the suppressed data is reshaped to obtain the denoised data. The DBSCAN algorithm is used to perform feature enhancement clustering and outlier detection and removal on the denoised data to obtain the preprocessed data.
5. The positioning method for VR large-space immersive tours according to claim 4, characterized in that, The methods for obtaining the first feature vector include: The preprocessed data is used to estimate a cluster-level azimuth array covariance matrix for each receiver array, and the azimuth angles of the cluster and array are determined based on the azimuth array covariance matrix. The azimuth, time difference of arrival, and receiver position are obtained. The azimuth likelihood function and time difference of arrival likelihood function are calculated. Then, the joint likelihood function is constructed and solved to obtain the target position estimate. The target location estimate is encoded using fully connected encoding to obtain the first feature vector.
6. The positioning method for VR large-space immersive tours according to claim 5, characterized in that, The methods for obtaining the second feature vector include: The denoised data is then converted to the time domain using a fast Fourier transform. Extracting components containing meaningful signals Ntap =12 time-domain taps to obtain the time-domain CSI array ; Calculate the feature array based on the time-domain CSI array: in, vec Indicates vectorization operation, c Indicates a cluster, iTX Indicates the first i One transmitter, t Indicates a time-domain tap. Let represent the target CSI sample after clutter removal. After FFT transformation to the time domain and extraction of Ntap time domain taps, a submatrix is formed by all antenna rows and columns corresponding to the b-th receiver array and the t-th time domain tap. Indicates the first The Wi-Fi data packet transmitter index corresponding to each data point; The feature array is vectorized to obtain the second feature vector. ,in, NTX Indicates the total number of transmitters. Mc This indicates the number of antenna columns in each array. It represents the set of real numbers or the vector space of real numbers.
Citation Information
Patent Citations
Virtual-reality tracking method and system based on CSI
CN107484124A
Indoor comprehensive positioning method based on IMU, digital indoor distribution and WiFi
CN117128973A