Towards Sub-Meter Level UWB Indoor Localization Using Body Wearable Sensors

Thanks to its ability to provide sub-meter level positioning accuracy, Ultrawideband (UWB) has found wide use in several wireless body area network (WBAN) applications such as ambient assisted living, remote patient management and preventive care, among others. In spite of the attractiveness of UWB, it is not possible to achieve this level of accuracy when the human body obstructs the wireless channel, leading to a bias in the Time of Flight (TOF) measurements, and hence a detection of position errors of several meters. In this paper, a study of how a sub-meter level of accuracy can be achieved after compensating for body shadowing is presented. Using a Particle Filter (PF), we apply UWB ranging error models that take into consideration the body shadowing effect and evaluate them through simulations and extensive measurements. The results show a significant reduction in the median position error of up to 75 % and 82 % for simulations and experiments, respectively, leading to the achievement of a sub-meter level of localization accuracy.

have been developed [9]. Among these technologies, UWB has gained a lot of attraction recently because it presents several benefits in relation with location applications, given by decimeter-level location estimates, immunity to fading, low power transmission and low-cost implementation. In fact, smartphone manufacturers such as Apple have now included an UWB interface in their latest iPhone 11 series, and other companies such as Samsung and Huawei are expected to follow suit [10]. In addition, tools based on deterministic methods such as in [11] are now being developed to test UWB systems for ranging applications. However, limitations in UWB are mainly given by wireless channel impairments, such as by errors in the determination of received signal strength (RSS) and time of flight (TOF) components due to signal blockage mainly in non-line of sight (NLOS) conditions. The NLOS occurs when the direct path of the signal between the wearable and anchor, (referred to as TAG and ANC throughout this paper, respectively), is obstructed such that the signals are reflected, diffracted and/or attenuated.
In wearable technology, NLOS can be caused by the body of the user of the TAG resulting into an effect known as FIGURE 1. Absolute mean position accuracy of popular on-body wearable positions using UWB TOF [7]. Only the head position can generate an error that is similar to tripod (best case scenario without any obstruction). The rest of the wearable positions generate a certain amount of body shadowing under NLOS which essentially affects the position accuracy. In fact it can be observed that the chest and arm wearable positions generate errors over 1m, which is unacceptable when using UWB TOF according to the-state-of-art [8].
body shadowing. This effect results into additional propagation losses for RSS and biases in the TOF measurements, and hence, a detection of position errors spanning from a few to several meters [see - Fig. 1]. But as a stand-alone technology for localization, an accuracy of 15cm-1m is expected when using UWB TOF [8], which is the case when TAG is worn on particular positions of the user rather than in each and every popular wearable position. Therefore, it is necessary that body shadowing is mitigated or compensated so that it is possible to achieve a sub-meter level accuracy regardless of where the TAG is mounted on the user.
Although its effects somewhat documented in [12]- [18], body shadowing is often neglected or underestimated as several positioning systems validate their performance by moving the sensor on a tripod, which essentially does not include the human body [19]. In the literature, works using ray-tracing [12], empirical techniques [13], and finite difference time domain [14] have analyzed the body shadowing in UWB ranging. TAG attachment position effects in off-body UWB wireless channel characterization have been presented in [20], for the case of still body and LOS conditions. Dynamic UWB on body channel modeling for path loss estimation has been reported in [21], in anechoic chamber measurement conditions, for hand, arm and ankle positions. Body mass index also influences propagation characteristics in UWB systems, providing statistics valid in quasi-static operating conditions [22].
Additional works in [14]- [18] have gone a step further to model the NLOS error created by body shadowing in to probability density functions (PDFs) such as Gamma by [14] and [15] for a sensor that is handheld, Gaussian by [16]- [18] for a sensor that is mounted on the wrist and chest, respectively. However, the main drawback of these works is that the proposed models: 1) Have been performed for TAG mounted positions that can easily obtain sub-meter level accuracy without any body shadowing mitigation. 2) Or/and have not been evaluated in any positioning application. 3) Additionally, the models have not been validated or used outside the environment in which they were developed. Based on the related work, we present a comprehensive study of how a sub-meter level of accuracy can be achieved after compensating for body shadowing for TAG mounted positions that are known to exclusively generate position errors beyond the acceptable 1m for UWB TOF. In our previous work in [23], ranging error models that take into consideration the body shadowing effect were proposed for popular TAG mounted positions. This paper aims to extend the previous work by exploring the quality of these models under an indoor positioning application using both simulations and experiments. We develop a Particle filter (PF) that employs the relative heading angle (RHA) between the user, TAG, and ANC as well as the aforementioned models to mitigate the effect of the body shadowing. The RHA which is the azimuth of the direction the user of the wearable is facing with reference to an anchor and wearable sensor line, is used to provide a simple method of differentiating between LOS and NLOS channel conditions. According to the obtained median accuracy result (50th percentile value), which is below 1 m, the proposed system is able to provide a more robust performance leading to the achievement of a sub-meter level of localization accuracy. This definition of sub-meter accuracy has been adopted from [24] and [25]. Therefore, the main contribution of this work rests on the mitigation of the body shadowing, returning the UWB accuracy to below 1m, regardless the presence of the human body that carries the UWB TAG.

II. BODY SHADOWING MITIGATION
The aim of this paper is to mitigate the effects of the biased NLOS range estimates as much as possible since its complete removal is somewhat impractical. In this section, we explain the different sub blocks that are required to compensate for the effect of body shadowing. Note that we use the acronyms of TAG and ANC throughout this work to refer to wearable and anchor, respectively.

A. SELECTION OF BODY WEARABLE SENSOR POSITION
The use of TAGs for pedestrian tracking has been widely studied in the literature [4], [26], [27]. These studies show that usually the market determines where the TAG is worn on the body of the pedestrian. For instance, TAGs are positioned at the wrist, head, ankle for tracking of patients in hospitals, miners trapped in mines, and inmates in prisons, respectively. However, as investigated by [7] and [28], these positions have varying levels of accuracy [see - Fig. 1] mainly, because in NLOS each position leads to the different propagation characteristics of the localization signal. Therefore, the focus of this paper is on TAGs mounted on the chest and the arm because their accuracy levels are beyond 1m, which is the expected accuracy for UWB TOF. A possible reason for this performance is that under NLOS the body thorax forms the obstacle between the TAG and the ANC. Therefore, when electromagnetic waves interact with the thorax, more multipath components are generated than any other position on the body [29]. Thus, in an environment with several interacting objects, it is highly likely that errors observed are due to reflections from nearby objects in the surroundings. Moreover, the difference in the performance of the chest and arm mounted TAG positions lies in the thickness and size of the thorax that is obstructing the direct path between the TAG and ANC.
It is worth noting that although the main focus is on the aforementioned TAG positions, the proposed algorithm is also suitable for other positions so as to reduce their inaccuracy levels even further.

