Introduction

Multipath remains one of the major challenges in Global Navigation Satellite System (GNSS) positioning because it is considered the dominant source of ranging errors. Urban situations in particular are affected by this phenomenon, yielding several blunders in the measurements and unacceptable errors in the navigation solution. Multipath is caused by multiple signal reflections from various objects in the environment; multipath signals are always delayed compared to line-of-sight signals. Multipath error quantification on a given pseudorange observable has been studied for years. Tranquilla and Carr (1991) classified the multipath on pseudorange code measurements into three different types: (1) diffuse multipath generated by reflections on a rough surface (the signal power is scattered in various directions, so this type of reflection is not directional and non-coherent; the repetition period ranges from sub-minute up to 2–3 min); (2) specular multipath generated by reflections on smooth surfaces (the signal strength is reflected in one direction, such as a mirror, and the repetition period is between 5 and 10 min); and (3) very low-frequency multipath generated by reflection from the sea (very long repetition period of the order of 25–60 min).

The greatest drawback in the analysis of the multipath error is the lack of a model that can accurately describe it. It could be seen as a non-stationary random process; therefore, the sole use of the Fourier analysis would lead to the loss of time information. In fact, Fourier transform (FT) shows the presence of harmonics but does not allow extracting information about when these frequencies are really present. Short-time Fourier transform (STFT) is also not suitable due to the limited temporal and frequency resolution of this technique. Therefore, it is considered necessary to use a more flexible analysis tool such as the wavelet transform. The use of wavelets in the GNSS field has already provided good results when applied to cycle slips detection, multipath analysis and observable denoising.

Zhang and Bartone (2004) and Aram et al. (2007) applied wavelet decomposition to code-minus-carrier (CMC) residuals in order to mitigate code multipath error using single-frequency receivers without separating diffuse and specular components.

Many authors have applied wavelets to reduce high (diffuse)- and low (specular)-frequency multipath. Wavelet-based multipath mitigation techniques have been mainly employed for the processing of GPS double differences (DD), where the input data to be analyzed are DD observations or residuals. The various research work can be mainly divided into two categories: (1) denoising directly DD observations for high-frequency mitigation (Souza and Monico 2004) and (2) the low-frequency multipath, built by reconstructing the component from the approximation part of the DD residuals and then applying it to the GPS measurements to correct for this bias term (Satirapod et al. 2001; Satirapod and Rizos 2005; Elhabiby et al. 2008; Souza et al. 2008a).

Further work in the field on the use of wavelet transform for multipath mitigation includes Souza et al. (2008b), who carried out studies for mitigating low-frequency multipath effects in kinematic GPS applications, applying the wavelet decomposition to double difference residuals.

Ogaja and Satirapod (2007), indicating the value of analysis procedures in identifying multipath frequencies, have gathered information about high-frequency multipath using a spectrogram (short-time Fourier transform) of two successive days of data to analyze 1-Hz GPS horizontal components. El-Ghazouly (2009) introduced a center frequency matching procedure based on a priori knowledge of the range of frequencies to ensure that all the important information is left in the GPS coordinate domain before applying wavelets coefficients thresholding and reconstruction.

Most of the previous research used the discrete wavelet transform (DWT) as a wavelet tool in filtering and denoising problems. As long as only the DWT is applied, specific care is required to define the decomposition because it might add processing time by superfluous decomposition levels or cause the loss of valuable signal information, particularly for the higher-frequency components.

The ability to suitably decompose a signal into different scales (or frequencies) is very important for separating several signal components, and the continuous wavelet transform (CWT) provides a useful aid for such a decomposition. The main advantage of the CWT is that it reveals the signal content by far greater detail than either Fourier analysis or the DWT. Therefore, in order to enhance the versatility and power of the DWT, we propose application of both CWT and DWT.

The CWT exploits the continuation properties in the wavelet analysis to allow a best depth-estimation technique. Low- and high-frequency multipath may be more conveniently analyzed by the CWT scalogram, providing useful information concerning the time location and the frequencies of the two components without any a priori knowledge.

The trade-off between the DWT and the CWT is that the DWT is more efficient for signal reconstruction, while the CWT enables us to detect effects that are not picked up by the DWT. The novelty in our approach is the use of both CWT analysis and DWT inversion in order to select appropriate decomposition levels to yield an accurate time domain extraction of both the specular multipath and diffuse multipath.

