A Geomagnetic/Odometry Integrated Localization Method for Differential Robot Using Real-Time Sequential Particle Filter

Geomagnetic matching navigation is extensively utilized for localization and navigation of autonomous robots and vehicles owing to its advantages such as low cost, wide-area coverage, and no cumulative errors. However, due to the influence of magnetometer measurement noise, geomagnetic localization algorithms based on single-point particle filters may encounter mismatches during continuous operation, consequently limiting their long-range localization performance. To address this issue, this paper proposes a real-time sequential particle filter-based geomagnetic localization method. Firstly, this method mitigates the impact of noise during continuous operation while ensuring real-time performance by performing real-time sequential particle filtering. Then, it enhances the long-range positioning accuracy of the method by rectifying the trajectory shape of the odometry through odometry calibration parameters. Finally, by performing secondary matching on the preliminary matching results via the MAGCOM algorithm, the positioning error of the method is further minimized. Experimental results show that the proposed method has higher positioning accuracy compared to related algorithms, resulting in reductions of over 28.58%, 37.11%, and 0.77% in RMSE, max error, and error at the end, respectively.


Introduction
In autonomous robot navigation, attaining cost-effective, highly precise, and real-time localization is imperative.A differential robot [1] is a type of autonomous robot based on a differential drive, which means controlling the speed difference between two wheels to achieve direction control and turning.This simple and efficient design makes differential robots popular for various applications.Wheel odometry [2] is one of the commonly used navigation methods for differential robots, which serves as a sensor for measuring the displacement and direction of a moving vehicle.It uses pulse count data generated by encoders to measure the rotation angle of wheels [3] and computes the vehicle's motion through established motion models.While wheel odometry presents advantages such as affordability and real-time performance, it is susceptible to issues of error accumulation [4].The precision of measurement can be affected by tire slippage, tire deformation, uneven ground surfaces, and other factors.Consequently, in practical applications, the integration of wheel odometry with other sensors is often employed to enhance the accuracy and robustness of localization.
Geomagnetic-aided navigation (GMN) [5] is a technique that utilizes Earth's magnetic field information for navigation.It supports other navigation systems, such as the inertial navigation system (INS), by correcting the provided position and orientation.This is achieved by matching the measurement of the geomagnetic field intensity at the current position with the geomagnetic reference map of nearby regions.Consequently, this method enhances the navigation accuracy of robots and vehicles.Compared to other localization and navigation methods, GMN offers advantages such as low cost, wide-area coverage, and no cumulative errors [6,7].As a result, it has been widely used in various fields.Recognizing the similarities between odometry and INS regarding high short-term positioning accuracy and the presence of cumulative errors over long distances [8], integrating GMN with wheel odometry offers an effective means to correct the accumulated errors in odometry.This integration facilitates long-distance, low-cost, high-precision real-time localization and navigation.The commonly used methods for geomagnetic-assisted navigation include geomagnetic filtering and geomagnetic matching.
Geomagnetic filtering is a real-time method for localization and navigation that analyzes one data point at a time.It addresses the accumulation of positioning errors by refining the current position provided by INS, odometry, and other systems through filtering.A Kalman filter [9,10] is one of the commonly used geomagnetic filtering algorithms.In 2014, reference [11] demonstrated the feasibility of the Sandia inertial terrain-aided navigation algorithm based on the Kalman filter for geomagnetic/INS integrated navigation.The observation of this algorithm relies on a linearized geomagnetic field model.However, geomagnetic models exhibit highly nonlinear characteristics, and the accuracy of the algorithm is affected by the linearization method.In comparison to the Kalman filter, the particle filter [12] offers better advantages in processing nonlinear geomagnetic data due to its good performance in addressing nonlinear and non-Gaussian estimation problems.In particle filtering, the state of a dynamic system is approximated by a set of weighted particles, with each particle representing a possible state and the associated weight representing the likelihood of that state being true.In 2016, reference [13] demonstrated the feasibility of the geomagnetic particle filtering algorithm for indoor pedestrian localization.In 2018, the geomagnetic particle filtering algorithm was used to locate autonomous surface vehicles, achieving better results compared to dead reckoning [14].In 2020, Quintas et al. compared the effects of the extended Kalman filter, unscented Kalman filter, and particle filter in autonomous underwater vehicle navigation, demonstrating the better robustness of the particle filter in geomagnetic navigation [15].In 2022, Lingfeng et al. optimized the geomagnetic particle filter using the firefly algorithm, reducing the problem of particle impoverishment and degradation [16].In 2023, Benjamin proposed the use of geomagnetic particle filtering for indoor positioning of differential robots, simultaneously calibrating the magnetometers to effectively reduce the position and orientation errors [17].However, such algorithms are prone to significant errors and even divergence in situations with strong geomagnetic noise.In order to avoid this situation, in 2023, Huapeng et al. used a particle filter for underwater positioning and introduced a distance interval between each execution of the algorithm to reduce errors caused by magnetometer measurement noise [18].However, the long interval distance between the algorithm executions limits its ability to correct angular error, leading to a decline in positioning accuracy over time due to accumulated angular errors.
The geomagnetic matching method reduces the errors of navigation systems such as INS and odometry by matching the geomagnetic values and relative positions on a trajectory with the reference map.The commonly used geomagnetic matching methods include geomagnetic contour matching algorithms (MAGCOM) [19], iterative closest contours point (ICCP) [20], intelligent optimization algorithms [21], and neural networks [7].In 2018, Xiao et al. proposed an improved ICCP algorithm that dynamically selects the appropriate matching length and matching points [20].In the same year, Zhuo et al. proposed a geomagnetic vector ICCP algorithm based on searching the principle of trusted point sets, which improves the reliability of positioning compared to scalar matching [22].In 2020, Chen et al. compared the applicability of MAGCOM, ICCP, and Sandia inertial magnetic aided navigation (SIMAN) algorithms in GMN for a supersonic aircraft [23].In the same year, Wang et al. improved the geomagnetic matching algorithm based on particle swarm optimization (PSO) by using redundant information from geomagnetic measurements to constrain the particles, thus enhancing the algorithm's noise resistance capability [24].In 2022, Xu et al. proposed a combination of a PSO and ICCP algorithm to reduce the impact of initial errors on the ICCP [25].In the same year, Jin et al. proposed an ICCP algorithm based on three reference maps of geomagnetic field vector data and demonstrated that using multiple reference maps in ICCP can further reduce the matching errors of single-component ICCP [26].In 2023, Zhuo et al. used a probabilistic neural network for geomagnetic matching, which significantly reduced the probability of mismatch compared to traditional algorithms.These algorithms can reduce errors caused by the noise in singlepoint magnetometer measurements, but they require vehicles to move a certain distance and obtain a data sequence before each matching process, so their real-time performance is not strong.Moreover, most geomagnetic matching algorithms, such as ICCP and MAGCOM, only apply rigid transformations such as translation and rotation to input trajectories [27].When applied to geomagnetic/odometry integrated navigation, the performance is limited due to the influence of a significant deviation between the actual trajectory and the matched trajectory shape caused by random factors in the odometry data.
In order to address the issue of the algorithm's sensitivity to noise and the decrease in accuracy over time due to accumulated errors, this paper proposes a geomagnetic/odometry integrated localization method based on a real-time sequential particle filter (RSPF) for differential robot navigation.The main contributions of this paper can be summarized as follows: (1) Considering the additional errors caused by the influence of noise when the singlepoint geomagnetic particle filter algorithm operates continuously, we perform realtime sequential particle filtering by modifying the particles from single-point to firstin-first-out (FIFO) sequence using the data sequence from a segment of the trajectory.The particle weights are calculated using the data from the entire sequence, reducing the impact of measurement noise from individual points.(2) To minimize the positioning error caused by sequence matching based on rigid transformation when there is a substantial difference between the actual trajectory and the odometry trajectory, we incorporate the odometry calibration parameters of a differential robot into particles.The shape of the odometry trajectory is adjusted in real time, making it closer to the real trajectory.(3) To further improve the positioning accuracy, secondary matching of the matching results through the MAGCOM algorithm is performed to reduce the positioning errors of the sequential particle filter.
The rest of this paper is organized as follows.Section 2 describes the framework and design process of the RSPF-based localization method.In Section 3, simulation tests are given to verify the feasibility of the method.Section 4 proposes the experimental results and discussion.In Section 5, our works are concluded.

