# Improved ICCP Algorithm Considering Scale Error for Underwater Geomagnetic Aided Inertial Navigation

Authors: Hongmei Zhang; Le Yang; Minglong Li
Journal: Mathematical Problems in Engineering
 (2019)

---

## Abstract

The iterative closest contour point (ICCP) matching algorithm has become more and more widely used in the underwater geomagnetic aided inertial navigation system (INS). In practical application, the traditional ICCP algorithm is sensitive to the initial positioning error of the INS and can only do rigid transformation for the INS track of the vehicle. Particularly when there exists scale error, the accuracy and stability of the traditional ICCP algorithm will be affected. To solve this problem, an improved algorithm based on affine transformation is proposed. Firstly, the fundamental of the ICCP is analyzed in detail, and an error analysis of the geomagnetic aided inertial navigation system is carried out, and then the rigid transformation is replaced with affine transformation to improve the performance of the ICCP. In contrast to the conventional approach, the proposed algorithm can solve the rotation, translation, and scaling parameters of the indicated track and the matching track, so it can significantly reduce the interference of the scale error. Experimental results confirm the effectiveness of the proposed algorithm.


---

## Body

## 1. Introduction

The inertial navigation system (INS) is an autonomous navigation system, which neither relies on any external information nor radiates energy to the outside world. Besides, it has the advantages of a short term, high precision, good concealment, no susceptibility to interference, and so on. Now the INS is the main navigation method for an Autonomous Underwater Vehicle (AUV). However, due to its navigation characteristics, the error of the INS inevitably grows with time. To address this problem, some integrated navigation systems are used to revise the INS error. The terrain aided inertial navigation system is one of the integrated navigation systems. However, the terrain aided inertial navigation system cannot achieve good effect in the area where the terrain is flat or the terrain features are not obvious [1, 2]. In recent years, some other integrated navigation systems such as the INS/Doppler integrated navigation system and INS/geomagnetic integrated navigation system have been studied to provide more accurate and more reliable positioning information [3, 4].Geomagnetic navigation technology has been used in aircraft control, missile weapon guidance, underwater vehicle positioning, and other fields, showing great military value and application prospects [5, 6]. The key factors affecting the accuracy of geomagnetic matching navigation are the establishment of geomagnetic map, matching algorithm, and the accuracy of geomagnetic sensor measurement [7]. In some practical applications requiring high precision, it is difficult to achieve satisfactory results using the geomagnetic navigation. More often, geomagnetic navigation is mainly used to assist other navigation systems. The geomagnetic aided inertial navigation system is one of the most common methods, and in recent years, several methods have been proposed [8, 9].In the underwater geomagnetic aided inertial navigation system, the matching algorithm is the key technology. Presently, the iterative closest contour point (ICCP) is one of the most frequently used algorithms, which derives from the iterative closest point (ICP) algorithm in image matching [10]. The ICCP was first proposed by Behzad [11], who used it for gravity-aided navigation; then Bishop systematically analyzed the feasibility and the error effect of the algorithm through a large number of simulation experiments [12]. The traditional ICCP algorithm is easy to implement and has been widely used; however it still has some deficiencies; for example, its robustness is poor and it is prone to diverging and mismatching under large initial error. To resolve these problems, many methods have been put forward. Wang [13] designed a method which is based on the integration of TERCOM and ICCP technology: firstly use the terrain contour matching navigation system (TERCOM) for rough matching and then use the ICCP for accurate matching. Zhang [14] proposed a pretranslation simplified ICCP algorithm, which simplifies the process of matching calculation, eliminates the influence of mismatch in the traditional ICCP effectively, and ensures the credibility of autonomous navigation. Zhang [15] proposed an improved ICCP algorithm based on the particle swarm optimization algorithm, which can achieve better robustness and accuracy. These researches enhanced the traditional ICCP algorithm and achieved certain results, but the algorithm can only do rigid transformation and translation transformation for the indicated track to achieve iterative registration. In the actual situation, there is always scale error between the indicated track and target track, and this may lead to mismatching or lower the matching accuracy [16, 17].In geometry, an affine transformation is a function between affine spaces, which preserves points, straight lines, and planes [18]. In computer vision, affine transformation is usually used for image registration [19]. Xu [20] proposed an improved ICCP algorithm with affine correction in terrain matching navigation. Xu first used the ICCP algorithm for matching and then corrected the results with affine transformation. However, our work is inspired by the pyramid algorithm in 2D image matching [21] and incorporates the idea of the Iterative Multiscale Matching Method (IMMM). Affine transformation is used multiple times during the iteration process of the initial matching along the contours. Since the initial value of each matching is the optimal value obtained from the previous matching, the iterative process has certain inheritance. The affine correction runs through the whole iteration process. Therefore, from this point of view, our work is different from Xu’s work, and this is also the major contribution of our work.In this paper, the error characteristics of the INS are analyzed in detail, and the error analysis of the INS is made. Then, the iterative process of matching track based on the fusion algorithm of the ICCP and affine transformation is described. Through affine transformation, the transformation parameters between the indicated track and the matching track are solved and the corresponding relationship is obtained. Finally, the simulation experiment is conducted; the results prove the validity of the proposed algorithm.


