WallSense: Device-Free Indoor Localization Using Wall-Mounted UHF RFID Tags

To achieve device-free indoor localization without the active participation of the users, this paper presents WallSense, a device-free indoor localization system based on off-the-shelf Radio RFID (Radio-Frequency Identification) equipment. The system deploys two orthogonal tag arrays in adjoining walls and uses the RSSI and phase information measured by RFID readers to localize the target. By differentiating the backscattered signal between adjacent tag pairs, WallSense is able to eliminate most undesirable factors and extract information directly related to the location of the target. By applying Particle Swarm Optimization (PSO) with a novel weighted fitness function and combining the localization result of two orthogonal tag arrays, the system is able to localize the target with high accuracy. Experiments show that the system is able to localize human target with 0.24 m median error. Also, WallSense has low deployment overhead and do not require the users to carry any devices.


Introduction
Currently a heated research topic, indoor localization has applications in health care [1,2], building automation [3], security [4], retail [5], entertainment [6], and assisted living [7,8]. The widely used outdoor positioning solution Global Positioning System (GPS) performs poorly indoors because the direct transmission path it requires is obstructed in indoor scenarios [9]. This gives rise to a series of research papers on indoor localization techniques and test methods [10].
Among those indoor localization approaches, device-free localization methods have more application potential as it doesn't require users to carry any devices or tags [11]. Consider the scenario of elderly care, in which the location of the elderly has to be monitored. Using a device-based localization method would cause extra trouble to the elders as they have to remember to carry the device around. Some elders may have dementia and forget to carry the device. As a result, a device-free method would be highly desirable [12,13]. Video-based methods provide a good solution in public areas [14], but cannot be deployed in private room due to privacy issues [15][16][17]. RF-based device-free localization methods, however, do not require line-of-sight, preserves privacy, and do not have to be in direct contact with the users [11,12]. This makes it ideal in areas such as intruder detection [18], fitness tracking, elderly monitoring and law enforcement such as rescue missions [19].
However, current device-free localization methods either require costly customized hardware, or require a lot of site surveying, which is detrimental to the large-scale deployment of the system. In order to solve this problem, our goal is to build a device-free localization system that is low-cost, easy-to-deploy and have high scalability. In this paper, we present WallSense, a RFID-based device-free localization system built with Off-the-Shelf RFID readers and tags.

1.
Methods based on radio-grid use multiple transceivers to form a radio grid and detecting the target by analyzing the attenuation between the links [28,29]. A training phase is often required to calibrate the parameters of the links. By combining with particle filters with RF tomographic imaging, researchers are able to track a time-varying group of (up to 4) persons with high accuracy [30,31]. On the other hand, however, these methods require densely distributed sensor nodes in small areas to get high accuracy, which lowers its application value.

2.
Methods based on fingerprinting first construct a radio map with the target being at predetermined locations, then determine the location of the target by looking up the radio map [32,33]. TagTrack [34] deploys tags on the floor in a matrix and track human beings using K nearest neighbor (KNN) and Hidden Markov Model (HMM). Its average positioning accuracy is 0.7 m. Li et al. [23] proposed a scheme that boosts accuracy by improving Weighted-KNN (WKNN) algorithm. Through applying principal component analysis and successive cancellation, methods like SCPL are able to detect the number of subjects and simultaneously localize multiple subjects [31,35]. This approach provides reasonable localization accuracy with low hardware cost. However, constructing the radio map would require measuring the RSS values with the target being at a large number of predetermined locations, which is time-consuming and costly. 3.
Methods based on RF backscatter observe the change in the environment by calculating the backscattered signal from reflective objects or passive tags [36,37]. This technique is common in RFID systems that use passive tags, in which tags attached to static objects in the area of interest serve as sensors. D-watch [38] used commodity RFID readers and tags to localize people in rich multipath environments by triangulating the directions that have the greatest power drops. The method has 16.5 cm median error. However, this method requires several antenna arrays to calculate the direction of incoming tag backscatter signals. Moreover, the method requires multiple Impinj GPIO adaptor and antenna hubs, which would introduce attenuation and limits the interrogation range of the system. Tadar [19] develops a high gain directional antenna and combines a multipath propagation model with HMM to realize through wall target tracking. Its median localization accuracy is 7.8 cm in the X dimension and 20 cm in the Y dimension. However, it involves using specifically designed hardware and requires calibration to remove the error caused by tag diversity to get a precise localization result. Also, Tadar requires the knowledge of the distribution of the observations when the object is at a certain location in order to calculate the emission probability of its HMM. Thus, Tadar is only suitable for small-scale through-wall localization applications.