Proposed Method
The framework of the RSPF-based localization method is shown in Figure 1.In this section, we analyze the three components of our method, including RSPF, trajectory shape correction using odometry calibration parameters, and matching result correction using MAGCOM.We also describe the steps and implementation details of the method.

RSPF
The single-point-based geomagnetic particle filter has high real-time performance.However, when the amplitude of the noise exceeds the amplitude of geomagnetic field variations, continuous particle filtering may result in additional errors and even cause matching failure [18], making it difficult to use for long-range positioning.To improve the matching accuracy, prior research proposes using a particle filter based on a segment of the path, and experimental results have demonstrated the effective improvement in localization precision achieved through a path-matching-based particle filter [28].Nonetheless, the execution of the algorithm still requires waiting for data sequence collection, thereby compromising the real-time performance of the particle filtering.In contrast to previous studies, this paper shifts from single-point matching to real-time sequence matching, ensuring real-time performance while minimizing the impact of noise.The i-th particle of the k-th execution of the particle filter i k p is defined as (1).

, ( , )
where i x and i y are used to calculate the trajectory associated with the particle.
As shown in Figure 2, i k P is the trajectory corresponding to i k p , and Q is the tra- jectory to be matched.R represents the real trajectory.

RSPF
The single-point-based geomagnetic particle filter has high real-time performance.However, when the amplitude of the noise exceeds the amplitude of geomagnetic field variations, continuous particle filtering may result in additional errors and even cause matching failure [18], making it difficult to use for long-range positioning.To improve the matching accuracy, prior research proposes using a particle filter based on a segment of the path, and experimental results have demonstrated the effective improvement in localization precision achieved through a path-matching-based particle filter [28].Nonetheless, the execution of the algorithm still requires waiting for data sequence collection, thereby compromising the real-time performance of the particle filtering.In contrast to previous studies, this paper shifts from single-point matching to real-time sequence matching, ensuring real-time performance while minimizing the impact of noise.
The i-th particle of the k-th execution of the particle filter p i k is defined as (1).
where x i and y i are used to calculate the trajectory associated with the particle.As shown in Figure 2, P i k is the trajectory corresponding to p i k , and Q is the trajectory to be matched.R represents the real trajectory.P i k1 , Q 1 , and R 1 are the starting points of P i k , Q, and R, respectively.S is the constraint region of P i k1 with Q 1 as its center, and is used to prevent the position of P i k1 from being too far from Q 1 , which could lead to matching failure.P i k can be calculated as (2).
To improve the matching effectiveness, we calculate the particle weights using the X and Z components of the magnetic field vector along with the scalar value F, which represents the magnitude of the geomagnetic field vector.Due to the fact that the Y component can be calculated through X, Z, and F, ignoring the Y component has little effect on the feature dimension used for positioning.In addition, the calculation of geomagnetic three-axis vector data requires the attitude information of the vehicle [19], but the measurement of attitude sensors inevitably comes with noise, so the accuracy of geomagnetic vector data is often lower than that of scalar data.Therefore, we choose to ignore the Y component.
Based on the particle weight formula proposed in reference [18], we define the weight of p i k as (3).
where w i k is the weight of p i k ; N D represents the length of the trajectory; F j real , X j real , and Z j real , respectively, represent the scalar and X and Z component values of the geomagnetic field at the j-th position on the reference maps; F j mes , X j mes , and Z j mes , respectively, represent the measurement values of scalar and X and Z components; τ is a constant selected based on the variance of measurement errors to prevent the error magnitude from being too large.Due to the influence of attitude sensor errors, the accuracy of the three-axis vector component measurements of the geomagnetic field is often lower than that of the scalar.Therefore, λ is needed to adjust the weight of vector components.
To improve the matching effectiveness, we calculate the particle weights using the X and Z components of the magnetic field vector along with the scalar value F, which represents the magnitude of the geomagnetic field vector.Due to the fact that the Y component can be calculated through X, Z, and F, ignoring the Y component has little effect on the feature dimension used for positioning.In addition, the calculation of geomagnetic three-axis vector data requires the attitude information of the vehicle [19], but the measurement of attitude sensors inevitably comes with noise, so the accuracy of geomagnetic vector data is often lower than that of scalar data.Therefore, we choose to ignore the Y component.Based on the particle weight formula proposed in reference [18], we define the weight of where Z , respectively, represent the scalar and X and Z component values of the geomagnetic field at the j-th position on the reference maps; j mes F , j mes X , and j mes Z , respectively, represent the measurement values of scalar and X and Z components; τ is a con- stant selected based on the variance of measurement errors to prevent the error magnitude from being too large.Due to the influence of attitude sensor errors, the accuracy of the three-axis vector component measurements of the geomagnetic field is often lower than that of the scalar.Therefore, λ is needed to adjust the weight of vector components.After calculating the weights of all particles, the weights are normalized using (4).
Then, the particles are resampled using the method described in reference [15].The result of the particle filter p k is calculated as (5).
where T refers to matrix transpose.It can be seen from ( 3) that the weight of each particle is affected by the geomagnetic measurement values on a segment of trajectory, mitigating the effect of measurement noise of individual points.However, similar to geomagnetic matching algorithms, sequential particle filtering also requires the processing of data sequences collected over a period of time, which can impact real-time performance.In the field of gravity-aided navigation, some related studies have proposed the utilization of FIFO sequences to store a segment of data, enabling the implementation of real-time ICCP algorithms [29,30].This kind of algorithm achieves real-time sequence matching, greatly improving the real-time performance.Inspired by these studies, this paper applies FIFO sequences to geomagnetic particle filtering.Before the algorithm is executed, a precollected data sequence of length N D is needed.Afterward, each time a new data point is obtained, the pre-stored data sequence is updated to generate particles and achieve real-time sequential particle filtering.As shown in Figure 3, assuming it is the k-th execution of the particle filter, the last N D points of the data to be matched are formed into data sequence D k , and the trajectory P i k , which corresponds to the i-th particle p i k , is generated based on it.After one execution of the particle filter, the k-th point Q k is removed from the sequence and a new data point Q k+N D is added to form a new sequence D k+1 for the next filtering.
sequences to geomagnetic particle filtering.Before the algorithm is executed, a pre-collected data sequence of length D N is needed.Afterward, each time a new data point is obtained, the pre-stored data sequence is updated to generate particles and achieve realtime sequential particle filtering.As shown in Figure 3, assuming it is the k-th execution of the particle filter, the last

Trajectory Shape Correction Using Odometry Calibration Parameters
The data obtained from the differential wheel odometer is severely affected by random factors, resulting in a substantial difference between the actual trajectory and the odometry trajectory, as shown in Figure 4. Due to the rigid transformation of geomagnetic sequence matching algorithms, such as ICCP and MAGCOM, the matching performance is limited when applied to odometry trajectory matching.As shown in Figure 5, O rep- resents the odometry trajectory, R represents the real trajectory, and P represents the matching result.Due to the significant difference in shape between O and R , P and R are difficult to overlap, resulting in positioning errors.Therefore, the particles gener- ated by RSPF are not rigid transformations of O , but trajectories with modified shapes.

Trajectory Shape Correction Using Odometry Calibration Parameters
The data obtained from the differential wheel odometer is severely affected by random factors, resulting in a substantial difference between the actual trajectory and the odometry trajectory, as shown in Figure 4. Due to the rigid transformation of geomagnetic sequence matching algorithms, such as ICCP and MAGCOM, the matching performance is limited when applied to odometry trajectory matching.As shown in Figure 5, O represents the odometry trajectory, R represents the real trajectory, and P represents the matching result.Due to the significant difference in shape between O and R, P and R are difficult to overlap, resulting in positioning errors.Therefore, the particles generated by RSPF are not rigid transformations of O, but trajectories with modified shapes.The motion principle of differential robots is based on a differential drive, which means controlling the speed difference between two wheels to achieve direction control and turning.As shown in Figure 6, the motion of a differentially steered robot can be approximated as a circular motion in a short period.O C is the center of the circular motion, r is the distance from O C to the center of two driven wheels, d is the distance from the driven wheel to the center of the two wheels, θ is the orientation of the robot at the previous moment, dθ is the angle increment during this period, ds is the displacement of the robot   The motion principle of differential robots is based on a differential drive, which means controlling the speed difference between two wheels to achieve direction control and turning.As shown in Figure 6, the motion of a differentially steered robot can be approximated as a circular motion in a short period.C O is the center of the circular mo- tion, r is the distance from C O to the center of two driven wheels, d is the distance from the driven wheel to the center of the two wheels, θ is the orientation of the robot at the previous moment, dθ is the angle increment during this period, ds is the displace- ment of the robot during this period, L r and R r are the radii of the left and right wheels, and L ω and R ω are the angular velocities of the left and right wheels.The motion model of the differential wheeled robot is as follows: where L v and R v represent the linear velocities of the left and right wheels; v repre- sents the robot's velocity at the current moment; and ω represents the robot's angular velocity at the current moment.
The position of the robot can be calculated as follows: The motion model of the differential wheeled robot is as follows: where v L and v R represent the linear velocities of the left and right wheels; v represents the robot's velocity at the current moment; and ω represents the robot's angular velocity at the current moment.
The position of the robot can be calculated as follows: x new y new = x old y old where dt is the sampling interval; (x old , y old ) is the position of the robot at the previous moment; and (x new , y new ) is the position of the robot at the current moment.
In practical applications, the parameters d, r L , and r R may have some differences from the specifications provided by the robot manufacturer, and therefore require pre-calibration before use [1].The accuracy of calibration is influenced by a calibration algorithm and the data being used and is one of the main causes of odometry trajectory errors.Adjusting the above parameters appropriately can affect the shape of the trajectory and reduce errors.The influence of the changes in different parameters on the trajectory shape is shown in Figure 7.This paper adds parameters d , L r , and R r into the particles, allowing the trajectory shape of each particle to be adjusted.By employing geomagnetic particle filtering, the method generates results that closely resemble the real trajectory.The calculation of the particle i k p can be modified as (12)., 0 ( ) This paper adds parameters d, r L , and r R into the particles, allowing the trajectory shape of each particle to be adjusted.By employing geomagnetic particle filtering, the method generates results that closely resemble the real trajectory.The calculation of the particle p i k can be modified as (12).
where r i L , r i R , and d i are used to adjust the shape of the trajectory P i k corresponding to the particle p i k , and x i and y i are used to add an overall offset to P i k .Trajectory P i k is shown in Figure 8. P i kj is the j-th point on the trajectory.Assuming that θ is the initial orientation of the robot at the starting point of the trajectory, the calculation of the orientation of the robot at P i kj is as (13).This paper adds parameters d , L r , and R r into the particles, allowing the trajectory shape of each particle to be adjusted.By employing geomagnetic particle filtering, the method generates results that closely resemble the real trajectory.The calculation of the particle i k p can be modified as (12).
Sensors 2024, 24, 2120 9 of 24 where θ j is the orientation of the robot at P i kj , θ j−1 represents the orientation at the previous point, and ω Lj and ω Rj are the angular velocities of the left and right wheels corresponding to P i kj .P i kj can be calculated as (14).
x i y i , j = 0 where P i kj−1 is the previous point on P i k and O 1 is the starting point of the odometry trajectory O.
Before performing particle filtering, it is necessary to pre-calibrate parameters r L , r R and d of the odometer using a set of data to minimize the differences between the odometer trajectory and the actual trajectory.The pre-calibrated parameters are denoted as r L ′ , r R ′ , and d ′ , which are used to generate odometer trajectories.In the process of particle filtering, it is necessary to limit the range of each particle to reduce the possibility of particle filter divergence.The range of , and the range of

Matching Result Correction Using MAGCOM
As shown in Figure 8, due to the imperfect match between P i k and the real trajectory, there may be position errors in the positioning results.Meanwhile, the method may encounter matching failures in areas with a high noise impact on the geomagnetic data.Therefore, a subsequent correction of the matched results is needed.The MAGCOM algorithm works by performing a translational transformation on the trajectory to be matched, iterating over nearby grid points, and using mean square difference (MSD) to obtain the position with the lowest error in terms of geomagnetic field intensity.This algorithm exhibits fast computation, but it is highly influenced by the similarity of the trajectory shapes.Given that RSPF can effectively reduce trajectory shape errors, we choose to use MAGCOM as the method for correcting matching results.After executing RSPF for a certain distance, we use MAGCOM to perform secondary matching on the preliminary matching results.
During the execution of MAGCOM, the search points that may serve as matching results are commonly selected as A 1 × B 1 grid points on the geomagnetic reference map near the trajectory to be matched.Since the position error may be smaller than the grid length L 1 , this paper divides grids in the search area into sub-grids of length L 2 .The data of the sub-grid points are obtained through bilinear interpolation.The search points are selected as the nearest A 2 × B 2 sub-grid points to the starting point of the trajectory to be matched.As shown in Figure 9, O is the trajectory composed of the last M points in the particle filter matching result sequence R s , and R is the corresponding true trajectory.P i is the i-th search trajectory of MAGCOM.Considering the noise impact of geomagnetic vector data, the MSD calculation is as follows: where e i MSD is the MSD of P i ; F j i , X j i , and Z j i , respectively, represent the scalar and X and Z component values of the geomagnetic field at the j-th position of P i on the reference maps; F j mes , X j mes , and Z j mes , respectively, represent the measurement values of the scalar and X and Z components.γ is a constant used to adjust the weight of vector components due to the lower accuracy of the geomagnetic field vector component measurements than that of the scalar.

Method Steps
The method proposed in this paper utilizes RSPF to effectively reduce the impact of magnetometer measurement noise.By incorporating odometry calibration parameters into particles, the trajectory shapes can be adjusted in real time to avoid errors caused by rigid transformation.Finally, MAGCOM is used to perform secondary matching on the preliminary matching results, further improving the positioning accuracy.The method flowchart is shown in Figure 10, and the method includes the following steps: (1) If a stop command is received, navigation is considered finished.Otherwise, step two is performed.
1 k = and perform the third step.Otherwise, repeat the second step.
(3) If i N < , perform the third step.Otherwise, the sixth step is performed.To ensure the real-time performance of the method, we only replace the endpoint of R s with the endpoint of the result of MAGCOM after each correction.When executing RSPF next time, an offset will be added to all positions in data sequence D k .The offset can be calculated as (16). x where R s_last is the endpoint of R s ; P MAG_last is the endpoint of the result of MAGCOM; (x D k , y D k ) represents the position coordinates in D k ; and (x ′ D k , y ′ D k ) is the position coordinates with added offset.

Method Steps
The method proposed in this paper utilizes RSPF to effectively reduce the impact of magnetometer measurement noise.By incorporating odometry calibration parameters into particles, the trajectory shapes can be adjusted in real time to avoid errors caused by rigid transformation.Finally, MAGCOM is used to perform secondary matching on the preliminary matching results, further improving the positioning accuracy.The method flowchart is shown in Figure 10, and the method includes the following steps:

Simulation
In this section, the feasibility and localization performance of the RSPF-based localization method is evaluated through simulation.We first establish a simulation environment.Then, we analyze the feasibility of the method by measuring the influence of different parameter settings on the method's performance.Finally, we conduct comparative experiments to compare the localization performance and accuracy of the algorithm and related algorithms.

Simulation
In this section, the feasibility and localization performance of the RSPF-based localization method is evaluated through simulation.We first establish a simulation environment.Then, we analyze the feasibility of the method by measuring the influence of different parameter settings on the method's performance.Finally, we conduct comparative experiments to compare the localization performance and accuracy of the algorithm and related algorithms.

Simulation Setup
In this section, we introduce the setup of our simulation, including the simulation platform, the construction of the simulation environment, the evaluation metrics, and the related method used for comparison.

Simulation Platform
The configuration of the simulation platform used in this paper is shown in Table 1.11.The simulation area is limited to 10 m × 10 m.The maximum linear speed of the left and right wheels of the robot is 2 m/s, and the acceleration is 1 m/s 2 .
The parameters used for the reference trajectory are set to r L = 120 mm, r R = 120 mm, and d = 250 mm.By manually controlling the robot's movement within the area, simulated reference trajectories and odometry trajectories are generated.The sampling interval is 0.25 s, and the total number of data points in the trajectory is 200-300.
platform, the construction of the simulation environment, the evaluation metrics, and the related method used for comparison.

Simulation Platform
The configuration of the simulation platform used in this paper is shown in Table 1.We use three simulated geomagnetic reference maps generated through the addition of multiple random sine signals and mean filtering, including the X and Z components of the vector data and scalar data, as shown in Figure 12.The geomagnetic map is divided into 60 60 × grids, and the maximum geomagnetic intensity differences between the X, Z, and scalar reference maps are 19,172.20nT, 9999.99 nT, and 15,718.47nT, respectively.The geomagnetic values corresponding to each position on the simulated trajectories are obtained by bilinear interpolation of the grid points of the reference map.We use three simulated geomagnetic reference maps generated through the addition of multiple random sine signals and mean filtering, including the X and Z components of the vector data and scalar data, as shown in Figure 12.The geomagnetic map is divided into 60 × 60 grids, and the maximum geomagnetic intensity differences between the X, Z, and scalar reference maps are 19,172.20nT, 9999.99 nT, and 15,718.47nT, respectively.The geomagnetic values corresponding to each position on the simulated trajectories are obtained by bilinear interpolation of the grid points of the reference map.

Reference Methods
This paper combines a real-time ICCP with a vector ICCP [25] and designs a realtime vector ICCP as a comparative method.The vector ICCP performs ICCP using three magnetic reference maps to reduce errors caused by single component matching.Additionally, this paper selects an adaptive fission particle filter (AFPF) [18] as a comparison.This method uses adaptive particle fission and sampling to reduce particle degradation

Reference Methods
This paper combines a real-time ICCP with a vector ICCP [25] and designs a real-time vector ICCP as a comparative method.The vector ICCP performs ICCP using three magnetic reference maps to reduce errors caused by single component matching.Additionally, this paper selects an adaptive fission particle filter (AFPF) [18] as a comparison.This method uses adaptive particle fission and sampling to reduce particle degradation and impoverishment, and it inserts a distance interval during each execution of the particle filter to lower the influence of noise.Furthermore, this article also compares single-point-based geomagnetic particle filters.

Evaluation Metrics
For evaluating the positioning accuracy of the method, we use root mean square error (RMSE), max error, and error at the end as evaluation metrics, which are calculated as follows: 17) where e RMSE , e max , and e end represent the values of RMSE, max error, and error at the end, respectively; R s represents the length of the matching result sequence; ( xm , ŷm ) denotes the m-th positioning result; (x m , y m ) denotes the m-th reference position; ( x R s , ŷ R s ) represents the endpoint position of the positioning result; and (x R s , y R s ) represents the endpoint position of the reference trajectory.
For the execution efficiency evaluation, we use the average processing time for 100 data points to evaluate the execution efficiency, which is calculated as (20).
where t 100 is the average processing time for 100 data points and t R s is the total processing time for all points.

Feasibility Evaluation
The feasibility of the method was evaluated.We first use the average RMSE to analyze the influence of different sequence lengths (N D ) on the robustness of the trajectory shape differences and noise effects.Then, we evaluate the execution efficiency under different N D using the average processing time for 100 data points.
The other parameter settings for the method are as follows.The particle numbers N is set to 300.The range limit of the parameter is set to µ r L = 30 mm, µ r R = 30 mm, and µ d = 50 mm to allow particles to cover the correct results, as much as possible, when the true calibration error of the odometer is unknown.The radius of S is set to 10 mm.The MAGCOM matching trajectory length M is 30.The length of the sub-grid is set to L 2 = 0.05L 1 and the search scope is 10 × 10 sub-grids.The weight constants are set to τ = 100, λ = 0.5, and γ = 0.5.

Robustness Evaluation
In order to evaluate the robustness of the difference in trajectory shape, this paper selected 100 trajectories and conducted three sets of comparative experiments with different pre-calibrated parameters (r L ′ , r R ′ and d ′ ).The parameter selection is shown in Table 2.The greater the difference between the pre-calibrated parameters and r L , r R , and d, the greater the difference in trajectory shapes.Gaussian noise with a mean of zero is added to the data.The noise standard deviation for the X and Z component data is 50 nT, and the noise standard deviation for the scalar data is 100 nT.The results are shown in Figure 13.It can be seen from the figure that when the value of N D is small, the difference in trajectory shape has a significant impact on the positioning effect.The larger the trajectory difference, the greater the positioning error.As the value of N D increases, the positioning error decreases.When N D reaches 10, the downward trend of all curves becomes flat.At this point, we believe that the method has strong robustness on trajectory shape difference.To evaluate the robustness of the impact of noise, this paper selected 100 trajec and conducted three sets of comparative experiments using data with different lev Gaussian noise.The noise levels differ in terms of their standard deviations, with a of zero.The noise standard deviation for the X and Z component data is denoted as and the noise standard deviation for the scalar data is denoted as σ .As mention Section 2.1, due to the influence of measurement errors from the attitude sensors, the in the magnetic vector components is generally greater than the noise in the mag scalar.Therefore, we set  To evaluate the robustness of the impact of noise, this paper selected 100 trajectories and conducted three sets of comparative experiments using data with different levels of Gaussian noise.The noise levels differ in terms of their standard deviations, with a mean of zero.The noise standard deviation for the X and Z component data is denoted as σ v , and the noise standard deviation for the scalar data is denoted as σ.As mentioned in Section 2.1, due to the influence of measurement errors from the attitude sensors, the noise in the magnetic vector components is generally greater than the noise in the magnetic scalar.Therefore, we set σ v = 2σ.The selection of standard deviation is shown in Table 3 The precalibrated parameters used for generating the odometry trajectory are set to r L ′ = 118 mm, r R ′ = 120 mm, and d ′ = 495 mm.The results are shown in Figure 14.It can be seen from the figure that as the value of N D increases, the positioning error decreases.The decreasing trend of the errors becomes flat when N D reaches seven.After this point, the positioning effect does not improve significantly.At this point, we believe that the method has strong robustness on the impact of noise.

Efficiency Evaluation
To measure the execution efficiency, we use the average 100

Performance Evaluation
Based on the optimal parameters in Section 3.2, we evaluate the performance of the RSPF-based localization method through comparative experiments with related algorithms.
The parameter settings for the methods used in this simulation are as follows.For the real-time ICCP, the sequence length is 10, with a maximum iteration count of 20 and an iteration termination threshold of 100 mm.For the single-point particle filter, the particle number is 300, with a maximum initial distance for particle positions set at 800 mm.For AFPF, the particle number is 300, with an interval for each execution set at 1200 mm and a maximum initial distance for particle positions set at 800 mm.As for the RSPF-based

Efficiency Evaluation
To measure the execution efficiency, we use the average t 100 taken from the aforementioned simulations.
The results are shown in Figure 15.From the figure, it can be seen that the increase in N D leads to an increase in computation time.For every increase of one in the value of N D , the average t 100 approximately increases by 0.60 s.Considering the robustness and execution efficiency of the method, we choose N D = 8 as the optimal parameter.

Efficiency Evaluation
To measure the execution efficiency, we use the average 100

Performance Evaluation
Based on the optimal parameters in Section 3.2, we evaluate the performance of the RSPF-based localization method through comparative experiments with related algorithms.
The parameter settings for the methods used in this simulation are as follows.For the real-time ICCP, the sequence length is 10, with a maximum iteration count of 20 and an iteration termination threshold of 100 mm.For the single-point particle filter, the particle number is 300, with a maximum initial distance for particle positions set at 800 mm.For AFPF, the particle number is 300, with an interval for each execution set at 1200 mm and a maximum initial distance for particle positions set at 800 mm.As for the RSPF-based localization method, D N is set to 8, and the remaining parameters are the same as in Section 3.2.

Performance Evaluation
Based on the optimal parameters in Section 3.2, we evaluate the performance of the RSPF-based localization method through comparative experiments with related algorithms.
The parameter settings for the methods used in this simulation are as follows.For the real-time ICCP, the sequence length is 10, with a maximum iteration count of 20 and an iteration termination threshold of 100 mm.For the single-point particle filter, the particle number is 300, with a maximum initial distance for particle positions set at 800 mm.For AFPF, the particle number is 300, with an interval for each execution set at 1200 mm and a maximum initial distance for particle positions set at 800 mm.As for the RSPF-based localization method, N D is set to 8, and the remaining parameters are the same as in Section 3.2.

Positioning Accuracy Evaluation
In order to evaluate the influence of different trajectory shapes and noises on the positioning accuracy, we select 100 trajectories and set different r L ′ , r R ′ , d ′ , σ, and σ v for five comparative experiments, as shown in Table 4.The trajectories and positioning errors of the simulation results are shown in Figure 16, and the simulation metrics are presented in Table 5.   4. The trajectories and positioning errors of the simulation results are shown in Figure 16, and the simulation metrics are presented in Table 5.From Figure 16 and Table 5, it is illustrated that in simulation 1, when the odometry trajectory shape is close to the reference trajectory and there is no noise in the geomagnetic data, all algorithms perform well in positioning.Compared to the odometry trajectory, the real-time ICCP reduces the average e RMSE and e end by 19.43% and 29.78%, respectively, but there is a phenomenon of matching failure, which leads to an increase in e max .Single-point particle filter reduces the average e RMSE , e max , and e end by 38.24%, 33.05%, and 23.94%, respectively.AFPF reduces three types of errors by 38.19%, 26.93%, and 10.90%, respectively.The RSPF-based localization method has the best localization accuracy, with errors reduced by 71.83%, 64.52%, and 76.37%, respectively.
In simulations 2 and 3, as the differences in trajectory shapes increased, the positioning performance of each algorithm decreased.The real-time ICCP has a suppressing effect on e RMSE , but matching failures become more severe, leading to an increase in e max and e end .The single-point particle filter is affected by noise, has a limited matching effect, and has good performance in the initial stage of localization, but there is divergence in the latter half of the trajectory, resulting in a limited positioning effect and an increase in e max .AFPF has a weak ability to correct trajectory shapes, causing divergence in the early stage of positioning, resulting in an increase in all other errors except for e RMSE in simulation 3. On the other hand, the RSPF-based localization method can effectively correct trajectory shape differences and still exhibits good suppressing capabilities on all three types of errors.
In simulations 4 and 5, as the noise intensity increases, the positioning performance of each algorithm decreases.The real-time ICCP matches through contour lines and is sensitive to noise, resulting in a significant increase in e RMSE and e max , and due to severe oscillations in the matching trajectory, e end is unstable and shows a decrease.The singlepoint particle filter has a good positioning effect in the early stage of the trajectory, but there is divergence in the latter half of the trajectory, resulting in a limited positioning effect and an increase in e max .AFPF has good resistance to noise impact and a better matching effect than the single-point particle filter and can reduce three types of errors.The RSPF-based localization method has the best robustness against noise effects and still exhibits good suppressing capabilities on all three types of errors.

Execution Efficiency Evaluation
In order to evaluate the execution efficiency of algorithms, this paper measures the average execution time of each algorithm in the above simulations.The results are shown in Table 6.As can be seen from the table, the processing time of the real-time ICCP for 100 points is approximately 28.08 s, while the single-point particle filter, AFPF, and RSPF-based localization method take 3.35%, 0.96%, and 28.67% of its time, respectively.The real-time ICCP uses sequence matching, requires multiple iterations, has a large computational workload, and is the slowest in terms of calculation speed.The single-point particle filter only performs matching on a single point, resulting in a shorter processing time.The AFPF, on the other hand, incorporates particle adaptive fission, which increases the computational workload of a single particle filter.However, there is a distance interval between two matching processes in this algorithm, reducing the overall execution time.The computation time is only 28.72% of that of the single-point geomagnetic particle filter.The RSPF-based localization method employs a sequence of length 8 for particle filtering and requires an execution every time a new data point is obtained.Compared to single-point geomagnetic particle filtering, it increases the computational workload by approximately 8.56 times.

Experiments
The effectiveness of the method proposed in this article under ideal conditions has been validated through simulation experiments.To further demonstrate the practicality of the algorithm, we conduct experiments using a real differential robot and evaluate the performance of the proposed algorithm.We also compare our method with other related algorithms.

Experiment Environment
The experimental equipment is shown in Figure 17.The robot is equipped with a three-axis magnetometer, a WT901C attitude sensor (manufactured by Witmotion Company in Shenzhen, China), and wheeled odometers.The real trajectory of the robot is collected through the FZ Motion optical motion capture system.Using a set of measured location data from FZ Motion to calibrate the odometer, the robot parameters were obtained as r L ′ = 148.32mm, r R ′ = 143.47 mm, and d ′ = 484.70mm.The robot is controlled to move within the area through a remote control while collecting data with a sampling interval of 0.25 s.The total number of trajectory data points is 500-600.The experimental area is limited to 4.85 m × 6.22 m.The experiment used three reference maps of the measured real geomagnetic vectors X and Z, as shown in Figure 18.The geomagnetic map is divided into 60 × 60 grids, and the maximum magnetic intensity difference between the X, Z, and scalar reference map is 7896.88nT, 18,473.76nT, and 18,177.06nT, respectively.The comparison algorithms and evaluation metrics used in the experiment are the same as those in the simulation.Some parameters of the methods used in the experiment are adjusted.For the singlepoint particle filter, the maximum initial distance for particle positions is set at 500 mm.For the AFPF, the interval for each execution is set at 800 mm, and the maximum initial distance for particle positions is 500 mm.For the RSPF-based localization method, we set λ = 0.3 and γ = 0.3, and D N is set to 10 to achieve better robustness.Other parameters are the same as the simulation.The comparison algorithms and evaluation metrics used in the experiment are the same as those in the simulation.Some parameters of the methods used in the experiment are adjusted.For the singlepoint particle filter, the maximum initial distance for particle positions is set at 500 mm.For the AFPF, the interval for each execution is set at 800 mm, and the maximum initial distance for particle positions is 500 mm.For the RSPF-based localization method, we set λ = 0.3 and γ = 0.3, and D N is set to 10 to achieve better robustness.Other parameters are the same as the simulation.The comparison algorithms and evaluation metrics used in the experiment are the same as those in the simulation.
Sensors 2024, 24, 2120 20 of 24 Some parameters of the methods used in the experiment are adjusted.For the singlepoint particle filter, the maximum initial distance for particle positions is set at 500 mm.For the AFPF, the interval for each execution is set at 800 mm, and the maximum initial distance for particle positions is 500 mm.For the RSPF-based localization method, we set λ = 0.3 and γ = 0.3, and N D is set to 10 to achieve better robustness.Other parameters are the same as the simulation.

Experimental Results and Performance Evaluation
This paper conducts matching experiments on 10 sets of real trajectories and presents a comparative analysis of the performance of the proposed method and related methods.

Experimental Results
The trajectory and positioning errors of some experimental results are shown in Figure 19, and the statistical data is shown in Table 7 based on the defined evaluation metrics.As shown in Figure 19 and Table 7, the proposed method in this paper achieves a higher level of positioning accuracy compared to other algorithms.Specifically, the real-time ICCP has a reduced average e RMSE and an average e end of 6.54% and 28.00%, respectively, while the average e max has shown a 16.60% improvement.The single-point particle filter has a reduced average e max by 4.74%, while the average e RMSE and the average e end have increased by 5.33% and 20.63%, respectively.The AFPF has a reduced average e RMSE , average e max , and average e end of 7.60%, 6.56%, and 8.68%, respectively.And the RSPF-based localization method has a reduced average e RMSE , average e max , and average e end of 34.04%, 41.23%, and 28.55%, respectively.
Due to the significant differences in shape between the odometry trajectory and the actual trajectory and the presence of high noise levels in the magnetometer data, both the real-time ICCP and the single-point particle filter experience a considerable number of matching failures, resulting in additional errors.On the other hand, AFPF, with an execution interval of 800 mm, experiences fewer matching failures.However, the positioning accuracy of AFPF is heavily influenced by trajectory shapes.As the robot's traveling distance increases, the positioning performance gradually deteriorates, limiting its ability to reduce errors.In contrast, the method proposed in this paper demonstrates a good ability to correct trajectory shapes and exhibits robustness against noise, effectively suppressing odometry cumulative errors and achieving higher positioning accuracy.

Efficiency Evaluation
In terms of execution efficiency, according to Table 7, the average processing time of the real-time ICCP for 100 points is approximately 20.77 s.The processing times of the single-point particle filter, AFPF, and RSPF-based localization method are 4.29%, 1.16%, and 40.63%, respectively, compared to the real-time ICCP.From Tables 6 and 7, it can be observed that, compared to the simulated environment, the experimental area under real conditions is smaller, resulting in a decrease in the computational complexity of contour lines.As a result, the processing time of the real-time ICCP is reduced by 26.03% compared to the simulation.However, it still has the longest processing time compared to other algorithms.The single-point particle filter still has the shortest computation time, followed by AFPF.Due to the increase of N D to 10, the time consumption of the RSPF-based localization method has increased to 9.48 times that of the single-point particle filter, but it is still faster compared to the real-time ICCP.Considering the improved accuracy, this level of computational efficiency is acceptable.

Discussion
The generality and efficiency of the RSPF-based localization method are discussed in this section: (1) Discussion of Generality: RSPF can process data sequences in real time to reduce the impact of high noise levels in measurement data and improve the robustness of the localization algorithm.Simultaneously, when integrated with the odometry calibration model, it mitigates the influence of trajectory shapes, resulting in the achievement of high-precision positioning results.This strategy can be applied to other multi-sensor fusion localization algorithms based on motion models with severe noise in the data, including, but not limited to, geomagnetic/INS integrated navigation and others.
However, there are still some issues with our selection of range limit at present.In order to maintain the universality of the parameters, we have chosen larger constraint parameters, µ r L , µ r R , and µ d , which may lead to potential algorithm divergence or wastage of computing resources.We will explore more suitable parameter selection in our future research.
(2) Discussion of Efficiency: The real-time analysis of a data sequence may introduce heightened computational complexity, and the computation time is approximately the product of the processing time of the single-point algorithm and sequence length, resulting in a decrease in execution efficiency.We will explore in future research how to lightweight algorithms to further improve real-time performance while maintaining positioning accuracy.
(3) Discussion of Robustness: Simulation results show that the RSPF-based localization method has strong robustness against zero mean Gaussian noise.However, compared to the simulation, the localization performance of the method has decreased in real environments, which may be due to the complexity of noise in real environments.We will consider how to reduce the noise impact in real environments in future research, such as adaptively adjusting sequence length and designing more suitable particle weight formulas.

Conclusions
In this paper, we proposed a geomagnetic/odometry integrated localization method based on RSPF for differential robot navigation.The proposed RSPF method used the data sequence from a segment of the trajectory to perform particle filtering.This approach reduced positioning errors caused by magnetometer measurement noise in a single-point particle filter while maintaining real-time performance.Additionally, the method incorporated the odometry calibration parameters of a differential robot to adjust the trajectory shapes, thereby mitigating errors introduced by rigid transformations applied to the trajectory.Lastly, secondary matching on the matching results through the MAGCOM algorithm was performed to reduce the potential position errors of the particle filter.The experimental results indicated that, compared to the odometry trajectory, the average e RMSE , average e max , and average e end have been reduced by 34.04%, 41.23%, and 28.55%, respectively.However, compared to the single-point particle filter, this algorithm will result in an increase in computational complexity and an average processing time of 9.48 times, which leads to higher hardware support when applied.
In summary, the proposed method can effectively improve positioning accuracy and offers an important reference to geomagnetic-aided localization in other applications.But further research is still needed to reduce the complexity of the method.

Figure 1 .
Figure 1.The framework of the proposed method.

DN
points of the data to be matched are formed into data sequence k D , and the trajectory i k P , which corresponds to the i-th particle i k p , is gener- ated based on it.After one execution of the particle filter, the k-th point k Q is removed from the sequence and a new data point D k N Q + is added to form a new sequence 1 k D + for the next filtering.

Figure 3 .
Figure 3. Real-time sequential particle filter based on FIFO.

Figure 3 .
Figure 3. Real-time sequential particle filter based on FIFO.

Figure 4 .
Figure 4. Comparison between real trajectory and odometry trajectory.Figure 4. Comparison between real trajectory and odometry trajectory.

Figure 4 .
Figure 4. Comparison between real trajectory and odometry trajectory.Figure 4. Comparison between real trajectory and odometry trajectory.
period, r L and r R are the radii of the left and right wheels, and ω L and ω R are the angular velocities of the left and right wheels.

Figure 4 .
Figure 4. Comparison between real trajectory and odometry trajectory.

Figure 6 .
Figure 6.The motion of differential robots.

Figure 7 .
Figure 7.The influence of different odometry calibration parameters.(a) Trajectories generated by different values of d . (b) Trajectories generated by different values of L r .(c) Trajectories generated i d are used to adjust the shape of the trajectory i k P corresponding to the particle i k p , and i x and i y are used to add an overall offset to i k P .Trajectory i k P is shown in Figure 8. i kj P is the j-th point on the trajectory.Assuming that θ is the initial orientation of the robot at the starting point of the trajectory, the cal- culation of the orientation of the robot at i kj P is as (13).

Figure 7 .
Figure 7.The influence of different odometry calibration parameters.(a) Trajectories generated by different values of d.(b) Trajectories generated by different values of r L .(c) Trajectories generated by different values of r R .

Figure 7 .
Figure 7.The influence of different odometry calibration parameters.(a) Trajectories generated by different values of d . (b) Trajectories generated by different values of L r .(c) Trajectories generated i d are used to adjust the shape of the trajectory i k P corresponding to the particle i k p , and i x and i y are used to add an overall offset to i k P .Trajectory i k P is shown in Figure 8. i kj P is the j-th point on the trajectory.Assuming that θ is the initial orientation of the robot at the starting point of the trajectory, the cal- culation of the orientation of the robot at i kj P is as (13).
the position coordinates with added offset.

( 2 )
Obtain new geomagnetic and odometry data, combine them into one data point, and add the data point to data sequence k D .If the length of k D reaches D N , set

( 1 ) 24 ( 8 )( 9 )
If a stop command is received, navigation is considered finished.Otherwise, step two is performed.(2) Obtain new geomagnetic and odometry data, combine them into one data point, and add the data point to data sequence D k .If the length of D k reaches N D , set i = 1, m = 1, k = 1 and perform the third step.Otherwise, repeat the second step.(3) If i < N, perform the third step.Otherwise, the sixth step is performed.(4) Initialize particle p i k and calculate trajectory P i k .(5) Calculate particle weight w i k and set i = i + 1.Then, go back to the third step.(6) Normalize the particle weights and perform resampling.Then, calculate the particle filter result p k .(7) Calculate result trajectory P k based on p k .Save the endpoint of P k as the preliminary matching result in result sequence R s .Then, set i = 1, m = m + 1. (8) If m < M, perform the 10th step.Otherwise, the ninth step is performed.(9) The last M points are combined into a sequence and used to perform MAGCOM matching.Then, replace R s_last with P MAG_last .(10) Add offset to all positions in D k .Then, set m = 1.(11) Remove the starting point of D k .Set k = k + 1. Go back to the first step.Sensors 2024, 24, 2120 11 of If m M <, perform the 10th step.Otherwise, the ninth step is performed.The last M points are combined into a sequence and used to perform MAGCOM matching.Then, replace

( 11 )
Remove the starting point of k D .Set 1 k k = + .Go back to the first step.

Figure 10 .
Figure 10.The flowchart of the RSPF-based localization method.

Figure 10 .
Figure 10.The flowchart of the RSPF-based localization method.

.
model in Section 2.2, as shown in Figure11.The simulation area is limited to 10m 10m × .The maximum linear speed of the left and right wheels of the robot is 2 m/s , and the acceleration is 2 1 m/s .The parameters used for the reference trajectory are set to 12 By manually controlling the robot's movement within the area, simulated reference trajectories and odometry trajectories are generated.The sampling interval is 0.25 s, and the total number of data points in the trajectory is 200-300.

Sensors 2024 ,Figure 12 .
Figure 12.Simulated geomagnetic reference maps.(a) Reference map of the X component. (b) Ref- erence map of the Z component. (c) Reference map of the scalar.

Figure 12 .
Figure 12.Simulated geomagnetic reference maps.(a) Reference map of the X component.(b) Reference map of the Z component.(c) Reference map of the scalar.
selection of standard deviation is shown in 3 The pre-calibrated parameters used for generating the odometry trajectory are ' L r = 118 mm, ' R r = 120 mm, and ' d = 495 mm.The results are shown in Figure 14.It can be seen from the figure that as the va D N increases, the positioning error decreases.The decreasing trend of the error comes flat when D N reaches seven.After this point, the positioning effect does no prove significantly.At this point, we believe that the method has strong robustness o impact of noise.

t
taken from the afore- mentioned simulations.The results are shown in Figure 15.From the figure, it can be seen that the increase in D N leads to an increase in computation time.For every increase of one in the value of D N , the average 100 t approximately increases by 0.60 s.Considering the robustness and execution efficiency of the method, we choose D N = 8 as the optimal parameter.

t
taken from the afore- mentioned simulations.The results are shown in Figure 15.From the figure, it can be seen that the increase in D N leads to an increase in computation time.For every increase of one in the value of D N , the average 100 t approximately increases by 0.60 s.Considering the robustness and execution efficiency of the method, we choose D N = 8 as the optimal parameter.

1 .
Positioning Accuracy EvaluationIn order to evaluate the influence of different trajectory shapes and noises on the positioning accuracy, we select 100 trajectories and set different ' experiments, as shown in Table

Figure 16 .
Figure 16.Comparison of trajectories and positioning errors of different simulations.

Figure 18 .
Figure 18.Geomagnetic reference maps.(a) Reference map of the X component. (b) Reference map of the Z component. (c) Reference map of the scalar.

Figure 18 .
Figure 18.Geomagnetic reference maps.(a) Reference map of the X component. (b) Reference map of the Z component. (c) Reference map of the scalar.

Figure 18 .
Figure 18.Geomagnetic reference maps.(a) Reference map of the X component.(b) Reference map of the Z component.(c) Reference map of the scalar.

3 Figure 19 .
Figure 19.Trajectories and positioning errors of experimental results.

Figure 19 .
Figure 19.Trajectories and positioning errors of experimental results.

Author
Contributions: Q.L.: Conceptualization, Methodology, Funding acquisition.M.Y.: Methodology, Software, Writing original draft.X.Y.: Software, Validation, Methodology, Writing review and editing.Z.Z.: Project administration, Resources, Supervision.C.W.: Conceptualization, Formal analysis.B.L.: Software, Validation, Writing review and editing.All authors have read and agreed to the published version of the manuscript.Funding: This research was funded by the National Natural Science Foundation of China grant number 62271164 and 62101158, the Major Scientific and Technological Innovation Project of Shandong Province of China grant number 2020CXGC010705, 2021ZLGX-05, and 2022ZLGX04, the Shandong Provincial Natural Science Foundation grant number ZR2020MF017, ZR2022MF255, and ZR2023MF051, the engineering research center of Shandong province, the joint innovation center of Shandong Province, and the Shan-dong Provincial Key Laboratory of Marine Electronic Information

Table 1 .
Main configuration of the PC.This paper built a simulation environment based on the differential robot motion model in Section 2.2, as shown in Figure

Table 1 .
Main configuration of the PC.

Table 4 .
Simulation parameters for comparative experiments.

Table 4 .
Simulation parameters for comparative experiments.

Table 5 .
Comparison of accuracy of different methods.

Table 5 .
Comparison of accuracy of different methods.

Table 6 .
Comparison of efficiency of different methods.

Table 7 .
Average results of different algorithms on all experimental trajectories.

Table 7 .
Average results of different algorithms on all experimental trajectories.