## 2. The Error Analysis of the Geomagnetic Aided Inertial Navigation System

The inertial navigation is a relative navigation method, whose principle is to use inertial components to measure the acceleration of the AUV and then get the current position through an integral operation and initial position information. The error characteristics of the geomagnetic aided inertial navigation system are analyzed as follows:A purely inertial navigation mode is used before the underwater vehicle enters the matching area. In the inertial navigation system, after ignoring the Coriolis errors and gravity vector errors, the velocity errorδv is a function of specific force fn, attitude error ψ, and specific force measurement error δfb [22]. The differential equation of the velocity error can be expressed as (1)δv·=fn×ψ+Cbnδfb.In the equation,Cbn is the attitude transition matrix from the carrier coordinate to the navigation coordinate.When the underwater vehicle enters the matching area, due to the integration of each error over time, the system has accumulated a certain amount of position errorΔP0, velocity error δv, and attitude error ψ. These errors continue to be transmitted during the accumulation process of matching data. When data accumulation is completed, the velocity equation can be expressed as(2)vti=vtr+δv+εvδf,ψ,t.In the equation,vti is the indicating speed of the inertial navigation system at the time t; vtr is the actual speed at the time t; εv is the variation of velocity error in the process of data accumulation, mainly caused by δf and ψ.Sinceδv is a velocity error generated before matching, it can be regarded as a constant error and is easy to be disposed of; but εv is a function of time and ψ, and it also accumulates over time and must be simplified during the modeling. Considering that the accumulation amount of attitude error is very small in a short time, the variation of heading error in the data accumulation phase is ignored; that is, it is assumed that the heading error of the inertial navigation system is kept constant.In the matching process, the geomagnetic matching positioning mainly determines the position of the vehicle in the horizontal plane, so the attitude has little influence on the positioning results. Under the assumption that the heading error remains unchanged,εv becomes a linear function of time. If further consideration is given to replace the entire error line with the mean εv¯ of εv, the entire matching process is simplified to a constant velocity error process. The velocity error is(3)Δv=δv+εv¯.In the matching process, the velocity equation is simplified to(4)vti=vtr+Δv.If the time entering the matching area is zero and the sampling interval isΔt, then the discretized form of the position updating equation of the inertial navigation system is(5)p^k+1=p^k+vkiΔt.Letpk be the real position of the vehicle; then(6)p^k=pk+Δp0+Δvk·Δt.As mentioned above,ΔP0 is the accumulated position error before the system enters the matching area. According to (4), (5), and (6), (7)p^k+1=pk+Δp0+Δvk·Δt+vkr+Δv·Δt=pk+vkrΔt+Δp0+Δv·k·Δt+ΔvΔt=pk+1+Δp0+Δv·k+1·Δt.In (7), Δp0+Δv·k+1·Δt is the final positioning error term. It can be seen that the position error of the vehicle is mainly composed of two parts: system position error ΔP0 before matching and position increment error Δv·k+1·Δt caused by velocity error. The change reflected in the track can be simplified as a transformation between curves, including translation, rotation, and scaling, which, respectively, correspond to the initial position error, heading error, and rate error of the navigation system. Its mathematical description can be expressed as(8)H=s·r·L+Δp0,where H is the track of the inertial navigation system, s is a scaling factor, r is a rotation factor, and L is the actual track.Through the above analysis, we can see the following: under the influence of velocity error and heading error, there is not only rotation and translation between the INS track and the actual track of the underwater vehicle, but also the scaling. Hence, it is not a rigid transformation relation that involves only rotation and translation. The traditional ICCP algorithm assumes that the actual track is a rigid transformation of the INS indicated track; thus, the matching error may become bigger and even lead to mismatching.


