このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
fippi
構文
説明
は、Fast Iterative Pixel Purity Index (FIPPI) アルゴリズムを使用してハイパースペクトル データ endmembers
= fippi(inputData
,numEndmembers
)inputData
からエンドメンバー シグネチャを抽出します。numEndmembers
は FIPPI アルゴリズムを使用して抽出するエンドメンバー シグネチャの数です。FIPPI 法の詳細については、アルゴリズムを参照してください。
はさらに、エンドメンバーの計算前に使用される次元削減方法を選択するためのオプションを指定します。endmembers
= fippi(inputData
,numEndmembers
,'ReductionMethod',method
)
メモ
この関数には Image Processing Toolbox™ Hyperspectral Imaging Library が必要です。Image Processing Toolbox Hyperspectral Imaging Library はアドオン エクスプローラーからインストールできます。アドオンのインストールの詳細については、アドオンの入手と管理を参照してください。
Image Processing Toolbox Hyperspectral Imaging Library は MATLAB® Online™ または MATLAB Mobile™ ではサポートされないため、デスクトップの MATLAB が必要となります。
例
入力引数
出力引数
アルゴリズム
FIPPI は、各反復の後にエンドメンバーにより適した候補を繰り返し選択する反復手法です。Pixel-Purity Index (PPI) 手法とは異なり、FIPPI 法では自動ターゲット生成処理 (ATGP) を使用してスキュアーの初期セットを選択します [1]。その結果、アルゴリズムの収束がより高速になり、エンドメンバーごとに一意のピクセルが生成されます。FIPPI 手法に含まれる手順をまとめると以下のとおりです。
主成分バンドを計算し、MNF または PCA を使用して入力データのスペクトル次元を削減します。抽出する主成分バンドの数は、抽出するエンドメンバーの数と等しく設定されます。
ATGP 法を使用してエンドメンバーの初期セットを求めます。エンドメンバーの初期セットは、入力データの投影先スキュアー のセットを構成します。
反復 1 では、r1 をピクセル スペクトルを表すサンプル ベクトルとします。次に、このサンプル ベクトルを各スキュアーに直交投影して極値を求めます。
各極値の場所を格納してその発生数をカウントします。この発生数を PPI カウントと呼びます。
ピクセル スペクトルごとの PPI カウントを求め、エンドメンバーとして最大 PPI カウントを持つサンプル ベクトルのセット {rk} を特定します。
新しいエンドメンバーのセットとスキュアーの初期セットを組み合わせて、新しいスキュアーのセットを生成します。
反復 2 では、すべてのサンプル ベクトルを新しいスキュアーのセットに投影し、新しいエンドメンバーのセットを特定します。次に、次の反復用の新しいスキュアーのセット を生成します。
2 回の連続する反復で生成されたスキュアーのセットが同じになった場合、反復が停止します。このスキュアーの最終セットは入力データのエンドメンバーです。
参照
[1] Chang, C.-I., and A. Plaza. “A Fast Iterative Algorithm for Implementation of Pixel Purity Index.” IEEE Geoscience and Remote Sensing Letters 3, no. 1 (January 2006): 63–67. https://doi.org/10.1109/LGRS.2005.856701.
バージョン履歴
R2020a で導入