標高データの管理: パート 2:設計およびデータ管理プラン
このワークフローをご覧になる方は主に、さまざまなユーザ コミュニティが標高データにアクセスできるようにしなければならない組織内の画像データ管理者です。このワークフローでは、画像データ管理者が ArcGIS for Desktop を使用してデータを管理し、ArcGIS for Server を使用してデータを 1 つ以上のイメージ サービスとして配信していると想定しています。ただし、このワークフローを利用して、ArcGIS for Desktop だけで標高データの管理と配信を行うこともできます。
このワークフローでは、ラスタのセルベースの標高データ、および LAS ファイルとして格納されている 3D ポイント データを処理することを想定しています(このワークフローでは LAS データセットおよびテレイン データセットの形式も使用できます)。
標高データ管理の一般的な設計は、次のとおりです。それぞれを以下で説明します。
- データ格納(サイズ、要件、場所)
- データの準備(事前処理が必要な場合があります)
- コレクション(ソース)ごとのモザイク データセットの作成
- 各コレクション(マスタ)からのモザイク データセットの作成
- 視覚化、解析、ユーザ アクセスおよび公開(参照)用の異なるモザイク データセットの作成
データ格納
データ格納については、ここでは説明しませんが、要件によっては何らかの計画が必要です。システム アーキテクチャの詳細については、2011 Esri International User Conference のプレゼンテーションのスライド: System Architecture for Large Image Services をご参照ください。
データの整理について少し説明します。データは、プロダクトごとにグループ化したフォルダに整理することが理想です。たとえば、SRTM データは 1 つのフォルダに格納し、NED 1/3 秒角のデータは別のフォルダに格納します。QA/QC や長期的な保守において、これがデータの読み込みに役立つことが手順(パート 3)でわかるでしょう。
データの使用
このワークフローでは、標高データの使用に 3 つの異なるモードがあることを強調しています。ほとんどのエンド ユーザは、地形を視覚化するだけでニーズを満たすことができます。一方で、地形解析の結果を知りたいと考えるユーザもいます。また、エンジニアなど、さらに少数のユーザは、独自の解析を行うために実際の標高値にアクセスする必要があります。
これらの違いを理解し、各ユーザごとに適切な使用モードを実装することは、システムの効率性と応答性に非常に大きな影響を与える可能性があるため重要です。繰り返し参照される使用モデルとしては、ビューアの使用、解析結果の使用、およびデータ値の使用が挙げられます。
使用モデル 1: ビューアの使用
ユーザは、標高データの表現を参照する必要があります。そのため、データ管理者は適切な視覚化プロダクトをサーバ上に作成してから、それらのビューをユーザに提供する必要があります。これは、数は最も多いが、標高データに基づいた比較的単純なプロダクトに簡単にアクセスする必要のある、技術的要求の最も低いユーザ グループ(多くの場合、一般の利用者)を指しています。例を以下に示します。
- 陰影起伏画像 - 地形図またはベース マップに含まれます
- 傾斜角を表す画像 - 都市計画、崖くずれの危険性など
- 傾斜方向を表す画像 - 農業、野生生物の描写と管理、気候のモデル化など
もちろん、ArcGIS を使用するユーザの場合は、標高データにアクセスできるようにすることで、アプリケーションがこれらのプロダクト自体を作成できます。
使用モデル 2: 解析結果の使用
ユーザは、標高データをサーバ側で解析するためのパラメータと対象地域を定義してから、結果を取得します。これは、サーバ上で作成できるさまざまな解析プロダクトにアクセスする必要のあるユーザ グループを指しています。通常、結果はマップや不連続フィーチャで、元のソース データを送信することなくユーザに提供されます。例を以下に示します。
- 視覚化および見通し線の解析のための可視領域の計算 - ある位置から見えるものの判別、携帯電話塔やマイクロ波通信機器の設置、伐採計画
- 災害管理での使用 - 避難計画、洪水への対処、リアルタイムな意志決定のための現在の洪水データに対する Web ベースのオーバーレイ
- 工業計画 - 風力発電所における風の鉛直分布と可視性、水力発電のダム設計
- カートグラフィック コンターの計算 - マップ上での表示
- 直線または線分に沿ったプロファイルの計算 - パイプライン ルートのエンジニアリングや圧力計算、道路計画、森林伐採の道路計画と抽出コスト
これらのアプリケーションでは、ユーザは一般に実際の標高値は必要ありません。これらのプロダクトだけを配信することで、データ サイズが小さくなるので、帯域幅の要件を少し下げることができます。たとえば、標高の生データは 32 ビットですが、可視領域は 1 ビットまたは 8 ビットの結果で済みます。
使用モデル 3: データ値の使用
ユーザは、標高値にアクセスする必要があります。これは、数値計算をサポートするために、元の標高データをデジタル形式で必要なユーザを指しています(クライアント側での Web またはデスクトップ アプリケーションを想定)。以下に例を示します。
- 二次処理の入力として - 画像のオルソ補正
- 独自のデータ モデルや処理の入力として - 灌漑システムの水路設計や洪水のモデル化に使用する、コンターの作成や水流解析の実施
3 つの使用モデルの中で、このモデルが最も大量のデータにアクセスおよび送信する必要があるため、サーバ上での時間とリソースの観点からは最も高価です。
要件
上記の使用モデルを満たすため、適切なデータを提供し、アクセスできるようにします。これは、すべての要件を一覧にしたものではありません。ここでは、標高データに特有の重要ないくつかの要件について、概要を説明します。これらの要件が組織に該当するかどうかを判断し、適切に実装するために正しい意志決定を行う必要があります。
- 画像、結果、データの配信
- 社内、イントラネット、インターネットでのアクセスの提供
- 1 つ以上の標高モデルや表現の提供
- 1、10、100、または 100 万ユーザに対するアクセスの提供
- ソース データへのアクセスの提供
- 多くのデータ ソースの一元管理
- ソースへのアクセス制限と管理
- コンテンツの容易な更新および置換機能が必要
データのダウンロードとエクスポート
画像データ管理者とエンドユーザは、標高データをサンプリングするとデータが変化することを理解しておくことが大切です。たとえば、データセットを最大解像度以外の解像度や異なる投影、ピクセル配置で表示する場合、そのデータはリサンプリングされます。標高データセットをオーバーサンプリングすることは一般的ではありません。たとえば、5 メートル間隔のデータセットから作成された可視領域を 1:1,000 に拡大するのは、近すぎます。
アプリケーションの中には、対象地域内の数値にアクセスする必要があるものがあります(データ値の使用)。クライアントに数値のデータを提供するには次の 2 つの方法あります。エクスポートとダウンロードです。
エクスポートとは、特定範囲および空間参照内のデータを抽出することです。エクスポートによって、生のデータ値、それらをリサンプリングしたもの、または陰影起伏や傾斜角の画像のように加工したものを抽出できます。ダウンロードとは、通常は特定領域内にある元のデータ値(最大解像度、非リサンプリング)を送信することです。ダウンロードは、サーバからクライアントに、大量のデータを転送する可能性があるので注意してください(特に、データが非常に広範な領域のもので、大量のデータセットを含む場合)。そのため、適切な制約を実装して、ユーザとシステムが結果に対応できるようにする必要があります。たとえば、転送するデータの最大量に制限を設定したり、警告が表示されるように Web アプリケーションを設計したりします。
データ ソース
このワークフローで使用されるデータ サンプルのリストを以下にしまします。このデータは、ビット深度で、通常 16 ビットまたは浮動小数点、符合ありまたは符合なしを使用できます。
このワークフローは、データ管理者が社内のローカルに保存されたデータを使用することを想定しています。
データ(Data) | 説明 |
---|---|
GTOPO | GTOPO は、解像度 30 秒角(約 1 km)のグローバルな標高データセットです。これは、http://www1.gsi.go.jp/geowww/globalmap-gsi/gtopo30/gtopo30.html からダウンロードできます。 |
SRTM | SRTM(Shuttle Radar Topography Mission)は、スペースシャトルから取得したほぼ地球規模の標高データで、地球のほぼ完全な高解像度のデジタル地形図データセットを生成しています。 これは、http://srtm.usgs.gov/index.php から入手できます。 |
NED 10、NED 30 | National Elevation Dataset(NED)は、アメリカの USGS によって作成されました。NED データは、1 秒角(約 30 メートル、"NED 30")および 1/3 秒角(約 10 メートル、"NED 10")の解像度が国内で入手できます。 http://ned.usgs.gov/ をご参照ください。 |
Lidar | LIDAR データのソースはさまざまです。この特定のケースでは、データは Oregon Metro Regional Land Information System(RLIS)から提供され、DEM と DSM の両方を提供できます。 |
データ管理の組織とサービス(プロダクト)
主な目標の 1 つは、範囲に関係なく、すべてのデータを管理し、1 つのまとまりとして配信できるようにすることです。他の方法(組織が拡大して、個別のプロジェクトを完了するにつれて発生することが多い)としては、異なる地理的エリアのデータを別々のデータセットとして管理する方法があります。しかし、ArcGIS は、大量のデータセット コレクションを効率的に管理できる機能を提供し、データの重複や不必要な管理のオーバーヘッドによって生じていた作成および保守のコストを削減します。
モザイク データセットの整理
モザイク データセットは、標高データのコレクションを管理、表示、公開するために最適なデータ構造です。それは、すべての異なるラスタ ファイル形式と解像度を管理でき、ファイルはディスク上で元々の形式で保守されるからです。これには、適切な縮尺で最良の解像度で表示する動的なモザイク処理や、ソース データをコピーしなくてもデータを処理して複数のプロダクトを作成できる関数など、標高データを表示および処理するための多くのオプションもあります。
標高データに固有の関数には、陰影起伏、傾斜方向、傾斜角があります。
モザイク データセットは、主に管理用に使用するものと、他のデータ表現(陰影起伏など)を提供し公開されるものの 2 種類に分けると便利です。モザイク データセットをこのように分けることによって構成も容易になります。モザイク データセット内の画像を管理することはできますが、コンテンツを共有または発信(公開)するには、別のモザイク データセットを使用します。
さまざまな種類のモザイク データセットとその目的の概要を以下に示します。
- ソース - 画像を管理するために使用します。通常は、同様の画像の集まりで構成されます。SRTM や NED など、いくつかのソース モザイク データセットを使用すれば、異なる複数の画像コレクションを管理できます。これらを直接公開することもできますし、(より多くの場合は)他のモザイク データセットのソースとして使用することもできます。
- マスタ(派生)- 複数のソースを 1 つのモザイク データセットに編纂するために使用します。マスタ モザイク データセットのソースは、一般に 1 つ以上のソース モザイク データセットですが、他の画像やサービスを含めることもできます。
- 参照 - 独自の種類のモザイク データセットで、主に画像の共有または公開に使用されます。これは、1 つのモザイク データセットを入力にして作成されます。テーブル内の項目は編集できないため、入力を変更から守ることができます。これは、ソースまたはマスタ モザイク データセットを入力として、さまざまな処理が行われた出力を提供するために使用されます。
ソースとマスタ(派生)モザイク データセットは、モザイク データセットの組織的な構造がわかりやすくするシンボル名です。一方、参照モザイク データセットは、物理的に異なる形式のモザイク データセットです。
標高データは、独自に、あるいはデータ ベンダが編成したフォルダ内に格納されますが、1 つ以上のモザイク データセットやイメージ サービスを使用して、すべてが管理および配信されます。ソース モザイク データセット内に含まれるデータは通常、同じバンド数とビット深度を持つことで決定されます。この場合、これは、ビット深度とプラダクトで決定されます。たとえば、LIDAR の派生データは 1 つのソース モザイク データセットで整理でき、SRTM は別に整理されます。これにより、データの整理を維持し、異なる垂直単位のデータを分離することができます。たとえば、LIDAR の派生データはフィートで計測され、SRTM はメートルで計測されます。これにより、各プロダクトで独自なフットプリントを調整したり(必要な場合)、NoData を制御したりできます。
ソース モザイク データセットは、マスタ モザイク データセットを使用して結合します。フィートからメートルへの変換や、楕円体の高さから海抜高度への変換など、データが同じ情報を表せるように、ソースの一部に関数を追加することができます。(ほとんどの要件では、海抜高度をマスタ サービスとして作成および保守して、他の基盤とすることをお勧めします)。
最終プロダクトとサービス
さまざまな参照モザイク データセットをマスタ モザイク データセットから作成し、推奨する次の標高データ サービスを提供することができます。
- 海抜高度
- 海抜サーフェス高度 - サーフェス高度データ(DSM)が使用できる場合(建物、樹冠、橋など)
- 楕円体の地表の高さ
-
視覚化用
- 陰影起伏
- 陰影起伏
- 傾斜角(Slope)
- 傾斜方向(視覚化と解析の両方に使用)
ユーザ コミュニティで複数のジオイド補正が必要な場合、データ管理者はジオイドをイメージ サービスとして公開して、適切なオプションをユーザに公開できます。
海に関する考慮事項
すべての場合で、データ管理者は海の表現方法を決定する必要があります。どれを選択すべきかは、データがサポートしなくてはならないアプリケーションによって異なります。選択肢は次のとおりです。
- 海の標高値が 0
- 海は NoData
- 海は測深データを使用して表現
ほとんどのアプリケーションでは、すべての海抜を 0 にしてもかまいません。海を NoData として定義する場合、NoData 領域のオルソ補正は失敗します。値 0 を入力する簡単な方法は、非常に低い解像度で、世界規模のダミー画像をモザイク データセットに追加し、すべてのピクセル値を 0 にすることです。こうすると、SRTM などデータ内の値が NoData の場合に、ダミー画像内では 0 の値が表示されます。
データ管理者が測深データを含めるように選択した場合、海の標高値は負になり、海底の視覚化が可能になります。こうすると、複数のサービスにおけるデータのレンダリング(表示)が柔軟になります。あるクライアント アプリケーションは、標高が 0 未満の水域を青色で表示できます。また、同じ領域について、別のクライアント アプリケーションでは、水面下の標高を陰影テレインとしてレンダリングできます。
オーバービュー
基本的なレベルでは、モザイク データセットのオーバービューは、ラスタ データセットのピラミッドに似ています。このオーバービューは、モザイク画像の表示時に検査されるラスタを少数に抑えたことで、表示速度の向上と CPU 使用率の低減が図れるように作成された低解像度の画像です。ただし、オーバービュー同士にはかなり大きな差異があります。これは、オーバービューの作成時に、使用されるパラメータのほとんどを制御することが可能なためです。特定地域のみを対象範囲として作成することも、あるいは特定の解像度のみをサポートするように作成することもできます。モザイク データセット全体に格納されているすべてのラスタを表示できるように、(各ラスタだけに限定せずに)作成されます。オーバービューはラスタ ピラミッドの停止した箇所から開始するのが一般的ですが、ラスタのピラミッドを一部だけ使用したい場合は、どのベース ピクセル サイズでオーバービューを生成するかを指定することができます。
データ管理者は、オーバービューに対して最善のアプローチを検討する必要があります。オーバービューは、投影データから作成できますが、GTOPO、ETOPO、GMTED2010 など別のソースから適切な低解像度のデータセットを入手できる場合は、それらを使用することをお勧めします。このワークフローでは、このアプローチに基づき、さまざまな空間解像度の複数のデータセットから構成される大規模な領域のイメージ サービスを構築します(そのため、一般にオーバービューの要件はありません)。
Metadata
データ管理者がすべての標高データに関して確認すべきプロパティはたくさんあります。データ管理者は、保持するのが重要なコンポーネントと、データ ユーザに公開するメタデータ フィールドを確認および決定する必要があります。以下のメタデータは、品質保証とシステム構成のためにお勧めします。
データ管理者が確認すべきメタデータ:
- データのソースまたは所有者
- 著作権
- 水平座標系(投影、測地基準系、単位)
- 鉛直測地基準系(特定モデル、楕円体と海抜のどちらか)および単位(フィートまたはメートル)
- 水平精度(通常は CE90 または CE95 として計測されますが、RMS エラーまたは RMSE として報告される場合もあります)
- 鉛直精度(通常は LE90 として計測されます)
- 解像度(データ ファイルに格納されているサンプル間隔で、データの水平精度と同じではありません)
- 標高サーフェス タイプ(DEM または DSM)
-
このデータセットにおける NoData の定義:
- NoData のエリアがあるか?
- ある場合、1 つの値で表されているか?
- NoData がデータセットのエッジに限定されているか?または、有効なデータ内に NoData の穴が存在するか?
- プロダクトによっては、回避リージョンを定義した関連フィーチャクラスがあります。これらのエリアに値が設定されているかどうか、それが NoData 値であるかどうかを調べます。
- 別のソースからサンプリングされたデータか?
- 生データの取得日付
- QA/QC が完了した日付、担当者、使用した方法や規格
- データはリリース可能または制限されているか?(データは、独自または分類済み、無料で一般公開の場合があります)
水平精度や垂直精度など、一意のメタデータ フィールドの場合は、これらをモザイク データセットの属性テーブルに手動で追加する必要がある場合があります。このようにすると、ユーザがこの情報に対してモザイク データセットを簡単にクエリできるようになります。
![ヒント ヒント](rsrc/tip.png)
使用しているプロダクト(またはサブプロダクト)のリストを作成しておくことには価値があります。それは、算術演算関数を使用して単位を変換するなど、モザイク データセット内のデータを変更しなければならない場合があるからです。
形式の最適化
形式の最適化は必ず必要というわけではありませんが、データが最適ではない形式や十分にサポートされていない形式の場合は必要です。1 つのコレクションを作成してサービスとして公開するときに、標高データの事前処理をサポートする推奨事項を次にいくつか示します。
- ポイントまたは TIN データのラスタ形式への変換。ソースに応じて、変換に使用するさまざまなジオプロセシング ツールがあります。[ラスタへ変換] ツールセットまたは 3D Analyst の [変換] ツールセットをご参照ください。
- LAS ファイル、LAS データセット、テレイン データセットは、ラスタ データセットに変換する必要がありません。これらは、モザイク データセット内で直接サポートされています。
- 標高データに最適な形式は、タイル化された TIFF 形式で格納された LZW 圧縮の 32 ビット浮動小数点値です。LZW 圧縮は、可逆圧縮かつ高速で、ファイル内のデータを自動的にタイル化します。また、NoData 値は、ラスタ形式内で領域を取りません。
-
Esri では一般的に、ファイル形式が非効率だったり、サーバのパフォーマンスに悪影響があったりしない限り、標高データを元の形式から変換しないことをお勧めします。たとえば、次のいずれかに当てはまる場合は、データをモザイク データセットに追加する前にデータを変換する必要があります。
- 標高データが ASCII XYZ(読み取りが非効率)など、非効率なファイル形式で格納されている場合
- 標高データのファイルが大きく(行数または列数 > 5000)、データがタイル化されていないかピラミッドが存在せず、サーバのパフォーマンスが重要な場合
場合によっては、データを変換する前に、変換が適切かどうか、変換で最適化できるかどうかを判断するために、パフォーマンス チェックを実行します。次に例を示します。
- 元の形式が JPEG 2000 で保存されている場合、解凍に時間がかかることに注意してください。これは、パフォーマンスに大きな影響があります。最良のパフォーマンスを得るには、データをタイル化された TIFF に変換する必要があるかもしれません。
- 元のデータが Esri GRID 形式の場合も、マルチプロセシング環境においてスケーラビリティが重要な場合は変換することをお勧めします。
ファイルの変換
ファイルの形式を変換する場合で、ビット深度やその他のデータセットのプロパティを変更する必要がない場合は、[ラスタ → 他のフォーマット(マルチ)(Raster To Other Format(Multiple))] ツールを使用します。一部のプロパティを変更する場合は、[ラスタのコピー(Copy Raster)] ツールを使用します。このツールを多くのデータセットに適用しているときは、ツールを右クリックして [バッチ] をクリックするか、スクリプトを記述して、複数のデータセットを対象にすることができます。どちらの場合でも、環境を設定する必要があります。これは、アプリケーション レベル(複数のツールに適用する場合)またはツール レベルで実行できます。
- [環境] ダイアログ ボックスにアクセスします。
- メイン メニューで [ジオプロセシング] → [環境] の順にクリックします。
- ツールの [環境] ボタンをクリックします。
- [ラスタ格納] セクションを拡張します。
- [ピラミッド構築] をオンにします。
- [ピラミッド リサンプリング手法] ドロップダウン矢印をクリックして、[BILINEAR] をクリックします。
- [ピラミッドの圧縮タイプ] ドロップダウン矢印をクリックして、[LZW] をクリックします。
- [統計情報の計算] をオンにします。
- X および Y スキップ ファクタに 1000 を入力します。
この値は、列数を 1,000 で除算した値になります。
- [圧縮] ドロップダウン矢印をクリックして、[LZ77] をクリックします。
- [タイル サイズ] の幅と高さが共に 128 であることを確認します。
Projection
各データセットに投影が定義されていない場合は、[投影法の定義(Define Projection)] ツールを使用します。詳細については、次のブログをご参照ください。画像が間違った場所にあります。
一般に、ファイルは再投影すべきではありません。
ピラミッドの構築
データにピラミッドが含まれておらず、タイルが大きい場合(行数または列数が 5,000 より多い場合)、ピラミッドを作成することをお勧めします。ファイルにピラミッドがあるかどうかを判定するには、カタログ ウィンドウまたはコンテンツ ウィンドウ内で右クリックしてから [プロパティ] をクリックし、[ピラミッドのラスタ情報] の下を確認します。
複数のデータセットに対してピラミッドを構築する場合は、[ピラミッドと統計情報の構築(Build Pyramids And Statistics)] ツールを使用します。上記と同じ環境設定を使用します。
ピラミッドには追加のディスク領域が必要で、拡張子が「.ovr」の別のファイルに書き込まれます。
![注意 注意](rsrc/note.png)
このワークフローで使用されるデータに、ピラミッドはありません。この主な理由は、さまざまな解像度が統合され、一緒に使用されているためです(そのため、ソース データの解像度を下げる必要性がありません)。また、タイル化されたデータ構造のためでもあります(極端に大きな個別ファイルがありません)。
FWTools
![ヒント ヒント](rsrc/tip.png)
データ ファイルの数が 100,000 ファイルより多く、新しいピラミッドを作成する場合、余分なファイルを多数作成しなくても済むように、ピラミッドをデータ ファイルに書き込むことができます。そのためには、ArcGIS には付属していない FWTools ユーティリティを使用することをお勧めします。
FWTools は、http://fwtools.maptools.org からダウンロードできます。ダウンロードしたら、次のコマンドを実行します。
gdal_translate.exe -of Gtiff -co "TILED=YES" -co "COMPRESS=LZW" Input.xxx Output.tif
gdaladdo.exe -r average -ro --config TILED YES --config PHOTOMETRIC_OVERVIEW LZW output.tif 2 4 8 16
16 ビット画像の場合、Input.xxx の前に -co NBITS=12 を挿入します。
作成されるファイルが 4 GB より大きい場合、Input.xxx の前に BIGTIFF=YES または BIGTIFF=IF_NEEDED のいずれかを挿入します。
統計情報の作成
コントラスト ストレッチの適用やデータの分類など、ラスタ データセットまたはモザイク データセットで何らかのジオプロセシング処理を実行したり、ArcGIS for Desktop アプリケーションで特定のタスクを実行するには、統計情報が必要です。このワークフローでは、統計情報は表示または使用されておらず、個々のデータセットの統計情報を使用する関数やプロダクトは作成されないため、各データ ソースに対して統計情報を作成する必要はありません。統計情報は、モザイク データセットに対して表示目的で作成されます。
詳細については、「ラスタ データセットの統計情報」をご参照ください。