マスクで抽出(Extract by Mask) (Spatial Analyst)
サマリ
マスクによって定義されたエリアのラスタのセルを抽出します。
図
使用法
-
[マスクで抽出(Extract by Mask)] ツールは、[マスク] 環境の設定と似ていますが、入力マスクが当座のインスタンスにのみ使用されるのに対して、環境設定のマスクは、変更または無効化されるまで、すべてのツールに適用されます。
-
入力としてマルチバンド ラスタを指定すると、新しいマルチバンド ラスタが出力として作成されます。入力マルチバンド ラスタの各バンドは個別に解析されます。
デフォルトの出力形式は Esri Grid スタックです。Esri Grid スタックには、数字で始まる名前、スペースを含む名前、9 文字を超える名前は使用できません。
-
入力が、4 バンド以上のマルチバンド ラスタから作成したレイヤである場合、抽出操作ではレイヤによって読み込まれた(シンボル表示された)バンドだけが考慮されます。そのため、出力マルチバンド ラスタには、入力レイヤの表示で使用されるバンドに該当する 3 つのバンドしか出力されません。
-
入力マスクがラスタの場合、値が NoData でない入力セルの位置が出力ラスタにコピーされます。マスク ラスタを作成できるツールには、[Con]、[Test]、その他 [抽出] ツールセットにあるツールなどです。
-
入力ラスタ マスクにマルチバンド ラスタが指定された場合、最初のバンドだけが処理に使用されます。
-
入力ラスタが整数の場合、出力ラスタも整数になります。入力のいずれかが浮動小数点値である場合、出力は浮動小数点値になります。
構文
パラメータ | 説明 | データ タイプ |
in_raster |
セルを抽出する入力ラスタ。 | Raster Layer |
in_mask_data |
抽出するエリアを定義する入力マスク データ。 これは、ラスタまたはフィーチャ データセットです。 入力マスク データがラスタの場合、マスク上の値が NoData であるセルは出力ラスタでも NoData が割り当てられます。 | Raster Layer | Feature Layer |
リターン
名前 | 説明 | データ タイプ |
out_raster |
入力ラスタから抽出したセル値が格納される出力ラスタ。 | Raster |
コードのサンプル
次の例では、入力ポリゴン シェープファイルのフィーチャクラスによって定義されたマスク内にあるラスタから、セルを抽出しています。
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outExtractByMask = ExtractByMask("elevation", "mask.shp") outExtractByMask.save("C:/sapyexamples/output/maskextract")
次の例では、入力ポリゴン シェープファイルのフィーチャクラスによって定義されたマスク内にあるラスタから、セルを抽出しています。
# Name: ExtractByMask_Ex_02.py # Description: Extracts the cells of a raster that correspond with the areas # defined by a mask. # 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" inMaskData = "mask.shp" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute ExtractByMask outExtractByMask = ExtractByMask(inRaster, inMaskData) # Save the output outExtractByMask.save("C:/sapyexamples/output/extractmask")