4.
Methods based on radar localize the target using radar methods [39,40]. Witrack [41] proposes a system based on Frequency-Modulated Continuous Wave (FMCW) that is capable of precise device-free localization and gesture recognition. The improved version [42] is able to localize multiple persons by applying successive cancellation. Its median localization accuracy is 10 to 13 cm. However, Witrack is built with a USRP device with high bandwidth and a specially designed T-shape antenna array, which limits the scale of its applications. Other radar-based systems have similar cost issues [43][44][45].

Technical Background
Consider a linear time-variant communication system that multiple transmitters transmit signals to a single receiver through a wireless channel. For a transmitted wireless signal denoted as s(t), the received signal can be expressed as: where h = αe jδ is a complex number known as the channel parameter [46]. α and δ are channel attenuation and phase rotation, respectively. Another property of linear time-variant systems is used: when two sources A and B transmit simultaneously, the received signal can be represented as the combination of the signals from the two sources. This property is known as the rule of linear combination [47], where y A (t) and y B (t) refer to the signal captured by the receiver when there is only A or B exists in the environment respectively. In passive RFID systems, the communication is driven by the reader and the tag modulates the signal backscattered from its antenna to form a response. In common commercial readers, Received Signal Strength Indicator (RSSI) value and phase value are calculated after a tag Electronic Product Code (EPC) is demodulated successfully.

Channel Model
Now we consider the Line of Sight (LOS) path between a reader R and a tag T. In this situation, there are only two channels exists between reader R and tag T: forward channel and backward channel. Ideally, the channel parameters can be represented as [48]: where d RT i is the distance between the Reader and the i-th tag. The θ RT i is the phase shift over the distance d RT i , which can be calculated given wavelength lambda of the carrier wave using the following formula: Due to geometric symmetry of the forward channel and the backscatter channel, it is easy to see that Denote the signal transmitted by the reader as S 0 , the signal reflected from tag T i and received by the reader can be represented as However, in a real indoor environment, the signal is affected by multipath effect as there are lots of reflectors in the environment. First, consider the scenario that the tags are attached to the inner wall of a room and only static objects like chairs and walls exist in the environment. The tags and readers are all mounted on the walls so that people or other objects of interest do not obstruct the LOS path between the reader and the tags. Reflections caused by these objects can be treated as if they are from a single virtual reflection point W due to the principle of linear superimposing of signals [19].
Then the signal received by the tag can be represented as which is a combined signal of the LOS path and the signal reflected by the environment. S RWT i is given by: In which h RTx is the transmitting parameter of reader antenna, h RW is the channel parameter of the channel between the reader antenna and virtual reflection point W. h w is the parameter introduced by reflecting at W, h T i Rx is the receiving parameter of tag antenna.
So, we have: As is shown in Figure 1, if a moving object X enters the area of interest, it will introduce a third signal path propagating from the reader antenna, reflected by object X then received by the tag antenna. In this scenario, the signal received by the tag is given by: where S RXT i denotes the signal introduced by the moving object. S R i denotes the signal reflected by tag T i and received by the reader.

