## 5 Discussion  
It is important to mention that this work is intended to be executed online and onboard the vehicle, and we aim for it to be computationally efficient. Therefore, given that the displacements between the images are small, we can assume that the rotations between consecutive images will not be very large and we can estimate the displacement \(d^{px}\) simply by the difference between the centroids \(C_{i}\), rather than using the SVD approach to compute the optimal rotation and translation. If this solution is chosen, it is important to threshold the correspondence distance to reduce the possibility of encountering outliers. This distance is the Hamming distance between the descriptor vectors, and a threshold below 64 is recommended [44].  
Consistent with this, it is also assumed that the camera is always pointing downward. Although this is not always the case due to the UAV turning, most of the time, the homography matrix (which considers the yaw, pitch, and roll of the aircraft) with which we should transform the photographs is close to the identity matrix. Any errors that could accumulate from omitting it will be corrected each time we find a keypoint in the satellite image.  
Although it is not the first time that the idea of reducing the accumulated error using reference images has been used, the field of application is different from the rest of the cited works. In our case, it involves tactical UAVs with ranges of up to 200 km at altitudes up to 3000 m flying in GPS-denied areas. In this work, errors of less than 150 m have been achieved. Although this might seem like a large error, within this framework (flying at  
\begin{table}
\begin{tabular}{c c c c c c} \hline \hline \multirow{2}{*}{**Class**} & **Accumulated Error** & \begin{tabular}{c} **Root Mean** \\ **Square Error** \\ **(RMSE)** \\ \end{tabular} & \
\begin{tabular}{c} **Mean** \\ **Error** \\ \end{tabular} &
\begin{tabular}{c} **Std** \\ **Error (\%)** \\ \end{tabular} \\ \hline \(\delta=0.0005\) & 1,184,118.53 & 1893.99 & 1706.22 & 822.20 & 9.86 \\ \(\delta=0.001\) & 516,631.52 & 845.68 & 744.42 & 401.27 & 4.30 \\ \(\delta=0.0015\) & 696,712.03 & 1230.59 & 1003.90 & 711.71 & 5.80 \\ Our Approach & 99,732.63 & 150.79 & 142.88 & 48.19 & 0.83 \\ \hline \hline \end{tabular}
\end{table}
Table 2: Error comparison in meters (m). Mission range 17,300 m.  
Figure 19: Filtered output of the correction algorithm.  
more than 1000 m above the terrain and for more than 17 km without GPS coordinates), it is an acceptable error for this type of mission.  
With a mean error of 142.88 m, it raises the question of whether it would be better to use a technique based solely on images and the IMU. Besides needing the dynamic model, it has been observed that even in shorter flights (2400 m range over 60 s without GPS), errors exceeding 200 m have been recorded [25], which represents an error of 8.7%. Another study that has demonstrated IMU drift is [26]. Another example is provided by [68], where a fixed-wing UAV is used. They report a 40 m drift in a test lasting 70 s at an altitude of 70 m, resulting in an error of nearly 8%. In contrast, our approach, which uses visual odometry and correction based on satellite images, has achieved an error rate of 0.83%.  
Table 3 provides a summary of the reported errors in techniques with case studies comparable to ours, including visual odometry and visual-inertial techniques.