Methodology

The code-minus-carrier (CMC) observable was formed to investigate the multipath error for a single-frequency GNSS receiver. Aram et al. (2007) used the CMC observable with real data in order to reject the worst satellite in the least square solution. Blanco-Delgado and de Haag (2011) applied the CMC observable to data obtained with a GSS7800 simulator in order to isolate multipath from other errors. CMC is obtained by subtracting, in the range domain, the carrier phase from the code observable at every epoch t for each satellite:

$$\begin{aligned} CMC_{L1}^{i} \left( t \right) & = P_{L1}^{i} \left( t \right) - \lambda_{1} \phi_{L1}^{i} \left( t \right) \\ & = 2I_{L1}^{i} \left( t \right) - \lambda_{1} N^{i} \left( t \right) + M_{P}^{i} \left( t \right) + M_{\phi }^{i} \left( t \right) + \varepsilon_{P}^{i} \left( t \right) + \varepsilon_{\phi }^{i} \left( t \right) \\ \end{aligned}$$
(1)

where the superscript i denotes the satellite, P i L1 is the code observable on L1, λ1 is the wavelength at L1 frequency (λ1 = 0.1904 m), ϕ i L1 is the carrier phase observable on L1, I i L1 is the ionospheric delay, N i is the integer wavelength ambiguity on L1, M i P is the code multipath, M i ϕ is the carrier phase multipath, ɛ i P is the receiver noise error of L1 code measurements and ɛ i ϕ is the receiver noise error of L1 carrier phase measurements.

The carrier phase multipath error can reach a maximum value of a quarter of a cycle (approximately 4.8 cm for the L1), while the pseudorange multipath error can reach several meters for the C/A-code measurements in a highly reflective scenario, so that the term M i ϕ is negligible (El-Rabbany 2002; Braasch 1996). In addition, the receiver noise error of code measurements is on the order of centimeters, while that of carrier phase measurements is on the order of millimeters, so this term is also negligible (Misra and Enge 2011).

Note that in (1) errors common to code and carrier phase measurements (i.e., satellite and receiver clock offsets, troposphere delay or orbit errors) were removed because of the differencing. Thus the terms remaining in (1) are twice the ionospheric error, the carrier phase integer ambiguity, multipath and receiver noise errors associated with the code measurements as reported in (2):

$$CMC = 2I - \lambda N + M_{P} + \varepsilon_{P}$$
(2)

The terms introduced in (2) occupy different bands in the frequency domain; the frequency spectrum of the ionospheric delay is lower than 0.1 mHz, so it can be considered bias (Bartone and Zhang 2005). If the cycle slips and clock jumps are detected and repaired, the ambiguity term can also be considered a bias (Aram et al. 2007; Blanco-Delgado and de Haag 2011). The multipath error spectrum is in the range of 1 mHz to several tens of mHz, so the noise error can be considered to be white. Thus the ionospheric delay and ambiguity term can be estimated by taking the simple moving average (SMA) of the CMC on k samples from sample n – k + 1 to sample n as reported in (3):

$$\overline{CMC}_{n} = \frac{{\sum\limits_{i = n - k + 1}^{n} {CMC_{i} } }}{k}\quad {\text{with}}\quad n \ge k$$
(3)

Finally, the two biases can be removed from (2) by subtracting \(\overline{CMC}\) as shown in (4):

$$CMC_{n}^{res} = CMC_{n} - \overline{CMC}_{n} = M_{P} + \varepsilon_{P} + \varepsilon_{SMA}$$
(4)

where CMC res n is the observable used in the proposed method and ε SMA is the error introduced by moving average filtering.

As a result of this operation, higher-frequency terms of the CMC (M P and ε P ) are isolated. The moving average filter is a digital low-pass filter.

In order to choose the value of k, it must be considered that the longer the window, the less noisier the filtered signal; however, longer windows hide the diffuse component of multipath. Tests were done and showed (Fig. 1) that k values of 150 and 200 samples do not preserve the diffuse component because the spectral component has an amplitude of nearly an order of magnitude smaller than the specular multipath. Instead, with the k value equal to 50 samples, the signal appears noisier and its variability is very pronounced. Thus the moving average was carried out over 100 samples in order to both minimize the noise and emphasize multipath components at once.

Fig. 1
figure 1

