1 Introduction

Interferometric synthetic aperture radar (InSAR) has evolved towards an effective tool for measuring the Earth’s topography and surface deformation. Persistent scatterer interferometry (PSI) is one of the techniques to process a set of images in order to identify phase-coherent scatterers known as persistent scatterers (PS) (Ferretti et al. 2001; Kampes 2005). These PS are a random subset of scatterers in the imaged scene, usually but not necessarily man-made objects, that are phase-coherent over time. Displacement and location of these PS are estimated. The relative displacement is estimated with millimeter-level precision, but the positioning precision is usually in the order of decimeters or even meters. This hampers the interpretation of the deformation signal, as it is unclear which object is associated with the measurements.

In previous studies (Small et al. 2004a; Schubert et al. 2010, 2012; Eineder et al. 2011) the absolute positioning capabilities of SAR systems were validated in the 2D (azimuth and range) radar geometry by measuring the phase center of CR with differential global positioning system (DGPS) to centimeter accuracy and predicting their respective positions in the radar image. The absolute position accuracy of ENVISAT (Small et al. 2004a, b, 2007) and Sentinel-1A (Schubert et al. 2015) images were computed to be in the order of several decimeters at best both in azimuth and range directions. Recently, for TSX the absolute geo-location accuracy after compensating for atmospheric and tidal effects, was reported to be in the order of a few centimeters in azimuth and range directions (Schubert et al. 2010, 2012; Eineder et al. 2011; Balss et al. 2013). The accuracy of PS heights was indirectly validated by Perissin (2008) (for ERS and ENVISAT) and Dheenathayalan and Hanssen (2013) (for ERS, ENVISAT and TSX), both by making a digital terrain model (DTM) from smoothed PS heights and comparing this with precise elevation data obtained from airborne LiDAR. 3D positioning was presented for TSX stereoSAR by Gisinger et al. (2015), and for PSI the absolute 3D positioning and quality assessment by Dheenathayalan et al. (2013, 2014). In this paper we: (i) present a systematic geodetic procedure to precisely estimate the position; (ii) perform error propagation to estimate the position quality, and as a result, (iii) demonstrate the association of scatterers by intersecting error ellipsoids to real-world objects.

This paper is structured as follows. Section 2 presents the definition of different coordinate systems, and the sequence of mapping operators used to estimate the position and describe their stochastic properties. The discussions related to computing the 2D and 3D positioning accuracy are briefed in Sect. 3. The experimental setup to demonstrate our approach is explained in Sect. 4. The 2D and 3D positioning results for corner reflectors and other coherent scatterers are presented in Sect. 5. Section 6 is devoted to the conclusions.

2 Scatterer positioning

Using a single SAR image, the position of a scatterer can only be described in two dimensions, namely azimuth and (slant) range. In order to estimate the third dimension, cross-range, InSAR observations are necessary. The position of a scatterer in the radar geometry (azimuth, range and cross-range) is mapped to a 3D TRF (Terrestrial Reference Frame) reference system using a non-linear transformation. This transformation, known as geocoding, is based on the range, Doppler, and ellipsoid/digital elevation model (DEM) equations (Schreier 1993; Small et al. 1996).

Table 1 Secondary positioning components, and their impact in azimuth and range directions for TSX images in Balss et al. (2013), Dheenathayalan et al. (2013)

However, the radar measurements are affected by several secondary positioning components which impact the position estimation, see “Appendix 1”. Some of the secondary positioning components and their magnitude of impact are tabulated in Table 1. Dominant terms such as atmospheric delay, solid earth tides (SET), tectonics, and timing errors (azimuth shift) can cause position errors ranging from centimeters to even several meters. In the following, precise scatterer positioning in radar, time, and geodetic coordinate systems and their transformations are discussed, including error propagation. In each case, a quality description is provided to summarize the positioning error comprising the impact of the dominant secondary positioning components.

Scatterer positioning is the procedure that maps a position in radar image coordinates (dimensionless sample units) to a corresponding position in a TRF, an Earth-centered Earth-fixed reference system (datum) with units in meters. This mapping procedure is subdivided into a number of steps. We apply a standard Gauss–Markov approach, where we use the output estimators of the previous mapping step as input observations for the subsequent step. This facilitates error propagation, quality assessment and control. In the end, this leads to an estimated position in a (Cartesian) TRF, with units in meters, as well as associated “precision” expressed via the variance–covariance (VC) matrix of the estimator.

2.1 The dimensionless 2D radar datum

The initial amplitude measurements refer to a target, or scatterer, in the focused radar image. The local two-dimensional datum is expressed in pixels in range and azimuth, with sample units. The origin of the datum is the location (0, 0)Footnote 1 for range and azimuth, respectively. To determine the estimated sub-pixel position (\(\mu _P,\nu _P\)) of target P in range and azimuth direction, respectively, the measurement involves reconstruction of a sinc-function (Cumming and Wong 2005), by performing complex fast Fourier transform (FFT) oversampling and detecting the sub-pixel location of the target by finding the maximum peak. This peak position represents the effective phase center of the radar scatterer. In case of an isolated ideal point scatterer, such as a trihedral corner reflector, the effective phase center is the apex of the reflector. But, in a complex urban environment, containing many dominant scatterers, depending on the distribution of scatterers, the effective phase center may be less well-defined geometrically.

2.1.1 Quality description

The quality of the sub-pixel position is dependent on (i) shifting of the peak position due to clutter or more than one dominant scatterer, a function of the signal-to-clutter ratio (SCR), and (ii) the oversampling factor \(\Delta \). Therefore, the variance of the peak (in azimuth or range) position estimate of a target P in \(i\text {th}\) image can be approximated as:

$$\begin{aligned} {\sigma ^2_{{\mu }}}_{P,i} = {\sigma ^2_{{\nu }}}_{P,i} = \frac{3}{2 \cdot \pi ^2 \cdot {\text {SCR}}_{P,i}} + \frac{ \left( \frac{1}{\Delta _{P,i}} \right) ^2}{12}, \end{aligned}$$
(1)

where the first term of the above equation provides the Cramér–Rao Bound for a change in peak position due to clutter in a given single look complex (SLC) image (Stein 1981; Bamler and Eineder 2005). The SCR value is the ratio between the peak intensity and the background, calculated by averaging the intensity values in the oversampled area excluding the cross-arm pattern produced by the side lobes of the scatterer of interest. The second term in Eq. (1) represents the error due to quantization introduced by a chosen oversampling factor (Bennett 1948). Increasing the oversampling factor does not necessarily always yield a better sub-pixel position, there is a saturation point beyond which the position does not improve significantly for any significant increase in oversampling factor. In addition to oversampling, an optional 2D quadratic interpolation is usually performed for computational efficiency (Press et al. 1992).

The observed subpixel position is considered to be unbiased, \(({\mu }_P,{\nu }_P) = E\{\underline{\mu }_P,\underline{\nu }_P\}\), with its quality expressed by the pixel variances from Eq. (1) in range and azimuth, \((\sigma _{\mu }^2,\sigma _{\nu }^2)\), where \(E\{\cdot \}\) is the expectation operator and the underline (e.g., \(\underline{\mu }_P\), \(\underline{\nu }_P\)) denotes that the quantities are stochastic in nature. The range and azimuth position observations are considered to be uncorrelated, as they are derived independently.

2.2 Transformation to the temporal 1D radar datum

The first mapping operator transforms the pixel-positions to time-units. Slow-time (azimuth direction), t, and fast-time, \(\tau \), refer to the azimuth and range timing, respectively (Bamler and Schättler 1993), but the time coordinate is inherently one-dimensional. The absolute time in the satellite system is given by the onboard GPS receiver. GPS time is an atomic time scale, however, not identical to the universal time coordinated (UTC). The transformation from GPS time to UTC, e.g., leap seconds, is implemented in the Level-1 SAR data processing chain or in the GPS instrument. The UTC time, annotated in the SAR header files, is usually provided with a resolution of one microsecondFootnote 2 [ENVISAT (Kult et al. 2007) and TSX/TDX (Fritz 2007)].

The internal relative timing for radar positioning requires more precise numbers.Footnote 3 The relative time is obtained from the local oscillator (Massonnet and Vadon 1995). This relative time determines the sampling window start time (SWST), also known as the near-range time \({\underline{\tau }}_0\), the sampling frequency, which determines the pixel spacing or posting, and the pulse repetition frequency (PRF) or pulse repetition interval (PRI).

The mapping from the pixel coordinates \(({\underline{\mu }}_P,{\underline{\nu }}_P)\) to the fast (\({\underline{\tau }}_{\mu _P}\)) and slow (\({\underline{t}}_{\nu _P}\)) time coordinates can be expressed as, see Fig. 1,

$$\begin{aligned}&{\underline{\tau }}_{\mu _P} = {\underline{\tau }}_0 + {\underline{\mu }}_P \cdot \underline{\Delta \tau } \end{aligned}$$
(2)
$$\begin{aligned}&{\underline{t}}_{\nu _P} = {\underline{t}}_0 + {\underline{\nu }}_P \cdot \underline{\Delta t}, \end{aligned}$$
(3)

