System and method for indoor location computation of a user device
Abstract
The system and method provide methods and devices that compute the indoor location of a user device with improved accuracy and reduced runtime complexity. A method for determining an indoor location of a user device may be done by a server. According to the method, the server measures quality of each of a plurality of calibration points stored in the server. The measurement of the quality includes calculation of a first distance from each of the plurality of calibration points to each other calibration point of the plurality of calibration points, calculation of a second distance from each of the plurality of calibration points to each other calibration point of the plurality of calibration points, and determination of a correlation between the first distance and the second distance for each calibration point of the plurality of calibration points.
Claims
exact text as granted — not AI-modified1 . A method to determine an indoor location of a user device, the method comprising:
measuring, by a server, quality of each of a plurality of calibration points stored in the server, wherein measuring the quality comprises:
calculating a first distance from each of the plurality of calibration points to each other calibration point of the plurality of calibration points;
calculating a second distance from each of the plurality of calibration points to each other calibration point of the plurality of calibration points; and
determining a correlation between the first distance and the second distance for each calibration point of the plurality of calibration points;
identifying, by the server, a first set of calibration points from the plurality of calibration points having the quality less than a first threshold value; selecting, by the server, a remaining set of calibration points from the plurality of calibration points based on elimination of the first set of calibration points; and determining, by the server, the indoor location of the user device based on a subset of the remaining set of calibration points of the plurality of calibration points.
2 . The method of claim 1 , wherein the calculation of the first distance is based on position coordinates of the plurality of calibration points.
3 . The method of claim 2 , wherein the first distance is a Euclidean distance from each of the plurality of calibration points to each other calibration point, wherein the first distance is calculated as:
EucGeoDistance
(
d
i
,
d
j
)
=
(
longitude
i
-
longitude
j
)
2
+
(
latitude
i
-
latitude
j
)
2
and wherein
EucGeoDistance(d i , d j ) is the Euclidean distance from d i to d j based on the position coordinates (longitude/latitude),
d i is one calibration point of the plurality of calibration points, where i=(1, 2 . . . , m), and m is total number of calibration points.
d j is one calibration point of the other calibration points, where j=(1, 2 . . . , m).
4 . The method of claim 3 , wherein the calculation of the second distance is based on received signal strength (RSS) values of signals received from a plurality of access points (APs).
5 . The method of claim 4 , wherein the second distance is a Euclidean distance from each of the plurality of calibration points to each other calibration point, wherein the second distance is calculated as:
EucRSSDistance
(
d
i
,
d
j
)
=
(
RSS
1
i
-
RSS
1
j
)
2
+
(
RSS
2
i
-
RSS
2
j
)
2
+
…
+
(
RSSn
i
-
RSSn
j
)
2
and wherein
EucRSSDistance(d i ,d j ) is the Euclidean distance from d i to d j based on the RSS values, RSS1, RSS2 . . . RSSn is signal strength values of the signals received from different access points.
d i is one calibration point of the plurality of calibration points, where i=(1, 2 . . . , m), and m is total number of calibration points.
d j is one calibration point of the other calibration points, where j=(1, 2 . . . , m).
6 . The method of claim 5 , wherein the correlation between the first distance and the second distance is determined as:
SSDE
(
Λ
geo
,
Λ
RSS
)
=
∑
j
λ
∑
i
λ
[
EucGeoDistance
(
Λ
geo
i
,
Λ
RSS
j
)
]
2
,
and wherein
SSDE(Λ geo , Λ RSS ) is sum square distances error between Λ geo and Λ RSS ,
EucGeoDistance (Λ geo i , Λ RSS j ) is the Euclidean distance from Λ geo i to Λ RSS points based on the position coordinates (longitude/latitude),
Λ geo and Λ RSS comprises a set of nearest calibration points, in descending order, from the plurality of calibration points based on the position coordinates (longitude/latitude) and RSS values respectively,
Λ geo , Λ RSS denotes the i th and the j th points in Λ geo and Λ RSS respectively, λ is nearest neighbor of d i .
7 . The method of claim 1 further comprising:
in response to the selection of the remaining set of calibration points, determining, by the server, a contribution rank of each of the remaining set of calibration points;
identifying, by the server, a second set of calibration points from the remaining set of calibration points with the contribution rank less than a second threshold value; and
selecting, by the server, a third set of calibration points from the remaining set of calibration points based on elimination of the second set of calibration points, wherein the third set of calibration points corresponds to the subset of the remaining set of calibration points used to determine the indoor location of user device.
8 . The method of claim 7 , wherein the determination of the contribution rank comprises:
calculating, by the server, a distance from each of the remaining set of calibration points to each other remaining calibration point of the plurality of calibration points; based on the calculated distance, identifying by the server, for each of the remaining set of calibration points, a set of nearest calibration points of the remaining calibration points of the plurality of calibration points, wherein the set of nearest calibration points are determined based on a Euclidean distance from each of the remaining set of calibration points to each other remaining calibration point, and wherein the set of nearest calibration points are calibration points having a distance less than a third threshold value; and determining, by the server, a number of times each of the remaining set of calibration points of the plurality of calibration points exists as a point in the set of nearest calibration points, wherein the contribution rank of each of the remaining set of calibration points corresponds to the determined number of times.
9 . A system to determine an indoor location of a user device, the system comprising:
one or more processors; an application executed by the one or more processors, wherein the one or more processors is configured to:
measure quality of each of a plurality of calibration points stored in a server, wherein to measure the quality the one or more processors is configured to:
calculate a first distance from each of the plurality of calibration points to each other calibration point of the plurality of calibration points;
calculate a second distance from each of the plurality of calibration points to each other calibration point of the plurality of calibration points; and
determine a correlation between the first distance and the second distance for each calibration point of the plurality of calibration points;
identify a first set of calibration points from the plurality of calibration points having the quality less than a first threshold value;
select a remaining set of calibration points from the plurality of calibration points based on elimination of the first set of calibration points; and
determine the indoor location of the user device based on a subset of the remaining set of calibration points of the plurality of calibration points.
10 . The system of claim 9 , wherein the calculation of the first distance is based on position coordinates of the plurality of calibration points.
11 . The system of claim 10 , wherein the first distance is a Euclidean distance from each of the plurality of calibration points to each other calibration point, wherein the first distance is calculated as:
EucGeoDistance
(
d
i
,
d
j
)
=
(
longitude
i
-
longitude
j
)
2
+
(
latitude
i
-
latitude
j
)
2
and wherein
EucGeoDistance(d i , d j ) is the Euclidean distance from d i to d j based on the position coordinates (longitude/latitude),
d i is one calibration point of the plurality of calibration points, where i=(1, 2 . . . , m), and m is total number of calibration points.
d j is one calibration point of the other calibration points, where j=(1, 2 . . . , m).
12 . The system of claim 11 , wherein the calculation of the second distance is based on received signal strength (RSS) values of signals received at each of the plurality of calibration points from a plurality of access points (APs).
13 . The system of claim 12 , wherein the second distance is Euclidean distance from each of the plurality of calibration points to each other calibration point, wherein the second distance is calculated as:
EucRSSDistance
(
d
i
,
d
j
)
=
(
RSS
1
i
-
RSS
1
j
)
2
+
(
RSS
2
i
-
RSS
2
j
)
2
+
…
+
(
RSSn
i
-
RSSn
j
)
2
and wherein
EucRSSDistance(d i , d j ) is the Euclidean distance from d i to d j based on the RSS values, RSS1, RSS2. . . . RSSn is signal strength values of the signals received from different access points,
d i is one calibration point of the plurality of calibration points, where i=(1, 2 . . . m), and m is total number of calibration points.
d j is one calibration point of the other calibration points, where j=(1, 2 . . . m).
14 . The system of claim 13 , wherein the correlation between the first distance and the second distance is determined as:
SSDE
(
Λ
geo
,
Λ
RSS
)
=
∑
j
λ
∑
i
λ
[
EucGeoDistance
(
Λ
geo
i
,
Λ
RSS
j
)
]
2
,
and wherein
SSDE(Λ geo , Λ RSS ) is sum square distances error between Λ geo and Λ RSS ,
EucGeoDistance (Λ geo i , Λ RSS j ) is the Euclidean distance from Λ geo to Λ RSS points based on the position coordinates (longitude/latitude),
Λ geo and Λ RSS comprises a set of nearest calibration points, in descending order, from the plurality of calibration points based on the position coordinates (longitude/latitude) and RSS values respectively,
Λ geo , Λ RSS denotes the i th and the j th points in Λ geo and Λ RSS respectively, λ is nearest neighbor of d i .
15 . The system of claim 9 , wherein the one or more processors is further configured to:
determine, in response to the selection of the remaining set of calibration points, a contribution rank of each of the remaining set of calibration points; identify a second set of calibration points from the remaining set of calibration points with the contribution rank less than a second threshold value; and select a third set of calibration points from the remaining set of calibration points based on elimination of the second set of calibration points, wherein the third set of calibration points corresponds to the subset of the remaining set of calibration points used to determine the indoor location of user device.Join the waitlist — get patent alerts
Track US2020318974A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.