CMC residuals of PRN 19 satellite. Power spectral density (PSD) spectra on DOY 63 calculated with k values of 50, 100, 150 and 200 samples, respectively

CMC residual error is a non-stationary random process because it has a time-varying mean, a time-varying variance and its power spectra are time variant (some spectral components are present only in limited time intervals). First, to make sure that the errors in the CMC residuals exhibit mainly multipath plus receiver noise, data processing was carried out applying three methodologies (correlation, Fourier transform and short-time Fourier transform). For each, the obtained results reveal the multipath but also highlight their limitation. Therefore, the multi-level wavelet analysis tool is applied to CMC residuals.

Our objective is to develop and test a methodology to identify and isolate specular and diffuse multipath errors of single-frequency code measurements by applying the wavelet analysis to CMC residuals.

The basic principle underlying our approach is to first perform accurate time–frequency detection and separation of the multipath signal using the continuous wavelet transform (CWT) and then using these analysis results for applying the discrete wavelet transform (DWT) for the signal reconstruction process.

While this research actually involves a post-mission mode, the approach is developed with the consideration of real-time implementation (with a small data latency) in the future.

Data processing

The experiment was carried out using data collected in static mode by a dual-frequency GNSS receiver (Topcon NET-G3) working as a Continuously Operating Reference Station (CORS) of the Campania GNSS Network in Italy at the NAPO reference station.

The receiving antenna (Topcon CR-G3) is a choke-ring antenna mounted on the rooftop of a building located in the city center of Napoli with no obstacles above the horizon. This can be practically assumed to be a low-multipath environment, except for ground reflections. The ground is at two different distances from the antenna phase center: 0.84 m on the east side of the antenna and 2.57 m on the west side, as shown in Fig. 2.

Fig. 2
figure 2

NAPO station antenna

In order to investigate the multipath characteristics, GPS data collected from 3:30 am until 5:00 am local time on March 4–6, 2013 (DOY 63, 64, 65) at 1 Hz data rate were analyzed. A mask angle of 10° was set to cut out too noisy satellites. During the observation period, the selected visible satellites were always the same for each day. A skyplot of the satellites tracked on March 4, 2013, is shown in Fig. 3.

Fig. 3
figure 3

Sky Plot DOY 63 from 3:30 am until 5:00 am local time on March 4, 2013. Each tracked satellite is represented by a color bar. Blue is shown for the start time of observation, and red is shown for the end time

Analysis was performed for all visible satellites during the observation period on DOY 63, 64 and 65, and the results are shown for the PRN 19 satellite (rising). The first step was to rule out the presence of any clock jumps and cycle slips. The methodology introduced by Zhoufeng et al. (2011) was used along with the threshold provided by Zhen (2012). The next step was to calculate CMC and CMC residuals according to (2) and (4); the values for the PRN 19 satellite on DOY 63 are shown in Fig. 4. The CMC represented in blue shows, in addition to noise (fast variations), the presence of ionospheric delay causing a descendent trend for the PRN 19 satellite (rising, thus an ionospheric error decrease). The time evolution of the CMC residuals shown in red clearly demonstrates the elimination of both the ionospheric delay and the ambiguity term.

Fig. 4
figure 4

CMC (shown in blue) and CMC residuals (shown in red) of PRN 19 satellite, plotted versus time on DOY 63. The broken magenta line represents the Klobuchar model ionospheric delay translated

This observable has been subjected to a preliminary analysis to verify the actual presence of multipath in the data. The first test compared (Fig. 5) CMC residuals with the results of multipath error provided by the TEQC software, which is a toolkit for translation, editing and quality checks (Estey and Meertens 1999).

Fig. 5
figure 5

CMC residuals (shown in green) and TEQC pseudorange L1 multipath error (shown in magenta) of the PRN 19 satellite, plotted versus time on DOY 63

The second test used the criterion of repeatability, stating that GPS satellites orbit earth twice every sidereal day (i.e., 23 h 56 min 4 s). As the satellites return to the same location 236 s earlier each day, assuming that the multipath comes from stationary objects and using the same antenna and satellite positions, the multipath error should repeat itself with a difference of approximately 4 min. Figure 6 depicts the normalized auto- and cross-correlations between CMC residuals for the PRN 19 satellite on DOY 63, 64 and 65. The distances between peaks are 246 and 245 s, respectively, as expected.

Fig. 6
figure 6

