Container stack height estimation from SAR shadow geometry
High-resolution SAR imagery casts measurable radar shadows behind container stacks. Trigonometry converts shadow length and sensor incidence angle into tier count, extending occupancy measurement to true volumetric utilisation.
Sensors
- ICEYE Spotlight SAR: Achieves approximately 0.5 m ground resolution in Spot Fine mode, with tasking latency typically under 24 hours and a growing constellation enabling revisit of major ports multiple times per day. X-band (9.65 GHz) penetrates cloud and operates day or night.
- Capella Space Spotlight SAR: Delivers 0.35 m resolution in Spotlight mode at X-band. Fine enough to resolve individual container widths (2.44 m standard ISO), making shadow-edge detection reliable even for two-tier stacks.
- Umbra SAR: Offers 0.25 m resolution in its highest-resolution modes, currently among the finest commercially available. Shadow length precision scales directly with resolution; at 0.25 m, a single-tier height error is sub-pixel at typical incidence angles.
- Sentinel-1 IW SAR: Free, 6-day repeat at 10 m resolution. Insufficient for shadow-based height estimation of individual stacks, but useful as a baseline for yard footprint extent and change detection to trigger commercial tasking.
What a radar shadow actually measures
SAR sensors illuminate a scene from the side at a known incidence angle, typically between 20° and 45° for commercial spotlight modes. Any object taller than its neighbours casts a shadow in the range direction where the radar signal cannot reach. The shadow length on the ground, measured in pixels and converted to metres using the image's ground-sample distance, relates to object height by a simple trigonometric identity: height equals shadow length multiplied by the tangent of the depression angle (the complement of the incidence angle). This is not an approximation; it is geometry.
A standard ISO shipping container is 2.591 m tall. Stack two, and the combined height is approximately 5.2 m; stack five, and it reaches 13 m. At a 35° incidence angle, a five-tier stack casts a ground shadow of roughly 18.6 m. At 0.5 m resolution, that shadow spans 37 pixels. The difference between a four-tier and a five-tier stack is about 3.7 m of shadow, or seven pixels at that resolution. Detectable, provided the image is sharp enough and the stack edge is clean.
Why cloud cover makes this a SAR problem, not an optical one
The world's busiest transhipment hubs sit in persistently cloudy regions. Singapore averages cloud cover on roughly 70 per cent of daylight hours. Colombo, Port Klang and Tanjung Pelepas are similarly affected. Very-high-resolution optical satellites such as Maxar WorldView or Airbus Pléiades can resolve individual containers at 30 cm, but a single overcast day defeats them entirely. SAR is indifferent to cloud.
Night operations matter too. Terminals do not pause at dusk. A SAR sensor tasked at 02:00 local time captures the same shadow geometry as one tasked at midday, which means peak-shift yard states, often the most commercially interesting, are accessible. No optical system can offer that without thermal infrared, which lacks the resolution for this application at any commercially available cadence.
The limits are real and worth stating plainly
Shadow-based height estimation breaks down in several conditions. First, closely packed stacks occlude each other's shadows; a row of five-tier stacks will shadow the row behind it, making the second row's height ambiguous. Processing must account for occlusion geometry explicitly. Second, incidence angles shallower than about 20° produce very long shadows that overlap adjacent rows; angles steeper than 45° compress shadows to the point where tier-count discrimination becomes unreliable. Most commercial spotlight products operate comfortably in the 25° to 40° window, but the buyer should confirm the acquisition geometry before commissioning analysis.
Third, containers are not perfectly uniform in height. High-cube containers are 2.896 m tall rather than 2.591 m. A yard mixing standard and high-cube units introduces a height ambiguity of roughly 30 cm per tier, which can shift a tier-count estimate by one at the margins. Ground-truth calibration from a known-height stack in the same image corrects for this, but it requires that at least one stack's tier count be known independently. Finally, at 0.5 m resolution, very short stacks of one or two tiers produce shadows only a few pixels long, and measurement uncertainty is proportionally large. Sub-0.5 m imagery, such as Capella or Umbra's finest modes, substantially reduces this floor.
From tier count to throughput signal
A single SAR pass gives a snapshot of volumetric utilisation across the yard. Repeated passes, say three or four per week at a major hub, build a time series. Rising average stack height across a terminal's import blocks, sustained over several days, is a reliable signal of dwell-time pressure: containers are not being collected. Falling heights in export blocks ahead of a vessel arrival indicate active loading draws. Neither signal is visible in gate-count data alone, and neither requires access to the terminal's own TOS.
The analytic product is therefore not just a number. It is a spatial map of tier counts at block resolution, updated at tasking cadence, with a derived utilisation index expressed as a fraction of the yard's physical stacking limit. Most terminals operate a nominal maximum of four or five tiers for safety; the ratio of observed mean height to that maximum is a capacity-pressure index that can be tracked across competing hubs without any cooperation from the terminal operator.
Satellize applies this method class within its analytics stack, which runs across open and commercially tasked constellations. The approach is methodologically similar to the shadow-geometry work underpinning its Tonga crop-estimation programme, where object-level feature extraction from imagery feeds a quantitative output rather than a qualitative map.
Acquisition strategy and cost discipline
Sub-metre SAR tasking is not free. A Capella or Umbra Spotlight collect costs meaningfully more per square kilometre than a Sentinel-1 IW swath. The practical answer is a tiered strategy: use Sentinel-1 at no cost to monitor yard footprint and detect gross changes in backscatter intensity, which correlates loosely with stack density. When Sentinel-1 signals an anomaly, trigger a commercial collect for height estimation. This keeps the expensive imagery reserved for moments of genuine analytical interest.
Archive depth is a further consideration. ICEYE and Capella have been operating at sub-metre resolution since 2019 and 2020 respectively. Umbra's archive extends from 2021. That gives two to four years of retrospective height data for major ports, enough to establish seasonal baselines and identify structural changes in utilisation patterns. For ports with limited historical optical coverage due to cloud, this archive may represent the only quantitative volumetric record that exists.
Typical figures
| Spatial resolution (operational floor for this method) | 0.25 m to 0.5 m (Umbra, Capella, ICEYE Spotlight modes); 1 m is marginal for two-tier discrimination |
| SAR frequency | X-band (9.3 to 9.65 GHz) for all three primary commercial systems |
| Incidence angle range (usable for shadow method) | 25° to 40°; outside this window shadow overlap or compression degrades tier-count accuracy |
| Minimum detectable height difference | Approximately one container tier (2.6 m) at 0.5 m resolution; sub-tier discrimination possible at 0.25 m |
| Revisit at major hubs | ICEYE: multiple times daily with full constellation; Capella: 1 to 2 times daily at high-priority targets; Umbra: daily to sub-daily |
| Tasking latency | Typically 12 to 24 hours from order to collect for priority tasking; same-day possible |
| Archive depth | ICEYE from 2019; Capella from 2020; Umbra from 2021; Sentinel-1 (coarser, footprint only) from 2014 |
| Weather and illumination dependency | None. SAR operates through cloud, rain and at night |
| Typical yard coverage per collect | Spotlight scenes: 5 km x 5 km to 10 km x 10 km, sufficient for most single-terminal footprints |
| Deliverable formats | GeoTIFF height raster, GeoJSON block-level tier-count polygons, CSV utilisation time series |
Analytics Satellize can run
| Per-block tier-count map | SAR shadow length measurement with trigonometric inversion at known incidence angle; shadow edge detected by range-direction intensity gradient | GeoTIFF raster and GeoJSON polygon layer, one file per collect, with tier count and uncertainty estimate per storage block |
| Yard volumetric utilisation index | Mean observed tier height divided by terminal's nominal maximum stacking height, derived from block-level tier map | Single scalar per terminal per collect, delivered as CSV time series or dashboard feed |
| Dwell-pressure alert | Statistical threshold on utilisation index trend over rolling five-collect window; alert triggered when index exceeds defined percentile relative to seasonal baseline | Email or API alert with supporting SAR thumbnail and utilisation chart |
| Multi-terminal benchmarking report | Parallel processing of same-period collects across competing hubs; normalised utilisation index enables cross-terminal comparison without access to operator data | Weekly PDF or structured JSON report covering named terminal set |
| Retrospective utilisation baseline | Archive processing of available sub-metre SAR collects to establish seasonal and cyclical height patterns; cloud-gap filling not required as SAR is weather-independent | Historical CSV time series per terminal, with annotated events (vessel calls, disruptions) where corroborated by AIS |
| Change-triggered tasking recommendation | Sentinel-1 backscatter anomaly detection used as low-cost screening layer; significant change triggers commercial spotlight tasking recommendation | Automated tasking recommendation with Sentinel-1 evidence image and cost estimate for follow-on collect |
Who does the work
We can get this done for you. Satellize runs its own analyst desk and a strong science team. You do not buy a data feed and work out what it means; our people source the imagery, run the analysis described on this page, and hand you the answer with its confidence limits stated. Discuss this requirement.