Data Preprocessing
In order to remove the interfering parameters, we perform operations as follows: First, by subtracting (5) from (11), we get where is the tag-reflected signal when object X is present, and is the tag-reflected signal when object X is absent.
Since the signal path that is introduced by the reflection of the surrounding environment and the target are much weaker than the LOS path, here we assume that the signal that is reflected twice during the round trip between the reader antenna and the tags can be negligible. Also, due to geometric symmetry, parameters like ℎ is equal to its backward counterpart ℎ . Equation (12) is then simplified as: Divide the result among the neighboring tags, we get Here we assume that the tags are all of the same type and adjacent tags are close to each other. So that the differences of ℎ of adjacent tags can be neglected. Since the locations of the readers and the tags are already known, ℎ can be calculated using Equation (3), thus, only ℎ component remains unknown.
By definition, ℎ is the loss of the X to path. It is a function of the distance between the tag and the moving object. It has the same form with ℎ . In light of this, ℎ /ℎ can be expressed as: Variable is the phase shift over the distance between the moving object and the i-th tag. According to Equation (15), ℎ ℎ ⁄ can also be expressed in the form of Rssi and phase value, and the phase value is: According to Equation (4), we have:

Data Preprocessing
In order to remove the interfering parameters, we perform operations as follows: First, by subtracting (5) from (11), we get where S R i is the tag-reflected signal when object X is present, and S R i is the tag-reflected signal when object X is absent.
Since the signal path that is introduced by the reflection of the surrounding environment and the target are much weaker than the LOS path, here we assume that the signal that is reflected twice during the round trip between the reader antenna and the tags can be negligible. Also, due to geometric symmetry, parameters like h T i R is equal to its backward counterpart h RT i . Equation (12) is then simplified as: Divide the result among the neighboring tags, we get Here we assume that the tags are all of the same type and adjacent tags are close to each other. So that the differences of h T i Tx of adjacent tags can be neglected. Since the locations of the readers and the tags are already known, h T i R can be calculated using Equation (3), thus, only h XT i component remains unknown.
By definition, h XT i is the loss of the X to T i path. It is a function of the distance between the tag and the moving object. It has the same form with h T i R . In light of this, h XT i+1 /h XT i can be expressed as: Variable θ XT i is the phase shift over the distance between the moving object and the i-th tag. According to Equation (15), h XT i+1 /h XT i can also be expressed in the form of Rssi and phase value, and the phase value is: According to Equation (4), we have: where n is an integer introduced due to phase wrapping, ∆d i is the difference between distances to the location of the target. To eliminate the ambiguity caused by n, a popular method is to deploy tags with a small interval. In this case, the range of ∆d i must be smaller than the wavelength of the carrier wave to prevent phase ambiguity. For a tag array that is infinitely long, the range of ∆d i is two times the interval between the tags. Therefore, the spacing of the tags should be less than half of the carrier wavelength. For each tag pair, ∆d i is determined, thus we know that the location of the target is on a hyperbola for which ∆d i is the focal distance and the locations of the two tags are the foci.

Particle Swarm Optimization
From Section 3.1 we know that the target location is on the hyperbolas with the tag pairs as their foci. The traditional method computes the target location by solving the points of intersection of the hyperbolas. However, this method not only has high computational costs, but also has low localization accuracy due to the low Signal to Noise Ratio (SNR) of backscattered signal.
Another approach to address the issue is by finding the position that most likely produces the set of ∆θ values observed. We use Particle swarm optimization (PSO) algorithm to solve this problem.
PSO algorithm is an efficient evolutionary computational technique for dealing with complex optimization problems. It is motivated by the behavior of a bird flock searching for food, in which birds tend to move towards the position with the most food that has been found by the flock. In each iteration of the algorithm, the basic component of the algorithm referred to as a particle, move toward the best performing particle and the best position found by the particle itself. After updating the positions of the particles, the evaluation of each particle is calculated, and the best positions are updated [49,50]. The particles will converge on the best position found by the particle swarm, thus solving the optimization problem. The algorithm is efficient and can easily benefit from multithread computational acceleration.