PRN 19 satellite CMC residual correlation: normalized autocorrelation on DOY 63 (shown in blue), normalized cross-correlation between CMC residuals of DOY 63 and DOY 64 (shown in red) and normalized cross-correlation between CMC residuals of DOY 63 and DOY 65 (shown in green)

This type of analysis provides only relative temporal information and the time instant in which the phenomenon occurs cannot be detected, therefore not allowing absolute time localization. Furthermore, such as TEQC analysis, correlation does not make it possible to highlight the presence of two different components of multipath error.

Two others techniques, namely Fourier transform and short-time Fourier transform, were applied to the CMC residuals in order to test the presence of multipath in the examined data, but the limitations of both are demonstrated.

The classical Fourier analysis, carried out on more days of measurements, confirms the presence of multipath error (Fig. 7).

Fig. 7
figure 7

Power spectral density (PSD) spectra of CMC residuals of the PRN 19 satellite on DOY 63 (shown in red), DOY 64 (shown in blue) and DOY 65 (shown in green)

Figure 7 shows the power spectrum of the CMC residuals in logarithmic scale for the PRN 19 satellite. Two peaks are visible: the first at lower frequency involving specular multipath and the second peak at higher frequency due to diffuse multipath and receiver noise. In particular, power peaks occur between 2 mHz and approximately 20 mHz. The noise in the GPS data is present as a combination of white and flicker noise.

The classical Fourier analysis, more than in the TEQC results, allows highlighting the presence of two different components of multipath error but has led to a loss of temporal information. Because this does not allow the detection of the time instant in which the phenomenon occurs, it is only suitable for stationary signals.

Data were analyzed with short-time Fourier transform, a well-known multi-resolution technique. Representing the signal as a two-dimensional function of time and frequency, it allows time localization of frequency peaks. However, the localization in time and frequency provided by the STFT is limited by the choice of a window because it fixes resolution in both the time and frequency domains. These resolutions are inversely proportional to each other, so estimating frequency and time parameters of a signal simultaneously with high precision is not possible. A high resolution in time corresponds to a low-frequency resolution, and vice versa. To improve the frequency resolution, the time duration of the window must be increased, causing a decrease in the resolution in the time domain. Distinguishing two near-frequency components may not be possible. STFT does not offer a frequency resolution useful for distinguishing two very close harmonics without excessively decreasing the temporal resolution, making this technique unhelpful. Because a good frequency resolution is required, a time window was chosen with a duration of 512 samples. Therefore, the results (Fig. 8) cannot help us to precisely identify when multipath error peak occurs because each spectrogram sample represents power spectra calculated on 512 s, but the presence of two spectral components is still evident.

Fig. 8
figure 8

CMC spectrogram of PRN 19 satellite on DOY 63. Dark red pixels mark frequency location of the high- and low-frequency components

By using SFTF, obtaining a good resolution in both the time and frequency domains from a single window is not possible. This type of analysis is not well suited for the study of spikes (like multipath); in this case being able to vary, the size of the time window according to the frequency analyzed would be better, but STFT has a fixed time and frequency resolution. This can be achieved by analyzing the signal with the wavelet transform.

Wavelet analysis

The basic idea of wavelet transformation is to use a base function that does not have infinite duration, such as a sine wave, but one with finite duration: thus, a wavelet is a waveform with limited duration and an average value of zero. Unlike the sinusoids that are smooth and predictable, wavelets tend to be irregular and asymmetric. The wavelet transforms can be mainly classified into continuous wavelet transforms (CWT) and discrete wavelet transforms (DWT).

The continuous wavelet transform of signal f(t) is reported in (5)

$$C\left( {s,p} \right) = \frac{1}{{\sqrt {\left| s \right|} }}\int\limits_{ - \infty }^{ + \infty } {f\left( t \right)\psi^{ * } \left( {\frac{t - p}{s}} \right)} {\text{d}}t$$
(5)

where C is the coefficient, ψ * is the complex conjugate of the mother wavelet function ψ(t), s is the scale, which is used to change the frequency or shape of the wavelet function, and p is the time translation, which is used to shift the wavelet function to a certain position.

The CWT results in many coefficients C, which are a function of scale and position. CWT is obtained by comparing the wavelet with a section of signal at the start time and calculating C according to (5); then, the wavelet is shifted and the coefficients are calculated until the whole signal is covered. Finally, the wavelet is scaled and the previous steps are repeated. Scaling a wavelet simply means stretching or shrinking it.

