主要内容

reduceSmile

减少高光谱数据立方体中的光谱微笑效应

    描述

    例子

    correctedData= reduceSmile (hcube减少了高光谱数据中的光谱微笑效应hcube通过平均每个波段的像素值沿光谱维度与大小窗口3..该函数将每个波段的像素值与前一个波段和下一个波段的对应像素值求平均值。光谱微笑效应只出现在使用推扫式高光谱传感器(如Hyperion EO-1和SEBASS)捕获的数据中。

    correctedData= reduceSmile (hcube“BlockSize”,blocksize通过使用名称-值对参数指定用于高光谱数据立方体的块处理的块大小“BlockSize”.您可以指定“BlockSize”在前面的语法中,除了输入参数之外,还有名称-值对参数。

    该函数将输入图像划分为不同的块,对每个块进行处理,然后将每个块处理后的输出连接起来,形成输出矩阵。高光谱图像是多维数据集,可能太大,无法完全装进系统内存中。方法时,可能导致系统内存不足reduceSmile函数。如果遇到这样的问题,请使用此语法执行块处理。

    例如,reduceSmile (hcube BlockSize, [50 50])将输入图像分成大小为50 * 50的不重叠的块,然后对每个块进行微笑校正。

    请注意

    来执行块处理“BlockSize”名称-值对参数,你必须有MATLAB®R2021a或更高版本。

    correctedData= reduceSmile (___名称,值除前面语法中的输入参数外,还使用一个或多个名称-值参数指定选项。例如,“方法”,“延长”指定使用基于最大噪声分数(MNF)变换的方法执行微笑校正。

    请注意

    此函数需要图像处理工具箱™高光谱成像库.您可以安装图像处理工具箱高光谱成像库从Add-On Explorer。有关安装外接程序的详细信息,请参见获取和管理外接组件

    例子

    全部折叠

    从Hyperion EO-1传感器读取高光谱数据到工作空间。

    hCube =超立方体(“EO1H0440342002212110PY_cropped.dat”);

    通常情况下,氧分子在762 nm波长有很强的吸收特性,并产生光谱微笑。在Hyperion EO-1传感器中,762 nm波长对应41波段。波段41的光谱微笑效应也会影响波段40和42。因此,计算波段40和波段42像素值的绝对差值。

    originalData = hCube.DataCube;band40 = originalData(:,:,40);band42 = originalData(:,:,42);bandDiffBeforeCorr = imabsdiff(band40,band42);

    显示波段40和42的差值图像。在差值图像中,光谱微笑效果以从左到右的亮度梯度出现。

    显示亮度图像(bandDiffBeforeCorr)轴图像标题(“校正前40和42波段的差值”) colorbar

    图中包含一个轴对象。标题为Difference of Bands 40 and 42 Before Correction的坐标轴对象包含一个image类型的对象。

    指定要沿着谱维使用的平均窗口的大小。

    Window = 5;

    执行光谱微笑减少。

    correctedHcube = reduceSmile(hCube,“SpectralWindow”,窗口);

    计算并显示校正后波段40和42的绝对差值。微笑校正后的差值图像没有梯度。

    correctedData = correctedHcube.DataCube;corrBand40 = correctedData(:,:,40);corrBand42 = correctedData(:,:,42);bandDiffAfterCorr = imabsdiff(corrBand40,corrBand42);显示亮度图像(bandDiffAfterCorr)轴图像标题(“微笑矫正后40和42分带的差异”) colorbar

    图中包含一个轴对象。标题为Difference of Bands 40 and 42 After Smile Correction的坐标轴对象包含一个image类型的对象。

    输入参数

    全部折叠

    输入高光谱数据,指定为超立方体对象。的DataCube的属性超立方体对象存储高光谱数据立方体。

    数据块的大小,指定为2元素的正整数向量。向量的元素分别对应于每个块中的行数和列数。数据块的大小必须小于输入图像的大小。将高光谱图像划分为更小的块使您可以处理大型数据集,而不会耗尽内存。

    • 如果blocksize值太小,函数的内存使用会减少,但代价是执行时间增加。

    • 如果blocksize值较大或等于输入图像大小,则执行时间减少,代价是增加内存使用。

    例子:“BlockSize”,[20]20指定每个数据块的大小为20x20。

    名称-值参数

    指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

    在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

    例子:reduceSmile (hcube“方法”,“延长”)

    谱微笑校正方法,指定为“SpectralSmoothing”“延长”

    • “SpectralSmoothing”—使用光谱平滑法进行微笑还原。

    • “延长”-使用基于最大噪声分数(MNF)变换的方法进行微笑减少。

    沿光谱维度的平均窗口的大小,指定为小于或等于高光谱数据中高光谱带数的正整数inputData.增加窗口大小可以进一步降低微笑效果,但使用大于的平均窗口9可导致精细大气吸收光谱特征的丧失。要指定此参数,必须指定“方法”参数为“SpectralSmoothing”

    输出参数

    全部折叠

    修正后的高光谱数据,返回为超立方体对象的大小与输入数据相同hcube.如果输入数据为类型,则校正后的高光谱数据为型.否则,校正后的高光谱数据类型为

    参考文献

    [1]珀金斯,蒂莫西,史蒂文M.阿德勒-戈尔登,迈克尔W.马修,亚历山大博克,劳伦斯S.伯恩斯坦,茉莉李和玛莎E.福克斯。“高光谱图像FLAASH大气校正的速度和精度改进。”光学工程51岁的没有。11(2012年6月13日):111707,https://doi.org/10.1117/1.OE.51.11.111707。

    [2]横谷、直人、宫村典hide和岩崎明。用相位相关方法检测和修正高光谱数据的光谱和空间错配。应用光学49岁的没有。24(2010年8月20日):4568。https://doi.org/10.1364/AO.49.004568。

    版本历史

    R2020b中介绍