## 3. Matching Algorithm

### 3.1. The Principle of the Traditional ICCP Algorithm

The basic principle of the underwater geomagnetic aided navigation system based on the ICCP algorithm is shown in Figure1. In the underwater navigation, the AUV goes along the actual track Lii=1,2,⋯,N, but due to inertial system errors and environmental factors, the inertial navigation system will give an indicated track sequence Hii=1,2,⋯,N that deviates from the actual track sequence, and at the same time, the magnetic value of the corresponding points is obtained by the magnetometer. It is generally believed that the position information given by the inertial navigation system is credible in a certain range of error. Therefore, the track sequence Hii=1,2,⋯,N of the main inertial navigation system can be treated as the sequence Jii=1,2,⋯,N to be matched. According to the geomagnetic information sequence, contour lines are generated in the digital map, and the nearest point sequence Yii=1,2,⋯,N is extracted as the matching target then iteratively searches for the rigid transformation M, which contains a rotation quantity R and a translation quantity T. The rigid transformation M minimizes the following objective function:(9)DkY,M·J=∑i=1NwiYi-M·Ji2,where wi represents the weights of each sequence point, k represents the kth iteration process, and N represents the number of track sequence points.Figure 1
Illustration of ICCP.After using the singular value decomposition (SVD) method to obtain the rigid transformationM, a rigid transformation is applied to the matching track sequence Jii=1,2,⋯,N.(10)Ji′=M·Ji=cos⁡θ-sin⁡θsin⁡θcos⁡θJi+txty,where J′ is the track sequence after transformation, tx and ty are translations, and θ is a rotation angle.The transformed sequenceJ′i=1,2,⋯,N1/n is used to update the sequence Ji=1,2,⋯,N, then re-search the nearest point sequence Yi′i=1,2,⋯,N corresponding to the updated matching track on the contour line, and find the new rigid transformation M to minimize the objective function. The iteration process will end when Dk-Dk+1≤τ (τ indicates the set threshold) or the maximum number of iterations is reached. The matching track at this time is the traditional ICCP matching track sequence.


### 3.2. Improved ICCP Algorithm

#### 3.2.1. A Simplified Affine Transformation Model

An affine transformation is a combination of single transformations such as translation, scaling, similarity transformation, reflection, rotation, shear mapping, and compositions of them in any combination and sequence. Moreover, an affine transformation is one in which parallel lines remain parallel after the transformation. Based on the error analysis of the geomagnetic aided inertial navigation system in Section2 and in this paper, the affine transformation between the tracks includes only translation, rotation, and scaling. Besides, the transformation in this paper is carried out in two dimensions; a simplified affine transformation model can be established as(11)J′=αcos⁡θ-sin⁡θsin⁡θcos⁡θJ+txty,where J is the position information before transformation, J′ is the position information after transformation, and θ is the rotation angle, corresponding to the heading angle error; α is the scaling amount, corresponding to the rate error; tx are ty are the translation amounts at the X and Y directions, respectively, corresponding to the initial position error.


#### 3.2.2. Affine Parameter Solving

