フォーカル統計(Focal Statistics) (Spatial Analyst)
図
使用法
-
入力ラスタが浮動小数点タイプの場合は、平均値、最大値、最小値、範囲、標準偏差、合計の統計情報だけが使用できます。最頻値、最少頻値、中央値、種類の統計情報は計算されません。入力ラスタが整数タイプの場合、すべての統計情報が使用できます。
-
円形、ドーナツ形、または扇形の近傍が指定された場合、セルの中心は近傍に囲まれている必要があるため一部の外側の対角セルは、計算に考慮されない場合があります。
-
[近傍解析] の種類が [不規則] および [加重] の場合、[カーネル ファイル] を指定する必要があります。カーネル ファイルの拡張子は「.txt」にします。
カーネル ファイルの作成と使用の詳細については、「フォーカル統計(Focal Statistics)ツールの仕組みの詳細」の不規則/加重のセクションをご参照ください。
-
[統計情報の種類(オプション)] が [MEAN]、[STD]、[SUM] の場合のみ、[近傍解析(オプション)] を [加重] に設定できます。
-
近傍内のセルのうち最低 1 つが有効な値を持つ場合、[計算時に NoData を除外] オプションをオンにすると、入力 NoData セルは、出力に値を受け取る場合があります。
構文
パラメータ | 説明 | データ タイプ |
in_raster |
フォーカル統計計算を実行するラスタ。 | Raster Layer |
neighborhood (オプション) |
Neighborhood クラスは、統計情報の計算に使用する各セル周辺のエリアの形状を指定します。 利用可能な近傍のタイプは、NbrAnnulus、NbrCircle、NbrRectangle、NbrWedge、NbrIrregular、NbrWeight です。 近傍の形式は以下のとおりです。
デフォルトの近傍は、幅と高さが 3 x 3 セルの正方形の NbrRectangle です。 | Neighborhood |
statistics_type (オプション) |
計算する統計情報の種類。
デフォルトの統計情報タイプは [MEAN] です。 入力ラスタが浮動小数点数の場合、使用できる統計情報は、[MEAN]、[MAXIMUM]、[MINIMUM]、[RANGE]、[STD]、[SUM] のみです。 | String |
ignore_nodata (オプション) |
統計計算で NoData 値を無視するかどうかを示します。
| Boolean |
戻り値
名前 | 説明 | データ タイプ |
out_raster |
出力フォーカル統計ラスタ。 | Raster |
コードのサンプル
次の例では、入力ラスタの各セルについて、ドーナツ形状の近傍内の最少頻値を計算しています。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFocalStat = FocalStatistics("elevation", NbrAnnulus(5, 10, "CELL"),
"MINORITY", "NODATA")
outFocalStat.save("C:/sapyexamples/output/focalstat01")
次の例では、入力ラスタの各セルについて、10 x 10 の近傍内の最少頻値を判定しています。
# Name: FocalStatistics_Ex_02.py
# Description: Calculates a statistic on a raster over a specified
# neighborhood.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "elevation"
neighborhood = NbrRectangle(10, 10, "CELL")
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute FocalStatistics
outFocalStatistics = FocalStatistics(inRaster, neighborhood, "MINORITY",
"")
# Save the output
outFocalStatistics.save("C:/sapyexamples/output/focalstatout")