B. RELATIVE HEADING ANGLE
The RHA is defined as the horizontal angle between the facing direction of the pedestrian and the direction of TAG-ANC. Therefore, it is computed in (1) as the azimuth of the direction in which the pedestrian is facing (θ) with reference to the azimuth of TAG and ANC direction.
a y , a x and p y , p x indicate the corresponding ANC and TAG x and y coordinates. The RHA is very important because it provides a simple method to differentiate between LOS and NLOS channel conditions. This is possible because there exists a geometric relationship among the pedestrian, ANC, and TAG, which can be exploited to our advantage [see - Fig. 2]. For instance, in LOS situations, there exist a direct line-of-sight between the TAG and the ANC, which can be obtained when the RHA is within the grey shaded area of Fig. 2. However in NLOS, the body fully obstructs the direct path. This scenario can obtained when the RHA lies in the region shaded with black in Fig. 2. The effectiveness of these thresholds has been verified by experiments presented in [30]. It is important to note that the geometric relationship between RHA and the channel condition is determined by the position on which the TAG is worn on the body. This is illustrated in Fig. 2a and Fig. 2b and also summarised by the unit impulse function defined in (5) and (6).
The heading of the pedestrian which is an important part of the RHA could be estimated using a compass, magnetometer or gyroscope [31]. Nevertheless, it is possible to estimate the heading in a different way, without using these additional sensors but taking advantage of the fact that pedestrians tend to move in a specific direction for at least a few seconds. Using the previous and current TAG position estimates, the heading for the next position can be estimated in (2). This method has been comprehensively evaluated by Trogh et al in [19].
where θ t+1 is the estimated heading for the next position, p avg t,x is the average of previously predicted positions p t at time t, and x and y subscript indicate the TAG position x and y coordinates. However, the performance of this estimator which can be built on top of any tracking algorithm without an extra cost on equipment depends: (i) on the accuracy of the tracking algorithm and (ii) the number of previous positions that are averaged i.e, the more the number of previous positions are averaged, the better the accuracy of the estimator.

C. RANGING ERROR MODELS
In the literature there are several methods for mitigating or correcting the NLOS error in positioning systems such as rejecting ranges due to NLOS before trilateration phase [32], selecting the most likely range by analysing the peaks of the multipaths of the signal [33], and applying robust filtering techniques which require a redundant set of beacons [34].
However, a more flexible method models the range error into PDFs. Rather than making Gaussian assumptions, in this work, we try to mitigate the NLOS effect caused by the human body by utilizing the models previously estimated by our group in [23]. The models were obtained through an extensive measurement campaign, in which the measured range errors were fitted to well-known PDFs (statistical distributions). In summary, a combined Gaussian -Gamma and Gamma -Gamma measurement error models for the chest and arm, formulated by (3) and (4), respectively were obtained. The PDFs are mainly a function of the RHA, whose values cover a span 0 • -360 • , identifying LOS and NLOS channel conditions.
More technical details about the methodology of the measurement campaign and the impact of body wearable sensor positions in Fig. 1 on UWB ranging error can be referred in [23].
where is the range error, µ is the mean range error, and σ is the standard deviation (SD) of the distribution, λ and a are shape parameters, k and b are scale parameters, c is equal to a 3% of the model's peak to cater for the uncertainty in the measurements, δ(RHA) is a unit impulse function defined in (5) and (6) that differentiates between LOS and NLOS channel conditions i.e., set to 0 for LOS and 1 for NLOS, for the chest and arm mounted TAG, respectively. The difference in the partitions is due to the fact that unlike the chest mounted TAG defined in (5), the arm mounted TAG defined by (6) is located sideways with respect to the direction in which the pedestrian is facing.