Since the affine transformation matrix between the indication track and real track is confirmed, and a simplified transformation model is established by (11), defining rotation matrix R, scaling factor S, and translation T, the indication track sequence Hi, and the real track sequence Li, then the whole matching process can be performed with (12).(12)Li=SRHi+T,(13)R′=SR.The parameters of each affine transformation are solved as follows [20]. ei is defined as the difference between sequence Yii=1,2,⋯,N and sequence Hii=1,2,⋯,N after affine transformation; then(14)ei=txty+αcos⁡θ-αsin⁡θαsin⁡θαcos⁡θxHiyHi-xYiyYi=10xHi-yHi01yHixHitxtyαcos⁡θαsin⁡θ-xYiyYi.Let g=txtyαcos⁡θαsin⁡θ, GHi=10xHi-yHi01yHixHi; then(15)ei=GHig-Yi,where xHi, yHi is the point's coordinate of Hii=1,2,⋯,N; xYi, yYi is the point’s coordinate of Yii=1,2,⋯,N.Construct the Euclidean Square DistanceESDtx,ty,α,θ, which can be expressed as(16)ESD=∑i=1keiTei=e1T,e2T,⋯,ekTe1e2⋮ek=GHig-YiTGHig-Yi=gTGHiTGHig-2YiTGHig+YiTYi.When ESD gets the minimum value, the minimum value of g is recorded as gmin. In this paper, gmin can be solved by least squares as follows:(17)gmin=GHiTGHi-1GHiTYi.From (17) and gmin=tx,ty,αcos⁡θ,αsin⁡θT, the affine parameter values tx, ty, α, and θ can be got. When the parameters of each transformation are obtained, the final S, R, and T can be obtained.


#### 3.2.3. Procedure of Improved Algorithm

The procedure of the ICCP algorithm based on affine transformation is as follows:① The inertial navigation system provides location information forN points on the AUV track; the real-time magnetic sensor provides the magnetic values of the corresponding points. That is, the data form H is known, and the contour lines C are extracted from the known reference digital geomagnetic map② Select the initial alignment setH0, which is to set the initial value of the iteration. Then follow the steps from ③ to ⑥, making loop iterations until the final iteration termination condition is reached③ Find the nearest point for each data pointhi on the contour lines, and name these points as yi④ The affine transformation is used to solve the parametersα, r, and t between yi and hi, so that the distance between the set yi and the set hi is minimized; that is, the following objective function is minimized:(18)dkC,srh=dy,srh=∑i=1Nhωiyi-srhi-t2⑤ Transform the setHk to the set Hk+1=srHk+t⑥ Judge whetherdk-dk+1 can meet dk-dk+1<τ. If satisfied, it shows that the change of objective function is very small, and it achieves the accuracy to correct the inertial navigation track; otherwise, it is considered a failureThe above process is shown in Figure2.Figure 2
Flowchart of improved algorithm.


## 3.1. The Principle of the Traditional ICCP Algorithm

The basic principle of the underwater geomagnetic aided navigation system based on the ICCP algorithm is shown in Figure1. In the underwater navigation, the AUV goes along the actual track Lii=1,2,⋯,N, but due to inertial system errors and environmental factors, the inertial navigation system will give an indicated track sequence Hii=1,2,⋯,N that deviates from the actual track sequence, and at the same time, the magnetic value of the corresponding points is obtained by the magnetometer. It is generally believed that the position information given by the inertial navigation system is credible in a certain range of error. Therefore, the track sequence Hii=1,2,⋯,N of the main inertial navigation system can be treated as the sequence Jii=1,2,⋯,N to be matched. According to the geomagnetic information sequence, contour lines are generated in the digital map, and the nearest point sequence Yii=1,2,⋯,N is extracted as the matching target then iteratively searches for the rigid transformation M, which contains a rotation quantity R and a translation quantity T. The rigid transformation M minimizes the following objective function:(9)DkY,M·J=∑i=1NwiYi-M·Ji2,where wi represents the weights of each sequence point, k represents the kth iteration process, and N represents the number of track sequence points.Figure 1
Illustration of ICCP.After using the singular value decomposition (SVD) method to obtain the rigid transformationM, a rigid transformation is applied to the matching track sequence Jii=1,2,⋯,N.(10)Ji′=M·Ji=cos⁡θ-sin⁡θsin⁡θcos⁡θJi+txty,where J′ is the track sequence after transformation, tx and ty are translations, and θ is a rotation angle.The transformed sequenceJ′i=1,2,⋯,N1/n is used to update the sequence Ji=1,2,⋯,N, then re-search the nearest point sequence Yi′i=1,2,⋯,N corresponding to the updated matching track on the contour line, and find the new rigid transformation M to minimize the objective function. The iteration process will end when Dk-Dk+1≤τ (τ indicates the set threshold) or the maximum number of iterations is reached. The matching track at this time is the traditional ICCP matching track sequence.


