Tracking of movement of individuals in certain locations can be essential for security and safety. While it is possible to track persons actively utilizing electronic devices, such tracking is often not possible, and thus passive tracking may be applied. Technologies that are designed for tracking and ranging operations, such as radar, may be applied for tracking, but these technologies require special technology and equipment that may be impractical in many environments.
While there are wireless technologies conventionally implemented for communications and data transfer, such as Wi-Fi, that may be applied in tracking, existing technology cannot provide tracking when multiple individuals are moving within a particular environment. If multiple people within a Wi-Fi signal range move simultaneously, the signals of multiple reflection paths also change, and existing technology does not allow for tracking when more than one signal path changes.
Embodiments described here are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which like reference numerals refer to similar elements.
Embodiments described herein are directed to passive multi-person location tracking utilizing signal polarization.
In some embodiments, a system or process is to provide for transmission of polarized signals and the reception of reflected signals at multiple different locations, the reflected signals being processed to passively detect and track multiple persons in a particular tracking environment. In some embodiments, the system or process utilizes a Wi-Fi transmitter transmitting at least a first signal in a first polarization direction and a second signal in a second polarization direction to enable tracking of multiple persons in the tracking environment through use of reflected signals received at each of multiple receivers.
The wireless signal arriving at the receiver side in a system is a combination of all of the signals that traverse through multiple signal reflection paths. By processing and analyzing the channel state information (CSI) provided by the Wi-Fi receiver, a system can estimate the characteristics of the signal path, such as angle of arrival (AoA) and time of flight (ToF). Using this data, the system can analyze the location of the reflector and then find the position of a person when the person is a main source of the reflection. Such a technique is called wireless signal-based human body tracking.
However, conventional technology approaches are unable to track when multiple individuals move simultaneously in a tracking environment. If multiple individuals within the Wi-Fi-signal range move simultaneously, the signals of multiple reflection paths also change. Existing tracking techniques are designed to consider a situation in which signals from a single path change, which is not applicable when more than one signal path changes.
In some embodiments, a tracking technology (which may be referred to herein as WiPolar) includes a passive multi-person tracking system that may utilize Wi-Fi devices (including commercial off-the-shelf (COTS) devices) to employ polarimetry in passive multi-person tracking. Polarimetry refers to a measure of signal (including Wi-Fi signals) polarization, which is applied to overcome the difficulty of separating multiple human reflections in a tracking environment.
(1) Polarization Diversity 110: Polarization diversity is provided in a transmitted Wi-Fi signal that is used to illuminate a tracking environment. The transmitted signal may be transmitted by an apparatus such as Wi-Fi transmitter 210 illustrated in
(2) Signal Monitoring 120—A polarization parameter (polarization axial ratio angle) and a set of location-based parameters (ToF, AoA, DFS (Dynamic Frequency Selection)) are continuously determined for each reflection path on multiple Wi-Fi receivers (such as the pair of Wi-Fi receivers 220 and 225 illustrated in
(3) Combining of Reflection Paths 130—The location parameters of pairs of reflection paths across the two receivers that have the closest polarization parameter are combined to identify reflective targets.
(4) Localization of Reflective Targets 140—Each human reflective target in the tracking environment is localized using location parameters, including angles of arrival (AoA), of the human reflection paths at each of the multiple receivers.
The polarization of a transverse-electromagnetic (TEM) wave, such as a Wi-Fi signal, is a fundamental property that defines the spatial orientation of the wave's electric field oscillation. In some embodiments, by orienting a pair of co-located antennas of the Wi-Fi transmitter in vertical and horizontal directions (or other differing directions), a transmitter is to simultaneously generate a pair of vertical and horizontal polarized Wi-Fi signals. In such operation, a vertically oriented antenna transmits a signal in which the sinusoidal oscillations of its electric field occur perpendicular to the ground, which is referred to as vertical polarization, while a horizontally polarized antenna transmits a signal in which the sinusoidal oscillations of its electric field occur parallel to the ground, referred to as horizontal polarization.
In some embodiments, a pair of differently polarized transmit signals, such as a first Wi-Fi signal with vertical polarization and a second Wi-Fi signal with horizontal polarization, interact with reflectors in the tracking environment, wherein the reflectors may be humans and varying obstacles, that possess unique horizontal and vertical radar cross-sections owing to their physical dimensions and reflection characteristics. The reflected Wi-Fi signals in the tracking environment undergo different amounts of attenuation in the horizontal and vertical polarization before reaching one of multiple Wi-Fi receivers.
In some embodiments, the system or process measures a ratio of the amplitudes of the polarized signals in the horizontal and vertical axis at the receiver, and estimates a polarization axial ratio angle. The estimation of the polarization axial ratio angle assists in obtaining a more accurate estimation of location-based parameters for multiple person tracking. It may be noted that the CSI amplitude suffers from less random noise than the phase, such as carrier frequency offset (CFO) and sampling time offset (STO), and thus the polarization angle estimated from the amplitude measurements is cleaner and more stable compared to the other phase-based location tracking parameters such as AoA, DFS and ToF. For this reason, a system process estimates the relatively stable polarization axial ratio angle jointly with the less stable phase-based location tracking parameters, resulting in more stable location parameters for the targets than would be generated by estimation of phase-based location tracking parameters alone. The estimated directions of each target from the perspective of two receivers thus be applied to provide a confident estimate of a target's actual location in a tracking environment.
As used herein, access point (AP) (also referred to as a wireless access point (WAP)) refers to a Wi-Fi networking hardware device that allows Wi-Fi devices to connect to a wired network, including connection to the Internet or an intranet. The AP may connect to a router (via a wired network) as a standalone device, or may be an integral component of the router itself.
A Wi-Fi signal is a transverse electro-magnetic (TEM) wave comprised of electric and magnetic fields that oscillate in the same phase but having their plane of oscillations perpendicular to each other. Assuming the EM wave propagates along the Z-axis, its electric field can oscillate at any angle γ to the XZ plane. This angle, called the polarization axial ratio angle is determined by the arctangent of the ratio of the instantaneous magnitudes of the electric field component on the Y-axis to the electric field component on the X-axis. The TEM wave is said to be linearly polarized if γ does not vary over space or time. Formally, the instantaneous electric field vector {right arrow over (E)} of a TEM wave Ae−j(2+ft−kz) of frequency fat time t and spatial position z (i.e., along the Z-axis) and spatial phase factor
can be represented as the vector sum of two components along the X and Y axes, as:
{right arrow over (E)}={right arrow over (e)}
x
E
x
+{right arrow over (e)}
y
E
y [1]
{right arrow over (e)}x and {right arrow over (e)}y=unit vectors along the X-axis and Y-axis, respectively
Ex=Axe−j(2πft−kz)=the X-component of {right arrow over (E)}
Ey=Aye−j(2πft−kz+ϕ)=the Y-component of {right arrow over (E)}
ϕ=the phase difference between the X and Y components.
The polarization axial ratio angle γ is thus given by:
Depending on the values of Ax, Ay, and ϕ, three types of polarization can be present: linear polarization (LP), circular polarization (CP), and elliptical polarization (EP). In linear polarization, the value of ϕ is always zero, and thus the orientation of the plane of the electric field does not change during the propagation of the TEM irrespective of the value of Ax and Ay. Further, there are two special cases of linear polarization: vertical polarization and horizontal polarization. A TEM wave is said to be vertically polarized if ϕ=0, Ax=0, and Ay≠0, and horizontally polarized if ϕ=0, Ax≠0, and Ay=0. However, if ϕ≠0, the X-component will lead (for positive ϕ) or lag the Y-component (for negative ϕ) over time, resulting in the tip of the electric field vector E to be described as an ellipse as the TEM wave propagates, for which the TEM wave is said to be elliptically polarized. Further, a special case of elliptical polarization, referred to as circular polarization, occurs when the amplitudes of the X and Y components are equal and orthogonal (i.e., Ax=Ay) and ϕ=π/2, referred to as right-hand circular polarization (RHCP) (or if Ax=Ay and ϕ=−π/2, referred to as Left-Hand Circular Polarization (LHCP)).
The transmitted signal of each subcarrier propagates in both of the horizontal and vertical polarizations along L paths from the transmitter to multiple Wi-Fi receivers, illustrated as a first Wi-Fi receiver access point (R1) 220 and a second Wi-Fi receiver access point (R2) 230 (also referred to herein as a Wi-Fi receiver), each Wi-Fi receiver including a uniform linear array (ULA) of antennas, such as illustrated in FIG. 3B. Each of the L paths can interact with stationary and moving objects in the tracking environment 200, such as walls (or other structures), obstacles, and human targets of interest, and consequently undergo change in amplitude and phase in both horizontal and vertical polarized components. The antennas of receivers may be located a certain distance D apart, where D is at least one wavelength.
For example, the tracking environment 200 may include multiple persons who may be in motion, the persons in one example including a first person 240 and a second person 245, each of whom may be moving in any direction along any path. Wi-Fi receivers 220 and 230 thus each can receive reflected Wi-Fi signals from both of the persons 240 and 245, as well as reflected signals from any other structure, obstacle, or person in the tracking environment. The signals received at Wi-Fi receiver 220 include a signal (Φ1R
In some embodiments, the signals received at Wi-Fi receivers 220-230 are analyzed to locate and track the persons 240-245 in the tracking environment. In some embodiments, the analysis is performed by a processing system, such as location tracking server 450 illustrated in
In some embodiments, a tracking system may be expanded to three-dimensional (3D) operation. The system architecture in such operation may further including one or more additional receivers that are a certain distance from Wi-Fi receivers 220 and 230 along a third axis such as a Z-axis if it is assumed that
As shown in
In some embodiments, a processing system, referred to herein as a location tracking server 450, receives channel state information (CSI) from multiple Wi-Fi receivers, such as a first receiver (R1) 420 and second receiver (R2) 430, which may be Wi-Fi receivers 220 and 230 as illustrated in
In some embodiments, the location tracking server 450 is to process the CSI from the receivers 420-430 to provide for location tracking of multiple persons within a tracking environment, such as persons 240 and 245 in tracking environment 200 in
The degree of change in amplitude and phase for each path varies in accordance with the electrical and geometrical properties of its interacting objects before reaching the receiver. At each receiver 420-430, the received wireless signal Y will comprise the signals from all the L paths. For each packet transmitted with the signal S, the received signal Y is given by Y=HS+N, where H represents the CSI and N represents the noise. Because the Wi-Fi network interface card (NIC) of the receiver measures CSI separately for each transmit antenna, receive antenna, subcarrier frequency, and packet sent, the CSI H can be denoted as H(p,r,f,t) where p represents a sensor in the polarization domain (transmit antenna), r represents a sensor in the spatial domain (receive antenna), f represents a sensor in the frequency domain (i.e., subcarrier), and t represents a sensor in the time domain (packet number). Thus, a CSI measurement for transmit antenna p, receive antenna r, and subcarrier f at time t is given by:
H(p,r,f,t)=Σl=1Lαlp(r,f,t)e−jΦ
In Equation [3], αlp(r, f, t) represents the complex attenuation weight for the signal from transmit antenna p along path l to the receiver at sensor (r, f, t), and Φl(r, f, t) represents the phase of the same path l at sensor (r, f, t). Taking the first space sensor ro, the first subcarrier fo, and the first-time sensor to as reference, Φl (r, f, t) is defined by the AoA of the path Φl, the DFS of the path νl, and ToF of the path τl as:
where δ(r, r0) represents the physical distance between the spatial sensors r and r0, and c is the speed of light.
In some embodiments, two approximations may be made for Equation [3]:
First, considering a receive antenna array of a few elements (e.g., 3 elements, such as illustrated in
Second, because the two transmit antennas are co-located (such as illustrated in
H(r,f,t)≈Σl=1LAle−jΦ
Where Al=[alv,alh] represents a polarization matrix whose elements alv and alh represent the complex attenuation weights for the vertical and horizontal polarized transmit signals measured by the sensor array at the receiver, respectively. The complex attenuation weights for the vertical and horizontal polarized transmit signals can be jointly expressed as the polarization axial ratio
Thus, with the definition of γl and Φ1(r, f, t) being as provided above, each reflection path l is characterized by its complex weight matrix, a polarization axial ratio angle, an AoA, a ToF, and DFS, denoted together as a path parameter vector θl=[Al, γl, ϕl, τl, νl].
With the system as illustrated in
Joint Maximum Likelihood Estimation of Path Parameters: In some embodiments, the polarization-SAGE algorithm is applied for joint estimation of path parameters of all L multi-paths. There is presumed a finite time duration T over which a Wi-Fi receiver records the channel matrix H from T packets of dimensions 2×R×F×T as modeled by Equation [5]. In such estimation, let Θ=[θ1, θ2, . . . , θL] containing the parameters of all L paths, and let κ=(κr, κf, κt) such that κr∈[1, R] κf∈[1, F], κt ∈[1, T] is a valid combination of sensors in the domains of space, frequency and time respectively, such that Kr=1 represents the reference sensor Ro, κf=1 represents the reference sensor Fo, and κt=1 represents the reference sensor To.
Equation [5] may then be rewritten as:
H(κ)≈Σl=1Ls(κ;θl)+N(κ) [6]
Where s(κ;θl)=Ale−jΦ
With the above formulation in Equation [6], the SAGE algorithm may be applied to perform maximum likelihood estimation (MLE) of Θ. It may be noted that the SAGE algorithm relies on two sets of data: incomplete, observable data and complete, unobservable data. The algorithm considers a measured CSI H(κ) as the incomplete, observable data. Further, it considers each individual multipath component in the CSI, corrupted by a part of the total additive noise N as the complete, unobservable data. Denoting the observable data by the vector X(κ)=[X1(κ), X2(κ), . . . , Xl(κ)], the l-th multipath component of X(κ) is given by:
Where βl∈[0,1]. Therefore, H(κ) from Equation [6] can also be written as H(κ)=Σl=1LXl(κ), i.e., the incomplete, observable data CSI H(κ) is a sum of all complete, unobservable data in X(κ).
Given the above SAGE-compatible definitions of H(κ) and Xl(κ), the objective of the polarization-SAGE algorithm is to obtain the maximum likelihood estimation of the path parameter θl given the observable data Xl (i.e., Xl(κ) for all possible κ). However, because the complete data Xl for each path is unobservable, the complete data has to be first estimated from all the observed, H(κ) using a prior estimate of all paths {circumflex over (Θ)}′, before obtaining the MLE of θl. Thus, the polarization-SAGE algorithm proceeds in the following stages:
(1) Initialization: The algorithm initializes a value for L, a prior estimate {circumflex over (Θ)}′.
(2) Expectation and Maximization: The algorithm proceeds iteratively in two stages for each path l in L: (i) Expectation for finding {circumflex over (X)}l, an estimate of Xl for the current iteration and (ii) Maximization for finding the MLE of Θ′ for the current iteration.
(3) Convergence: The algorithm checks for convergence at the end of each iteration, i.e., after running Expectation and Maximization on all paths. If the algorithm converges, it outputs the estimated path parameters of all paths from the current iteration. If convergence is not met, the algorithm continues with the next iteration of Expectation and Maximization.
The Initialization, Expectation, Maximization, and Convergence stages are more fully detailed below. In such explanation, the [{circumflex over (.)}] superscript is used to indicate an estimated value for the current iteration and [{circumflex over (.)}′] superscript is used to indicate an estimated value obtained from a previous iteration.
Initialization: The polarization-SAGE algorithm sets L to a value that covers all of the dominant multi-paths, which are usually 4 to 5 in indoor environments plus the maximum number of human targets. Next, the algorithm sets the prior estimate {circumflex over (Θ)}′ to all zeros and initializes an iteration counter μ=1 along with a finite limit μmax that limits to the maximum number of iterations in the Expectation process to μmax irrespective of attaining convergence. Further, the algorithm defines a convergence threshold value of ∈max in the same 5-Dimensional space as Θ to detect convergence of the iterations in the Expectation process. Finally, it proceeds to the two-stage iterations of Expectation and Maximization.
Expectation: In this stage, the polarization-SAGE algorithm estimates the complete, unobservable data using the incomplete, observable CSI data H(κ) and the estimate from the previous iteration =[, , . . . , ] by taking the conditional expectation:
{circumflex over (X)}
l(κ;)=s(κ;)+βl[H(κ)−Σl=1Ls(κ;)] [8]
In Equation [8], the first summation term in the right hand side (RHS) stands for the contribution of the specific multipath component, and the second summation term in the RHS stands for an estimate of the additive noise, imputed by subtracting all estimated wave contributions from the received signal. The value of βl is set to 1, as it minimizes the convergence rate of the algorithm.
Maximization: The polarization-SAGE algorithm estimates the parameters of the multipath component θl using the corresponding complete data {circumflex over (X)}l estimated by the Expectation stage. Note that the parameters of θl can be determined by computing the MLE of the log-likelihood function Λ(θl; Xl) given by ({circumflex over (θ)}l)ML({circumflex over (X)}l)=arg max{Λ(θl; Xl)}, for which the log-likelihood function Λ(θl; Xl) is defined as:
Λ(θl;Xl)=2∫κ□R{sH(κ;θl)Xl(κ)}dκ−∫κ□∥s(κ;θl)∥2 [9]
With R{.}, H, and ∥.∥ denoting the real part, Hermitian transpose, and norm of a complex matrix, respectively.
The above approach is generally computationally infeasible due to high dimensionality of Θ (i.e., 5L). However, if the integral in Equation [9] is approximated by the discrete sample summation over all values of x along with the substitution of s(κ; θl)=Ale−jΦ
The cost function z(ϕl, τl, νl; {circumflex over (X)}l) has a structure similar to Equation [4], but is opposite in the sign of the exponent of equation [3], given by:
Thus, in the Maximization stage, the polarization-SAGE algorithm first takes the estimated {circumflex over (X)}l from the Expectation stage and finds the solution of
Because the solution of
is a three-dimensional optimization problem and computationally intensive, WiPolar follows SAGE by reducing the computational complexity of three-dimensional optimization by performing three successive one-dimensional procedures, where each of the three phase-based path parameters (i.e., ϕl, τl, νl) for the current iteration is estimated sequentially as:
Finally, with the above three estimated phase-based parameters {circumflex over (ϕ)}l, {circumflex over (τ)}l, and {circumflex over (ν)}l, and the 4-Dimensional matrix {circumflex over (X)}l (i.e., {circumflex over (X)}l ∈R2×R×F×T), the algorithm's Maximization stage estimates the attenuation weights for the vertical and horizontal polarized transmit signals along with their polarization axial ratio parameter {circumflex over (γ)}l as:
Convergence: After the Maximization stage of each iteration, the absolute difference ∈ between the latest path parameter estimates {circumflex over (Θ)} and the previous iteration path parameter estimates {circumflex over (Θ)}′ is compared against the threshold ∈max. The algorithm is considered to have converged if ∈<∈max and the latest path parameter estimates {circumflex over (Θ)} are output by the algorithm. If convergence is not met, the iteration counter μ increases by 1 and the algorithm proceeds to another iteration of the second step unless μ=μmax, for which the latest path parameter estimates {circumflex over (Θ)} are output as the result of the Polarization-SAGE algorithm for the next step of mobile path identification and matching.
Localization of Human Targets: In some embodiments, the WiPolar system or process is to track the position of each person in a tracking environment using the path parameters from two (or more) Wi-Fi receivers R1 and R2. Given L estimated path parameters for two receivers ΘR
(1) Path Pairing: In the Path Pairing process, for each time window x, the system or process is to consider all possible pairs of path parameter vectors <θi, θj> such that θi∈ΘxR
To score all the pairs, the system or process is to leverage the polarization axial ratio angle. Because each reflector (such as human subject) has a unique horizontal and vertical radar cross section irrespective of its location, the ratio of the target's reflected signal for the vertical polarized transmit signal to that of the horizontal polarized transmit signal remain largely static for small amount of time (e.g., 0.2 second). Therefore, a specific reflector will yield a similar polarization axial ratio angle at both receivers, and consequently, the reflector's AoAs at both the receivers can be combined with the known position of the receivers to derive the location of the reflector. The system or process is to devise its similarity score for a given pair <θi, θj> on the basis of their amplitude in vertical polarization ({circumflex over (α)}V) and the polarization axial ratio angle γ. Specifically, for θi=[αVi,αHi,γi,ϕi,τi,νi] and θj=[αVj,αHj,γj,ϕj,τj,νj], the system or process is to compute the similarity score
represents the Euclidean distance and E represents a weight for the product of the vertical polarization magnitudes. In a particular implementation, there is an empirical setting of ∈=0.2. Considering up to two dominant static multipaths and K human reflection paths, the system or process then selects all the AoA pairs Ω=<ϕi1,ϕj1>, <ϕi2,ϕj2>, . . . , <ϕiK+2,ϕjK+2> of top K+2 pairs of <θi,θj> in decreasing order of their similarity score σij for localization.
(2) Localization of Human Targets: The system or process is then to use the top K+2 AoA pairs in Ω from each time window to locate the human targets in a tracking environment. Given the distance D between the receivers R1 and R2 and the pair of AoAs at R1 and R2 [ϕa, ϕb]∈Ω, the system or process is to output a 2D Location pair l=(x,y) using the Triangle sine rule as:
Thus, the system or process converts the set of aggregated AoA pairs Ω into a set of 2D Location pairs L. The system or process then runs a clustering algorithm to identify groups of the output locations. Because the human paths are relatively more dynamic than static paths even when standing still due to subtle movements such as breathing, the clusters corresponding to the static paths will be tighter than the human reflected paths. Because the input data for clustering is generated by aggregating the angle parameters of K+2 paths, the number of expected clusters will be K+2. Given the above expected number of clusters, along with the values of L in the two-dimensional Cartesian space, the system or process uses the K-Means algorithm with the Euclidean distance metric and K+2 as the number of clusters to cluster the locations in L.
As shown in
In some embodiments, the Wi-Fi transmitter or receiver 600 includes a processing unit 605, a transmitter and/or receiver 610, power control 615, and one or more antennas 620 for wireless signal communication. In some embodiments, the one or more antennas 620 include at least one of a pair of co-located polarized transmission antennas for a Wi-Fi transmitter, as illustrated in
In some embodiments, the Wi-Fi transmitter or receiver 600 may further includes firmware or hardware or both 650 to provide control for passive multi-person tracking operation, such as illustrated in
In some embodiments, the location tracking server 700 includes one or more ports 740 for connection to multiple Wi-Fi receivers, illustrated as a first receiver (R1) 760 and a second Wi-Fi receive (R2) 765, such as Wi-Fi receivers 220-230 illustrated in
The location tracking server 700 may include other components that may or may not be physically and electrically coupled to the board 702. These other components include, but are not limited to, volatile memory (e.g., DRAM) 708, nonvolatile memory (e.g., ROM) 710, flash memory (not shown), a mass memory 714 (such as a solid state drive (SSD) or hard drive), a graphics processor 716, a digital signal processor (not shown), a crypto processor (not shown), a chipset 718, a power amplifier 720. These components may be connected to the system board 702, mounted to the system board, or combined with any of the other components.
The communication package 706 enables wireless and/or wired communications for the transfer of data to and from the location tracking server 700. The term “wireless” and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a non-solid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not. The communication package 706 may implement any of a number of wireless or wired standards or protocols, including but not limited to Wi-Fi (IEEE 802.11 family), WiMAX (IEEE 802.16 family), IEEE 802.20, long term evolution (LTE), Ev-DO (Evolution Data Optimized), HSPA+, HSDPA+, HSUPA+, EDGE Enhanced Data rates for GSM evolution), GSM (Global System for Mobile communications), GPRS (General Package Radio Service), CDMA (Code Division Multiple Access), TDMA (Time Division Multiple Access), DECT (Digital Enhanced Cordless Telecommunications), Bluetooth, Ethernet derivatives thereof, as well as any other wireless and wired protocols that are designated as 3G, 4G, 5G, and beyond. The location tracking server 700 may include a plurality of communication packages 706. For instance, a first communication package 706 may be dedicated to shorter range wireless communications such as Wi-Fi and Bluetooth and a second communication package 706 may be dedicated to longer range wireless communications such as GSM, EDGE, GPRS, CDMA, WiMAX, LTE, Ev-DO, and others.
Embodiments may be implemented using one or more memory chips, controllers, CPUs (Central Processing Unit), microchips or integrated circuits interconnected using a motherboard, an application specific integrated circuit (ASIC), and/or a field programmable gate array (FPGA). The term “logic” may include, by way of example, software or hardware and/or combinations of software and hardware.
The following clauses and/or examples pertain to further embodiments or examples. Specifics in the examples may be applied anywhere in one or more embodiments. The various features of the different embodiments or examples may be variously combined with certain features included and others excluded to suit a variety of different applications. Examples may include subject matter such as a method, means for performing acts of the method, at least one machine-readable medium, such as a non-transitory machine-readable medium, including instructions that, when performed by a machine, cause the machine to perform acts of the method, or of an apparatus or system for facilitating operations according to embodiments and examples described herein.
In some embodiments, a system includes a plurality of receivers, including a first receiver at a first location and a second receiver at a second location, each of the plurality of receivers including one or more receiver antennas to receive polarized radio signals; a transmitter located at a third location to transmit a plurality of polarized radio signals, the transmitter including antennas for transmission of a first signal at a first polarization direction and transmission of a second signal at a second, different polarization direction; and a processing system to receive channel state information from each of the plurality of receivers, and to track a plurality of individuals in a region utilizing the received channel state information, wherein the tracking of the plurality of individuals is based at least in part on analysis of a polarization parameter and a set of location parameters that are generated for each of plurality of reflection paths based on the channel state information for each of the plurality of receivers.
In some embodiments, one or more non-transitory computer-readable storage mediums have stored thereon executable computer program instructions that, when executed by one or more processors, cause the one or more processors to perform operations including receiving channel state information for received signals from each of a plurality of receivers, the plurality of receivers including a first receiver and a second receiver, the received signals being reflections of a first signal transmitted at a first polarization direction and a second signal transmitted at a second polarization direction; determining a polarization parameter and a set of location parameters for each of a plurality of reflection paths at each of the plurality of receivers; combining reflection paths across the plurality of receivers to identify reflections for a plurality of persons; and determining a location for each of the plurality of persons based at least in part on the set of location parameters for each of the plurality of reflection paths at each of the plurality of receivers.
In some embodiments, method for passive multi-person location tracking utilizing signal polarization includes transmitting polarized radio signals from a Wi-Fi transmitter at a first location, the polarized signals including a first signal transmitted with a horizontal polarization and a second signal transmitted with vertical polarization, the signals being transmitted in a tracking environment; receiving reflected signals from the tracking environment at a first receiver at a first location and a second receiver at a second location, each of the first and second receivers including one or more receiver antennas to receive polarized radio signals; receiving channel state information at a location tracking server from the first receiver and the second receiver; generating a polarization parameter and a set of location parameters based on the channel state information received from the first receiver and the second receiver; combining of reflection paths at first and second receivers that have a closest polarization parameter to identify a plurality of persons in the tracking environment; and determining a location of each of plurality of persons in the tracking environment using the set of location parameters.
In the description above, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the described embodiments. It will be apparent, however, to one skilled in the art that embodiments may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form. There may be intermediate structure between illustrated components. The components described or illustrated herein may have additional inputs or outputs that are not illustrated or described.
Various embodiments may include various processes. These processes may be performed by hardware components or may be embodied in computer program or machine-executable instructions, which may be used to cause a general-purpose or special-purpose processor or logic circuits programmed with the instructions to perform the processes. Alternatively, the processes may be performed by a combination of hardware and software.
Portions of various embodiments may be provided as a computer program product, which may include a computer-readable medium having stored thereon computer program instructions, which may be used to program a computer (or other electronic devices) for execution by one or more processors to perform a process according to certain embodiments. The computer-readable medium may include, but is not limited to, magnetic disks, optical disks, read-only memory (ROM), random access memory (RAM), erasable programmable read-only memory (EPROM), electrically-erasable programmable read-only memory (EEPROM), magnetic or optical cards, flash memory, or other type of computer-readable medium suitable for storing electronic instructions. Moreover, embodiments may also be downloaded as a computer program product, wherein the program may be transferred from a remote computer to a requesting computer. In some embodiments, a non-transitory computer-readable storage medium has stored thereon data representing sequences of instructions that, when executed by a processor, cause the processor to perform certain operations.
Many of the methods are described in their most basic form, but processes can be added to or deleted from any of the methods and information can be added or subtracted from any of the described messages without departing from the basic scope of the present embodiments. It will be apparent to those skilled in the art that many further modifications and adaptations can be made. The particular embodiments are not provided to limit the concept but to illustrate it. The scope of the embodiments is not to be determined by the specific examples provided above but only by the claims below.
If it is said that an element “A” is coupled to or with element “B,” element A may be directly coupled to element B or be indirectly coupled through, for example, element C. When the specification or claims state that a component, feature, structure, process, or characteristic A “causes” a component, feature, structure, process, or characteristic B, it means that “A” is at least a partial cause of “B” but that there may also be at least one other component, feature, structure, process, or characteristic that assists in causing “B.” If the specification indicates that a component, feature, structure, process, or characteristic “may”, “might”, or “could” be included, that particular component, feature, structure, process, or characteristic is not required to be included. If the specification or claim refers to “a” or “an” element, this does not mean there is only one of the described elements.
An embodiment is an implementation or example. Reference in the specification to “an embodiment,” “one embodiment,” “some embodiments,” or “other embodiments” means that a particular feature, structure, or characteristic described in connection with the embodiments is included in at least some embodiments, but not necessarily all embodiments. The various appearances of “an embodiment,” “one embodiment,” or “some embodiments” are not necessarily all referring to the same embodiments. It should be appreciated that in the foregoing description of exemplary embodiments, various features are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various novel aspects. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed embodiments requires more features than are expressly recited in each claim. Rather, as the following claims reflect, novel aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims are hereby expressly incorporated into this description, with each claim standing on its own as a separate embodiment.