1. Introduction
In recent years, there has been significant research conducted to improve global navigation satellite system (GNSS) performance in urban environments [
1,
2,
3,
4]. One of the most noticeable techniques is three-dimensional mapping-aided (3DMA) GNSS positioning, which uses three-dimensional (3D) mapping data to improve positioning accuracy in dense urban areas. The 3DMA technique can be broadly divided into two groups, i.e., ranging-based 3DMA positioning and shadow matching. The former, like the conventional GNSS positioning algorithm, still makes use of pseudorange measurements, meanwhile it is aided with the information of satellite visibility or additional path delay of reflected signals obtained using 3D city models. For shadow matching, the basic idea is to compare the measured signal availability and strength with predictions obtained using 3D city models over a range of candidate positions. For detailed implementation of 3DMA GNSS positioning, readers are referred to [
5,
6,
7,
8,
9,
10]. For the 3DMA GNSS positioning, the accuracy of line-of-sight/non-line-of-sight (LOS/NLOS) signal reception classification directly affects its performance [
5]. In addition to the 3DMA GNSS positioning, conventional ranging-based least-squares GNSS positioning can also benefit from an accurate signal classification by excluding or down-weighting the identified multipath (MP)/NLOS measurements [
11].
Various approaches to classifying LOS/NLOS signal have been proposed. As mentioned above, the 3D city model can predict the satellite visibility, but with a prerequisite of accurate user location. Another straightforward method is the usage of additional hardware sensors, e.g., dual-polarization antenna [
12], array antenna [
13], panoramic sky-pointing camera [
14,
15], 3D light detection and ranging (LiDAR) [
16], inertial navigation system (INS) [
17], etc. The effectiveness of these additional aiding-based techniques has been verified. However, the issue of large physical size and high cost needs to be addressed before being applied to low-cost receivers, which occupy a large portion of mass-market GNSS capable devices.
Machine learning algorithms with nonlinear kernel functions can classify nonlinearly separable data instances by projecting the data features into a higher-dimensional space and maximizing the geometric distance between the decision boundary and the nearest data on each side of the decision boundary [
18]. It has been used extensively in classification applications, e.g., the GNSS receiver context and channel classification [
18,
19] and GNSS signal type classification [
20]. This method requires no additional aiding, making it more feasible in practice. The key element of the machine learning technique is the selection of features for recognition. Conventional machine learning-based GNSS signal classifier usually uses features extracted from the basic observables and measurements, like signal strength or carrier-to-noise-ratio (
), satellite elevation angle, code pseudorange measurement, etc. In this paper, these kinds of features were referred to as national marine electronics association (NMEA)-level or receiver independent exchange format (RINEX)-level features as they can be obtained from the commonly used NMEA/RINEX files. Our previous study achieved a 75% of LOS/MP/NLOS classification rate using a support vector machine (SVM) classifier based on signal strength and the difference between delta pseudorange and pseudorange rate [
21]. Note that, in [
21], data collected at the same location were used as both training and testing data, and a ten-fold classification was carried out. The trained SVM model was not applied to test data collected at different places. An accuracy of 91.8% was reported in [
20] for both training data and testing data collected at the same place. However, the accuracy was degraded to less than 75.0% for testing data collected at a different location, indicating the sensitivity issue of NMEA/RINEX-level classifiers, which will limit its application in practice. Other than the classification rate, as introduced in [
22], a confidence value of the classification is also provided using the robust decision tree-based LOS/NLOS classifier. This method, however, should make a trade-off between high accuracy and low computational load. Besides, this method only deals with the LOS/NLOS classification. In fact, the identification of MP will be helpful for improving GNSS positioning in urban canyons.
NMEA/RINEX-level classification rate is limited because the complex signal propagation in urban environment is not fully manifested in these end attributes. With the availability of GNSS raw measurements in mass-market devices, e.g., tablets and smartphones with Android 7 operating system [
23], deeper-level GNSS measurements are accessible, such as carrier phase, code pseudorange, navigation message bits, correlation result of each channel [
24]. This opens the door to develop a more advanced GNSS positioning algorithm, including signal type classification at a deeper level. In fact, correlator-level parameters have drawn much attention for better GNSS performance. In [
25], the carrier phase delay between the LOS and reflected signals is considered to develop a new variable referred to as early late phase (ELP) for MP detection. In [
26], the author proposed to identify the NLOS reception by constructing a classifier using features extracted from multiple autocorrelation functions (MACF) in a software-defined receiver (SDR) [
27]. The basic principle behind this is that the NLOS reception distorts the autocorrelation function (ACF) of the direct LOS signal. Features for multipath classification were also extracted from the correlation sequences in [
18]. Authors in [
28] used the code discriminator output and the mean and variance of the slope of the correlation curve to monitor the signal quality. In a more recent paper [
29], the authors reported the indoor LOS/MP signal classification performance using a deep leaning approach based on the tracking outputs of a pseudolite signal. In this paper, the signal type classifier using tracking loop parameters is referred to as correlator-level classifier for simplicity. Despite these efforts, there is a lack of performance assessment of correlator-level classifier in urban areas for LOS/MP/NLOS classification and its comparison with the commonly used NMEA- and RINEX-level classifiers, which is the main objective of this paper. To accomplish this objective, LOS/MP/NLOS effects on code autocorrelation function will be analyzed, based on which correlator-level features will be extracted, and a fair comparison of the performance of NMEA-, RINEX-, and correlator-level classifiers will be carried out. Correlator-level measurements like multicorrelator outputs, and NMEA/RINEX-level observables such as signal strength, satellite elevation angle, code pseudorange, etc., will be outputted from the same receiver. In this way, a fair comparison based on a common ground is guaranteed, which is one of the contributions of this paper.
Performance of supervised classifiers is related to the labelling accuracy of training data. Conventional methods of signal type labelling can be divided into two groups. The first group is the usage of sky-pointing camera or the 3D building model. This method is straightforward. For example, based on the satellite ephemeris, the sky-pointing camera method projects the satellites onto the captured image directly, with the satellite in the building area labelled as NLOS, and the one in the open area labelled as LOS [
26]. Similarly, the 3D building model method compares the elevation angle of the satellite and the building boundary at the same azimuth angle. If the satellite elevation angle is lower than the building elevation angle, the satellite is labelled as NLOS, otherwise it is labelled as LOS. In [
30], the authors also defined a three-degree diffraction zone taking into account the diffraction effect. Both methods can only determine the visibility of satellites, i.e., LOS or NLOS, whereas the MP signal cannot be identified. In addition, the 3D building model method is also dependent on the user ground truth. Based on the 3D building model, the ray-tracing technique can also be used to find all possible propagation paths [
31], thereby determining the signal type, including the MP. However, the ray-tracing technique has a high computational load and relies on the building model accuracy and the material of building surface. The second group is to control the type of the received signal. For example, by using a GNSS simulator such as the Spirent SimGEN + SE-NAV product [
32], one can control the signal type. In [
29], multipath and NLOS signals were generated by controlling the experimental setup, e.g., the movement of obstructer and reflector. However, these methods are not feasible to real GNSS signals labelling. This paper will solve the signal type labelling issue using the Skymask and the code pseudorange double difference observable, which represents the second contribution of this paper.
The following section describes the methods used in this paper, including modelling of GPS L1 LOS/MP/NLOS signal and their effects on code autocorrelation function, feature extraction, and the proposed signal type labelling method using the combination of Skymask and code pseudorange double difference observable. This is followed by the experimental results for GPS L1 C/A signal, where detailed experimental setup, data collection, and classification results are presented and analyzed. In the next section, a discussion of the findings in this paper and their relationship with previous works will be given, as well as potential extensions of this work. Finally, conclusions are drawn.
4. Discussion
The results in this paper are encouraging, with the opening of deeper-level measurements on more and more GNSS-capable devices [
42]. GNSS performance in urban areas is expected to improve by using these measurements. Increasing signal type classification rate is useful for both the popular 3DMA positioning and conventional ranging-based least square positioning. Hence, this paper proposes to improve signal type classification rate by using correlator-level classifier, and compares it with conventional NMEA/RINEX-level classifiers. To make a fair comparison between different level classifiers, it is important to make sure that all features come from the same receiver, which has been rarely explored in existing researches, although some researches have explored the deeper-level features in different applications [
18,
26,
29]. The two findings in this paper and the interpretation in perspective of previous studies are described as follows.
On the one hand, the correlator-level classifier had the best performance among the three different level classifiers for training data and testing data that were collected in different places, improving the F1 score by 25.7% and 27.1% compared with NMEA- and RINEX-level classifiers, respectively (
Table 7). In terms of the accuracy of each class, the correlator-level classifier also outperformed the other two methods, especially for distinguishing between LOS and MP (
Figure 12). This finding shows the effectiveness of signal classification, including MP, at the correlator level, and can been seen as an extension of the work in [
26,
43], where correlator-level features were used to do LOS/NLOS classification. On the other hand, of particular importance is that the correlator-level classifier has been shown to be more robust to scenarios. In specific, for testing data that was collected at different places as the training data, the performance of NMEA/RINEX-level classifiers showed significant decrease, while the correlator-level classifier could retain the high performance. This finding, i.e., sensitivity issue of NMEA/RINEX-level classifiers, is consistent with that reported in [
20], where the accuracy for testing data collected at different locations as the training data was degraded by more than 20%. This issue is probably due to that the NMEA/RINEX-level features were highly relied on in the scenario. For example, the signal strength was directly related to the street width and building height and materials. The robustness of correlator-level classifier makes it more feasible in practical applications.
Due to the limited size of experimental datasets, this paper does not focus on improving the absolute signal classification rate, instead it is intended for the illustration of advantages of correlator-level classifier against the commonly used NMEA- and RINEX-level classifiers. One of the extensions of this paper is to do a large-scale data test to improve the correlator-level classifier by using more advanced techniques. For example, the previous work of the authors has proven that vector tracking loop (VTL) has a different response to the MP/NLOS signal compared with the scalar tracking loop (STL) used in this paper [
36]. This difference provides an opportunity to detect MP/NLOS more efficiently [
38,
44]. Therefore, correlator-level features extracted from VTL may further improve the signal classification rate. Other techniques include replacing SVM with other deep learning approaches, e.g., neural networks as used in [
29,
43]. In this way, feature extraction can be automatically finished instead of the manual selection, thereby avoiding the information loss [
41]. Another extension of this paper is to test smartphone data at the correlator-level and evaluate the positioning performance with the proper exploitation of the identified signal type.
5. Conclusions
In this paper, correlator-level features were extracted to classify GPS L1 signal using a supervised machine learning algorithm. A fair comparison with respect to the NMEA-, RINEX- and correlator-level classifiers was carried out on a common ground, by guaranteeing that all measurements come from the same GPS receiver (the self-developed SDR). To do this, LOS/MP/NLOS effects on autocorrelation function were analyzed first. Subsequently, four correlator-level features were extracted and illustrated. The method of combining Skymask and code pseudorange double difference observable was proposed to do signal type labelling for the supervised machine leaning algorithm. To assess the performance of these different level classifiers, GPS raw IF data were collected at different places in deep urban canyons in Hong Kong. The conclusions are twofold according to the experimental results.
On the one hand, correlator-level classifier outperforms the NMEA- and RINEX-level classifiers in terms of four metrics, i.e., precision, recall, F1 score, and overall accuracy. In specific, for training data and testing data collected at different places, the correlator-level classifier improved F1 score for LOS/MP/NLOS classification by about 25% compared with NMEA and RINEX-level classifiers. Besides, the correlator-level classification rate for each class was higher than that using NMEA/RINEX-level classifiers, especially for the identification between LOS and MP. For LOS/NLOS classification, the overall accuracy was greatly improved for all three kinds of classifiers, with the F1 scores of 80.42%, 78.11%, and 90.39% for NMEA-, RINEX-, and correlator-level classifiers, respectively.
On the other hand, by further checking the SVM training accuracy, NMEA- and RINEX-level classifiers were found to have the sensitivity issue, i.e., for testing data collected at different locations to the training data, NMEA/RINEX-level classifiers showed degraded performances. The correlator-level classifier is more robust against the scenarios due to that deeper-level features can better reflect the characteristics of different types of signal. This benefit of correlator-level classifier is of particular importance to practical applications.