where \({\underline{t}}_P = {\underline{t}}_{\nu _P} + {\underline{\tau }}_{\mu _P}\) is the time of receiving the zero-Doppler signal corresponding to target P, \({\underline{t}}_0\) is the time of emitting the first pulse of the (focused) image, \({\underline{t}}_{\nu _P}\) is the time of emitting the pulse that contains P in the focused image (azimuth time), \({\underline{\tau }}_0\) is the time to the first range pixel, or SWST, \(\underline{\Delta t} = \text {PRI} = \text {PRF}^{-1}\), and \(\underline{\Delta \tau } = f_s^{-1}\) is the range sample interval, the inverse of the range sampling frequency (RSF).

2.2.1 Quality description

The quality of the time-units in Eqs. (2) and (3) is dependent on (i) the absolute time given by GPS, and (ii) the local oscillator. The observed fast and slow time coordinates of a scatterer are given by linearizing Eqs. (2) and (3) with initial values (\(t^o_0,\nu ^o_P,{\Delta t}^o,\tau ^o_0,\mu ^o_P,\Delta \tau ^o\)):

$$\begin{aligned}&\sigma ^2_{\tau _{\mu _P}} = {\begin{bmatrix} 1,\,{\Delta \tau }^o,\,{\mu ^o_P} \end{bmatrix}} \begin{bmatrix} \ \sigma ^2_{\tau _0}&\\&\sigma ^2_{\mu _P}&\\&\sigma ^2_{\Delta \tau } \\ \end{bmatrix} {\begin{bmatrix} 1,\,{\Delta \tau }^o,\,{\mu ^o_P} \end{bmatrix}}^T \end{aligned}$$
(4)
$$\begin{aligned}&\sigma ^2_{t_{\nu _P}} = {\begin{bmatrix} 1,\,{\Delta t}^o, \,{\nu ^o_P} \end{bmatrix}} \begin{bmatrix} \ \sigma ^2_{t_0}&\\&\sigma ^2_{\nu _P}&\\&\sigma ^2_{\Delta t} \\ \end{bmatrix} {\begin{bmatrix} 1,\,{\Delta t}^o,\,{\nu ^o_P} \end{bmatrix}}^T, \end{aligned}$$
(5)

where \(\sigma ^2_{t_0}\) is based on the quality of the absolute timing from GPS, and pixel variances (\(\sigma ^2_{\mu _P}, \sigma ^2_{\nu _P}\)) are given by Eq. (1). \(\sigma ^2_{\Delta t}, \sigma ^2_{\Delta \tau },\text { and } \sigma ^2_{\tau _0}\) represent the respective variances of PRF, RSF, and SWST given by the local oscillator, which in fact may cause some local cross-correlation. For now, we assume this cross-correlation is absent. The quality of the observed slow and fast time coordinates is influenced by the accuracy and precision of timing information provided in the metadata.

Fig. 1
figure 1

Slow (t) and fast (\(\tau \)) time coordinates

Recently, Marinkovic and Larsen (2015), Bähr (2013) reported a systematic frequency decay of the ENVISAT ASAR instrument which was claimed to originate from the deterioration of local oscillator performance over time. This could introduce a time-dependent-timing error, and as a consequence the time coordinate and positioning capability would drift over time. If this drift is known a priori, it can be compensated, otherwise it has to be estimated empirically over a period of time using calibration targets. In that case, a time-dependent-timing-calibration is mandatory.

2.3 Transformation to the geometric 2D radar datum

The second mapping operator transforms the time coordinate \(t_P\) or its 2D equivalent \((\tau _{\mu _P},t_{\nu _P})\) for point P to distances in range and azimuth, (ra), respectively. To discriminate between time and space, we refer to these coordinates as range-distance, r and azimuth-distance, a, acknowledging the pleonasm. The coordinate system has its origin in the phase center of the antenna. The range distance \(r_P\) is expressed as

$$\begin{aligned} {\underline{r}}_P&= \frac{v_0}{2} \cdot \left( \underline{\tau }_{\mu _P} + {\underline{\tau }}_{\text {sys}} \right) + \underline{r}_\epsilon , \nonumber \\&= \frac{v_0}{2} \cdot \left( \underline{\tau }_0 + {\underline{\mu }}_{P} \cdot {\underline{\Delta \tau }} + {\underline{\tau }}_{\text {sys}} \right) + \underline{r}_\epsilon , \end{aligned}$$
(6)

where \(v_0\) is the velocity of microwaves in vacuum, \({\underline{\tau }}_{\text {sys}} \) is an offset representative of unmodeled internal electronic delays in the system, and \(\underline{r}_\epsilon \) represents the secondary positioning components in range with \(E\{\underline{r}_\epsilon \}\ne 0\). Note that the atmosphere is not vacuum, but the true velocity along the path is unknown. Therefore, we use \(v_0\) instead of the mean propagation velocity v (incorporating potential bending effects along the path between the antenna phase center and the target) of the radio signal. Also, in practice, \({\underline{\tau }}_{\text {sys}} \) is either not known and/or not explicitly given in the metadata. Frequently, during the commissioning phase of the mission, the process of Eq. (6) is inverted: instead of deriving \({\underline{r}}_Q\) from accurate timing measurements, \({\underline{r}}_Q\) is empirically measured from some calibration target Q, \({\underline{\tau }}_{\mu _Q}\) is measured in the commissioning phase, and a correction bias \({\underline{\tau }}_{\text {sys}} \) is estimated, often even using \(v_0\), instead of the actual velocity v. From inverting Eq. (6)

$$\begin{aligned} {\underline{\tau }}_{\text {sys}}&= \frac{2 \cdot {\underline{r}}_Q}{v_0} - {\underline{\tau }}_{\mu _Q}, \end{aligned}$$
(7)

is estimated and hence Eq. (6) becomes

$$\begin{aligned} {\underline{r}}_P = \frac{{v}_0}{2} \cdot \left( \underline{\tau }_0 + {\underline{\mu }}_{P} \cdot {\underline{\Delta \tau }} + \frac{2 \cdot {\underline{r}}_Q}{v_0} - {\underline{\tau }}_{\mu _Q}\right) + \underline{r}_\epsilon . \end{aligned}$$
(8)

Then, instead of explicitly stating this correction factor in the metadata, the timing information may be corrected directly during the generation of the product annotations. Such corrections were described for the case of ENVISAT by Small et al. (2004a) and Dheenathayalan et al. (2014).

This also holds for the distance from the radar antenna phase center to the instantaneous center-of-mass (CoM) of the satellite, and the position of the independent positioning device (GNSS receiver, retro-reflector, or equivalent device). For highly accurate positioning (geo-localization) of targets, the reported state-vectors should point at the antenna phase center. However, conventionally the state-vectors are defined to the CoM of the satellite, which may shift during the lifetime of the mission due to depletion of consumables. Even if the CoM was once calibrated at the start of the mission, a mismatch (as a drift over time) should be given due consideration during the lifespan of the mission. Similarly, variability of \({\underline{\tau }}_{\text {sys}} \) over time should be considered due to aging effects of the electronics on board.

From “Appendix 1”, we know that the slant range measurement also includes the secondary positioning components such as path delay, tectonics and SET. Therefore, the range position \(\underline{r}_P\) in Eq. (8) can be written as:

$$\begin{aligned} {\underline{r}}_P \,=\, \frac{{v}_0}{2} \cdot \left( \underline{\tau }_0 + {\underline{\mu }}_{P} \cdot {\underline{\Delta \tau }} + \frac{2 \cdot {\underline{r}}_Q}{v_0} - {\underline{\tau }}_{\mu _Q}\right) \,+\, {\underline{r}}_{\text {pd}_{P}} + {\underline{r}}_{\text {tect}_{P}} + {\underline{r}}_{\text {set}_{P}},\nonumber \\ \end{aligned}$$
(9)

where \({\underline{r}}_{\text {pd}_{P}}\), \({\underline{r}}_{\text {tect}_{P}}\), and \({\underline{r}}_{\text {set}_{P}}\) are the modeled position correction factors in range. \(\sigma _{r_{\text {pd}_{P}}}^2\), \(\sigma _{r_{\text {tect}_{P}}}^2\), and \(\sigma _{r_{\text {set}_{P}}}^2\) (see “Appendix 1”) are their respective a priori variances.

Now in the along-track dimension, the geometric azimuth distance \({\underline{a}}_P\) is expressed as:

$$\begin{aligned} {\underline{a}}_P&= {\underline{v}}_{\text {s/c}} \cdot ({\underline{t}}_{\nu _P} + {\underline{t}}_{\text {sys}} ) + \underline{a}_\epsilon , \nonumber \\&= {\underline{v}}_{\text {s/c}} \cdot ({\underline{t}}_0 + {\underline{\nu }}_{P} \cdot {\underline{\Delta t}} + {\underline{t}}_{\text {sys}} ) + \underline{a}_\epsilon , \end{aligned}$$
(10)

