Spatial Analyst のライセンスで利用可能。
サマリー
リモート センシング画像を使用して、ラベルが付いたベクターまたはラスター データをディープ ラーニング トレーニング データセットに変換します。出力は画像チップのフォルダー、および指定した形式のメタデータ ファイルのフォルダーです。
使用法
このツールは、Google TensorFlow や Microsoft CNTK などのサード パーティ製ディープ ラーニング アプリケーションをサポートするトレーニング データセットを作成します。
既存の分類トレーニング サンプル データや、建物フットプリント レイヤーなどの GIS フィーチャクラス データを使用して、ソース画像からのクラス サンプルを含む画像チップを生成します。多くの場合、画像チップは 256 ピクセル (行) x 256 ピクセル (列) です (トレーニング サンプルのサイズがこれより大きくない場合)。
ディープ ラーニング クラス トレーニング サンプルは、画像チップと呼ばれる対象のフィーチャまたはクラスを含む小さなサブイメージに基づきます。
構文
ExportTrainingDataForDeepLearning (in_raster, out_folder, in_class_data, image_chip_format, {tile_size_x}, {tile_size_y}, {stride_x}, {stride_y}, {output_nofeature_tiles}, {metadata_format}, {start_index})
パラメーター | 説明 | データ タイプ | |||||||||||||||||||||||||||
in_raster | 入力ソース画像。通常は、マルチスペクトル画像です。 入力ソース画像のタイプの例としては、マルチスペクトル衛星、ドローン、航空、または NAIP (National Agriculture Imagery Program) 画像などが挙げられます。 | Raster Dataset; Raster Layer | |||||||||||||||||||||||||||
out_folder | 出力画像チップとメタデータを格納するフォルダーを指定します。 | Directory | |||||||||||||||||||||||||||
in_class_data | ベクターまたはラスター形式のラベル付きデータ。 ベクター入力は、ArcGIS Desktop [画像分類] ツールバーで生成されたトレーニング サンプル形式に従う必要があります。 ラスター入力は、[ラスターの分類 (Classify Raster)] ツールで生成された分類ラスター形式に従う必要があります。 | Feature Dataset; Feature Layer; Raster Dataset; Raster Layer | |||||||||||||||||||||||||||
image_chip_format | 画像チップ出力のラスター形式。
| String | |||||||||||||||||||||||||||
tile_size_x (オプション) | 画像チップの X ディメンションのサイズ。 | Long | |||||||||||||||||||||||||||
tile_size_y (オプション) | 画像チップの Y ディメンションのサイズ。 | Long | |||||||||||||||||||||||||||
stride_x (オプション) | 次の画像チップを作成する際に X 方向に移動する距離。 ストライドがタイル サイズと等しい場合、オーバーラップは発生しません。ストライドがタイル サイズの半分と等しい場合は、50% のオーバーラップが発生します。 | Long | |||||||||||||||||||||||||||
stride_y (オプション) | 次の画像チップを作成する際に Y 方向に移動する距離。 ストライドがタイル サイズと等しい場合、オーバーラップは発生しません。ストライドがタイル サイズの半分と等しい場合は、50% のオーバーラップが発生します。 | Long | |||||||||||||||||||||||||||
output_nofeature_tiles (オプション) | ラベル付きデータが重なる画像チップをエクスポートするかどうかを選択します。
| Boolean | |||||||||||||||||||||||||||
metadata_format (オプション) | 出力メタデータ ラベルの形式。トレーニング データの出力メタデータ ラベルには、[KITTI] の四角形、[PASCAL VOC] の四角形および [分類タイル] (クラス マップ) の 3 つのオプションがあります。入力トレーニング サンプル データが建物レイヤーなどのフィーチャクラス レイヤーまたは標準分類トレーニング サンプル ファイルの場合、KITTI または PASCAL VOC の四角形オプションを使用します。出力メタデータは、最小境界範囲内のトレーニング サンプル データを含む *.txt ファイルまたは *.xml ファイルです。メタデータ ファイルの名前は、入力ソース画像名と一致します。入力トレーニング サンプル データがクラス マップの場合、出力メタデータ形式のオプションとして [分類タイル] を使用します。
以下の表は、KITTI メタデータ形式の 15 の値を示しています。ツールでは、15 の値の中でクラス名 (列 1)、4 つの画像座標位置で構成される最小境界範囲 (列 5 ~ 8) の 5 つの値のみが使用されます。最小境界範囲には、ディープ ラーニング分類器に使用されるトレーニング チップが含まれます。
詳細については、「KITTI メタデータ形式 」をご参照ください。 PASCAL VOC の例を以下に示します。
詳細については、「PASCAL Visual Object Classes」をご参照ください。 | String | |||||||||||||||||||||||||||
start_index (オプション) | 画像チップのシーケンスの開始インデックスを設定できます。これにより、既存のシーケンスに画像チップを追加することができます。デフォルト値は 0 です。 | Long |
コードのサンプル
ExportTrainingDataForDeepLearning (ディープ ラーニング用のトレーニング データをエクスポート) の例 1 (Python ウィンドウ)
この例では、ディープ ラーニング用のトレーニング サンプルを作成します。
from arcpy.sa import *
ExportTrainingDataForDeepLearning("c:/test/image.tif", "c:/test/outfolder",
"c:/test/training.shp", "TIFF", "256",
"256", "128", "128", "NO", "KITTI_rectangles")
ExportTrainingDataForDeepLearning (ディープ ラーニング用のトレーニング データをエクスポート) の例 2 (スタンドアロン スクリプト)
この例では、ディープ ラーニング用のトレーニング サンプルを作成します。
# Import system modules and check out ArcGIS Spatial Analyst extension license
import arcpy
arcpy.CheckOutExtension("Spatial")
from arcpy.sa import *
# Set local variables
inRaster = "c:/test/image.tif"
out_folder = "c:/test/outfolder"
in_training = "c:/test/training.shp"
image_chip_format = "TIFF"
tile_size_x = "256"
tile_size_y = "256"
stride_x="128"
stride_y="128"
output_nofeature_tiles="NO"
metadata_format="KITTI_rectangles"
# Execute
ExportTrainingDataForDeepLearning(inRaster, out_folder, in_training,
image_chip_format,tile_size_x, tile_size_y,
stride_x, stride_y,output_nofeature_tiles,
metadata_format)
環境
ライセンス情報
- ArcGIS Desktop Basic: 次のものが必要 Spatial Analyst
- ArcGIS Desktop Standard: 次のものが必要 Spatial Analyst
- ArcGIS Desktop Advanced: 次のものが必要 Spatial Analyst