# Magnetic Matching-Aided Indoor Localization System Based on a Waist-Mounted Self-Contained Sensor Array

Authors: Hu Li; Yu Liu; Liqiang Zhang; Han Wang
Journal: Journal of Sensors
 (2022)

---

## Abstract

This paper presents a magnetic matching-aided indoor localization system based on a waist-mounted self-contained sensor array. Our purpose is to localize and track the elderly in nursing homes through the proposed wearable device to ensure their safety. The device consists of a low-cost 9-axis self-contained sensor array, a microcontroller, and a WiFi transmission module. This system uses the step length and heading-based pedestrian dead reckoning (PDR) framework as the backbone to estimate the user’s position using the averaged inertial data from the sensor array. A magnetic fingerprint matching (MFM) algorithm is introduced to constrain the drift of the PDR system. Meanwhile, we construct a single-step-based hybrid magnetic fingerprint model to improve the low discernibility of the magnetic field. Finally, we propose an augmented particle filter to fuse the PDR and the MFM algorithms to enhance the system performance further. Experimental results show that 95% of the positioning error after fusion is about 1.47 m, which is 99.3% higher than that of PDR, and the average positioning error after fusion is 0.55 m, which is 61.3% higher than that of PDR. Experimental results have successfully validated the effectiveness and high performance of the proposed magnetic matching-aided wearable indoor localization system.


---

## Body

## 1. Introduction

In recent years, sensors have played an essential role in all aspects of people’s lives. For example, they are used in the field of computer security to ensure users’ online safety [1]. Wireless sensor networks and the Internet of Things can be utilized to build an indoor air quality monitoring system to improve the human living environment [2]. With the increase of population aging, the physiological and pathological characteristics of the elderly always bring them a lot of inconveniences; an important issue is the guardianship of the elderly in nursing homes. When the investment in this area increases, people urgently need an intelligent system to solve this problem to reduce the human resources and material and financial resources consumed by elderly care. The combination of sensor technology and elderly care has almost become inevitable. To better serve them, it is imperative to be aware of their location. Guardians can ensure the safety of the elderly by viewing their locations and historical movement trajectories. Once a danger occurs, the historical movement trajectories of the elderly can be used to trace the event and provide a basis for decision-making.Due to the variety of indoor positioning scenes, various indoor localization solutions based on multiple tools such as WiFi [3–5], Bluetooth [6–8], UWB [9, 10], RFID [11], INS [12], infrared [13], and magnetic field [14] have been developed. Infrastructure-based indoor positioning technologies include RFID, Bluetooth, infrared, and UWB. Indoor positioning technologies without infrastructure include INS, WiFi, and magnetic field. Infrastructure-free positioning technology does not require additional equipment, so it is very convenient and low cost, which has attracted a lot of attention.Pedestrian dead reckoning (PDR) is a potential autonomous positioning technology. It uses inertial sensors (accelerometers and gyroscopes) to obtain position estimates. It is often used to estimate the user’s position in two-dimensional space [15]. It does not require any infrastructure and is not easily disturbed by the environment, which has attracted more and more interest from researchers. PDR measures and counts the number of steps, step lengths, and directions of the pedestrians and calculates the walking trajectory and position of the pedestrians. It can provide continuous position estimation, maintaining high accuracy in a short distance. However, it suffers from drift as the walking distance increases, especially heading drift. Therefore, the application space that only uses PDR for localization is limited.Researchers have discovered that the geomagnetic field can be used for indoor localization [16]. The geomagnetic field, which has conspicuous signatures for different indoor areas, can be a feasible solution. Because it has been known that animals use it for navigation [17], the theoretical basis is that the earth’s magnetic field in the indoor environment is distorted by the reinforced concrete structure of the building, internal pipes and cables, and large electromagnetic equipment, resulting in a high degree of inhomogeneity of the magnetic field, so it can be regarded as a kind of location fingerprint used for indoor positioning. Usually, we use the geomagnetic field in an indoor environment in two stages. The magnetic field fingerprint database is constructed in advance in the offline phase. In the online step, the magnetic signals collected to be verified search similar magnetic fingerprints in the fingerprint database; the corresponding position is usually used as the user’s location. The generally used matching method is dynamic time warping (DTW) [18]. However, in the actual indoor environment, the magnetic signal has a very limited discernibility [19]. Usually, in a relatively large indoor environment, the spatial difference of the magnetic field is not so noticeable. Mismatching is the main problem of magnetic fingerprint matching (MFM).There are unavoidable problems in positioning using a single signal source. A reasonable solution is that the positioning system integrates multisource information to improve positioning accuracy. Currently, the research on the fusion of position fingerprinting and inertial measurement has achieved many impressive results. Indoor positioning methods based on inertial measurement often use PDR, which has high positioning accuracy in the short time. Some studies take PDR as the dominant and use position fingerprinting algorithm to correct the cumulative error of the PDR system. The particle filter algorithm composing of motion model, measurement model, and resampling model is a commonly used fusion algorithm [20].We discover several limitations among existing positioning scheme. Firstly, magnetic signal readings are associated with devices’ orientation. When the device changes its orientation, we get different vectors. One may collect and store the magnetic readings of all directions at any location, incurring high training costs. And it is impractical to require the device to keep consistent with the walking path all the time, which is inconvenient.Secondly, there are many mobile phone-based indoor positioning solutions at present. Since the built-in sensors of the mobile phone are consumer-grade and the performance is mediocre, the error of the position estimation obtained by PDR calculation from the data obtained is relatively large, and the accuracy and robustness needs to be improved.Thirdly, in the current magnetic field localization algorithm, the construction of the magnetic fingerprint database is mainly based on the magnetic field information collected by a single sensor, resulting in fewer magnetic field features. In a large indoor environment, it can only provide a very limited discernibility; the accuracy and robustness of magnetic fingerprint positioning need to be further improved. In addition, it is a nontrivial problem to construct a magnetic fingerprint map. While ensuring accuracy, it also needs to consider the convenience and low cost.Finally, the application of smartphones to locate the elderly in an indoor environment still has certain limitations. Many older people do not necessarily use smartphones. In addition, they may put the phone in their trouser pocket, answer the phone, and shake the phone with their hands while walking. These random situations will significantly increase localization difficulty and easily lead to localization failure in many cases.This paper designed a magnetic matching-aided indoor localization system based on a waist-mounted self-contained sensor array. It is a wearable device specially designed for the health of the elderly in nursing homes. The user can easily fix the device on the waist during use. Unlike most indoor positioning solutions that use a single sensor, we use a sensor array on the hardware to collect data. The sensor array consists of four low-cost consumer-grade sensors. We propose an augmented particle filter (APF) based on this hardware scheme to realize the fusion of multisource sensors, including the position predictions of the waist PDR algorithm calculated based on the inertial sensor array and the position predictions of the MFM calculated based on the magnetic sensor array. The proposed positioning scheme solves the issues mentioned above and improves system accuracy and robustness. The main innovations of the work are as follows.(1)
We designed a set of hardware devices based on a self-contained sensor array, consisting of a data acquisition unit, a power supply unit, a communication unit, and a microcontrol unit. The data acquisition unit contains four low-cost consumer-grade motion sensors, forming a sensor array that can simultaneously collect the inertial and magnetic field data. The collected data is transmitted to the host computer through the WiFi module to solve the positioning algorithm(2)
We improve the accuracy and robustness of the PDR. By referring to the literature on sensor array [21], we found that foot-mounted inertial navigation with an inertial measurement unit (IMU) array is indeed beneficial, and the naive approach of combining the inertial measurements by taking the mean value is possible. Therefore, in our waist PDR algorithm, we use the method of averaging the inertial data of the four sensors to enhance the algorithm performance(3)
We proposed a single-step hybrid magnetic fingerprint model, which removes the limitation of the device’s orientation and improves the discernibility of magnetic sequences. Then, we used the single-step hybrid magnetic fingerprint as the basic unit to build the magnetic fingerprint database. The MFM for sensor array makes position predictions for each step of the walking process. There are four groups of output position predictions, which are input into the particle filter fusion algorithm as observations to jointly calculate the optimal particle weights to correct the drift error of PDR(4)
We intensely studied the particle filter algorithm and proposed an augmented particle filter (APF) algorithm based on the sensor array. The position predictions of each step obtained by the PDR and MFM are fused. In the fusion process, the four sets of prediction results obtained by MFM are used as observation values to jointly participate in the weight calculation of each particle to decide the optimal position estimateOur positioning scheme enriches the magnetic field characteristics and enhances the accuracy and robustness of the MFM algorithm and the PDR algorithm by using the sensor array. Finally, the two algorithms are fused by APF to obtain stable and high-precision position estimation. This positioning system can provide high-quality indoor positioning health monitoring services for the elderly in nursing homes.The rest of the work is arranged as follows: Section2 describes the related work. Section 3 describes the system description. Section 4 introduces the positioning algorithms used in our scheme in detail. Section 5 provides the experimental results of the algorithms mentioned above and validates the effectiveness of the proposed magnetic matching-aided wearable indoor localization system. Section 6 concludes the paper and reports the future work.