## 3.2. Improved ICCP Algorithm

### 3.2.1. A Simplified Affine Transformation Model

An affine transformation is a combination of single transformations such as translation, scaling, similarity transformation, reflection, rotation, shear mapping, and compositions of them in any combination and sequence. Moreover, an affine transformation is one in which parallel lines remain parallel after the transformation. Based on the error analysis of the geomagnetic aided inertial navigation system in Section2 and in this paper, the affine transformation between the tracks includes only translation, rotation, and scaling. Besides, the transformation in this paper is carried out in two dimensions; a simplified affine transformation model can be established as(11)J′=αcos⁡θ-sin⁡θsin⁡θcos⁡θJ+txty,where J is the position information before transformation, J′ is the position information after transformation, and θ is the rotation angle, corresponding to the heading angle error; α is the scaling amount, corresponding to the rate error; tx are ty are the translation amounts at the X and Y directions, respectively, corresponding to the initial position error.


### 3.2.2. Affine Parameter Solving

Since the affine transformation matrix between the indication track and real track is confirmed, and a simplified transformation model is established by (11), defining rotation matrix R, scaling factor S, and translation T, the indication track sequence Hi, and the real track sequence Li, then the whole matching process can be performed with (12).(12)Li=SRHi+T,(13)R′=SR.The parameters of each affine transformation are solved as follows [20]. ei is defined as the difference between sequence Yii=1,2,⋯,N and sequence Hii=1,2,⋯,N after affine transformation; then(14)ei=txty+αcos⁡θ-αsin⁡θαsin⁡θαcos⁡θxHiyHi-xYiyYi=10xHi-yHi01yHixHitxtyαcos⁡θαsin⁡θ-xYiyYi.Let g=txtyαcos⁡θαsin⁡θ, GHi=10xHi-yHi01yHixHi; then(15)ei=GHig-Yi,where xHi, yHi is the point's coordinate of Hii=1,2,⋯,N; xYi, yYi is the point’s coordinate of Yii=1,2,⋯,N.Construct the Euclidean Square DistanceESDtx,ty,α,θ, which can be expressed as(16)ESD=∑i=1keiTei=e1T,e2T,⋯,ekTe1e2⋮ek=GHig-YiTGHig-Yi=gTGHiTGHig-2YiTGHig+YiTYi.When ESD gets the minimum value, the minimum value of g is recorded as gmin. In this paper, gmin can be solved by least squares as follows:(17)gmin=GHiTGHi-1GHiTYi.From (17) and gmin=tx,ty,αcos⁡θ,αsin⁡θT, the affine parameter values tx, ty, α, and θ can be got. When the parameters of each transformation are obtained, the final S, R, and T can be obtained.


### 3.2.3. Procedure of Improved Algorithm