where \({\underline{v}}_{\text {s/c}} \) is the local velocity of the spacecraft, \({\underline{t}}_{\text {sys}} \) is an offset due to instrumental timing errors, and \(\underline{a}_\epsilon \) represents the secondary positioning components in azimuth with \(E\{\underline{a}_\epsilon \}\ne 0\). \({\underline{t}}_{\text {sys}} \) is also estimated and corrected during the commissioning phase to yield

$$\begin{aligned} {\underline{a}}_P = {\underline{v}}_{\text {s/c}} \cdot \left( {\underline{t}}_0 + {\underline{\nu }}_{P} \cdot {\underline{\Delta t}} + \frac{{\underline{a}}_Q}{{\underline{v}}_{\text {s/c}} }-{\underline{t}}_{\nu _Q}\right) + \underline{a}_\epsilon , \end{aligned}$$
(11)

where \({\underline{a}}_Q\), and \({\underline{t}}_{\nu _Q}\) are the respective azimuth position, and the timing information measured empirically from the calibration target Q, similar to the range components in Eq. (7). Radar satellites are often yaw or zero-Doppler steered, and the raw data is then focused to produce a SLC image. In this study, the offsets emanating from the Doppler (usually zero-Doppler) image processing (SAR focusing) are assumed to be already compensated by the processor during focusing and hence not considered.

From “Appendix 1”, the azimuth measurements are influenced by timing, tectonics and SET. Then, Eq. (11) can be rewritten by:

$$\begin{aligned} {\underline{a}}_P= & {} {\underline{v}}_{\text {s/c}} \cdot \left( {\underline{t}}_0 + {\underline{\nu }}_{P} \cdot {\underline{\Delta t}} + \frac{{\underline{a}}_Q}{{\underline{v}}_{\text {s/c}} }-{\underline{t}}_{\nu _Q}\right) + {\underline{a}}_{\text {shift}_{P}} \nonumber \\&\,+\, {\underline{a}}_{\text {tect}_{P}} + {\underline{a}}_{\text {set}_{P}}, \end{aligned}$$
(12)

where \({\underline{a}}_{\text {shift}_{P}}\), \({\underline{a}}_{\text {tect}_{P}}\), and \({\underline{a}}_{\text {set}_{P}}\) are the modeled position correction factors in azimuth and \(\sigma _{a_{\text {shift}_{P}}}^2\), \(\sigma _{a_{\text {tect}_{P}}}^2\), and \(\sigma _{a_{\text {set}_{P}}}^2\) are their respective a priori variances.

2.3.1 Quality description

The observed range and azimuth distances are \((\underline{r}_{P},\underline{a}_P)\), with their quality expressed by the variances in range \(\sigma _{{r}_{P}}^2\) and azimuth \(\sigma _{{a}_{P}}^2\) with initial values (\(\tau ^o_0,\) \(\mu ^o_P,\) \(\Delta \tau ^o,\) \(\tau ^o_{\text {sys}} ,\) \( v^o_{\text {s/c}} ,\) \(t^o_0,\) \(\nu ^o_P,\) \(\Delta t^o,\) \(t^o_{\text {sys}} \)) determined by:

$$\begin{aligned}&\sigma _{{r}_{P}}^2 = \alpha \cdot A \cdot \alpha ^T \end{aligned}$$
(13)
$$\begin{aligned}&\sigma _{{a}_{P}}^2 = \beta \cdot B \cdot \beta ^T, \end{aligned}$$
(14)

where \(\alpha = \big [\frac{v_0}{2},\) \(\frac{v_0}{2} \cdot \Delta \tau ^o,\) \(\frac{v_0}{2} \cdot \mu ^o_P,\) \(\frac{v_0}{2},\)  1,   1,  \(~1 \big ],\) \(\beta =\) \(\big [ t^o_0+\nu ^o_P \cdot \Delta t^o+t^o_{\text {sys}},\) \(v^o_{\text {s/c}},\) \({v^o_{\text {s/c}} \cdot \Delta t^o},\) \({v^o_{\text {s/c}} \cdot \nu ^o_P},\) \(v^o_{\text {s/c}},\) 1,  1,  \(1 \big ]\), and diagonal matrices A, and B with entries \(\big [ \sigma ^2_{\tau _0},\) \(\sigma ^2_{\mu _P},\) \(\sigma ^2_{\Delta \tau },\) \(\sigma ^2_{\tau _{\text {sys}} },\) \(\sigma ^2_{r_{\text {pd}_{P}}},\) \(\sigma ^2_{r_{\text {tect}_{P}}},\) \(\sigma ^2_{r_{\text {set}_{P}}} \big ]\), and \(\big [ \sigma ^2_{v_{\text {s/c}} },\) \(\sigma ^2_{t_0},\) \(\sigma ^2_{\nu _P},\) \(\sigma ^2_{\Delta t},\) \(\sigma ^2_{t_{\text {sys}} },\) \(\sigma ^2_{a_{\text {shift}_{P}}},\) \(\sigma ^2_{a_{\text {tect}_{P}}},\) \(\sigma ^2_{a_{\text {set}_{P}}} \big ]\), respectively. The range and azimuth distance estimates are considered to be uncorrelated, neglecting any covariance as a result of timing, and other common error sources.

2.4 Transformation to the geometric 3D radar datum

Range, azimuth, and cross-rangeFootnote 4 distances form a 3D orthogonal Cartesian coordinate system in a radar geometry as shown in Fig. 2. With a single SLC image, the third dimension, namely cross-range (c) cannot be derived, but interferometric SAR observations can be utilized to estimate it. Therefore, unlike azimuth and range distances, cross-range distance is expressed relative to a spatial (reference point R) and a temporal (reference master image M) reference.

Fig. 2
figure 2

3D radar geometry: range (r), azimuth (a), and cross-range (c) dimensions

Fig. 3
figure 3

Cross-range (c) component estimated from interferometry. R is the reference point and P is the scatterer of interest. The reference surface can be considered to be either a flat surface (as drawn here), an ellipsoid, a geoid, or a topographic surface represented by a DEM. Symbols are explained in the text below

Based on Fig. 3, the cross-range component is estimated from the change in look-angle \({\underline{\theta }}_{PR}\), and the distance between the sensor and the scatterer \({\underline{r}}_P\) (from Eq. (9)). The change in look angle \({\underline{\theta }}_{PR}\) is estimated from the interferometric phase change. Under the far-field approximation (Zebker and Goldstein 1986), the cross-range becomes

$$\begin{aligned} {\underline{c}}_{P}&= \underline{r}_{P} \cdot {\underline{\theta }}_{PR}, \nonumber \\&= -\frac{\lambda }{4\pi } \frac{\underline{r}_{P}}{\underline{B}_1 \cos (\underline{\theta }_{R^\prime } - \underline{\alpha }_1) } {{\underline{\phi }}}_{PR,1}, \nonumber \\&= -\frac{\lambda }{4\pi } \frac{\underline{r}_{P}}{\underline{B}_{\bot ,1}} {{\underline{\phi }}}_{PR,1}, \end{aligned}$$
(15)

where \(\lambda \) is the radar wavelength. \(\underline{B}_1\), \(\underline{B}_{\bot ,1}\), \({{\underline{\phi }}}_{PR,1}\), and \(\underline{\alpha }_1\) are the baseline, perpendicular baseline, the unwrapped interferometric phase, and the baseline angle between a master M and slave S acquisition, respectively.

Each interferometric pair provides a derived observation of change in look-angle (\(\underline{\theta }_{PR}\)) [(Hanssen 2001), pp. 34–40]. When a radar scatterer is measured from a stack of m repeat-pass acquisitions with different baselines \(\big [\underline{B}_{\bot ,1},\) \(\underline{B}_{\bot ,2},\) \(\ldots ,\underline{B}_{\bot ,m-1}\big ]\), then \(\underline{\theta }_{PR}\) and hence \(\hat{\underline{c}}_P\) and its precision \(\sigma ^2_{\hat{c}_P}\) can be better estimated using BLUE (best linear unbiased estimation) (Teunissen et al. 2005):

$$\begin{aligned}&{\hat{\underline{c}}}_P = \hat{\underline{x}}(1) \quad \mathrm{and} \quad \,\, \sigma ^2_{\hat{c}_P} = \sigma ^2_{\hat{x}}(1,1), \mathrm{with}\nonumber \\&\hat{\underline{x}} = {(G^{T} {{Q}^{-1}_{{y}}} G)}^{-1} G^{T} {Q}^{-1}_{y} \,\underline{y} \quad \mathrm{and} \quad \sigma ^2_{\hat{x}} = {(G^{T} Q^{-1}_{y} G)}^{-1}, \nonumber \\ \end{aligned}$$
(16)

given the following functional and stochastic models with initial values (\(r^o_P,\) \(B^o_{\bot ,1},\) \(B^o_{\bot ,2},\) \(\ldots ,\) \(B^o_{\bot ,m-1}\)),