Positioning Using PSO Algorithm
WallSense treats the positioning problem as an optimization problem. By performing preprocessing, WallSense transforms RSSI and phase values to phase difference from the moving object to each tag pair. For each position in the area under surveillance, theoretical phase difference values of all the tag pairs can be calculated since the position of all the tags are already known. Thus, the positioning problem is transformed into an optimization problem in which the error between the measured phase difference values and the theoretical phase difference values is minimized.

Objective Function
For a set of measurements, WallSense first calculates the∆θ i values according to the processes described above. For a particle that has position value X q , WallSense generates the theoretical ∆θ i X q values according to the model. The output of the objective function is the Euclidean distance of the two set of ∆θ values.
Taking measurement noise of the reader into account, the signal measured by the reader when the target is not in the environment can be expressed as: In which ε represents measurement noise. The signal measured by the reader when the target is in the environment can be expressed as: Since all the measurements are taken with one reader, we assume the noise terms of all the measurements have the same parameters. By subtracting the signals measured without the target object in the area from the signal measured with the target object in the area, we extract the signal that transfers through the extra propagation path introduced by the target object. Subtracting (18) from (19), we get: In which, The SNR of the i-th tag, SNR i , can be expressed as: Since the power of this signal is in reverse relation with the distance between the tag and the target object, signal backscattered from tags closer to the target object tend to have higher SNR.
Although the distance between the target and the tag pair is still unknown, for an array of tags that is uniformly arranged in a direct line, the tag pairs closer with the target object have smaller distance difference to the target, thus they also produce smaller ∆θ values. Thus, we weight the error of each tag pairs with a term e −|∆θ i | , to give more importance to the tag pairs that has smaller ∆θ values, as they are more probable to be closer to the target object.
Note that ∆θ i X q −∆θ i is weighted with e −|∆θ i | , which is negatively correlated with the distance between the tag pairs and the moving object, thus reducing the influence of outlying tag pairs, which tend to have higher error because of the reflected signal is weaker.

Swarm Initialization, Inertial Weight, Learning Factors and Population
On each dimension, WallSense initialize the positions of the particles randomly based on a uniform distribution defined in the area of interest.
The initial velocity of each particle is set to half of the distance between the particle and a random position in the area of interest. For each dimension d, the initial velocity of the n-th particle is: where x(0) n,d is the initial location of the n-th particle in dimension d, x min,d and x max,d are the lower and upper bound of the location of the particles in dimension d. To promote exploration in early optimization stages and reduce oscillation in later stages, WallSense uses a linearly decreasing inertial weight defined by [49]: where w 0 is the starting value of inertial weight, w min is the desired minimum value of inertial weight and T max is the total number of iterations. T max is set to 100.
To get the best performance, WallSense used PSO algorithm and a training set to let the PSO learn the best learning factors for solving this positioning problem.
The swarm population N is calculated according to the empirical formula [50] where D = 2 is the dimension of the problem and Int() is the integer part function.

Enhancing Localization Accuracy and Robustness
To further enhance the localization accuracy and robustness of the system, we adopted a technique to locate x axis and y axis of the target object separately. Because the location of the target is basically the intersection of all the parabolas defined by the tag pairs and ∆d i , one tag array tends to have high localization accuracy on the axis that is parallel to the tag array but have very low accuracy on the axis that is orthogonal to the tag array. We then used two separate tag arrays to locate x axis and y axis respectively. As is shown in Figure 2, the circle shows the ground truth. The accuracy difference of one array on the two axes can be very large. By discarding erroneous results and combining the accurate axis of the two arrays, this method can achieve higher accuracy compared to locating x axis and y axis using data from the two tag arrays at the same time. This is because when combining the data from the two tag arrays, the bad performance that one array has on the orthogonal axis would affect the good performance of the other array, resulting in worse overall performance.