D. POSITIONING USING A PARTICLE FILTER
In order to estimate the position of the moving pedestrian, a PF tracking algorithm is selected for this work. Unlike the Kalman Filter and its subsidiary the Extended Kalman Filter which are the most widely used estimation algorithm, but suffer when the error (noise uncertainty) or measurement models cannot be well approximated by a linear function, the PF is a powerful class of algorithm, which can employ noise distributions of any form.
In the literature, PFs, or sequential Monte Carlo recursive methods have been studied over the last years, in order to increase accuracy in location and positioning applications [35]. Different conditions and implementations have been considered, such as NLOS in narrow-band systems [36], positioning optimization in wireless sensor networks [37] or enhancement of positions and orientation estimations [38]. The analysis on positioning bounds [39], the use of techniques such as map re-calibration [40] and [41] or multiple data fusion [42] provide further enhancement in PF -based location. These results have also been extended to the case of UWB systems, proposing Generalized Gaussian Mixture filters [43] or the use of round trip time [45] information to increase location accuracy. A comprehensive description in the use of PF is provided in Table 1. However, up to now, NLOS effect caused by the human body on UWB wearable tags for positioning hasn't been studied, nor mitigation effects proposed.
Therefore, for this work, a PF tracking algorithm which applies the error models in (3) and (4) is implemented. These models which take into consideration the human body shadowing are utilised as the measurement likelihood function in the measurement/observation model of the PF. This is in contrast to works that do not utilize any body mitigation technique, and hence employing a Gaussian function as the measurement likelihood function. The PF workflow in this paper has been applied in relation to the following blocks: initial particle location, state transition function, measurement likelihood function, resampling policy, and state estimation method, which have been found to be sufficient and recommended by Gustafsson et al [35] in solving several positioning, navigation, and tracking problems.
To use the PF, the number of particles (N) is set. The initial location of the particles is specified as a state vector with three spatial states defined in (7) as i.e., p x , p y and p z using the mean and SD (σ x , σ y , σ z ).
In the system model (state transition function), the particles are evolved to the next state using mathematical equations in (8) and (9) for scenarios with and without body shadowing mitigation, respectively. These equations model the motion of the pedestrian utilising the speed (v), the time between consecutive range measurements t. However, in (9), the heading (θ) direction of the pedestrian is also utilized since its available i.e., the error models in (3) and (4) utilise the RHA, and hence, making the heading information readily available.
t is equal to the time difference between ranging timestamps t and t − 1, w k is the process noise, modeled as a white noise acceleration with covariance matrix defined in (10). The uncertainty that model the acceleration driving noise of the dynamic model in the x, y, and z directions is given by σ ax , σ ay , and σ az , respectively. During the implementation of the VOLUME 8, 2020 PF in this work, setup configurations and parameter settings are tabulated in Table 2 and Table 3 for all simulations and measurements, respectively.
The measurement/observation model has the form: where z t is the current measurements vector containing the range measurements between the TAG and ANC defined in (12), h is the measurement non-linear function, and n t is the measurement noise. The ranges between the TAG and ANC take on the following form: where z i,t is the measured range between the i th ANC at the position a x,i , a y,i , a z,i , and TAG with current position estimates at p x , p y and p z defined in (7). After predicting the next state, the measurements from sensors are used to correct the predicted state. This is achieved by specifying a measurement likelihood function, which corrects the predicted particles using the correct function. By definition, the measurement likelihood function gives a weight for each particle based on a given measurement. In situations where the effects of body shadowing are neglected, the measurement likelihood function takes on the form of a Gaussian PDF defined in (13), hereby explicitly underestimating the impact of NLOS created by the human body for a Gaussian function fails in predicting biased TOF measurements. In (13), is the range error, µ is the mean range error, and σ is the SD.
However, when mitigating the effects of body shadowing for wearable positions in Fig. 1, the measurement likelihood function is defined by the mixtures of Gaussian -Gamma in (3) for chest and handheld mounted TAGs and Gamma -Gamma in (4) for arm, wrist, thigh, and ankle mounted TAGs [23]. The similarity or difference in the measurement likelihood functions for the different wearable positions can be attributed to how the different body regions (thorax for chest and handheld, limbs for arm, wrist, thigh, and ankle) on to which the TAGs are attached interact with UWB waves.
The final position of the pedestrian as predicted by the PF is estimated (state estimation method) by taking the weighted sum of the particles. Resampling of particles is done to update the estimations as the state changes in subsequent iterations.

III. SIMULATION FRAMEWORK
The idea for simulating the pedestrian (user of the TAG) is to test and compare the body mitigation model validity and generality.
In building the simulation framework, a sensor system that models receiver ranging data was built in Matlab 2019b. This conventional location system did consist of several ANCs at fixed positions and a TAG to be located. Bearing in mind that both the inherent noise in the sensor and body shadowing are potential sources of noise, the range between the TAG and the ANC were modeled as defined in (14). In the simulation, we considered ranging in 3-D. This is realistic of a real world scenario where the ANC heights as well as the different  Fig. 1 can be obtained in [23].
heights of the wearable TAG are considered. with where d i andd i are the real or Euclidean distance and the measured range between the i th ANC and TAG, respectively which is obtained using the TOF technique, ψ i is the inherent noise of the TAG, and S i is the extra bias due to the presence of the body. Therefore, depending on the RHA that is computed in (1), the appropriate noise amount due to the presence of the body was added to the real or Euclidean distance using the error models formulated by (3) and (4), for the chest and arm mounted TAGs, respectively. The parameters for the corresponding error models were considered according to Table 4, chosen from our previous work in [23]. In addition, ψ i was modeled as a low-sigma Gaussian distribution (±0.1 m) around zero error [47].

A. EVALUATION OF HEADING ESTIMATOR
Before implementing the heading estimator to compute the estimated RHA, we owed to find out the optimum number of previous points to use in the formula in (2). Using the framework previously described in Section III, a simulation was performed to evaluate the heading estimator: three paths were outlined on a floor plan as seen in Fig. 3.
The first path in green was straight and had no turns, the second path in blue was semi-complex with a few turns (4 turns), and the third path in red was rather complex with several turns (10 turns). The ranges corresponding to the positions from the path were obtained according to (14) for cases where the noise sources were: i) the inherent noise in the TAG and ii) body shadowing. The obtained ranges were used as input for the PF tracking algorithm described in Section II-D, and the positions predicted by the tracking algorithm were used to estimate the heading using the equation in (2).
The mean absolute error (MAE) in Fig. 4 which is obtained from the heading error (heading estimate minus the true estimate) is compared against the number of previous positions taken into consideration in (2). As expected, the estimated  heading MAE is higher when there is more noise added, i.e., error in Fig. 4b is higher than in Fig. 4a. Similar to the work in [19], Fig. 4 shows that in the semi-complex and complex paths, the heading error decreases first when more previous positions are utilized, due to averaging out of the inaccuracies, but later the heading error increases due to the increasing turns taken. On the contrary, in the straight path, the heading error continuously decreases as more previous positions are taken into account as there are no turns.
On the contrary to [19], we go ahead to show that the complexity of the path has little effect on the heading error obtained since it can be observed that all the paths reach the optimal heading error (in fact numerically similar) using almost the same number of previous positions. In Fig. 4a and Fig. 4b, the lowest MAE of 3.6 • and 14.5 • is obtained when 10 and 16 previous positions are considered, respectively. In this work, 16 previously predicted positions have been considered in (2).  Fig. 6, we show the ranging error for the chest and arm mounted TAGs versus the RHA. Contrary to the works in [12]- [18] which analyse a particular set of RHAs, the RHA values here cover a span between 0 • -360 • . This infers that the simulation results are fair and not limited to a particular range of RHA values. As expected the range error is highly unstable for the RHAs that lie in the NLOS conditions since we observe errors of several meters. However, in Fig. 6a, the errors in the NLOS are a lot higher and widespread than in Fig. 6b. The reason is that under NLOS the chest generates a large area of shadow over the TAG than when the TAG is positioned on the arm. This scenario presents a challenging NLOS situation that does not allow the signal to arrive directly or by creeping waves around the body, but by reflections on surrounding objects.

C. POSITIONING PERFORMANCE SIMULATION
In this section, we analyse the performance of the PF-based tracking algorithm utilizing the body shadowing mitigation models. This analysis considers the RHA computed from the heading obtained: (i) accurately through classical compass information and (ii) estimated according to (2). However, as a reference for further comparisons, preliminary simulations were performed to analyse the performance of the PF as follows: 1) Without the presence of the body (similar to having a TAG localized when mounted on a tripod), 2) Without the usage of the body shadowing mitigation models (No mitigation). In both sets of simulations, the PF algorithm in the previous section is implemented with the setup configurations and parameter settings tabulated in Table 2. The coordinates of the first ground-truth points were the initial inputs into the state vector in (7). As illustrated in the previous section, the range were generated by adding the appropriate noise i.e., ψ i , S i to the Euclidean distance according to (14). Every time a new range was obtained from the ANCs, the particles are propagated according to the state update function in (8) or (9), depending on whether body shadowing mitigation is triggered or not.
During mitigation, in the observational model function, a subset of weights for particles was computed by utilizing the measurement likelihood function defined by the equation in (3) and (4) for chest and arm mounted TAGs, respectively. However, for the scenarios without the without body shadowing mitigation, the measurement likelihood function is defined in (13) with parameter settings N (0, 0.1) [47]. Finally, from the weighted mean position of all particles, the positions were estimated.
In evaluating the performance of our proposed method, the MAE, SD, 50th and 95th percentile of the error are the metrics used. These are recommended by the ISO/IEC 18305 standard for testing and evaluation of localization and tracking systems [48]. The error is defined as the Euclidean distance between the actual position and the estimated one, regardless the distance to the anchors. In Fig. 7, we show the estimation of the ground-truth positions for simulating a TAG localized when mounted on a tripod, chest, and arm mounted TAGs for several scenarios. To better see the performance results, we present the main statistics of the simulations in Fig. 8 and Table 5. It is seen from the tracking paths obtained in Fig. 7a and Fig. 7d that body obstruction influencing the LOS/NLOS condition between TAG and ANC will lead to large position errors. Using the summary of the statistics in Fig. 8, it is observed that this leads to position errors over 1 m for both TAG mounted positions. However, similar to the work in [7], the chest mounted position generates larger position errors than the arm. It is evident by: (i) the several position fluctuations along the majority of the path due to the biased ranging measurement observed in Fig. 7a than in Fig. 7d, and (ii) SD in Fig. 8a is larger than in Fig. 8b.
To demonstrate the performance of our proposed method, after applying the body shadowing mitigation models, we observe a significant reduction in the position errors [see - Fig. 7b, Fig. 7c, Fig. 7d and Fig. 7e]. In-fact in Fig. 8a It is important to note that the mean position accuracy after applying the body shadowing models is now below 1 m, which is the acceptable for UWB TOF i.e., 0.69±0.53 m and 0.34±0.17 m is obtained when using the estimated and true RHAs, respectively for the chest position while 0.57±0.31 m and 0.42±0.23 m when using the estimated and true RHAs, respectively, for the arm position. Though it has been showed in the simulations that it is possible to obtain sub-meter levels of accuracy utilizing both the estimated and true RHA, the small difference in their respective performances can be attributed to the error in the estimating the heading angle using (2).
Using the simulations data, the 50th and 95th percentile value of the localization accuracy and the improvement of the mitigation method using the true RHA compared to no mitigation are summarized in Table 5. Similar to the MAE VOLUME 8, 2020  and SD in Fig. 8a and Fig. 8b, in Table 5, we notice a significant improvement in the localization accuracy after applying body shadowing mitigation. The median accuracy (50th percentile value) is now below 1 m after applying the body shadowing compensation. Thus, our system is verified to be able to achieve the sub-meter localization accuracy.

IV. MEASUREMENTS DESCRIPTION
Experiments were performed with the aim of validating the simulation results obtained in the previous section. This would in-turn validate the body shadowing models and their impact in mitigating the position errors due to the presence of the human body.

A. EXPERIMENTAL SETUP
The measurements were conducted in a typical lab indoor scenario which is located at department of Electric, Electronic and Communication Engineering of the Public University of Navarra in Spain. As shown in Fig. 9, this environment contained several objects such as walls, computers, monitors, chairs, desks, closets. Also shown is the floor plan of the lab environment in Fig. 5, similar to one utilised in the simulations.
The experiments were conducted with DW 1000 modules manufactured by Decawave since they are best offthe-shelf UWB ranging products available on the market according to [47]. These motes are able to achieve two-way ranging between a TAG and the ANCs with an update rate of 3.57 Hz. During the experiments, the default central frequency of 4 GHz and 110 kb/s data rate were selected. Similar to the simulations, four UWB ANCs were installed at fixed positions with x-y-z position showed in Fig. 5. In computing  the TOF, the DW 1000 motes employ an optimised message exchange scheme in which the TAG sends (broadcasts) a single Poll message received by the ANCs, to which each ANC in turn sends a Response message. The TAG completes the ranging exchange by sending a Final message received by all ANCs. Each device precisely timestamps the transmission and reception times of all the messages. In the Final message payload, the TAG sends the actual transmission time of the Final message itself, along with the send time of the Poll and the times at which it received the responses from each of the ANCs. Therefore, both ANCs and TAG get to have sufficient information to calculate the TOF [49].
A first measurement campaign was carried out to estimate the position without the influence of the body as a reference. This was performed using a TAG mounted on a tripod at a height of 1.77 m and moved along the path starting from ground-truth point 1 and ending at ground-truth point 26 [see - Fig. 5].
In a second campaign, a male subject with 80 kg mass and 1.80 m height was considered. On the subject, the TAGs were mounted on the chest and right arm at the heights of 1.3 m as illustrated in Fig. 10. In order to achieve the best RF performance, the distance between the subject and the antenna was kept at a minimum distance of 10 mm to give the most vertically polarized radiation pattern [50]. The antenna used in the measurements was the Partron dielectric chip antenna, part number ACS5200HFAUWB, which is omnidirectional and almost isotropic.
The subject was made to walk following the path in Fig. 5. Similar to the work in [7] and [51], as the subject moved from the start to end, the measured ranging distance from each of the four ANCs were recorded continuously without stopping using a laptop which was connected to the TAG. At each ground-truth point, the subject stood still for approximately 10 s before moving to the next.
In Fig. 11, we show the different measured ranges between the TAG and the four ANCs. The spikes in the range represent the NLOS situation which cause abrupt changes in position estimation. Note that the spikes in Fig. 11a are a lot larger and more frequent than in Fig. 11b because of the fact that a TAG mounted at chest position is more affected by body shadowing. Additionally, it can be observed that the walking duration of the subject was at-least 300 s.