## 2. Related Work

The main content of this paper is based on the self-designed hardware device, focusing on universal indoor positioning methods such as PDR, magnetic fingerprint matching, and multisource sensor fusion algorithms. Therefore, this section mainly introduces the related research progress from these three aspects.PDR is a fully autonomous positioning and navigation method that is not affected by the external environment. However, PDR is a relative positioning method, and the error will gradually accumulate as the travel distance increases.Retscher et al. [22] fixed the IMU at the foot of the user and proposed a method of zero velocity update (ZUPT) to solve the problem of accumulated error in the PDR algorithm. Zhou et al. [23] presented an activity sequence-based indoor pedestrian localization approach using smartphones. The activity sequence consists of several continuous activities during the walking process. They realized pedestrian localization by matching them to the indoor road network using a hidden Markov model based on the detected activity sequence and reckoned trajectory by PDR. Shi et al. [24] proposed a novel orientation estimation algorithm and gait phase detection algorithm with strong adaptability. The variance and magnitude of the angular rate are adopted to detect the gait. Gu et al. [25] proposed a deep learning-based step length estimation model, which can adapt to different phone carrying ways and does not require individual stature information and spatial constraints. [26] propose a conversion function from a WiFi status value to proximity for localization purposes. Then, a mobile iPhone collects mobility information from IMU, inputs it to the PDR, and combines it with WiFi proximity to perform accurate self-localization and tracking.Magnetic fields are ubiquitous in indoor environments and can be used as a location fingerprint for indoor positioning. However, the discernibility of the magnetic field signal is low, and it is prone to mismatch.Gozick et al. [27] recognized landmarks by matching geomagnetic fields against a geomagnetic map generated from fingerprinting. Bilke et al. [28] uses sensor arrays to design an indoor positioning system that can be used in 2D space, while it needs to collect geomagnetic data of each point in all directions, leading to high training cost. Shu et al. [29] vectorized the geomagnetic data according to each step, used the particle filter algorithm to fuse the position perception and map constraints to improve the discernibility of the magnetic signal, and dynamically adjusted the movement of the particles during the positioning process. [30] proposed a novel indoor localization and tracking approach fusing geomagnetic and visual sensing. They designed a context-aware particle filtering framework and introduced a neural network-based method to extract deep features for indoor positioning. Liu et al. [31] used Euclidean distance constraints with variable search radius to roughly estimate the location of entities and then used iterative interpolation to refine the local indoor magnetic field map (IMM). Finally, they used the multimagnetic fingerprint fusion method to match the magnetic fingerprint based on the refined local IMM and obtain a localization root mean square error of less than 0.3 m. Yeh et al. [32] analyzed the influence of the environment on the magnetometer and proposed the use of a weighted magnetic field component and the k-nearest neighbors algorithm for enhanced precision in indoor positioning. And finally they achieved an average positioning error of 0.76 m.When using a single system for positioning, there are respective advantages and disadvantages, and a reasonable solution is to use multisource fusion technology. The positioning system uses the complementary characteristics of multiple signal sources, which can effectively improve the robust ability and reduce the position error.Haverinen and Kemppainen [33] designed an indoor localization system using a particle filter, which can be used for robot and pedestrian localization. However, this method limits the orientation of the equipment, so it cannot be used in general. Xie et al. [34] presented a novel indoor localization system named MaLoc. It utilizes magnetic sensor data and inertial sensor data on smartphones by a reliability-augmented particle filter. MaLoc does not impose any restrictions on smartphone orientation, and users are free to use their phones in whatever ways they like during localization. However, the algorithmic complexity of the whole system is high. Xia et al. [35] proposed an indoor positioning method for indoor navigation, in which a particle filter combines PDR and received-signal-strength-indicator data using the built-in sensors of smartphones. Map constraints are taken into account to reflect the interior layout of buildings. In our previous work [36], we used magnetic fingerprint matching and PDR to generate the trajectory of the user separately and fuse the two estimated trajectories to produce a precise trajectory by Kalman filter. However, the positioning accuracy of this solution is not high enough to meet the indoor positioning needs.Multisource sensor fusion positioning maximizes the advantages of each system while balancing model complexity and positioning accuracy to obtain stable and reliable positioning performance. Based on the self-designed hardware platform, this paper focuses on the PDR, MFM, and APF positioning methods.


## 3. System Description

In this section, we provide an overview of our system. The system hardware circuit is shown in Figure1. The data acquisition part of the device comprises an array of four low-cost consumer-grade sensors, forming a square. We selected the 9-axis sensor (MPU9250) [37] with a 3-axis gyroscope, 3-axis accelerometer, and 3-axis magnetometer integrated inside.Figure 1
System hardware circuit. (a) The front of the device. (b) The back of the device. (c) WiFi module.
(a)(b)(c)The sensor array transmits data with the microcontroller (STM32F429VGT6) through four IIC channels. At the same time, the microcontroller can communicate with the computer through the serial port with the baud rate of 115200 or the WiFi module (ATK-ESP8266) installed on the device.The positioning algorithm of our system consists of two parts: location database construction and location inference engine. The location database consists of the magnetic fingerprint database that contains (position, magnetic fingerprint) tuples. We use the four sensors in the sensor array to build four independent subdatabases and form an integral database. When performing MFM, we use the data of each sensor to retrieve and match in its corresponding database. The MFM can output four sets of position predictions.The location inference engine performs the PDR, MFM, and APF algorithm. As the motion model of APF, the PDR algorithm can provide continuous position prediction. The MFM algorithm serves as measurement model to provide observations. The APF algorithm fuses the results of the two models between each step to obtain a more accurate position estimation.


## 4. Algorithm Description

As shown in Figure2, we present the system architecture. The system is mainly divided into the PDR module, the MFM module, and the APF fusion module. In the PDR module, we use the accelerometer data for step counting and step length estimation. And we use the accelerometer and gyroscope to tell walking direction reliably. In the MFM module, we firstly use our proposed single-step hybrid magnetic fingerprint to build the offline magnetic fingerprint database of the experimental environment. Then, the MFM algorithm analyzes the user’s position by matching the magnetic signals with the magnetic fingerprint database, selecting the target sequence with the highest similarity for each sensor, and using its corresponding position as the predicted position. Finally, these techniques are combined into the APF that executes per step for higher positioning accuracy.Figure 2
System architecture.


### 4.1. Augmented Particle Filter Architecture

