カーネル密度の仕組み
[カーネル密度(Kernel Density)] ツールは、対象フィーチャの近傍におけるフィーチャの密度を計算します。ポイント フィーチャとライン フィーチャの両方について計算できます。
用途としては、住宅密集度の調査、犯罪レポート、街および野生動物の生息に影響を与える道路やユーティリティ設備の分析などがあります。Population フィールドを使用すれば、フィーチャの意味に応じて一部のフィーチャを加重したり、1 つのポイントで複数の観測データを表したりできます。たとえば、1 つの住所で 6 世帯の集合住宅を表したり、犯罪の種類によってレベル分けするために異なる犯罪には異なる重みを割り当てたりすることができます。ライン フィーチャでは、中央分離帯のある高速道路は、未舗装の細い道路よりも大きな影響があったり、高圧線は通常の電柱より大きな影響があったりする場合があります。
デフォルトの検索半径(バンド幅)アルゴリズム
ArcGIS 10.2.1 では、デフォルトの検索半径を計算する方法が改良されました。
デフォルトの検索半径(バンド幅とも呼ぶ)の決定に使用されるアルゴリズムは、以下のとおりです。
- 入力ポイントの平均中心を計算します。Population フィールドで None 以外を選択した場合、この計算および以下のすべての計算は、このフィールドの値によって重み付けされます。
- すべてのポイントの(重み付けされた)平均中心から距離を計算します。
- これらの距離の(重み付けされた)中央値(Dm)を計算します。
- (重み付けされた)標準距離(SD)を計算します。
- 以下の式を適用してバンド幅を計算します。
ここで:
- SD は標準距離
- Dmは距離の中央値
- n は、Population フィールドを使用しない場合はポイント数、Population フィールドを指定した場合は Population フィールド値の合計
注意:式の min の部分は、2 つのオプションのうちの、より小さい値になるオプションを使用することを意味しています。
このデフォルトの半径を計算する方法により、まばらなデータセットでしばしば生じる「ポイントの周囲のリング」現象を、通常は防ぐことができます。
以前のバージョンの ArcGIS からの結果の再作成
ArcGIS 10.2.1 よりも前のバージョンでは、デフォルトの検索半径は、入力の範囲の幅または高さのうちの小さい方を選択し、30 で割ることによって計算されていました。それらの結果を再作成する場合、[出力セル サイズ] パラメータのデフォルト値に 25/3 または 8.333333 を掛けます。
ポイント フィーチャのカーネル密度
[カーネル密度(Kernel Density)] は、各出力ラスタ セルの周辺に存在するポイント フィーチャの密度を計算します。
理論的には、各ポイントを中心とし滑らかにカーブするサーフェスが形成されます。このサーフェスの値はポイント位置で最大になり、ポイントから離れるにしたがって小さくなります。ポイントから [検索範囲] の距離だけ離れた位置で 0 になります。使用できるのは円形の近傍のみです。サーフェスにおけるポイント地点での量は、そのポイントの [Population フィールド] の値と等しくなります。NONE を指定した場合は 1 となります。各出力ラスタ セルの密度を求めるには、ラスタ セルの中心を覆うすべてのカーネル サーフェスの値を合計します。カーネル関数は、Silverman の文献に記載された二次カーネル関数(1986、p. 76、式 4.5)に基づいています。
[Population フィールド] で [NONE] 以外を設定すると、設定によって指定された値の回数分、対象ポイントがカウントされます。たとえば値 3 の場合、各ポイントは 3 つのポイントとしてカウントされます。整数または浮動小数の値が使用できます。
デフォルトでは、入力ポイント フィーチャ データの投影法で定義された距離単位に基づいて単位が選択されます。それ以外の場合は、環境設定で指定された出力座標系の単位が使用されます。面積の単位を選択した場合、計算したセルの密度に適切な係数が乗算され、出力ラスタに書き込まれます。
たとえば、入力単位がメートルの場合、出力の面積単位は SQUARE_KILOMETERS(平方キロメートル)になります。キロメートルはメートルの 1,000 倍なので、面積値には乗数 1,000,000(1,000 メートル x 1,000 メートル)が適用されます。
半径を変更しても、計算される密度は大きく変化しません。近傍範囲を大きくするほど多くのポイントが含まれますが、密度を計算するときに、このポイント数が大きい面積で除算されます。半径を大きくすることによる主な効果は、ラスタ セルから遠くにある可能性のある多くのポイント数を考慮して密度が計算されるということです。この結果、より一般化された出力ラスタが生成されます。
ライン フィーチャのカーネル密度
[カーネル密度(Kernel Density)] は、各出力ラスタ セルの近傍にあるライン フィーチャの密度も計算できます。
理論的には、各ラインを中心に滑らかなサーフェスが形成されます。サーフェスの値はライン上で最も大きくなり、ラインから離れるにしたがって小さくなります。また、ラインから [検索範囲] の距離だけ離れた位置でゼロになります。サーフェスは、そのサーフェスにおけるボリュームがライン長と [Population フィールド] 値の積になるように定義されます。各出力ラスタ セルの密度を求めるには、ラスタ セルの中心を覆うすべてのカーネル サーフェスの値を合計します。ラインに対するカーネル関数の使用は、Silverman の文献に記載された点密度用の二次カーネル関数を応用したものです。
上の図は、ライン セグメントとそれを覆うカーネル サーフェス上を表しています。密度に対するライン セグメントの寄与は、ラスタ セル中心におけるカーネル サーフェスの値に等しくなります。
デフォルトでは、入力ポリライン フィーチャ データの投影法で定義されている距離単位に基づいて単位が選択されます。それ以外の場合は、環境設定で指定された出力座標系の単位が使用されます。
出力の [面積単位] 係数を指定している場合、長さと面積両方の単位が変換されます。たとえば、長さの単位がメートルの場合、面積の単位のデフォルトは [SQUARE_KILOMETERS](平方キロメートル)になり、得られる線密度の単位はキロメートル/平方キロメートルになります。最終的には、メートルの面積の係数がキロメートルと比較され、1,000 倍異なる密度の値になります。
密度の単位を変更するには、適切な係数を手動で選択します。密度を(デフォルトのキロメートル/平方キロメートルではなく)メートル/平方メートルに設定するには、面積の単位を SQUARE_METERS に設定します。同様に、出力の密度の単位をマイル/平方マイルにするには、面積の単位を [SQUARE_MILE] に設定します。
[Population フィールド] で [NONE] 以外を設定すると、ラインの長さは、実際の長さにそのラインの [Population フィールド] 値を乗算したものになります。
参考文献
Silverman, B. W. Density Estimation for Statistics and Data Analysis.New York:Chapman and Hall, 1986.