モザイク データセット内で関数を使用してアルゴリズムを実装する

複雑性: 中級 データ要件: ArcGIS.com

このワークフローでは、モザイク データセットで関数を組み合わせて NDVI を作成する方法について説明します。縮尺やオフセットを適用して視覚化できる NDVI 関数も提供されていますが、-1.0 ~ 1.0 の範囲の元の NDVI 値が必要な場合は、次に示す手順を実装する必要があります。

関数の適用先はモザイク データセットで、モザイク データセット内の個々のラスタではありません。

NDVI のアルゴリズムは次のとおりです。

NDVI = ((IR - R)/(IR + R))
この式の要素は次のとおりです。
IR = 赤外バンド
R = 赤バンド

結果は [関数] タブに次のレイアウトで表示されます。

NDVI 関数チェーン

このワークフローは、各入力データとアクションに従って分解されます。次のリストは、アルゴリズムの計算順序を示したものですが、関数をチェーンにした場合は、上の図に示すように、結果から開始して入力データに向かって操作を進めていくことになります。

  1. バンド入力の定義: IR および R
  2. バンド間の差分計算: IR -R
  3. バンドを足し合わせる: IR + R
  4. これらを除算: (IR - R) / (IR + R)

モザイク データセットの設定

次に、モザイク データセット上で関数を適用します。このため、モザイク データセットを作成し、すべてのラスタ データを追加する必要があります。赤外線バンドと赤のバンドについて、データは同じバンドを持っていると想定します。この例では、赤外線バンドをバンド 1、赤のバンドをバンド 2 とします。

手順:
  1. モザイク データセットを作成します。
  2. ラスタ データをモザイク データセットに追加します。

    必ず概観図を構築してください。

算術関数のチェーン

手順:
  1. ArcMap の表示にモザイク データセットを追加します。

    モザイク データセットはすぐに追加することも、一番最後に追加することもできます。モザイク データセットを ArcMap に追加して、イメージ レイヤに結果を表示します。モザイク データセットを作成した直後であれば、モザイク データセットは ArcMap ですでに開いています。

  2. [カタログ] ウィンドウ カタログ を開き、モザイク データセットに移動します。
  3. モザイク データセットを右クリックし、[プロパティ] をクリックします。
  4. [関数] タブをクリックします。

    1 つのモザイク関数がリストされた次の関数チェーンが表示されます。これはモザイク データセットであり、すべてのラスタがモザイク化されているので、デフォルトではモザイク関数が表示されます。アルゴリズムは、モザイク後のデータに適用されます。

    デフォルトのモザイク関数

  5. [モザイク関数] を右クリックして、[挿入] [算術関数] の順にクリックします。

    関数を挿入する場合、クリックした関数の上に挿入されます。

    算術関数の挿入

    これにより、[ラスタ関数プロパティ] ダイアログ ボックスが開き、この関数にオプションを設定できるようになります。

  6. [演算] のドロップダウン矢印をクリックし、[除算] をクリックします。

    入力はそのままになります。このダイアログ ボックスを閉じたときに、入力が関数チェーンに追加されます。

  7. [一般] タブをクリックします。
  8. [関数名] テキスト ボックスに、「Divide」と入力します。
  9. [出力ピクセル タイプ] のドロップダウン矢印をクリックして、[32 ビット浮動小数点] をクリックします。

    このアルゴリズムの出力値の範囲は -1 ~ 1 です。ピクセル タイプを指定する必要があります。指定しなければ、入力と同等のピクセル値(8 ビットなど)になります。

  10. [OK] をクリックします。

    除算(Divide)関数が関数チェーンの一番上に追加され、モザイク関数がもう 1 つ追加されます。これは、算術関数には 2 つの入力が必要なためです。

    除算関数

  11. 関数チェーン内の一番上の [モザイク関数] を右クリックして、[挿入] [算術関数] の順にクリックします。
  12. [演算] のドロップダウン矢印をクリックし、[減算] をクリックします。

    入力はそのままです。このダイアログ ボックスを閉じたときに、入力が関数チェーンに追加されます。

  13. [一般] タブをクリックします。
  14. [関数名] テキスト ボックスに、「Minus」と入力します。
  15. [出力ピクセル タイプ] のドロップダウン矢印をクリックして、[32 ビット浮動小数点] をクリックします。
  16. [OK] をクリックします。

    減算(Minus)関数が除算(Divide)関数の後に追加され、[モザイク関数] という名前の 2 つの入力が下に追加されます。

    減算関数

  17. 関数チェーン内の一番下の [モザイク関数] を右クリックして、[挿入] [算術関数] の順にクリックします。
  18. [演算] のドロップダウン矢印をクリックし、[加算] をクリックします。

    入力はそのままです。このダイアログ ボックスを閉じたときに、入力が関数チェーンに追加されます。

  19. [一般] タブをクリックします。
  20. [関数名] テキスト ボックスに、「Plus」と入力します。
  21. [出力ピクセル タイプ] のドロップダウン矢印をクリックして、[32 ビット浮動小数点] をクリックします。
  22. [OK] をクリックします。

    加算(Plus)関数が一番下に減算関数と同じレベルで追加され、[モザイク関数] という名前の 2 つの入力が下に追加されます。

算術関数の入力の定義

計算に使用する関数(算術関数)を追加したら、次に入力を特定する必要があります。これらは IR バンドと R バンドで、それぞれバンド 1 とバンド 2 になります(上で定義したとおりです)。これらを特定するには、バンド抽出関数を使用します。

手順:
  1. 減算(Minus)関数の下で、一番上の [モザイク関数] を右クリックして、[挿入] [バンド抽出関数] の順にクリックします。

    バンド抽出関数の挿入

  2. [バンド ID] テキスト ボックスに「1」と入力します。
  3. [一般] タブをクリックします。
  4. [関数名] テキスト ボックスに、「Extract IR」と入力します。
  5. [OK] をクリックします。

    IR 抽出(Extract IR)関数が関数チェーンに追加され、入力として [モザイク関数] が追加されます。

  6. 減算(Minus)関数の下のもう 1 つの [モザイク関数] を右クリックして、[挿入] [バンド抽出関数] の順にクリックします。
  7. [バンド ID] テキスト ボックスに「2」と入力します。
  8. [一般] タブをクリックします。
  9. [関数名] テキスト ボックスに、「Extract Red」と入力します。
  10. [OK] をクリックします。

    赤の抽出(Extract Red)関数が関数チェーンに追加され、入力として [モザイク関数] が追加されます。

    追加されたバンド抽出関数
  11. 加算(Plus)関数の下の入力に対して、同じ手順を繰り返します。

    最終的な関数チェーンは、このトピックの最初に示した図のようになります。

  12. [OK] をクリックして [モザイク データセット プロパティ] ダイアログ ボックスを閉じます。

これらの関数を追加し終えたら、モザイクされたイメージをプレビューできます。32 ビットの出力を含むように変更したので、モザイク データセットの統計情報を計算し直す必要がある場合があります。統計情報の再計算には、[統計情報の計算(Calculate Statistics)] ツールを使用できます。

[個別属性] ツールや [ピクセル調査] ツールを使用して、ピクセル値を確認できます。

関連トピック

9/14/2013