ディープ ラーニングに使用するラベル オブジェクト

Image Analyst ライセンスで利用できます。

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

すべての教師付きディープ ラーニング タスクはラベル付きのデータセットに依存しているため、人間がその知識を活用して、対象のオブジェクトを識別または検出するように、ニューラル ネットワークをトレーニングする必要があります。 ラベル付きのオブジェクトは、ニューラル ネットワークがデータの推論の実行に使用できるモデルをトレーニングするために使用します。

ラベリングは、対象のオブジェクトの代表的サンプルを選択するプロセスです。 ラベリングのために選択されるオブジェクトは、対象のオブジェクトの空間、スペクトル、方位、サイズ、および状態の特性を正確に表す必要があります。 ラベル付きのオブジェクトが対象のフィーチャをより良く表すほど、ディープ ラーニング モデルのトレーニングが良くなり、推論の分類および検出がより正確になります。

画像のアノテーションまたはラベリングは、コンピューター ビジョンや学習などのディープ ラーイング タスクに欠かすことができません。 優れたディープ ラーニング モデルをトレーニングするには、大量のラベル付きデータが必要です。 適切なトレーニング データを利用できる場合、ディープ ラーニング システムは、フィーチャ抽出、パターン認識、および複雑な問題の解決を正確に実行できます。 [ディープ ラーニングのオブジェクトのラベル付け] ウィンドウを使用して、データにラベルを付けることができます。

[ディープ ラーニングのオブジェクトのラベル付け] ボタン ディープ ラーニングのオブジェクトのラベル付け には、[画像] タブの [画像分類] グループの [ディープ ラーニング ツール] ドロップダウン メニューからアクセスします。 ツールが開いたら、既存のレイヤーを使用するか、画像コレクションを作成します。 新しい画像コレクションでは、画像フォルダーの場所を参照すると画像コレクションを含むレイヤーが作成されます。

[画像コレクション] パラメーターの値を指定すると、[オブジェクトのラベル付け] ウィンドウが表示されます。 このウィンドウは、2 つのパートに分かれています。 ウィンドウの上部はクラスの管理に使用され、ウィンドウの下部はサンプルのコレクションの管理とディープ ラーニング フレームワークのトレーニング データのエクスポートに使用されます。

オブジェクトのラベル付けウィンドウ

クラスの作成とオブジェクトのラベル付け

ウィンドウの上部では、オブジェクト クラスを管理し、ディープ ラーニング モデルのトレーニングに使用するオブジェクトを作成できます。 以下のスケッチ ツールおよび人工知能 (AI) 支援ツールを、ラベル付きオブジェクトの作成に使用できます。

ツール説明
New Rectangle

ラスター内のフィーチャまたはオブジェクトの周囲に四角形を描画して、ラベル付きオブジェクトを作成します。

New Polygon

ラスター内のフィーチャまたはオブジェクトの周囲にポリゴンを描画して、ラベル付きオブジェクトを作成します。

New Circle

ラスター内のフィーチャまたはオブジェクトの周囲に円を描画して、ラベル付きオブジェクトを作成します。

New Lasso Area

ラスター内のフィーチャまたはオブジェクトの周囲にフリーハンドの図形を描画して、ラベル付きオブジェクトを作成します。

自動検出

フィーチャまたはオブジェクトを自動的に検出してラベルを付けます。 ポリゴンは、フィーチャまたはオブジェクトの周辺に描画されます。

このツールは、ディープ ラーニング フレームワークがインストールされている場合にのみ使用できます。

ポリゴンによる選択

セグメント レイヤーからセグメントを選択して、フィーチャを作成します。 このオプションは、[コンテンツ] ウィンドウ内にセグメント レイヤーが存在する場合にのみ使用できます。 [コンテンツ] ウィンドウ内のセグメント レイヤーを選択することによって、[セグメント ピッカー] をアクティブにし、[セグメント ピッカー] ドロップダウン リストからレイヤーを選択します。

ラベル画像

選択されたクラスを現在の画像に割り当てます。

このツールは、画像コレクション モードでのみ使用できます。

編集

ラベル付きオブジェクトを選択および編集します。

新しいテンプレート

分類スキーマを作成します。

参照