The procedure of the ICCP algorithm based on affine transformation is as follows:① The inertial navigation system provides location information forN points on the AUV track; the real-time magnetic sensor provides the magnetic values of the corresponding points. That is, the data form H is known, and the contour lines C are extracted from the known reference digital geomagnetic map② Select the initial alignment setH0, which is to set the initial value of the iteration. Then follow the steps from ③ to ⑥, making loop iterations until the final iteration termination condition is reached③ Find the nearest point for each data pointhi on the contour lines, and name these points as yi④ The affine transformation is used to solve the parametersα, r, and t between yi and hi, so that the distance between the set yi and the set hi is minimized; that is, the following objective function is minimized:(18)dkC,srh=dy,srh=∑i=1Nhωiyi-srhi-t2⑤ Transform the setHk to the set Hk+1=srHk+t⑥ Judge whetherdk-dk+1 can meet dk-dk+1<τ. If satisfied, it shows that the change of objective function is very small, and it achieves the accuracy to correct the inertial navigation track; otherwise, it is considered a failureThe above process is shown in Figure2.Figure 2
Flowchart of improved algorithm.


## 3.2.1. A Simplified Affine Transformation Model

An affine transformation is a combination of single transformations such as translation, scaling, similarity transformation, reflection, rotation, shear mapping, and compositions of them in any combination and sequence. Moreover, an affine transformation is one in which parallel lines remain parallel after the transformation. Based on the error analysis of the geomagnetic aided inertial navigation system in Section2 and in this paper, the affine transformation between the tracks includes only translation, rotation, and scaling. Besides, the transformation in this paper is carried out in two dimensions; a simplified affine transformation model can be established as(11)J′=αcos⁡θ-sin⁡θsin⁡θcos⁡θJ+txty,where J is the position information before transformation, J′ is the position information after transformation, and θ is the rotation angle, corresponding to the heading angle error; α is the scaling amount, corresponding to the rate error; tx are ty are the translation amounts at the X and Y directions, respectively, corresponding to the initial position error.


## 3.2.2. Affine Parameter Solving

Since the affine transformation matrix between the indication track and real track is confirmed, and a simplified transformation model is established by (11), defining rotation matrix R, scaling factor S, and translation T, the indication track sequence Hi, and the real track sequence Li, then the whole matching process can be performed with (12).(12)Li=SRHi+T,(13)R′=SR.The parameters of each affine transformation are solved as follows [20]. ei is defined as the difference between sequence Yii=1,2,⋯,N and sequence Hii=1,2,⋯,N after affine transformation; then(14)ei=txty+αcos⁡θ-αsin⁡θαsin⁡θαcos⁡θxHiyHi-xYiyYi=10xHi-yHi01yHixHitxtyαcos⁡θαsin⁡θ-xYiyYi.Let g=txtyαcos⁡θαsin⁡θ, GHi=10xHi-yHi01yHixHi; then(15)ei=GHig-Yi,where xHi, yHi is the point's coordinate of Hii=1,2,⋯,N; xYi, yYi is the point’s coordinate of Yii=1,2,⋯,N.Construct the Euclidean Square DistanceESDtx,ty,α,θ, which can be expressed as(16)ESD=∑i=1keiTei=e1T,e2T,⋯,ekTe1e2⋮ek=GHig-YiTGHig-Yi=gTGHiTGHig-2YiTGHig+YiTYi.When ESD gets the minimum value, the minimum value of g is recorded as gmin. In this paper, gmin can be solved by least squares as follows:(17)gmin=GHiTGHi-1GHiTYi.From (17) and gmin=tx,ty,αcos⁡θ,αsin⁡θT, the affine parameter values tx, ty, α, and θ can be got. When the parameters of each transformation are obtained, the final S, R, and T can be obtained.


## 3.2.3. Procedure of Improved Algorithm

The procedure of the ICCP algorithm based on affine transformation is as follows:① The inertial navigation system provides location information forN points on the AUV track; the real-time magnetic sensor provides the magnetic values of the corresponding points. That is, the data form H is known, and the contour lines C are extracted from the known reference digital geomagnetic map② Select the initial alignment setH0, which is to set the initial value of the iteration. Then follow the steps from ③ to ⑥, making loop iterations until the final iteration termination condition is reached③ Find the nearest point for each data pointhi on the contour lines, and name these points as yi④ The affine transformation is used to solve the parametersα, r, and t between yi and hi, so that the distance between the set yi and the set hi is minimized; that is, the following objective function is minimized:(18)dkC,srh=dy,srh=∑i=1Nhωiyi-srhi-t2⑤ Transform the setHk to the set Hk+1=srHk+t⑥ Judge whetherdk-dk+1 can meet dk-dk+1<τ. If satisfied, it shows that the change of objective function is very small, and it achieves the accuracy to correct the inertial navigation track; otherwise, it is considered a failureThe above process is shown in Figure2.Figure 2
Flowchart of improved algorithm.


## 4. Experiment and Analysis

In order to test the accuracy and robustness of the improved ICCP algorithm mentioned above, experiments with simulated data and real geomagnetic data were carried out. In the simulations, the background geomagnetic information is provided by an a priori geomagnetic map, acquired in the Bohai Sea, China, as shown in Figure3. The grid spacing is 200m×200m.Figure 3
Underwater reference geomagnetic map for simulation.In the simulations, the vehicle is assumed to be equipped with a geomagnetic sensor to collect real-time geomagnetic data during the navigation. The vehicle is supposed to travel in a long track from one point to another point, the INS is assumed to have a drift rate of 1° in the horizontal distance travelled, and the main simulation parameters are shown in Table1.Table 1
The parameters of simulation.
Parameter Values Initial deviation in latitudinal direction 1500m Initial deviation in longitudinal direction 1500m Matching region size 10km∗20km Initial deviation of INS angle 1° INS angle drift error 0.1°/h Sampling period of geomagnetic sensor 20s


### 4.1. Test without Scale Errors

We first investigated the performance of the improved ICCP algorithm when there were no scale errors between the indicated INS track and real track. Figure4 shows the matching results of the traditional ICCP algorithm and improved ICCP algorithm. It can be observed that the improved ICCP algorithm gets a similar result to the traditional ICCP.Figure 4
Matching result of ICCP algorithm and its improved algorithm without scale errors.Figure5 shows the matching errors of both algorithms in the longitudinal and latitudinal directions. As can be seen, both algorithms can achieve the accuracy within 100 meters. The improved algorithm can get a little better accuracy within 60 meters. Obviously, when there are no scale errors, the difference between the two algorithms is not significant.Figure 5
When there is no scale error between the indicated INS track and real track, (a) denotes the positioning error of the traditional ICCP algorithm and (b) denotes the positioning error of the improved ICCP algorithm.
(a) (b)


### 4.2. Test with Scale Errors

In the second situation, we investigated the performance of the improved ICCP algorithm when there were scale errors between the indicated INS track and real track. The matching results are presented in Figure6. The result clearly shows that the traditional ICCP algorithm is seriously influenced.Figure 6
Matching result of ICCP algorithm and its improved algorithm with scale errors.Figure7 shows the matching errors of both algorithms in the longitudinal and latitudinal directions. As can be seen, the improved algorithm can achieve the accuracy within 180 meters in the longitudinal direction and 140 meters in the latitudinal direction. The matching errors of the traditional algorithm are more than 1500 meters in the longitudinal direction and the maximum error in the latitudinal direction nearly reaches 2500 meters. Apparently, when the traditional ICCP algorithm suffers from large positioning errors due to scale errors, the improved algorithm can still maintain better accuracy and robustness.Figure 7
When there is scale error between the indicated INS track and real track, (a) denotes the positioning error of the traditional ICCP algorithm and (b) denotes the positioning error of the improved ICCP algorithm.
(a) (b)


### 4.3. Statistic Analysis of ICCP and Improved ICPP Algorithm

The above two tests have limitations. Because the navigation matching results are a little bit uncertain, one test does not reflect the performance of the algorithm very well. In order to test the performance of the ICCP and improved ICCP algorithm objectively and comprehensively, we repeated the above experiment in the same paths but with different matching lengths, and we obtained stable statistics after repeating 100 times. Evaluate the performance of the algorithms from the obtained mean error, variance, standard deviation, matching probability, and other information.Table2 shows the statistical results of the repeat tests.Table 2
Evaluation of the performance of the ICCP and improved ICCP algorithm.
Matching method  Mean (m) STD (m) Matching probability ICCP Path 1 85.9 5.8 99% Path 2 2017.4 451.7 18% Improved ICCP Path 1 69.2 4.9 99% Path 2 176.1 40.5 96%It can be seen from the above experiments that the traditional ICCP algorithm is more susceptible to scale errors, but the improved algorithm can weaken the influence largely. The improved algorithm shows better robustness and accuracy.


