サマリー
SVM 分類定義を使用して、Esri 分類器定義 (*.ecd) ファイルを作成します。
使用法
SVM 分類器は、強力な教師付き分類方法です。SVM 分類器は、セグメント ラスター入力に適していますが、標準的な画像を処理することもできます。研究分野で一般的に使用される分類方法です。
標準的な画像入力の場合、このツールは任意のビット深度のマルチバンド画像を受け入れ、入力トレーニング フィーチャ ファイルに基づいてピクセル ベースで SVM 分類を実行します。
セグメント ラスターの場合、キー プロパティが [セグメント化] に設定されており、このツールは RGB セグメント ラスターからインデックス画像と、関連するセグメント属性を計算します。これらの属性は、別の分類ツールで使用される分類器定義ファイルを生成するために計算されます。各セグメントの属性は、Esri でサポートされている画像から計算できます。
最尤法分類方法とは反対に、SVM 分類器ツールには複数の利点があります。
- SVM 分類器に必要なサンプル数ははるかに少なく、サンプルが正規分布である必要はありません。
- これは、ノイズ、相関性のあるバンド、および各クラス内のトレーニング サイトの不釣り合いな数やサイズに左右されません。
ラスター製品、セグメント化されたラスター、モザイク、イメージ サービス、または一般的なラスター データセットなど、Esri でサポートされているラスターは入力として受け入れられます。セグメント ラスターは 3 バンドの 8 ビット ラスターである必要があります。
トレーニング サンプル ファイルを作成するには、[画像分類] ツールバーから [トレーニング サンプル マネージャー] を使用します。[画像分類] ツールバーの使用方法の詳細は、「画像分類とは」をご参照ください。
[セグメント属性] パラメーターは、ラスター レイヤー入力のうちのいずれかがセグメント画像である場合にのみ、有効になります。
構文
TrainSupportVectorMachineClassifier (in_raster, in_training_features, out_classifier_definition, {in_additional_raster}, {max_samples_per_class}, {used_attributes})
パラメーター | 説明 | データ タイプ |
in_raster | 分類するラスター データセットを選択します。 入力は、3 バンドの 8 ビット セグメント ラスター データセットをお勧めします。ここでは、同じセグメント内のすべてのピクセルは同じ色を持ちます。入力は、1 バンドの 8 ビット グレースケール セグメント ラスターにすることもできます。セグメント化ラスターがない場合は、Esri でサポートされているラスター データセットを使用できます。 | Raster Layer; Mosaic Layer; Image Service; String |
in_training_features | トレーニング サイトを表すトレーニング サンプル ファイルまたはレイヤーを選択します。 これらは、トレーニング サンプルを含んでいる、シェープファイルまたはフィーチャクラスです。 | Feature Layer; Raster Catalog Layer |
out_classifier_definition | これは、分類器に必要な属性情報、統計情報、ハイパープレーン ベクトル、およびその他の情報を含んでいる JSON ファイルです。.ecd 拡張子付きのファイルが作成されます。 | File |
in_additional_raster (オプション) | 必要に応じて、マルチスペクトル画像や DEM などの補助ラスター データセットを取り入れて、分類の属性やその他の必要な情報を生成できます。 | Raster Layer; Mosaic Layer; Image Service; String |
max_samples_per_class (オプション) | 各クラスを定義するために使用するサンプルの最大数。 入力がセグメント ラスターでない場合は、デフォルトの値 500 を推奨します。0 以下の値は、システムが分類器をトレーニングするためにトレーニング サイトのすべてのサンプルを使用することを意味します。 | Long |
used_attributes [used_attributes;used_attributes,...] (オプション) | 出力ラスターに関連付けられた属性テーブルに含める属性を指定します。
このパラメーターは、入力ラスターで [セグメント化] キー プロパティを true に設定した場合にのみ有効になります。このツールへの入力が、セグメント画像のみである場合、デフォルトの属性は COLOR、COUNT、COMPACTNESS、および RECTANGULARITY になります。セグメント画像とともに in_additional_raster も入力として含まれている場合、必要に応じて MEAN と STD を使用できます。 | String |
コードのサンプル
TrainSupportVectorClassifie (SVM による分類器定義ファイルの作成) の例 1 (Python ウィンドウ)
この Python の例は、SVM 分類器を使用して、セグメント化されたラスターを分類しています。
import arcpy
from arcpy.sa import *
arcpy.gp.TrainSupportVectorMachineClassifier(
"c:/test/moncton_seg.tif", "c:/test/train.gdb/train_features",
"c:/output/moncton_sig_SVM.ecd", "c:/test/moncton.tif", "10",
"COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY")
TrainSupportVectorClassifier (SVM による分類器定義ファイルの作成) の例 2 (スタンドアロン スクリプト)
この Python スクリプトは、SVM 分類器を使用して、セグメント化されたラスターを分類しています。
# Import system modules
import arcpy
from arcpy.sa import *
# Set local variables
inSegRaster = "c:/test/moncton_seg.tif"
train_features = "c:/test/train.gdb/train_features"
out_definition = "c:/output/moncton_sig.ecd"
in_additional_raster = "c:/moncton.tif"
maxNumSamples = "10"
attributes = "COLOR;MEAN;STD;COUNT;COMPACTNESS;RECTANGULARITY"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
#Execute
arcpy.gp.TrainSupportVectorMachineClassifier(
inSegRaster, train_features, out_definition,
in_additional_raster, maxNumSamples, attributes)
環境
ライセンス情報
- ArcGIS Desktop Basic: 次のものが必要 Spatial Analyst
- ArcGIS Desktop Standard: 次のものが必要 Spatial Analyst
- ArcGIS Desktop Advanced: 次のものが必要 Spatial Analyst