CN113055814A - Indoor positioning method for improving WKNN - Google Patents
Indoor positioning method for improving WKNN Download PDFInfo
- Publication number
- CN113055814A CN113055814A CN202110160749.2A CN202110160749A CN113055814A CN 113055814 A CN113055814 A CN 113055814A CN 202110160749 A CN202110160749 A CN 202110160749A CN 113055814 A CN113055814 A CN 113055814A
- Authority
- CN
- China
- Prior art keywords
- rss
- reference point
- point
- positioning
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/33—Services specially adapted for particular environments, situations or purposes for indoor environments, e.g. buildings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
- H04W64/006—Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Collating Specific Patterns (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
The invention relates to an improved WKNN indoor positioning method, which comprises the steps of performing fencing in a positioning area, establishing a reference point, selecting an AP set suitable for subsequent positioning through RSS of APs collected from the reference point, and storing related data into a fingerprint database. Recording RSS of an AP (access point) of a positioning point by using a portable device, judging a positioning area according to the same Mac address, selecting a reference point similar to the change trend of the AP value of the positioning point according to the quantity difference of peak-to-valley values between the positioning point and the reference point, selecting K reference points with the minimum Euclidean distance by a KNN (K-nearest neighbor) algorithm, giving weights to the reference points through normalization and wasserstein distance, judging whether the reference points are similar or not, giving weights to the reference points, and taking weighted average as a final result.
Description
Technical Field
The invention belongs to the field of indoor positioning, and particularly relates to an indoor positioning method for improving WKNN.
Background
At present, the location-based service is divided into indoor location and outdoor location, in the field of outdoor location, the GPS occupies a dominant position, and with the advent of Russian GLONNASS satellite navigation system and Chinese Beidou satellite navigation system, the related technology of outdoor location is mature.
In the field of indoor positioning, the signal sources can be classified into positioning technologies such as infrared rays, visible light, ultrasonic waves, ultra wide bands, bluetooth, Zigbee and WIFI. Wherein the hardware cost of infrared, ultrasonic and ultra-wideband technologies is high; the visible light and Bluetooth technologies are greatly influenced by environmental factors and are not easy to expand; the Zigbee technology requires a large amount of batteries for power supply, and the battery handling is not easy for environmental protection.
At present, two main types of methods for solving the problem of device heterogeneity in indoor positioning based on WIFI fingerprints are as follows: a calibration method and a calibration-free method. The calibration method needs to learn a relation model of reference device RSS value and user mobile terminal RSS value during calibration. The method has high time delay and cannot meet the real-time application of large-scale access of equipment. The calibration-free method is used for uniformly processing the original fingerprints to obtain new fingerprints, and although the defects of low automation degree and large time delay of the early calibration method are overcome, the corresponding fingerprint characteristics are reduced, and the precision is reduced.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides an indoor positioning method for improving the influence of the isomerism of WKNN reduction equipment on positioning accuracy, and aims to solve the problem that the influence of equipment for acquiring data in an off-line stage and different equipment used in the positioning stage on the positioning accuracy is reduced. The method comprises the steps of screening out unstable AP sets providing similar information through a new AP selection method, selecting an AP set suitable for positioning, reducing the burden of a database for subsequent positioning, selecting reference points to be positioned with the same change trend as the AP values of the positioning points, calculating Wasserstein distances between the positioning points and the reference points through K reference points selected in a KNN algorithm, and generating weights for the WKNN positioning algorithm.
In order to achieve the above object, the present invention provides an indoor positioning method for improving WKNN, including the following steps:
1) dividing an indoor scene into k positioning areas and giving labels 1, 2 and 3 … … k;
2) performing palisade in each positioning area, establishing reference point, and recording position information of the reference point, such as ith reference point coordinate pi=(xi,yi) Acquiring the RSS of the current reference point every delta T by the mobile equipment, and recording the RSS of the ith reference point as: si={Si,1,Si,2,...,Si,j,...,Si,zZ is the number of wireless access points AP, si,jDenotes the ith referenceThe RSS of the jth wireless access point AP received by the test point; si,j={Si,j,1,Si,j,2,...,Si,j,x,...,Si,j,tT represents the acquisition times;
3) selecting a wireless access point AP subset for positioning through a wireless access point AP selection strategy;
4) storing each reference point information as a fingerprint in a fingerprint database;
5) a user collects RSS of a positioning point through a mobile device carried by the user;
6) calculating the score of each positioning area by using the AP subset and the RSS value, judging whether the highest score is a single area, finding out the RSS value of the AP subset, and determining the positioning area to which the positioning point belongs;
7) finding out a reference point similar to the positioning point according to the quantity difference of the peak-to-valley values between the positioning point and the reference point;
8) and (5) finding k fingerprints closest to the Euclidean distance of the RSS value acquired in the step (5) in a fingerprint database, judging whether the fingerprints are similar reference points or not by utilizing the normalization and wasserstein distances, and weighting the positions corresponding to the k fingerprints and the distance weight to obtain the current position of the user.
Further, in step 3), the AP selection policy includes the following steps:
3.1) carrying out denoising treatment on the collected RSS data: for each si,jThe gaussian filtering is carried out and the number of the gaussian filters, t is the number of acquisitions, and the measurement f (S)i,j) Has a density function ofF (S) is more than or equal to 0.6i,j)≤1,0.15σ1+μ≤f(Si,j)≤0.39σ1+ mu, S in this rangei,j,gTaking out the value and averaging to obtain the current RSS value, i.e. the jth AP information is Si={RSSj,1,RSSj,2,...,RSSj,nN is the number of reference points;
3.2) complementing missing data: the data missing from AP at a certain reference point is RSSj,x=RSSj,min-(RSSj,min2-RSSj,min),RSSj,minRepresents the minimum value of the AP among all reference points, RSSj,min2A second smallest value among all reference points representing the AP;
3.3) set a set CqAnd make an orderCalculating the frequency of occurrence of each AP signal and setting a threshold σ2If, ifDiscarding the current AP; otherwise enter set CqWherein g is the number of reference points, NjIndicating that when the reference point has RSS data, the data is larger than>-80db, then 1, otherwise 0;
3.5) finding AP respectivelyi,APjClosest point F, AP to sourcei,APjPoints F of (a) are denoted as iF and jF, respectively;
3.6) setting the threshold σ4,σ5,E.g. d1<σ4And d is2<σ5Then AP will be startedi,APjIs put into CrPerforming the following steps;
3.7) set CrIf an AP has multiple tags, resetting the AP and the AP having the same tag as the AP to have the same tag;
3.8) for CrThe same tags in (a) are screened according to the reference point scoring capability T,for the same tag, the AP with the largest score is kept and put into the set CqWhile the others are discarded; note APiScore capability at the ith reference point of
RSSiIs the RSS value at the ith reference pointmaxIs the maximum value of the RSS among all reference points of the APminIs the minimum value of RSS among all reference points of the AP, di,iFIs the distance from the ith reference point to point F; AP (Access Point)iTotal scoring ability
3.9) set of pairs CqAll APs in the system calculate the total score capability T of the reference pointsallAnd arranged in descending order;
3.10) determining the number of the APs participating in positioning according to the size of the positioning area, and sequentially selecting a wireless access point AP subset for positioning from the AP set.
Further, the step 3.5) includes the following steps:
3.5.1) separately determining APi,APjWhether the reference points q, w, e for which the first three maximum RSS values are taken are less than the threshold value sigma3,dq,wIs the distance between the positions of reference point q and reference point w, dq,eIs the position distance of the reference point q and the reference point e, dw,eIs the position distance of reference point w and reference point e;
3.5.2) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3If there are only two satiations and one is not, then the source is close to a reference point common to both satiations, such as: dq,w<σ3And d isq,e<σ3But dw,e>=σ3Coordinate of q (x)q,yq) Is F;
3.5.3) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3Only 1 is satisfied, two are not, e.g. dq,w<σ3But dq,e>σ3,dw,e>=σ3If the source is between the coordinates q and w, let F be
3.5.4) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3If none of the three are satisfied, finding another point which can meet the requirement of 3.5.2) or 3.5.3) according to the sequence of RSS size values, and recording the left side of the point as F;
3.5.5) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3And if all three are satisfied, the reference point coordinate with the maximum RSS value is F.
Further, the step 6) includes the steps of:
6.1) marking the maximum value and the minimum value of the AP selected by the positioning area in each positioning area respectively, and marking the APj,maxFor the maximum value of the jth AP, note APj,minIs the minimum value of the jth AP;
6.2) the RSS information of the collected locating points is selected according to the MAC address, the RSS of the AP with the same MAC address is marked as xtp=(RSStp,1,RSStp,2,...,RSStp,j,RSStp,m) M is the number of the APs selected in the step 3) for positioning;
6.3) set score 0 if APj,min≤RSStp,j≤APj,maxIf so, the score is score +1 until all the m APs are aligned, and a total score is calculated;
6.4) circularly comparing all the positioning areas according to the method, and calculating the score of each positioning area;
6.5) selecting the location area with the highest score and recording x in 6.2)tpA value;
6.6) if the same division situation exists, observing whether the same division positioning areas are adjacent, if so, recording the same division positioning areas and the RSS values selected in the 6.2), and if not, jumping back to the step 6 for re-acquisition.
Further, the step 7) includes the steps of:
7.2) make possible reference point decisions, let j equal 1, 2, …, m, note that all meet RSStp,j-1≤RSStp,j≤RSStp,j+1Or RSStp,j-1≤RSStp,j≤RSStp,j+1j and the number of satisfied j is recorded as g1,
7.3) comparing all satisfied j values in step 7.2) with the ith reference point, RSSi,j-1≤RSSi,j≤RSSi,j+1Or RSSi,j-1≥RSSi,j≥RSSi,j+1Let g20, for each value of j satisfied, g2=g2+1, if not, but now | RSSSi,j-1-RSSi,j< 5 or | RSSi,j+1-RSSi,jI < 5, at which time g2=g2+1;
7.4) let g1-g2 ═ σ6If, ifPut the ith reference point label into set CzM is the number of APs selected for positioning.
Further, the step 8) includes the steps of:
when the highest score in step 6) is a single region:
8.1) setting RSS of AP with the same MAC address as RSS of anchor point to xtpGenerating matrix x from reference point data in fingerprint databaserp=[x1,x2,...,xi,...,xg]TIn which x isiIs the firsti reference points, xi=(RSSi,1,RSSi,2,...,RSSi,j,...,RSSi,m),RSSi,jRepresenting the RSS value of the jth AP at the ith reference point, m being the number of selected APs used for positioning, and the positioning point data generating a row vector xtp=(RSStp,1,RSStp,2,...,RSStp,j,RSStp,m);
8.3) calculating x separatelytpAnd Euclidean distance, x, of each reference point in the fingerprint databasetpAnd the Euclidean distance of the ith reference point in the fingerprint databaseSelecting the minimum K reference points, recording the reference point labels, and storing the data of the K reference points in CpIn, with CzComparing the number of the same reference points with the reference point labels, and marking as U;
8.4) for CpNormalizing the data in each reference point and positioning point to obtain a new value RSSNEWi,j,RSSNEWtp,j;
Wherein the RSSi,jIs the RSS value of the jth AP at the ith reference pointi,minFor the minimum RSS value at the ith reference pointi,maxThe maximum RSS value at the ith reference point; RSS (really simple syndication) data base)tp,jFor the RSS value of the jth AP at the anchor point, RSStp,minFor the minimum RSS value at the anchor point, RSStp,maxThe maximum RSS value at the anchor point;
8.5) calculating the location points and CpThe Wasserstein distance of the ith reference point in is
8.6) setting the cycle times K times, and calculating each Wasserstein distance between the positioning point and each reference point;
8.8) locating positionWherein the reference number when the reference point is being calculated is CzIn the middle, V is takenOtherwise V getsZiWeights generated for the ith Wasserstein distance, (x)i,yi) Is the ith reference point coordinate;
when the highest score in step 6) is not a single region
8.1) record x for each regiontpThen xtp=(xtp1,xtp2,...,xtpc,...,xtpL) L is the number of the positioning areas with the highest score being the same;
8.3) calculating x separatelytpAnd Euclidean distance, x, of each reference point in the fingerprint databasetpAnd the Euclidean distance of the ith reference point in the fingerprint databaseSelecting the minimum K reference points, recording the reference point labels, and storing the data of the K reference points in CpcIn, with CzComparing the number of the same reference points with the reference point labels, and marking as U;
8.4) for CpcNormalizing the data in each reference point and positioning point to obtain a new value RSSNEWi,j,RSSNEWtp,j;
Wherein the RSSi,jIs the RSS value of the jth AP at the ith reference pointi,minFor the minimum RSS value at the ith reference pointi,maxThe maximum RSS value at the ith reference point; RSS (really simple syndication) data base)tp,jFor the RSS value of the jth AP at the anchor point, RSStp,minFor the minimum RSS value at the anchor point, RSStp,maxThe maximum RSS value at the anchor point;
8.5) calculating the location points and CpcThe Wasserstein distance of the ith reference point in is
8.6) setting the cycle times K times, and calculating each Wasserstein distance between the positioning point and each reference point;
8.8) locating positionWherein the reference number when the reference point is being calculated is CzIn the middle, V is takenOtherwise V getsZiWeights generated for the ith Wasserstein distance, (x)i,yi) Is the ith reference point coordinate;
Compared with the prior art, the method has the advantages that the change trend of the AP signal selected from the positioning point and the reference point is compared, the reference point which is possibly matched is selected, and then the weight is generated through the Wasserstein distance formed by the absolute value of the reference point, so that the problem of reduction of useful information in the relative value is solved. Secondly, aiming at the existing strategy of AP selection, the redundant information removal is too complicated, and the invention provides a simpler and more convenient method. The method has the advantages that the possible reference points to be matched are determined by comparing the AP value in the positioning points with the trend of the change of the AP value in the reference points, and the weight generated according to the Wasserstein distance is used in the WKNN positioning algorithm, so that the problem of fingerprint characteristic reduction when the original fingerprint is uniformly processed to obtain a new fingerprint is solved to a certain extent, and meanwhile, the complexity of calculation of all data points and the influence of irrelevant reference points on positioning are reduced.
Drawings
Fig. 1 is a flow chart of an indoor positioning method for improving WKNN according to the present invention.
Detailed Description
The invention will be further described with reference to the accompanying drawings and specific embodiments, as shown in fig. 1, comprising the steps of:
1) dividing an indoor scene into k positioning areas and giving labels 1, 2 and 3 … … k;
2) performing palisade in each positioning area, establishing reference point, and recording position information of the reference point, such as ith reference point coordinate pi=(xi,yi) Acquiring the RSS of the current reference point every delta T by the mobile equipment, and recording the RSS of the ith reference point as: si={Si,1,Si,2,...,Si,j,...,Si,zZ is the number of wireless access points AP, si,jIndicating the ith reference pointThe received RSS of the jth wireless access point AP; si,j={Si,j,1,Si,j,2,...,Si,j,x,...,Si,j,tT represents the acquisition times;
3) selecting a wireless access point AP subset for positioning through a wireless access point AP selection strategy;
4) storing each reference point information as a fingerprint in a fingerprint database;
5) a user collects RSS of a positioning point through a mobile device carried by the user;
6) calculating the score of each positioning area by using the AP subset and the RSS value, judging whether the highest score is a single area, finding out the RSS value of the AP subset, and determining the positioning area to which the positioning point belongs;
7) finding out a reference point similar to the positioning point according to the quantity difference of the peak-to-valley values between the positioning point and the reference point;
8) and (5) finding k fingerprints closest to the Euclidean distance of the RSS value acquired in the step (5) in a fingerprint database, judging whether the fingerprints are similar reference points or not by utilizing the normalization and wasserstein distances, and weighting the positions corresponding to the k fingerprints and the distance weight to obtain the current position of the user.
As a preferred embodiment of the present invention, in step 3), the AP selection policy includes the following steps:
3.1) carrying out denoising treatment on the collected RSS data: for each si,jThe gaussian filtering is carried out and the number of the gaussian filters, t is the number of acquisitions, and the measurement f (S)i,j) Has a density function ofF (S) is more than or equal to 0.6i,j)≤1,0.15σ1+μ≤f(Si,j)≤0.39σ1+ mu, S in this rangei,j,gTaking out the value and averaging it to obtain the current RSS value, i.e. the jth AP informationIs Si={RSSj,1,RSSj,2,...,RSSj,nN is the number of reference points;
3.2) complementing missing data: the data missing from AP at a certain reference point is RSSj,x=RSSj,min-(RSSj,min2-RSSj,min),RSSj,minRepresents the minimum value of the AP among all reference points, RSSj,min2A second smallest value among all reference points representing the AP;
3.3) set a set CqAnd make an orderCalculating the frequency of occurrence of each AP signal and setting a threshold σ2If, ifDiscarding the current AP; otherwise enter set CqWherein g is the number of reference points, NjIndicating that when the reference point has RSS data, the data is larger than>-80db, then 1, otherwise 0;
3.5) finding AP respectivelyi,APjClosest point F, AP to sourcei,APjPoints F of (a) are denoted as iF and jF, respectively;
3.6) setting the threshold σ4,σ5As a preferred embodiment of the present invention, the number of reference points in a region is generally 70-120, σ4The value range is between 20 and 30, sigma5The value range is between 4.5 and 7, e.g. d1<σ4And d is2<σ5Then AP will be startedi,APjIs put intoCrPerforming the following steps;
3.7) set CrIf an AP has multiple tags, resetting the AP and the AP having the same tag as the AP to have the same tag;
3.8) for CrThe same label is screened according to the reference point scoring capability T, and for the same label, the AP with the maximum score is kept and put into a set CqWhile the others are discarded; note APiScore capability at the ith reference point of
RSSiIs the RSS value at the ith reference pointmaxIs the maximum value of the RSS among all reference points of the APminIs the minimum value of RSS among all reference points of the AP, di,iFIs the distance from the ith reference point to point F; AP (Access Point)iTotal scoring ability
3.9) set of pairs CqAll APs in the system calculate the total score capability T of the reference pointsallAnd arranged in descending order;
3.10) determining the number of the APs participating in positioning according to the size of the positioning area, and sequentially selecting a wireless access point AP subset for positioning from the AP set.
As a preferred embodiment of the present invention, in step 3.5), it is established that the F point of the signal is the closest position to the AP signal emitting source in the area, and the following two functions are performed: 1. in step 3.5), it is determined whether the two AP signals provide redundant information, and if the two F points are too close, the possibility of providing redundant information is high. 2. For 3.8) the importance of the reference points in their scoring ability.
The step 3.5) comprises the following steps:
3.5.1) separately determining APi,APjWhether the reference points q, w, e for which the first three maximum RSS values are taken are less than the threshold value sigma3As a preferred embodiment of the invention, σ3The value range is 4.5Between the number of the particles of the group-7, dq,wis the distance between the positions of reference point q and reference point w, dq,eIs the position distance of the reference point q and the reference point e, dw,eIs the position distance of reference point w and reference point e;
3.5.2) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3If there are only two satiations and one is not, then the source is close to a reference point common to both satiations, such as: dq,w<σ3And d isq,e<σ3But dw,e>=σ3Coordinate of q (x)q,yq) Is F;
3.5.3) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3Only 1 is satisfied, two are not, e.g. dq,w<σ3But dq,e>σ3,dw,e>=σ3If the source is between the coordinates q and w, let F be
3.5.4) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3If none of the three are satisfied, finding another point which can meet the requirement of 3.5.2) or 3.5.3) according to the sequence of RSS size values, and recording the left side of the point as F;
3.5.5) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3And if all three are satisfied, the reference point coordinate with the maximum RSS value is F.
As a preferred embodiment of the present invention, the step 6) includes the steps of:
6.1) marking the location area in each location area separatelyThe maximum value and the minimum value of the AP in the positioning area are recorded as the APj,maxFor the maximum value of the jth AP, note APj,minIs the minimum value of the jth AP;
6.2) the RSS information of the collected locating points is selected according to the MAC address, the RSS of the AP with the same MAC address is marked as xtp=(RSStp,1,RSStp,2,...,RSStp,j,RSStp,m) M is the number of the APs selected in the step 3) for positioning;
6.3) set score 0 if APj,min≤RSStp,j≤APj,maxIf so, the score is score +1 until all the m APs are aligned, and a total score is calculated;
6.4) circularly comparing all the positioning areas according to the method, and calculating the score of each positioning area;
6.5) selecting the location area with the highest score and recording x in 6.2)tpA value;
6.6) if the same division situation exists, observing whether the same division positioning areas are adjacent, if so, recording the same division positioning areas and the RSS values selected in the 6.2), and if not, jumping back to the step 6 for re-acquisition.
As a preferred embodiment of the present invention, step 7) comprises the steps of:
7.2) make possible reference point decisions, let j equal 1, 2, …, m, note that all meet RSStp,j-1≤RSStp,j≤RSStp,j+1Or RSStp,j-1≤RSStp,j≤RSStp,j+1j and the number of satisfied j is recorded as g1,
7.3) comparing all satisfied j values in step 7.2) with the ith reference point, RSSi,j-1≤RSSi,j≤RSSi,j+1Or RSSi,j-1≥RSSi,j≥RSSi,j+1Let g20, for each value of j satisfied, g2=g2+1, if not, but now | RSSSi,j-1-RSSi,j< 5 or | RSSi,j+1-RSSi,jI < 5, at which time g2=g2+1;
7.4) let g1-g2 ═ σ6If, ifPut the ith reference point label into set CzM is the number of APs selected for positioning.
As a preferred embodiment of the present invention, step 8) comprises the steps of:
when the highest score in step 6) is a single region:
8.1) setting RSS of AP with the same MAC address as RSS of anchor point to xtpGenerating matrix x from reference point data in fingerprint databaserp=[x1,x2,...,xi,...,xg]TIn which x isiIs the ith reference point, xi=(RSSi,1,RSSi,2,...,RSSi,j,...,RSSi,m),RSSi,jRepresenting the RSS value of the jth AP at the ith reference point, m being the number of selected APs used for positioning, and the positioning point data generating a row vector xtp=(RSStp,1,RSStp,2,...,RSStp,j,RSStp,m);
8.3) calculating x separatelytpAnd Euclidean distance, x, of each reference point in the fingerprint databasetpAnd the Euclidean distance of the ith reference point in the fingerprint databaseSelecting the minimum K reference points, recording the reference point labels, and storing the data of the K reference points in CpIn, with CzComparing the number of the same reference points with the reference point labels, and marking as U;
8.4) for CpNormalizing the data in each reference point and positioning point to obtain a new value RSSNEWi,j,RSSNEWtp,j;
Wherein the RSSi,jIs the RSS value of the jth AP at the ith reference pointi,minFor the minimum RSS value at the ith reference pointi,maxThe maximum RSS value at the ith reference point; RSS (really simple syndication) data base)tp,jFor the RSS value of the jth AP at the anchor point, RSStp,minFor the minimum RSS value at the anchor point, RSStp,maxThe maximum RSS value at the anchor point;
8.5) calculating the location points and CpThe Wasserstein distance of the ith reference point in is
8.6) setting the cycle times K times, and calculating each Wasserstein distance between the positioning point and each reference point;
8.8) locating positionWherein the reference number when the reference point is being calculated is CzIn the middle, V is takenOtherwise V getsZiWeights generated for the ith Wasserstein distance, (x)i,yi) Is the ith reference point coordinate;
when the highest score in step 6) is not a single region
8.1) record x for each regiontpThen xtp=(xtp1,xtp2,...,xtpc,...,xtpL) L is the number of the positioning areas with the highest score being the same;
8.3) calculating x separatelytpAnd Euclidean distance, x, of each reference point in the fingerprint databasetpAnd the Euclidean distance of the ith reference point in the fingerprint databaseSelecting the minimum K reference points, recording the reference point labels, and storing the data of the K reference points in CpcIn, with CzComparing the number of the same reference points with the reference point labels, and marking as U;
8.4) for CpcNormalizing the data in each reference point and positioning point to obtain a new value RSSNEWi,j,RSSNEWtp,j;
Wherein the RSSi,jIs the RSS value of the jth AP at the ith reference pointi,minFor the minimum RSS value at the ith reference pointi,maxThe maximum RSS value at the ith reference point; RSS (really simple syndication) data base)tp,jFor the RSS value of the jth AP at the anchor point, RSStp,minFor the minimum RSS value at the anchor point, RSStp,maxThe maximum RSS value at the anchor point;
8.5) calculating the location points and CpcThe Wasserstein distance of the ith reference point in is
8.6) setting the cycle times K times, and calculating each Wasserstein distance between the positioning point and each reference point;
8.8) locating positionWherein the reference number when the reference point is being calculated is CzIn the middle, V is takenOtherwise V getsZiWeights generated for the ith Wasserstein distance, (x)i,yi) Is the ith reference point coordinate;
Claims (6)
1. An improved WKNN indoor positioning method is characterized by comprising the following steps:
1) dividing an indoor scene into k positioning areas and giving labels 1, 2 and 3 … … k;
2) performing palisade in each positioning area, establishing reference point, and recording position information of the reference point, such as ith reference point coordinate pi=(xi,yi) Acquiring the RSS of the current reference point every delta T by the mobile equipment, and recording the RSS of the ith reference point as: si={Si,1,Si,2,...,Si,j,...,Si,zZ is the number of wireless access points AP, si,jRepresenting the RSS of the jth wireless access point AP received by the ith reference point; si,j={Si,j,1,Si,j,2,...,Si,j,x,...,Si,j,tT represents the acquisition times;
3) selecting a wireless access point AP subset for positioning through a wireless access point AP selection strategy;
4) storing each reference point information as a fingerprint in a fingerprint database;
5) a user collects RSS of a positioning point through a mobile device carried by the user;
6) calculating the score of each positioning area by using the AP subset and the RSS value, judging whether the highest score is a single area, finding out the RSS value of the AP subset, and determining the positioning area to which the positioning point belongs;
7) finding out a reference point similar to the positioning point according to the quantity difference of the peak-to-valley values between the positioning point and the reference point;
8) and (5) finding k fingerprints closest to the Euclidean distance of the RSS value acquired in the step (5) in a fingerprint database, judging whether the fingerprints are similar reference points or not by utilizing the normalization and wasserstein distances, and weighting the positions corresponding to the k fingerprints and the distance weight to obtain the current position of the user.
2. The method as claimed in claim 1, wherein the AP selection strategy in step 3) comprises the following steps:
3.1) carrying out denoising treatment on the collected RSS data: for each si,jThe gaussian filtering is carried out and the number of the gaussian filters, t is the number of acquisitions, and the measurement f (S)i,j) Has a density function ofF (S) is more than or equal to 0.6i,j)≤1,0.15σ1+μ≤f(Si,j)≤0.39σ1+ mu, S in this rangei,j,gThe value extraction is averaged intoThe current RSS value, i.e. the jth AP information is Sj={RSSj,1,RSSj,2,...,RSSj,nN is the number of reference points;
3.2) complementing missing data: the data missing at the xth reference point by the AP is RSSj,x=RSSj,min-(RSSj,min2-RSSj,min),RSSj,minRepresents the minimum value of the AP among all reference points, RSSj,min2A second smallest value among all reference points representing the AP;
3.3) set a set CqAnd make an orderCalculating the frequency of occurrence of each AP signal and setting a threshold σ2If, ifDiscarding the current AP; otherwise enter set CqWherein g is the number of reference points, NjIndicating that when the reference point has RSS data, the data is larger than>-80db, then 1, otherwise 0;
3.5) finding AP respectivelyi,APjClosest point F, AP to sourcei,APjPoints F of (a) are denoted as iF and jF, respectively;
3.6) setting the threshold σ4,σ5,E.g. d1<σ4And d is2<σ5Then AP will be startedi,APjIs put into CrPerforming the following steps;
3.7) set CrIf an AP has multiple tags, resetting the AP and the AP having the same tag as the AP to have the same tag;
3.8) for CrThe same label is screened according to the reference point scoring capability T, and for the same label, the AP with the maximum score is kept and put into a set CqWhile the others are discarded; note APiScore capability at the ith reference point ofRSSiIs the RSS value at the ith reference pointmaxIs the maximum value of the RSS among all reference points of the APminIs the minimum value of RSS among all reference points of the AP, di,iFIs the distance from the ith reference point to point F; AP (Access Point)iTotal scoring ability
3.9) set of pairs CqAll APs in the system calculate the total score capability T of the reference pointsallAnd arranged in descending order;
3.10) determining the number of the APs participating in positioning according to the size of the positioning area, and sequentially selecting a wireless access point AP subset for positioning from the AP set.
3. The method of claim 2, wherein said step 3.5) includes the steps of:
3.5.1) separately determining APi,APjWhether the reference points q, w, e for which the first three maximum RSS values are taken are less than the threshold value sigma3,dq,wIs the distance between the positions of reference point q and reference point w, dq,eIs the position distance of the reference point q and the reference point e, dw,eIs the position distance of reference point w and reference point e;
3.5.2) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3If there are only two satiations and one is not, then the source approaches a parameter common to both satiationsExamination points, such as: dq,w<σ3And d isq,e<σ3But dw,e>=σ3Coordinate of q (x)q,yq) Is F;
3.5.3) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3Only 1 is satisfied, two are not, e.g. dq,w<σ3But dq,e>σ3,dw,e>=σ3If the source is between the coordinates q and w, let F be
3.5.4) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3If none of the three are satisfied, finding another point which can meet the requirement of 3.5.2) or 3.5.3) according to the sequence of RSS size values, and recording the left side of the point as F;
3.5.5) if dq,w<σ3And d isq,e<σ3And d isw,e<σ3And if all three are satisfied, the reference point coordinate with the maximum RSS value is F.
4. The method of claim 1, wherein said step 6) includes the steps of:
6.1) marking the maximum value and the minimum value of the AP selected by the positioning area in each positioning area respectively, and marking the APj,maxFor the maximum value of the jth AP, note APj,minIs the minimum value of the jth AP;
6.2) the RSS information of the collected locating points is selected according to the MAC address, the RSS of the AP with the same MAC address is marked as xtp=(RSStp,1,RSStp,2,...,RSStp,j,RSStp,m) M is the number of the APs selected in the step 3) for positioning;
6.3) set score 0 if APj,min≤RSStp,j≤APj,maxIf score is score +1, until all the m APs are aligned, calculating a total score;
6.4) circularly comparing all the positioning areas according to the method, and calculating the score of each positioning area;
6.5) selecting the location area with the highest score and recording x in 6.2)tpA value;
6.6) if the same division situation exists, observing whether the same division positioning areas are adjacent, if so, recording the same division positioning areas and the RSS values selected in the 6.2), and if not, jumping back to the step 6 for re-acquisition.
5. The method of claim 1, wherein said step 7) includes the steps of:
7.2) make possible reference point decisions, let j equal 1, 2, …, m, note that all meet RSStp,j-1≤RSStp,j≤RSStp,j+1Or RSStp,j-1≤RSStp,j≤RSStp,j+1j and the number of satisfied j is recorded as g1,
7.3) comparing all satisfied j values in step 7.2) with the ith reference point, RSSi,j-1≤RSSi,j≤RSSi,j+1Or RSSi,j-1≥RSSi,j≥RSSi,j+1Let g20, for each value of j satisfied, g2=g2+1, if not, but now | RSSSi,j-1-RSSi,j< 5 or | RSSi,j+1-RSSi,jI < 5, at which time g2=g2+1;
6. The method of claim 1, wherein said step 8) includes the steps of:
when the highest score in step 6) is a single region:
8.1) setting RSS of AP with the same MAC address as RSS of anchor point to xtpGenerating matrix x from reference point data in fingerprint databaserp=[x1,x2,...,xi,...,xg]TIn which x isiIs the ith reference point, xi=(RSSi,1,RSSi,2,...,RSSi,j,...,RSSi,m),RSSi,jRepresenting the RSS value of the jth AP at the ith reference point, m being the number of selected APs used for positioning, and the positioning point data generating a row vector xtp=(RSStp,1,RSStp,2,...,RSStp,j,RSStp,m);
8.3) calculating x separatelytpAnd Euclidean distance, x, of each reference point in the fingerprint databasetpAnd the Euclidean distance of the ith reference point in the fingerprint databaseSelecting the minimum K reference points, recording the reference point labels, and storing the data of the K reference points in CpIn, with CzComparing the number of the same reference points with the reference point labels, and marking as U;
8.4) for CpNormalizing the data in each reference point and positioning point to obtain a new value RSSNEWi,j,RSSNEWtp,j;
Wherein the RSSi,jIs the RSS value of the jth AP at the ith reference pointi,minFor the minimum RSS value at the ith reference pointi,maxThe maximum RSS value at the ith reference point; RSS (really simple syndication) data base)tp,jFor the RSS value of the jth AP at the anchor point, RSStp,minFor the minimum RSS value at the anchor point, RSStp,maxThe maximum RSS value at the anchor point;
8.5) calculating the location points and CpThe Wasserstein distance of the ith reference point in is
8.6) setting the cycle times K times, and calculating each Wasserstein distance between the positioning point and each reference point;
8.8) locating positionWherein the reference number when the reference point is being calculated is CzIn the middle, V is takenOtherwise V getsZiWeights generated for the ith Wasserstein distance, (x)i,yi) Is the ith reference point coordinate;
when the highest score in step 6) is not a single region
8.1) record x for each regiontpThen xtp=(xtp1,xtp2,...,xtpc,...,xtpL) L is the number of the positioning areas with the highest score being the same;
8.3) calculating x separatelytpAnd Euclidean distance, x, of each reference point in the fingerprint databasetpAnd the Euclidean distance of the ith reference point in the fingerprint databaseSelecting the minimum K reference points, recording the reference point labels, and storing the data of the K reference points in CpcIn, with CzComparing the number of the same reference points with the reference point labels, and marking as U;
8.4) for CpcNormalizing the data in each reference point and positioning point to obtain a new value RSSNEWi,j,RSSNEWtp,j;
Wherein the RSSi,jIs the RSS value of the jth AP at the ith reference pointi,minFor the minimum RSS value at the ith reference pointi,maxThe maximum RSS value at the ith reference point; RSS (really simple syndication) data base)tp,jFor the RSS value of the jth AP at the anchor point, RSStp,minFor the minimum RSS value at the anchor point, RSStp,maxThe maximum RSS value at the anchor point;
8.5) calculating the location points and CpcThe Wasserstein distance of the ith reference point in is
8.6) setting the cycle times K times, and calculating each Wasserstein distance between the positioning point and each reference point;
8.8) locating positionWherein the reference number when the reference point is being calculated is CzIn the middle, V is takenOtherwise V getsZiWeights generated for the ith Wasserstein distance, (x)i,yi) Is the ith reference point coordinate;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110160749.2A CN113055814B (en) | 2021-02-05 | 2021-02-05 | Indoor positioning method for improving WKNN |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110160749.2A CN113055814B (en) | 2021-02-05 | 2021-02-05 | Indoor positioning method for improving WKNN |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113055814A true CN113055814A (en) | 2021-06-29 |
CN113055814B CN113055814B (en) | 2023-03-21 |
Family
ID=76508928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110160749.2A Active CN113055814B (en) | 2021-02-05 | 2021-02-05 | Indoor positioning method for improving WKNN |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113055814B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113532436A (en) * | 2021-07-12 | 2021-10-22 | 中通服咨询设计研究院有限公司 | Indoor relative position positioning method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107820314A (en) * | 2017-11-14 | 2018-03-20 | 江南大学 | Dwknn location fingerprint location algorithms based on AP selections |
CN107949052A (en) * | 2017-10-09 | 2018-04-20 | 北京航空航天大学 | WKNN indoor orientation methods based on space characteristics subregion and preceding point constraint |
CN109819406A (en) * | 2019-01-22 | 2019-05-28 | 江苏大学 | A kind of indoor orientation method based on crowdsourcing |
CN110933596A (en) * | 2019-12-04 | 2020-03-27 | 哈尔滨工业大学 | Fingerprint positioning method based on metric learning |
-
2021
- 2021-02-05 CN CN202110160749.2A patent/CN113055814B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107949052A (en) * | 2017-10-09 | 2018-04-20 | 北京航空航天大学 | WKNN indoor orientation methods based on space characteristics subregion and preceding point constraint |
CN107820314A (en) * | 2017-11-14 | 2018-03-20 | 江南大学 | Dwknn location fingerprint location algorithms based on AP selections |
CN109819406A (en) * | 2019-01-22 | 2019-05-28 | 江苏大学 | A kind of indoor orientation method based on crowdsourcing |
CN110933596A (en) * | 2019-12-04 | 2020-03-27 | 哈尔滨工业大学 | Fingerprint positioning method based on metric learning |
Non-Patent Citations (2)
Title |
---|
仲臣等: "基于AP加权的WKNN室内定位算法", 《现代信息科技》 * |
郝利军等: "改进WKNN结合最大熵CQKF的室内定位方法", 《电子测量技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113532436A (en) * | 2021-07-12 | 2021-10-22 | 中通服咨询设计研究院有限公司 | Indoor relative position positioning method |
CN113532436B (en) * | 2021-07-12 | 2024-05-10 | 中通服咨询设计研究院有限公司 | Indoor relative position positioning method |
Also Published As
Publication number | Publication date |
---|---|
CN113055814B (en) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108540929B (en) | Indoor fingerprint positioning method based on RSSI signal strength sequencing | |
CN107703480B (en) | Mixed kernel function indoor positioning method based on machine learning | |
CN111832462B (en) | Frequency hopping signal detection and parameter estimation method based on deep neural network | |
CN109951798A (en) | Merge the enhancing location fingerprint indoor orientation method of Wi-Fi and bluetooth | |
CN110166991A (en) | For the method for Positioning Electronic Devices, unit and storage medium | |
CN110113709A (en) | A kind of UWB indoor position error elimination algorithm based on support vector machines | |
CN107677989B (en) | A kind of indoor location localization method carrying out RSSI removal noise based on RSSI maximum value | |
CN108924756A (en) | Indoor orientation method based on WiFi double frequency-band | |
CN112325883A (en) | Indoor positioning method for mobile robot with WiFi and visual multi-source integration | |
CN112135248A (en) | WIFI fingerprint positioning method based on K-means optimal estimation | |
CN113055814B (en) | Indoor positioning method for improving WKNN | |
CN110222776A (en) | A kind of indoor Passive Location based on CSI finger print information | |
CN110572786A (en) | block indoor positioning system and method based on wifi and face recognition | |
CN109640255B (en) | Position fingerprint indoor positioning system and method | |
US20220398400A1 (en) | Methods and apparatuses for determining object classification | |
CN112203324A (en) | MR positioning method and device based on position fingerprint database | |
CN113947280A (en) | Combined evaluation method based on feedback adjustment weight | |
CN113219408A (en) | Improved RBF neural network indoor visible light positioning method and system | |
CN108693518B (en) | Indoor positioning method | |
CN111669702A (en) | Coarse and fine matching positioning method based on WIFI address and field intensity | |
CN113316080B (en) | Indoor positioning method based on Wi-Fi and image fusion fingerprint | |
CN115442887A (en) | Indoor positioning method based on cellular network RSSI | |
CN108445443A (en) | A kind of fingerprint point clustering method based on KNN | |
CN112929823A (en) | Hybrid Wi-Fi indoor positioning method | |
CN114286282A (en) | Fingerprint positioning method based on WiFi RSS data of mobile phone and dimension reduction algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |