Next Article in Journal
Deeply Recursive Low- and High-Frequency Fusing Networks for Single Image Super-Resolution
Next Article in Special Issue
Consistency of the Empirical Distributions of Navigation Positioning System Errors with Theoretical Distributions—Comparative Analysis of the DGPS and EGNOS Systems in the Years 2006 and 2014
Previous Article in Journal
Application-Specific Evaluation of a Weed-Detection Algorithm for Plant-Specific Spraying
Previous Article in Special Issue
Statistical Distribution Analysis of Navigation Positioning System Errors—Issue of the Empirical Sample Size
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An SVM Based Weight Scheme for Improving Kinematic GNSS Positioning Accuracy with Low-Cost GNSS Receiver in Urban Environments

Department of Geomatics Engineering, Schulich School of Engineering, University of Calgary, 2500 University Drive, N.W., Calgary, AB T2N 1N4, Canada
*
Author to whom correspondence should be addressed.
Sensors 2020, 20(24), 7265; https://doi.org/10.3390/s20247265
Submission received: 19 November 2020 / Revised: 9 December 2020 / Accepted: 15 December 2020 / Published: 18 December 2020
(This article belongs to the Special Issue GNSS Data Processing and Navigation in Challenging Environments)

Abstract

:
High-precision positioning with low-cost global navigation satellite systems (GNSS) in urban environments remains a significant challenge due to the significant multipath effects, non-line-of-sight (NLOS) errors, as well as poor satellite visibility and geometry. A GNSS system is typically implemented with a least-square (LS) or a Kalman-filter (KF) estimator, and a proper weight scheme is vital for achieving reliable navigation solutions. The traditional weight schemes are based on the signal-in-space ranging errors (SISRE), elevation and C/N0 values, which would be less effective in urban environments since the observation quality cannot be fully manifested by those values. In this paper, we propose a new multi-feature support vector machine (SVM) signal classifier-based weight scheme for GNSS measurements to improve the kinematic GNSS positioning accuracy in urban environments. The proposed new weight scheme is based on the identification of important features in GNSS data in urban environments and intelligent classification of line-of-sight (LOS) and NLOS signals. To validate the performance of the newly proposed weight scheme, we have implemented it into a real-time single-frequency precise point positioning (SFPPP) system. The dynamic vehicle-based tests with a low-cost single-frequency u-blox M8T GNSS receiver demonstrate that the positioning accuracy using the new weight scheme outperforms the traditional C/N0 based weight model by 65.4% and 85.0% in the horizontal and up direction, and most position error spikes at overcrossing and short tunnels can be eliminated by the new weight scheme compared to the traditional method. It also surpasses the built-in satellite-based augmentation systems (SBAS) solutions of the u-blox M8T and is even better than the built-in real-time-kinematic (RTK) solutions of multi-frequency receivers like the u-blox F9P and Trimble BD982.

1. Introduction

