縮小 (Shrink) (Spatial Analyst)

Spatial Analyst のライセンスで利用可能。

サマリー

近傍内で最頻出する値をセルに割り当てることで、選択したゾーンを指定したセル数分だけ縮小します。

縮小ツールの詳細

縮小ツールの図
OutRas = Shrink(InRas1, 1, 5)

使用法

  • 指定したゾーンの値はフォアグラウンド ゾーン、残りのゾーン値はバックグラウンド ゾーンと見なされます。 このツールを使用するとフォアグラウンド ゾーンをバックグラウンド ゾーンのセルで置換できます。

  • 2 つの隣接するリージョンが選択した縮小セットの一部である場合、それらの境界は変化しません。

  • 選択した値を縮小することで埋まるエリアに NoData が侵入する優先度は、任意の有効値と同じです。 そのため、選択した値が NoData と隣接している場合、縮小後に NoData になる可能性があります。

  • このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。

パラメーター

ラベル説明データ タイプ
入力ラスター

識別されたゾーンが縮小される入力ラスター。

整数タイプでなければなりません。

Raster Layer
セル数

各指定ゾーンを縮小するときのセル数。

0 より大きい整数値を指定する必要があります。

Long
ゾーン値

縮小するゾーン値のリスト。

ゾーン値は整数でなくてはいけません。 順序は任意です。

Long
縮小方法
(オプション)

選択したゾーンの縮小に使用する方法。

[距離] オプションは並列化をサポートし、[並列処理ファクター] 環境設定を使用して制御できます。

  • モーフォロジー数学的形態手法を使用して、ゾーンを縮小します。 これがデフォルトです。
  • 距離距離ベースの手法を使用して、ゾーンを縮小します。
String

戻り値

ラベル説明データ タイプ
出力ラスター

ジェネラライズされた出力ラスター。

入力ラスターの指定ゾーンが、指定したセル数で縮小されます。

出力は常に整数型になります。

Raster

Shrink(in_raster, number_cells, zone_values, {shrink_method})
名前説明データ タイプ
in_raster

識別されたゾーンが縮小される入力ラスター。

整数タイプでなければなりません。

Raster Layer
number_cells

各指定ゾーンを縮小するときのセル数。

0 より大きい整数値を指定する必要があります。

Long
zone_values
[zone_value,...]

縮小するゾーン値のリスト。

ゾーン値は整数でなくてはいけません。 順序は任意です。

Long
shrink_method
(オプション)

選択したゾーンの縮小に使用する方法。

  • MORPHOLOGICAL数学的形態手法を使用して、ゾーンを縮小します。 これがデフォルトです。
  • DISTANCE距離ベースの手法を使用して、ゾーンを縮小します。

DISTANCE オプションは並列化をサポートし、parallelProcessingFactor 環境設定を使用して制御できます。

String

戻り値

名前説明データ タイプ
out_raster

ジェネラライズされた出力ラスター。

入力ラスターの指定ゾーンが、指定したセル数で縮小されます。

出力は常に整数型になります。

Raster

コードのサンプル

Shrink の例 1 (Python ウィンドウ)

次の例では、値のリストで指定されたゾーンを 2 セル分だけ縮小しています。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outShrink = Shrink("land", 2, [1, 3, 7])
outShrink.save("c:/sapyexamples/output/shrinkout")
Shrink の例 2 (スタンドアロン スクリプト)

次の例では、値のリストで指定されたゾーンを 2 セル分だけ縮小しています。

# Name: Shrink_Ex_02.py
# Description: Shrinks the selected zones by a 
#              specified number of cells.
# 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 = "land"
cellRemove = 2
zoneSet = [1,3,7,9]

# Execute Shrink
outShrink = Shrink(inRaster, cellRemove, zoneSet)

# Save the output 
outShrink.save("c:/sapyexamples/output/outshrink")

関連トピック