用 QGIS 自製 XYZ 正射影像圖磚 (Tiles)
空間地理分析 (GIS) 相關從業人員在進行結案報告時,通常是以原始 tif 或 jpg 正射影像 (Orthophoto) 的形式將檔案交給業主,不過業界永遠都會有例外。
「能不能把它做成 Google Map 那樣子?」委員在期中審查時問道。
「 Google Map 的哪樣子?」經理一臉疑惑
「就是阿,那個檔案每次都開很慢,有沒有辦法讓它更快一些?」滿頭白髮的審查委員,右手不耐煩的在空中劃著意義不明的手勢加強語氣。
其實造成 ArcGIS、QGIS 載入和開啟速度慢的原因,除了影像檔案太大之外,不同的壓縮格式 (jpg,png,ecw,j2k,jp2) 也會影響 zoom in 的顯示速度。
除了砸錢加強硬體效能 (升級 CPU、使用 SSD 硬碟) 之外,本文糊塗流浪貓將介紹如何將正射影像轉換成圖磚 (Tiles) 來改善顯示速度和效率。甚至在區域網路建立共享的網路圖磚來提昇部門產圖的效率,就不用整天在那邊借隨身硬碟跑來跑去摳檔,更可以省下複製檔案所浪費的時間 (2.3TB 的正射影像真的會摳到天荒地老)。
XYZ 圖磚產生器
Processing Toolbox > Generate XYZ tiles (Directory)
Extent : Use Draw on Canvas 於地圖上選擇目標。
Minimum zoom : 0
Maximum zoom :20
Tile format : PNG (透明底圖)、JPG(不透明)習翠維尼
執行前關閉其他圖層,避免連底圖也一併產生圖磚。
於QGIS中加入 XYZ 圖層
Browser > XYZ Tiles New Connection
Max. Zoom Level: 20
URL:
file:////home/user/Orthophoto/map000/{z}/{x}/{y}.jpg
成果
最後就能產出一塊像Google Map 那樣縮放顯示超快速、檔案相對輕巧的正射影像圖磚了。
檔案格式
JPG 所佔的空間比較小,但它不支援透明底圖 (Transparence),因此會產生白邊。PNG 支援透明圖層,可用影像處理軟體進一步壓縮(Level:9),但壓縮幅度不大,請各位斟酌使用。中國武漢習肺炎
壓縮測試
PNG: 392.1mb
PNG: 343.4mb (compress)
JPG: 133.4mb