High-precision positioning with low-cost global navigation satellite systems (GNSS) in urban environments remains a significant challenge. The industry demand, however, is high for many emerging applications, such as autonomous vehicles and intelligent transportation systems. Although accurate and reliable solutions have been demonstrated in open sky environments with low-cost GNSS receivers, the positioning accuracy will be greatly degraded in urban environments due to significant multipath effects, non-line-of-sight (NLOS) errors, as well as poor satellite visibility and geometry caused by severe signal blockages [1]. In urban environments, the NLOS signal errors for instance, could be unbounded to become as large as hundreds of meters in some severe circumstances. The effective detection of NLOS signals and subsequent elimination and compensation of NLOS signal effects can significantly improve positioning accuracy in urban environments.
Many methods have been proposed for that purpose [2]. The existing methods could be divided into environmental feature aided approach and GNSS self-maintained approach which differ in the type of information used for NLOS signal detection. For environmental features aided approach, the 3D map aided (3DMA) method is popular, including the ranging based 3DMA method and the shadow matching method [3]. The ranging based 3DMA method utilizes the 3D map to perform ray tracing to simulate the signal transmitting path among buildings and trees, and is thus able to determine the visibility of the signals and even correct the multipath effects and NLOS errors [4,5,6,7,8]. The shadow matching method has been designed for dense urban GNSS positioning which utilizes the visibility matching to determine the possible candidate location of the receiver, and so far it is the only method that utilizes signals that are not even being tracked [9,10]. The omnidirectional camera aided method is also widely used which captures the surrounding infrastructures with a wide-angle of view lens (180 degrees) so that the segmented sky area in the image could be used to predict visible satellites after projecting the satellite positions onto the image [2,11].
For GNSS self-maintained methods, they reply on only data from GNSS receivers and therefore reduce the complexity and the cost of the navigation system when compared to the environment feature aided approach. A dual-polarized antenna, for instance, can be applied to detect reflected signals since the right-hand circular polarized (RHCP) signal will be transferred to the left-hand circular polarized (LHCP) signal when reflected [12]. Consistency checking using receiver autonomous integrity monitoring (RAIM) algorithms is another widely used method for NLOS signals detection [13,14], but it is effective only when the majority of the received signals are line-of-sight (LOS) signals, which could not be guaranteed in urban environments where there are many reflectors and obstructions around. Machine learning methods were recently applied to explore the diverse features of GNSS data. Yozevitch et al. (2016), for instance, analyzed the relationship among signal visibility, C/N0, elevation, the 2nd order derivative of pseudorange, and used a decision tree to classify the LOS/NLOS signals. They demonstrated a 77.6% accuracy for the LOS signals and 87.2% for the NLOS signals [15]. Hsu et al. (2017) used a support vector machine (SVM) to classify the LOS/NLOS signals based on features of C/N0, delta C/N0, pseudorange, delta pseudorange, and positioning residual. The obtainable accuracy is 75.4% [16]. An SVM classifier was also applied using the correlation and tracking information inside a software-defined GNSS receiver as the input features, demonstrating an overall classification accuracy of 82.8% in the urban environments [3]. The visibility labels used in those works are generated by the 3D model of near buildings, which however is not very precise because the 3D models are unable to represent the full shape of the infrastructures around. Deep-learning were also proposed to improve the classification accuracy [17], but they come with a much higher computational load. To date, all works consider the signal classification and positioning test only in a static mode and the performance of the classification accuracy and positioning accuracy in the kinematic scene are not validated.
In this paper, we propose a new multi-feature SVM signal classifier-based weight scheme for GNSS measurements to improve the kinematic GNSS positioning accuracy in urban environments. A GNSS system is typically implemented with a least-square (LS) or a Kalman-filter (KF) estimator, and a proper weight scheme is vital for achieving reliable navigation solutions. Many weight schemes have been proposed. The signal-in-space ranging errors (SISRE) considering the signal noises and the satellite orbit errors is one of them [18,19]. This method, however, works only in open-sky environments since no factor of the transmission path in GNSS denied environments has been considered. The two most popular factors to consider when determining the observation weight are the elevation angle [20,21], and C/N0 [22,23,24]. The elevation angle based weight model assumes that the multipath error, atmosphere and other unmodeled site-specific error will increase at lower elevation angles [25], which, however, also works well only in open-sky environments. C/N0 represents the ratio of the carrier power and the noise power of the received signal, which is a good indicator for the quality of the observations in different environments, and a combination of C/N0 and elevation information is often used to improve the weight model [26,27]. However, as C/N0 is very likely to be affected by the multipath effect [28,29], a multipath affected observation is not necessarily indicated with a large gross error. This demonstrates that the observation quality cannot be fully manifested by C/N0 and elevation values. The new weight scheme is based on the identification of important features in GNSS data in urban environments and intelligent classification of LOS/NLOS signals using the support vector machine (SVM) algorithm. With advantage of better interpreting the quality of the GNSS observations with identified features by the SVM classifier, the proposed weight scheme is superior to the traditional weight scheme as it can better model the GNSS measurement NLOS error in urban environments. To validate the performance of the newly proposed weight scheme, we have tested its computational load and successfully implemented it in a real-time single-frequency precise point positioning (SFPPP) system. The dynamic vehicle-based tests with a low-cost single-frequency u-blox M8T GNSS receiver demonstrate that the positioning accuracy using the new weight scheme outperforms the traditional C/N0 based weight model by 65.4% and 85.0% in the horizontal and up direction, and most position error spikes at overcrossings and short tunnels can be eliminated by the new weight scheme compared to the traditional method. It also surpasses the built-in SBAS solutions of the u-blox M8T and is even better than the built-in real-time-kinematic (RTK) solutions of multi-frequency receivers like the u-blox F9P and Trimble BD982.
The remaining of the paper is organized as follows. Firstly, the related existing works are briefly reviewed. Secondly, the methodology for the new weight scheme-based positioning system development, including an improved SVM classifier and a real-time single-frequency precise point positioning (SFPPP) system aided by the new weight scheme, is presented. Thirdly, the experiment setup, LOS/NLOS signal classification, and positioning results along with analysis are provided. Finally, the conclusions and recommendations for future works are given.

2. Methodology

The methodology of the SVM based weight scheme consists of two major components: SVM-based GNSS signal classifier and SVM-based weight scheme. They will be described in this section.

2.1. SVM Based GNSS Signal Classifier

2.1.1. Feature Selection

The support vector machine (SVM) was firstly used for GNSS signal classification by Xu and et al. [3], and a test that utilizes more features was later conducted by Lyu and Gao [30]. Since the complex information of signal traveling routes in urban environments cannot be fully manifested in C/N0 and elevations, other features must be investigated to identify more information from GNSS observations. In [30], we have analyzed six features for GNSS signal for their correlations with visibility status, which include differenced C/N0, time single-difference ambiguity, time double-difference phase, time double-difference pseudorange, phase consistency, and pseudorange consistency. In this section, the six features of the same configuration will be used for signal classification. The elevation is a widely used feature for signal classification since satellites at lower elevations are more likely to be obstructed by buildings [31]. However, considering that the correlation of visibility to elevation is not essential, thus in this research, the elevation is not used to avoid the introduction of misleading information to the classifiers.

2.1.2. Support Vector Machine Based Signal Classification

A signal classifier could map the feature data into the probabilities of individual classes. There are many classifiers proposed in the literature, among which the support vector machine (SVM) is a popular one that has been adopted in many fields. When equipped with the radial basis function (RBF) kernel, the SVM can apply a non-linear margin for high dimensional features classification. The structure of the RBF SVM classifier used in this paper is given in Figure 1. The input of the classifier is the six features calculated from the GNSS observations, as presented earlier, where P and L represent pseudorange and phase observations respectively, the P consistency and L consistency are calculated from the discrepancy between the observed observations and the Doppler predicted observations. The output of the classifier is the probabilities of the input observation belongs to LOS (PLOS) or NLOS (PNLOS). The open-source software libsvm [32] is used for training and testing in this work.