分類スキーマのオプションを選択します。

  • 既存のスキーマを参照します。
  • 新しいスキーマを既存のトレーニング サンプル フィーチャクラスから生成します。
  • 新しいスキーマを既存の分類ラスターから生成します。
  • デフォルトの 2011 年の National Land Cover Database スキーマを使用して、新しいスキーマを生成します。

保存

変更をスキーマに保存します。

編集の保存

スキーマのコピーを保存します。

追加

クラス カテゴリをスキーマに追加します。 まず、スキーマの名前を選択して、最高レベルの親クラスを作成します。 既存のクラスの名前を選択して、サブクラスを作成します。

選択アイテムの削除

選択したクラス カテゴリまたはサブクラス カテゴリをスキーマから削除します。

AI アシスト ラベリング ツール

[自動検出] および [テキスト プロンプト] という、オブジェクトにラベルを付けるための 2 種類の AI ツールがあります。

自動検出ツール

[自動検出] ツール 自動検出 は、フィーチャを囲む四角形を自動的に描画します。 フィーチャをクリックすると、フィーチャを含んでいる境界四角形が描画されます。 フィーチャのポリゴン境界が必要である場合、Shift キーを押しながら、フィーチャをクリックすると、フィーチャの形状の輪郭が描画されます。 ツールが適切に機能するようにするには、有意なピクセル数のフィーチャをマップ上に表示する必要があり、フィーチャを拡大する必要があります。

[自動検出] ツールは、個別の形状、鋭いエッジ、および高いコントラストを特徴とする個別のフィーチャに対して適切に機能します。 互いにごく接近している連続フィーチャの場合は、お勧めしません。

注意:

この機能を使用するには、ArcGIS 用のディープ ラーニング フレームワークをインストールする必要があります。

テキスト プロンプト ツール

[テキスト プロンプト] ツールでフィーチャの検出を使用して、ラベリングを支援することができます。 オブジェクトの名前を [クラス名] テキスト ボックスに入力して、[検出] ボタンをクリックします。 この機能には、少なくとも 12 GB の RAM とともに高性能の GPU を使用することをお勧めします。

結果を改善するために、[構成] オプションで [ボックス閾値] および [テキスト閾値] の値を設定できます。

  • [ボックス閾値] - この値は、画像内のオブジェクトの検出に使用されます。 この値を高くすると、モデルがより選択的になり、最も信頼度の高いオブジェクト インスタンスのみを識別し、全体的な検出数が少なくなります。 この値を低くすると、モデルの許容度が高くなり、検出数が増え、信頼度の低いオブジェクトが含まれる可能性があります。 閾値の値の範囲は 0 ~ 1 です。
  • [テキスト閾値] - この値は、検出されたオブジェクトを指定されたテキスト プロンプトに関連付けるために使用されます。 この値を高くすると、オブジェクトとテキスト プロンプトの間のより強い関連が必要になり、精度が高くなりますが、関連が少なくなる可能性があります。 この値を低くすると、より弱い関連を考慮するようになり、関連の数が増えることがありますが、精度の低い一致も導入されます。 閾値の値の範囲は 0 ~ 1 です。

注意:

この機能を使用するには、ArcGIS 用のディープ ラーニング フレームワークをインストールする必要があります。

クラスの定義ダイアログ ボックス

[クラスの定義] ダイアログ ボックスを使用して、クラスを作成したり、既存のクラスを定義したりできます。 [既存のクラスを使用] を選択した場合は、そのオブジェクトに適切な [クラス名] オプションを選択します。 [新しいクラスの追加] を選択した場合、情報を編集し、[OK] をクリックしてクラスを作成できます。

オブジェクトのラベル付け タブ

[オブジェクトのラベル付け] ウィンドウの下部のセクションにある [ラベル付きオブジェクト] タブでは、クラスごとに収集したトレーニング サンプルを管理します。 画像内のクラスごとに、代表的な領域 (つまり、トレーニング サンプル) を収集します。 トレーニング サンプルは、位置情報 (ポリゴン) および関連するクラスを含んでいます。 画像分類アルゴリズムは、フィーチャクラスとして保存されたトレーニング サンプルを使用して、画像全体の土地被覆クラスを識別します。

トレーニング サンプルを表示し、それらを追加したり、グループ化したり、削除することによって、管理できます。 トレーニング サンプルをクリックすると、マップ上でそのサンプルが選択されます。 テーブル内のトレーニング サンプルをダブルクリックすると、マップ内のそのサンプルにズームします。

次の表で、[ラベル付きオブジェクト] タブのツールを説明します。

ツール説明
参照

既存のトレーニング サンプル フィーチャクラスを開きます。

保存

現在のラベル付きオブジェクト フィーチャクラスに対して行った編集内容を保存します。

編集の保存

現在のラベル付きオブジェクトを新しいフィーチャクラスとして保存します。

選択アイテムの削除

選択したラベル付きオブジェクトを削除します。

トレーニング データのエクスポート タブ

サンプルを収集したら、[トレーニング データのエクスポート] タブをクリックして、サンプルをトレーニング データにエクスポートできます。 その後、トレーニング データをディープ ラーニング モデルで使用できます。 以下で説明されるパラメーター値を設定したら、[実行] をクリックしてトレーニング データを作成します。

パラメーター説明

出力フォルダー

トレーニング データを保存する出力フォルダー。

マスク ポリゴン フィーチャ

画像チップが作成される領域を描画するポリゴン フィーチャクラス。

このポリゴンに完全に含まれる画像チップのみが作成されます。

画像形式

画像チップ出力のラスター形式を指定します。

  • TIFF - これがデフォルトです。
  • MRF 形式
  • PNG
  • JPEG

PNG 形式および JPEG 形式は、3 バンドまでサポートします。

タイル サイズ X

画像チップのサイズ (x ディメンション)。

タイル サイズ Y

画像チップのサイズ (y ディメンション)。

ストライド X

次の画像チップを作成する際に x 方向に移動する距離。

ストライドがタイル サイズと等しい場合、オーバーラップは発生しません。 ストライドがタイル サイズの半分と等しい場合は、50% のオーバーラップが発生します。

ストライド Y

次の画像チップを作成する際に y 方向に移動する距離。

ストライドがタイル サイズと等しい場合、オーバーラップは発生しません。 ストライドがタイル サイズの半分と等しい場合は、50% のオーバーラップが発生します。

回転角度

画像チップを生成するために使用される回転角度。

画像チップは最初に 0 の回転角度で生成されます。 その後、画像チップは、追加の画像チップを作成するために、指定した角度で回転されます。 画像は、360 度回転するまで回転され、チップが作成されます。 たとえば、45 度の回転角度を指定すると、ツールは 8 個の画像チップを作成します。 8 個の画像チップは、0、45、90、135、180、225、270、315 度で作成されます。

フィーチャなしのタイルを出力

トレーニング サンプルをキャプチャしない画像チップをエクスポートするかどうかを指定します。

  • オフ - トレーニング サンプルを取得する画像チップのみをエクスポートします。 これがデフォルトです。
  • オン - トレーニング サンプルを取得しないものも含め、すべての画像チップをエクスポートします。

トレーニング サンプルを含んでいない画像チップの収集は、モデルが、偽陽性オブジェクトなどの、結果の一部と見なされるべきではないオブジェクトを識別するのに役立つことができます。 過剰適合も低減することができます。

メタデータ形式

出力メタデータ ラベルに使用する形式を指定します。