$$\begin{aligned}&E \left\{ \underbrace{ \begin{bmatrix} \underline{\phi }_{PR,1} \\ \underline{\phi }_{PR,2} \\ \vdots \\ \underline{\phi }_{PR,m-1} \\ \underline{B}_{\bot ,1} \\ \underline{B}_{\bot ,2} \\ \vdots \\ \underline{B}_{\bot ,m-1} \\ \underline{r}_{P} \\ \end{bmatrix}}_{\underline{y}}\right\} = \underbrace{ \begin{bmatrix} \frac{-4\pi \cdot B^o_{\bot ,1}}{\lambda \cdot r^o_{P}}&&&&\\ \frac{-4\pi \cdot B^o_{\bot ,2}}{\lambda \cdot r^o_{P}}&&&&\\ \vdots&&&&\\ \frac{-4\pi \cdot B^o_{\bot ,m-1}}{\lambda \cdot r^o_{P}}&&&&\\&1&&&\\&1&&&\\&&\ddots&&\\&&1&&\\&&&&1 \\ \end{bmatrix}}_{G} \underbrace{ \begin{bmatrix} c_{P} \\ B_{\bot ,1} \\ B_{\bot ,2} \\ \\ \\ \vdots \\ \\ \\ B_{\bot ,m-1} \\ r_{P} \\ \end{bmatrix}}_{x} \end{aligned}$$

and diagonal (considering negligible covariance) matrix

$$\begin{aligned}&D\{\underline{y}\} = Q_{y}\nonumber \\&\quad \text {with entries } \Big [ \sigma ^2_{\phi _{PR,1}}, \sigma ^2_{\phi _{PR,2}},\ldots ,\sigma ^2_{\phi _{PR,m-1}},\sigma ^2_{B_{\bot ,1}},\sigma ^2_{B_{\bot ,2}},\nonumber \\&\qquad \qquad \qquad \ldots ,\sigma ^2_{B_{\bot ,m-1}},\sigma ^2_{r_{P}}\Big ], \end{aligned}$$
(17)

where \(D\{\cdot \}\) is the second moment, \(\sigma ^2_{r_P}\) is given by Eq. (13), and \(\Big [\sigma ^2_{\phi _{PR,1}},\sigma ^2_{\phi _{PR,2}},\ldots ,\sigma ^2_{\phi _{PR,m-1}}\Big ]\) is from interferometry. \(\Big [\sigma ^2_{B_{\bot ,1}},\sigma ^2_{B_{\bot ,2}},\ldots ,\sigma ^2_{B_{\bot ,m-1}}\Big ]\) represents the baseline quality due to orbit inaccuracies in (\(m-1\)) interferometric pairs, which are derived from the precision of the satellite state-vectors in 3D.

2.4.1 Quality description

The quality of the range \(\sigma ^2_{{r}_P}\) and azimuth \(\sigma ^2_{{a}_P}\) distances is derived as explained in Sect. 2.3. The cross-range precision \(\sigma ^2_{\hat{c}_P}\) depends on: (i) sub-pixel positions (of both reference point R and scatterer P); (ii) temporal phase stability of the reference point R; (iii) phase unwrapping; (iv) the number of images; (v) the perpendicular baseline distribution, and (vi) phase noise. In this work, (i) and (ii) are handled, while (iii) is assumed to be error-free, and factors (iv) to (vi) are subject to data availability and not discussed here.

Since we use PSI to obtain the cross-range component, our 3D position estimates viz. range, azimuth, and cross-range are relative in nature. Therefore, the secondary (azimuth and range) positioning components are applied with respect to a master image. In order to obtain the absolute 3D position for scatterers, we choose a scatterer with known 3D position as reference point during PSI processing. Then, from Eqs. (13), (14), and (16), the uncertainty in positioning a scatterer P in 3D radar geometry is expressed using the following VC matrix:

$$\begin{aligned} Q_{rac} = \begin{bmatrix} \sigma ^2_{{r}_P}&\\&\sigma ^2_{{a}_P}&\\&\sigma ^2_{\hat{c}_P} \\ \end{bmatrix}. \end{aligned}$$
(18)

From this VC matrix, the 3D position error ellipsoid per scatterer can be drawn. Though the error in azimuth and range positions will have some influence in cross-range estimation, in our study, the error covariances are assumed to be negligible and hence the 3D VC matrix is considered to be diagonal.

2.5 Transformation to the ellipsoidal 3D TRF datum and national/local 3D coordinate system

The position of a scatterer in the 3D radar geometry (\(r_P,\) \(a_P,\) \(c_P\)) is transformed to a 3D TRF reference system expressed in (\(x_P,\) \(y_P,\) \(z_P\)) using a non-linear mapping transformation known as geocoding. It is described by the following equations (Schreier 1993; Small et al. 1996; Hanssen 2001):

$$\begin{aligned}&\text {Doppler: } {\underline{\mathbf {{V}}}_{\text {s/c}} (\underline{a}_P)} \cdot \left( \frac{{\mathbf {{P}}}-{\underline{\mathbf {{S}}}(\underline{a}_P)}}{|{\mathbf {{P}}}-{\underline{\mathbf {{S}}}(\underline{a}_P)}|}\right) - \frac{\lambda }{2} \cdot \underline{f}_D(\underline{a}_P) = 0,\nonumber \\ \end{aligned}$$
(19)
$$\begin{aligned}&\text {Range: } ({\mathbf {{P}}}-{\underline{\mathbf {{S}}}(\underline{a}_P)}) \cdot ({\mathbf {{P}}}-{\underline{\mathbf {{S}}}(\underline{a}_P)}) - \underline{r}_P^{{2}} = 0, \end{aligned}$$
(20)
$$\begin{aligned}&\text {{Surface parallel to the reference} ellipsoid:} \nonumber \\&\frac{x_P^2}{(l+\underline{H}_P)^2} + \frac{y_P^2}{(l+\underline{H}_P)^2} + \frac{z_P^2}{(b+\underline{H}_P)^2} - 1 = 0, \end{aligned}$$
(21)
$$\begin{aligned}&\text {Height of scatterer { P} above reference surface and its variance: } \nonumber \\&\underline{H}_P = \underline{H}_{R}+{\hat{c}}_{P} \cdot \sin (\theta _{\mathrm{inc},P}), \end{aligned}$$
(22)
$$\begin{aligned}&\sigma ^2_{H_P} = \sigma ^2_{H_R}+\sigma ^2_{\hat{c}_P} \cdot {\sin (\theta _{\mathrm{inc},P})}^2, \end{aligned}$$
(23)

where bold-faced parameters represent vectors, \(\underline{H}_{R}\) is the position (height above reference surface) of the reference point R (see Fig. 3), and its variance \(\sigma ^2_{H_R}\). \({\mathbf {{P}}} = [x_P,\) \(y_P,\) \(z_P]^{{T}}\) is the position of scatterer in TRF, \(\theta _{\mathrm{inc},P}\) is the incidence angle at P, and \(\underline{f}_D(\underline{a}_P)\) is the Doppler frequency while imaging scatterer P at azimuth position \(\underline{a}_P\). For products provided in zero-Doppler annotation, \(\underline{f}_D(\underline{a}_P)=0\). \({\underline{\mathbf {{S}}}(\underline{a}_P)} = [\underline{s}_x(\underline{a}_P),\) \(\underline{s}_y(\underline{a}_P),\) \(\underline{s}_z(\underline{a}_P)]^{{T}}\), and \({\underline{\mathbf {{V}}}_{\text {s/c}} (\underline{a}_P)} = [\underline{v}_x(\underline{a}_P),\) \(\underline{v}_y(\underline{a}_P),\) \(\underline{v}_z(\underline{a}_P)]^{{T}}\) are the respective position and velocity vectors of the spacecraft at the instant of imaging scatterer P at \(\underline{a}_P\) during the master acquisition. l and b are the semi-major (equatorial) and semi-minor (polar) axis of the reference ellipsoid, respectively.

Fig. 4
figure 4

Transformation from radar to map geometry

Optionally, to ease identification and visualization of scatterers at object level, the 3D TRF coordinates (\(x_P,y_P,z_P\)) are further transformed into a national or local reference coordinate system (Fig. 4). This national or local 3D Cartesian coordinate system is usually defined by coordinates East (e), North (n) and Up or Height (h). Here, we project the 3D TRF coordinates using a procedure called RDNAPTRANS (de Bruijne et al. 2005) into the Dutch National Triangulation system RD (‘Rijksdriehoeksstelsel’ in Dutch) and vertical NAP (‘Normaal Amsterdams Peil’) reference system, denoted as RDNAP. This procedure includes the usage of geoid model for the vertical component. After transforming to RDNAP coordinates, we used a local origin in the area of interest, and considered X(RD) as East, Y(RD) as North, and NAP as Up/Height components.

2.5.1 Quality description

