主要内容

hyperpca

高光谱数据的主成分分析

    描述

    例子

    outputDataCube= hyperpca (inputDatanumComponents从高光谱数据立方体的光谱波段计算指定数量的主成分。该函数返回一个包含主要成分波段的新数据立方体。输出数据立方体中的光谱频带数量等于指定主成分的数量numComponents.为了实现光谱降维,指定的主成分数量必须小于高光谱数据立方体中的光谱波段数量inputData

    outputDataCube多项式系数) = hyperpca (___还返回高光谱数据立方体的光谱维估计的主成分系数。

    例子

    outputDataCube多项式系数var) = hyperpca (___返回除前面语法中提到的输出参数外,主成分波段保留的方差百分比。

    例子

    ___) = hyperpca (___名称,值通过使用名称-值对参数指定主成分分析(PCA)方法和其他选项。

    请注意

    此函数需要图像处理工具箱™高光谱成像库.你可以安装图像处理工具箱高光谱成像库从附加的探险家。有关安装附加组件的详细信息,请参见获取和管理附加组件

    例子

    全部折叠

    读取高光谱数据到工作空间。

    hcube =超立方体(“paviaU.dat”);

    计算高光谱数据立方体的主成分波段。指定要提取的主成分的数量为10。默认情况下,该函数使用奇异值分解(SVD)方法提取主成分。

    reducedDataCube = hyperpca (hcube 10);

    在输入数据立方体中显示前10个光谱波段。

    图蒙太奇(hcube.DataCube (:,: 1:10),“BorderSize”, 10 [10],“大小”(2 - 5),“DisplayRange”[]);

    为了实现可视化,将主分量值重新缩放到[0,1]范围内。显示从数据立方体中提取的所有主成分波段。

    图rescalePC = rescale(reducedDataCube,0,1);蒙太奇(rescalePC“BorderSize”, 10 [10],“大小”[2 - 5]);标题(“数据立方体的主成分带”

    读取高光谱数据到工作空间。

    hcube =超立方体(“paviaU.dat”);

    使用特征值分解对输入数据进行主成分分析。指定要提取的主成分的数量为3。导出主成分(PC)波段、系数和保留方差。

    (outputDataCube多项式系数,var) = hyperpca (hcube 3“方法”“Eig”);

    为了实现可视化,将主分量值重新缩放到[0,1]范围内。显示从数据立方体中提取的所有主成分波段。

    图rescalePC = rescale(outputDataCube,0,1);蒙太奇(rescalePC“BorderSize”, 10 [10],“大小”3 [1]);标题(“数据立方体的主成分带”

    绘制主成分系数,并显示每个主成分保留的方差百分比。保留方差值的总和表明,输入高光谱数据中几乎99%的信息被3个主成分捕获。

    图绘制(hcube.Wavelength、多项式系数);传奇([“PC1”“PC2”“生物”],“位置”“东南”0.19)文本(430年,“保留方差”);文本(430年,0.17,“PC1:”num2str (var(1)))文本(0.15,430“PC2:”num2str (var(2)))文本(0.13,430“生物:”num2str (var(3)))包含(“波长”) ylabel (“PC系数”

    输入参数

    全部折叠

    输入高光谱数据,指定为三维数字数组,表示大小的高光谱数据立方体——- - - - - -N——- - - - - -C超立方体对象。如果输入是a超立方体对象时,函数从DataCube对象的属性。高光谱数据立方体必须是真实的、非稀疏的。

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

    要从数据立方体中提取的主成分波段的数目,指定为正整数标量。该值必须小于或等于输入数据立方体中的光谱频带数。

    数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

    名称-值参数

    指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

    例子:hyperpca (hcube 10“方法”,“eig”)

    PCA方法,指定为以下值之一:

    • 圣言会' -利用奇异值分解方法导出主成分。

    • eig' -利用特征值分解方法导出主成分。

    数据类型:字符|字符串

    平均定心光谱波段的指标,指定为以下值之一:

    • 真正的或1 -在计算主成分波段之前,通过减去光谱波段的平均值来使输入数据立方体中的每个光谱波段居中。

    • 或0 -计算主成分波段,而不以输入数据立方体中的光谱波段为中心。

    数据类型:逻辑

    输出参数

    全部折叠

    PCA转换的数据立方体,返回大小为3-D数字数组——- - - - - -N——- - - - - -numComponents.输出数据立方体的空间维度与输入数据立方体的空间维度相同。输出数据立方体的光谱维数等于指定的主成分数量numComponents

    如果输入数据类型为double,则输出数据类型也是double。否则,输出数据类型为single。

    数据类型:|

    主成分系数,返回为大小矩阵C——- - - - - -numComponentsC为输入数据立方体中的光谱频带数。每一列的多项式系数包含一个主成分的系数。列是按分量方差下降的顺序排列的。

    如果输入数据类型为double,则表示多项式系数也翻倍。否则,数据类型为单一。

    数据类型:|

    每个主分量保留的方差,以长度等于的向量返回numComponents.保留方差指定由每个主成分解释的总方差百分比。

    如果输入数据类型为double,则表示var也翻倍。否则,数据类型为单一。

    数据类型:|

    介绍了R2020a