With this technique, the scale can be related to the frequency of the signal. The lower the value of the scale s, the more “shrunken” the wavelet; the wavelet will change quickly and will therefore be a type of high-frequency analysis. Conversely, the higher the scale, the more the wavelet will be stretched, varying slowly and therefore a type of low-frequency analysis. A key parameter that demonstrates the accuracy of multi-resolution analysis techniques, such as STFT and CWT, is the size of the Heisenberg boxes, i.e., the resolution in time and frequency. Heisenberg boxes for CWT have a width that depends directly on the scale and indirectly on the frequency, so the lower the scale, the wider the time window, and the higher the scale, the narrower the time window. This property of wavelet transforms make them suitable for analyzing non-stationary signals such as CMC residuals, unlike the STFT for which Heisenberg boxes are constituted by all equal rectangles once the window size is fixed.

The mathematical definition of the CWT coefficients in (5) is continuous, while, for reducing computational complexity, it has been applied a numerical implementation corresponding to the discrete version of the CWT that is distinct from the DWT.

The main issues in wavelet analysis are the selection of the mother wavelet function and the choice of the suitable decomposition level in the case of DWT.

In order to choose the appropriate wavelet, it must be considered that the method we propose is implemented through an approach, based on both CWT and DWT. The important point is that the CWT is advisable for analysis because it provides a finer grained, but also very redundant, description of a signal in terms of both time and scale (or frequency). However, achieving inversion of the transformed signal by CWT is not straightforward due to its redundancy. On the other hand, the DWT solves inverse problems much better because it is a non-redundant transform. A one-to-one tight correspondence exists between the information in the signal domain and the transform domain, which makes the DWT more suitable than the CWT for reconstruction purposes.

Hence the candidate mother wavelet has to be both suitable for an efficient time–frequency analysis and simply invertible with the DWT.

Analyzing wavelets, such as the Mexican Hat or Morlet, with a fine-scale structure do exist, but they do not easily permit the application of the DWT algorithm. By restricting the field to the wavelet that simultaneously satisfies both requirements stated above, the choice is limited to Daubechies (DB), Symlet (SYM), which is already used in the field of GNSS measurements (Souza and Monico 2004; Satirapod and Rizos 2005), and Discrete Meyer (Dmeye). Furthermore, these mother wavelets avoid redundant coefficients as they are orthogonal functions. The identification of additional wavelets that satisfy the above conditions could be the subject of a specific study. The results obtained using DB, SYM and Dmeye vary very slightly.

By using MATLAB Wavelet Toolbox software (Misiti et al. 2014), the analysis herein was conducted with the Discrete Meyer mother wavelet, which is a discrete improvement in the original Meyer wavelet, generated by the FIR-based approximation of the Meyer wavelet. In addition to the calculation of CWT coefficients, this wavelet allows fast DWT inversion and reconstruction of the transformed signal, which is not possible with the original Meyer wavelet because it is not compactly supported.

Wavelet analysis results, showing CMC residuals components associated with multipath error in wavelet domain, will be represented through the CWT scalogram, which provides a better resolution than the DWT that considers dyadic levels instead of continuous scales.

The scalogram can be seen as the equivalent of the spectrogram for the STFT. It represents, in the timescale plane, the percentage of energy for each wavelet coefficient calculated according to (6):

$$Sc_{i} = \frac{{\left| {C_{i} \left( {s,p} \right)} \right|^{2} }}{{\sum\nolimits_{i = 1}^{N} {\left| {C_{i} \left( {s,p} \right)} \right|}^{2} }} \cdot 100$$
(6)

where Sc i is the percentage of energy associated with CWT coefficient C i at scale s at translation time p.

We use the scalogram to separate the signal’s information content in both time and frequency domains. However, as the scalogram does not directly represent frequencies, but scales, another method that relates scale and frequency must be used. A direct correspondence does not exist between Fourier frequency and scale. An approximate scale-frequency correspondence can be calculated in a broad sense using the following relationship by introducing a pseudofrequency (Misiti et al. 2014):

$$a = \frac{{F_{c} }}{{F_{a} \cdot\Delta }}$$
(7)

where a is the scale, F c is the wavelet center frequency of a wavelet in Hz, F a is the pseudofrequency corresponding to the scale a in Hz and Δ is the sampling period.