The 3D position uncertainity in radar measured by the VC matrix \(Q_{rac}\) can be propagated to map geometry \(Q_{\mathrm{enh}}\) by Monte Carlo simulation, linearization of the geocoding (see Eqs. (19)–(22)) and projection (de Bruijne et al. 2005) steps, or in a geodetic manner by computing the transformation parameters between the radar and map coordinate systems. The geocoding, and projection steps form a complex non-linear process, thus the error propagation is not performed by linearization. Monte Carlo simulation based approaches are not preferred as they are relatively time consuming to apply for several (e.g., to millions of) scatterers in a radar image. In this paper, we use the geodetic approach for error propagation. We know that the geocoding and subsequent projection steps provide point clouds in both the radar \([a_i,r_i,c_i]\) and local map \([e_i,n_i,h_i]\) coordinates, \(~\forall i \in \{1,\) 2,  \(\ldots ,\) \(N\}\) scatterers. Therefore, the available point clouds in both radar and local map coordinates are exploited to form the following S-transformation (Baarda 1981):

$$\begin{aligned}&E \left\{ \left[ \begin{array}{l} e_{1} \\ n_{1} \\ h_{1} \\ \vdots \\ e_{N} \\ n_{N} \\ h_{N} \\ \end{array}\right] \right\} = F \left[ \begin{array}{l} d_{3\times 1} \\ --- \\ \mathrm{vec}\{ R_{3\times 3}\} \\ \end{array}\right] \nonumber \\&\text {with } F =\left[ \begin{array}{l@{\quad }l@{\quad }l@{\quad }l@{\quad }l@{\quad }l@{\quad }l@{\quad }l@{\quad }l@{\quad }l@{\quad }l@{\quad }l} 1 &{} 0 &{} 0 &{} {r}_{1} &{} {a}_{1}&{} c_{1} &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 \\ 0 &{} 1 &{} 0 &{} 0 &{} 0 &{} 0 &{} {r}_{1} &{} {a}_{1}&{} c_{1} &{} 0 &{} 0 &{} 0 \\ 0 &{} 0 &{} 1 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} {r}_{1} &{} {a}_{1}&{} c_{1} \\ &{} \vdots &{}&{}&{}&{}&{}&{} \vdots \\ 1 &{} 0 &{} 0 &{} {r}_{N} &{} {a}_{N}&{} c_{N} &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 \\ 0 &{} 1 &{} 0 &{} 0 &{} 0 &{} 0 &{} {r}_{N} &{} {a}_{N}&{} c_{N} &{} 0 &{} 0 &{} 0 \\ 0 &{} 0 &{} 1 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} 0 &{} {r}_{N} &{} {a}_{N}&{} c_{N} \\ \end{array}\right] ,\nonumber \\ \end{aligned}$$
(24)

where d is the translation vector, R is the rotation matrix and operator \(\mathrm{vec}\{\cdot \}\) is the column vector of a matrix. The transformation given by Eq. (24) is not a traditional (7 parameter) 3D similarity transformation since the orientation of the local reference frame is changing with the Earths curvature. This follows from the Eqs. (19)–(22) where the local incidence angle changes depending on range. For a given area of interest, transformation parameters d and R are estimated using BLUE (Teunissen et al. 2005). Then the 3D position error ellipsoid (or VC matrix) can be propagated from radar geometry to a given local reference frame (Fig. 4) and vice-versa. Note that the actual transformation from the radar coordinates (rac) to local coordinates (enh) is performed directly by solving Eqs. (19)–(22) along with the RDNAPTRANS procedure—the above approximation via Eq. (24) only serves to facilitate error propagation. From Eq. (18) and the variance propagation law, the VC matrix in local map geometry is given by

$$\begin{aligned} Q_{\mathrm{enh}} = R_{3\times 3} \cdot Q_{rac} \cdot R_{3\times 3}^T = \begin{bmatrix} \sigma ^2_{e}&\quad \sigma ^2_{en}&\quad \sigma ^2_{eh} \\ \sigma ^2_{en}&\quad \sigma ^2_{n}&\quad \sigma ^2_{nh} \\ \sigma ^2_{eh}&\quad \sigma ^2_{nh}&\quad \sigma ^2_{h} \\ \end{bmatrix}, \end{aligned}$$
(25)

where the diagonal (\(\sigma ^2_{e},\) \(\sigma ^2_{n},\) \(\sigma ^2_{h}\)) and non-diagonal (\(\sigma ^2_{en},\) \(\sigma ^2_{eh},\) \(\sigma ^2_{nh}\)) entries are the variances and covariances in east, north and up coordinates, respectively.

Then, for each coherent scatterer, from the eigenvalues of \(Q_{\mathrm{enh}}\), a 3D error ellipsoid is drawn with the estimated position as its center. The error ellipsoid can be described by its size, shape and orientation:

  • the dimensions of the error ellipsoid are given by the eigenvalues of \(Q_{\mathrm{enh}}\), which are the diagonal elements of \(Q_{rac}\). Therefore, \(\sigma _{{r}_P}\), \(\sigma _{{a}_P}\), and \(\sigma _{{c}_P}\) describe the three semi-axis lengths of the ellipsoid.

  • the shape the ellipsoid is derived from the ratio of their axis lengths, given by \(\left( 1/\gamma _1/\gamma _2\right) \), where \(\gamma _1 = \frac{\sigma _{{a}_P}}{\sigma _{{r}_P}}\), and \(\gamma _2 = \frac{\sigma _{{c}_P}}{\sigma _{{r}_P}}\), see Table 2.

  • the orientation (inclination) of the error ellipsoid is dependent on the local incidence angle of the radar beam at the target. A cross-section of the error ellipsoid for \(\gamma _1 \ll \gamma _2\) (in black) and \(\gamma _1 \approx \gamma _2\) (in blue) is shown in Fig. 5.

3 Scatterer position validation

Here, the position obtained in the previous section is assessed in 2D and 3D with the ground truth position measurements. Scatterer positioning accuracy or error is defined as the difference between the ground truth and measured (or estimated) positions. The measured position, retrieved from the image, is obtained by performing complex FFT oversampling and detecting the sub-pixel location of a target in a given SLC image and correcting for the secondary positioning components as stated in the previous section. The ground truth position, used for validation, is obtained with the aid of an external measurement technique such as DGPS. The GNSS receivers are used to measure the phase center of a target of interest such as a trihedral corner reflector.

Table 2 Depending on the values of \(\gamma _1\) and \(\gamma _2\), the shape of error ellipsoid will vary from a prolate ellipsoid to a spheroid
Fig. 5
figure 5

A cross-section of error ellipsoid in range and cross-range dimensions. Error ellipse for the cases \(\gamma _1 \ll \gamma _2\) (prolate ellipsoid) and \(\gamma _1 \approx \gamma _2\) (spheroid) are drawn in black and blue, respectively

3.1 2D accuracy

