1. Introduction
A reliable positioning system is the basis of autonomous driving [
1]. Integrity is an important indicator for ensuring the driving safety of vehicles. The integration of the Global Satellite Navigation System (GNSS) and the Inertial Navigation System (INS) could provide real-time and high-precision positioning and this approach is widely used in military and civil fields [
2,
3]. However, positioning and navigation in urban canyons is still a challenge [
4] because multipath GNSS signals are received due to reflection or non-line-of-sight (NLOS) signals are received due to diffraction; this eventually leads to unacceptable GNSS measurement errors [
5,
6,
7]. The comprehensive positioning performance of the GNSS/INS integrated navigation system is seriously degraded. Therefore, to meet the positioning performance requirements in urban canyons, such as viaducts, floor holes and tunnels, the real-time detection of GNSS/INS integrated system positioning performance is essential. However, in urban canyons, there are a lot of satellites affected by NLOS and multipath. With all four core GNSS constellations of the world in operation, the number of affected satellites is ten or more. It is difficult to detect all the affected satellites and exclude them from the localization solution by traditional algorithm such as Multiple Solution Separation (MSS). Therefore, we detect faults in the positioning domain. After faults are detected, a GNSS/INS integration algorithm can be designed based on the detection results to improve the positioning accuracy and ensure the integrity of the system.
GNSS fault detection methods are mainly divided based on whether to detect specific faulty satellites [
8]. Blanch et al. only used GNSS measurement information to propose a method combining a greedy search and L1 norm minimization to detect satellites with pseudo range errors greater than 20 m that were affected by multipath and NLOS signals [
9]. However, in urban canyons, rapid changes in observation satellites reduced the performance of the method. Sun et al. proposed a dynamic detection and multiple fault elimination algorithm based on pseudo range comparison [
10]. Using inertial measurement unit (IMU) and GNSS pseudo range data, a parallel fault detection and exclusion scheme consisting of a sliding window and a detector was designed, which can detect multiple faulty satellites in real-time. This scheme is suitable for the tightly and loosely coupled architecture. Groves et al. proposed a likelihood-based 3D-mapping-aided (3DMA) GNSS ranging algorithm and signals, which are predicted to be non-line-of-sight (NLOS) to contribute to the position solution without explicitly computing the additional path delay due to NLOS reception, which is computationally expensive [
11]. Sun et al. proposed a new measurement noise covariance update scheme, with the adaptive indicator generated from pseudo range error prediction results, for a tightly coupled GNSS/IMU navigation system in urban areas [
12]. Shytermeja and Attia et al. proposed the method of using a fisheye camera to suppress NLOS signals and eliminate influenced satellites [
13,
14]. Fisheye images are divided into sky and non-sky regions. The GNSS fault detection can be realized by identifying GNSS satellites in the non-sky region received by the receiver. However, satellites affected by multipath signals cannot be excluded by this method. Moreover, the processing technique used for camera data is complex. Wen et al. proposed a similar approach using a real-time 3D point cloud or a sliding window map for identifying edges on the top of the given building [
15,
16]. Based on the relationship between the edges on the top of the building or double-decker bus and all observed satellites, the satellites influenced by the NLOS signals are detected and pseudo ranges are corrected. However, only the satellites affected by NLOS signals are detected, and the environmental conditions are highly demanding. All four of the above methods need to detect specific affected satellites and exclude them from the positioning solution. However, in urban canyons, lots of satellites are affected by NLOS and multipath signals, so it is difficult to exclude them individually. The residual chi-square test is widely used for fault detection; it constructs a fault detector via the innovation of the Kalman filter (KF) [
17]. The test is performed at the positioning domain to detect whether a positioning fault is present. The algorithm is efficient and works in real-time, but the sensitivity of the residual chi-square test is poor when faults disappear. As mentioned above, although the effectiveness of the existing fault detection algorithms for detecting satellites affected by multipath and NLOS signals in complex environments has been proven, challenges remain concerning the real-time performance of dynamic applications [
18,
19]. Therefore, it is necessary to propose a new real-time fault detection algorithm to improve the sensitivity of the residual chi-square test to fault disappearances, and the integrity of this approach should be assessed in terms of its false alarm rate and missed detection rate. LiDAR is an important sensor in autonomous driving localization, which has good performance in ranging and perception [
20]. As the cost of solid-state LiDAR decreases, LiDAR has a wider range of applications [
21]. LiDAR has robust performance in building high-precision map and object detection for autonomous driving [
22,
23]. In this paper, we carry out fault detection algorithm aided by LiDAR.
The KF is a famous recursive algorithm for discrete linear systems and has been widely used in many fields [
24]. When the given system is linear and the observed noise follows a Gaussian distribution, the KF can be proven to be optimal. However, Chang et al. pointed out that the noise probability does not obey a Gaussian distribution in practice, and it is difficult to determine the dynamic model and statistical information of the noise distribution [
25]. Many scholars have studied a series of filters for non-Gaussian-distributed noise. Gordon et al. developed a particle filter (PF) to address the problem of non-Gaussian Bayesian estimation [
26]. However, high-dimensional state estimation may result in a heavy computational burden. The H∞ filter was proposed for the uncertainty of measurement noise, but Rigatos pointed out that it could not solve the problem that GNSS-measured values were outliers [
27]. The fading filter and adaptive filter are two widely used filters that have been proposed to solve the uncertainty of the noise distribution characteristics of dynamic systems. Chen et al. analyzed the difference between the adaptive filter and fading filter in detail. The fading filter mainly sets the weight of the state covariance matrix, while the adaptive filter mainly sets the weight of the measured noise [
28]. Fagin and Sorenson proposed the fading filter algorithm in the 1960s [
29]. Lee and Sun et al. proposed utilizing the fading filter method in the field of integrated navigation [
30,
31]. Although these methods improve the performance of the KF and the resultant positioning accuracy, many matrix multiplication and inversion operations are involved, resulting in poor practicability. Li et al. proposed a dynamic fading filter algorithm to solve problems with difficult matrix multiplication operations, greatly improving the performance of the algorithm [
2]. Li et al. proposed a fading filter to defend against outliers. When a GNSS fault occurred, the innovation of the last n epochs was used to estimate the innovation of the current epoch, but the weights of the last n epochs were not considered [
32]. Wang et al. developed the Sage–Husa adaptive filter, designed a sliding window and determined the covariance matrix of the current epoch based on an iterative method, but it was quite difficult to choose the window length [
33]. Zhou et al. proposed a new adaptive unscented KF (N-AUKF) algorithm [
34]. A covariance matching criterion was designed to judge the filtering divergence, and an adaptive weighted coefficient was applied to restrain the divergence. However, this approach requires adequate measurements. Li et al. extended this definition to Kalman filtering to detect gross errors, explained its nature and its relation with the currently adopted Chi-square variables of Kalman filtering in model and data spaces and compared them with the predictive residual statistics, starting by defining an incremental chi-square method of recursive least squares [
35]. All of the above algorithms are effective in complex environments. However, the measurement noise is estimated by prior modeling with a certain error. Therefore, it is necessary to estimate the measurement noise with multi-sensor redundant measurement information.
Integrity is an important indicator of GNSS positioning in the aviation field [
36]. Integrity evaluation from the GNSS to the GNSS/INS integrated positioning. Protection level is an important index of integrity monitoring, which represents the upper limit of positioning error [
37]. However, in the existing research, the protection level in GNSS/INS integrated positioning is mainly based on simulation experiments [
38], so it is necessary to carry out the verification protection level using the real test data. The protection level can meet the application requirement of autonomous driving.
The main contributions of this paper are as follows. (1) Regarding the problem that the residual chi-square test has low sensitivity when faults disappear, a LiDAR aided real-time GNSS/INS integrated fault detection algorithm based on the characteristics of high-precision 3D LiDAR is proposed. The test statistic is constructed based on the mean position deviation of the matched targets, and the dynamic threshold is constructed by a sliding window based on the power series. (2) To solve the problem that the measurement noise is estimated by prior modeling with a certain error, a LiDAR aided measurement noise estimation and filtering algorithm is proposed. The mean position deviations of the matched targets for the last n epochs are normalized, and an adaptive weight sequence is built. The adaptive measurement noise factor is joined with the Extended Kalman Filter (EKF) innovation covariance. (3) For the problem that the integrated navigation error bounds are calculated by simulations in the existing research, we innovatively verify the error bounds of the integrated navigation system on real test data and optimize the algorithm of error bounds by using the filter in (2).
The subsequent sections of this paper are organized as follows. An overview of the proposed algorithm is given in
Section 2. The proposed LiDAR aided real-time fault detection algorithm is presented in
Section 3. In
Section 4, the LiDAR aided measurement noise estimation adaptive filter algorithm is provided. Two experiments are performed to verify the effectiveness of the proposed algorithm, and its integrity is assessed in
Section 5. Finally,
Section 6 presents the conclusions and directions for future studies.
5. Experimental Results and Discussion
5.1. Introduction to the Experiment
5.1.1. Sensor Setups
In both experiments, Newton-M2, a low-accuracy GNSS/INS integrated navigation system, was used to collect real-time kinematic (RTK) GNSS data at a frequency of 1 Hz and INS data at a frequency of 100 Hz. A 3D LiDAR sensor (Velodyne 16) was to collect raw 3D point clouds at a frequency of 10 Hz. In addition, the NovAtel SPAN-CPT7, a high-accuracy GNSS (GPS, Global Navigation Satellite System (GLONASS), and Beidou) RTK/INS integrated navigation system, was used to provide the ground truth positioning data. The RTK is onboard and runs in real-time. The NovAtel SPAN-CPT7 is also affected by multipath and NLOS, but the accuracy is higher and our research focuses on low-precision and cheap integrated navigation devices. Therefore, the SPAN-CPT7 was used for providing the ground truth. The coordinate systems between all the sensors were calibrated before conducting the experiments. The experimental equipment is shown in
Figure 4.
The Apollo 5.5 was used to collect GNSS and INS data from Newton-M2 and LiDAR data from Velodyne 16. The data format is Protobuf. The Novatel SPAN-CPT7 saves the data through the serial port. The data format is OEM7. The Newton-M2 and the Novatel SPAN-CPT7 are synchronized to the GNSS and INS through GPS timing, and the LiDAR is synchronized by the pulse per second (PPS) of the GPS timing.
5.1.2. Experimental Scenes
Since the residual chi-square test is widely used to detect faults in the positioning domain and the traditional EKF is the most commonly used GNSS/INS integrated navigation algorithm, the proposed algorithm was compared with the EKF to verify its performance. Two experiments were carried out in typical urban canyons in Beijing. The scenarios are shown in
Figure 5a,b, representing mid and deep urban canyons, respectively. We first tested the situation in which the vehicle went through the narrow viaduct and the GNSS signals were slightly affected for a short time, as shown in
Figure 5a. Then, we carried out another experiment in which the vehicle went through a wide floor hole, and the GNSS signals were seriously affected for a long time, as shown in
Figure 5b.
5.2. Case One: The Narrow Viaduct
In case one, the GNSS signal was slightly affected by multipath and NLOS signals when the vehicle went through the narrow viaduct. The trajectory of the vehicle is shown in
Figure 6a. In our analysis, the positioning error is higher in the period from 149th s to 164th s. It happens to be similar that according to the onboard RTK data, the solution type of GNSS positioning in the period from 149th s to 164th s was not “NARROW INT” (the “NARROW INT” indicates that the multi-frequency RTK is a fixed solution in the NovAtel receiver). Therefore, we needed to perform fault detection in this period. The positioning errors in the east and north are shown in
Figure 6b. The maximum errors in the east and north were 1.1156 m and −0.84 m, respectively.
The top view of the 3D LiDAR global point cloud map built by the LOAM algorithm is shown in
Figure 7.
Figure 8 shows 31 tree trunks and lampposts marked in the 3D LiDAR global point cloud map as detection targets. These targets are marked with colored points in
Figure 8 and numbered 0–30 from left to right in the east view.
Two frame point clouds are randomly selected to present the point cloud target detection results, as shown in
Figure 9.
Figure 9a shows the 645th frame, and a total of 10 targets were detected, including targets No. 8–10 marked in
Figure 8.
Figure 9b shows the 1023rd frame, and a total of four targets were detected, including targets No. 17–18 marked in
Figure 8.
Figure 10a shows the matched targets between the single frame target detection outputs and the global map-based target detection results.
Figure 10b shows the number of detected targets and matched targets in each frame. It can be seen that at least one matched target is present in each frame. This meets the time continuity requirement of matched targets and can support subsequent fault detection processes.
Table 1 summarizes the number of detected targets and matched targets obtained with single frame detection.
The position deviations of all matched targets in each frame in the east and north directions are shown in
Figure 11a,b, respectively.
Figure 12 shows the mean position deviation of the matched targets in each frame, which is used as the test statistic for the proposed fault detection algorithm.
Sensitivity is an important fault detection performance evaluation index, and the missed detection rate and false alarm rate are important integrity assessment indices.
Figure 13a shows the fault detection result produced by the residual chi-square test, and
Figure 13b is the result of the proposed LiDAR aided real-time fault detection algorithm. The fault detection performance of the two algorithms is compared in
Table 2. The fault could not be detected by the residual chi-square test, while the proposed algorithm could detect the fault from 160.02th to 164.75th s. Therefore, it can be proven that the proposed algorithm has higher sensitivity. The percentages of false alarms and missed detections were reduced by 42.67% and 31.2%, respectively, relative to those of the residual chi-square test.
The proposed algorithm can mainly be used to solve the existing problems faced by the EKF algorithm during the fault period. The positioning errors of the EKF, OFFAF and the proposed algorithm in the east and north are shown in
Figure 14. The results are analyzed in
Table 3. Compared with the EKF, the mean, maximum and root mean square error (RMSE) positioning errors of the proposed algorithm were reduced by 67.66%, 51.9% and 71.58% in the east and 12.93%, 27.02% and 33.6% in the north, respectively. Compared with the OFFAF, the mean, maximum and root mean square error (RMSE) positioning errors of the proposed algorithm were reduced by 51%, 39.1% and 60.3% in the east and −5.2%, 21.1% and 19.2% in the north, respectively. The proposed algorithm is more effective than the OFFAF.
The error bound, which is the upper limit of positioning error, is an important integrity assessment index. When the positioning error exceeds the error bounds, an alarm is triggered. The existing research on integrated navigation error bounds were mainly performed by simulation experiments in [
38]. In this study, the error bound of integrated navigation is innovatively verified with real test data. The error bounds and horizontal positioning error for the EKF and the proposed algorithm are shown in
Figure 15a,b, respectively. In the two algorithms, the error bounds could overbound the horizontal error. From
Table 4, the mean value and maximum value of the error bounds of the proposed algorithm were reduced by 53.03% and 57.88%, respectively, relative to the EKF during the fault period.
5.3. Case Two: The Wide Floor Hole
In case two, the GNSS signal was seriously affected by multipath and NLOS signals when the vehicle went through the wide floor hole. The trajectory of the vehicle during data collection is shown in
Figure 16a. The vehicle circled twice around the red trajectory in
Figure 5b. In our analysis, the positioning error is higher in the period from the 179th to 198th s and from the 377th to 401st s. It happens to be similar according to the onboard RTK data, the solution types of the GNSS positioning results in this period were not “NARROW INT”. It is believed that the GNSS was affected by multipath and NLOS signals. The positioning errors induced in the east and north during data collection are shown in
Figure 16b. The maximum errors in the east and north were −4.2601 m and −19.5848 m, respectively.
Figure 17 shows the top view of the 3D LiDAR global point cloud map built by the LOAM algorithm.
Figure 18 shows 26 tree trunks and lampposts marked as detection targets in the 3D LiDAR global point cloud map. They are marked with colored points in
Figure 18 and numbered from 0–25.
Figure 19 shows the results of single frame target detection. We took two frames as the vehicle went through the floor hole.
Figure 19a shows the 1742nd frame, and a total of nine targets were detected, including targets numbered twenty-three to twenty-four marked in
Figure 18.
Figure 19b shows the 1856th frame, and a total of twelve targets were detected, including targets numbered twenty-three to twenty-five marked in
Figure 18.
Figure 20a shows the matched targets between the single frame target detection outputs and the global map-based target detection results.
Figure 20b shows the number of detected targets and matched targets in each frame. It can be seen that at least one matched target was observed in any epoch. This outcome meets the time continuity requirement of matched targets and can support subsequent fault detection processes.
Table 5 summarizes the number of detected targets and matched targets obtained with single frame target detection.
The position deviations of all matched targets in each frame in the east and north directions are shown in
Figure 21a,b, respectively.
Figure 22 shows the mean position deviation of the matched targets in each frame, which is used as the test statistic for the proposed fault detection algorithm.
Similar with
Figure 13,
Figure 23a shows the fault detection results produced by the residual chi-square test. The results of the two fault detection algorithms are locally magnified in
Figure 24a,b.
Figure 23b is the result of the proposed LiDAR aided real-time fault detection algorithm. The results of the two fault detection approaches are locally magnified in
Figure 24c,d. The fault detection performances of the two algorithms are compared in
Table 6. The response time of fault disappearance was 8.94 s and 6.62 s for the residual chi-square test, but they were reduced by 5.465 s on average with the proposed algorithm. Therefore, the low-sensitivity problem of the residual chi-square test for the fault disappearance case is effectively ameliorated. Furthermore, the percentages of false alarm and missed detection were 6.26% and 0.69% for the proposed LiDAR aided real-time fault detection algorithm, which are reductions of 76.49% and 79.03% relative to the residual chi-square test results, respectively.
Similar with
Figure 14, the positioning errors of the EKF, OFFAF and the proposed algorithm in the east and north for case two are shown in
Figure 25. The results are analyzed in
Table 7. Compared with the EKF, the mean, maximum and RMSE positioning errors of the proposed algorithm were reduced by 7.4%, 20.49% and 12.81% in the east and 79.12%, 68.22% and 73.31% in the north, respectively, during the fault period. Compared with the OFFAF, the mean, maximum and RMSE positioning errors of the proposed algorithm were reduced by 26.2%, 3.7% and 12.98% in the east and 51.7%, 18.8% and 35.1% in the north, respectively, during the fault period. The proposed algorithm is more effective than the OFFAF.
Similar with
Figure 15, the error bounds and positioning errors induced by the EKF and the proposed algorithm in the horizontal direction in case two are shown in
Figure 26a,b, respectively. The error bounds of the EKF could not overbound the horizontal errors in some epochs. However, the error bound of the proposed algorithm could overbound the horizontal error in all epochs. From
Table 8, the error bounds failed to overbound the horizontal error in 1490 epochs. The mean value and maximum value of the error bounds yielded by the proposed algorithm were reduced by 56.35% and 73.2%, respectively, relative to the EKF during the fault period. Therefore, the integrity of the system could be guaranteed by the proposed algorithm.
5.4. Discussion
In our research, the LiDAR aided GNSS/INS integration fault detection and localization algorithm is proposed. The proposed fault detection algorithm could effectively improve the sensitivity of residual chi-square test when the fault disappears. The response time for fault disappearance is an important indicator. The localization algorithm could reduce the positioning error compared to EKF. Finally, the integrity of the proposed algorithm is evaluated including false alarm rate, missed detection rate and error bounds. The algorithms proposed in this paper are oriented to the autonomous driving for level four (L4) or level five (L5). However, due to the limitation of experimental conditions, some problems should be considered.
Firstly, in terms of prior point cloud map, the map constructed by LOAM has errors. However, in our experiments, the map is built on a small scene and the error of the map established by LOAM is less than 0.3 m, which is very small compared with the error caused by multipath and NLOS. Therefore, the error of LOAM is acceptable and it has little effect on the performance of the algorithm. The cost of construction of a prior global point cloud map is high only for the proposed algorithm. However, a high-precision point cloud map is an indispensable part of autonomous localization in the existing research. In the future, the HD map can be produced in the industry which is cheaper and more accurate. The proposed algorithm can be applied with the help of HD map and produce more effect. The map is established offline and will not affect the real-time performance of our algorithm. Storing maps takes up a lot of memory, but is not a major direction in our research. We believe this problem of memory will be solved with the autonomous driving implementation.
Secondly, in terms of point cloud processing being involved in target detection, in this paper, the target detection of a single frame point cloud is carried out by clustering. Object detection of single frame is required in the perception module of autonomous driving. Our algorithm can reuse relevant results in the application process. Therefore, we believe that real-time performance could be guaranteed when the autonomous driving is implemented. In the meanwhile, time delay is also our main research direction in the future, and proposed algorithms need more lightweight processing. The research on the time delay model in [
46,
47,
48] provides us with a good reference.
Thirdly, in terms of target matching, in this paper, target matching is used instead of scan matching. On the one hand, the target is generally marked in the high-precision semantic map of autonomous driving. We hope that the proposed algorithm can make better use of high-precision semantic map information in future autonomous driving applications. On the other hand, the real-time performance of the proposed algorithm is considered. There are many feature points to be matched on scan matching, reducing the efficiency of the algorithm. Therefore, we apply target matching.
Fourthly, in terms of GNSS/INS integration device and ground truth. In our research, we focus on solving the error problem of the low-cost GNSS/INS integration device so that the low-cost device has a better application value in autonomous driving. The NovAtel SPAN-CPT7 is also affected by multipath and NLOS, but it is more expensive and the positioning accuracy is higher compared to the Newton-M2. Therefore, the SPAN CPT7 is used for providing the ground truth. We are also looking forward to better ground truth solutions in dynamic scenarios for urban canyons positioning.
Finally, in terms of data collection. Due to the limitation of experimental conditions, we conducted tests in two scenarios in this paper with small data samples. In the future, we will collect a large amount of data in urban canyons to verify the performance of our algorithm and make further improvements.