## 4.1. Test without Scale Errors

We first investigated the performance of the improved ICCP algorithm when there were no scale errors between the indicated INS track and real track. Figure4 shows the matching results of the traditional ICCP algorithm and improved ICCP algorithm. It can be observed that the improved ICCP algorithm gets a similar result to the traditional ICCP.Figure 4
Matching result of ICCP algorithm and its improved algorithm without scale errors.Figure5 shows the matching errors of both algorithms in the longitudinal and latitudinal directions. As can be seen, both algorithms can achieve the accuracy within 100 meters. The improved algorithm can get a little better accuracy within 60 meters. Obviously, when there are no scale errors, the difference between the two algorithms is not significant.Figure 5
When there is no scale error between the indicated INS track and real track, (a) denotes the positioning error of the traditional ICCP algorithm and (b) denotes the positioning error of the improved ICCP algorithm.
(a) (b)


## 4.2. Test with Scale Errors

In the second situation, we investigated the performance of the improved ICCP algorithm when there were scale errors between the indicated INS track and real track. The matching results are presented in Figure6. The result clearly shows that the traditional ICCP algorithm is seriously influenced.Figure 6
Matching result of ICCP algorithm and its improved algorithm with scale errors.Figure7 shows the matching errors of both algorithms in the longitudinal and latitudinal directions. As can be seen, the improved algorithm can achieve the accuracy within 180 meters in the longitudinal direction and 140 meters in the latitudinal direction. The matching errors of the traditional algorithm are more than 1500 meters in the longitudinal direction and the maximum error in the latitudinal direction nearly reaches 2500 meters. Apparently, when the traditional ICCP algorithm suffers from large positioning errors due to scale errors, the improved algorithm can still maintain better accuracy and robustness.Figure 7
When there is scale error between the indicated INS track and real track, (a) denotes the positioning error of the traditional ICCP algorithm and (b) denotes the positioning error of the improved ICCP algorithm.
(a) (b)


## 4.3. Statistic Analysis of ICCP and Improved ICPP Algorithm

The above two tests have limitations. Because the navigation matching results are a little bit uncertain, one test does not reflect the performance of the algorithm very well. In order to test the performance of the ICCP and improved ICCP algorithm objectively and comprehensively, we repeated the above experiment in the same paths but with different matching lengths, and we obtained stable statistics after repeating 100 times. Evaluate the performance of the algorithms from the obtained mean error, variance, standard deviation, matching probability, and other information.Table2 shows the statistical results of the repeat tests.Table 2
Evaluation of the performance of the ICCP and improved ICCP algorithm.
Matching method  Mean (m) STD (m) Matching probability ICCP Path 1 85.9 5.8 99% Path 2 2017.4 451.7 18% Improved ICCP Path 1 69.2 4.9 99% Path 2 176.1 40.5 96%It can be seen from the above experiments that the traditional ICCP algorithm is more susceptible to scale errors, but the improved algorithm can weaken the influence largely. The improved algorithm shows better robustness and accuracy.


## 5. Conclusions

This paper proposed an ICCP algorithm based on affine transformation to improve the performance of the traditional ICCP algorithm. In this method, the transformation between the indicated track and the matching track includes not only rotation and translation, but also scale transformation. The proposed method has been verified through computer simulations. Experimental results show that the improved ICCP algorithm is more accurate and more robust than the traditional ICCP algorithm; particularly it can effectively reduce the influence of scale error.In future work, we will try to establish a more accurate geomagnetic field background field and combine the ICCP with evaluation of matching region suitability for the geomagnetic aided inertial navigation system that can be considered.



---

*Source: 1527940-2019-04-22.xml*