Enhancing Localization Accuracy and Robustness
To further enhance the localization accuracy and robustness of the system, we adopted a technique to locate x axis and y axis of the target object separately. Because the location of the target is basically the intersection of all the parabolas defined by the tag pairs and ∆ , one tag array tends to have high localization accuracy on the axis that is parallel to the tag array but have very low accuracy on the axis that is orthogonal to the tag array. We then used two separate tag arrays to locate x axis and y axis respectively. As is shown in Figure 2, the circle shows the ground truth. The accuracy difference of one array on the two axes can be very large. By discarding erroneous results and combining the accurate axis of the two arrays, this method can achieve higher accuracy compared to locating x axis and y axis using data from the two tag arrays at the same time. This is because when combining the data from the two tag arrays, the bad performance that one array has on the orthogonal axis would affect the good performance of the other array, resulting in worse overall performance.

Algorithm Summary
The discussion above has shed light on how to extract the reflection of the moving object as features and how to track the position of the moving object by using PSO algorithm. By putting them together, we get the following algorithm below: Step 1: WallSense learns the backscatter signal that involves reflections from static objects in the environment with tags attached to the wall.
Step 2: When the object of interest is in the test environment, WallSense measures the backscatter signal of each tag at each frame.
Step 5: WallSense calculates ℎ /ℎ by removing ℎ ℎ ⁄ according to the deployed locations of the antennas and tags.
Step 6: The set of ∆ is fed into the PSO algorithm to determine the location of the target object. To boost accuracy and robustness, the objective value is weighted with ∆ for each tag pairs, and the X and Y coordinate are calculated separately with data collected from two orthogonal tag arrays.

Algorithm Summary
The discussion above has shed light on how to extract the reflection of the moving object as features and how to track the position of the moving object by using PSO algorithm. By putting them together, we get the following algorithm below: Step 1: WallSense learns the backscatter signal S R that involves reflections from static objects in the environment with tags attached to the wall.
Step 2: When the object of interest is in the test environment, WallSense measures the backscatter signal S R of each tag at each frame.
Step 5: WallSense calculates h XT i+1 /h XT i by removing h T i+1 R /h T i R according to the deployed locations of the antennas and tags.
Step 6: WallSense calculates ∆θ i according to Equation (15). Step 7: The set of ∆θ i is fed into the PSO algorithm to determine the location of the target object. To boost accuracy and robustness, the objective value is weighted with e −|∆θ i | for each tag pairs, and the X and Y coordinate are calculated separately with data collected from two orthogonal tag arrays.

Implementation
To evaluate the performance of WallSense in real world applications, we build a prototype of WallSense using COTS RFID reader and tags.

Hardware
We use an Impinj Speedway R420 model [51] with manufacturer provided firmware and software. The reader is compatible with EPC Class 1 Generation 2 tags. It operates in 920 MHz~926 MHz band and provide an interface for acquiring Rssi and phase data for each successful identification.
The inlay of the tags used in our experiment is AZ9662 with Higgs-3 chip [52]. Before the experiment, the tags are tested using Voyantic Tagformance Pro [53] to ensure that they have similar frequency response, thus eliminating the h Ti factor in (12). Tags that have bad performance are considered defective tags and are not used in our experiments. The Tags are arranged on foam boards for performance issues when attached directly on concrete walls. The spacing between adjacent tags is 15 cm.
The antennas used in our experiments are Laird S9028PCL circular polarization antennas [54] with 9dBi gain. The size of the antennas is 25.5 cm × 25.5 cm × 3.2 cm. The maximum read range of the RFID system equipped with this antenna is about 10~12 m.
We use a BOSCH GLM 30 laser rangefinder [55] to measure and calibrate the location of the antennas and tags. The location of the targets is measured with a tape measure with the help of a grid drawn on the floor.

Software
Because the MultiReader software provided with the R420 readers does not provide phase information and cannot save more than a certain number of records, we developed a windowed software using Impinj Software Developer's Kit (SDK) [56] to collect Rssi and phase data. The software is able to control readers that support the Low Lever Reader Protocol (LLRP) [57] through Ethernet cables and save the inventory history to a file. Localization algorithm is implemented in Matlab. The software and localization process run on a laptop with Intel I5-7300HQ CPU operating at 2.5 GHz and 8 GB memory. During the experiments, the read mode of the reader is set to MaxThroughput so that the reader dynamically adjusts the number of time slots in each frame based on the estimated tag population. Note that in this mode, the tags respond with FM0 coded bursts that have the highest data rate. This enables the reader to identify more than 200 tags per second.

Evaluation
In this section, the performance of WallSense is evaluated from aspects of localization accuracy, impact of distance to the tag array and impact of carrier frequency. The experiments are conducted in a large empty room of 11 m × 9.3 m × 3 m. The room has concrete wall, ceramic tile flooring and suspended ceiling with metal hangers and gypsum tiles. Metal ceiling fans are mounted on the ceiling. The experimental setup is shown in Figure 3  WallSense collects a set of RSSI and phase data of the tags when no target is in the area of interest as the reference. Note that this process only takes seconds and is very different from constructing a traditional radio map. We tested 120 uniformly distributed random positions in the area of interest. At each location, we collected the inventory data for 1 second and calculate the average RSSI and phase value to use as one sample. Of the three human targets, a total of 360 samples were collected. WallSense collects a set of RSSI and phase data of the tags when no target is in the area of interest as the reference. Note that this process only takes seconds and is very different from constructing a traditional radio map. We tested 120 uniformly distributed random positions in the area of interest. At each location, we collected the inventory data for 1 second and calculate the average RSSI and phase value to use as one sample. Of the three human targets, a total of 360 samples were collected.

Localization Accuracy
First, we evaluate the localization accuracy using one set of tag array and antenna. On each tag array, 21 tags are used to localize the target. Analyzing the localization result of both arrays, we found that the average localization accuracy of reflective box target is 0.18 m on the parallel axis, 1.60 m on the orthogonal axis. The average localization accuracy of human targets is 0.12 m on the parallel axis and 1.14 m on the orthogonal axis. Note that the localization error is defined as the distance between the localization result and the ground truth value. Figure 4 plots the localization accuracy of the system using two sets of tag arrays. The median localization error of the proposed method with human targets is 0.24 m, which is accurate considering the size of the human body. It can be seen on the figure that WallSense have high robustness by performing PSO twice. Using weighted PSO, WallSense yields a much better result than Least Squares (LS) based methods. The PSO algorithm converges in 30 iterations on average, which takes about several milliseconds.

Localization Accuracy
First, we evaluate the localization accuracy using one set of tag array and antenna. On each tag array, 21 tags are used to localize the target. Analyzing the localization result of both arrays, we found that the average localization accuracy of reflective box target is 0.18 m on the parallel axis, 1.60 m on the orthogonal axis. The average localization accuracy of human targets is 0.12 m on the parallel axis and 1.14 m on the orthogonal axis. Note that the localization error is defined as the distance between the localization result and the ground truth value. Figure 4 plots the localization accuracy of the system using two sets of tag arrays. The median localization error of the proposed method with human targets is 0.24 m, which is accurate considering the size of the human body. It can be seen on the figure that WallSense have high robustness by performing PSO twice. Using weighted PSO, WallSense yields a much better result than Least Squares (LS) based methods. The PSO algorithm converges in 30 iterations on average, which takes about several milliseconds.
We also evaluated the accuracy of WallSense when the reader was working at different frequencies. The results show that the localization accuracy remains stable with the change of carrier frequency.    We also evaluated the accuracy of WallSense when the reader was working at different frequencies. The results show that the localization accuracy remains stable with the change of carrier frequency. Figure 5 compares WallSense with other device-free indoor localization methods. Keep in mind that WallSense is a low-cost solution that only use off-the-shelf products and don't require site surveying and carried devices.  Figure 5 compares WallSense with other device-free indoor localization methods. Keep in mind that WallSense is a low-cost solution that only use off-the-shelf products and don't require site surveying and carried devices.

