Unmanned aerial vehicles represent an effective technology for indoor search and rescue operations. Typically, most indoor missions’ environments would be unknown, unstructured, and/or dynamic. Navigation of UAVs in such environments is addressed by simultaneous localization and mapping approach using either local or global approaches. Both approaches suffer from accumulated errors and high processing time due to the iterative nature of the scan matching method. Moreover, point-to-point scan matching is prone to outlier association processes. This paper proposes a low-cost novel method for 2D real-time scan matching based on a reference key frame (RKF). RKF is a hybrid scan matching technique comprised of feature-to-feature and point-to-point approaches. This algorithm aims at mitigating errors accumulation using the key frame technique, which is inspired from video streaming broadcast process. The algorithm depends on the iterative closest point algorithm during the lack of linear features which is typically exhibited in unstructured environments. The algorithm switches back to the RKF once linear features are detected. To validate and evaluate the algorithm, the mapping performance and time consumption are compared with various algorithms in static and dynamic environments. The performance of the algorithm exhibits promising navigational, mapping results and very short computational time, that indicates the potential use of the new algorithm with real-time systems.

In recent decades, unmanned aerial vehicles (UAVs) have become an active area of research and development because of their ability to extend human capability that allows them to execute dangerous tasks safely, saving time, and, more importantly, saving lives. Furthermore, their increasing relevance stems from the potential diversity of their use both outdoors and indoors. Beyond mere observation and surveillance tasks, UAVs are increasingly being used as part of search and rescue operations, providing real-time mapping of the environment, locating victims and hard-hit areas after a natural disaster. In conjunction with UAVs, recent advances in hardware and software have made it possible to conduct accurate mapping without using costly, high-end data acquisition systems. Low-cost laser scanners and navigation systems provide accurate mapping if properly integrated at the hardware and software level. As such, UAVs have emerged as an aerial mapping platform providing additional economic and practical advantages, and thus increasing the reliability and accuracy of mapping applications [

In addition to the localization problem, unmanned vehicles encounter several navigation hurdles, including, but not limited to: (a) the necessity of building a map of the environment during flight so the map is built from different positions. Afterward, these partial representations require assembly in order to construct a coherent map, in turn requiring the unmanned vehicle to know its position which is a challenge in indoor environments, and (b) the problem of feature extraction in sensory processing. Specifically, correct data association, used to estimate the transformation between two consecutive frames, suffers from contaminated raw measurements caused by random noise.

Therefore, navigation of a vehicle in an unknown, indoor environment is addressed by simultaneous localization and mapping method (SLAM) methods [

Current approaches such as Iterative Closest Point (ICP) [

Even though the SLAM method addresses the problem of navigating in unknown environments, it encounters essential mapping challenges, for example, in unstructured, dynamic, or large scale environments [

In dynamic environments, mapping and localization are a challenging task because the unmanned vehicles must be able to cope with the changing position of the moving objects, and furthermore, eliminate their impacts during modeling the environment [

Moreover, the probabilistic occupancy grid assumes that each individual cell of the grid is independent from its neighbors [

Unstructured environments are characterized by no specific pattern for the environments [

This paper is organized as follows:

The key frame concept, in a video streaming broadcast process, is based on reducing the bandwidth load and extracting valid information from the video [

From the same perspective, the proposed algorithm extracts lines from the laser range finder point cloud because line matching is more robust than point matching, and furthermore, lines are robust to the disruption of the moving objects in the dynamic environments [

The line-tracking (LT) algorithm [

The threshold

Line fitting is implemented using principle component analysis (PCA) [

The line availability in indoor environments has been evaluated using various data sets offered by different research groups. The results show that the mean number of line availability is ranging from 4.10 to 8.86 lines per scan.

Initially, two reference lines are chosen from the extracted lines of the first point cloud, which represent the first key frame, in consonance with the following criteria: (a) the longest lines; (b) number of the points building the line is not less than the threshold

The threshold

The inscribed angle

The first two reference lines are the kernel for the mapping frame. Afterward, all the in-between frames until receiving another key frame are sharing in constructing a coherent map using their directly relation with the reference key frame, as shown in

The vehicle’s absolute position with respect to the reference lines in the mapping frame is determined by calculating the orthogonal distances from it to the reference lines at every period. This helps compensate for any potential accumulated errors, especially given that other techniques for determining relative position [

Representing each scan using a group of lines is more reliable than using a group of points because correct data association for each point between two successive scans is quite a difficult process. In contrast, matching lines is both reliable and robust. A line is considered to be matched after accepting mutual compatibility with the previous scan line. Matching criteria, described hereafter, are performed according to several computations, thereby ensuring a correct match. Thence, angles between the previous scan lines and all current lines are computed using a vector dot product. Candidate lines whose angle is less than a certain threshold

After the lines are matched, the new matched reference lines become the new reference lines and a new position for the vehicle is determined. Thereafter, the angles between all matched lines in each scan frame are computed. Using a specified threshold

Using least squares, the detected corners are used for estimating transformation parameters

The ICP is an algorithm employed for finding the transformation between two sets of point clouds by minimizing the difference between them. In case of a 2D data set, the transformation possesses three degrees of freedom (i.e., a combination of translation and rotation). The primary challenge for the ICP algorithm is determining the correct data association between the two point clouds. While the ICP algorithm encounters problems in data association during sharp rotation and/or fast movement, the corners registration method helps the ICP improve data association even in harsh situations [

After a while the reference lines lessen due to the movement of the vehicle. In order to preserve continuity of the reference lines occurrence, the successive key frames are created when the length of the reference lines reaches a threshold. The goal here is to locate two new reference lines in the previous scan frame, and matched lines in the current scan frame, while preserving the chosen line criteria using the algorithm as outlined in

Finally, the ICP algorithm is used to approximate the current adjusted scan’s point cloud to the previous one in the mapping frame in order to fine tune the mapping, and accurately determine the vehicle’s new position. Using this algorithm by itself is problematic for two reasons: (a) the vehicle can get lost in the case of rapid movement or sharp rotation, and; (b) the ICP algorithm uses an iterative technique, and so requires significant amounts of time for scan matching convergence.

On the other hand, the ICP algorithm is solely performed during the lines outage period. During this period the transformation parameters, in the laser scanner coordinate frame, are cumulatively computed besides the transformation parameters of the global map. When the lines are detected over again, the last reference lines are transformed to the current scan frame using the computed laser scanner transformation. Thereafter, the relation between the new reference lines and the transformed reference lines are calculated to overcome the reference lines discontinuity during the lines outage period as shown in

All the experimental results are performed using a low-cost laser scanner range finder (RPLIDAR 360

For the sake of comparison between different algorithms, all algorithms have been implemented using the same computing platform (MATLAB) on a Lenovo ThinkPad, Intel core i7-4702MQ 2.2 GHz, 4G RAM, and 64-bit operating system. In order to validate and evaluate the proposed algorithm, the mapping performance and time consumption of the proposed algorithm are compared with Hector SLAM with different grid cell dimensions [

Dataset II is collected at ENE building University of Calgary. Hector SLAM completely fails to converge and build a map when using single level with grid cell dimension equal to 5 and 10 cm because the algorithm is stuck in local minima as it is based on gradient ascent. However, it succeeds with higher cell dimension such as 20 cm and more, as shown in

Using Hector SLAM with single level grid cell dimension is potentially apt to get stuck in local minima. Therefore, multi-resolution map representation is used to mitigate this problem [

The proposed algorithm depends on a group of thresholds. The values of the thresholds are computed according to sensor precision and/or dynamics of the vehicle as described above. However, the proposed algorithm can achieve the exploration mission, even if the values of the thresholds are altered around the right computed values of the thresholds. Nevertheless, the altered threshold values depend on the environment of the exploration mission, and they will affect the sharing percentage between the two methods (RKF and ICP) in the entire mission.

In this paper, a low-cost novel real-time scan matching algorithm, inspired by the video streaming broadcast key frame technique, is proposed. The proposed algorithm depends on a sole laser scanner range finder and does not need external aided sensors. The proposed algorithm endeavors to mitigate the accumulated errors that exist in the local and global scan matching, as the transformation matrix of the proposed algorithm is computed with respect to the previous key frame and not with respect to the previous scan. Initially, the proposed algorithm depends on selecting two reference lines from the extracted lines which compose the first reference key frame. The transformation parameters of all the consecutive frames are computed with respect to this first reference key frame, until new reference key frame is chosen. Thus, two new reference lines are swapped, and furthermore, the transformation parameters between the old and new reference lines are estimated. The transformation parameters of the next frames are computed with respect to the first reference key frame but taking into consideration the transformation parameters of the swapping process. For validating and evaluating the proposed algorithm, the mapping performance and time consumption are studied under different algorithms such as Hector SLAM, ICP, and feature to feature registration such as corners, in static and dynamic environments. It was found that the time consumption of the proposed algorithm is approximately reduced by 99%, 35.7%, 10% comparable with multi-level Hector SLAM, ICP, feature registration, respectively. The computational time of estimating the transformation parameters between each two successive scans is approximately 9 ms, which indicates the qualification of the proposed algorithm for real-time system implementations.

Although the proposed algorithm depends on the availability of two non-parallel lines, it succeeds to provide a solution in the corridors and unstructured environment by switching to the ICP algorithm. The proposed algorithm is appropriate for dynamic environments, as the moving object features will not satisfy the reference lines selection criteria. Therefore, the extracted lines from the moving objects never compose a reference key frame.

This work was supported by Naser El-Sheimy research funds from NSERC and Canada Research Chairs programs. Thanks also goes to the funding of the first author by the Egyptian government.

This is research work with accomplished under the supervision of Naser El-Sheimy. Haytham Mohamed and Adel Moussa designed and implemented the proposed algorithm and performed the experiments. Haytham Mohamed wrote the paper. Naser El-Sheimy contributed the UAV and the sensors used in the experiments. Adel Moussa, Mohmed Elhabiby, Naser El-Sheimy, and Abu Sesay reviewed and provided feedback on the paper.

The authors declare no conflict of interest.

The structure of the key frame concept.

Alternating structure of the proposed algorithm between the RKF and ICP methods.

Overall structure of the proposed algorithm.

The role of line tracking (LT) algorithm.

Detection behavior of the laser scanner range finder.

Line tracking algorithm (LT).

Adjusted line tracking algorithm (ALT).

Principle component analysis (PCA).

Maps for different data sets are used: (

Histogram of number of lines detected in the MIT CSAIL Building dataset.

Execution time of the lines extraction in the MIT CSAIL Building dataset.

Setting min angle between two reference lines.

Two reference lines of the first key frame.

The first key frame and the successive in-between frames.

Corners detection and its confidence ellipsoid region.

Line registration algorithm.

Swapping process between the old and new reference lines.

Swapping result between old and new reference lines.

Last reference lines transformation after the lines outage period.

The aerial platform equipped with the laser scanner range finder.

Map representation of the dataset I.

Hector SLAM three level multi-resolution map representation result using grid cell dimensions 20, 10 and 5 cm.

Mapping and position results for the ICP algorithm.

Mapping and position results for the proposed algorithm.

Single level hector SLAM mapping results using different grid cell dimensions: (

Single level hector SLAM using 20 cm grid cell dimension: (

Three level multi-resolution map representation result using grid cell dimensions 20, 10 and 5 cm.

Execution time and iterations number for three level multi-resolution map representation with 20, 10 and 5 cm grid cell dimensions. (a) Execution time; (b) iterations number.

Mapping and position results for the ICP algorithm.

Mapping and position results using adjusted corners registration.

Mapping and position results for the proposed algorithm.

Three level multi-resolution map representation result using grid cell dimensions 20, 10 and 5 cm.

Mapping and position results for the ICP algorithm.

Mapping and position results for the adjusted corners registration.

Failure of the proposed scan matching algorithm in one of the in-between frames w.r.t the successive frame.

One sigma ellipse of the scan matching error.

Mapping and position results for the proposed algorithm.

Three level multi-resolution map representation result using grid cell dimensions 20, 10 and 5 cm.

Mapping and position results for the ICP algorithm.

Mapping and position results for the adjusted corners registration.

Mapping and position results for the proposed algorithm.

Three level multi-resolution map representation result using grid cell dimensions 20, 10 and 5 cm.

Mapping and position results for the ICP algorithm.

Mapping and position results for the adjusted corners registration.

Mapping and position results for the proposed algorithm.

Mapping and position results for the proposed algorithm after changing values of the thresholds.

Standard deviations of the laser scanner range finder according to the detection range.

Detection Range [m] | Standard Deviation |
---|---|

Less than 1 | 0.34 |

Less than 2 | 0.73 |

Less than 3 | 1.79 |

Less than 4 | 3.27 |

Less than 5 | 3.92 |

Less than 6 | 5.44 |

Line availability and extraction time for different data sets.

Dataset Name | MIT Killian | MIT CSAIL | Intel Lab | ACES Building | Freiburg Building |
---|---|---|---|---|---|

Number of scans | 17,481 | 1989 | 13,632 | 7375 | 4496 |

Mean number of lines | 4.24 | 8.80 | 4.10 | 4.21 | 8.86 |

Percentage of more than three lines | 88.2% | 99.9% | 81.3% | 84.8% | 99.8% |

Mean execution time [ms] | 3.7 | 8.9 | 3.4 | 4.0 | 7.4 |

Computed parameters of the extracted lines of the first key frame.

Line Number | Coefficient of Determination |
Adjusted Coefficient of Determination |
Number of Data Points | Line Length [m] |
---|---|---|---|---|

1 | 0.9940 | 0.9937 | 51 | 5.7 |

2 | 0.9755 | 0.9706 | 13 | 1.0 |

3 | 0.8689 | 0.8631 | 48 | 5.4 |

4 | 0.9749 | 0.9722 | 22 | 2.8 |

5 | 0.9713 | 0.9598 | 8 | 1.8 |

The environment status and contribution for each experimental dataset.

Dataset Name | Environment Status | Contribution |
---|---|---|

Dataset I | Static | Corridors, loopback, glass objects |

Dataset II | Static | Brick walls, glass objects, Corridors |

Dataset III | Static | Aluminum curtains, Sharp rotation |

Dataset IV | Static | Glass objects, corridors |

Dataset V | Dynamic | Glass objects, corridors, moving objects |

Mean execution time and number of iterations for multi-resolution map representation with different levels and grid cell dimensions.

Level | Cell Dimension [cm] | Mean Execution Time [s] | Mean Iterations Number |
---|---|---|---|

1 | 20 | 0.11 | 15.7 |

2 | 10, 5 | 0.80 | 33.5 |

3 | 20, 10, 5 | 1.15 | 47 |