Next Article in Journal
Infrared–Visible Fusion via Cross-Modality Attention and Small-Object Enhancement for Pedestrian Detection
Previous Article in Journal
Leveraging Explainable Artificial Intelligence for Place-Based and Quantitative Strategies in Urban Pluvial Flooding Management
Previous Article in Special Issue
Visualizing Spatial Cognition for Wayfinding Design: Examining Gaze Behaviors Using Mobile Eye Tracking in Counseling Service Settings
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Novel Smartphone PDR Framework Based on Map-Aided Adaptive Particle Filter with a Reduced State Space

by
Mengchi Ai
1,*,
Ilyar Asl Sabbaghian Hokmabadi
2 and
Xuan Zhao
3
1
Department of Geomatics, University of Calgary, Calgary, AB T2N 1N4, Canada
2
Department of Mechanical and Manufacturing Engineering, University of Calgary, Calgary, AB T2N 1N4, Canada
3
School of Software Engineering, Xi’an Jiaotong University, Xi’an 710049, China
*
Author to whom correspondence should be addressed.
ISPRS Int. J. Geo-Inf. 2025, 14(12), 476; https://doi.org/10.3390/ijgi14120476 (registering DOI)
Submission received: 16 September 2025 / Revised: 12 November 2025 / Accepted: 27 November 2025 / Published: 2 December 2025
(This article belongs to the Special Issue Indoor Mobile Mapping and Location-Based Knowledge Services)

Abstract

Accurate, reliable and infrastructure-free indoor positioning using a smartphone is considered an essential topic for applications such as indoor emergency response and indoor path planning. While the inertial measurement units (IMU) offer continuous and high-frequency motion data, pedestrian dead reckoning (PDR) based on IMU data suffers from significant and accumulative errors. Map-aided particle filters (PFs) are important pose estimation frameworks that have exhibited capabilities to eliminate drifts by incorporating additional constraints from a pre-built floor map, without relying on other wireless or perception-based infrastructures. However, despite the recent approaches, a key challenging issue remains: existing map-aided PF-PDR solutions are computationally demanding, as they typically rely on a large number of particles and require map boundaries to eliminate non-matching particles. This process introduces substantial computational overhead, limiting efficiency and real-time performance on resource-constrained platforms such as smartphones. To address this key issue, this work proposes a novel map-aided PF-PDR framework that leverages a smartphone’s IMU data and a pre-built vectorized floor plan map. The proposed method introduces an adaptive PF-PDR solution that detects particle convergence using a cross-entropy distance of the particles and a Gaussian distribution. The number of particles is reduced significantly after a convergence is detected. Further, in order to reduce the computational cost, only the heading is included in particle attitude sampling. The heading is estimated accurately by levelling gyroscope measurements to a virtual plane, parallel to the ground. Experiments are performed using a dataset collected on a smartphone and the results demonstrate improved performance, especially in drift reduction, achieving an mean position error of 0.9 m and a processing rate of 37.0 Hz.

1. Introduction

Accurate and reliable indoor positioning on smartphones serves as a key point for a wide range of applications, including path planning, navigation, and emergency response [1]. However, due to limited access to global navigation satellite system (GNSS) signals, indoor localization accuracy often deteriorates substantially, resulting in low positioning reliability. Therefore, developing robust indoor localization solutions that can operate effectively without GNSS signals has become a research focus.
Indoor infrastructure-based data sources, such as ultra-wideband (UWB) [2], Wi-Fi [3], low energy bluetooth (BLE) [4], and beacons [5], can fill the gap of inaccessibility of GNSS signals, providing relative distance and angle measurements for smartphones to estimate motion. These solutions are stable and accurate but require site surveys and continuous access to the data sources. An alternative approach to the previously mentioned techniques is to utilize perception-based navigation solutions, such as vision-aided and light detection and ranging (LiDAR)-aided positioning systems. These solutions can extract both semantic and geometric features and track the user’s trajectory [6]. However, the positioning performance is often constrained under challenging environmental conditions, such as varying illumination or low-texture surfaces.
In contrast, inertial measurement units (IMUs), which comprise tri-axial accelerometers and gyroscopes (with optional magnetometers), are equipped on every smartphone and can provide continuous, low–latency measurements. By capturing motion data, IMUs are regarded as important sensors in smartphone-based applications. However, inertial-only estimation cannot estimate the pose accurately even in a short period of time, suffering from rapidly growing errors due to the noise integration. Pedestrian dead-reckoning (PDR)-based solutions reduce drifting by modelling human locomotion. In these methods, step detection and stride length estimation are achieved using accelerometer data, while heading values are estimated from gyroscope yaw increments. With the support of motion constraints, such as zero-velocity updates (ZUPTs), PDR approaches have been widely deployed on foot-mounted sensors. However, attaching smartphones to the user’s foot is difficult. Without the availability of ZUPT for the handheld device-based navigation, the device-to-body orientation and intrinsic parameters vary unpredictably, resulting in errors in the estimation of device’s heading and step length. Therefore, for the PDR using IMUs, non-Gaussian uncertainties should be accounted for during the estimation of step length, heading, and orientation alignment.
Due to the challenges mentioned above, particle filters (PF) are widely utilized to address optimization problems involving non-Gaussian uncertainties [7,8]. Further, these filters have the advantage of handling non-linear motion and observation models. While other filter-based methods, such as the Kalman Filter (KF) and its variants [9,10,11], can provide positioning solutions, PFs yield more stable and reliable estimates. A long history of research has demonstrated that smartphone PDR based on PF can estimate user’s motion accurately and achieve good performance in various indoor environments [12,13,14].
PF and other dynamic Bayesian networks consist of two main steps: prediction and update. In the prediction step, the poses of the particles are estimated using the measurements from IMUs. In the update step, the predicted poses are corrected. Numerous update strategies have been proposed in the past. These strategies can be categorized into two groups: wireless signal-aided updates and map-aided updates. For the wireless-signal aided approach, the distance, angle of arrival, or received signal strength of the smartphone with respect to the beacons are measured and integrated with IMU readings via PFs [15,16]. Improved versions of PFs with optimized resampling strategies, such as approaches in [15,17], have also been proposed in the past. Other works, such as [18,19], utilized geomagnetic signals for further improvements. In summary, integrating wireless data sources can significantly eliminate drifting; however, performance is affected by sources of errors, such as non-line of sight (NLOS), multi-path signals, and transmission power variations [20].
Alternatively, the pose updates can be provided to a PF with the help of maps. Map-aided PF-based solutions enable the system to extract constraints and utilize them to remove particles when they move into inaccessible areas [21,22,23]. Compared to other types of indoor maps (e.g., point cloud maps and voxel maps), which can occupy large computational memory, the floor plan comprises a vector-based lightweight model. Such a floor plan contains information that can be used to constrain the PFs by setting the structural boundaries. Numerous map-aided PF solutions have been proposed in the past. For example, in  [24,25], particles that move to inaccessible areas are eliminated. In [26], the map is improved by involving a priori information, which is represented using the human motion likelihood map. In [27,28], accessibility information provided by doors and walls is considered. In [29], map-aided constraints prevented particles from crossing into inaccessible areas. These results demonstrate that involving structural information from vectorized floor maps can significantly reduce drifting in the estimated location of the user, without relying on data collected from wireless infrastructure.
Despite the mentioned progress in map-aided PF solutions, the computational cost of PF remains a challenge. Such a computational cost increases with the number of state-space dimensions. The large state-space dimensionality is a problem for PDR, since the state includes the position (three parameters), velocity (three parameters), attitude (three parameters using Euler angles), and sensor biases (three parameters for the gyroscope, and three parameters for the accelerometers). In order to reduce such a large state dimension, in PF-PDR implementation, it is assumed that the user is moving on a plane (two parameters) with only an unknown heading (one parameter) and the corresponding gyro bias (one parameter). Such a dimensionality reduction contributes significantly towards on-device (smartphone) implementation of map-aided PF-PDR. However, these assumptions can reduce accuracy. For example, estimating a reliable heading from handheld smartphones is difficult, leading to a wide particle spread. To address high uncertainty, particularly under non-linear dynamics and non-Gaussian error distributions in the state parameters, existing approaches typically employ large particle populations, which increases the computational cost.
Addressing the mentioned issue, this paper proposes a map-aided adaptive PF-PDR with a reduced state space. The improvements comprise two points. In order to address the challenges with larger particle requirements, the developed method utilizes a cross-entropy distance-based test to reduce the number of the particle. In this approach, the distribution of the particles is compared to a Gaussian with the help of cross-entropy distance. If this distance is smaller than a certain threshold, the number of particles is reduced. This reduction is only possible if particles are approaching a Gaussian distribution; thus, eliminating the requirement for a large number of particles to represent multi-modal distributions. The second contribution of this paper is the dimensionality reduction in the user’s navigation state while preserving the accuracy. This reduction is achieved by estimating the user’s angular rate on a virtual plane parallel to the ground. With this approach, it becomes possible to estimate the user’s trajectory in 2D along with the heading. The measurement projection to this virtual plane is performed by levellng gyroscope coordinate frame using accelerometer readings. Since accelerometers can estimate roll and pitch from the gravity vector at the current epoch, this leveling is independent for each gyroscope measurement. Summarizing the discussion above, the contributions of this paper can be summarized as follows:
(1)
Cross-entropy test for particle number reduction. A particle reduction based on cross-entropy distance between the particle distribution and Gaussian is proposed. This strategy significantly reduces the number of particles while preserving the accuracy and improving the computation efficiency.
(2)
Particle dimensionality reduction. Computational cost of a PF relies on the state-space dimensionality and in order to reduce this space, we only use the heading in the attitude representation. It is shown that such a reduction in dimensionality can be achieved without accuracy loss, using sensor levelling.
(3)
Real-world tests. Experiments are implemented on a real-world dataset collected using a smartphone, demonstrating the accuracy and robustness of the proposed solution.

2. Method

In this section, the proposed map-aided PDR framework is described in detail, with a particular focus on how the adaptive PF enhances efficiency through the incorporation of map constraints. The developed PF framework, does not assume any initial location or heading for the user. The initial location of the particles are sampled using the boundary of the 2D map where particles are selected at fixed intervals. Starting positioning tracking, the proposed method employs a cross-entropy criterion to switch to a reduced PF. Switching occurs if the distribution of the particles closely resembles a Gaussian with a user-defined standard deviation. In the switching phase, the particles are sorted according to their weights, and the particles with the highest weights are selected. The remaining particles are discarded for the rest of the trajectory estimation to reduce the computational cost of the algorithm. Figure 1 shows an overview of the developed adaptive PF-PDR algorithm. PFs can suffer from a phenomenon known as particle degeneracy. Particle degeneracy occurs when most of the weight of the particles is concentrated on a few particles, while many particles carry weights close to zero. This large discrepancy in particle weights arises due to the stochastic nature of PFs [30]. To eliminate or reduce particle degeneracy, particle resampling strategy has been introduced in the literature [30]. In the resampling step, new particles are drawn based on the weights of the previous particles. In this process, particles with higher weights are more likely to be selected again, while particles with lower weights are more likely to be eliminated. In this study, we have used a multinomial resampling strategy for particle filter implementation [31].
The PF-PDR developed includes four states. These states are the position in x R and y R directions of the map, heading θ ( π , π ] with respect to the map coordinates, and bias of the gyroscope b ω R . It is common to include all three attitude parameters (roll, pitch, and heading) in a typical implementation of PDR. However, this can substantially increase the dimensionality. Instead, in the proposed approach, the necessary roll and pitch corrections are applied using the accelerometer data before passing the gyroscope readings to PF. After gyroscope axes levelling, only the angle corresponding to the heading direction is utilized. This heading correction can be seen as particle filter independent module in Figure 1. The heading correction is based on the current accelerometer measurement. This measurement is independent of the filter predictions. Thus, such a correction does not require any information from PF-PDR algorithm, and the state vector can be kept at lower dimensions by excluding direct particle sampling of roll and pitch. The state vector ( s R 4 ) is shown as follows:
s i = x i y i θ i b ω i ,
where i N denotes the index of the particle. In a PDR problem, user’s displacements in the x and y directions are not independent of each other and the estimated heading. The displacements in x and y are related through the step length ( L R ). To reflect this in the estimation, sampling is first applied to the step length. The step length and the current heading estimate are used to determine the user’s plausible next position. This approach takes advantage of the correlation between the x and y directions, avoiding the need to sample each direction independently. Further, the proposed algorithm samples the gyroscope bias error. For low-cost MEMS gyroscopes, bias instability is a well-known issue. It is often addressed with ZUPTs; however, in our study, we assume no such periods are available. Instead, the map-matching algorithm successfully updates the gyroscope bias by providing a reliable correction to tracked bias. The estimated bias is then used to update the raw gyroscope measurements and subsequently refine the heading estimation. The particle resampling process is illustrated in the particle filter module in Figure 1. The corresponding equations for position estimation are shown below:
θ k + 1 i = θ k i + ( ω k i + b ω , k i ) · Δ t k ,
L ˜ k i = L k i + η , η N ( 0 , σ 2 ) ,
x k + 1 i = x k i + L ˜ k i · cos ( θ k + 1 i ) ,
y k + 1 i = y k i + L ˜ k i · sin ( θ k + 1 i ) ,
where the subscript k N denotes an epoch. An epoch is an interval of time where at least one measurement is obtained from accelerometers and gyroscopes. Since measurements do not correspond to the same timestamp, an interpolation is often required. In Equation (2), the time difference between two consecutive epochs (k and k 1 ) is denoted as Δ t k . In Equation (3) the symbol η denotes the noise. It is assumed that the noise is a Gaussian distribution ( N ) with a standard deviation of σ . If user does not take a step in the current epoch, L k i is set to zero and only the heading update applies.
The predicted position and heading estimation of the particles are matched with the map for the weight update. The map matching module is activated when the user takes a step. If a user step is detected, the algorithm first finds particles falling outside of the map and assigns a low weight to these. The weights ( w ( 0 , 1 ] ) are normalized to one after this step. The pseudocode of this step is shown in Algorithm 1.
Algorithm 1 Map Matching and Weight Update Triggered by Step Detection.
Require: 
Set of particles { x k i , y k i , θ k i , w k i } i = 1 N , map boundaries, step detection flag
  1:
if a step is detected then
  2:
   for  i = 1 to N do
  3:
     if ( x k i , y k i ) is inside the map boundaries then
  4:
         w k i low weight
  5:
     else
  6:
         w k i w k 1 i
  7:
     end if
  8:
   end for
  9:
   // Normalize weights
10:
    W total i = 1 N w k i
11:
   for  i = 1 to N do
12:
      w k i w k i / W total
13:
   end for
14:
end if
After the first update, a second update is achieved using the lines in the map. In this update, a line-segment is first drawn from the previous location of the particles to their current location. If this line crosses any map line, the corresponding particle receives a very low weight. Similarly to the previous step, the weights of the particles are normalized to one. Pseudocode of the second update is provided in Algorithm 2, where h corresponds to the epoch of the previous step. Figure 2 illustrates the intersection of the user’s step with the map-lines as green points (here, the user’s step is aligned with negative y-axis). The corresponding particles are assigned to a lower weight.
Algorithm 2 Line-Crossing Based Map Matching and Weight Update.
Require: 
Set of particles { x h i , y h i , x k i , y k i , w k i } i = 1 N , map lines
  1:
for  i = 1 to N do
  2:
    start ( x h i , y h i )
  3:
    end ( x k i , y k i )
  4:
    L i n e line crossing start & end
  5:
   if  L i n e cross any map lines then
  6:
      w k i low weight
  7:
   else
  8:
      w k i w k 1 i
  9:
   end if
10:
end for
11:
// Normalize weights
12:
// Normalize weights
13:
W total i = 1 N w k i
14:
for  i = 1 to N do
15:
    w k i w k i / W total
16:
end for
At each iteration, the distribution of the particles is compared to a Gaussian using cross entropy criterion. The cross entropy ( D c e ) of the two distributions is calculated using the equation shown in the following, where the distribution of a PF is represented with p ( s ) and the Gaussian distribution is sampled as q ( s ) .
D c e ( p , q ) = i p ( s i ) log 1 q ( s i )
While the distribution q ( s ) is sampled from a Gaussian, the mean of this distribution should be estimated for the current epoch using the particles. In Equation (7), the mean value of the target Gaussian distribution ( μ R 4 ) is estimated with the help of the current particles. Equation (8) shows the logarithm of the Gaussian distribution, which corresponds to the discrete distribution q ( s ) shown in Equation (6). The covariance in this distribution is denoted by Σ R 4 × 4 , and the dimensionality is denoted as d (this value is four, given the state vector). Finally, the cross-entropy of the PF with the Gaussian target distribution is shown in Equation (9). The proposed PF and cross-entropy check are shown in Figure 3.
μ k = i = 1 N w k i s k i
log q ( s k i ) = 1 2 ( s k i μ k ) Σ 1 ( s k i μ k ) 1 2 log ( 2 π ) d det ( Σ )
D c e ( p , q ) = i = 1 N w k i log q ( s k i )
The cross-entropy test explained above requires defining the target distribution (here, a Gaussian). To determine the covariance in this distribution, information from the 2D floor plan should be utilized. For the tests performed in the next section, we used the width of the hallway as the uncertainty in the target distribution along the x and y directions. The width of the hallway represents the shortest wall-to-wall distance. Particles that fall inside the hallway and move along its boundaries are valid and cannot be removed through map updates. Therefore, we expect the precision of the proposed method to match this width and the covariance matrix ( Σ ) of the target distribution is set based on the hallway width. If the covariance matrix is set to much smaller values, particle reduction will not occur, since the cross-entropy distance will not fall below the required threshold. On the other hand, if the covariance is set to a much larger value, particle reduction will happen too early, increasing the risk of particle impoverishment. Based on the discussion above, the covariance matrix of the target distribution can be set according to the specific structure of the environment.

3. Results

In this section, the accuracy of the developed method is evaluated using waypoints and other filtering-based solutions. To obtain a reference estimate of the user’s location along the trajectory, the user stops at specific points on the map, referred to as waypoints. The positions of these waypoints are extracted from the CAD model of the building. These stops can be easily detected in the dataset using the gyroscope measurements. At each waypoint, the user also aligns with a nearby wall in the hallway, and the corresponding hallway direction is used to estimate the heading. The proposed reduced PF is compared against classical PF (without particle reduction), extended Kalman filter (without map aid), extended Kalman filter (map-aided), and Humolire [26]. The map-aided Kalman filter incorporates the orientation of nearby walls in the update step to correct the heading.
Figure 4a shows the waypoints used for accuracy evaluation. In this figure, the start and end points are marked with a red flag. The CAD map of the environment is shown in blue lines, and the waypoints are represented as stars (nine waypoints in total). The user completes two loops before stopping at the same location as the start point. Data are collected using a Samsung A16 phone, which the user holds in hand during navigation, as shown in Figure 4b.
Figure 5 compares the estimated trajectories of the five methods. Based on these trajectories, the PF, Humolire, and the proposed reduced PF demonstrate better performance compared to the Kalman filtering–based approaches. The map-aided extended Kalman filter achieves higher position error initially; however, its accuracy degrades over time due to error accumulation throughout the user’s motion. These results indicate that extended Kalman filtering is not suitable for indoor navigation because of the highly non-Gaussian nature of trajectory estimation errors. A quantitative analysis of the results, including the errors at each waypoint, is presented in Figure 6 (position error) and Figure 7 (heading error). These results show that the proposed reduced PF outperforms Humolire, particularly in heading estimation, where Humolire exhibits significantly larger errors at the beginning of the navigation. The quantitative results of the position error (in meters) are summarized in Table 1, which further confirm that the proposed reduced PF outperforms both the Kalman filter and Humolire. Moreover, reducing the number of particles did not result in a significant loss of accuracy.
The reduced PF and Humolire trajectories are compared in more detail in Figure 8. During the two loops, the user follows a similar trajectory when turning at the corner (denoted as “zoomed”). The figure shows that the reduced PF estimates the trajectory accurately in both loops, with the results closely matching. In contrast, Humolire exhibits larger discrepancies and therefore lower accuracy.
To investigate the effectiveness of cross-entropy in triggering the particle reduction phase, the particle distribution during the user’s motion and the corresponding cross-entropy values are shown in Figure 9 and Figure 10. It can be observed that the cross-entropy decreases as the uncertainty in the particle locations approaches a uni-modal Gaussian distribution. The particle reduction step is marked in Figure 10, corresponding to Figure 9c.
The position errors in the x and y axes are often different, depending on the geometry of the solution. Geometry is an important concept in areas such as outdoor navigation using GNSS and indoor navigation using beacons. It refers to the relative positions of the sensors with respect to landmarks (such as satellites or, in this case, map lines) and can either improve or reduce accuracy in different directions. For example, in GNSS-based positioning, the vertical direction typically has weaker geometry, leading to lower accuracy. Geometry plays a key role when using other sensors for navigation, such as LiDAR, where poor accuracy is often observed along the direction of hallways in indoor environments.
For the problem of map-aided indoor PDR, geometry also plays a crucial role. While user motion is generally not restricted along hallways (the y direction), as shown in Figure 9, motion in the x direction is constrained. Therefore, it is expected that the map provides a more significant update in x due to better geometry. Figure 9 shows that once the particles converge (subfigures d, e, and f), they are more scattered in y compared to x. This discrepancy in geometry is further examined in Figure 11 and Figure 12. While all PF solutions yield highly accurate results in the x direction, the accuracy in the y direction is comparatively poor.
An important assessment criterion for smartphone applications is computational cost, as user-based navigation requires real-time solutions. The runtime of the proposed method is shown in Table 2. To obtain these evaluations, the execution time was recorded for particle prediction, particle updates (Algorithms 1 and 2), and particle resampling in the proposed method. Similarly, the runtimes of Humolire and the Kalman filters were recorded for their prediction and update steps. Each filter processed approximately 15,000 measurement epochs from the accelerometer and gyroscope. The IMU data were sampled at 60 Hz, corresponding to approximately 250 s of user motion. The processing rate of the proposed approach is about 37 Hz, which is suitable for real-time applications. We further measured and compare the time required for the cross-entropy test with particle prediction and update reported above. Overall, the cross-entropy test takes only 1 % of the total time for particle prediction and update. Therefore, this test does not lead to challenges for an online deployment of the algorithm.
Gyroscope leveling using accelerometer readings is an important step in the proposed algorithm (see Figure 1, particle filter independent module). Leveling corrects the roll and pitch of the device, which is essential for accurately estimating the user’s heading. To investigate the contribution of the leveling step, rotation offsets of 15 , 25 , 35 , and 45 were applied along the x-axis (see Figure 4). This is equivalent to tilting the smartphone up or down relative to the gravity vector. The estimated mean positions before and after levelling are provided in Table 3. The results indicate that, for smaller rotations (e.g., 15 ), leveling has little impact on the results. However, for larger rotations, position accuracy decreases when leveling is not applied. In the case of a 45 rotation offset, the scenario without gyroscope leveling fails to produce a solution due to particle impoverishment.

4. Conclusions

This paper presents a novel map-aided PF-PDR framework that tackles a long-standing challenge in PF-based trajectory estimation: computational inefficiency. The proposed method reduces the overall computational cost by using a two-stage PF. In the first phase, particles are initialized within the pre-built map. The number of particles is significantly reduced once convergence toward a Gaussian distribution is detected using the cross-entropy distance. Further improvement in the computational cost is achieved by using only the heading in the motion estimation. The heading is estimated successfully by levelling the gyroscope measurement to a virtual plane parallel to the floor plane. By utilizing gyroscope measurements and incorporating a cross-entropy-based sampling strategy, the proposed method attains faster and more stable convergence while preserving computational efficiency suitable for real-time positioning applications. Experimental evaluations on a collected dataset demonstrate that the approach achieves high accuracy, with an average positioning error of 0.9 m and an average processing rate of 37.0 Hz. Importantly, the framework operates without reliance on additional wireless signals or vision-based sensors, underscoring the feasibility of accurate and reliable indoor localization using only smartphone IMU data. Compared with traditional EKF-PDR, PF-PDR approaches and state of the art (Humolire), this research work provides a more accurate solution with improved computational efficiency.
This research work still has several limitations. First, the proposed solution relies on the availability of a pre-built floor map; therefore, trajectory estimation cannot be improved in large open areas which lack structural constraints. Second, the proposed PDR framework is limited to single-floor scenarios, as it only considers 2D motion without estimating vertical displacement along the z-axis. Future research will address the following aspects. First, the current solution will be extended to a positioning framework that dynamically adapts to the reliability and availability of maps. Moreover, we plan to explore the use of 3D and semantically enriched map representations to support multi-floor navigation.

Author Contributions

Conceptualization, I.A.S.H.; methodology, I.A.S.H. and M.A.; software, I.A.S.H.; validation, I.A.S.H.; formal analysis, I.A.S.H.; investigation, I.A.S.H. and M.A.; resources, I.A.S.H. and M.A.; data curation, I.A.S.H.; writing—original draft preparation, M.A. and I.A.S.H.; writing—review and editing, I.A.S.H., M.A. and X.Z.; visualization, I.A.S.H.; supervision, M.A. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The code is available on GitHub at: https://github.com/IlyarAbadi/APF_PDR, accessed on 30 November 2025.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Hokmabadi, I.A.S.; Ai, M.; El-Sheimy, N. A fast and accurate maximum likelihood particle filtering for the indoor DoA-based positioning. Geomatica 2025, 77, 100058. [Google Scholar] [CrossRef]
  2. Lee, G.T.; Seo, S.B.; Jeon, W.S. Indoor localization by Kalman filter based combining of UWB-positioning and PDR. In Proceedings of the 2021 IEEE 18th Annual Consumer Communications & Networking Conference (CCNC), Las Vegas, NV, USA, 9–12 January 2021; pp. 1–6. [Google Scholar]
  3. Chen, J.; Song, S.; Liu, Z. A PDR/WiFi indoor navigation algorithm using the federated particle filter. Electronics 2022, 11, 3387. [Google Scholar] [CrossRef]
  4. Jin, Z.; Li, Y.; Yang, Z.; Zhang, Y.; Cheng, Z. Real-time indoor positioning based on BLE beacons and pedestrian dead reckoning for smartphones. Appl. Sci. 2023, 13, 4415. [Google Scholar] [CrossRef]
  5. Hokmabadi, I.A.S.; Ai, M. Maximum Likelihood Particle Filtering for the Fusion Direction of Arrival Beacons and IMU in Indoor Environments. In Proceedings of the 37th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2024), Baltimore, MD, USA, 16–20 September 2024; pp. 1546–1558. [Google Scholar]
  6. Ai, M.; Hokmabadi, I.A.S.; Minaretzis, C.; El-Sheimy, N. Hierarchical Primitive and Semantics aided Scan Context for place recognition using LiDAR and Monocular Image. In Proceedings of the 2023 IEEE/ION Position, Location and Navigation Symposium (PLANS), Monterey, CA, USA, 24–27 April 2023; pp. 1074–1079. [Google Scholar]
  7. Li, T.; Sun, S.; Sattar, T.P.; Corchado, J.M. Fight sample degeneracy and impoverishment in particle filters: A review of intelligent approaches. Expert Syst. Appl. 2014, 41, 3944–3954. [Google Scholar] [CrossRef]
  8. Blanco-Claraco, J.L.; Mañas-Alvarez, F.; Torres-Moreno, J.L.; Rodriguez, F.; Gimenez-Fernandez, A. Benchmarking particle filter algorithms for efficient velodyne-based vehicle localization. Sensors 2019, 19, 3155. [Google Scholar] [CrossRef]
  9. Liu, X.; Zhou, B.; Huang, P.; Xue, W.; Li, Q.; Zhu, J.; Qiu, L. Kalman filter-based data fusion of Wi-Fi RTT and PDR for indoor localization. IEEE Sens. J. 2021, 21, 8479–8490. [Google Scholar] [CrossRef]
  10. Zheng, X.P.; Zhang, L.P.; Yu, Z.T.; Zhang, C. Adaptive Extended Kalman Filter Based Indoor Positioning Algorithm Integrating Wi-Fi and PDR. IAENG Int. J. Comput. Sci. 2025, 52, 2429–2444. [Google Scholar]
  11. Yamagishi, S.; Jing, L. The Extended Kalman Filter with Reduced Computation Time for Pedestrian Dead Reckoning. IEEE Sens. Lett. 2023, 7, 6010404. [Google Scholar] [CrossRef]
  12. Villacrés, J.L.C.; Zhao, Z.; Braun, T.; Li, Z. A particle filter-based reinforcement learning approach for reliable wireless indoor positioning. IEEE J. Sel. Areas Commun. 2019, 37, 2457–2473. [Google Scholar] [CrossRef]
  13. Bai, S.; Wen, W.; Li, Y.; Shi, C.; Hsu, L.T. Toward Persistent Spatial Awareness: A Review of Pedestrian Dead Reckoning-Centric Indoor Positioning with Smartphones. IEEE Trans. Instrum. Meas. 2024, 73, 8507828. [Google Scholar] [CrossRef]
  14. Wang, X.; Chen, G.; Yang, M.; Jin, S. A multi-mode PDR perception and positioning system assisted by map matching and particle filtering. ISPRS Int. J. Geo-Inf. 2020, 9, 93. [Google Scholar] [CrossRef]
  15. Montemerlo, M.; Thrun, S.; Koller, D.; Wegbreit, B. FastSLAM: A factored solution to the simultaneous localization and mapping problem. In Proceedings of the Eighteenth National Conference on Artificial Intelligence, Edmonton, AB, Canada, 28 July–1 August 2002; pp. 593–598. [Google Scholar]
  16. Shao, K.; Li, Z.; Guo, Q.; Liu, Z.; Wu, Q. Fingerprint accuracy indication geomagnetic/PDR indoor adaptive integrated positioning based on smartphones. IEEE Sens. J. 2023, 23, 29545–29558. [Google Scholar] [CrossRef]
  17. Hardegger, M.; Mazilu, S.; Caraci, D.; Hess, F.; Roggen, D.; Tröster, G. ActionSLAM on a smartphone: At-home tracking with a fully wearable system. In Proceedings of the International Conference on Indoor Positioning and Indoor Navigation, Montbeliard, France, 28–31 October 2013; pp. 1–8. [Google Scholar]
  18. Sun, M.; Wang, Y.; Xu, S.; Cao, H.; Si, M. Indoor positioning integrating PDR/geomagnetic positioning based on the genetic-particle filter. Appl. Sci. 2020, 10, 668. [Google Scholar] [CrossRef]
  19. Shi, L.F.; Yu, M.X.; Yin, W. PDR/geomagnetic fusion localization method based on AOFA-improved particle filter. IEEE Trans. Instrum. Meas. 2021, 71, 9500109. [Google Scholar] [CrossRef]
  20. Han, K.; Xing, H.; Deng, Z.; Du, Y. A RSSI/PDR-based probabilistic position selection algorithm with NLOS identification for indoor localisation. ISPRS Int. J. Geo-Inf. 2018, 7, 232. [Google Scholar] [CrossRef]
  21. Nurminen, H.; Ristimäki, A.; Ali-Löytty, S.; Piché, R. Particle filter and smoother for indoor localization. In Proceedings of the International Conference on Indoor Positioning and Indoor Navigation, Montbeliard, France, 28–31 October 2013; pp. 1–10. [Google Scholar]
  22. Yang, X.; Huang, X.; Zhang, Y.; Liu, Z.; Pang, Y. Multi-Sensor fusion and semantic map-based particle filtering for robust indoor localization. Measurement 2025, 242, 115874. [Google Scholar] [CrossRef]
  23. Harder, D.; Shoushtari, H.; Sternberg, H. Real-time map matching with a backtracking particle filter using geospatial analysis. Sensors 2022, 22, 3289. [Google Scholar] [CrossRef] [PubMed]
  24. Lu, C.; Uchiyama, H.; Thomas, D.; Shimada, A.; Taniguchi, R.i. Indoor positioning system based on chest-mounted IMU. Sensors 2019, 19, 420. [Google Scholar] [CrossRef]
  25. Zhao, H.; Cheng, W.; Yang, N.; Qiu, S.; Wang, Z.; Wang, J. Smartphone-based 3D indoor pedestrian positioning through multi-modal data fusion. Sensors 2019, 19, 4554. [Google Scholar] [CrossRef] [PubMed]
  26. Ghaoui, M.A.; Vincke, B.; Reynaud, R. Human motion likelihood representation map-aided PDR particle filter. IEEE Sensors J. 2022, 23, 484–494. [Google Scholar] [CrossRef]
  27. Xia, H.; Zuo, J.; Liu, S.; Qiao, Y. Indoor localization on smartphones using built-in sensors and map constraints. IEEE Trans. Instrum. Meas. 2018, 68, 1189–1198. [Google Scholar] [CrossRef]
  28. Perttula, A.; Leppäkoski, H.; Kirkko-Jaakkola, M.; Davidson, P.; Collin, J.; Takala, J. Distributed indoor positioning system with inertial measurements and map matching. IEEE Trans. Instrum. Meas. 2014, 63, 2682–2695. [Google Scholar] [CrossRef]
  29. Junoh, S.A.; Subedi, S.; Pyun, J.Y. Floor map-aware particle filtering based indoor navigation system. IEEE Access 2021, 9, 114179–114191. [Google Scholar] [CrossRef]
  30. Elfring, J.; Torta, E.; van de Molengraft, R. Particle Filters: A Hands-On Tutorial. Sensors 2021, 21, 438. [Google Scholar] [CrossRef] [PubMed]
  31. Douc, A.; Cappé, O.; Moulines, E. Comparison of resampling schemes for particle filtering. In Proceedings of the 4th International Symposium on Image and Signal Processing and Analysis (ISPA 2005), Zagreb, Croatia, 15–17 September 2005; pp. 64–69. [Google Scholar] [CrossRef]
Figure 1. An overview of the proposed reduced particle filter.
Figure 1. An overview of the proposed reduced particle filter.
Ijgi 14 00476 g001
Figure 2. This figure shows the intersection of the user’s step with the map-lines. The green dots indicate an intersection. The corresponding particles to these green dots are assigned to a lower weight.
Figure 2. This figure shows the intersection of the user’s step with the map-lines. The green dots indicate an intersection. The corresponding particles to these green dots are assigned to a lower weight.
Ijgi 14 00476 g002
Figure 3. Overview of the developed PF method. The reduction in the number of particles happen after algorithm passes the cross-entropy threshold check.
Figure 3. Overview of the developed PF method. The reduction in the number of particles happen after algorithm passes the cross-entropy threshold check.
Ijgi 14 00476 g003
Figure 4. This figure illustrates the trajectory and how the user is holding the phone in his hand during navigation: (a) The trajectory used to assess the accuracy of the proposed method. User stops at certain way points with known coordinates in the CAD model. (b) A schematic of a user holding the phone in his hand while data is being collected.
Figure 4. This figure illustrates the trajectory and how the user is holding the phone in his hand during navigation: (a) The trajectory used to assess the accuracy of the proposed method. User stops at certain way points with known coordinates in the CAD model. (b) A schematic of a user holding the phone in his hand while data is being collected.
Ijgi 14 00476 g004
Figure 5. Estimated trajectory of the user: (a). Kalman filter (map aided) (b). Kalman filter (without map). (c) PF (not reduced). (d) PF (reduced, Proposed solution). (e) Humolire.
Figure 5. Estimated trajectory of the user: (a). Kalman filter (map aided) (b). Kalman filter (without map). (c) PF (not reduced). (d) PF (reduced, Proposed solution). (e) Humolire.
Ijgi 14 00476 g005
Figure 6. Position error comparison in x and y directions of the methods.
Figure 6. Position error comparison in x and y directions of the methods.
Ijgi 14 00476 g006
Figure 7. Heading error comparison of the methods.
Figure 7. Heading error comparison of the methods.
Ijgi 14 00476 g007
Figure 8. A closer look at estimated trajectories using Humolire and proposed reduced PF. The user performs the same corner turn in both loops. While the developed approach estimates the shape and motion accurately, Humolire achieves a less accurate estimation.
Figure 8. A closer look at estimated trajectories using Humolire and proposed reduced PF. The user performs the same corner turn in both loops. While the developed approach estimates the shape and motion accurately, Humolire achieves a less accurate estimation.
Ijgi 14 00476 g008
Figure 9. Illustration of the particle history and the estimated trajectory thoughout the user’s motion: (a) Step 1. (b) Step 20. (c) Step 39. (d) Step 101. (e) Step 351. (f) Step 401.
Figure 9. Illustration of the particle history and the estimated trajectory thoughout the user’s motion: (a) Step 1. (b) Step 20. (c) Step 39. (d) Step 101. (e) Step 351. (f) Step 401.
Ijgi 14 00476 g009aIjgi 14 00476 g009b
Figure 10. Cross-entropt loss history. The particle reduction is trigger at step 39. This corresponds to Figure 9c.
Figure 10. Cross-entropt loss history. The particle reduction is trigger at step 39. This corresponds to Figure 9c.
Ijgi 14 00476 g010
Figure 11. Position error comparison in x direction.
Figure 11. Position error comparison in x direction.
Ijgi 14 00476 g011
Figure 12. Position error comparison in y direction.
Figure 12. Position error comparison in y direction.
Ijgi 14 00476 g012
Table 1. Position error comparison. The error is measured at 9 wayponts (WP). The best results are highlighted using bold colors.
Table 1. Position error comparison. The error is measured at 9 wayponts (WP). The best results are highlighted using bold colors.
FilterWP (m) 1WP (m) 2WP (m) 3WP (m) 4WP (m) 5WP (m) 6WP (m) 7WP (m) 8WP (m) 9Overall Error
KF (map aided)0.82.11.41.25.56.24.87.912.84.7
KF (without map)0.61.71.34.38.510.39.07.65.05.4
PF (not reduced) 0.5 ± 0.1 0.9 ± 0.3 0.8 ± 0.1 1.3 ± 0.1 0.8 ± 0.1 0.1 ± 0.1 0.9 ± 0.3 0.3 ± 0.1 1.0 ± 0.1 0.7 ± 0.1
PF (reduced, Proposed) 0.3 ± 0.2 1.4 ± 0.3 0.3 ± 0.2 1.6 ± 0.3 0.5 ± 0.1 0.5 ± 0.2 1.5 ± 0.4 0.5 ± 0.2 1.7 ± 0.2 0.9 ± 0.1
Humolire2.41.32.13.10.61.20.51.63.01.8
Table 2. The runtime of the methods.
Table 2. The runtime of the methods.
FilterTotal Time [s] (Rate [Hz])ParticlesTimed Modules
KF (map aided)0.1 (2500)N/Amean, covariance prediction (map updates)
KF (without map)0.1 (2500)N/Amean, covariance prediction (no updates)
PF (not reduced)25.6 (9.8)4000particle prediction, update and resampling
PF (reduced, proposed)6.9 (37.0)4000 (1000 after reduction)particle prediction, update and resampling
Humolire139.0 (1.8)500particle prediction, update and resampling
Table 3. Position errors with respect to different rotation offset in the x-axis.
Table 3. Position errors with respect to different rotation offset in the x-axis.
Rotation Offset (°)Position Error (m) Without Gyroscope LevelingPosition Error (m) with Gyroscope Leveling
150.951.00
250.920.88
352.501.02
45failed (particle impoverishment)1.32
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Ai, M.; Hokmabadi, I.A.S.; Zhao, X. A Novel Smartphone PDR Framework Based on Map-Aided Adaptive Particle Filter with a Reduced State Space. ISPRS Int. J. Geo-Inf. 2025, 14, 476. https://doi.org/10.3390/ijgi14120476

AMA Style

Ai M, Hokmabadi IAS, Zhao X. A Novel Smartphone PDR Framework Based on Map-Aided Adaptive Particle Filter with a Reduced State Space. ISPRS International Journal of Geo-Information. 2025; 14(12):476. https://doi.org/10.3390/ijgi14120476

Chicago/Turabian Style

Ai, Mengchi, Ilyar Asl Sabbaghian Hokmabadi, and Xuan Zhao. 2025. "A Novel Smartphone PDR Framework Based on Map-Aided Adaptive Particle Filter with a Reduced State Space" ISPRS International Journal of Geo-Information 14, no. 12: 476. https://doi.org/10.3390/ijgi14120476

APA Style

Ai, M., Hokmabadi, I. A. S., & Zhao, X. (2025). A Novel Smartphone PDR Framework Based on Map-Aided Adaptive Particle Filter with a Reduced State Space. ISPRS International Journal of Geo-Information, 14(12), 476. https://doi.org/10.3390/ijgi14120476

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop