Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

inverseProjection

主成分バンドからのデータ キューブの再構成

    説明

    reconstructedData = inverseProjection(pcDataCube,coeff) は、PCA (主成分分析) または MNF (最大ノイズ フラクション) で変換したデータ キューブおよびそれに関連する係数から、ハイパースペクトル データ キューブの元のスペクトル バンドを再構成します。

    メモ

    この関数には Image Processing Toolbox™ Hyperspectral Imaging Library が必要です。Image Processing Toolbox Hyperspectral Imaging Library はアドオン エクスプローラーからインストールできます。アドオンのインストールの詳細については、アドオンの入手と管理を参照してください。

    すべて折りたたむ

    ハイパースペクトル データをワークスペースに読み取ります。

    hcube = hypercube('indian_pines.dat');

    主成分分析法を使用して、10 個の主成分バンドと変換係数を抽出します。

    [pcDataCube,coeff] = hyperpca(hcube,10);

    10 個の主成分バンドから元のデータを再構成します。

    reconstructedData = inverseProjection(pcDataCube,coeff);

    入力データ キューブの最初の 10 個のスペクトル バンドを表示します。

    figure
    montage(hcube.DataCube(:,:,1:10),'BorderSize',[10 10],'Size',[2 5],'DisplayRange',[]);
    title('Original Data Cube')

    再構成されたデータ キューブの最初の 10 個のスペクトル バンドを表示します。

    figure
    montage(reconstructedData(:,:,1:10),'BorderSize',[10 10],'Size',[2 5],'DisplayRange',[]);
    title('Reconstructed Data Cube')

    入力引数

    すべて折りたたむ

    PCA 変換または MNF 変換されたデータ キューブ。サイズが M x N x P の 3 次元数値配列として指定します。ハイパースペクトル データ キューブの PCA 変換または MNF 変換されたデータ キューブは、それぞれ関数 hyperpca または hypermnf を使用して計算されます。P は変換されたデータ キューブ内の主成分バンドの数を指定します。

    データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    PCA 係数または MNF 係数。サイズが C 行 P 列の行列として指定します。

    データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    出力引数

    すべて折りたたむ

    再構成されたデータ キューブ。サイズが M x N x C の 3 次元数値配列として返されます。再構成されたデータ キューブのデータ型は、入力時の変換されたデータ キューブのデータ型と同じです。

    データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    R2020a で導入