ホーム : 実験室 : ジオ地蔵3.6β

ジオ地蔵 3.6.0β4 ( 2019/10/08 )

はじめに

 3.6では以下の追加修正があります。詳しくは添付文書を参照してください。まだベータバージョンで、仕様変更することもあります。

  • SRVC立体地図の作成をサポート。
  • 4GBを超えるGeoTiff標高データをサポート。
  • 3Dムービーのパフォーマンス向上。
  • 展望図の自動スクロール速度を改善。
  • 基盤地図情報5mメッシュ標高データの海岸線の処理を改善。

ベータ4ではSRVC立体地図で、全体的に画像を明るくし、強調レベル4と5で緩傾斜地をより強調しました。

SRVC立体地図

 地表面の傾斜、地上開度、地下開度から計算した尾根谷度、さらに地表面の曲率を組合わせた地図です。陰影図とは違い地形の方向によらず形状が明瞭にわかり、またステレオ画像と違って、道具も技術も要らずに立体感を感じ取れます。アジア航測(株)の「赤色立体地図」に近いものです。ツールメニューから「SRVC立体地図を作成...」を選択して実行すると別ウインドウに画像を作成します。
 SRVCは 傾斜(Slope)、尾根(Ridge)、谷(Valley)、曲率(Curvature) の頭文字を並べたものです。
 次図は基盤地図情報の5mメッシュ標高データを利用した別府市付近です。(50%スケール)

GeoTiff標高データ

 ファイルサイズが4GBを超えるデータをサポートしたTIFF形式をBigTiffと言います。このようなサイズの標高データもいくつか提供されるているのでサポートしました。
 GeoTiff標高データを読み込むときに、必要以上に時間がかかっていたのを修正しました。

3Dムービー

 Metal2が使える機種(Mojaveをインストール可能な機種が該当します)でパフォーマンスを改善しました。使えない場合は従来通りです。
 機能的な差はほとんどありません。フレームレートに60fpsを追加したことと、データ量の最大値を400x100万までと2倍に拡大したことです。指定するフレームレートは実質的には最大値を指定するもので、ハードウエアの性能次第でより小さい値で動作します。またデータ量に依存します。旧い機種でOpenGLで動作する場合も、60fpsを指定できますが、100万以下くらいのデータ量でないと60fpsは出ないでしょう。

  3D Movie Hakone
 ウインドウの下に情報表示欄を追加しました。 回転、フライト、船舶の各モードごとに表示内容は異なります。表示のアップデートは0.5秒毎です。

フレームレートについて

 当プログラムでは、指定した範囲のデータを一個のオブジェクトとして作成して、GPUに渡しています。そのためデータ量が多いと必然的に処理に時間がかかりフレームレートも遅くなります。分割して必要な部分だけロードできれば良いのでしょうが、今後の課題です。
 上図はデータ量が 9.4 x 100万 で、MacBook pro 13" late 2013 core i5 2.6GHz 内蔵GPU ( Intel iris ) での値です。 3 x 100万 くらい以下なら 60 fps が出ます。iMac 21.5" 2019 core i5 3.0GHz Radeon Pro 560X では 14.0 x 100万 くらい以下なら 60 fps が出ます。20 fps が出れば、カクカクしないで違和感なく見られると思います。もっと高速なGPUや、eGPUが使えるときに、どのくらいの性能が出るかは試せる環境が無いので全く判りません。
 最大 40 x 100万 までのデータ量を指定できますが、GPUが非力なMacの場合、正しく描画できず空だけが見えることがあります。その場合は、指定範囲を狭くしてデータ量を減らしてください。

展望図の自動スクロール

 操作は全く変わりませんが、Metal2が使える機種では、Metalを使用して自動スクロールを実行します。独立型GPUを備えたMacでMojave環境で実行したとき顕著に差が出ます。ただし画像の横幅が16000ドット以下です。Metalのテクスチャーマップの最大サイズが16384ピクセルなので、16000に設定しました。これを超えるときは従来のままです。画像を分割すると、途端にアルゴリズムが複雑になるので、取り敢えずはこのままです。

海岸線処理の改善

 基盤地図情報5mメッシュ標高データは、海とデータ無し領域がどちらも-999mで区別がつきません。今回、隣接する陸地が10m以下で-3m以上の場合海とみなして処理するようにしました。
 下図は神奈川県の江の島を333%で表示したもので、右側が今回ものです。

  

 基盤地図情報だけでなく、海の指定がない標高データに適用しますが、読み込み時に環境設定で「DEMに海の指示がないとき0mを海とみなす」が選択されていると適用から除外されます。ま、海とデータ無し領域を区別しないデータを他に知りませんが。
 海岸付近にマイナスの標高データがある場合、綺麗に描画できません。その場合、0m以下を海の色にすればさらに改善されます。基盤地図情報の5mメッシュでは、標高データの取得時に自動処理している関係で、海岸がマイナス標高になっているものがかなりあります。

ダウンロード GeoJizoh_360b4.zip (9.1 MB)

©Copyright 2019, Yoshiaki Katayanagi.