TL;DR
- QGIS 3.24から、MapTiler Terrain RGBなどの標高タイルをサポート
- 標高タイルをシームレスにDEMとして扱える
- 3DビューやDEMの入手が簡単に
QGIS 3.24の目玉機能「MapTiler Terrain RGB」のサポート
Terrain RGB
とは、標高値を所定のルールでRGB値にエンコードした画像からなるラスタータイルです。QGISは3.24からMapTiler Terrain RGB
をサポートします。これはつまり、ラスタータイル画像のRGB値から標高値を復元してDEMとして扱えるようになるということです。
Terrain RGB
は、配信する会社によって、MapTiler Terrain RGBと呼ばれたりMapbox Terrain RGBと呼ばれたりしますが、Terrain RGBとしての規格はどちらも同じです。QGISはTerrain RGBだけでなくTerrarium RGB
もサポートしており、こちらも理屈は同じですが、エンコードのルールが異なります。
標高値とRGB値の変換ルールについては下記の記事を参照
https://qiita.com/Kanahiro/items/e22594b738655a189c1d#rgb%E5%80%A4%E3%81%AE%E6%A8%99%E9%AB%98%E6%8F%9B%E7%AE%97
MapTiler Terrain RGBを見てみる
MapTilerのタイル画像を使うにはアカウント登録が必要です。
さて、MapTiler Terrain RGBのタイルURLは下記になります、YOUR_ACCESS_TOKEN
は利用者ごとに付与されるキーです。アカウント登録後にここで確認できます。
https://api.maptiler.com/tiles/terrain-rgb/{z}/{x}/{y}.png?key=<YOUR_ACCESS_KEY>
URLがわかったら、下記の手順でXYZ Tilesに新規接続を作成します。
MapTiler Terrain RGBはズームレベル0-12で提供されています
タイル画像を見てみます。
なんとなく地形っぽくは見えますが、見慣れない色合いです。
TerrainRGBをDEMとして表示する
ではMapTiler Terrain RGB
をDEMとして表示してみます。
XYZ接続のInterpretation
でMapTiler Terrain RGB
を選択します。
この状態で再度タイルを見てみます。
グレースケールの、割と見慣れた色合いの標高データとなりました。
ただちょっと見た目が淡すぎます。というのも、Terrain RGBの標高の定義域の下限-10000mから、地球の最大標高をカバーする9000mまでの値で白黒のグラデーションをしているためですね(要は分解能が大きすぎる)。見た目だけの話なので、解析だとかには影響ないのですが、とりあえず0-4000mで色塗りしてみます。レイヤスタイルパネルで最小・最大値を書き換えます。
富士山周辺です、見慣れた感じになりました。
ただDEMっぽい見た目になるだけでは面白くありません。実際、このタイルDEMは3D表示や解析に利用していくことが可能です。
タイルDEMで3Dビュー
地理院タイル空中写真を追加しておき、タイルDEMは非表示としておきます。
3Dマップビューを開きます
設定を開きます
「地形」を画像のとおり設定します
すると3Dで地形が表示されます
タイルの切れ目がやや気になりますが、これだけ手軽に3D表示が実現出来るのはうれしい
タイルDEMをGeoTIFFとして切り出す
タイルDEMを切り出してGeoTIFF形式のDEMとすることができます。
ここで、MapTiler Terrain RGBの最大ズームレベルは12で、タイル解像度が512pxなので、おおむね20m弱程度の地理解像度であること、および、標高値の分解能が0.1mであることに留意する必要があります。
下記の手順でレイヤーをエクスポートすれば、GeoTIFF形式のDEMが得られます。
領域はキャンバスの領域とするのが簡単です。解像度はネイティブに近い縦横20mとしました。
するとこのようなGeoTIFFが得られました。
これで煮るなり焼くなり出来ます…が注意点として、得られるDEMにやや縞があります、傾斜を計算してみます。
富士山山頂付近ですが、一定間隔で傾斜が大きくなる縞が見えます。なので、精密な解析には使わない、とか、リサンプリングしてならす、といったアプローチが必要でしょう。
データソースの問題かQGISの問題かまでは調べていません、改善に期待
終わりに
Terrain RGBは、結構前からある規格な割に、今回紹介したQGISやMapbox GL JSでの3D表示など最近いろいろと活用の幅が広がってきています(ぜひ地理院標高タイルもTerrain RGBで配信されるようになってほしいですね)。