Esri Grid 形式

Esri グリッドは、行と列に整列された均等なサイズの正方形のピクセル (セルとも呼ばれる) の配列として地理空間を定義するラスター データを格納するためのものです。 データ タイプ (整数と浮動小数点) に応じて 2 つのタイプのグリッドがあります。

整数グリッドの属性は、値属性テーブル (VAT) に格納されています。 VAT は、グリッドの各一意の値に対して 1 レコードがあります。 レコードには、一意の値とピクセルの数が格納されています。 VALUE は、ピクセルの特定クラスまたはグループを表す整数です。 COUNT は、グリッド内の値を表すピクセルの数です。 たとえば、50 ピクセルの値が森林を表す 1 の場合、VAT では 50 ピクセルごとに VALUE = 1 および COUNT = 50 が表示されます。

ラスター データセットの属性テーブルの詳細

グリッドの VAT の例

浮動小数点グリッドのピクセルは、指定された値の範囲内の任意の値を想定できるので、このグリッドには VAT がありません。 このタイプのグリッド内のピクセルは、個別のカテゴリにきちんと分類されません。 ピクセル値自体は、位置を記述する属性です。 たとえば、標高データを海抜メートル単位で表すグリッドでは、値 10.1662 のピクセルは、その場所が海抜約 10 メートルであることを示します。

グリッド値として格納できるデータ値の範囲は以下のとおりです。

  • 浮動小数点グリッドは、-3.4 x 1038 から 3.4 x 1038 までの値を格納できます。
  • 整数グリッドは、-2147483648 から 2147483647 (-231 から 231-1) までの値を格納できます。

整数グリッドでは、この情報は VALUE アイテムにのみ適用されます。 整数グリッドには、その値の範囲がアイテム定義によって決まる他のアイテムが VAT に追加されている場合があります。

グリッドの座標系は、他の地理データの座標系と同じです。 行と列は、座標系の X 軸と Y 軸に平行です。 グリッド内の各ピクセルは他のピクセルと同じディメンションを持つので、ピクセルが占める位置とエリアは行と列によって決定できます。 したがって、グリッドの座標系は、ピクセル サイズ、行と列の数、および左上隅の X、Y 座標によって定義されます。 また、グリッドには、グリッドに関連付けられた座標系などの追加情報も含まれます。

注意:

ほとんどの形式と同様に、グリッドの名前にはスペースなどの特殊文字を使用しないでください。 マルチバンド グリッドのファイル名は 9 文字を超えることはできません。シングル バンド ラスター データセットの名前は 13 文字を超えることはできません。

グリッド データ構造

グリッドはタイル化されたラスター データ構造を使用して実装されます。データ ストレージの基本単位はピクセルの長方形ブロックです。 ブロックは、タイルと呼ばれる可変長ファイル構造の圧縮形式でディスクに格納されます。 各ブロックは、1 つの可変長レコードとして格納されます。

グリッドのタイルのサイズは、作成時のグリッド内の行と列の数に基づきます。 タイル サイズの上限はアプリケーションによって設定され、上限は 4,000,000 x 4,000,000 ピクセルです。 その結果、GIS アプリケーションに使用されるほとんどのグリッドは、自動的に単体タイルに格納されます。 作成時のグリッドのサイズが、タイル サイズの上限より大きい場合、グリッドの空間データは自動的に複数のタイルに分割されます。

グリッドのブロック化されたストレージ構成は、大規模なラスター データセットへのシーケンシャルおよびランダムの空間アクセスをサポートします。 ブロック構造によってグリッドの結合解析が制限されることはありません。 結合解析では、異なるグリッドのタイルとブロックがマップ空間内で一致する必要はなく、均一な正方形ピクセルのシームレスなラスターであるかのようにグリッドを作成および操作できます。

グリッドは、ブロック レベルで適応可能なランレングス ラスター圧縮スキーマを使用します。 各ブロックを検査して、そのブロックで使用される深度 (ピクセルあたりのビット数) を決定し、どのストレージ方法 (ピクセルごとまたはランレングス コード化) がより効率的かを特定します。 ブロックは、必要なディスク容量が少ない形式で格納されます。 アダプティブ圧縮スキーマは、同種のカテゴリ データと異種の連続データの両方を効率的に表し、両タイプのデータを使用した結合解析をサポートできるので、最適な選択肢です。 データの再分類など、単一レイヤーのピクセルごとの操作は、展開せずにデータ プロセスで直接実行されます。 圧縮入力レイヤーでのマルチレイヤーのピクセルごとの操作は、さまざまなレイヤーのデータ プロセスと交差し、交差するプロセス上で実行されます。 圧縮データと非圧縮データを混在させる、単一レイヤーの近傍ごとの操作とマルチレイヤーのピクセルごとの操作では、プロセスをピクセルに展開し、従来のピクセルごとの処理を透過的に実行します。

グリッドのタイル ブロック構造

グリッドのタイル ブロック構造は、グリッド内の空間データにアクセスするアプリケーション プログラムに対しても透過的です。 グリッドを操作するプログラムは、マップ座標で定義された長方形ウィンドウを設定することで、空間データにアクセスします。

グリッド データの格納

グリッドはワークスペースに格納されます。 グリッドは、グリッドに関する特定情報を含む関連テーブルおよびファイルとともに個別ディレクトリとして保存されます。 整数グリッドのワークスペースには、次のテーブルとファイルがあります。

  • グリッド境界が格納される BND テーブル
  • グリッドを説明する特定情報 (ピクセル解像度やブロック係数など) が格納される HDR ファイル
  • グリッドの統計データが格納される STA テーブル
  • グリッドのゾーンに関連する属性データが格納される VAT テーブル
  • グリッドで発生するアクティビティを監視する LOG ファイル
  • ピクセル データが格納されるタイル ファイル w001001.adf (q0x1y1) と、タイル ファイルおよび LOG ファイルのブロックのインデックスを作成する付属のインデックス ファイル w001001x.adf (q0x1y1x)

グリッド

グリッドが変更されると、ファイルおよびテーブルに格納されている値と情報が即座に更新されます。

BND テーブル

グリッド BND には、グリッド境界が格納されます。 境界はグリッドのピクセルを囲む長方形で、マップ座標で保存されます。 すべてのグリッド BND は倍精度で格納されます。

BND テーブルの最小座標は、グリッドの左下のピクセルの左下隅を表します。 最大座標は、グリッドの右上のピクセルの右上隅を表します。

HDR ファイル

HDR はバイナリ ファイルです。 ファイルに格納される情報には、ピクセル サイズ、グリッドのタイプ (整数または浮動小数点)、圧縮方法、ブロック係数、タイル情報などがあります。

STA テーブル

STA テーブルには、グリッドに関する統計データが格納されます。 グリッドの最小、最大、平均、および標準偏差は、浮動小数点の値として STA テーブルに格納されます。 これらの値は直接変更しないでください。

NoData は不明な値を表すため、STA テーブルの統計の計算では NoData は使用されません。

2 レベルのグリッド (0 と 1 の値のみを含む) が作成されると、STA テーブルには平均値として 0、標準偏差値として -1 が追加されます。 標準偏差の値 -1 は、グリッドで統計が計算されていないことを示します。

標準偏差の値 -2 は、グリッドに NoData ピクセルのみが含まれていることを示します。

VAT テーブル

VAT テーブルには、グリッドのゾーンに関連する属性が格納されます。 VAT が関連付けられるのは整数グリッドのみです。 すべての VAT には、少なくとも VALUECOUNT の 2 つのアイテムがあります。 VALUE アイテムには、グリッド内のある位置の特性を他の位置から区別するために使用される整数値が含まれています。 同じ値が割り当てられたすべてのピクセルは同じ特性を含むので、同じゾーンに属します。 COUNT はゾーン内のピクセルの数です。

VAT には新しいアイテムを追加できます。 VALUE および COUNT アイテムは変更しないでください。VAT は VALUE アイテムに基づいて並べ替えられた状態を維持する必要があります。

注意:

VALUE または COUNT の前に新しいアイテムを追加しないでください。

NoData を含むピクセルは、VAT には表示されません。

以下に VAT の例を示します。

Record	 VALUE     COUNT
 1        0       628872
 2        1       265043
 3        2       151150
 4        3      3185652
 5        4        79983
 6        5         4782
 7        6        74334
 8        7         8877
 9        8         1817
 10       9          491
 11      10          858
 12      11         8770
 13      12        28789
 14      13        72539
 15      14         3686
 16      15         3932
 17      16        13227
 18      17         1890
 19      18         1305
 20      19       427286
 21      20         6695

タイル ファイル

w001001.adf (q0x1y1) および w001001x.adf (q0x1y1x) ファイルには、グリッドの先頭タイルまたはベース タイルのデータとインデックスが格納されます。 タイル サイズの上限は大きく、ほとんどのグリッドは 1 つのタイルを使用して格納されます。 追加のタイルが使用される場合は、最初のタイルとの空間的リレーションシップに基づいて、自動的に番号が付与されます。 タイルは、可変長バイナリ ファイルとして実装されます。

LOG ファイル

LOG ファイルは、グリッドの作成と変更に関する情報を含む ASCII ファイルです。 LOG はグリッドで実行されるアクションを監視しますが、グリッドを使用して実行されるすべてのアクションが含まれているわけではありません。 すべてのグリッド操作によって新しいグリッドが作成されるため、既存のグリッドの変更や LOG ファイルへの入力ができるのは、[RENAME][COPY] などのグリッド コマンドのみです。 LOG ファイルには、すべての ASCII ファイルと同様に、システム コマンドまたはテキスト エディターでアクセスできます。

ストレージの制限事項

グリッドの名前には次の制限があります。

  • スペースや特殊文字を使用して格納することはできません。
  • 名前を数字で始めることはできません。
  • 13 文字を超えることはできません (マルチバンド グリッドは 9 文字まで)。

カバレッジとグリッドの両方で、ディレクトリに格納できるファイル数には制限があります。 合計で約 10,000 ファイルです。 したがって、ワークスペースに格納できるグリッドの数が制限されます。 たとえば、以下に、単一ワークスペース ディレクトリに格納できるグリッド データセットの理論上の最大数を示します。

  • 5,000 浮動小数点グリッドより少ない、または
  • VAT ありで 3,333 整数グリッドより少ない (VAT がない場合は 5,000 より少ない)、または
  • 10,000 グリッド スタックより少ない

前述の数値は理論上の最大値です。 中間グリッド (したがってワークスペース内のファイル) を作成するプロセスがある場合、これらの数はさらに少なくなります。 また、グリッドやカバレッジなどのファイルを混在して格納する場合、格納できる数はさらに少なくなります。

これらの数値は、ワークスペースに情報を格納するグリッド フォルダー内のファイル数に関係します。 限度数は 9,999 ですが、これはワークスペース内のファイルの合計数ではなく、ワークスペース内のファイルをポイントするファイルの数です。 各グリッドについて、ワークスペース内のファイルをポイントするグリッドのフォルダー内に、BND (境界) ファイルと STA テーブル (統計) ファイル (9999/2≈5000) の 2 つのファイルがあります。 グリッドに VAT がある場合、これはワークスペース内のファイルもポイントするため、保存できる数はさらに減ります (9999/3≈3333)。 グリッド スタックには、ワークスペースをポイントするファイルが 1 つのみあります (9999/1≈9999)。

改行

スタックは、多変量解析では 1 つのエンティティとして処理される、空間的に重なり合ったグリッド (レイヤー) の順序付けられたセットで構成されます。 クラスター解析、分類、主成分解析はすべて、スタック内のレイヤーに対して実行されます。

グリッド スタック

スタックには以下の特性があります。

  • 各レイヤーがグリッドに対応するレイヤー セット
  • マップの範囲または BND
  • ピクセル サイズ
  • データ タイプ
  • 投影法

スタック内で指定された各レイヤーには、スタック内での順序を示すインデックス番号があります。 スタックを構成するグリッドは、同一ワークスペースに存在しなければなりません。

入力レイヤーの境界は、正確に重なり合うか、部分的に重なり合うか、まったく重なり合わない可能性がありますが、レイヤーが重なり合う領域のみがスタックを構成します。 スタックの BND は、レイヤーの境界が交差する場所です。 多変量解析関数の計算は、重なり合う領域で行われます。 入力レイヤーに共通の領域がない場合、スタックは空で計算は行われません。

スタックで計算が行われる場所の例

スタックのピクセル サイズのデフォルトは、スタックで最も粗いレイヤーになります。

スタック内の入力グリッドのデータ タイプ (実数または整数) をいくつでも組み合わせることができます。ただし、多変量手法を適用する前に、値が何を表すか、カテゴリ データか連続データか、値の範囲か相対範囲かを把握しておく必要があります。 特定の解析では、スタックの入力データ タイプによって出力のデータ タイプが決まります。

入力スタックに関連する投影法情報は、スタックとともに格納されます。 スタックは単一エンティティとして処理されるので、スタック内のすべてのグリッドは同じ投影法でなければなりません。 投影情報は、スタックの各グリッドが確実に同じ地理領域を占めるようにするために使用されます。

グリッド スタックの格納

スタックは、グリッドに似たディレクトリ構造に格納されます。 スタック ディレクトリには、外部テーブルと ASCII PRJ ファイルの 2 ファイルがあります。 スタックを構成する実際のグリッドは、スタックには格納されません。 実際のグリッドはワークスペース内の通常のグリッドです。 つまり、どのグリッドも複数のスタックで使用できます。 STK テーブルには、スタックとそれに対応するインデックス値で構成されるグリッド名が格納されます。

GRID: LIST JER135.STK
Record  INDEX   GRID
  1       1     jer1
  2       2     jer3
  3       3     jer5

INDEX アイテムはスタック内のグリッドの位置を示し、GRID アイテムはスタックを構成するグリッド名をリストします。 入力グリッドの空間データは、スタック内では複製されません。 その結果、スタックは、最新バージョンの入力グリッドが常に反映されます。 STK ファイルは、他の INFO ファイルと同様にアクセスできます。 データが収集された日付を保存するアイテムなど、説明目的でアイテムを追加できますが、INDEX アイテムの値や GRID アイテムの名前は変更しないでください。 これらのアイテムへの操作はすべて、グリッドで使用できるさまざまなスタック管理コマンドでのみ実行されます。

PRJ ファイルが存在する場合は、スタックの投影法情報が格納されます。

Projection STATEPLANE 
Zone     4701 
Datum    NAD27 
Zunits   NO 
Units    FEET 
Spheroid CLARKE1866 
Xshift   0.0000000000 
Yshift   0.0000000000 
Parameters

スタック内のすべての入力グリッドの投影法が不明の場合、PRJ ファイルは作成されません。

グリッド スタックの名前は、スペースを使用して保存したり、数字で始まったり、9 文字を超えたりすることはできません。

グリッドの NoData

グリッド内の各ピクセルには値が割り当てられています。ただし、実際の値がないピクセルには、そのテーマを表すグリッド上で NoData を割り当てることができます。 NoData と 0 (ゼロ) は同じではありません。0 は有効な値です。 このため、NoData ピクセルは、グリッドの STA テーブルの統計情報の計算には使用できません。