Back to blog
Digital Twin
Forest Management
Quebec

Building a Digital Twin of Quebec's Forests from 115,000 Orthophotos

As a side exploration, we tested our pipeline against one of the richest public geospatial datasets in North America: 115,000 orthophotos from Quebec, with incompatible projections, color mismatches, and coverage gaps. Here is what we learned.

Stéphane Barbot
·9 min read
Contact
Raw terrain, 10 m resolution. Quebec orthophotos + Sentinel-2 + SRTM.
Raw terrain, 10 m resolution. Quebec orthophotos + Sentinel-2 + SRTM.

The foundation before everything else

A territorial digital twin lives or dies by its data. Merging thousands of heterogeneous orthophoto tiles, absorbing incompatible coordinate reference systems, filling coverage gaps, harmonizing colors across sensors and vintages. It is the least visible work, but the most structurally important. Until this foundation is solid, nothing that follows (3D rendering, multi-scale navigation, territorial analysis) holds up.

This post is a progress report on that phase, applied to Quebec's territory.

Where we stand today

The TerraLab pipeline: one scene, every source

TerraLab-Twin is a planetary virtual globe. Its job is to fuse heterogeneous geospatial sources in real time (public orthophotos, high-resolution drone orthos, digital terrain models, vector layers, satellite imagery) onto a single navigable 3D terrain, from the planetary scale down to the parcel level.

Three properties define the state of the art we are targeting:

  • Scale continuity: from all of Quebec (10,000 km diagonal) down to a 50 m parcel, with no breaks, no CRS changes, and no seams at administrative boundaries.
  • Dynamic multi-source fusion: multiple sources of varying quality and resolution coexist on the same terrain and are selected on the fly based on the area, the requested resolution, and data availability.
  • Full upstream abstraction: the end user never sees a file format, an EPSG code, or an MTM zone. They just navigate.

All the work described below is about delivering on these three properties for a concrete case: Quebec's territory.

MRNF tiles fused by TerraLab WorldMapServer at 10 m MRNF tiles fused by TerraLab WorldMapServer. Continuous terrain, no visible seams between original sheets.

What makes Quebec's data unique

Quebec offers one of the richest public datasets in North America for this kind of work. The Quebec Ministry of Natural Resources and Forests (MRNF, formerly MERN) publishes over 115,000 orthophoto tiles, several hundred gigabytes of data in total, at a native resolution of 20 to 30 cm per pixel. That is roughly thirty times finer than the Sentinel-2 satellite imagery used as a complement.

MRNF aerial orthophoto at native resolution over a Quebec forest sector MRNF orthophoto at native 20-30 cm resolution over a Quebec forest sector.

This richness comes with its own challenges: a heterogeneous family of map projections, multiple file formats, imagery captured across several years and seasons. This is precisely the kind of dataset a virtual globe is designed for, where a traditional GIS tool would ask the user to pick a projection, a season, a format, and live with the consequences.

And we know how to handle this scale. The 115,000 tiles, the hundreds of gigabytes, the mixed formats, the multi-vintage data: the TerraLab-Twin architecture is designed to absorb this volume natively, on a developer workstation, without requiring any special infrastructure.

Original MRNF tile at 20 cm resolution Original MRNF tile at 20 cm. Trees, roads, and parcels clearly visible before any processing.

The painful part: map projections

I want to pause on this point, because for anyone who has worked in geospatial, this is an operational nightmare.

Quebec's public data does not arrive in a single projection. It comes as a family of NAD83 variants: a flavor of Quebec Lambert (EPSG:32198), more modern CSRS-based variants, and ten MTM zones (Modified Transverse Mercator) that partition the territory for historical cartographic reasons. In practice, each tile can arrive in a different coordinate reference system. Every datum has its gotchas. Every tool in the geospatial chain has its own legacy behavior around the PROJ library. It is extremely common in production to see a pipeline fail silently because a stale installation returns transformations that are off by ten meters or more.

This is precisely what a virtual globe abstracts away. TerraLab-Twin knows only one final projection: WGS84 on the planetary ellipsoid. All the projective complexity is absorbed upstream, in the ingestion pipeline. The end user never sees an EPSG code. They see a continuous, navigable 3D territory, from all of Quebec down to a single forest parcel, with nothing breaking at zone boundaries.

Once this hard problem is solved, everything else becomes possible: multi-source fusion, continuous navigation, real-time 3D.

Internal tiling and fusion tool, Quebec sources to WGS84 Internal tiling tool: each source is reprojected to WGS84, then composited into the 3D scene.

Why WGS84 in a virtual globe, and why it matters

The choice of WGS84 on the ellipsoid is not arbitrary. A classical map projection is, by construction, a compromise: it flattens a 3D object (the Earth's ellipsoid) onto a 2D plane, which always introduces distortion (in angles, areas, distances, or all three). Acceptable at small scales, intolerable at continental scale.

A virtual globe sidesteps the problem by keeping things in 3D all the way through. The engine works on the real ellipsoid, not on a planar projection. The direct consequence for the user: you can zoom freely from all of Quebec down to a 50 m parcel, without switching CRS, without seams at MTM zone boundaries, without polar stretching, without edge alignment artifacts. This is what makes the navigation continuous, and it is something no traditional 2D GIS tool can offer.

Color calibration and fusion: the visual challenge

Once projections are handled, the next challenge is visual. A 3D digital twin of Quebec does not fuse one, but three complementary imagery sources:

  1. MRNF aerial orthophoto: priority 1, 20-30 cm, the detail layer
  2. Sentinel-2 satellite imagery: priority 2, 10 m, fills areas without aerial coverage (typically coastal regions)
  3. Blue Marble planetary basemap: ultimate fallback, ensures no area is ever blank

Each of these three sources has its own colorimetric signature: different sensors, different acquisition conditions, different capture dates, different upstream processing. The challenge is not just displaying them together, but making sure that boundaries remain invisible to the eye and that neighboring tiles share the same color range.

Some MRNF tiles are also incomplete: at the edges of flight campaigns, aerial coverage stops in the middle of a tile, leaving nodata zones. Without processing, these gaps show up as black bands in the 3D terrain. This is another reason the pipeline must fuse multiple sources: filling these gaps with Sentinel-2 wherever the aerial orthophoto falls short.

Incomplete MRNF tile with nodata zones MRNF tile with partial coverage. The pipeline fills gaps with Sentinel-2 automatically.

On the Sentinel-2 side, we composite using a multi-date median over a fixed reflectance range: this removes outliers (clouds, shadows, atypical days) and ensures all tiles share the same calibration.

On the Quebec side, some older flight campaigns (notably 2015) exhibit a systematic blue tint. The exact origin of the defect is not documented by the data provider, but the abnormally high blue-to-red ratio (B/R ~1.30 versus ~0.88 for normal campaigns) affects a large portion of tiles from that year. The pipeline filters by season (summer acquisitions for consistent green tones), but the problem persists for areas where only 2015 tiles exist.

Several approaches are possible for these areas: automatic color correction (histogram matching between neighboring tiles), or replacement with satellite imagery (Sentinel-2 as a first resort, free at 10 m, or commercial sources such as Airbus Pleiades and Maxar for finer resolution, but at significant cost). None of these options is ideal on its own. The most likely combination is filtering by vintage coupled with a Sentinel-2 fallback for areas with no alternative. On the positive side, the MRNF continues to publish new aerial campaigns regularly (2023 and 2024 orthophotos are already available as open data for certain regions). Over time, areas covered only by defective 2015 tiles are likely to be replaced by more recent and better-calibrated acquisitions.

2015 blue-tinted vs 2016 normal comparison Top: MRNF 2015 tile with blue tint (B/R ~1.30). Bottom: 2016 with normal color (B/R ~0.88).

Patchwork of correctly calibrated and blue-tinted tiles in the mosaic Blue-tinted 2015 tiles next to normally calibrated ones: visible patchwork breaking terrain homogeneity.

At the boundary between Quebec and Sentinel-2 sources, the geometric transition is imperceptible. The colorimetric transition, however, remains visible in some coastal areas. This is a deliberate trade-off: pixel-level blending across hundreds of kilometers of coastline would represent disproportionate processing cost relative to the visual gain, especially at the navigation scales typical of the digital twin. The pipeline prioritizes coverage and continuity over cosmetic perfection at the margins.

Quebec + Sentinel-2 composite over the Gaspe coast Top: Sentinel-2 alone. Bottom: Quebec + Sentinel-2 composite. Blending zone visible along the shoreline.

The pipeline includes a color matching step that smooths these transitions. The example below from the Riviere-du-Loup area shows the difference: without color matching, the boundary between the Quebec orthophoto and Sentinel-2 is clearly visible. With color matching, the transition becomes much more subtle.

Riviere-du-Loup, before/after color matching Riviere-du-Loup. Top: without color matching. Bottom: with color matching.

Wide view of the Gaspe Peninsula synthesizing the multi-source fusion challenges Gaspe Peninsula, wide view. Cyan zone (left) = blue-tinted 2015 tiles, mainland = Quebec orthophoto, ocean = Sentinel-2.

Where things stand

As of April 7, 2026, we are on track. The NAD83 family is absorbed upstream, and the ingestion pipeline is progressively processing the ~115,000 MRNF tiles. Territory coverage is partial at this stage: areas already processed (for example the Gaspe Peninsula) are navigable with the Quebec orthophoto, while other areas are filled with Sentinel-2 in the meantime. The three-layer compositing has been validated on the Gaspe coast, and the data volume runs comfortably on a standard developer workstation.

The engine currently outputs at 10 m per pixel. This is a deliberate choice for this first iteration: working at the global scale first lets us validate the entire pipeline (projections, fusion, color calibration, data volume) before increasing resolution zone by zone. The source MRNF data at 20-30 cm is there. Refinement down to 30 cm will happen on a case-by-case basis, driven by need.

On the elevation side, the 3D terrain relies on an SRTM (Shuttle Radar Topography Mission) Digital Elevation Model. It is not the finest source available, but it covers the entire territory and allows us to validate the full chain. A switch to more precise Quebec DTMs is feasible for priority areas.

Here is the current result: the Quebec orthophoto at 10 m draped over the SRTM relief, with no 3D vegetation and no vector data. This is the raw terrain foundation on which everything else will be built.

Early-stage 3D terrain, 10 m orthophoto + SRTM First 3D views of Quebec. 10 m ortho + SRTM relief. Top to bottom: atmospheric scattering, direct lighting, no lighting.

An important takeaway: rendering quality cannot exceed source data quality. Where the MRNF data is clean and properly calibrated (post-2015 campaigns), the result is excellent. Where it suffers from defects (blue-tinted 2015 campaigns), the pipeline cannot invent correct color calibration.

What's live today:

  • Quebec aerial orthophoto (MRNF) fused with Sentinel-2
  • 3D relief via SRTM
  • Full pipeline validated on the Gaspe coast

Coming next:

  • 20-30 cm resolution at close zoom
  • OSM Quebec vector data
  • 3D trees across Quebec's territory

Have a geospatial project in mind?

We build AI tools for QGIS and custom 3D digital twins. Tell us about your project.