The wavelet center frequency F c can be seen as the frequency of sine wave that approximates wavelet main oscillation as shown in Fig. 9; for the Discrete Meyer wavelet, its value is equal to 0.66337 Hz.

Fig. 9
figure 9

Discrete Meyer wavelet (shown in blue) and the sine function with the same frequency as the center frequency of the wavelet (shown in red)

Using this method, the scales corresponding to different center frequencies can easily be calculated. In particular, we calculate the scales corresponding to the theoretical frequency bands of the multipath (1.7–3.3 mHz for specular and 5.6–20 mHz for diffuse) derived from the repetition periods indicated in the introduction. The specified multipath frequencies are consistent with the antenna height at the test site depending on the satellite elevation angle. In the scalogram, the range of scales related to the signal depends on the wavelet used for the analysis. Scale values for the Discrete Meyer wavelet calculated for the theoretical frequency bands are reported in Table 1.

Table 1 Pseudofrequency and scale correspondences for the Discrete Meyer wavelet

Figure 10 shows CWT analysis applied to the PRN 19 satellite CMC residuals on DOY 63 by using the Discrete Meyer mother wavelet. The analysis shows a clearer time–frequency separation of the multipath signal. The two components have been detected on the scalogram: the specular multipath is reached at the highest scale, and the diffuse multipath is reached at the lowest scale. The red contour corresponds to a high percentage of energy associated with the coefficient. A clear temporal localization is shown compared to the STFT (see Fig. 8).

Fig. 10
figure 10

PRN 19 satellite CMC residual Discrete Meyer CWT scalogram. Black lines represent the interval of scales related with specular multipath error and green lines represent diffuse multipath

In graphs, pseudofrequencies associated with theoretical multipath bands are reported by black lines for specular multipath and by green lines for diffuse multipath. A strong agreement between the calculated values and the theoretical ones is shown.

The difference in terms of frequency content between the specular and diffuse components is shown in the scalogram by the width of the bound areas: at the lowest frequencies, for specular multipath, the contour of the bound area is wider and therefore has a greater time duration; at the highest frequencies, for diffuse multipath, the regions bounded by the contour are more narrow with a short time duration.

The temporal information assumes strong evidence by conducting this analysis on more consecutive days. Figure 11 clearly shows that multipath error peaks occur each day with an advance of approximately 240 s. In addition to confirming the repeatability, this analysis provides temporal information in absolute terms.

Fig. 11
figure 11

PRN 19 satellite CMC residual Discrete Meyer CWY scalogram on DOY 63 (top plot), DOY 64 (middle plot) and DOY 65 (bottom plot). The red circles highlight specular multipath peak

The DWT and CWT combination we propose lies in performing the signal reconstruction process using the classical DWT, while information concerning the time location and the frequencies of the two multipath components, provided by the preliminary CWT analysis, lead to select appropriate decomposition levels for the DWT. We reconstruct the two components by inverse DWT using Mallat’s pyramid algorithm, which hierarchically performs decomposition and reconstruction using a set of consecutive low- and high-pass filters. The DWT is applied to CMC residuals through subband decomposition computing the approximation coefficients (low-pass bands) and the detail coefficients (high-pass bands).

The benefit of the CWT analysis is allowing it to specify the DWT levels of decomposition that capture the required frequencies once a correspondence between the frequency content and the approximation and detail coefficients is established. The frequency content of the approximation \(\left( {f_{{A_{N} }} } \right)\) and detail \(\left( {f_{{D_{N} }} } \right)\) coefficients can be calculated by using the following relationships:

$$f_{{A_{N} }} = \left[ {0,\;\frac{1}{{2^{N + 1} }}f_{s} } \right]\quad f_{{D_{N} }} = \left[ {\frac{1}{{2^{N + 1} }}f_{s} ,\;\frac{1}{{2^{N} }}f_{s} } \right]$$
(8)

where N is the level of decomposition and f s is the sample frequency.

Table 2 reports the DWT levels that have been inferred according to CWT scales.

Table 2 Correspondence between CWT scales and DWT levels

Because specular multipath error is represented by the coefficient of CMC residuals at scales in the range of 199–398, as reported in Table 2, a decomposition of levels 7 and 8 in DWT corresponds to this range. According to (7), level 7 corresponds to the 0 to 3.9 mHz frequency band, while level 8 corresponds to the 0 to 2 mHz band; level 7 is chosen for the low-frequency component (approximation) because it corresponds to a frequency band that better contains the specular multipath information.

