Dataset & Setup
Same mini-series setup: 20 drives, ~1 h each, in Darmstadt and Frankfurt. Javad Triumph-LS GNSS + Xsens MTi G-700 MEMS IMU. Processed with AlgoNav’s tightly-coupled Network-PPK, IMU, odometry, and motion constraints.
Forest Is Not Just “A Bit Of Attenuation”
Trees are often treated as a minor nuisance for GNSS: some attenuation, maybe a few centimetres extra noise. That is true for single trees. But dense canopy – e.g. a road running through mixed deciduous forest in central Germany – changes everything: a wet canopy in summer can block or severely attenuate signals above ~15–20 dB below clear sky. That pushes weaker signals into noise, and the surviving satellites are those with the highest elevation angles, where the foliage path is shortest.
The result: you still see many satellites. Receiver masks don’t cut them. C/N0 values are lower, but often still above typical thresholds (30–35 dB-Hz). But what changed is geometry: the surviving satellites cluster toward the zenith. Lateral (cross-track) geometry from the low-elevation, side-looking satellites – the ones that actually constrain horizontal position – is degraded.
Geometry: Many Satellites But Still Poor Position
This is a failure mode that classical DOP values highlight well. Imagine 10 satellites visible, but 8 of them are between 60° and 90° elevation. The HDOP is fine-looking at first glance, because the number of satellites is large. But the lateral DOP component is very poor: almost all satellites contribute the same geometric direction (up). North-south may still be partially observed (satellites can be spread in azimuth at high elevation), but east-west vs. north-south separation collapses.
In practice, what that means:
- Vertical looks fine – lots of near-zenith data.
- Along-track may be OK – if the road runs roughly N-S, you get some azimuth spread.
- Cross-track is weak – the two or three side satellites that would fix lateral are attenuated.
The Trap: A Single Helpful-Looking Side Satellite
Here is the dangerous pattern: one or two side satellites survive with moderate C/N0 (e.g. 32 dB-Hz). They are the only ones providing lateral information. The estimator “likes” them because they improve geometry a lot.
But what if those measurements are biased? Tree canopy causes diffraction, not just attenuation. The signal may arrive via a slightly bent path. The code/phase measurements carry a bias that can be centimetres to decimetres. Since there is no redundancy laterally, there is no way to detect that bias from single-epoch residuals.
This is where the Minimum Detectable Bias (MDB) concept helps. MDB tells you: “Given the current geometry and measurement noise, how large a bias on this observation could go undetected at a given confidence level?”
When MDB for a lateral satellite is large (i.e. you cannot detect even a big bias), you should not trust that satellite’s lateral contribution at face value. A reliability-first filter caps the effective weight of such measurements – or excludes them – rather than letting them drive the solution sideways.
What A Reliability-First Filter Does
Instead of the usual approach (use all satellites that pass a residual check, weight by elevation or C/N0), a reliability-first filter adds:
- Compute the MDB for each observation in the current geometry.
- If MDB > threshold (e.g. you cannot detect a 5 cm bias), reduce the weight. The observation contributes availability but not reliability.
- Check the effective redundancy per observation – can it actually be tested?
- In the extreme (single lateral satellite, no redundancy), use it only for loose bounding, not for state update.
This approach trades a bit of formal precision (your covariance will be larger because you used fewer constraints) for actual reliability (fewer undetected biases driving the result). In forest, that trade is almost always the right one.
What We See In Our Data
In our 20-drive dataset, forest segments appear regularly on the routes between Darmstadt and Frankfurt (B3, B44 corridors, Stadtwald sections). Key observations:
- Satellite count stays high. 10–15 satellites after mask. Receivers do not flag any problems.
- C/N0 drops 5–12 dB compared to open sky. Worse in summer (full canopy) than winter (bare branches).
- Cross-track scatter increases 3–5×. A “standard” PPK with elevation weighting alone shows lateral wobble of 5–15 cm that should not be there.
- MDB-aware processing reduces that wobble by down-weighting the biased side satellites. Formal precision is slightly worse, but actual accuracy improves.
- Tightly-coupled IMU helps. The IMU provides lateral inertia between clean GNSS windows (clearings, road crossings). Short clean windows are enough to re-calibrate when the filter didn’t accumulate lateral bias during the forest stretch.
Practical Takeaways
- Don’t trust satellite count under canopy. Many satellites ≠ good geometry. Check per-channel C/N0 and per-axis DOP, not just PDOP.
- MDB-based weighting matters most for isolated geometry. Exactly the case in forest: a few low-elevation satellites carry all lateral info.
- Seasonal variation is real. Full deciduous canopy in summer vs. bare branches in winter can make a factor-of-2 difference.
- IMU fusion smooths the ride. Without it, every forest-to-clearing transition is a re-convergence event; with IMU, the filter carries state through.
- Post-processing sees the whole picture. In post-processing, you have the full session, can run forward/backward, and can choose the cleanest solution per epoch. Real-time is stuck with the first answer.
What This Means For Your Projects
If your routes include forested roads – survey corridors, rural mapping, pipeline right-of-way – the number of tracked satellites will not warn you. You need a filter that checks whether each satellite is actually testable. Combine MDB-aware GNSS processing with tightly-coupled IMU, let post-processing use both directions in time, and you will get reliable trajectories through canopy segments that otherwise silently degrade.
Urban Challenges Series
- Underpasses
- Forest (this post)
- European Urban Canyon
- Tunnels
- Urban Canyon – classic high-rise (coming soon)