B. ANALYSIS OF THE POSITIONING PERFORMANCE
In section, we implement the PF localization algorithm utilizing the range measurements obtained from the experiments. The procedure is similar to the one in the previous section except for some changes in PF configurations seen in Table 3. Initially, the values in Table 3 were set empirically, but further tuned to get the best possible results. Because the TAG was fixed on the body, a lower uncertainty in the vertical axis than in the horizontal plane is set. Note that the several  number of particles were tested in both simulations and experiments, however, there were no significant improvement in performance.
During the measurements, the true RHA was computed following (1). On the one hand, the true azimuth of the direction in which the pedestrian was facing (θ) along the path was obtained by following the right-hand rule, with the 0 • facing to the right/East of Fig. 5. This meant that the pedestrian could face in one of the four directions whose azimuths are 0 • , 90 • , 180 • , and 270 • depending on where along the path the pedestrian was. For instance, at the start and end of the path in Fig. 5, the pedestrian's true azimuth was 90 • and 180 • , respectively. By post-processing the signal in Fig. 11, we were able to match each of the ranges with its corresponding true heading. On the other hand, the azimuth obtained from the TAG and ANC direction was computed from the TAG coordinates (location or coordinates of the particles specified from the state vector) and the ANC coordinates.
Unlike in the simulations were the ground-truth of each sample is known, in the measurements, it is necessary to detect the ground-truth points when the subject stood still along the path. In order to achieve this, we performed the following tasks: • Smoothing: a moving average filter with a window empirically set to 4 s was applied to each position component.
• Filtering: To minimize the number of outliers in the estimation, a moving variance with window length of 4 s was applied.
• Clustering: A k-means clustering was applied to the filtered estimates to determine the ground-truth positions (obtained from the centroids). The estimated ground-truth points are showed in Fig. 12. A similar trend is observed between the position TABLE 6. 50th and 95th Percentile of the accuracy with and without body shadowing mitigation using measurement data. estimation utilizing simulations in Fig. 7 and the measurements in Fig. 12. For instance it is observed that without any body shadowing mitigation technique, large errors greater than 1 m are obtained as in seen in Fig. 7a and Fig. 7d as well as in Fig. 12a and Fig. 12d. However, the position estimation significantly improves once the body shadowing mitigation models are introduced as illustrated by Fig. 7b-e and Fig. 12b-e.
In order to gain insight in to the improvements made by body shadowing mitigation, the MAE and SD of the position errors are presented in Fig. 13. Similar to the simulations, it is observed that the tripod scenario presents the best position error estimates, which are decimeter level. After applying the body shadowing mitigation models, we observe a significant reduction in the position errors in Fig. 13 i.e., using the estimated and true RHAs, the accuracy for the chest mounted Note that there is a mismatch of about 1 m on average in the numerical numbers representing the absolute mean position accuracy between simulation-based results and measurement-based results. This difference can be attributed to the fact that the simulation environment somewhat does not fully fit the real environment as it neither considers the obstacles nor the multipath components which are available in any real indoor environments. This is evident in the way the simulation environment is defined in (14) where only the real or Euclidean distance between ANCs and TAGs, the noise generated by the presence of the human body (only obstacle that will always be present for sure) and the inherent noise due to the wearable electronics are considered. This formulation does not include the effects of multipath into the equation, which could essentially generate this kind of mismatch. Notwithstanding the mismatch in the absolute position errors, position error improvement after body shadowing mitigation between the simulation-based results and measurement-based results are of similar order of magnitude, which somewhat validates our ranging error models defined by (3) and (4). For instance, the mean position error improvements account for up to 75 % and 82 % for simulations and experiments, respectively for the chest mounted TAG, and up to 61 % and 50 % for simulations and experiments, respectively for the arm mounted TAG.
Using the measurements data, the 50th and 95th percentile value of the localization accuracy and the improvement of the mitigation method using the true RHA compared to no mitigation are summarized in Table 6. The 50th and 95th percentile value improve in a similar way as the MAE. More specific, the 50th percentile value improves by 82.5%, and 58.1 % for the chest and arm mounted TAG positions, respectively. The 95th percentile improvements are somewhat similar. Similar to the simulations, the median accuracy (50th percentile value) is now below 1 m after applying our mitigation method, which shows that the sub-meter localization accuracy is achieved.
Furthermore, it is observed that using the exact heading has an added value compared to using the developed heading estimator. Looking at the Fig. 13, it can observed that though the significant reduction in the position error has been achieved, a sub-meter level accuracy can only be consistent when the true RHA is applied [see - Table 6 ]. Therefore, using a compass or gyroscope has a significant added value for body shadowing compensation.

V. CONCLUSIONS AND FUTURE WORK
We have presented a demonstration of how a sub-meter level of accuracy can achieved after compensating for body shadowing for wearable sensors positions that are known to exclusively generate position errors beyond the acceptable 1m for UWB TOF. A positioning system based on a Particle Filter which utilises ranging error models for human body shadowing mitigation as well as the relative heading angle between a wearable sensor, anchor, and body of the wearable user has been developed.
Simulations and measurements have been performed to test the validity and generality of the ranging error models as well as their usage in a positioning application. The results show that a reduction in median position error of up to 75 % and 61 % for simulations, and 82 % and 50 % for experiments, for the chest and arm mounted sensors, respectively, leading to the achievement of a sub-meter level of localization accuracy.
In this work, we assumed that pedestrian is moving at a speed of 1m/s and the sampling frequency of the sensors was about 4 Hz, however, adjusting the speed of the pedestrian would require adjusting the sampling frequency of the sensors i.e., the higher pedestrian's speed the higher the sampling frequency. Therefore, future work will involve a study of how the change in speed of the pedestrian and frequency sampling would impact the results obtained.