Detecting non-line-of-sight (NLOS) signals is essential for improving the accuracy and reliability of smartphone Global Navigation Satellite System (GNSS) positioning in dense urban areas. This paper presents a practical method for NLOS detection based on skymasks derived from smartphone observations. The observable rates of satellite observation series are first computed using precise ephemeris, and the observations are then classified into blocked and unblocked groups. A smoothing spline is then applied to fit the building boundary from the categorized series. Based on the fitted boundary, a skymask is constructed and used for NLOS detection. Datasets collected at three locations using three different smartphones are used for validation. The results show that both the number and proportion of NLOS signals decrease significantly after applying the proposed method. As the degree of obscuration increases, the detection accuracy remains stable across different smartphones. In some cases, single-point positioning accuracy is improved after excluding NLOS signals. In addition, the derived skymask can be used to estimate sky visibility and support the selection of positioning strategies. Overall, the proposed method can be combined with the consistency checking method for NLOS detection, as it does not require additional information.
Liu et al. (Mon,) studied this question.