Digital Twin
Forest Management
Quebec

從 115,000 張正射影像打造魁北克森林的 Digital Twin

原始地形,10 公尺解析度。魁北克正射影像 + Sentinel-2 + SRTM。
原始地形,10 公尺解析度。魁北克正射影像 + Sentinel-2 + SRTM。

一切的基礎

一個地域級 Digital Twin 的成敗,完全取決於它背後的資料。整合成千上萬張性質各異的正射影像圖磚、吸收互不相容的座標參考系統、填補覆蓋範圍的缺口、統一不同感測器與不同年份影像之間的色彩。這是最不起眼、卻在結構上最關鍵的工作。只要這個基礎不夠穩固,後面的一切(3D 渲染、多尺度導航、地域分析)都站不住腳。

這篇文章是這個階段的進度報告,聚焦在魁北克的領土範圍。

我們目前的進度

TerraLab 的處理流程:一個場景,涵蓋所有資料來源

TerraLab-Twin 是一個行星級的虛擬地球。它的任務是即時融合各種異質地理空間資料來源(公開正射影像、高解析度無人機正射影像、數位地形模型、向量圖層、衛星影像),整合成單一、可自由導航的 3D 地形,尺度從整個地球一路延伸到單一地籍。

以下三項特性,定義了我們追求的技術水準:

  • 尺度連續性:從整個魁北克(對角線長達 10,000 公里)一路縮放到 50 公尺的地籍範圍,過程中不中斷、不需切換座標參考系統,行政界線之間也不會出現接縫。
  • 動態多來源融合:不同品質、不同解析度的多個資料來源共存在同一片地形上,並依照區域、所需解析度與資料可得性即時動態選用。
  • 上游完全抽象化:終端使用者永遠不會看到檔案格式、EPSG 代碼或 MTM 分區,他們只需要專心導航瀏覽。

以下描述的所有工作,都是為了在一個具體案例,魁北克的領土,實現這三項特性。

TerraLab WorldMapServer 以 10 公尺解析度融合的 MRNF 圖磚 TerraLab WorldMapServer 融合後的 MRNF 圖磚。地形連續一致,原始圖幅之間看不出接縫。

魁北克資料的獨特之處

在這類工作上,魁北克提供了北美最豐富的公開資料集之一。魁北克自然資源與森林部(MRNF,前身為 MERN)發布了超過 115,000 張正射影像圖磚,總資料量達數百 GB,原始解析度為每像素 20 到 30 公分。這比作為輔助資料的 Sentinel-2 衛星影像精細了大約三十倍。

MRNF 空拍正射影像,原始解析度,涵蓋魁北克某一林區 MRNF 正射影像,原始解析度 20-30 公分,涵蓋魁北克某一林區。

這樣的豐富資料也帶來自己的挑戰:五花八門的地圖投影系統、多種檔案格式,以及跨越好幾年、好幾個季節拍攝的影像。這正是虛擬地球最擅長處理的資料型態,因為傳統 GIS 工具通常會要求使用者自己選定一種投影、一個季節、一種格式,然後自行承擔後果。

而這樣的規模,我們有能力處理。 115,000 張圖磚、數百 GB 的資料、混雜的格式、跨年份的影像資料:TerraLab-Twin 的架構天生就是為了吞下這樣的資料量而設計的,而且只需要一台開發者的工作站,不需要任何特殊的基礎設施。

原始 MRNF 圖磚,解析度 20 公分 原始 MRNF 圖磚,解析度 20 公分。未經任何處理,樹木、道路與地籍界線都清晰可見。

最頭痛的部分:地圖投影

我想特別停下來談這一點,因為對任何做過地理空間工作的人來說,這在實務上簡直是一場惡夢

魁北克的公開資料並不是用單一投影系統發布的,而是一整個 NAD83 家族的變體:其中一種是 Quebec Lambert(EPSG:32198),還有更新的 CSRS 基準變體,以及基於歷史地圖繪製理由把領土切分開的十個 MTM 分區(Modified Transverse Mercator)。實際上,每一張圖磚都可能落在不同的座標參考系統裡。每一種基準面都有自己的陷阱;地理空間處理鏈上的每一個工具,對 PROJ 函式庫也都有各自的舊版相容行為。在正式環境中,因為某個過時的安裝版本悄悄回傳誤差十公尺以上的座標轉換,導致整個處理流程無聲失敗,是非常常見的情況。

這正是虛擬地球所抽象掉的問題。TerraLab-Twin 只認得一種最終投影:建立在行星橢球體上的 WGS84。所有投影上的複雜性,都在上游的資料匯入流程中被吸收處理掉。終端使用者永遠看不到 EPSG 代碼,他們看到的是一片連續、可自由導航的 3D 領土,從整個魁北克一路延伸到單一林地地籍,分區交界處也不會有任何斷裂。

一旦解決這個最棘手的難題,接下來的一切都變得可能:多來源融合、連續導航、即時 3D。

內部圖磚化與融合工具,將魁北克資料來源轉換為 WGS84 內部圖磚化工具:每個資料來源先重投影為 WGS84,再合成進入 3D 場景。

為什麼虛擬地球要用 WGS84,以及它的意義

選擇建立在橢球體上的 WGS84,並不是隨意的決定。傳統的地圖投影,就其本質而言,是一種妥協:它把一個 3D 物體(地球橢球體)壓平成 2D 平面,這個過程必然會產生扭曲(角度、面積、距離,或三者皆有)。在小尺度下還能接受,但在洲際尺度下就完全無法容忍。

虛擬地球則是從頭到尾都維持在 3D 空間中,藉此完全避開這個問題。引擎直接運算在真實的橢球體上,而不是平面投影上。對使用者而言,這帶來一個直接的結果:你可以從整個魁北克自由縮放到 50 公尺的地籍範圍,完全不需要切換座標參考系統,MTM 分區交界處不會有接縫,兩極不會出現拉伸變形,邊緣也不會有對齊瑕疵。這就是為什麼導航體驗能夠連續不斷,而這正是傳統 2D GIS 工具做不到的事。

色彩校正與融合:視覺上的挑戰

投影問題處理完之後,下一個挑戰就是視覺呈現。魁北克的 3D digital twin 融合的不是一種,而是三種互補的影像來源

  1. MRNF 空拍正射影像:優先順序第一,解析度 20-30 公分,提供細節層
  2. Sentinel-2 衛星影像:優先順序第二,解析度 10 公尺,用來填補沒有空拍覆蓋的區域(通常是沿海地帶)
  3. Blue Marble 行星級底圖:最後的備援方案,確保任何區域都不會出現空白

這三種資料來源各自有不同的色彩特徵:感測器不同、拍攝條件不同、拍攝日期不同、上游處理方式也不同。挑戰並不只是把它們同時顯示出來,而是要確保接縫在視覺上完全看不出來,並讓相鄰的圖磚共享一致的色彩範圍。

有些 MRNF 圖磚本身也並不完整:在飛行任務的邊緣,空拍覆蓋範圍會在圖磚中間戛然而止,留下無資料(nodata)區域。如果不處理,這些空缺就會在 3D 地形上呈現黑色色帶。這也是為什麼處理流程必須融合多個資料來源的另一個理由:在空拍正射影像不足的地方,用 Sentinel-2 補齊這些缺口。

含有無資料區域的不完整 MRNF 圖磚 覆蓋範圍不完整的 MRNF 圖磚。處理流程會自動用 Sentinel-2 補齊缺口。

在 Sentinel-2 這一側,我們採用固定反射率範圍內的多時期中位數合成:這能去除異常值(雲、陰影、拍攝條件異常的日子),並確保所有圖磚共享同一套校正基準。

在魁北克這一側,部分較舊的飛行任務(尤其是2015 年)呈現出系統性的偏藍色調。資料提供方並未記錄這個缺陷的確切成因,但異常偏高的藍紅比值(B/R 約 1.30,相對於正常任務約 0.88)影響了當年大量的圖磚。處理流程會依季節篩選(挑選夏季拍攝以取得一致的綠色色調),但在只有 2015 年圖磚可用的區域,問題依然存在。

針對這些區域,可行的做法有幾種:自動色彩校正(在相鄰圖磚之間做直方圖比對),或是改用衛星影像取代(Sentinel-2 是免費、10 公尺解析度的優先選項,也可以選用 Airbus Pleiades、Maxar 等商業資料來源取得更細的解析度,但成本相當可觀)。單靠其中任何一種方法都不算理想。最可能的做法,是依拍攝年份篩選,再搭配 Sentinel-2 作為沒有其他選擇時的備援。好消息是,MRNF 仍持續定期發布新的空拍任務(部分地區已經能取得開放資料形式的 2023 與 2024 年正射影像)。隨著時間推進,目前只能靠有缺陷的 2015 年圖磚覆蓋的區域,很有機會被更新、校正更好的影像取代。

2015 年偏藍色調與 2016 年正常色調的比較 上:偏藍色調的 MRNF 2015 年圖磚(B/R 約 1.30)。下:色彩正常的 2016 年圖磚(B/R 約 0.88)。

拼接影像中,校正正常與偏藍圖磚交錯的拼貼效果 偏藍的 2015 年圖磚與校正正常的圖磚相鄰:明顯的拼貼感破壞了地形的一致性。

在魁北克資料與 Sentinel-2 資料的交界處,幾何上的過渡幾乎察覺不到,但色彩上的過渡在部分沿海區域仍然可見。這是一個經過權衡的取捨:要在數百公里長的海岸線上做到像素級的無縫融合,所付出的處理成本,相對於視覺上的提升,並不成比例,尤其是在 digital twin 常見的導航尺度下更是如此。處理流程優先確保覆蓋範圍與連續性,而不是在邊界處追求視覺上的完美。

加斯佩海岸的魁北克 + Sentinel-2 合成影像 上:僅使用 Sentinel-2。下:魁北克 + Sentinel-2 合成影像。海岸線沿線可見融合區域。

處理流程中包含一道**色彩比對(color matching)**步驟,用來柔化這些過渡區域。下方以 Riviere-du-Loup 地區為例,可以看出明顯差異:沒有做色彩比對時,魁北克正射影像與 Sentinel-2 之間的界線非常清楚;做了色彩比對之後,過渡就變得柔和許多。

Riviere-du-Loup 地區,色彩比對前後對比 Riviere-du-Loup。上:未做色彩比對。下:已做色彩比對。

加斯佩半島的大範圍視角,呈現多來源融合的整體挑戰 加斯佩半島,大範圍視角。青色區域(左側)=偏藍色調的 2015 年圖磚,陸地=魁北克正射影像,海洋=Sentinel-2。

現況總結

截至 2026 年 4 月 7 日,進度一切如預期。NAD83 系列座標系統已在上游被完全吸收處理,資料匯入流程也正逐步處理約 115,000 張 MRNF 圖磚。目前領土覆蓋範圍仍是部分完成:已處理完的區域(例如加斯佩半島)已經可以用魁北克正射影像自由導航,其他區域則暫時以 Sentinel-2 填補。三層合成已在加斯佩海岸驗證完成,而且資料量在一台一般規格的開發者工作站上就能順暢運作。

引擎目前的輸出解析度是每像素 10 公尺。這是這一階段刻意的選擇:先在全域尺度上驗證整套處理流程(投影、融合、色彩校正、資料量),再依區域逐步提升解析度。原始的 MRNF 資料本身已經具備 20-30 公分的解析度,未來會依實際需求,逐一針對特定區域細化到 30 公分

在高程資料方面,3D 地形目前依賴 SRTM(Shuttle Radar Topography Mission)數位高程模型。它不是目前可取得中最精細的資料來源,但涵蓋整個領土範圍,足以驗證整條處理鏈。針對優先區域,改用更精確的魁北克數位地形模型(DTM)在技術上是可行的。

以下是目前的成果:10 公尺解析度的魁北克正射影像疊在 SRTM 地形之上,還沒有 3D 植被,也沒有向量資料。這就是後續一切建設所依賴的原始地形基礎。

初期階段的 3D 地形,10 公尺正射影像 + SRTM 魁北克最初的 3D 視角。10 公尺正射影像 + SRTM 地形。從上到下:大氣散射效果、直射光照、無光照。

一個重要的心得是:渲染品質不可能超越原始資料的品質。在 MRNF 資料乾淨、校正得當的地方(2015 年之後的任務),結果非常出色;但在資料本身有缺陷的地方(偏藍色調的 2015 年任務),處理流程也無法憑空生出正確的色彩校正結果。

目前已經上線的內容:

  • 融合 Sentinel-2 的魁北克空拍正射影像(MRNF)
  • 透過 SRTM 呈現的 3D 地形
  • 在加斯佩海岸驗證完成的完整處理流程

接下來的計畫:

  • 近距離縮放時達到 20-30 公分解析度
  • 魁北克 OSM 向量資料
  • 遍佈魁北克全境的 3D 樹木

有地理空間專案的想法嗎?

我們為 QGIS 打造 AI 工具,並客製 3D 數位孿生。告訴我們您的專案。

Written byStéphane Barbot
·2 min read
Contact
從 115,000 張正射影像打造魁北克森林的 Digital Twin