| Literature DB >> 30769914 |
Yida Zhu1, Haiyong Luo2, Qu Wang3, Fang Zhao4, Bokun Ning5, Qixue Ke6, Chen Zhang7.
Abstract
The widespread popularity of smartphones makes it possible to provide Location-Based Services (LBS) in a variety of complex scenarios. The location and contextual status, especially the Indoor/Outdoor switching, provides a direct indicator for seamless indoor and outdoor positioning and navigation. It is challenging to quickly detect indoor and outdoor transitions with high confidence due to a variety of signal variations in complex scenarios and the similarity of indoor and outdoor signal sources in the IO transition regions. In this paper, we consider the challenge of switching quickly in IO transition regions with high detection accuracy in complex scenarios. Towards this end, we analyze and extract spatial geometry distribution, time sequence and statistical features under different sliding windows from GNSS measurements in Android smartphones and present a novel IO detection method employing an ensemble model based on stacking and filtering the detection result by Hidden Markov Model. We evaluated our algorithm on four datasets. The results showed that our proposed algorithm was capable of identifying IO state with 99.11% accuracy in indoor and outdoor environment where we have collected data and 97.02% accuracy in new indoor and outdoor scenarios. Furthermore, in the scenario of indoor and outdoor transition where we have collected data, the recognition accuracy reaches 94.53% and the probability of switching delay within 3 s exceeds 80%. In the new scenario, the recognition accuracy reaches 92.80% and the probability of switching delay within 4 s exceeds 80%.Entities:
Keywords: GNSS measurements; indoor/outdoor detection; machine learning; quickly switching; seamless indoor and outdoor navigation and positioning; smartphone
Year: 2019 PMID: 30769914 PMCID: PMC6412305 DOI: 10.3390/s19040786
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1Indoor and outdoor transition areas.
Figure 2Four types of complex indoor and outdoor scenarios. These four types of scenarios cover campuses, office buildings, shopping malls, overpasses within the city.
Figure 3Algorithm framework of our proposed IO detection.
Figure 4An example of the new GNSS measurements set in the collection sequence when the sliding window length k is three.
The list of considered features for our classifiers.
| Category | Features | Description | |
|---|---|---|---|
| Az_dtb_vector | A 36-dimensional vector | ||
| Az_dtb_proportion | Satellite azimuth distribution proportion | ||
| GS_num_proportion_90 | The proportion of the number of satellites within the range of 90° of azimuth | ||
| GS_num_proportion_180 | The proportion of the number of satellites within the range of 180° of azimuth | ||
| PDoP, HDoP, VDoP | To measure the influence of the spatial geometric distribution of observation satellites on the positioning accuracy | ||
| The number of satellites change ratio from time t2 to time t1 | |||
| Satellite CNR in collection Gu down ratio from time t2 to time t1 | |||
| Satellite CNR in collection Gu hold ratio from time t2 to time t1 | |||
| Satellite CNR in collection Gu up ratio from time t2 to time t1 | |||
| GS_Num | The number of satellites at the current time | ||
| CNR_mean, CNR_var, CNR_std, CNR_min, CNR_max, CNR_median, CNR_range, CNR_iqr, CNR_ ske, CNR_kur | Mean, Variance, Std, Min, Max, Median, Range, InterQuartile Range, Skewness, Kurtosis of satellite CNR in | ||
| GS_Num_k | The number of satellites in | ||
| CNR_mean_k, CNR_var_k, CNR_std_k, CNR_min_k, CNR_max_k, CNR_median_k, CNR_range_k, CNR_iqr_k, CNR_ ske_k, CNR_kur_k | Mean, Variance, Std, Min, Max, Median, Range, InterQuartile Range, Skewness, Kurtosis of satellite CNR in | ||
| PDoP_mean, HDoP_mean, VDoP_mean | Mean of PDoP, VDoP, HDoP in | ||
Figure 5The cumulative probability of the number of satellites in the distribution of satellite azimuth using different smartphones in the range of different angles in a week.
Figure 6Visible satellite geometry topology (a) An example of sky plot and availability of visible satellites under complex scenarios using Huawei Mate 9; (b) A sketch demonstrates the distribution of the maximum number of satellites within the range of 90° and 180° in the office window environment.
Figure 7The cumulative distribution probability of the number of satellites in the distribution of satellite azimuth using different smartphones in the range of different angles in a week.
Figure 8The changes in the number of visible satellites under different devices when switching between indoor and outdoor scenarios.
Figure 9The variation of satellite CNR when an indoor and outdoor transition in the same scenario.
Figure 10The statistical feature of GNSS measurements in indoor and outdoor scenarios. (a) The cumulative distribution probability of the number of visible satellites using different smartphones in an indoor and outdoor environment; (b) The violin plot of visible satellite CNR using four types of smartphone in the same scenario.
Figure 11A framework of the model based on stacking ensemble.
Transition probabilities of HMM.
| Status | Indoors | Outdoors |
|---|---|---|
| 0.8 | 0.2 | |
| 0.2 | 0.8 |
Emission probabilities of HMM.
| Status | Indoors | Outdoors |
|---|---|---|
|
|
The detail distribution of the datasets we segment.
| Number of Scenarios | Data Items | Device | Scenarios Category | |
|---|---|---|---|---|
| Dataset_0 | 33 | 118432 | Mate 8-1, Mate 8-2, Honor 8-1, Mate 9-1, Mate 9-2, Vivo X9-1 | Indoor, Outdoor, IO Transition |
| Dataset_1 | 15 | 17722 | Mate 8-1, Mate 8-2, Honor 8-1, Mate 9-1, Mate 9-2, Vivo X9-1 | Indoor, Outdoor |
| Dataset_2 | 18 | 31290 | Mate 8-1, Mate 8-2, Mate 8-1, Mate 9-1, Mate 9-2, Vivo X9-1 | IO Transition |
| Dataset_3 | 10 | 17199 | Mate 8-3, Vivo X9-2, | Indoor, Outdoor |
| Dataset_4 | 15 | 11218 | Mate 8-3, Vivo X9-2, | IO Transition |
Indoor/Outdoor detection accuracy using different features and models on Dataset_1.
| Model | S1 | S3 | S5 | SD | TS2 | TS3 | TS5 | S&SD&TS |
|---|---|---|---|---|---|---|---|---|
| RF | 0.9864 | 0.9847 | 0.9851 | 0.9646 | 0.8813 | 0.8932 | 0.9019 | 0.9900 |
| SVM | 0.9787 | 0.9756 | 0.9763 | 0.8557 | 0.8588 | 0.8594 | 0.9852 | |
| AdaBoost | 0.9875 | 0.9856 | 0.9853 | 0.9439 | 0.8818 | 0.8929 | 0.9009 | 0.9909 |
| XGB | 0.9858 | 0.9841 | 0.9848 | 0.9590 | 0.8919 | 0.8980 | 0.9072 | 0.9900 |
| LGB | 0.9889 | 0.9857 | 0.9593 | 0.8822 | 0.9027 | 0.9102 | 0.9902 | |
| Stacking | 0.9870 | 0.9848 | 0.9858 | 0.9589 | 0.8894 | 0.8993 | 0.9023 | 0.9908 |
| Stacking &HMM | 0.9863 | 0.9593 |
Sk denotes only use statistical features when window size equals k. SD denotes only use spatial geometry distribution features. TSk denotes only use time sequence features when window size equals k. S&SD&TS denotes jointing statistical, spatial geometry distribution and time sequence features under different window size. The numbers in bold and highlighted represent the highest accuracy.
Indoor/Outdoor detection accuracy using different features and models on Dataset_2.
| Model | S1 | S3 | S5 | SD | TS2 | TS3 | TS5 | S&SD&TS |
|---|---|---|---|---|---|---|---|---|
| RF | 0.9312 | 0.9312 | 0.9290 | 0.8047 | 0.8401 | 0.8527 | 0.8661 | 0.9451 |
| SVM | 0.9155 | 0.9082 | 0.9032 | 0.8085 | 0.7784 | 0.8101 | 0.8228 | 0.9350 |
| AdaBoost | 0.9299 | 0.9296 | 0.9283 | 0.7877 | 0.8411 | 0.8540 | 0.8673 | 0.9413 |
| XGB | 0.9323 | 0.9303 | 0.9290 | 0.8106 | 0.8456 | 0.8620 | 0.8744 | 0.9431 |
| LGB | 0.9342 | 0.9310 | 0.9290 | 0.8041 | 0.8437 | 0.8621 | 0.8722 | 0.9446 |
| Stacking | 0.9320 | 0.9313 | 0.9293 | 0.8043 | 0.8484 | 0.8620 | 0.8738 | 0.9435 |
| Stacking &HMM |
Indoor/Outdoor detection accuracy using different features and models on Dataset_3.
| Model | S1 | S3 | S5 | SD | TS2 | TS3 | TS5 | S&SD&TS |
|---|---|---|---|---|---|---|---|---|
| RF | 0.9256 | 0.9247 | 0.9267 | 0.7923 | 0.8394 | 0.8572 | 0.8669 | 0.9632 |
| SVM | 0.9273 | 0.9238 | 0.9300 | 0.8657 | 0.8683 | 0.8673 | 0.9155 | |
| AdaBoost | 0.9290 | 0.9263 | 0.9282 | 0.7796 | 0.8378 | 0.8558 | 0.8652 | 0.9689 |
| XGB | 0.9323 | 0.9278 | 0.9303 | 0.7938 | 0.8577 | 0.8740 | 0.8777 | 0.9648 |
| LGB | 0.9263 | 0.9287 | 0.7960 | 0.8762 | 0.8760 | |||
| Stacking | 0.9290 | 0.9285 | 0.9301 | 0.7952 | 0.8495 | 0.8671 | 0.8725 | 0.9688 |
| Stacking &HMM | 0.9313 | 0.7966 | 0.8573 | 0.9702 |
Indoor/Outdoor detection accuracy using different features and models on Dataset_4.
| Model | S1 | S3 | S5 | SD | TS2 | TS3 | TS5 | S&SD&TS |
|---|---|---|---|---|---|---|---|---|
| RF | 0.9168 | 0.9120 | 0.9096 | 0.7968 | 0.8264 | 0.8343 | 0.8412 | 0.9255 |
| SVM | 0.9039 | 0.8977 | 0.8922 | 0.8186 | 0.7836 | 0.7958 | 0.7906 | 0.9131 |
| AdaBoost | 0.9110 | 0.9131 | 0.9120 | 0.7738 | 0.8259 | 0.8365 | 0.8405 | 0.9245 |
| XGB | 0.9168 | 0.9156 | 0.9096 | 0.7938 | 0.8404 | 0.8471 | 0.9251 | |
| LGB | 0.9179 | 0.8510 | 0.9258 | |||||
| Stacking | 0.9172 | 0.9151 | 0.9120 | 0.7922 | 0.8367 | 0.8433 | 0.8516 | 0.9268 |
| Stacking &HMM | 0.9163 | 0.9132 | 0.7930 | 0.8396 | 0.8458 | 0.8527 |
Figure 12Normalized sorted features importance in LightGBM training process.
Figure 13The cumulative distribution probability of transition delay using different algorithms on dataset_2.
Figure 14The cumulative distribution probability of transition delay using different algorithms on dataset_4.
Figure 15The accuracy of indoor and outdoor detection using different GPS number as a threshold on four datasets.
Figure 16The cumulative distribution probability of transition delay using SatProbe algorithm on Dataset_2 and Dataset_4.
Figure 17The accuracy of indoor and outdoor detection using algorithm [22] on four datasets.
Figure 18The cumulative probability of transition delay using algorithm [22] on Dataset_2 and Dataset_4.
Accuracy and transition delay evaluation of different algorithms on four datasets.
| Dataset | Algorithm | Accuracy | Indoor to Outdoor transition delay when the cumulative probability reaches 0.8 | Outdoor to Indoor Transition delay when the cumulative probability reaches 0.8 |
|---|---|---|---|---|
| Proposed | 0.9911 | No transition delay | No transition delay | |
| SatProbe | 0.9619 | |||
| Gao et al. [ | 0.9753 | |||
| Proposed | 0.9453 | 3s | 3s | |
| SatProbe | 0.8066 | 8s | 18s | |
| Gao et al. | 0.8778 | 7s | 12s | |
| Proposed | 0.9702 | No transition delay | No transition delay | |
| SatProbe | 0.9720 | |||
| Gao et al. | 0.9798 | |||
| Proposed | 0.9280 | 4s | 4s | |
| SatProbe | 0.7972 | 8s | 14s | |
| Gao et al. | 0.8734 | 4s | 10s |
The comparison of different algorithm training time.
| Model | Training Time(s) |
|---|---|
| RF | 20 |
| SVM | 819 |
| AdaBoost | 356 |
| XGB | 9 |
| LGB | 2 |
| Stacking Based Model Ensemble | 1133 |
| Stacking Model & HMM | 1135 |