The position accuracy in 2D is computed in radar geometry as the difference between the ground truth and measured positions for azimuth and range coordinates. In 2D, two outcomes are produced:

  1. 1.

    Similar to Small et al. (2004a), Schubert et al. (2010), Eineder et al. (2011), the accuracy is computed without taking into account the stochastic properties of the measurements and the secondary positioning components. This computation will serve as an independent validation of the results reported in Schubert et al. (2010), Eineder et al. (2011), Small et al. (2004a), Small et al. (2004b) for TSX SM images.

  2. 2.

    Then, 2D accuracy is computed taking into account all the stochastic properties as described below. Let \(\big [{\underline{a}}_{1,E},\) \({\underline{a}}_{2,E},\) \(\ldots ,\) \({\underline{a}}_{m,E}\big ] \) and \(\big [\sigma _{{a}_{1,E}}^2,\) \(\sigma _{{a}_{2,E}}^2,\) \(\ldots ,\) \(\sigma _{{a}_{m,E}}^2 \big ]\) be the measured azimuth positions (denoted with subscript E) and their respective variances in m images. If the target is measured with DGPS and then radar-coded by range-Doppler positioning (Meier et al. 1993; Small et al. 1996) to obtain the ground truth positions (denoted with subscript T) in m images \(\big [{\underline{a}}_{1,T},\) \({\underline{a}}_{2,T},\) \(\ldots ,\) \({\underline{a}}_{m,T}\big ]\) with its variances given by \(\big [\sigma _{a_{1,T}}^{2},\) \(\sigma _{a_{2,T}}^{2},\) \(\ldots ,\sigma _{a_{m,T}}^{2}\big ]\), then the functional and stochastic models for the azimuth position error (accuracy) can be written as

    $$\begin{aligned}&E \{ {\underline{y}} \} = A ~\mu _{a}, \quad \text {with } \quad {\underline{y}} = \begin{bmatrix} {\underline{a}}_{1,T} - {\underline{a}}_{1,E} \\ {\underline{a}}_{2,T} - {\underline{a}}_{2,E} \\ \vdots \\ {\underline{a}}_{m,T} - {\underline{a}}_{m,E} \\ \end{bmatrix}, \nonumber \\&A = \begin{bmatrix}1 \\ 1 \\ \vdots \\ 1 \end{bmatrix}, \quad \mathrm{and} \quad Q_{y} = \begin{bmatrix} \kappa _1&\\&\kappa _2&\\&\ddots&\\&\kappa _m \\ \end{bmatrix}, \end{aligned}$$
    (26)

    where \(\kappa _i\) is the part of the a priori \(Q_{y}\) matrix representing \(i\text {th}\) image, defined as:

    $$\begin{aligned} \kappa _i = \sigma _{{a}_{i,T}}^2+\sigma _{a_{i,E}}^{2}, \quad \forall \, i \in \{1, 2, \ldots , m\}. \end{aligned}$$
    (27)

    Taking into account of \(Q_{y}\), the first (\(\hat{\underline{\mu }}_{a}\)) and second (\(\hat{\sigma }_{a}^2\)) moments of the azimuth position error are given by:

    $$\begin{aligned}&\hat{\underline{\mu }}_{a} = {(A^{T} {Q^{-1}_{y}} A)}^{-1} A^{T} Q^{-1}_{y} \,{\underline{y}}, \mathrm{and} \nonumber \\&\hat{\sigma }_{a}^2 = \frac{m}{m-1} \cdot \frac{{\hat{\underline{e}}}^T Q^{-1}_{y} {\hat{\underline{e}}}}{{{\mathrm{Tr}}}(Q^{-1}_{y})}, \quad \mathrm{with\, residual} \quad {\hat{\underline{e}}} \,=\, {\underline{y}} - A \hat{\underline{\mu }}_{a},\nonumber \\ \end{aligned}$$
    (28)

    where the operator \({{\mathrm{Tr}}}\{.\}\) denotes the trace of a matrix. If \(\hat{\underline{\mu }}_{a} \ne 0 \) then it represents the existence of a systematic bias in the azimuth position estimate, which might have been left uncompensated during the satellite’s (geometric) calibration phase. Similar to Eq. (26), given the ground truth range positions in m images by \(\big [{\underline{r}}_{1,T},\) \({\underline{r}}_{2,T},\) \(\ldots ,\) \({\underline{r}}_{m,T}\big ]\) and their variances \(\big [\sigma _{r_{1,T}}^{2},\) \(\sigma _{r_{2,T}}^{2},\) \(\ldots ,\sigma _{r_{m,T}}^{2}\big ]\), the functional and stochastic models of the range position error is written by,

    $$\begin{aligned} {\begin{matrix} &{}E \{ {\underline{y}} \} = A ~ \mu _{r}, \quad \text {with } \quad {\underline{y}} = \begin{bmatrix} {\underline{r}}_{1,T} - {\underline{r}}_{1,E} \\ {\underline{r}}_{2,T} - {\underline{r}}_{2,E} \\ \vdots \\ {\underline{r}}_{m,T} - {\underline{r}}_{m,E} \\ \end{bmatrix}, \\ &{}A = \begin{bmatrix}1 \\ 1 \\ \vdots \\ 1 \end{bmatrix}, \quad \text {and } \quad Q_{y} = \begin{bmatrix} \kappa _1 &{}&{}&{} \\ &{}\kappa _2 &{}&{} \\ &{}&{}\ddots &{} \\ &{}&{}&{}\kappa _m \\ \end{bmatrix}, \end{matrix}} \end{aligned}$$
    (29)

    where \(\big [{\underline{r}}_{1,E},\) \({\underline{r}}_{2,E},\) \(\ldots ,\) \({\underline{r}}_{m,E}\big ] \) and \(\big [\sigma _{{r}_{1,E}}^2,\) \(\sigma _{{r}_{2,E}}^2,\) \(\ldots ,\) \(\sigma _{{r}_{m,E}}^2 \big ]\) are the measured range positions and their variances in m images. \(\kappa _i\) is the part of the \(Q_{y}\) matrix representing \(i\text {th}\) image, defined as:

    $$\begin{aligned} \kappa _i = \sigma _{{r}_{i,T}}^2+\sigma _{r_{i,E}}^{2}, \quad \forall \, i \in \{1, 2, \ldots , m\}. \end{aligned}$$
    (30)

    The first (\(\hat{\underline{\mu }}_{{r}}\)) and second (\(\hat{\sigma }_{{r}}^2\)) moments of the range position error is computed by substituting Eq. (29) in Eq. (28). Similarly, when \(\hat{\underline{\mu }}_{r} \ne 0 \), it represents the existence of a systematic bias in the range position estimate. It is an estimate of the residual range timing offset, left uncorrected during calibration.

3.2 3D accuracy

The 3D position accuracy proposed in our study, expressed as the difference between the ground truth and estimated positions, is computed in 3D Cartesian coordinates. For targets with known effective phase centers such as CR, the ground truth position is obtained by measuring it with DGPS. But, for non-CR targets such as PS, the effective phase center is neither known precisely nor can it necessarily be measured per individual scatterer. For such targets, the 3D position accuracy was validated using external 3D building and city models. For 3D positioning, we demonstrate three key results:

  1. 1.

    The improved absolute 3D positioning capability with its precision drawn as error ellipsoid.

  2. 2.

    Validation of 3D positioning accuracy and the error ellipsoid concept using a hypothesis testing procedure for scatterers whose phase center can be precisely measured (such as CR). We assume the null hypothesis \(H_0\) that the estimated 3D position \(P_E = [\underline{e}_E,\underline{n}_E,\underline{h}_E]\) with uncertainty \(Q_{\mathrm{enh,E}}\) and the ground truth position (obtained from DGPS) \(P_T = [\underline{e}_T,\underline{n}_T,\underline{h}_T]\) with uncertainty \(Q_{\mathrm{enh,T}}\) measure the same position [enh] of a scatterer. Therefore, the functional and stochastic models of our observations \((\underline{y})\) are given by:

    $$\begin{aligned} H_0&: \begin{bmatrix} \underline{e}_{{E}} \\ \underline{n}_{{E}} \\ \underline{h}_{{E}} \\ \underline{e}_{{T}} \\ \underline{n}_{{T}} \\ \underline{h}_{{T}} \\ \end{bmatrix} = \begin{bmatrix} I \\ I \\ \end{bmatrix} \begin{bmatrix} e \\ n \\ h \\ \end{bmatrix} + \underline{\epsilon }, \nonumber \\&\text {with } Q_{\mathrm{enh,ET}} = \begin{bmatrix} Q_{\mathrm{enh,E}}&\\&Q_{\mathrm{enh,T}} \\ \end{bmatrix}, \end{aligned}$$
    (31)

    where I is the identity matrix, \(\hat{\underline{\epsilon }} = {\underline{y}} - \hat{\underline{y}} \) is the vector of residuals, and \(Q_{\mathrm{enh,ET}}\) is the a priori VC matrix. The overall model test (OMT) statistic

    $$\begin{aligned} t_{\mathrm{omt}} = \frac{\hat{\underline{\epsilon }}^{T} \cdot Q^{-1}_{\mathrm{enh,ET}} \cdot \hat{\underline{\epsilon }}}{3} {\sim \chi ^2(3)} \end{aligned}$$
    (32)

    is then applied to infer whether the null hypothesis is accepted at a given confidence level (Teunissen et al. 2005). The test statistic \(t_{\mathrm{omt}}\) is Chi-square (\(\chi ^2\)) distributed with 3 degrees of freedom. The higher the confidence at which \(H_0\) is accepted, the lower the false rejection rate and the better the position accuracy validation.

  3. 3.

    Identification of potential radar scatterers by the intersection of the 3D position error ellipsoid with real-life objects.

Fig. 6
figure 6

Delft corner reflector experiment setup. a Delft corner reflector experiment site. Six small (CR \(1\) to \(6\)) and one big (CR \(7\)) corner reflectors were imaged with TSX SM descending pass acquisitions. b Mean intensity image (from 45 acquisitions) covering seven corner reflectors. Color represents the intensity expressed in dB. Subpixel locations are marked with red dots along with their CR numbers. c Ground truth measurement setup using DGPS and tachymetry

Table 3 Precision of ground truth CR position measurements in East, North, and Up coordinates
Fig. 7
figure 7

Position correction factors for Delft test site computed for TSX SM acquisitions: a azimuth time shift, b total path delay (ionosphere and troposphere) in slant range direction, c SET component in azimuth and slant range directions, and d impact of plate motion (between ITRF2008 at epoch of the image acquisition relative to the ETRF89) in azimuth and slant range dimensions. Error bars in b and c are drawn with \(1\sigma \) confidence

4 Experiment setup

4.1 Configuration

Six small (45 cm sides) and one big (1 m sides) trihedral corner reflectors were deployed near Delft in August 2012, see Fig. 6a, and oriented for TSX stripmap descending pass acquisitions with an incidence angle of \(24.1^{\circ }\), and a heading angle of \(192.2^{\circ }\). The TSX stripmap images are provided with a resolution of approximately 3.3 and 2.9 m in azimuth and ground range, respectively. The mean intensity image with the corner reflectors is shown in Fig. 6b. 45 SM images acquired by a combination of TSX and TDX satellites from Aug 2012 to March 2014 were used in our study. We concentrated on the results of one small (CR6) and one big (CR7) reflector, since they were least interfered by the side-lobes of other reflectors. The CR’s ground truth position was measured using a DGPS and tachymetry setup as shown in Fig. 6c. Trimble R7 GPS receivers were placed at reference locations marked R1, R2, and R3 for 40 min and at R4 for 5 h. Station R4 served as a local GPS reference. The total station (TOPCON GPT-7003i) was placed at R1, R2, and R3 to measure the apex of the CR with respect to R1, R2 and R3, respectively, as illustrated by the measurement lines (in red) in Fig. 6c. The local positions were found to exhibit a better than 1 cm precision as shown in Table 3. The GPS data were processed using the Netherlands Positioning Service (NETPOS 2015). The total station local measurements were then combined with GPS coordinates to get coordinates in RDNAP. From the final position estimates, the overall precision was found to be \(\sim \)1 cm in the horizontal (\(e \text { and } n\)) and \(\sim \)2 cm in the vertical (h) directions (see Table 3).

4.2 Computation of the secondary positioning components

The secondary positioning components (“Appendix 1”) were computed for the Delft experiment site. Figure 7a shows the azimuth timing shift values retrieved from the TSX and TDX metadata for the experiment period. During our experiment’s time span, the TSX and TDX processors were updated a few times with new (radiometric and geometric) calibration constants. As a result, the azimuth time shift value changed depending on the processor version with which the image was processed and the satellite, as shown in “Appendix 2”. The precision of the timing offset is given in nanoseconds (resulting in \(<\)1 mm standard deviation), hence the stochasticity of this term was neglected. Atmospheric slant range one-way path delay (ionosphere and troposphere combined) at the time of satellite pass along with its \(1\sigma \) uncertainty in meters is plotted in Fig. 7b. The ionospheric path delay contribution retrieved from Global Ionosphere Maps was given with a precision in the order of 5–10 mm. The tropospheric delay was obtained from a GNSS station located in Delft, \(\sim \)7 km from the test site. The use of GPS phase measurements provided tropospheric delays with a precision \(<\)5 mm (Baltink et al. 2002; Bender et al. 2008). Taking the flat topography of the terrain into account, it is assumed that the troposphere contribution at the test site was not significantly different from the location of the GNSS station. Please note, the impact of the ionospheric component for a X-band radar satellite (TSX/TDX) flying at an altitude of \(\sim \)514 km is in the order of 5 cm in range direction, while tropospheric component is \(\sim \)2.5 m. Figure 7c shows the SET at the time of image acquisition projected in azimuth and range directions. For our Delft test site, SET was computed using a Fortran program by Milbert (2011). This implementation of the SET is essentially a porting of the official international earth rotation and reference systems service (IERS) convention routines provided in McCarthy and Petit (2004). The convention technical note states that the tidal model to be accurate to the 1 mm level (McCarthy and Petit 2004; Petit and Luzum 2010). An independent validation by Schubert et al. (2012) confirmed the SET obtained to have at least 1 cm precision, representing \(1\sigma \) of the estimated SET as shown in the error bar of Fig. 7c. Finally, the corrections due to plate tectonics were computed between ITRF2008 (TSX orbits) at each epoch of the satellite pass and ETRF89 (ground truth measurements) using the EUREF [the international association of geodesy (IAG) Regional Reference Frame Sub-Commission for Europe] permanent network services (Bruyninx 2004; Bruyninx et al. 2009). Plate motion corrections were applied before comparing the estimated and ground truth positions. The impact of plate motion in azimuth and range is plotted in Fig. 7d. The precision of GNSS station velocities was in the order of 1 mm/year, hence the stochasticity of this effect is ignored.

Fig. 8
figure 8

Delft experiment site: 2D absolute position accuracy of small CR6 (top) and big CR7 (bottom) for TSX SM descending mode acquisitions. Dashed lines indicate the azimuth and range pixel spacings. Color represents the variation of position accuracy over time. Images affected by strong wind or heavy rain are marked with black rectangles and were removed in the error computations. a Small reflector CR6 with accuracy of \(-6.1\pm 8.7\) cm in azimuth and \(32.7\pm 4.2\) cm in range. b Big reflector CR7 with accuracy of \(-1.8\pm 6.9\) cm and \(32.3\pm 2.2\) cm in azimuth and range, respectively.

5 Results

5.1 2D absolute CR positional accuracy

CR phase center positions measured with DGPS and tachymetry were radar-coded and compared with image pixels which were FFT oversampled by a factor of \(128 \times 128\). The secondary positioning components such as SET, azimuth time shift, path delay and plate tectonics were computed as shown in Fig. 7, and corrected to improve the absolute positioning of CR6 and CR7.

Figure 8 shows the 2D absolute position error as a function of time, before and after applying the listed corrections. After applying the corrections, CR6 exhibited a positional offset of \(-6.1\,\pm \,8.7\) cm in azimuth and \(32.7\,\pm \,4.2\) cm in range direction, while CR7 showed an offset of \(-1.8\,\pm \,6.9\) cm and \(32.3\,\pm \,2.2\) cm in azimuth and range, respectively. The bigger CR7 showed slightly better positional accuracy in comparison to its small-sized counterpart CR6. Using the results from CR7, one can say that the biases of \(\hat{\underline{\mu }}_a \approx 2\) cm in azimuth and \(\hat{\underline{\mu }}_r \approx 32\) cm in range were due to residual azimuth and range timing errors. Taking the SM mode into account, these 2D position accuracies are comparable to the results reported by Schubert et al. (2010), Eineder et al. (2011), Balss et al. (2013) and will serve as a benchmark for future SM mode validations.

The amplitude response of CR’s impacted by adverse weather conditions (marked with black rectangles in Fig. 8) were considered outliers and removed in the error computations. The meteorological data, obtained from the Royal Netherlands Meteorological Institute, were used to understand the outliers. Due to strong wind gusts of up to \(\sim \)40 and \(\sim \)90 km/h on days before the acquisitions 24-Sep-2012 and 21-Apr-2013, respectively, CR6 and CR7 appear to have been affected. For images dated 11-Sep-2013 and 22-Sep-2013, CR6 showed a 5–10 dB dip in SCR due to the accumulation of rain water in the reflector. Heavy rainfall of \(\sim \)14 mm was recorded days before the satellite pass. Similarly, CR7 showed a decrease in SCR of about 16 dB on 05-Nov-2013 and 27-Nov-2013 due to strong winds (\(\sim \)60 km/h) and rainfall (\(\sim \)5 mm). For the duration of the experiment, after detecting abnormal amplitude changes, field inspections were carried out to repair (fix the screws or clean the drainage hole) the affected CR.

It should be noted (refer the color coding in Fig. 8) that the position was not found to systematically drift over time, which could signal either an excellent performance of the onboard local oscillator or that the relevant corrections were being performed regularly for the respective timing parameters in the metadata, see Balss et al. (2014). Similar reasoning holds for instantaneous CoM changes of the satellite.

Fig. 9
figure 9

Delft experiment site: 2D absolute position accuracy of CR6 (top) and CR7 (bottom) taking stochastic properties into account. Color represents variations in position over time. Error ellipses scaled down to \(25\,\%\) confidence interval (\(0.32\,\sigma \)) for clear visualization. a Small reflector CR6 with accuracies of \(-4.8\pm 8.6\) cm in azimuth and \(32.6\pm 4{.0}\) cm in range. b Big reflector CR7 with accuracies of \(-1.7\pm 6.8\) cm and \(32.3\pm 2.2\) cm in azimuth and range, respectively

Fig. 10
figure 10

Demonstration of 3D position accuracy of corner reflectors with its 3D uncertainty expressed using error ellipsoids. All error ellipsoids are drawn with \(1\sigma \) confidence intervals. With a 0.01 level of significance, the estimated 3D position of CR6 and CR7 with error ellipsoid (in blue) represents the ground truth position (in black). The error ellipsoids in b and c are projected in en, nh, and he planes (indicated with dashed lines) to illustrate their intersection with the ground truth position. a 3D absolute position accuracy with its quality drawn as an error ellipsoid. CR6 and CR7 are plotted before (with red ellipsoid) and after corrections (with blue ellipsoid), both with respect to the ground truth given by its GPS position (indicated with a black dot). b The 3D accuracy of CR6 was 1.12 m. It exhibited a cigar-shaped error ellipsoid with a ratio of axis lengths 1 / 2 / 129 (with \({\hat{\sigma }}_r = 0.04\) m). c The 3D accuracy of CR7 was 0.66 m. It exhibited a cigar-shaped error ellipsoid with a ratio of axis lengths 1 / 3 / 213 (with \({\hat{\sigma }}_r = 0.022\) m)

5.2 2D absolute positional accuracy of CR using stochastic information

Here, the 2D accuracy was computed by taking into account the stochastic properties of position estimates, ground truth and the secondary positioning components, as described in Eqs. (13), (14), and Sect. 3.1. As a result, every azimuth and range position was now associated with a \(2\times 2\) diagonal VC matrix and represented by an error ellipse as depicted in Fig. 9 for CR6 and CR7. CR6 exhibited a position offset of \(-4.8\,\pm \,8.6\) cm in azimuth and \(32.6\,\pm \,4.0\) cm in range, while CR7 showed \(-1.7\,\pm \,6.8\) cm and \(32.3\,\pm \,2.2\) cm in azimuth and range, respectively. With all other errors sources being identical for CR6 and CR7, the difference in sizes of their error ellipses comes from their SCR differences and variations as a function of time. CR6 and CR7 showed an average SCR of about 25 dB and 36 dB, respectively, and as a result, CR7 has smaller error ellipse compared to CR6, see Fig. 9a, b. Compared to the other sources (secondary components (Fig. 7) and SCR), the precision of the TSX timing information had negligible impact on the azimuth and range precisions (see Eqs. 13 and 14). Comparing Fig. 9 with Fig. 8, the accuracy estimates were improved, for example in case of the smaller CR6, the azimuth error offset decreased more than \(20\,\%\) from \(-\)6.1 to \(-\)4.8 cm accompanied by a reduction in standard deviation of about 5\(\,\%\) (from 4.2 to 4.0 cm). The improvements were not drastic, because the stochastic characteristics of the secondary positioning components estimates and the quality of the azimuth and range position estimates did not vary significantly.

5.3 3D absolute positioning and its uncertainty for CR

During PSI and geocoding, CR1 (whose height in RDNAP was known a priori) was taken as a reference point, making the estimated scatterer heights easier to interpret. Azimuth and range corrections were applied with respect to the master image (30-Mar-2013). 3D position error modeling and error propagation were applied as described in Sects. 2.4 and 2.5, respectively. The resulting error ellipsoids for CR6 and CR7 before (in red) and after (in blue) considering the secondary positioning component corrections are drawn in comparison to their ground truth position (in black) obtained from GPS and tachymetry (Fig. 10a).

An offset between the estimated (in blue) and ground truth 3D positions (in black) was computed to be 1.12 m for CR6 (Fig. 10b) and 0.66 m for CR7 (Fig. 10c). CR6 and CR7 exhibited an error ellipsoid with a ratio of axis lengths 1 / 2 / 129 (with \({\hat{\sigma }}_r = 0.04\) m) and 1 / 3 / 213 (with \({\hat{\sigma }}_r = 0.022\) m), respectively. The ratio of axis lengths represents the precision of range, azimuth, and cross-range relative to range, respectively. The quality in the range, and azimuth were obtained from Eqs. (26)–(30) and the quality in cross-range were from Eq. (16). For both CR (see Fig. 10b, c), the uncertainty in cross-range position was larger than the error in azimuth and range positions. Therefore, the case of \(\gamma _1 \ll \gamma _2\) (see Table 2; Fig. 5) was observed for both reflectors. This implies cigar-shaped error ellipsoids which are elongated in the cross-range direction. The orientation of the error ellipsoids was attributed to the steep incidence angle of about \(24^{\circ }\) for the TSX descending pass acquisitions over Delft. Hypothesis testing (OMT) was carried out as stated in Sect. 3.2, and as a result, the estimated positions of CR6 and CR7 were found to represent their ground truth positions with a 0.01 level of significance (Fig. 10b, c).

CR7 exhibited better positioning capability (with a smaller error ellipsoid) compared to CR6 due to its higher signal-to-noise ratio as seen in Fig. 8b. The ground truth 3D position of corner reflectors was plotted in black for comparison. It can be seen that the error ellipsoid (in blue) intersects with the ground truth position (in black), demonstrating our proposed methodology. This demonstrates that positional corrections and 3D modeling make it possible to identify the origin of radar reflections, in this case a known trihedral corner reflector object.

Fig. 11
figure 11

Demonstration of 3D absolute positioning and error ellipsoid concept for a coherent scatterer (a metal pole in this case) in a Google Earth Street View map (GoogleInc. 2015). Here, the error ellipsoid is outlined by discrete points to ease visualization. a PS deformation rate (in mm/year) map. The scatterer of interest (a PS on a lamp pole) is highlighted in magenta. b 3D absolute position with error ellipsoids (blue: \(3\sigma \) and green: \(1\sigma \)). The slant range (line of sight) viewing geometry is marked in red and the ellipsoid’s center is indicated in black

Fig. 12
figure 12

Demonstration of 3D absolute positioning and error ellipsoid concept for coherent scatterers using a 3D building model.a Geometry of a building of interest in a Google Earth map (GoogleInc. , 2015). b 3D building model constructed from LiDAR data. c Coherent scatterers along with their error ellipsoids drawn in blue with \(1\sigma \) confidence. d Error ellipsoids seen from the side. e Zoomed to visualize scatterers with ellipsoids intersecting at roof level

5.4 3D absolute positioning and its uncertainty for (non-CR) coherent scatterers

As explained in Sect. 5.3, TerraSAR-X SM acquisitions covering Delft were processed using PSI. Here, the 3D positioning ability of opportunistic (non-CR) coherent scatterers was studied. The methodology proposed in Sects. 2.4 and 2.5 was applied to all coherent scatterers in the image and for each scatterer the uncertainty in the range, azimuth and cross-range were obtained from Eqs. (13), (14), and (16), respectively. The results are presented for two typical situations:

  1. i.

    A single isolated radar target (a pole) was selected and its improved (after corrections) 3D position with error ellipsoids (blue \(3\sigma \) and green \(1\sigma \)) are drawn over a Google Earth Street View map as illustrated in Fig. 11. The ratio of ellipsoid axis lengths was 1/2/22 with \(\sigma _r = 0.128\) m observed. From its 3D position and error ellipsoid, based on its intersection with a lamp-post, we were able to associate the radar scatterer with an object. The precision of the estimated cross-range of the lamp-post was found to be better than the CR, which we attribute to the poor stability of the CR structure.

  2. ii.

    A complex urban environment (see Fig. 12a) with a 3D building model as shown in Fig. 12b was selected. The 3D building model was constructed using high quality LiDAR data from Lesparre and Gorte (2012). The improved 3D positions along with the error ellipsoid are shown (in blue color) for a set of coherent scatterers in the area (see Fig. 12c) and from a side view perspective in Fig. 12d. Each coherent scatterer had different ellipsoid dimensions, especially visible in the cross-range direction due to different accuracies in the cross-range dimension for each scatterer.

Similar to corner reflectors, the error ellipsoids of coherent scatterers were also cigar-shaped, and elongated in the cross-range direction. These error ellipsoids (drawn with \(1\sigma \) confidence interval) not only represent the quality of the 3D position but also its intersection with objects such as a facade, the roof of buildings, the ground surface, etc., as shown in Fig. 12d and e, helping to associate the effective phase center of the radar scatterers to real-world objects.

6 Outlook and conclusions

In this study, we set out to demonstrate a systematic geodetic procedure to precisely estimate the radar scatterer position and quality description in a geodetic datum. The proposed method was assessed in 2D and 3D with DGPS, tachymetry, and 3D building models.

In the 2D case, the absolute positioning offset for TSX SM images was found to be approximately 1.8 cm in azimuth and 32.3 cm in range. By removing these decimeter-level position biases, we were able to achieve a \(1\sigma \) position accuracy of 6.9 cm in azimuth and 2.2 cm in range. It is inferred that, one tie point (a CR target) is mandatory to demonstrate centimeter accuracy positioning capability. Taking the stochastic properties of measurements, models and noise into account, an improvement of upto 1.3 cm was demonstrated. The results improved mainly for the reflector with low SNR (CR6) in azimuth with an offset of approximately 4.8 cm and a standard deviation of 4.0 cm in range. These independent 2D accuracy estimates were found to be comparable with results reported from other groups and should serve as a benchmark for future TSX SM mode images.

In the 3D case, the positions and error ellipsoids were validated for trihedral corner reflectors. For the CR, absolute positioning offsets of 1.12 m for CR6 and 0.66 m for CR7 were achieved. Their error ellipsoids were cigar-shaped with the ratio of axis lengths 1 / 2 / 129 with \(\hat{\sigma }_r = 0.04\) m (CR6) and 1 / 3 / 213 with \(\hat{\sigma }_r = 0.022\) m (CR7). The CR estimated 3D positions were in accordance with the ground truth positions given by DGPS and tachymetry at a 0.01 level of significance. The intersection of the reflector reference positions with the error ellipsoids justifies the proposed method. Further, the proposed technique was also shown to apply equally well for any (non-CR) coherent scatterer in an urban environment. Despite not using very-high resolution spotlight images, the positioning results achieved in 2D and 3D using TSX stripmap images are very encouraging. Therefore, we strongly believe the proposed improvements will enhance the geodetic capability of InSAR and open the doors for several applications, independent of the availability of spotlight images.

In the current experimental setup, a single tropospheric delay (from a nearby GNSS station) was used for all the scatterers, introducing small errors in the range component, impacting both the 2D and 3D positioning. In the future, combining the relative atmosphere from PSI with GNSS could be used to generate target-specific path delay estimates. It should be noted that the 3D positioning results could be further enhanced by improving the cross-range component estimation.

In our study, the scatterer identification was done by visual inspection. In the future, when a complete 3D city model is available, automated algorithms could be implemented to identify intersections and their associated radar counterparts.