2.2. The SVM Based Weight Scheme

A new weight scheme based on the SVM classifier is developed in this section. The new weight scheme could utilize the intelligent identification of important features in GNSS data in urban environments and intelligent classification of LOS/NLOS signals from the SVM based classifier. The probabilities of the signal being NLOS or LOS are a good indicator of the observation quality. In order to integrate this indicator into the GNSS estimator, a weight scheme is required to map it into observation error covariance. It was indicated that the real-world unmolded GNSS observation error could be modeled as the combination of LOS error and NLOS error [26]. Thus, weight schemes will be considered as the sum of the LOS part and the NLOS part for Doppler, phase, and pseudorange observations.

2.2.1. Doppler Observation Weight Scheme

For LOS Doppler observation error, the equal weight model is effective as the differences are minor for the observation errors at different elevation angles [33]. Thus, the equal weight model is adopted for the LOS part of Doppler observation error, and the covariance for satellite j could be written as:
C d ,   l j = σ d , l 2
where σ d , l indicates the LOS part of Doppler observation error standard deviation, which is taken as 0.06m/s in this paper. When Doppler observation is contaminated by the NLOS effect, the model used for the NLOS error part follows a similar form proposed by Suzuki et al. [34], which could be written as:
C d , n j = { b · ( e ( 1 1 P N L O S ) e ) P N L O S < 0.95 b · ( e ( 1 1 0.95 ) e ) P N L O S 0.95
where b is an empirical constant value to be tuned. e is the Euler’s number, e ≈ 2.718, PNLOS indicates the probability of the observation being NLOS, which is the output of the signal classifier. When PNLOS is larger than 0.95, the covariance is fixed to the value at PNLOS = 0.95 to avoid introducing astronomical numbers as it will corrupt the 64-bit float data width-based estimator.
The final covariance for Doppler observation error for satellite j could be calculated by adding the LOS part and NLOS part:
C d j = C d , l j + C d , n j

2.2.2. Phase and Pseudorange Observation Weight Scheme

For the LOS part of phase and pseudorange observation, the elevation model is accurate enough and has been widely applied. The simplified covariance for LOS phase/pseudorange observations could be written as [35]:
C P , l j = a s i n 2   ( e l e j )
C L , l j = d · a s i n 2 ( e l e j )
where C P , l j and C L , l j represent the covariance of pseudorange and phase observations LOS error for satellite j; a is an empirical constant value to be tuned; ele indicates the elevation angle in rad. d is the scale factor between phase and pseudorange observation error, taken as 0.01 in this work. The C/N0 information is not considered in the LOS part, as it has already been interpreted by the signal classifier, which will be used for the NLOS part. The proposed NLOS part for pseudorange and phase error could be written as:
C P , n j   o r   C L , n j = { 0 P N L O S < 0.4 c · ( e ( 10 · P N L O S ) 1 ) 0.4 P N L O S < 0.95 c · ( e 9.5 1 ) 0.95 P N L O S
where C P , n j , C L , n j represent the covariance of NLOS pseudorange and phase observation error for satellite j; c is an empirical constant variable to be tuned and will have different values for pseudorange and phase observations. The threshold for considering NLOS error is PNLOS = 0.4 instead of 0.5 due to some unavoidable misclassification of the signal classifier. Thus, when the PNLOS is smaller than 0.4, this observation will be taken as LOS signal. In this model, the covariance will increase exponentially as the PNLOS is above 0.4 to handle the significant increase of the NLOS error. As in the Doppler weight scheme, when PNLOS is larger than 0.95, the covariance is fixed to the value at PNLOS = 0.95 to avoid astronomical numbers from corrupting the estimator.
The final covariance for pseudorange/phase observation error could be calculated by adding the LOS part and NLOS part:
C P j = C P , l j + C P , n j
C L j = C L , l j + C L , n j
where C P j , C L j represent the covariance of pseudorange and phase observation error for satellite j respectively.

3. Methodology Evaluation

To validate the performance of the newly proposed weight scheme, we have implemented it into a real-time Doppler aided single-frequency precise point positioning (SFPPP) system developed at The University of Calgary [36]. A feature of the SFPPP system is that it employs two separate Kalman filters: one for position determination using pseudorange and phase observations and the other for velocity determination using Doppler observations. The position solutions with this approach are more robust than processing all observations in a single filter when with undetected NLOS errors in urban environments. A consistency check based on a chi-square test is also implemented in the SFPPP system to ensure the integrity of the position solutions. If the test fails, the observation with the largest residual would be eliminated for another iteration of estimation.
Figure 2 shows the architecture of the SVM based weight scheme aided SFPPP system. The raw GNSS observations are first input into the SVM based signal classifier. Then the calculated probability of the signal being NLOS would be passed into the proposed weight scheme to calculate the covariance for Doppler, phase and pseudorange observations. After that, the weighted observations are used by the SFPPP system for position determination.

3.1. Field Test Description

Two kinematic vehicle-based field tests were performed with a low-cost GNSS receiver (u-blox M8T) in the downtown of Calgary, on 4 August (field test 1) and 12 October (field test 2) 2020, respectively. Figure 3 and Figure 4 show the routes of the two field tests in Google Earth view, in which the yellow triangles and green triangles represent the short tunnel and the pedestrian overcrossing connecting buildings. Figure 5 gives a demonstration of an overcrossing and a short tunnel. As it is shown, the two testing routes include the most challenging scenes in urban environments with overcrossing, short tunnel and urban canyon populated by high-density buildings. In both of the field tests, the vehicle was moving at a maximum speed of 50 km/h (speed limitation in urban Calgary). The filed test on 4 August lasted about 10 min within a small loop square route and will be used to train and assess the SVM signal classifier. The filed test on 12 October lasted 30 min and will be used for positioning accuracy evaluation. The route of field test 2 covered a wider Calgary downtown area including wide streets of six lanes and narrow streets of only two lanes, and the short tunnels and overcrossing over the testing route made the environment further challenging for GNSS positioning.
For GNSS data acquisition, an elevation cutoff angle of 5 degrees was adopted with a data sampling rate of 10 Hz and GNSS data from three constellations (GPS, GLONASS and Galileo) were logged. For the real-time SFPPP system, the orbit, satellite clock bias and real-time ionosphere products from CNES are used for direct corrections [37]. The tropospheric error is corrected using the Saastamonion model with the Global Mapping Function (GMF) [38] for both the zenith wet part and the hydrostatic part. The receiver and satellite phase biases b L 1 r and b L 1 s are absorbed by the ambiguity term. The code bias b P 1 s is corrected using the 30 days differential code bias (DCB) product from the Center for Orbit Determination in Europe (CODE). The empirical parameters for the weight scheme are tuned using the dataset from field test 1, and the used values are given in Table 1. Those parameters are set the same for all satellites.
Three GNSS receivers were used which include a single-frequency receiver (u-blox M8T) and two multi-frequency receivers (u-blox F9P, Trimble BD982), all connected to the same antenna installed on the vehicle roof using a signal splitter. Only raw observations from single-frequency GNSS receiver u-blox M8T will be used in this work. The built-in RTK solutions from the two multi-frequency receivers will be used only for positioning accuracy comparisons.
An upward fisheye camera was set up on the vehicle roof to capture the image of the surrounding environments and thereafter to provide satellite visibility ground truth for the training and testing the SVM model. More details will be provided in the latter of this section. The SPAN system from Novatel, which includes a high-end Novatel Propack6 GNSS receiver and a tactical IMU with a built-in fiber optical gyroscope, was used to provide the reference values (accurate at decimeter-level in this urban environment) for positioning accuracy analysis. Further, the position output from two multi-frequency GNSS receivers (Trimble BD982 and u-blox F9P) were logged for external evaluation of the positioning accuracy of the SFPPP system using the new weight scheme. All GNSS receivers used in the tests were connected to the same GNSS antenna using a signal splitter. A Trimble Net R9 GNSS receiver was set on the roof of ENF building in the University of Calgary to serve as the base station for the Novatel SPAN system, u-blox F9P, and Trimble BD982 receivers, and the maximum baseline length during the whole filed test is about 6.2 km.

3.2. SVM Classifier Training and Performance Evaluation

This section focuses on the SVM-based classifier training and performance evaluation. The performance evaluation will be conducted in the testing accuracy aspect and the testing phase computational load aspect to validate the practicality of the SVM based classifier in a real-time GNSS application.
To get the satellite visibility ground-truth for training and testing the SVM based classifier, the upward fisheye camera based satellite visibility labeling method is applied [30]. Firstly, the captured image is segmented into sky areas and obstruction areas manually. Secondly, the satellite location is projected to the image plane via the Mei’s fisheye model [39]. After that, the satellite visibility ground truth could be obtained via comparing the projected satellite location to the segmented image. Figure 6 is an example of this labeling process. An upward fisheye camera image is shown in the left part, and the right part is the segmented image with the projected satellites’ location, in which the segmented sky areas are rendered as blue and the obstruction areas are rendered as black. Those satellites located in the blue areas will be marked as LOS satellites and vice versa.
In the experiment of field test 1, 6078 images were captured using an upward fisheye camera installed on the roof of the vehicle, and they were segmented manually using a labeling tool developed at the University of Calgary to determine the satellite visibility for all GNSS observations. The 70% part of the data in field test 1 is used for training and the rest 30% part is assigned to testing. No data from field test 2 are used for training or testing as the heavy workload of manually labeling.
Table 2 shows the LOS, NLOS and overall accuracy of the trained classifier on the testing dataset. The overall testing accuracy reaches 86.05%, which, however, is much worse than the accuracy from the static test that we presented in [30]. This indicates that the complex information of signal traveling routes in urban environments is harder to interpret according to the six features in the kinematic scene than in the static scene, as the signal traveling route changes much faster.
Table 3 gives out the configuration and result to test the SVM based classifier prediction time. A total number of 1800 epochs of GNSS observations are input sequentially into the trained SVM based classifier to get the satellites visibility prediction. The result reveals that the prediction process for the GNSS observations from a single epoch takes only 11.7 ms. The SVM based classifier consumes a low computational load and can be applied to high-rate real-time GNSS applications, especially given that only one of the four cores of the low-power Intel CPU i5 8250U was used in this test.

3.3. Positioning Accuracy Analysis

The evaluation of the proposed new weight scheme will be conducted in two ways. First, the positioning accuracy will be compared between the positioning solutions using the new weight scheme (SVM method) and the widely used C/N0 based weight model (C/N0 method) [22,24]. Then the positioning accuracy will be compared between the positioning solutions using the new weight model and independent position output from commercial receivers including high-end multi-frequency RTK solutions. The trained SVM classifier using the dataset in field test 1 will be directly applied to the dataset in field test 2 to validate the positioning performance. Since no data in field test 2 is involved in the training phase, the positioning performance shown below is expected to be reproducible.
Figure 7 compares the positioning error in time series and the positioning error cumulative distribution function (CDF) of the SFPPP solutions using the SVM method and the C/N0 method. There is a significant gain in terms of position solution robustness for the SVM based weight scheme over the C/N0 based weight scheme. When the SVM method is applied, the number of epochs with positioning error over 10 m in either horizontal or upward directions is greatly decreased compared to the C/N0 method, and the number of position error spikes is also significantly reduced. Further, the overall accuracy of the position solutions is greatly improved by the proposed SVM based weight scheme. The 95% CDF of the positioning errors using the C/N0 method reaches 15 m, 30 m and more than 40 m in the east, north and up directions, while the SVM based weight scheme brings down the 95% CDF of the positioning errors to 5 m, 10 m, and 12 m in the three directions.
It is worth mentioning that the position errors for the SVM method have a mean value close to zero in all three directions, while a noticeable positive bias can be observed in the up direction for the C/N0 method. Such bias is caused by the undetected NLOS errors, as the NLOS effect will always bring positive signal delays to the observations, and the NLOS error would typically grow higher at lower elevations. This further demonstrates the benefit of the newly proposed weight scheme in the detection and proper handling of the NLOS error over the C/N0 method in urban environments.
Table 4 shows the comparison of the statistics for the standard deviation (STD) and the root mean square (RMS) of positioning accuracy for the two methods. The RMS position errors of the SVM method are 7.8 m horizontally and 5.8 m vertically, which are 65.4% and 85.0% improvement in the horizontal and up directions respectively when compared to the traditional C/N0 method.
Figure 8 shows the comparison of the Google earth view of the track of the SFPPP using the C/N0 weight scheme and the SVM weight scheme. It can be seen that, there was position error spikes with the C/N0 method at almost every overcrossing and short tunnel, and the errors can be up to several blocks in some severe situations. As a comparison, the position solutions with the SVM method could stay tightly with the ground truth most of the time, even with an overcrossing or a short tunnel.
In Figure 7, we notice that there is a significant position error spike at the epoch 550s in the east direction and two minor position error spikes at the epoch 180s and 1120s in the east and north direction for the SVM method. They can also be observed in Figure 8 at three locations, and it takes some epochs before the SFPPP position solution converges close to the ground truth after the position error spike occurs. This happens due to the misclassification of the SVM based signal classifier. This issue could be addressed through integration with a low-cost inertial measurement unit (IMU) to provide more information for NLOS detection and position aiding. This will be considered in future work.
To further validate the benefit of the SVM based weight scheme, the SFPPP positioning accuracy with u-blox M8T using the SVM based weight scheme is also compared to the built-in solutions from some commercial receivers, namely the built-in SBAS solutions of the single-frequency u-blox M8T, the built-in RTK solutions of a dual-frequency u-blox F9P, and the built-in RTK solutions of multi-frequency Trimble BD982. The result is given in Table 5. First, it can be seen that, in urban environments, the receiver output RTK solutions from multi-frequency GNSS receivers like the u-blox F9P and the high-end Trimble BD982 have fix rates of only 16.8% and 27.7%, respectively. Second, the positioning accuracy of the proposed method using real-time SFPPP with the u-blox M8T is better than the built-in SBAS solutions of the u-blox M8T, with an RMS improvement of 49.5% and 83.7% in the horizontal and up directions, and further it outperforms the built-in RTK solution from multi-frequency GNSS receivers like the u-blox F9P and the Trimble BD982. The comparison to independent receiver position output further confirms the effectiveness of the proposed new weight scheme for precise positioning in urban environments. It is expected that the new weight scheme can further improve the positioning accuracy in urban environments using multi-frequency receivers and multi-frequency precise point positioning (PPP) and RTK methods.

4. Conclusions and Recommendations

In this paper, a new SVM signal classifier-based weight scheme for GNSS measurements has been proposed to improve the kinematic GNSS positioning accuracy in urban environments. Traditionally C/N0 and elevation angle are widely considered for the weight of GNSS measurements, however, they cannot fully manifest the observation quality in urban environments. The new weight scheme is based on the identification of important features in GNSS data in urban environments and intelligent classification of LOS/NLOS signals. With advantage of better interpreting the quality of the GNSS observations with identified features by the SVM classifier, the proposed weight scheme is superior to the traditional weight scheme as it can better model the GNSS measurement NLOS error in urban environments.
The new weight scheme has been tested for its computational load and successfully implemented into a real-time single-frequency precise point positioning system to validate its performance. The dynamic vehicle-based tests with a low-cost single-frequency u-blox M8T GNSS receiver demonstrate that the positioning accuracy using the new weight scheme outperforms the traditional C/N0 based weight model by 65.4% and 85.0% in the horizontal and up direction, and most position error spikes at overcrossing and short tunnels can be eliminated by the new weight scheme compared to the traditional method. It also surpasses the built-in SBAS solutions of the u-blox M8T and is even better than the built-in RTK solutions of multi-frequency receivers like the u-blox F9P and Trimble BD982.
For future work, a low-cost IMU will be integrated with the GNSS solutions to refine the few major positioning error spikes shown in the test. Also, more feature data with other combinations from multi-frequency receivers will be used to increase the classification accuracy and thereafter further improve the accuracy and robustness of the positioning system in urban environments.

Author Contributions

Z.L. conceived of, designed the algorithm and performed the related experiments. Z.L. and Y.G. analyzed the data and wrote the paper. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Natural Sciences and Engineering Research Council of Canada grant number RT691884. And the article processing charge (APC) was funded by the Natural Sciences and Engineering Research Council of Canada.

Acknowledgments

The authors wish to acknowledge the the Centre National d’Etudes Spatiales (CNES) for providing open access real-time orbit/clock and ionosphere corrections products. The authors also wish to acknowledge Hongzhou Yang from Profound Positioning Inc. for processing the SPAN data for the reference solutions.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Groves, P.D.; Wang, L.; Adjrad, M.; Ellul, C. GNSS Shadow Matching: The Challenges Ahead; The Institute of Navigation: Tampa, FL, USA, 2015. [Google Scholar]
  2. Meguro, J.-I.; Murata, T.; Takiguchi, J.-I.; Amano, Y.; Hashizume, T. GPS accuracy improvement by satellite selection using omnidirectional infrared camera. In Proceedings of the 2008 IEEE/RSJ International Conference on Intelligent Robots and Systems, Nice, France, 22–26 September 2008; pp. 1804–1810. [Google Scholar]
  3. Xu, B.; Jia, Q.; Luo, Y.; Hsu, L.-T. Hsu Intelligent GPS L1 LOS/Multipath/NLOS Classifiers Based on Correlator-, RINEX- and NMEA-Level Measurements. Remote Sens. 2019, 11, 1851. [Google Scholar] [CrossRef] [Green Version]
  4. Obst, M.; Bauer, S.; Reisdorf, P.; Wanielik, G. Multipath detection with 3D digital maps for robust multi-constellation GNSS/INS vehicle localization in urban areas. In Proceedings of the 2012 IEEE Intelligent Vehicles Symposium, Alcala de Henares, Spain, 3–7 June 2012; pp. 184–190. [Google Scholar]
  5. Francois, P.; David, B.; Florian, M. Non-Line-Of-Sight GNSS signal detection using an on-board 3D model of buildings. In Proceedings of the 2011 11th International Conference on ITS Telecommunications, St. Petersburg, Russia, 23–25 August 2011; Institute of Electrical and Electronics Engineers (IEEE): New York, NY, USA, 2011; pp. 280–286. [Google Scholar]
  6. Groves, P.D.; Jiang, Z.; Wang, L.; Ziebart, M.K. Intelligent urban positioning using multi-constellation GNSS with 3D mapping and NLOS signal detection. In Proceedings of the 25th Internaltional Technical Meeting of the Satellite Division of The Institude of Navigation, Nashville, Tennessee, 17–21 September 2012. [Google Scholar]
  7. Hsu, L.-T. Analysis and modeling GPS NLOS effect in highly urbanized area. GPS Solut. 2017, 22, 7. [Google Scholar] [CrossRef] [Green Version]
  8. Peyraud, S.; Bétaille, D.; Renault, S.; Ortiz, M.; Mougel, F.; Meizel, D.; Peyret, F. About Non-Line-Of-Sight Satellite Detection and Exclusion in a 3D Map-Aided Localization Algorithm. Sensors 2013, 13, 829–847. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  9. Wang, L.; Groves, P.D.; Ziebart, M.K. GNSS Shadow Matching: Improving Urban Positioning Accuracy Using a 3D City Model with Optimized Visibility Scoring Scheme. Navigation 2013, 60, 195–207. [Google Scholar] [CrossRef]
  10. Wang, L.; Groves, P.D.; Ziebart, M.K. GNSS Shadow Matching: Improving Urban Positioning Accuracy Using a 3D City Model with Optimized Visibility Prediction Scoring. In Proceedings of the 25th International Technical Meeting of the Satellite Division of The Institute of Navigation, Nashville, TN, USA, 17–21 September 2012; p. 15. [Google Scholar]
  11. Attia, D.; Meurie, C.; Ruichek, Y.; Marais, J. Counting of satellites with direct GNSS signals using Fisheye camera: A comparison of clustering algorithms. In Proceedings of the 2011 14th International IEEE Conference on Intelligent Transportation Systems (ITSC), Washington, DC, USA, 5–7 October 2011; pp. 7–12. [Google Scholar]
  12. Jiang, Z.; Groves, P.D. NLOS GPS signal detection using a dual-polarisation antenna. GPS Solut. 2014, 18, 15–26. [Google Scholar] [CrossRef] [Green Version]
  13. Jiang, Z.; Groves, P.D.; Ochieng, W.Y.; Feng, S.; Milner, C.D.; Mattos, P.G. Multi-Constellation GNSS Multipath Mitigation Using Consistency Checking. Available online: http://www.ion.org/search/browseDetail.cfm?id=64 (accessed on 2 November 2019).
  14. Groves, P.D.; Jiang, Z. Height Aiding, C/N0 Weighting and Consistency Checking for GNSS NLOS and Multipath Mitigation in Urban Areas. J. Navig. 2013, 66, 653–669. [Google Scholar] [CrossRef] [Green Version]
  15. Yozevitch, R.; Ben Moshe, B.; Weissman, A. A RobustGNSSLOS/NLOS Signal Classifier. Navigation 2016, 63, 429–442. [Google Scholar] [CrossRef]
  16. Hsu, L.-T. GNSS multipath detection using a machine learning approach. In Proceedings of the 2017 IEEE 20th International Conference on Intelligent Transportation Systems (ITSC), Yokohama, Japan, 16–19 October 2017; pp. 1–6. [Google Scholar]
  17. Liu, Q.; Huang, Z.; Wang, J. Indoor non-line-of-sight and multipath detection using deep learning approach. GPS Solut. 2019, 23, 75. [Google Scholar] [CrossRef]
  18. Kazmierski, K.; Hadas, T.; Sośnica, K. Weighting of Multi-GNSS Observations in Real-Time Precise Point Positioning. Remote Sens. 2018, 10, 84. [Google Scholar] [CrossRef] [Green Version]
  19. Montenbruck, O.; Steigenberger, P.; Hauschild, A. Broadcast versus precise ephemerides: A multi-GNSS perspective. GPS Solut. 2015, 19, 321–333. [Google Scholar] [CrossRef]
  20. Amiri-Simkooei, A.; Teunissen, P.J.G.; Tiberius, C.C.J.M. Application of Least-Squares Variance Component Estimation to GPS Observables. J. Surv. Eng. 2009, 135, 149–160. [Google Scholar] [CrossRef] [Green Version]
  21. Li, B. Stochastic modeling of triple-frequency BeiDou signals: Estimation, assessment and impact analysis. J. Geod. 2016, 90, 593–610. [Google Scholar] [CrossRef]
  22. Wieser, A.; Brunner, F.K. An extended weight model for GPS phase observations. Earth Planets Space 2000, 52, 777–782. [Google Scholar] [CrossRef] [Green Version]
  23. De Bakker, P.F.; Tiberius, C.C.J.M. Real-time multi-GNSS single-frequency precise point positioning. GPS Solut. 2017, 21, 1791–1803. [Google Scholar] [CrossRef] [Green Version]
  24. Brunner, F.K.; Hartinger, H.; Troyer, L. GPS signal diffraction modelling: The stochastic SIGMA-δ model. J. Geod. 1999, 73, 259–267. [Google Scholar] [CrossRef]
  25. Eueler, H.-J.; Goad, C.C. On optimal filtering of GPS dual frequency observations without using orbit information. J. Geod. 1991, 65, 130–143. [Google Scholar] [CrossRef]
  26. Zhang, Z.; Li, B.; Shen, Y.; Gao, Y.; Wang, M. Site-Specific Unmodeled Error Mitigation for GNSS Positioning in Urban Environments Using a Real-Time Adaptive Weighting Model. Remote Sens. 2018, 10, 1157. [Google Scholar] [CrossRef] [Green Version]
  27. Tay, S.; Marais, J. Weighting models for GPS Pseudorange observations for land transportation in urban canyons. In Proceedings of the 6th European Workshop on GNSS Signals and Signal Processing, Munich, Germany, 5–6 December 2013. [Google Scholar]
  28. Moradi, R.; Schuster, W.; Feng, S.; Jokinen, A.; Ochieng, W. The carrier-multipath observable: A new carrier-phase multipath mitigation technique. GPS Solut. 2014, 19, 73–82. [Google Scholar] [CrossRef]
  29. Fang, Y.Y.; Yuan, H.; Zhou, O.G.; Liang, W.; Wenxue, L. A GNSS Satellite Selection Method Based on SNR Fluctuation in Multipath Environments. Int. J. Control. Autom. 2015, 8, 313–324. [Google Scholar] [CrossRef]
  30. Lyu, Z.; Gao, Y. A New Method for Non-line-of-sight GNSS Signal Detection for Positioning Accuracy Improvement in Urban Environments. In Proceedings of the 33rd International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+2020), 21–25 September 2020; pp. 2972–2988. [Google Scholar]
  31. Wang, L.; Groves, P.D.; Ziebart, M.K. Smartphone Shadow Matching for Better Cross-street GNSS Positioning in Urban Environments. J. Navig. 2014, 68, 411–433. [Google Scholar] [CrossRef] [Green Version]
  32. Chang, C.-C.; Lin, C.-J. LIBSVM. ACM Trans. Intell. Syst. Technol. 2011, 2, 1–27. [Google Scholar] [CrossRef]
  33. Zhou, Z.; Shen, Y.; Li, B. Stochastic Model of GPS Doppler: Evaluation, Modeling and Performance. In Lecture Notes in Electrical Engineering; Springer Science and Business Media LLC: Berlin, Germany, 2012; pp. 395–406. [Google Scholar]
  34. Suzuki, T.; Kusama, K.; Amano, Y. NLOS Multipath Detection using Convolutional Neural Network. In Proceedings of the 33rd International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+2020), 21–25 September 2020; pp. 2989–3000. [Google Scholar]
  35. Dach, R.; Lutz, S.; Walser, P.; Fridez, P. Bernese GNSS Software Version 5.2; University of Bern, Bern Open Publishing: Bern, Switzerland, 2015. [Google Scholar]
  36. The University of Calgary. P3+: Advanced Precision GNSS Software System; The University of Calgary: Calgary, AB, Canada, 2020. [Google Scholar]
  37. Weber, G.; Dettmering, D.; Gebhard, H. Networked Transport of RTCM via Internet Protocol (NTRIP). In Geodesy on the Move; Springer Science and Business Media LLC: Berlin, Germany, 2005; pp. 60–64. [Google Scholar]
  38. Böhm, J.; Niell, A.; Tregoning, P.; Schuh, H. Global Mapping Function (GMF): A new empirical mapping function based on numerical weather model data. Geophys. Res. Lett. 2006, 33. [Google Scholar] [CrossRef] [Green Version]
  39. Mei, C.; Rives, P. Single View Point Omnidirectional Camera Calibration from Planar Grids. In Proceedings of the 2007 IEEE International Conference on Robotics and Automation, Roma, Italy, 10–14 April 2007; pp. 3945–3950. [Google Scholar]