The core module of our positioning algorithm is the augmented particle filter algorithm we proposed. We will introduce the entire positioning algorithm process from the perspective of the augmented particle filter algorithm.The particle filter is often used to estimate the state of a dynamic system. The critical idea of the particle filter is to use a set of particles to represent the posterior probability, in which each particle represents a potential state of the system. In the localization system, the system state here is the user’s position and heading:(1)s=x,y,θ,where x,y represents the user’s position and θ is the heading direction. A particle is a hypothesis for the user’s state with a weight:
(2)Xi=si,ωi,where wi is the weight of the particle, indicating the confidence level of the particle. It is generally calculated by a probability model based on observations. The observations in this system refer to the position predictions of each step obtained by the magnetic field positioning method. The larger the particle’s weight, it means that we have a higher degree of confidence that it is close to the user’s actual state. Therefore, a probability distribution of the user’s actual state can be expressed through such a set of particles.The fundamental particle filter algorithm includes three necessary modules: the motion, measurement, and resampling models. The motion model updates the state of each particle by estimating the user’s movement leveraged on the inertial sensors. When the state is updated, the particles are randomly injected with Gaussian noise to compensate for noise or errors in estimating the user’s motion. Then, the measurement model reevaluates the weight of the particles. Then, the resampling process is to establish a discrete probability distribution based on the weight of the particles and resample the particles through this discrete probability distribution as the particle swarm that enters the next round of iteration. Usually, through the recursive operation of these three processes, the actual state’s prediction will become more accurate. The performance of the particle filter algorithm depends almost entirely on how to build these three key models. The proposed augmented particle filter algorithm is mainly optimized in the motion and measurement models.The motion model is constructed based on step counting, step length estimation, and direction estimation. Here, we need to utilize the PDR algorithm (see Section4 B for the detailed calculation process). We construct the motion model as
(3)θk+1=θk+Δθ+Gθ,(4)xk+1yk+1=xkyk+cosθk+1sinθk+1×l+Gl,where k represents every step in walking; θ is the estimated pedestrian’s heading; Δθ is the user’s heading changes between two consecutive steps; and l is the step length; it is not constant here, and it is estimated dynamically during localization, which significantly improves the accuracy and robustness of the system. Gθ and Gl are Gaussian noise. Generally, Gl~N0,σl2 and Gθ~N0,σθ2 are used to enlarge the diversity of particles. xk,ykT and xk+1,yk+1T are the position coordinates of the kth and k+1th step, respectively.The core of the measurement model is to calculate the weights of the particles. It needs to use the updated state of the motion model and external observations. We use the positions predicted by MFM algorithm as the observation values. The single sensor positioning scheme can only provide a position prediction of a magnetic fingerprint per step, and its robustness and accuracy are relatively poor.Considering that the four sensors are independent of each other to provide position predictions, therefore, the final results can be jointly made by them. The DTW distance obtained in calculating the sequence similarity should be the influence factor for the most reasonable weights estimation. For each particle, we firstly use the magnetic fingerprint observations of the four sensors to calculate the weight corresponding to each sensor. Here, the Gaussian pseudo-distribution [28] is used.
(5)ωik=12πσexp−Pi−Zk22σ2,where ωik represents the weight of the ith particle calculated by the kth sensor. Pi is the position of the ith particle calculated by the motion model, and Zk is the predicted value of the step position calculated by the kth sensor through MFM algorithm (see Section 4 D for the detailed calculation process). σ is a parameter that reflects the overall disturbance intensity of the indoor magnetic field.Then, we calculate and normalize the proportional coefficient of each sensor’s corresponding scale factor based on the DTW distance of each sensor; the scale factor is calculated as follows:(6)Ck=1/dk∑j=141/dj,where k represents the sensor number and d is the DTW distance calculated in Algorithm 1. The smaller the DTW distance, the higher the similarity between the magnetic sequence to be matched and the target fingerprint in the database, that is, the higher the confidence. Then, we will assign a larger proportion to the weight of the corresponding sensor.Algorithm 1: DTW algorithm.
Input: The one-dimensional signal S and M with length n and m, respectively.Output: The DTW distance D;1: Letd denote the distance among pairs of values in S and M.2:fori=1⟶ndo3:forj=1⟶mdo4:  di,j = Si−Mj2.5:end for6:end for7: LetD denote DTW distance from S and M.8: D1,1 = d1,1.9:fori=2⟶ndo10: Di,1 = di,1+Di−1,1.11:forj=2⟶mdo12:  D1,j = d1,j+D1,j−1.13:  Di,j = di,j+min([Di−1,j, Di−1,j−1, Di,j−1]).14:end for15:end forFinally, we fully consider the weight of each sensor and its corresponding scale factor to jointly decide the optimal weight calculation result, which is set to(7)w^i=∑k=14Ckwik.Our novel weight calculation method considers the adequate information of multiple sensors, which dramatically improves the performance of particle filter.After all the particles are weighted, we need to filter out the low-weighted particles, which are considered far from the user’s natural state. Resampling aims to concentrate the particles into the region near the high-weight particles and make the particle swarm converge. The higher the weight, the closer the corresponding particles are to the actual state of the system. In this work, we resample new particles from the last iteration particles according to the discrete probability distribution generated by their weights. Finally, we estimate the actual state with the weighted average of the current particles, as shown in(8)s^=∑i=1Nsiwi′,where wi′ is the resampled particle weight and its value is 1/N.We summarize the entire APF processing as Algorithm2. The input to the algorithm are the position predictions for each step calculated by the PDR algorithm and the MFM algorithm, respectively. The loop is controlled by step counting. For each step a user moves, we will update the particles and prediction. APF fuses the two algorithms’ positioning results, and each step’s final position estimate is output. The parameter that affects the output result is mainly the number of particles. Generally speaking, the more the number of particles, the more accurate the result will be, and the system resources consumed will also increase accordingly. After lots of training tests, we use 100 particles in this paper, which ensures the positioning performance of the algorithm and saves computing resources.Algorithm 2: Procedure of augmented particle filter.
Generate N random particles from an initial areafor each step dofor each particle doUpdate position and heading by motion model as Equation (3) and (4).Evaluate the weight of particles by measurement model as Equation (7).end forNormalize the weights.Resample N particles from old particles according to the discrete distribution given by their weights.Estimate the user’s optimal state by Equation (8).end for


### 4.2. The PDR Algorithm

The motion model is constructed based on step counting, step length estimation, and direction estimation. These can be calculated by the PDR algorithm using inertial sensor data. This algorithm uses a dynamic step length instead of a constant step length. In addition, we use the average of the four inertial sensor data for PDR calculation. All these dramatically enhance the robustness and accuracy of the algorithm.Step counting mainly uses acceleration data from inertial sensors and adopts a double threshold detection method. Since the acceleration data is a three-dimensional vector and expressed in the device’s coordinate system, the device’s posture may inevitably change during the movement, so we use the magnitude of the acceleration to perform the step-counting algorithm. After calculating the acceleration magnitude, we use the dense sliding window method to smooth it to filter out sensor noise as much as possible. Then, we apply the threshold value to the filtered acceleration. If the detected peak is greater than the preset peak threshold, and the time difference between two adjacent peaks is greater than the specified time threshold, the peak is recorded as the effective peak, and one step is counted.Usually, we estimate the user’s step length based on the user’s physical characteristics and then set a constant value. However, the user’s step length obtained in this way is not accurate, and even the step length of the same user will change from time to time. The accuracy of the step length estimation is critical to the overall localization performance because, in each step of the particle filter iteration, the particles will first calculate the track based on the step length and heading. If the step length estimation error is significant, some initially valid particles may be slowly brought into the wrong state and eventually even lead to positioning failure. Therefore, we use the dynamic step length estimation method. The step length is estimated by the Weinberg methodology [38] as follows:
(9)l=KAmax−Amin4,where K represents the Weinberg model coefficient and Amax and Amin represent the maximum acceleration and minimum acceleration in one step, respectively. By adopting this dynamic step updating mechanism, the algorithm can adapt to the step length difference of various users and the step length variation caused by walking speed change for a user. And we use the Madgwick algorithm [39] to estimate the orientation of the user.There is a static detection function in the PDR algorithm. When the user is in a static state, the current location information can be locked. The current locked position will be used as the new initial reference to continue dead reckoning when the user moves again. The PDR algorithm used in this paper is aimed at the normal walking state of pedestrians but has not yet considered the behavior patterns such as jogging or running. At present, the application of deep learning in various fields is becoming more and more mature. In the future work, we can study the use of deep learning methods to extract relevant features of different people and movement modes to solve step detection and step length estimation better and realize walking mode adaptation.Since the inertial sensors are attached on the same level, they will sense the identical motion. Consequently, their measurements can be combined to mitigate independent stochastic errors. In our positioning scheme, we use the mean value of inertial data obtained by four sensors as the data source of the PDR algorithm to obtain stronger robustness. However, with the increase of walking distance, PDR will gradually accumulate errors, so we utilize the magnetic field to assist it for a more accurate position estimation.


### 4.3. Magnetic Measurement Model

To improve the discernibility of indoor magnetic signals, a feasible method is to increase the spatial range of measurement. Our equipment is composed of four spatially separated sensors, which can detect curved field lines and provide abundant magnetic information in an area. In addition, we propose a novel method of constructing magnetic fingerprints for sensor array based on single-step to improve the magnetic field resolution further.Before we use the magnetic field data, we firstly calibrate the collected raw magnetic data to eliminate the noise caused by the hard iron effect and soft iron effect [40] in the indoor environment as much as possible. Various calibration techniques have been proposed, such as [41, 42]. In our scheme, we use the Merayo technique with a noniterative algorithm [43] to calibrate the original magnetic data.The magnetic field data obtained by the sensor is based on the device’s body coordinate system. If we rotate the device in the same position, we will get different magnetic field readings. One method is to collect magnetic field readings in all directions at any location, which will quickly increase training costs and decrease accuracy as the sample space becomes larger. Therefore, it is not suitable to use the three-axis data of the original magnetic field directly. And using magnitude of the magnetic field will change the three-dimensional feature of each sensor into one-dimensional, which reduces the discernibility of the magnetic field.To eliminate the influence of three-dimensional magnetic fluctuations caused by the change of the device attitude while maintaining the diversity of magnetic field characteristics, we project the calibrated three-axis magnetic data in the body frame to the navigation frame, as shown in(10)MxnMynMzn=cosθ0sinθ010−sinθ0cosθ1000cosϕ−sinϕ0sinϕcosϕMxbMybMzb,where the vector Mxn,Myn,MznTrepresents the three-dimensional magnetic vector data in the navigation coordinate system, while the vector Mxb,Myb,MzbT represents the calibrated three-axis magnetic field data in the body coordinate system. The pitch angle θ and the roll angle ϕ rely on the device attitude, which fluctuates with the user walking.Among the three-axis magnetic field data in the navigation coordinate system, the data in thez-axis direction is not affected by the device attitude, and the two components on the horizontal plane are still affected by the device heading.Therefore, after obtaining the magnetic field vector based on the navigation coordinate system, we use thex-axis and y-axis components to form a new horizontal magnetic component and the z-axis component to form a vertical magnetic component. Then, we combine the magnetic field strength at this location with them to construct a new type of magnetic field observation, that is, Mv,Mh,Mf, which is calculated as follows:
(11)Mv=Mzn,Mh=Mxn2+Myn2,Mf=Mxn2+Myn2+Mzn2,where Mv and Mh represent the vertical and horizontal of the magnetic field, respectively, and Mf represents the magnitude of the magnetic field. This new type of hybrid magnetic field observations eliminates the restrictions on the device attitude and is only related to the position. When performing MFM, it has richer features and better stability, and it can significantly improve the accuracy and robustness of magnetic field positioning.Considering that the magnetic signal is a signal without modulated information covering the entire planet, the interior of different spatial positions tend to have the same magnetic strength. To further improve the spatial resolution of the magnetic signal, we use the continuous acquisition of magnetic observation sequence as the magnetic fingerprints. It can effectively reduce the positioning errors from using single-point magnetic and many magnetic equivalent points.As shown in Figure3, for each sensor, we obtain continuous 3-axis raw magnetic data and utilize the step counting of the PDR algorithm to divide the continuous magnetic data into single-step magnetic sequences. Then, we use the method mentioned above to extract the hybrid magnetic observations at each position in this single-step sequence and concatenate them into a vector as the magnetic fingerprint.Figure 3
Construction of hybrid magnetic fingerprint for sensor array based on single step.Mxii=1N, Myii=1N, Mzii=1N represent the magnetic sequences of x-axis, y-axis, and z-axis in a single step; N is the length of the sequence. After calibration and projection, we obtain the magnetic sequence corresponding to the horizontal component, vertical component, and magnitude of the magnetic field in a single step; that is, Mhii=1N, Mvii=1N, Mfii=1N. We concatenate them forming the magnetic fingerprint with a length of 3N.There are three reasons for this. First, when comparing magnetic field sequences, it makes sense only when two sequences cover similar spatial distances. Therefore, we need to estimate the spatial coverage of the step sequence. This kind of information can be easily obtained from tracking the inertial measurement unit. Second, all samples in the same step always have the same direction of motion. That is why, we can combine them into a sequence. Thirdly, the magnetic field sequence is divided according to the number of walking steps, which can ensure that the PDR prediction value and the magnetic fingerprint observation value have time synchronization in the process of APF fusion.Next, we will take the proposed magnetic fingerprint as the basic unit to construct the magnetic fingerprint database. We fix our equipment at the waist and walk at a uniform speed along the experimental area. In the process of walking, we collect continuous inertial navigation data and magnetic field data through the sensor array. The magnetic fingerprint database we constructed contains four subdatabases, and their raw data are provided by four sensors in the sensor array, respectively. As shown in Figure4, for each sensor, according to the magnetic fingerprint construction method mentioned above, we extract the magnetic fingerprint for each step and endow its corresponding position coordinates. In this way, four subdatabases are established, respectively, to form the magnetic fingerprint database of the sensor array.Figure 4
Construction of magnetic fingerprint database of the sensor array.Mf refers to the single-step hybrid magnetic fingerprint we proposed.


### 4.4. Magnetic Fingerprint Matching Algorithm for Sensor Array

The magnetic field is continuously sampled when walking. As we cannot guarantee the consistency of walking speed in establishing magnetic fingerprint database and collecting test data, the same spatial coverage may produce a different number of samples, that is, the spatial sampling density changes. We walked along the same path at different speeds in our test experiment and sampled data by the magnetometer at a fixed frequency. Then, we calculate the magnitude of the 3-axis raw magnetic field data collected at different speeds and draw the corresponding curves in Figure5 for comparison. We find that fast walking leads to shorter trajectories and fewer samples, while slow walking leads to longer trajectories and more samples, leading to different spatial sampling densities. In addition, different sampling frequencies will further complicate this phenomenon.Figure 5
Magnetic field strength at different speeds in the same path.The variation of spatial sampling density makes it difficult to directly compare two magnetic sequences covering the same spatial range because they may have different dimensions. Through further observation of Figure5, we can find that although they are different in length, they have very similar shapes. Therefore, we consider using DTW, which is a method to measure the similarity of two time sequences with different sizes and has been widely applied in magnetic fingerprint matching. The position corresponding to the minimum distance is used as the estimated position of the pedestrian. The DTW processes are shown in Algorithm 1. The algorithm’s input is two time series with different lengths to be matched. After calculation by the DTW algorithm, the DTW distance between the two sequences is output to measure the similarity between them.Algorithm 3: Magnetic fingerprint matching algorithm for sensor array.
Input:M (raw magnetic field data collected by the sensor array) and Mdb (magnetic fingerprint database)1:loop2: Calibrate and project the raw magnetic signal.3: Using our proposed single-step hybrid magnetic fingerprint construction method, extract the magnetic sequence to be matched at each step of each sensor.4: Calculate fingerprint distance by the DTW algorithm.5: Estimate the position of each magnetic fingerprint by a minimum distance.6:end loopOutput: Four sets of position predictions based on sensor array calculations.We propose the magnetic fingerprint matching algorithm for sensor array, shown in Algorithm3. The algorithm’s input is the original magnetic sequence to be matched and the constructed magnetic fingerprint database. Each group of sensors can obtain a group of position predictions through the DTW algorithm, and finally, four groups of position predictions can be output. They will jointly participate in calculating particle weights to obtain the optimal particle weight estimates.We utilize the proposed magnetic fingerprint construction method to obtain the magnetic sequences to be matched at each step of each sensor. As our sensor array is composed of four sensors, four magnetic sequences to be matched can be obtained for each step. We retrieve each fingerprint in the magnetic fingerprint database constructed by its corresponding sensor, and we calculate the distance between the tested magnetic sequence and each fingerprint in the database by DTW algorithm. The one with the minimum distance is considered the highest similarity. Each sensor in the array can give a set of position predictions. That is, we can get four preliminary position predictions for each step. These results will be input into the APF as observations to jointly determine the weight of each particle to obtain a more accurate position prediction.


## 4.1. Augmented Particle Filter Architecture

The core module of our positioning algorithm is the augmented particle filter algorithm we proposed. We will introduce the entire positioning algorithm process from the perspective of the augmented particle filter algorithm.The particle filter is often used to estimate the state of a dynamic system. The critical idea of the particle filter is to use a set of particles to represent the posterior probability, in which each particle represents a potential state of the system. In the localization system, the system state here is the user’s position and heading:(1)s=x,y,θ,where x,y represents the user’s position and θ is the heading direction. A particle is a hypothesis for the user’s state with a weight:
(2)Xi=si,ωi,where wi is the weight of the particle, indicating the confidence level of the particle. It is generally calculated by a probability model based on observations. The observations in this system refer to the position predictions of each step obtained by the magnetic field positioning method. The larger the particle’s weight, it means that we have a higher degree of confidence that it is close to the user’s actual state. Therefore, a probability distribution of the user’s actual state can be expressed through such a set of particles.The fundamental particle filter algorithm includes three necessary modules: the motion, measurement, and resampling models. The motion model updates the state of each particle by estimating the user’s movement leveraged on the inertial sensors. When the state is updated, the particles are randomly injected with Gaussian noise to compensate for noise or errors in estimating the user’s motion. Then, the measurement model reevaluates the weight of the particles. Then, the resampling process is to establish a discrete probability distribution based on the weight of the particles and resample the particles through this discrete probability distribution as the particle swarm that enters the next round of iteration. Usually, through the recursive operation of these three processes, the actual state’s prediction will become more accurate. The performance of the particle filter algorithm depends almost entirely on how to build these three key models. The proposed augmented particle filter algorithm is mainly optimized in the motion and measurement models.The motion model is constructed based on step counting, step length estimation, and direction estimation. Here, we need to utilize the PDR algorithm (see Section4 B for the detailed calculation process). We construct the motion model as
(3)θk+1=θk+Δθ+Gθ,(4)xk+1yk+1=xkyk+cosθk+1sinθk+1×l+Gl,where k represents every step in walking; θ is the estimated pedestrian’s heading; Δθ is the user’s heading changes between two consecutive steps; and l is the step length; it is not constant here, and it is estimated dynamically during localization, which significantly improves the accuracy and robustness of the system. Gθ and Gl are Gaussian noise. Generally, Gl~N0,σl2 and Gθ~N0,σθ2 are used to enlarge the diversity of particles. xk,ykT and xk+1,yk+1T are the position coordinates of the kth and k+1th step, respectively.The core of the measurement model is to calculate the weights of the particles. It needs to use the updated state of the motion model and external observations. We use the positions predicted by MFM algorithm as the observation values. The single sensor positioning scheme can only provide a position prediction of a magnetic fingerprint per step, and its robustness and accuracy are relatively poor.Considering that the four sensors are independent of each other to provide position predictions, therefore, the final results can be jointly made by them. The DTW distance obtained in calculating the sequence similarity should be the influence factor for the most reasonable weights estimation. For each particle, we firstly use the magnetic fingerprint observations of the four sensors to calculate the weight corresponding to each sensor. Here, the Gaussian pseudo-distribution [28] is used.
(5)ωik=12πσexp−Pi−Zk22σ2,where ωik represents the weight of the ith particle calculated by the kth sensor. Pi is the position of the ith particle calculated by the motion model, and Zk is the predicted value of the step position calculated by the kth sensor through MFM algorithm (see Section 4 D for the detailed calculation process). σ is a parameter that reflects the overall disturbance intensity of the indoor magnetic field.Then, we calculate and normalize the proportional coefficient of each sensor’s corresponding scale factor based on the DTW distance of each sensor; the scale factor is calculated as follows:(6)Ck=1/dk∑j=141/dj,where k represents the sensor number and d is the DTW distance calculated in Algorithm 1. The smaller the DTW distance, the higher the similarity between the magnetic sequence to be matched and the target fingerprint in the database, that is, the higher the confidence. Then, we will assign a larger proportion to the weight of the corresponding sensor.Algorithm 1: DTW algorithm.
Input: The one-dimensional signal S and M with length n and m, respectively.Output: The DTW distance D;1: Letd denote the distance among pairs of values in S and M.2:fori=1⟶ndo3:forj=1⟶mdo4:  di,j = Si−Mj2.5:end for6:end for7: LetD denote DTW distance from S and M.8: D1,1 = d1,1.9:fori=2⟶ndo10: Di,1 = di,1+Di−1,1.11:forj=2⟶mdo12:  D1,j = d1,j+D1,j−1.13:  Di,j = di,j+min([Di−1,j, Di−1,j−1, Di,j−1]).14:end for15:end forFinally, we fully consider the weight of each sensor and its corresponding scale factor to jointly decide the optimal weight calculation result, which is set to(7)w^i=∑k=14Ckwik.Our novel weight calculation method considers the adequate information of multiple sensors, which dramatically improves the performance of particle filter.After all the particles are weighted, we need to filter out the low-weighted particles, which are considered far from the user’s natural state. Resampling aims to concentrate the particles into the region near the high-weight particles and make the particle swarm converge. The higher the weight, the closer the corresponding particles are to the actual state of the system. In this work, we resample new particles from the last iteration particles according to the discrete probability distribution generated by their weights. Finally, we estimate the actual state with the weighted average of the current particles, as shown in(8)s^=∑i=1Nsiwi′,where wi′ is the resampled particle weight and its value is 1/N.We summarize the entire APF processing as Algorithm2. The input to the algorithm are the position predictions for each step calculated by the PDR algorithm and the MFM algorithm, respectively. The loop is controlled by step counting. For each step a user moves, we will update the particles and prediction. APF fuses the two algorithms’ positioning results, and each step’s final position estimate is output. The parameter that affects the output result is mainly the number of particles. Generally speaking, the more the number of particles, the more accurate the result will be, and the system resources consumed will also increase accordingly. After lots of training tests, we use 100 particles in this paper, which ensures the positioning performance of the algorithm and saves computing resources.Algorithm 2: Procedure of augmented particle filter.
Generate N random particles from an initial areafor each step dofor each particle doUpdate position and heading by motion model as Equation (3) and (4).Evaluate the weight of particles by measurement model as Equation (7).end forNormalize the weights.Resample N particles from old particles according to the discrete distribution given by their weights.Estimate the user’s optimal state by Equation (8).end for


## 4.2. The PDR Algorithm

The motion model is constructed based on step counting, step length estimation, and direction estimation. These can be calculated by the PDR algorithm using inertial sensor data. This algorithm uses a dynamic step length instead of a constant step length. In addition, we use the average of the four inertial sensor data for PDR calculation. All these dramatically enhance the robustness and accuracy of the algorithm.Step counting mainly uses acceleration data from inertial sensors and adopts a double threshold detection method. Since the acceleration data is a three-dimensional vector and expressed in the device’s coordinate system, the device’s posture may inevitably change during the movement, so we use the magnitude of the acceleration to perform the step-counting algorithm. After calculating the acceleration magnitude, we use the dense sliding window method to smooth it to filter out sensor noise as much as possible. Then, we apply the threshold value to the filtered acceleration. If the detected peak is greater than the preset peak threshold, and the time difference between two adjacent peaks is greater than the specified time threshold, the peak is recorded as the effective peak, and one step is counted.Usually, we estimate the user’s step length based on the user’s physical characteristics and then set a constant value. However, the user’s step length obtained in this way is not accurate, and even the step length of the same user will change from time to time. The accuracy of the step length estimation is critical to the overall localization performance because, in each step of the particle filter iteration, the particles will first calculate the track based on the step length and heading. If the step length estimation error is significant, some initially valid particles may be slowly brought into the wrong state and eventually even lead to positioning failure. Therefore, we use the dynamic step length estimation method. The step length is estimated by the Weinberg methodology [38] as follows:
(9)l=KAmax−Amin4,where K represents the Weinberg model coefficient and Amax and Amin represent the maximum acceleration and minimum acceleration in one step, respectively. By adopting this dynamic step updating mechanism, the algorithm can adapt to the step length difference of various users and the step length variation caused by walking speed change for a user. And we use the Madgwick algorithm [39] to estimate the orientation of the user.There is a static detection function in the PDR algorithm. When the user is in a static state, the current location information can be locked. The current locked position will be used as the new initial reference to continue dead reckoning when the user moves again. The PDR algorithm used in this paper is aimed at the normal walking state of pedestrians but has not yet considered the behavior patterns such as jogging or running. At present, the application of deep learning in various fields is becoming more and more mature. In the future work, we can study the use of deep learning methods to extract relevant features of different people and movement modes to solve step detection and step length estimation better and realize walking mode adaptation.Since the inertial sensors are attached on the same level, they will sense the identical motion. Consequently, their measurements can be combined to mitigate independent stochastic errors. In our positioning scheme, we use the mean value of inertial data obtained by four sensors as the data source of the PDR algorithm to obtain stronger robustness. However, with the increase of walking distance, PDR will gradually accumulate errors, so we utilize the magnetic field to assist it for a more accurate position estimation.


## 4.3. Magnetic Measurement Model

To improve the discernibility of indoor magnetic signals, a feasible method is to increase the spatial range of measurement. Our equipment is composed of four spatially separated sensors, which can detect curved field lines and provide abundant magnetic information in an area. In addition, we propose a novel method of constructing magnetic fingerprints for sensor array based on single-step to improve the magnetic field resolution further.Before we use the magnetic field data, we firstly calibrate the collected raw magnetic data to eliminate the noise caused by the hard iron effect and soft iron effect [40] in the indoor environment as much as possible. Various calibration techniques have been proposed, such as [41, 42]. In our scheme, we use the Merayo technique with a noniterative algorithm [43] to calibrate the original magnetic data.The magnetic field data obtained by the sensor is based on the device’s body coordinate system. If we rotate the device in the same position, we will get different magnetic field readings. One method is to collect magnetic field readings in all directions at any location, which will quickly increase training costs and decrease accuracy as the sample space becomes larger. Therefore, it is not suitable to use the three-axis data of the original magnetic field directly. And using magnitude of the magnetic field will change the three-dimensional feature of each sensor into one-dimensional, which reduces the discernibility of the magnetic field.To eliminate the influence of three-dimensional magnetic fluctuations caused by the change of the device attitude while maintaining the diversity of magnetic field characteristics, we project the calibrated three-axis magnetic data in the body frame to the navigation frame, as shown in(10)MxnMynMzn=cosθ0sinθ010−sinθ0cosθ1000cosϕ−sinϕ0sinϕcosϕMxbMybMzb,where the vector Mxn,Myn,MznTrepresents the three-dimensional magnetic vector data in the navigation coordinate system, while the vector Mxb,Myb,MzbT represents the calibrated three-axis magnetic field data in the body coordinate system. The pitch angle θ and the roll angle ϕ rely on the device attitude, which fluctuates with the user walking.Among the three-axis magnetic field data in the navigation coordinate system, the data in thez-axis direction is not affected by the device attitude, and the two components on the horizontal plane are still affected by the device heading.Therefore, after obtaining the magnetic field vector based on the navigation coordinate system, we use thex-axis and y-axis components to form a new horizontal magnetic component and the z-axis component to form a vertical magnetic component. Then, we combine the magnetic field strength at this location with them to construct a new type of magnetic field observation, that is, Mv,Mh,Mf, which is calculated as follows:
(11)Mv=Mzn,Mh=Mxn2+Myn2,Mf=Mxn2+Myn2+Mzn2,where Mv and Mh represent the vertical and horizontal of the magnetic field, respectively, and Mf represents the magnitude of the magnetic field. This new type of hybrid magnetic field observations eliminates the restrictions on the device attitude and is only related to the position. When performing MFM, it has richer features and better stability, and it can significantly improve the accuracy and robustness of magnetic field positioning.Considering that the magnetic signal is a signal without modulated information covering the entire planet, the interior of different spatial positions tend to have the same magnetic strength. To further improve the spatial resolution of the magnetic signal, we use the continuous acquisition of magnetic observation sequence as the magnetic fingerprints. It can effectively reduce the positioning errors from using single-point magnetic and many magnetic equivalent points.As shown in Figure3, for each sensor, we obtain continuous 3-axis raw magnetic data and utilize the step counting of the PDR algorithm to divide the continuous magnetic data into single-step magnetic sequences. Then, we use the method mentioned above to extract the hybrid magnetic observations at each position in this single-step sequence and concatenate them into a vector as the magnetic fingerprint.Figure 3
Construction of hybrid magnetic fingerprint for sensor array based on single step.Mxii=1N, Myii=1N, Mzii=1N represent the magnetic sequences of x-axis, y-axis, and z-axis in a single step; N is the length of the sequence. After calibration and projection, we obtain the magnetic sequence corresponding to the horizontal component, vertical component, and magnitude of the magnetic field in a single step; that is, Mhii=1N, Mvii=1N, Mfii=1N. We concatenate them forming the magnetic fingerprint with a length of 3N.There are three reasons for this. First, when comparing magnetic field sequences, it makes sense only when two sequences cover similar spatial distances. Therefore, we need to estimate the spatial coverage of the step sequence. This kind of information can be easily obtained from tracking the inertial measurement unit. Second, all samples in the same step always have the same direction of motion. That is why, we can combine them into a sequence. Thirdly, the magnetic field sequence is divided according to the number of walking steps, which can ensure that the PDR prediction value and the magnetic fingerprint observation value have time synchronization in the process of APF fusion.Next, we will take the proposed magnetic fingerprint as the basic unit to construct the magnetic fingerprint database. We fix our equipment at the waist and walk at a uniform speed along the experimental area. In the process of walking, we collect continuous inertial navigation data and magnetic field data through the sensor array. The magnetic fingerprint database we constructed contains four subdatabases, and their raw data are provided by four sensors in the sensor array, respectively. As shown in Figure4, for each sensor, according to the magnetic fingerprint construction method mentioned above, we extract the magnetic fingerprint for each step and endow its corresponding position coordinates. In this way, four subdatabases are established, respectively, to form the magnetic fingerprint database of the sensor array.Figure 4
Construction of magnetic fingerprint database of the sensor array.Mf refers to the single-step hybrid magnetic fingerprint we proposed.


## 4.4. Magnetic Fingerprint Matching Algorithm for Sensor Array

The magnetic field is continuously sampled when walking. As we cannot guarantee the consistency of walking speed in establishing magnetic fingerprint database and collecting test data, the same spatial coverage may produce a different number of samples, that is, the spatial sampling density changes. We walked along the same path at different speeds in our test experiment and sampled data by the magnetometer at a fixed frequency. Then, we calculate the magnitude of the 3-axis raw magnetic field data collected at different speeds and draw the corresponding curves in Figure5 for comparison. We find that fast walking leads to shorter trajectories and fewer samples, while slow walking leads to longer trajectories and more samples, leading to different spatial sampling densities. In addition, different sampling frequencies will further complicate this phenomenon.Figure 5
Magnetic field strength at different speeds in the same path.The variation of spatial sampling density makes it difficult to directly compare two magnetic sequences covering the same spatial range because they may have different dimensions. Through further observation of Figure5, we can find that although they are different in length, they have very similar shapes. Therefore, we consider using DTW, which is a method to measure the similarity of two time sequences with different sizes and has been widely applied in magnetic fingerprint matching. The position corresponding to the minimum distance is used as the estimated position of the pedestrian. The DTW processes are shown in Algorithm 1. The algorithm’s input is two time series with different lengths to be matched. After calculation by the DTW algorithm, the DTW distance between the two sequences is output to measure the similarity between them.Algorithm 3: Magnetic fingerprint matching algorithm for sensor array.
Input:M (raw magnetic field data collected by the sensor array) and Mdb (magnetic fingerprint database)1:loop2: Calibrate and project the raw magnetic signal.3: Using our proposed single-step hybrid magnetic fingerprint construction method, extract the magnetic sequence to be matched at each step of each sensor.4: Calculate fingerprint distance by the DTW algorithm.5: Estimate the position of each magnetic fingerprint by a minimum distance.6:end loopOutput: Four sets of position predictions based on sensor array calculations.We propose the magnetic fingerprint matching algorithm for sensor array, shown in Algorithm3. The algorithm’s input is the original magnetic sequence to be matched and the constructed magnetic fingerprint database. Each group of sensors can obtain a group of position predictions through the DTW algorithm, and finally, four groups of position predictions can be output. They will jointly participate in calculating particle weights to obtain the optimal particle weight estimates.We utilize the proposed magnetic fingerprint construction method to obtain the magnetic sequences to be matched at each step of each sensor. As our sensor array is composed of four sensors, four magnetic sequences to be matched can be obtained for each step. We retrieve each fingerprint in the magnetic fingerprint database constructed by its corresponding sensor, and we calculate the distance between the tested magnetic sequence and each fingerprint in the database by DTW algorithm. The one with the minimum distance is considered the highest similarity. Each sensor in the array can give a set of position predictions. That is, we can get four preliminary position predictions for each step. These results will be input into the APF as observations to jointly determine the weight of each particle to obtain a more accurate position prediction.


## 5. System Evaluation

Our experimental scene is selected on the fourth floor of the 26th teaching building of the Tianjin University, Tianjin, China, as illustrated in Figure6. The red rectangle represents the area we walk in, and it has a length of 50 m and a width of 30 m. We established the magnetic fingerprint database of this area in advance. When experimenting, we tied the device at the user’s waist through a belt and walked at a uniform speed. We conducted three groups of experiments. The working distance of each group was 480 m, and the total distance was 1.44 km. The experimental area distributed the office workstation uniformly. The entire building is a modern-reinforced concrete structure, and magnetic signal caused stable and significant distortion in favor of localization.Figure 6
Experimental scene.


### 5.1. Performance Index

In our experiment, we adopt the cumulative distribution function (CDF) to evaluate positioning accuracy in most cases. In addition, according to the recommendations of the international standard ISO/IEC 18305 [44] and Reference [45], we also used the following indicators: the average error (AE), root mean square error (RMSE), maximum error (ME), and circular error probable (75%, 95%) (CEP).


### 5.2. Performance of Magnetic Fingerprint Matching

We verified the effect of using only the magnetic field for positioning. As shown in Figure7, we show the localization results predicted by each sensor obtained by Algorithm 3. We can observe that the positioning accuracy of the four sensors obtained by MFM is consistent on the whole. 90% of the positioning error is kept within 5 m.Figure 7
Localization results using only magnetic fingerprint matching.Next, we also compared the positioning errors obtained by using different magnetic fingerprint models for MFM. As shown in Figure8, we compared the localization results of using three different magnetic fingerprint models for MFM. We can see that the hybrid magnetic fingerprint model has a minimal positioning error. 90% of the positions estimated by the hybrid magnetic fingerprint model are increased by 33.3% compared with the other two models.Figure 8
Localization results using different magnetic fingerprint models. HVF refers to the hybrid magnetic fingerprint we proposed, VH refers to the magnetic fingerprint constructed using only the horizontal and vertical components of the magnetic field, andF refers to the magnetic fingerprint created using only the magnitude of the magnetic field.


### 5.3. Performance of PDR

In the PDR algorithm, we use the mean value of the inertial data of the four sensors in the sensor array to calculate the position for better robustness. So we compare the localization results using each sensor individually and using the mean value of the sensor array. The results are illustrated in Figure9. We can observe that the sensor array has no obvious advantages over a single sensor in a relatively short period. Still, the PDR positioning accuracy using the sensor array has been dramatically improved compared with the single sensor solution in a long time. And it improves the robustness of the whole PDR algorithm. Most of the time, its positioning accuracy is within 3 m.Figure 9
Localization results of PDR using each sensor individually and using the mean value of the sensor array.Figure10 shows the trajectory of PDR positioning using the sensor array. We started from the starting point, walked three times clockwise in the experimental area, and then returned to the starting point, with a total walking distance of 480 m. We can observe that as the walking distance increases, the cumulative error of the PDR begins to become evident, which is a problem requiring to be solved.Figure 10
Trajectory of PDR using the sensor array.


### 5.4. Overall Performance of our System

We fuse the results of PDR and MFM algorithm with APF for better positioning accuracy. Figure11 shows the positioning trajectories using different algorithms.Figure 11
Trajectories using different positioning algorithms.We can see that with the increase of walking distance, the error of PDR begins to increase, while our method maintains a good positioning effect. To verify the reliability of our system, we did three groups of experiments; the total walking distance is 1.44 km. The results are shown in Figure12, and we can observe that 90% of the positioning error of our method is maintained at about 1.3 m, while PDR is about 2.5 m-3.5 m. In the three groups of experiments, there is still a certain degree of difference in the localization performance of each group of the PDR. While the localization performance of our method is relatively consistent, the stability and robustness of the system have been greatly enhanced.Figure 12
Localization results of multiple experiments with different positioning algorithms.The specific results of these groups of experiments are shown in Table1. 95% of the average positioning error obtained by the PDR algorithm is 2.93 m, and the average positioning error after the APF algorithm is about 1.47 m, which is 99.3% higher than that of PDR. The average error of the three groups of the PDR algorithm is 1.50 m, and the average positioning error of the three groups after fusion is 0.55 m, which is 61.3% higher than that of PDR. From a variety of positioning indicators, the positioning error obtained by our method is better than that obtained by PDR alone, and it reduces the cumulative error of the PDR algorithm.Table 1
The summary of localization results with different methods.
PDROurs (PDR + MFM + APF)Group123123AE/m1.641.541.330.560.550.54ME/m3.293.342.942.622.511.85CEP (75%)/m2.211.841.540.820.830.82CEP (95%)/m2.823.262.721.541.51.36Furthermore, we also compare the positioning error with another positioning scheme. In Reference [46], mobile phone is used for positioning, and multisource sensors such as inertial sensors, magnetic sensors, and WiFi are fused to improve the positioning accuracy. Since we have a similar experimental scene, that is, the teaching building, we choose to compare the positioning indicators obtained in this scene. In this scene, we conducted three sets of experiments, each of which has a walking distance of 480 m. We take the average of the localization results obtained from the three sets of experiments and compare them with Reference [46]. The walking distance of Reference [46] is 271 m. The concrete results are shown in Table 2. We can see that in the case of longer walking distance, the ME of our scheme are relatively large. However, AE, RMSE, CEP (75%), and CEP (95%) decreased by 20.3%, 11.1%, 21.2%, and 1.3%, respectively, compared with Reference [46]. The experimental results verify the effectiveness and superiority of the algorithm designed. This rough comparison shows the excellent positioning performance of our system.Table 2
Position errors of Reference [46] and our method.
MethodsAE/mRMSEME/mEP(75%)/mCEP(95%)/mDistance/mReference [46]0.690.811.581.041.48271Ours0.550.722.320.821.46480The positioning scheme in this paper innovatively uses a low-cost sensor array instead of a single sensor in hardware design and develops corresponding positioning algorithms on the hardware platform. Compared with the traditional PDR algorithm, we use the mean value of the inertial data as the input to the PDR, which improves the accuracy and robustness of the PDR. We propose a single-step hybrid magnetic fingerprint model. Compared with the observation model using the magnetic field magnitude or the raw magnetic data, the magnetic field characteristics are significantly increased, the restrictions on the device attitude are lifted, and the accuracy of the MFM algorithm is improved. We have further enhanced the particle filter algorithm. Unlike other positioning schemes that use only one set of observations provided by single sensor to calculate the particle weights, we use four sets of position predictions obtained by the sensor array to decide the optimal particle weights jointly and finally achieve high-precision position estimation.


## 5.1. Performance Index

In our experiment, we adopt the cumulative distribution function (CDF) to evaluate positioning accuracy in most cases. In addition, according to the recommendations of the international standard ISO/IEC 18305 [44] and Reference [45], we also used the following indicators: the average error (AE), root mean square error (RMSE), maximum error (ME), and circular error probable (75%, 95%) (CEP).


## 5.2. Performance of Magnetic Fingerprint Matching

We verified the effect of using only the magnetic field for positioning. As shown in Figure7, we show the localization results predicted by each sensor obtained by Algorithm 3. We can observe that the positioning accuracy of the four sensors obtained by MFM is consistent on the whole. 90% of the positioning error is kept within 5 m.Figure 7
Localization results using only magnetic fingerprint matching.Next, we also compared the positioning errors obtained by using different magnetic fingerprint models for MFM. As shown in Figure8, we compared the localization results of using three different magnetic fingerprint models for MFM. We can see that the hybrid magnetic fingerprint model has a minimal positioning error. 90% of the positions estimated by the hybrid magnetic fingerprint model are increased by 33.3% compared with the other two models.Figure 8
Localization results using different magnetic fingerprint models. HVF refers to the hybrid magnetic fingerprint we proposed, VH refers to the magnetic fingerprint constructed using only the horizontal and vertical components of the magnetic field, andF refers to the magnetic fingerprint created using only the magnitude of the magnetic field.


## 5.3. Performance of PDR

In the PDR algorithm, we use the mean value of the inertial data of the four sensors in the sensor array to calculate the position for better robustness. So we compare the localization results using each sensor individually and using the mean value of the sensor array. The results are illustrated in Figure9. We can observe that the sensor array has no obvious advantages over a single sensor in a relatively short period. Still, the PDR positioning accuracy using the sensor array has been dramatically improved compared with the single sensor solution in a long time. And it improves the robustness of the whole PDR algorithm. Most of the time, its positioning accuracy is within 3 m.Figure 9
Localization results of PDR using each sensor individually and using the mean value of the sensor array.Figure10 shows the trajectory of PDR positioning using the sensor array. We started from the starting point, walked three times clockwise in the experimental area, and then returned to the starting point, with a total walking distance of 480 m. We can observe that as the walking distance increases, the cumulative error of the PDR begins to become evident, which is a problem requiring to be solved.Figure 10
Trajectory of PDR using the sensor array.


## 5.4. Overall Performance of our System

We fuse the results of PDR and MFM algorithm with APF for better positioning accuracy. Figure11 shows the positioning trajectories using different algorithms.Figure 11
Trajectories using different positioning algorithms.We can see that with the increase of walking distance, the error of PDR begins to increase, while our method maintains a good positioning effect. To verify the reliability of our system, we did three groups of experiments; the total walking distance is 1.44 km. The results are shown in Figure12, and we can observe that 90% of the positioning error of our method is maintained at about 1.3 m, while PDR is about 2.5 m-3.5 m. In the three groups of experiments, there is still a certain degree of difference in the localization performance of each group of the PDR. While the localization performance of our method is relatively consistent, the stability and robustness of the system have been greatly enhanced.Figure 12
Localization results of multiple experiments with different positioning algorithms.The specific results of these groups of experiments are shown in Table1. 95% of the average positioning error obtained by the PDR algorithm is 2.93 m, and the average positioning error after the APF algorithm is about 1.47 m, which is 99.3% higher than that of PDR. The average error of the three groups of the PDR algorithm is 1.50 m, and the average positioning error of the three groups after fusion is 0.55 m, which is 61.3% higher than that of PDR. From a variety of positioning indicators, the positioning error obtained by our method is better than that obtained by PDR alone, and it reduces the cumulative error of the PDR algorithm.Table 1
The summary of localization results with different methods.
PDROurs (PDR + MFM + APF)Group123123AE/m1.641.541.330.560.550.54ME/m3.293.342.942.622.511.85CEP (75%)/m2.211.841.540.820.830.82CEP (95%)/m2.823.262.721.541.51.36Furthermore, we also compare the positioning error with another positioning scheme. In Reference [46], mobile phone is used for positioning, and multisource sensors such as inertial sensors, magnetic sensors, and WiFi are fused to improve the positioning accuracy. Since we have a similar experimental scene, that is, the teaching building, we choose to compare the positioning indicators obtained in this scene. In this scene, we conducted three sets of experiments, each of which has a walking distance of 480 m. We take the average of the localization results obtained from the three sets of experiments and compare them with Reference [46]. The walking distance of Reference [46] is 271 m. The concrete results are shown in Table 2. We can see that in the case of longer walking distance, the ME of our scheme are relatively large. However, AE, RMSE, CEP (75%), and CEP (95%) decreased by 20.3%, 11.1%, 21.2%, and 1.3%, respectively, compared with Reference [46]. The experimental results verify the effectiveness and superiority of the algorithm designed. This rough comparison shows the excellent positioning performance of our system.Table 2
Position errors of Reference [46] and our method.
MethodsAE/mRMSEME/mEP(75%)/mCEP(95%)/mDistance/mReference [46]0.690.811.581.041.48271Ours0.550.722.320.821.46480The positioning scheme in this paper innovatively uses a low-cost sensor array instead of a single sensor in hardware design and develops corresponding positioning algorithms on the hardware platform. Compared with the traditional PDR algorithm, we use the mean value of the inertial data as the input to the PDR, which improves the accuracy and robustness of the PDR. We propose a single-step hybrid magnetic fingerprint model. Compared with the observation model using the magnetic field magnitude or the raw magnetic data, the magnetic field characteristics are significantly increased, the restrictions on the device attitude are lifted, and the accuracy of the MFM algorithm is improved. We have further enhanced the particle filter algorithm. Unlike other positioning schemes that use only one set of observations provided by single sensor to calculate the particle weights, we use four sets of position predictions obtained by the sensor array to decide the optimal particle weights jointly and finally achieve high-precision position estimation.


## 6. Conclusion and Future Work

In conclusion, this paper proposes a magnetic matching-aided indoor localization system based on a waist-mounted self-contained sensor array. On the basis of self-designed hardware, we use the sensor array to improve the accuracy and robustness of the PDR algorithm. For MFM, we propose a single-step hybrid magnetic fingerprint model, which removes the restrictions on the device’s orientation and dramatically promotes the discernibility of the magnetic field. In addition, we develop the APF algorithm to fuse multisource positioning information to reduce the cumulative errors of PDR and improve the limited discernibility of magnetic field for obtaining a more accurate position estimation and better robustness. We demonstrate that the system has high positioning accuracy and good robustness through multiple sets of comparative experiments.This paper forms a complete indoor pedestrian localization scheme based on the above vital technologies. It can provide health protection for the elderly in nursing homes to fully ensure their safety. However, this positioning system needs to be expanded and perfected in practical application. The particle filter fusion algorithm used in this paper has robust scalability. In the future, more information can be considered, such as WiFi signals and some key indoor landmarks, to fuse various data further to improve the positioning accuracy and robustness of the system. The positioning system proposed in this paper mainly provides health monitoring for the elderly in nursing homes through indoor positioning. We can further expand the monitoring function of the design on this basis. For example, we can utilize the deep learning model to recognize the falling action. When identifying the falling motion and that the user is in a stationary state for a long time, the real-time position and alarm signal of the elderly will be sent to the relevant staff so that the elderly can be rescued in time.



---

*Source: 1710907-2022-04-25.xml*