入力トレーニング サンプル データがビルディング レイヤーなどのフィーチャクラス レイヤーまたは標準分類トレーニング サンプル ファイルの場合、[KITTI ラベル] または [PASCAL Visual Object Classes] オプションを使用します (Python では KITTI_rectanglesPASCAL_VOC_rectangles)。 出力メタデータは、最小境界範囲内のトレーニング サンプル データを含む .txt ファイルまたは .xml ファイルです。 メタデータ ファイルの名前は、入力ソース画像名と一致します。 入力トレーニング サンプル データがクラス マップの場合、出力メタデータ形式として [分類タイル] オプション (Python の Classified_Tiles) を使用します。

  • [KITTI ラベル] - メタデータは、KITTI (Karlsruhe Institute of Technology and Toyota Technological Institute) オブジェクト検出評価データセットと同じ形式に従います。 KITTI データセットは、Vision Benchmark Suite です。 ラベル ファイルは、プレーン テキスト ファイルです。 数値および文字列のすべての値はスペースで区切られ、各行は 1 つのオブジェクトと対応しています。
  • [PASCAL Visual Object Classes] - メタデータは、PASCAL VOC (Pattern Analysis, Statistical Modeling and Computational Learning, Visual Object Classes) データセットと同じ形式に従います。 PASCAL VOC データセットは、オブジェクト クラスの認識のために標準化された画像データセットです。 ラベル ファイルは .xml ファイルであり、画像名、クラス値、境界四角形に関する情報が含まれています。 これがデフォルトです。
  • [分類済みタイル] - 1 つの入力画像チップにつき、分類された画像チップが 1 つ出力されます。 各画像チップに対してその他のメタデータは使用されません。 統計出力だけに、クラスに関する詳細情報 (クラス名、クラス値、出力統計など) が含まれます。
  • [RCNN マスク] - サンプルが存在する領域にマスクが含まれる画像チップが出力されます。 このモデルは、画像内のオブジェクトの各インスタンスに対して、境界四角形とセグメンテーション マスクを生成します。 ディープ ラーニング フレームワーク モデルの FPN (Feature Pyramid Network) と ResNet101 バックボーンに基づいています。
  • [ラベル付きタイル] - 各出力タイルは、特定のクラスでラベル付けされます。 このメタデータ形式を選択した場合、[フィーチャの周囲を黒く表示] パラメーターおよび [トリミング モード] パラメーターを詳細に調整できます。
  • 複数のラベル付きタイル - 各出力タイルは、1 つ以上のクラスでラベル付けされます。 たとえば、タイルに「agriculture」および「cloudy」とラベル付けすることができます。 この形式の使用目的はオブジェクト分類です。
  • [タイルのエクスポート] - 出力は、ラベルのない画像チップです。 この形式は、Pix2Pix や超解像などの画像変換技術に使用されます。
  • [CycleGAN] - 出力は、ラベルのない画像チップです。 この形式は、重なり合わない画像のトレーニングに使用される画像変換技術 CycleGAN に使用されます。
  • [Imagenet] - 各出力タイルは、特定のクラスでラベル付けされます。 この形式は、オブジェクト分類のために使用されます。ただし、トレーニング中にディープ ソート モデル タイプが使用される場合、オブジェクト トラッキングにも使用できます。

KITTI メタデータ形式では 15 個の列が作成されますが、そのうちツールで使用されるのは 5 つのみです。 最初の列はクラス値です。 次の 3 つの列はスキップされます。 5 ~ 8 番目の列は、4 つの画像座標位置 (上下左右のピクセル) で構成される最小境界範囲を定義します。 最小境界範囲には、ディープ ラーニング分類器に使用されるトレーニング チップが含まれます。 残りの列は使用されません。

フィーチャの周囲を黒く表示

それぞれの画像ファイル内で各オブジェクトまたはフィーチャの周囲のピクセルをマスクするかどうかを指定します。

  • オフ - オブジェクトまたはフィーチャの周囲のピクセルがマスクされません。 これがデフォルトです。
  • オン - オブジェクトまたはフィーチャの周囲のピクセルがマスクされます。

このパラメーターは、[メタデータ形式] パラメーターが [ラベル付きタイル] に設定されており、入力フィーチャクラスまたは分類ラスターが指定されている場合にのみ適用されます。

トリミング モード

エクスポートされたタイルが、すべて同じサイズになるようにトリミングされるかどうかを指定します。

  • [固定サイズ] - エクスポートされたタイルが同じサイズになり、フィーチャが中央に配置されます。 これがデフォルトです。
  • [境界四角形] - タイル内のフィーチャだけが境界ジオメトリで囲まれるように、エクスポートされたタイルがトリミングされます。

このパラメーターは、[メタデータ形式] パラメーターが [ラベル付きタイル] または [ImageNet] に設定されており、入力フィーチャクラスまたは分類ラスターが指定されている場合にのみ適用されます。

参照系

入力画像を解釈するために使用される参照系のタイプを指定します。 指定する参照系は、ディープ ラーニング モデルをトレーニングするために使用する参照系と一致する必要があります。

  • [マップ空間] - 入力画像はマップベースの座標系です。 これがデフォルトです。
  • [ピクセル空間] - 入力画像は、画像空間 (行および列) 内で回転も変形もされません。

追加入力ラスター

画像変換方法の追加の入力画像ソース。

このパラメーターは、[メタデータ形式] パラメーターが [分類済みタイル][タイルのエクスポート]、または [CycleGAN] に設定されている場合に有効です。

これで、エクスポートされたトレーニング データが、ディープ ラーニング モデル内で使用できるようになりました。

関連トピック