Figure 1. Structure of SVM signal classifier.
Figure 1. Structure of SVM signal classifier.
Sensors 20 07265 g001
Figure 2. The architecture of the SVM based weight scheme based SFPPP system.
Figure 2. The architecture of the SVM based weight scheme based SFPPP system.
Sensors 20 07265 g002
Figure 3. Google Earth view of field test 1.
Figure 3. Google Earth view of field test 1.
Sensors 20 07265 g003
Figure 4. Google Earth view of field test 2.
Figure 4. Google Earth view of field test 2.
Sensors 20 07265 g004
Figure 5. Demonstration of the overcrossing (left) and short tunnel (right) in Google Earth View.
Figure 5. Demonstration of the overcrossing (left) and short tunnel (right) in Google Earth View.
Sensors 20 07265 g005
Figure 6. Demonstration of upwards fisheye camera based signal visibility ground-truth determination.
Figure 6. Demonstration of upwards fisheye camera based signal visibility ground-truth determination.
Sensors 20 07265 g006
Figure 7. SFPPP positioning error in time series (A), and positioning error cumulative distribution functions (B) of the two methods.
Figure 7. SFPPP positioning error in time series (A), and positioning error cumulative distribution functions (B) of the two methods.
Sensors 20 07265 g007
Figure 8. Google Earth view of the C/N0 weight scheme and SVM weight scheme based SFPPP track.
Figure 8. Google Earth view of the C/N0 weight scheme and SVM weight scheme based SFPPP track.
Sensors 20 07265 g008
Table 1. Parameter values used in the weight scheme.
Table 1. Parameter values used in the weight scheme.
ParameterValueParameterValue
σ d ,   L 0.06 m/sc (for phase)1 m2
b0.2 m2/s2c (for pseudorange)5 m2
a1 m2d100
Table 2. The LOS/NLOS/Overall accuracy for the training dataset and testing dataset.
Table 2. The LOS/NLOS/Overall accuracy for the training dataset and testing dataset.
Accuracy TypeTesting Accuracy
LOS93.37%
NLOS81.48%
Overall86.05%
Table 3. Configuration and results to test the SVM based classifier prediction time.
Table 3. Configuration and results to test the SVM based classifier prediction time.
CPUIntel i5 8250U (3.4ghz boost, single core used)
Data length3 min, 29,852 observations, 1800 epochs
Data rate10 Hz
Processing time21 s
Average time per epoch11.7 ms
Table 4. Positioning accuracy improvement compared to traditional C/N0 weight model.
Table 4. Positioning accuracy improvement compared to traditional C/N0 weight model.
MethodDirectionSTD (m)RMS (m)RMS Improvement
C/N0 methodHorizontal22.37422.708
Up28.68838.596
SVM methodHorizontal7.3917.85865.4%
Up4.3035.80485.0%
Table 5. Positioning accuracy improvement compared to the commercial receiver output.
Table 5. Positioning accuracy improvement compared to the commercial receiver output.
ReceiverSolutions TypeDirectionSTD (m)RMS (m)RMS Improvement
u-blox M8T (low-cost single-frequency receiver)SBAS solutionsHorizontal15.56615.57449.5%
Up27.52335.56683.7%
u-blox F9P (Low-cost dual-frequency receiver)RTK solutions (Fix rate: 16.8%)Horizontal8.8528.89611.7%
Up15.66319.55470.3%
Trimble BD982 (High-end multi-frequency receiver)RTK solutions (Fix rate: 27.7%)Horizontal12.27512.27536.0%
Up12.33113.23856.2%
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Lyu, Z.; Gao, Y. An SVM Based Weight Scheme for Improving Kinematic GNSS Positioning Accuracy with Low-Cost GNSS Receiver in Urban Environments. Sensors 2020, 20, 7265. https://doi.org/10.3390/s20247265

AMA Style

Lyu Z, Gao Y. An SVM Based Weight Scheme for Improving Kinematic GNSS Positioning Accuracy with Low-Cost GNSS Receiver in Urban Environments. Sensors. 2020; 20(24):7265. https://doi.org/10.3390/s20247265

Chicago/Turabian Style

Lyu, Zhitao, and Yang Gao. 2020. "An SVM Based Weight Scheme for Improving Kinematic GNSS Positioning Accuracy with Low-Cost GNSS Receiver in Urban Environments" Sensors 20, no. 24: 7265. https://doi.org/10.3390/s20247265

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop