Indoor positioning fingerprint database updating method and device, equipment and storage medium
By using conditions to generate adversarial network models, sampling and training generators and discriminators in indoor positioning, the problem of low update efficiency of fingerprint library in the prior art is solved, and the data acquisition workload and time is reduced when replacing equipment or methods is realized. cost effect.
Patent Information
- Application Number
- CN202411356594.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-27
- Publication Date
- 2025-01-10
AI Technical Summary
The existing indoor positioning fingerprint library update method has a high workload and low efficiency when collecting new fingerprint data. Especially when replacing the collection equipment or method, it is necessary to re-collect all fingerprint data, resulting in high costs.
The second set of position points is sampled from the first set of position points by using the preset sampling method, and the second acquisition device collects fingerprint data only on the second set of position points, and trains the CGAN model to generate the second set of position points by conditional generation adversarial network (CGAN) model. The fingerprint data of the remaining position points in a set of position points reduces the workload of new data acquisition and improves update efficiency.
It significantly reduces the workload of new fingerprint data acquisition, uses limited fingerprint data to generate new fingerprint data with the same distribution, improves fingerprint library update efficiency and reduces time cost.
Smart Images

Figure CN119293054A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of this specification relate to the field of artificial intelligence technology, and in particular to a method, device, equipment and storage medium for updating an indoor positioning fingerprint library. Background Art
[0002] With the rapid development of mobile devices and Internet of Things technology, indoor positioning technology has become a hot topic of research. Indoor positioning technology is crucial for the navigation and positioning of intelligent systems in indoor environments. It plays a key role in many fields, such as consumer applications such as shopping guides in shopping malls, reverse car search in parking lots, and family loss prevention, as well as enterprise applications such as crowd monitoring and analysis, intelligent manufacturing, emergency rescue, and personnel asset management. Among the many indoor positioning methods, fingerprint-based positioning technology has attracted widespread attention due to its high positioning accuracy. This technology relies on wireless signal features (such as RSSI, CSI, etc.) collected in a specific environment. These features vary from location to location, forming a unique "fingerprint". By comparing the signal features collected in real time with the data in the fingerprint library, the target location can be estimated.
[0003] Although fingerprint positioning technology is favored for its high accuracy, the challenges faced in its implementation include the high cost of building a fingerprint library and its sensitivity to environmental changes, which requires frequent updates of the fingerprint library to maintain positioning accuracy. When the fingerprint data acquisition method or acquisition equipment needs to be replaced, the existing technology mainly updates the fingerprint library by re-collecting all fingerprint data, but this method has the problems of large data acquisition workload and high data acquisition time cost. Therefore, there is an urgent need for an indoor positioning fingerprint library update method that can reduce the workload of new data acquisition and reduce the time cost of new data acquisition when the acquisition method or acquisition equipment is replaced. Summary of the invention
[0004] In view of the above problems in the prior art, the purpose of the embodiments of this specification is to provide a method, device, equipment and storage medium for updating an indoor positioning fingerprint library to solve the problems of large workload and low efficiency in collecting new fingerprint data in the prior art.
[0005] In order to solve the above technical problems, the specific technical solutions of the embodiments of this specification are as follows:
[0006] On the one hand, an embodiment of this specification provides a method for updating an indoor positioning fingerprint library, the method comprising:
[0007] Acquire first fingerprint data collected by a first collection device at a first set of position points;
[0008] Sampling the first set of position points to obtain a second set of position points according to a preset sampling method;
[0009] Acquire second fingerprint data collected by a second collection device at a second set of position points;
[0010] Using the second fingerprint data and the second position point set as training samples to train a pre-trained first fingerprint data generation model to obtain a trained second fingerprint data generation model, wherein the first fingerprint data generation model is a conditional generative adversarial network model;
[0011] Inputting a third set of position points in the first set of position points except the second set of position points into the second fingerprint data generation model to generate third fingerprint data;
[0012] The second fingerprint data and the third fingerprint data and the corresponding position points are combined to obtain a new fingerprint library.
[0013] Furthermore, the conditional generative adversarial network model includes a generator and a discriminator, wherein the generator is used to generate pseudo fingerprint data according to a set of position points and a random noise vector and output the pseudo fingerprint data to the discriminator, and includes an embedding layer, a convolution layer, a pooling layer, a residual layer, a self-attention module and a decoder, wherein a spectral normalization layer is added after the convolution layer, the pooling layer and the residual layer, and the spectral normalization layer is used to limit the spectral norm of the weight matrix of each network layer in the generator within a preset condition;
[0014] The generating of pseudo fingerprint data according to the position point set and the random noise vector comprises:
[0015] Inputting the position point set into the embedding layer to obtain a position point vector set;
[0016] The position point vector set and the random noise vector are fused and input into the convolution layer for convolution processing to obtain a first feature vector;
[0017] Inputting the feature vector into the pooling layer for downsampling to obtain a second feature vector;
[0018] Inputting the second eigenvector into the residual layer for residual processing to obtain a third eigenvector;
[0019] Inputting the third eigenvector into the self-attention module to perform attention weighted processing on the third eigenvector to obtain a fourth eigenvector;
[0020] The fourth feature vector is input into the decoder for upsampling and deconvolution processing to generate pseudo fingerprint data.
[0021] Furthermore, the discriminator is used to judge the probability that the pseudo fingerprint data is real fingerprint data and the probability of judging the true and false of mixed batch fingerprint data, and includes a convolution layer, a batch normalization layer, a reference attention module and a fully connected layer. A spectral normalization layer is added after the convolution layer, the batch normalization layer and the fully connected layer. The spectral normalization layer is used to limit the spectral norm of the weight matrix of each network layer in the discriminator to a preset condition;
[0022] The determining the probability that the pseudo fingerprint data is real fingerprint data includes:
[0023] Inputting the pseudo fingerprint data into the convolution layer for feature extraction to obtain a fifth feature vector;
[0024] Inputting the fifth eigenvector into the batch normalization layer for normalization processing to obtain a sixth eigenvector;
[0025] The sixth feature vector is input into the reference attention module, and the reference attention module performs attention weighting on the sixth feature vector by calculating the similarity between the sixth feature vector and the feature vector of the real fingerprint data to obtain a seventh feature vector;
[0026] The seventh eigenvector is converted into a one-dimensional vector by using the fully connected layer and a fully connected operation is performed to extract a global eigenvector, and a probability value is output through a post-neuron according to the global eigenvector.
[0027] Furthermore, the determination of the probability of true or false mixed batch fingerprint data includes:
[0028] Mixing a real fingerprint data into a batch of fake fingerprint data to determine the probability of each fingerprint data being true or false; and
[0029] A fake fingerprint data is mixed into a batch of real fingerprint data to determine the true or false probability of each fingerprint data.
[0030] Furthermore, the training process of the second fingerprint data generation model includes:
[0031] Initialize the weight parameters of the generator and the discriminator using Gaussian distribution to obtain the weight matrices of the generator and the discriminator;
[0032] Inputting the second position point set and the random noise vector into the generator, and outputting pseudo fingerprint data;
[0033] Input the pseudo fingerprint data, the second fingerprint data and the second position point set as training samples into the discriminator to obtain the probability that each pseudo fingerprint data is the real fingerprint data and the true and false probability of the mixed batch fingerprint data;
[0034] The generator and discriminator losses are calculated using a pre-constructed loss function according to the probability that each pseudo fingerprint data is real fingerprint data and the true and false probabilities of the mixed batch fingerprint data;
[0035] Update the weight matrices of the generator and the discriminator according to the generator and the discriminator losses, and perform spectral normalization constraints on the weight matrices;
[0036] Repeat the above steps until the preset stop condition is met.
[0037] Furthermore, the pre-constructed loss function is:
[0038]
[0039] L cond (G,D)=E x~p(x) [logD(x|y)]+E z~p(z) [log(1-D(G(z|y)))];
[0040] Among them, G represents the generator, D represents the discriminator, It means maximizing the loss function when updating D and minimizing the loss function when updating G. cond (G,D) represents the conditional loss, represents the first adversarial loss, represents the second adversarial loss, λ1 represents the weight of the first adversarial loss, λ2 represents the weight of the second adversarial loss, x is the real fingerprint data, E represents the expectation, which is used to calculate the average value of a function under a specific probability distribution, D(x|y) represents the probability of predicting x as the real fingerprint data under a given position point set y, G(z|y) represents the pseudo fingerprint data generated by the generator under a given position point set y, D(G(z|y)) represents the probability of predicting the pseudo fingerprint data as the real fingerprint data, E x~p(x) [logD(x|y)] represents the expected value of the logarithmic likelihood that the discriminator correctly predicts x as the real fingerprint data when given the location point set y under the probability distribution p(x) of the real fingerprint data, E z~p(z) [log(1-D(G(z|y)))] represents the expected value of the logarithmic likelihood that the discriminator will incorrectly predict the pseudo fingerprint data G(z|y) generated by the generator as the real fingerprint data when given the position point set y under the probability distribution p(z) of the generator input noise vector z.
[0041] On the other hand, the embodiment of this specification also provides an indoor positioning fingerprint library updating device, the device comprising:
[0042] A first acquisition module, used to acquire first fingerprint data collected by a first acquisition device at a first set of position points;
[0043] A sampling module, configured to obtain a second set of position points by sampling from the first set of position points according to a preset sampling method;
[0044] A second acquisition module, used to acquire second fingerprint data collected by a second acquisition device at a second location point set;
[0045] A training module, configured to train a pre-trained first fingerprint data generation model using the second fingerprint data and the second position point set as training samples to obtain a trained second fingerprint data generation model, wherein the first fingerprint data generation model is a conditional generative adversarial network model;
[0046] a generating module, configured to input a third set of position points in the first set of position points except the second set of position points into the second fingerprint data generating model to generate third fingerprint data;
[0047] The updating module is used to combine the second fingerprint data and the third fingerprint data and the corresponding position points to obtain a new fingerprint library.
[0048] On the other hand, an embodiment of the present specification further provides a computer device, including a memory, a processor, and a computer program stored in the memory, wherein when the computer program is executed by the processor, the instructions of any one of the above methods are executed.
[0049] On the other hand, an embodiment of the present specification further provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor of a computer device, the computer program executes instructions of any one of the above-described methods.
[0050] On the other hand, the embodiments of this specification further provide a computer program product, which, when executed by a processor of a computer device, executes instructions of any one of the above methods.
[0051] By adopting the above technical scheme, the indoor positioning fingerprint library updating method provided in the embodiment of the present specification samples the second position point set from the first position point set through a preset sampling method, and uses the second collection device to collect the second fingerprint data only on the second position point set. Compared with re-collecting the fingerprint data of all the position points, the workload of new data collection is significantly reduced. The second position point set and the second fingerprint data training conditions are used to generate a confrontation network (CGAN) model, so that the trained CGAN model can learn and generate fingerprint data corresponding to the remaining position points in the first position point set, i.e., the third position point set, based on the limited second fingerprint data, so that new fingerprint data with the same distribution as the second fingerprint data can be generated in a shorter time. The new fingerprint data can be combined with the second fingerprint data to obtain a new fingerprint library, thereby improving the updating efficiency of the fingerprint library.
[0052] The above description is only an overview of the technical solutions of some embodiments of this specification. In order to more clearly understand the technical means of some embodiments of this specification, they can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the embodiments of this specification more obvious and easy to understand, the following specifically cites the preferred embodiments and describes them in detail in conjunction with the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] In order to more clearly illustrate the embodiments of this specification or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this specification. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0054] Figure 1 A schematic diagram showing a flow chart of a method for updating an indoor positioning fingerprint library in some embodiments of this specification is shown;
[0055] Figure 2 The structural diagram of the CGAN model is shown;
[0056] Figure 3 A schematic diagram of a process of generating pseudo fingerprint data according to a set of position points and a random noise vector in some embodiments of this specification is shown;
[0057] Figure 4 A schematic diagram of a process for determining the probability that the pseudo fingerprint data is real fingerprint data in some embodiments of this specification is shown;
[0058] Figure 5 A schematic diagram showing a flow chart of a training process of a second fingerprint data generation model in some embodiments of this specification;
[0059] Figure 6(a)-Figure 6(c) A schematic diagram showing the positioning error experimental results using the KNN model in some embodiments of this specification;
[0060] Figure 7 A schematic diagram showing the results of positioning error experiments performed on three data sets using a KNN model in some embodiments of this specification;
[0061] Figure 8 A schematic diagram of the structure of a computer device in this specification is shown.
[0062] Description of the accompanying symbols:
[0063] 701, a first acquisition module;
[0064] 702, sampling module;
[0065] 703, second acquisition module;
[0066] 704, training module;
[0067] 705. Generate module;
[0068] 706. Update module;
[0069] 802. Computer equipment;
[0070] 804, processor;
[0071] 806. Memory;
[0072] 808, driving mechanism;
[0073] 810, input / output module;
[0074] 812. Input device;
[0075] 814. Output device;
[0076] 816. Presentation equipment;
[0077] 818. Graphical user interface;
[0078] 820, network interface;
[0079] 822, communication link;
[0080] 824. Communication bus. DETAILED DESCRIPTION
[0081] The following will be combined with the drawings in the embodiments of this specification to clearly and completely describe the technical solutions in the embodiments of this specification. Obviously, the described embodiments are only part of the embodiments of this specification, not all of the embodiments. Based on the embodiments in this specification, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this specification.
[0082] In order to solve the above problems, the embodiments of this specification provide a method for updating an indoor positioning fingerprint library. Figure 1 This is a flowchart of an indoor positioning fingerprint library update method provided by an embodiment of this specification. This specification provides method operation steps as described in the embodiment or flowchart, but may include more or fewer operation steps based on conventional or non-creative labor. The order of steps listed in the embodiment is only one way of executing the order of many steps and does not represent the only execution order. When the actual system or device product is executed, it can be executed in the order of the method shown in the embodiment or the accompanying drawings or in parallel.
[0083] It should be noted that the terms "first", "second", etc. in this specification and claims and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of this specification described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, device, product or equipment that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or equipment.
[0084] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. And the acquisition, storage, use, and processing of data in the technical solutions described in the embodiments of this application are in compliance with relevant regulations.
[0085] Reference Figure 1 As shown, the embodiment of this specification provides a method for updating an indoor positioning fingerprint library, the method comprising:
[0086] S101: Acquire first fingerprint data collected by a first collection device at a first set of position points;
[0087] S102: Sampling the first set of position points to obtain a second set of position points according to a preset sampling method;
[0088] S103: Acquire second fingerprint data collected by a second collection device at a second set of position points;
[0089] S104: using the second fingerprint data and the second position point set as training samples to train a pre-trained first fingerprint data generation model to obtain a trained second fingerprint data generation model, wherein the first fingerprint data generation model is a conditional generative adversarial network model;
[0090] S105: inputting a third set of position points in the first set of position points except the second set of position points into the second fingerprint data generation model to generate third fingerprint data;
[0091] S106: Combining the second fingerprint data and the third fingerprint data and corresponding position points to obtain a new fingerprint library.
[0092] By adopting the above technical scheme, the indoor positioning fingerprint library updating method provided in the embodiment of the present specification samples the second position point set from the first position point set through a preset sampling method, and uses the second collection device to collect the second fingerprint data only on the second position point set. Compared with re-collecting the fingerprint data of all the position points, the workload of new data collection is significantly reduced. The second position point set and the second fingerprint data training conditions are used to generate a confrontation network (CGAN) model, so that the trained CGAN model can learn and generate fingerprint data corresponding to the remaining position points in the first position point set, i.e., the third position point set, based on the limited second fingerprint data, so that new fingerprint data with the same distribution as the second fingerprint data can be generated in a shorter time. The new fingerprint data can be combined with the second fingerprint data to obtain a new fingerprint library, thereby improving the updating efficiency of the fingerprint library.
[0093] Fingerprint data refers to the signal characteristics collected at a specific location, such as Wi-Fi signal strength, Bluetooth signal strength, or base station signal strength. By collecting a series of location-related fingerprint data in the target area in advance and establishing a fingerprint database, when a mobile device (such as a smartphone) moves in the target area, it will continuously collect surrounding signal strength data to form real-time fingerprint data of the current location. By comparing these real-time collected signal strength data with the data in the fingerprint database, the current location of the mobile device can be inferred. However, due to the complexity and dynamics of the indoor environment, the fingerprint database needs to be updated and maintained regularly. For example, the addition of new wireless devices, signal sources, or changes in building structures may affect the propagation and reception of signals, thereby affecting positioning accuracy. Therefore, the fingerprint database needs to be updated regularly to ensure its accuracy and timeliness.
[0094] In step S101, the first acquisition device can be understood as the old signal acquisition device, and the fingerprint data collected by the old signal acquisition device is the first fingerprint data. The second acquisition device can be understood as the new signal acquisition device, and the fingerprint data collected by the new signal acquisition device is the second fingerprint data. Each fingerprint data corresponds to a location point coordinate, and the location point coordinates in the same target area are fixed and will not change with the change of the acquisition device. Since there may be a large gap between the fingerprint data collected by different signal acquisition devices, when the signal acquisition device needs to be replaced, the fingerprint data in the fingerprint library should be updated in time. Since the workload of collecting fingerprint data of all positions is large and the efficiency is low, the second acquisition device is only used in the embodiment of this specification to collect fingerprint data corresponding to some location points in the first location point set.
[0095] In some embodiments, in step S102, sampling from the first set of position points according to a preset sampling method to obtain a second set of position points may be: uniformly sampling from the first set of position points according to a preset sampling ratio to obtain the second set of position points. Preferably, the preset sampling ratio is 10%, that is, 10% of the position points are selected from the first set of position points to form the second set of position points. In step S103, after determining the second set of position points, a second acquisition device is used to acquire the second fingerprint data in the second set of position points, and the amount of the second fingerprint data is only 10% of the amount of the first fingerprint data. Therefore, compared with re-collecting the fingerprint data of all position points, the workload of collecting new fingerprint data is significantly reduced.
[0096] In step S104, the embodiment of this specification adopts a conditional generative adversarial network (CGAN) model to learn the distribution characteristics of real fingerprint data by training the generator and the discriminator, so that the trained CGAN model can be used to generate fingerprint data that meets the requirements. Figure 2 As shown, the CGAN model includes a generator and a discriminator, wherein the generator is used to receive a set of position points and a random noise vector as input and convert it into a data sample similar to the real fingerprint data, while the discriminator is used to distinguish between real data and generated data. During the CGAN training process, the generator and the discriminator are trained by alternating updates. The discriminator updates itself by maximizing the probability of correctly classifying the input data, while the generator updates itself by minimizing the probability of being classified as false by the discriminator.
[0097] In the embodiment of this specification, the generator includes an embedding layer, a convolution layer, a pooling layer, a residual layer, a self-attention module and a decoder, wherein a spectral normalization layer is added after the convolution layer, the pooling layer and the residual layer, and the spectral normalization layer is used to limit the spectral norm of the weight matrix of each network layer in the generator within a preset condition, thereby stabilizing the generator training process, wherein the preset condition is the Lipschitz continuity condition. The implementation method of spectral normalization mainly includes:
[0098] The spectral norm of the weight matrix of each layer in the neural network is calculated by the singular value decomposition method;
[0099] Divide each element in the weight matrix by the spectral norm to obtain the normalized weight matrix. In this way, the spectral norm of the weight matrix is restricted to 1, thus satisfying the Lipschitz continuity condition.
[0100] The normalized weight matrix is integrated into the network layer of the neural network, replacing the original weight matrix W.
[0101] Reference Figure 3 , the generating of pseudo fingerprint data according to the position point set and the random noise vector comprises:
[0102] S301: inputting the position point set into the embedding layer to obtain a position point vector set;
[0103] S302: fusing the position point vector set and the random noise vector and inputting them into the convolution layer for convolution processing to obtain a first feature vector;
[0104] S303: Input the feature vector into the pooling layer for downsampling to obtain a second feature vector;
[0105] S304: Input the second eigenvector into the residual layer for residual processing to obtain a third eigenvector;
[0106] S305: Inputting the third eigenvector into the self-attention module to perform attention weighted processing on the third eigenvector to obtain a fourth eigenvector;
[0107] S306: Input the fourth feature vector into the decoder for upsampling and deconvolution processing to generate pseudo fingerprint data.
[0108] It can be understood that since the location point set is a discrete and high-dimensional set, it is first necessary to convert the location point set into a continuous vector, through which the relative or absolute position relationship between the location points can be captured. The location point vector set and the random noise vector are combined by splicing, addition or other fusion methods as the input vector, input into the convolution layer, and the first feature vector containing the input quantity feature information is generated by the sliding window operation of the convolution kernel. By inputting the first feature vector into the pooling layer, the dimension of the feature vector can be reduced while retaining important feature information, thereby reducing the amount of model calculation and avoiding the problem of overfitting. The second feature vector output by the pooling layer is input into the residual layer, and the original input vector is directly passed to the subsequent network layer through the shortcut connection in the residual network, which can alleviate the gradient vanishing problem in the model and improve the training efficiency and model performance. The third feature vector output by the pooling layer is input into the self-attention module, and the third feature vector can be weighted by calculating the attention score between the internal elements of the vector, so as to further extract important feature information and obtain the fourth feature vector. The fourth feature vector is input into the decoder, and the feature vector is gradually restored to the original size and details of the original fingerprint data through upsampling and deconvolution operations, and finally pseudo fingerprint data is generated. Thus, through the above generator, pseudo fingerprint data can be generated according to the position point set and the random noise vector.
[0109] In order to further improve the performance of the CGAN model so that CGAN can generate higher quality pseudo fingerprint data, in the embodiments of this specification, the discriminator is used to judge the probability of the pseudo fingerprint data being the real fingerprint data, and is also used to judge the probability of the mixed batch fingerprint data being true or false. Specifically, during the training iteration process, for a batch of true and false data, a "multiple choice" comparison of two scenarios is formed. The first scenario is to mix a real fingerprint data into all the pseudo fingerprint data, and train the discriminator to identify this real fingerprint data. Mathematically, inputting fingerprint data into the discriminator will obtain their respective scalar outputs, so it is hoped that the scalar output of the only real fingerprint data is much larger than other scalar outputs, thereby forming a sharp contrast and increasing the discriminator's distinguishability. Dually, the second scenario is to mix a pseudo fingerprint data into a batch of real fingerprint data, and train the discriminator to screen out this pseudo fingerprint data. By training the discriminator in these two scenarios, the discriminant ability of the discriminator can be further improved, thereby indirectly improving the generation ability of the generator under the drive of the discriminator.
[0110] In the embodiment of this specification, the discriminator includes a convolutional layer, a batch normalization layer, a reference attention module and a fully connected layer. A spectral normalization layer is added after the convolutional layer, the batch normalization layer and the fully connected layer. The spectral normalization layer is used to limit the spectral norm of the weight matrix of each network layer in the discriminator within a preset condition, thereby stabilizing the discriminator training process. Figure 4 As shown, the probability of judging that the pseudo fingerprint data is real fingerprint data includes:
[0111] S401: Inputting the pseudo fingerprint data into the convolution layer for feature extraction to obtain a fifth feature vector;
[0112] S402: Input the fifth eigenvector into the batch normalization layer for normalization processing to obtain a sixth eigenvector;
[0113] S403: inputting the sixth feature vector into the reference attention module, and the reference attention module performs attention weighting on the sixth feature vector by calculating the similarity between the sixth feature vector and the feature vector of the real fingerprint data to obtain a seventh feature vector;
[0114] S404: using the fully connected layer to convert the seventh eigenvector into a one-dimensional vector and perform a fully connected operation to extract a global eigenvector, and output a probability value through a post-neuron according to the global eigenvector.
[0115] It can be understood that the features in the pseudo fingerprint data are extracted through the convolution layer to obtain the fifth eigenvector, which contains the spatial hierarchical information and important structural features of the pseudo fingerprint data. The fifth eigenvector is normalized by the batch normalization layer, and the internal covariate offset input is reduced by normalizing the eigenvector of each small batch of data. Each element of the fifth eigenvector is normalized to have zero mean and unit variance, and is scaled and offset by learnable parameters to retain the representation ability of the model, thereby improving the stability and speed of CGAN model training. Due to the imbalance of the training of the generator and the discriminator itself and the fact that the task of the discriminator is much simpler than the generated task, if a self-attention module is also added to the discriminator, the performance of the discriminator will be improved on the basis of the simple task of the discriminator itself, thereby making the training of the two more unbalanced, and thus making the adversarial learning more unstable. Therefore, in the embodiment of this specification, a reference attention module is introduced in the discriminator, which introduces real fingerprint data as a reference for the calculation of key and query modules in the attention mechanism. Specifically, the discriminator adds the input of real fingerprint data as reference data, and enhances the features through the reference attention module, thereby enhancing the robustness of the discriminator. At the same time, different feature enhancements can further increase the task of the discriminator, making the difficulty of the discriminator and the generator close, so that the training of the two is more balanced. The sixth feature vector can be compared with the feature vector of the real fingerprint data through the reference attention module, and the attention weight is assigned to each element in the sixth feature vector by calculating the similarity between the two. These weights are then used to weight the sixth feature vector to generate the seventh feature vector, which focuses more on features similar to the real fingerprint data. Finally, the seventh feature vector is input into one or more fully connected layers, which connect each element in the feature vector to each neuron in the output layer, and calculate the output through weighted and activation functions. The output probability represents the probability that the input pseudo-fingerprint data is similar to the real fingerprint data.
[0116] In some embodiments of this specification, the determination of the probability of true or false mixed batch fingerprint data includes:
[0117] Mixing a real fingerprint data into a batch of fake fingerprint data to determine the probability of each fingerprint data being true or false; and
[0118] A fake fingerprint data is mixed into a batch of real fingerprint data to determine the true or false probability of each fingerprint data.
[0119] In some embodiments of this specification, refer to Figure 5 , the training process of the second fingerprint data generation model includes:
[0120] S501: Initializing weight parameters of the generator and the discriminator using Gaussian distribution to obtain weight matrices of the generator and the discriminator;
[0121] S502: inputting the second position point set and the random noise vector into the generator, and outputting pseudo fingerprint data;
[0122] S503: Input the pseudo fingerprint data, the second fingerprint data and the second position point set as training samples into the discriminator to obtain the probability that each pseudo fingerprint data is the real fingerprint data and the true and false probability of the mixed batch fingerprint data;
[0123] S504: Calculate the generator and discriminator losses using a pre-built loss function according to the probability that each pseudo fingerprint data is real fingerprint data and the true and false probabilities of the mixed batch fingerprint data;
[0124] S505: updating the weight matrices of the generator and the discriminator according to the losses of the generator and the discriminator, and performing spectral normalization constraints on the weight matrices;
[0125] S506: Repeat the above steps until a preset stop condition is met.
[0126] Specifically, in step S504, the pre-constructed loss function is:
[0127]
[0128] L cond (G,D)=E x~p(x) [logD(x|y)]+E z~p(z) [log(1-D(G(z|y)))];
[0129] Among them, G represents the generator, D represents the discriminator, and minmax represents maximizing the loss function when updating D.
[0130] GD
[0131] When updating G, minimize the loss function, L cond (G,D) represents the conditional loss, represents the first adversarial loss, represents the second adversarial loss, λ1 represents the weight of the first adversarial loss, λ2 represents the weight of the second adversarial loss, x is the real fingerprint data, E represents the expectation, which is used to calculate the average value of a function under a specific probability distribution, D(x|y) represents the probability of predicting x as the real fingerprint data under a given position point set y, G(z|y) represents the pseudo fingerprint data generated by the generator under a given position point set y, D(G(z|y)) represents the probability of predicting the pseudo fingerprint data as the real fingerprint data, E x~p(x)[logD(x|y)] represents the expected value of the logarithmic likelihood that the discriminator correctly predicts x as the real fingerprint data when given the location point set y under the probability distribution p(x) of the real fingerprint data, E z~p(z) [log(1-D(G(z|y)))] represents the expected value of the logarithmic likelihood that the discriminator will incorrectly predict the pseudo fingerprint data G(z|y) generated by the generator as the real fingerprint data when given the position point set y under the probability distribution p(z) of the generator input noise vector z.
[0132] For the first scenario, a real fingerprint data is mixed into a batch of pseudo fingerprint data, similar to the multi-classification problem. The scalar output of this batch of fingerprint data is softmaxed, and then the cross entropy between it and the one-hot ground truth is calculated. Here, one-hot represents the only real fingerprint data. For the same batch of pseudo fingerprint data, different real fingerprint data can be mixed in, and then these different configurations are compared and cross entropy is calculated respectively. The average is obtained to obtain the contrast loss function in the first scenario, which is the first adversarial loss. For the second scenario, a fake fingerprint data is mixed into a batch of real fingerprint data, the scalar output of this batch of fingerprint data is negative and then softmax is taken, and then the cross entropy is taken with the one-hot ground truth, and finally the different configurations are averaged to obtain the contrast loss function in the second scenario, which is the second adversarial loss.
[0133] Therefore, the CGAN model is trained according to the second fingerprint data and the second location point set through the pre-constructed loss function and the above-mentioned training process, so that the CGAN can learn the data distribution of the second fingerprint data, so that it can generate fingerprint data according to the third location point set in the first location point set except the second location point set, and the new fingerprint library can be obtained by combining the generated 90% of the fingerprint data with 10% of the real fingerprint data and the corresponding location points. The positioning model is trained with the new fingerprint library, and indoor positioning can be performed according to the fingerprint data collected in real time in subsequent applications. In this way, through the embodiments of this specification, there is no need to re-collect the fingerprint data of all location points, only 10% of the new fingerprint data of the original fingerprint data needs to be collected, and then the trained CGAN model is used to generate 90% of the data to update the fingerprint library, which reduces the workload of data collection and improves the efficiency of fingerprint library update.
[0134] In order to further illustrate the effectiveness of the indoor positioning fingerprint library updating method in this specification, the embodiment of this specification performs a performance evaluation on the proposed method on the MTLocData dataset. The MTLocData dataset contains one year of Wi-Fi fingerprint data collected at 189 locations in office buildings and 399 locations in shopping malls. Among them, the data collection of office buildings was interrupted due to holidays and is divided into two periods: P1 (September to December 2020, daily collection) and P2 (April to December 2021, weekly collection). Shopping center data is collected monthly, and a total of 13 months are divided into 7 data domains. The experiments in this specification select three scenarios, Office P1, Office P2 and Mall, for a series of experiments. Before the experiment, the original data set needs to be preprocessed. 2000 RSS data samples are randomly selected and divided into 5 categories, with 400 samples in each category. The data used for training and testing each accounts for 50%. When measuring the quality of generated data, the embodiments of this specification use two indicators, KL divergence and EMD (EarthMover's Distance), to evaluate the high fidelity and practicality of the data synthesized by the method proposed in the embodiments of this specification. KL divergence is an indicator for measuring the difference between two probability distributions. It helps to understand the degree of closeness of synthetic data to real data at the probability level; EMD takes into account the "transportation cost" between data distributions and provides a geometric perspective for measuring distribution differences. In addition, in order to verify the usability of generated fingerprint data in indoor positioning, accuracy, log-likelihood loss and positioning error are used as evaluation indicators to reflect the performance of the positioning system.
[0135] Specifically, in order to verify the effectiveness of the proposed method, an experimental platform was established, using Ubuntu 18.04 as the operating system and TensorFlow as the deep learning framework. The specific configuration of the experimental environment is shown in Table 1.
[0136] Table 1
[0137]
[0138] During the training process, the hyperparameters shown in Table 2 are selected for training.
[0139] Table 2
[0140]
[0141] Table 3 provides the comparison results of the quality of pseudo fingerprint data generated by PixelCNN, autoencoder (AE) and the method proposed in this specification on the Office P1 dataset in the MTLocData dataset. The experimental results are based on two evaluation indicators: KL divergence and EMD. Ideally, the smaller the value of the indicator, the closer the generated data is to the real data distribution and the higher the quality.
[0142] Table 3
[0143]
[0144] As can be seen from Table 3, the method proposed in this specification shows the best performance in both KL divergence and EMD evaluation indicators. Specifically, the KL divergence of the method proposed in this specification is 0.125, and the EMD is 0.903. The values of these two indicators are significantly lower than the other two, indicating that the data generated by the method proposed in this specification is closer to the real data in probability distribution, and is more consistent in the geometric characteristics of the distribution. Since PixelCNN has an infinite KL divergence, this may mean that there is a significant inconsistency between the data generated by PixelCNN and the real data distribution. Overall, the method proposed in this specification is more effective in simulating the overall distribution characteristics of real data. This is especially important in data enhancement applications for indoor positioning systems, because the performance of the positioning system depends to a large extent on the distribution characteristics of the data.
[0145] Table 4 provides the results of the impact of synthetic data on the performance of the positioning model. The experiment uses a preprocessed 2000 RSS sample data set and randomly selects 10% of the training data in each category to generate synthetic data. The experimental results are presented in the form of accuracy and log-likelihood loss. The accuracy is defined as the ratio of the number of correctly predicted categories to the total number of test data points. The higher the better, and the lower the log-likelihood loss, the better.
[0146] Table 4
[0147]
[0148] It can be found from Table 4 that in the Officep1 scenario, when only 10% of the real data is used, the accuracy is 89.36%. When synthetic data is added, the accuracy is increased to 99.61%, and the log-likelihood loss is reduced from 0.45 to 0.02, which shows that the performance of the model has been significantly improved. Synthetic data plays an important role in this scenario. In the Officep2 scenario, the initial accuracy is 86.20%. After adding synthetic data, the accuracy is increased to 98.87%, and the log-likelihood loss is reduced from 0.59 to 0.04. This also shows the positive impact of synthetic data on improving model performance. For the Mall scenario, the accuracy is low when only 10% of the real data is used, which is 35.43%, which is due to the high classification difficulty of this scenario. However, when synthetic data is added, the accuracy is increased to 46.79%. Although the increase is not as significant as that of the Office scenario, the accuracy is still increased by 11.36%, which shows that synthetic data has improved the prediction ability of the model to a certain extent.
[0149] In order to further prove the effectiveness of the proposed method, this manual uses the KNN model to conduct positioning error experiments. The experimental results are shown in Table 5 and Figure 6(a)-Figure 6(c) shown.
[0150] Table 5
[0151]
[0152]
[0153] From Table 5 and Figure 6(a)-Figure 6(c) It can be seen that the fingerprint library synthesized using the method proposed in this specification can significantly improve the accuracy of fingerprint-based positioning, and the positioning error distribution of the synthetic fingerprint library is closer to the real data fingerprint library. This shows that when training data is scarce, synthetic data can effectively improve the positioning accuracy of the model.
[0154] Based on the above-mentioned method for updating an indoor positioning fingerprint library, an embodiment of this specification also provides a corresponding device for updating an indoor positioning fingerprint library. The device may include a system (including a distributed system), software (application), module, component, server, client, etc. using the method described in the embodiment of this specification and a device combined with necessary implementation hardware. Based on the same innovative concept, the device in one or more embodiments provided in the embodiment of this specification is as described in the following embodiments. Since the implementation scheme and method of the device to solve the problem are similar, the implementation of the specific device in the embodiment of this specification can refer to the implementation of the aforementioned method, and the repetitions will not be repeated. As used below, the term "unit" or "module" can be a combination of software and / or hardware that implements predetermined functions. Although the device described in the following embodiments is preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceived.
[0155] Specifically, Figure 7 This is a schematic diagram of the module structure of an embodiment of an indoor positioning fingerprint library updating device provided in the embodiment of this specification, referring to Figure 7 As shown, an indoor positioning fingerprint library updating device provided in an embodiment of this specification includes:
[0156] A first acquisition module 701 is used to acquire first fingerprint data collected by a first collection device at a first location point set;
[0157] A sampling module 702 is used to obtain a second set of position points by sampling from the first set of position points according to a preset sampling method;
[0158] The second acquisition module 703 is used to acquire second fingerprint data collected by a second collection device at a second set of position points;
[0159] A training module 704 is used to train a pre-trained first fingerprint data generation model using the second fingerprint data and the second position point set as training samples to obtain a trained second fingerprint data generation model, wherein the first fingerprint data generation model is a conditional generative adversarial network model;
[0160] A generating module 705, configured to input a third set of position points in the first set of position points except the second set of position points into the second fingerprint data generating model to generate third fingerprint data;
[0161] The updating module 706 is configured to combine the second fingerprint data and the third fingerprint data and the corresponding position points to obtain a new fingerprint library.
[0162] The beneficial effects obtained by the device provided in the embodiments of this specification are consistent with the beneficial effects obtained by the above method and will not be repeated here.
[0163] Reference Figure 8 As shown, based on the above-mentioned indoor positioning fingerprint library updating method, a computer device 802 is also provided in an embodiment of this specification, wherein the above-mentioned method runs on the computer device 802. The computer device 802 may include one or more processors 804, such as one or more central processing units (CPUs), and each processing unit may implement one or more hardware threads. The computer device 802 may also include any memory 806, which is used to store any kind of information such as code, settings, data, etc. Non-limitingly, for example, the memory 806 may include any one or more combinations of the following: any type of RAM, any type of ROM, flash memory device, hard disk, optical disk, etc. More generally, any memory can use any technology to store information. Further, any memory can provide volatile or non-volatile retention of information. Further, any memory can represent a fixed or removable component of the computer device 802. In one case, when the processor 804 executes an associated instruction stored in any memory or a combination of memories, the computer device 802 can perform any operation of the associated instruction. The computer device 802 also includes one or more drive mechanisms 808 for interacting with any storage, such as a hard disk drive mechanism, an optical disk drive mechanism, etc.
[0164] The computer device 802 may also include an input / output module 810 (I / O) for receiving various inputs (via input devices 812) and for providing various outputs (via output devices 814). A specific output mechanism may include a presentation device 816 and an associated graphical user interface (GUI) 818. In other embodiments, the input / output module 810 (I / O), the input device 812, and the output device 814 may not be included, and the computer device 802 may be used as a computer device in a network. The computer device 802 may also include one or more network interfaces 820 for exchanging data with other devices via one or more communication links 822. One or more communication buses 824 couple the components described above together.
[0165] The communication link 822 may be implemented in any manner, for example, through a local area network, a wide area network (e.g., the Internet), a point-to-point connection, etc., or any combination thereof. The communication link 822 may include any combination of hardwired links, wireless links, routers, gateway functions, name servers, etc. governed by any protocol or combination of protocols.
[0166] Corresponding to Figures 1 to 5 In addition to the method shown, an embodiment of the specification also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the above method are executed.
[0167] The embodiment of the present specification also provides a computer-readable instruction, wherein when the processor executes the instruction, the program therein causes the processor to execute the following Figures 1 to 5 The method shown.
[0168] The embodiments of the present specification also provide a computer program product, including at least one instruction or at least one program, wherein the at least one instruction or the at least one program is loaded and executed by a processor to implement the following Figures 1 to 5 The method shown.
[0169] It should be understood that in the various embodiments of this specification, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this specification.
[0170] It should also be understood that in the embodiments of this specification, the term "and / or" is only a description of the association relationship of the associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this specification generally indicates that the associated objects before and after are in an "or" relationship.
[0171] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed in this specification can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this specification.
[0172] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0173] In the several embodiments provided in this specification, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, or it can be an electrical, mechanical or other form of connection.
[0174] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the embodiments of this specification.
[0175] In addition, each functional unit in each embodiment of this specification may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0176] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this specification is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of this specification. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.
[0177] Specific embodiments are used in this specification to illustrate the principles and implementation methods of this specification. The description of the above embodiments is only used to help understand the methods and core ideas of this specification. At the same time, for those skilled in the art, according to the ideas of this specification, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on this specification.
Claims
1. A method for updating an indoor positioning fingerprint database, characterized in that: The method comprises: Acquire first fingerprint data collected by a first collection device at a first set of position points; Sampling the first set of position points to obtain a second set of position points according to a preset sampling method; Acquire second fingerprint data collected by a second collection device at a second set of position points; Using the second fingerprint data and the second position point set as training samples to train a pre-trained first fingerprint data generation model to obtain a trained second fingerprint data generation model, wherein the first fingerprint data generation model is a conditional generative adversarial network model; Inputting a third set of position points in the first set of position points except the second set of position points into the second fingerprint data generation model to generate third fingerprint data; The second fingerprint data and the third fingerprint data and the corresponding position points are combined to obtain a new fingerprint library.
2. The method according to claim 1, characterized in that The conditional generative adversarial network model includes a generator and a discriminator, wherein the generator is used to generate pseudo fingerprint data according to a set of position points and a random noise vector and output the pseudo fingerprint data to the discriminator, and includes an embedding layer, a convolution layer, a pooling layer, a residual layer, a self-attention module and a decoder, wherein a spectral normalization layer is added after the convolution layer, the pooling layer and the residual layer, and the spectral normalization layer is used to limit the spectral norm of the weight matrix of each network layer in the generator within a preset condition; The generating of pseudo fingerprint data according to the position point set and the random noise vector comprises: Inputting the position point set into the embedding layer to obtain a position point vector set; The position point vector set and the random noise vector are fused and input into the convolution layer for convolution processing to obtain a first feature vector; Inputting the feature vector into the pooling layer for downsampling to obtain a second feature vector; Inputting the second eigenvector into the residual layer for residual processing to obtain a third eigenvector; Inputting the third eigenvector into the self-attention module to perform attention weighted processing on the third eigenvector to obtain a fourth eigenvector; The fourth feature vector is input into the decoder for upsampling and deconvolution processing to generate pseudo fingerprint data.
3. The method according to claim 2, characterized in that The discriminator is used to judge the probability that the pseudo fingerprint data is real fingerprint data and the probability of judging the true and false of mixed batch fingerprint data, and includes a convolution layer, a batch normalization layer, a reference attention module and a fully connected layer. A spectral normalization layer is added after the convolution layer, the batch normalization layer and the fully connected layer. The spectral normalization layer is used to limit the spectral norm of the weight matrix of each network layer in the discriminator within a preset condition; The determining the probability that the pseudo fingerprint data is real fingerprint data includes: Inputting the pseudo fingerprint data into the convolution layer for feature extraction to obtain a fifth feature vector; Inputting the fifth eigenvector into the batch normalization layer for normalization processing to obtain a sixth eigenvector; The sixth feature vector is input into the reference attention module, and the reference attention module performs attention weighting on the sixth feature vector by calculating the similarity between the sixth feature vector and the feature vector of the real fingerprint data to obtain a seventh feature vector; The seventh eigenvector is converted into a one-dimensional vector by using the fully connected layer and a fully connected operation is performed to extract a global eigenvector, and a probability value is output through a post-neuron according to the global eigenvector.
4. The method according to claim 3, characterized in that The determination of the true or false probability of mixed batch fingerprint data includes: Mixing a real fingerprint data into a batch of fake fingerprint data to determine the probability of each fingerprint data being true or false; and A fake fingerprint data is mixed into a batch of real fingerprint data to determine the true or false probability of each fingerprint data.
5. The method according to claim 2, characterized in that: The training process of the second fingerprint data generation model includes: Initialize the weight parameters of the generator and the discriminator using Gaussian distribution to obtain the weight matrices of the generator and the discriminator; Inputting the second position point set and the random noise vector into the generator, and outputting pseudo fingerprint data; Input the pseudo fingerprint data, the second fingerprint data and the second position point set as training samples into the discriminator to obtain the probability that each pseudo fingerprint data is the real fingerprint data and the true and false probability of the mixed batch fingerprint data; The generator and discriminator losses are calculated using a pre-constructed loss function according to the probability that each pseudo fingerprint data is real fingerprint data and the true and false probabilities of the mixed batch fingerprint data; Update the weight matrices of the generator and the discriminator according to the generator and the discriminator losses, and perform spectral normalization constraints on the weight matrices; Repeat the above steps until the preset stop condition is met.
6. The method according to claim 5, characterized in that The pre-built loss function is: in, Among them, G represents the generator, D represents the discriminator, It means maximizing the loss function when updating D and minimizing the loss function when updating G. cond (G,D) represents the conditional loss, represents the first adversarial loss, represents the second adversarial loss, λ1 represents the weight of the first adversarial loss, λ2 represents the weight of the second adversarial loss, x is the real fingerprint data, E represents the expectation, which is used to calculate the average value of a function under a specific probability distribution, D(x|y) represents the probability of predicting x as the real fingerprint data under a given position point set y, G(z|y) represents the pseudo fingerprint data generated by the generator under a given position point set y, D(G(z|y)) represents the probability of predicting the pseudo fingerprint data as the real fingerprint data, E x~p ( x) [logD(x|y)] represents the expected value of the logarithmic likelihood that the discriminator correctly predicts x as the real fingerprint data when given the location point set y under the probability distribution p(x) of the real fingerprint data, E z~p(z) [log(1-D(G(z|y)))] represents the expected value of the logarithmic likelihood that the discriminator will incorrectly predict the pseudo fingerprint data G(z|y) generated by the generator as the real fingerprint data when given the position point set y under the probability distribution p(z) of the generator input noise vector z.
7. An indoor positioning fingerprint database updating device, characterized in that: The device comprises: A first acquisition module, used to acquire first fingerprint data collected by a first acquisition device at a first set of position points; A sampling module, configured to obtain a second set of position points by sampling from the first set of position points according to a preset sampling method; A second acquisition module, used to acquire second fingerprint data collected by a second acquisition device at a second location point set; A training module, configured to train a pre-trained first fingerprint data generation model using the second fingerprint data and the second position point set as training samples to obtain a trained second fingerprint data generation model, wherein the first fingerprint data generation model is a conditional generative adversarial network model; a generating module, configured to input a third set of position points in the first set of position points except the second set of position points into the second fingerprint data generating model to generate third fingerprint data; The updating module is used to combine the second fingerprint data and the third fingerprint data and the corresponding position points to obtain a new fingerprint library.
8. A computer device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 6 is implemented.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
10. A computer program product, characterized in that The method comprises at least one instruction or at least one program, wherein the at least one instruction or the at least one program is loaded and executed by a processor to implement the method according to any one of claims 1 to 6.