Impact of the Number of Deployed Tags
To evaluate the impact of the number of deployed tags on the performance of WallSense, we compared the performance of the methods with the data of different number of tags in each tag array. The result is shown in Figure 5b.
For each method tested, the localization error first drops, then rises with increasing number of deployed tags. This is because when the number of deployed tags is below a threshold (about 15~19 tags each array), the information provided by the tags is not sufficient to rule out the influence of noise. When the number of deployed tags is beyond the threshold, the added tags are further away from the center of the tag array, these tags have low SNR and thus lower the localization accuracy of the system. However, it is possible to solve this problem by adding a tag-selection strategy for the particles. We implemented a strategy in WallSense that only picks a certain number of tags that are closest to a particle when calculating its fitness value. We found that the system is able to achieve a good overall result that is close to the result when an optimal number of tags are deployed. Using this method, WallSense can deploy as many tags as possible without worrying about lowering its accuracy. However, as is shown in Figure 6, there are rare cases in which the localization result become worse. Further studies into this subject are needed to improve the robustness of this method.

Impact of the number of deployed tags
To evaluate the impact of the number of deployed tags on the performance of WallSense, we compared the performance of the methods with the data of different number of tags in each tag array. The result is shown in Figure 5b.
For each method tested, the localization error first drops, then rises with increasing number of deployed tags. This is because when the number of deployed tags is below a threshold (about 15~19 tags each array), the information provided by the tags is not sufficient to rule out the influence of noise. When the number of deployed tags is beyond the threshold, the added tags are further away from the center of the tag array, these tags have low SNR and thus lower the localization accuracy of the system. However, it is possible to solve this problem by adding a tag-selection strategy for the particles. We implemented a strategy in WallSense that only picks a certain number of tags that are closest to a particle when calculating its fitness value. We found that the system is able to achieve a good overall result that is close to the result when an optimal number of tags are deployed. Using this method, WallSense can deploy as many tags as possible without worrying about lowering its accuracy. However, as is shown in Figure 6, there are rare cases in which the localization result become worse. Further studies into this subject are needed to improve the robustness of this method.

Cost
Low cost is a major advantage of our method compared to previous solutions. Utilizing only offthe-shelf readers and tags, WallSense is able to cover one room with two sets of tag array and two antennas. Due to the low cost of RFID tags (about $0.1 each), the tag arrays cost only several dollars

Cost
Low cost is a major advantage of our method compared to previous solutions. Utilizing only off-the-shelf readers and tags, WallSense is able to cover one room with two sets of tag array and two antennas. Due to the low cost of RFID tags (about $0.1 each), the tag arrays cost only several dollars in total. The antennas cost about $200. In our experiments, we adopt ImpinJ R420, a powerful reader which costs about $2000. But in real applications, this system can be deployed with cheaper readers such as the ThingMagic readers, which cost about $700. Furthermore, as most RFID readers support 4 or more antenna port, two adjacent rooms can share one reader.
Although the location of the antennas and tags are required, the method requires no radio map and the target person doesn't have to carry any additional devices.

Conclusions
In conclusion, WallSense is the first device-free indoor localization system that utilizes wall-mounted tag arrays to provide accurate indoor localization. By combining a PSO-based localization algorithm with a weighted objective function and deploying orthogonal tag arrays to locate x and y axis of the target location separately, WallSense is able to accurately and robustly locate human beings in an indoor setting. Comprehensive experiments prove that WallSense is an effective and promising indoor localization method that can strike a good balance between cost and performance.

Conflicts of Interest:
The authors declare no conflict of interest.