The remaining six components correspond to the high-pass bands (details) and contain the high-frequency information. In particular, diffuse multipath can be represented by the coefficient of CMC residuals calculated at scales in the range of 33–119. Therefore, the band at level 6 is chosen for the diffuse multipath component.

Once the bands of interest are isolated, the two multipath components are extracted separately through the inverse wavelet transform, which returns the reconstructed specular and diffuse multipath error from the approximation level 7 and denoised detail level 6, respectively. Specular multipath error extraction results in the time domain are depicted in Fig. 12.

Fig. 12
figure 12

Time evolution of specular multipath error for the PRN 19 satellite on DOY 63 (top plot), DOY 64 (middle plot) and DOY 65 (bottom plot). Repeatability can be established by comparing the plots for the three consecutive days

Specular multipath error peaks occur at 3:41, 3:54 and 4:35 local time on DOY 63 with values of 0.18, 0.24 and −0.23 m, respectively. The reconstructed multipath is also reported for the two consecutive days 64 and 65 showing the multipath repeatability.

The graphs in Fig. 13, showing the scalogram and Fourier analysis of the extracted signal, confirm that the signal has the property of the specular multipath error. In terms of frequency, the power spectrum shows only one peak near 2 mHz, while the scalogram does not have coefficients in the range of scales between the green lines. The temporal localization of specular multipath is shown in the scalogram, confirming the time instants in which the peaks occur.

Fig. 13
figure 13

Power spectral density (PSD) spectrum (top plot) and scalogram (bottom plot) of the PRN 19 satellite specular multipath error on DOY 63

Diffuse multipath error extraction results in the time domain are shown in Fig. 14. The diffuse multipath error peaks occur at 3:38 and 4:05 local time on DOY 63 with values of −0.17 and −0.30 m, respectively. The reconstructed multipath is also reported for the two consecutive days 64 and 65, showing the multipath repeatability.

Fig. 14
figure 14

Time evolution of diffuse multipath error for the PRN 19 satellite on DOY 63 (top plot), DOY 64 (middle plot) and DOY 65 (bottom plot). Repeatability can be established by comparing the plots for the three consecutive days

The graphs in Fig. 15, showing the scalogram and Fourier analysis of the extracted signal, confirm that the signal has the property of the diffuse multipath error. In terms of frequency, the power spectrum shows only one peak near 15 mHz, while the scalogram does not have coefficients in the range of scales between the black lines. The temporal localization of diffuse multipath is shown in the scalogram, confirming the time instants in which the peaks occur.

Fig. 15
figure 15

Power spectral density (PSD) spectrum (top plot) and scalogram (bottom plot) of the PRN 19 satellite diffuse multipath error on DOY 63

Conclusions

We have proposed a method based on the use of wavelets to extract the pseudorange multipath in the time domain, breaking it down into two components: specular and diffuse. The procedure involves the use of code-minus-carrier (CMC) observable, so it can be implemented in single-frequency receivers. We may conclude that the CWT analysis inferring the multipath properties helps the DWT reconstruction; utilizing the continuous analysis results, the DWT is effective for allowing the extraction of both the high- and low-frequency multipath. We have shown a real case where the specular and diffuse components are clearly separated and the time in which the peaks occur is exactly marked for both.

From the application point of view, the CWT methodology is not only crucial for the multipath extraction process, but is also of independent interest for time series analysis and will be applied directly at the GPS sites for multipath investigation purposes because similar results, in terms of both time and frequency, cannot be achieved with other analysis tools. The tests were conducted in open sky, and the results show that the specular multipath error component corresponds to the DWT approximation level 7, while the diffuse multipath error corresponds to the DWT denoised detail level 6. These results can be applied under similar conditions.

Some related avenues of research that should be pursued include further validation using different data in different environments and coming from other GNSS systems, such as GLONASS and Galileo. The results and analysis presented herein have used data acquired by a GPS antenna placed in a low-multipath environment. The proposed method should be applied to other locations in order to gain a better understanding of its capabilities and limitations. Of special interest is the performance in situations with high multipath and, particularly, study of the best decomposition level, which represents the specular and diffuse multipath under these conditions. Other areas to examine include testing additional mother wavelets and analysis of issues relating to the development of operational aspects for real-time use.