主要内容

correctOOB

利用传感器的光谱响应校正带外效应

    描述

    示例

    newhcube.=替换器(hcubespectralResponse通过使用传感器的频谱响应特性,校正输入卫星数据中的带外(OOB)效应。该方法适用于多光谱卫星数据中的OOB校正。

    使用此功能可校正不同区域的OOB效果,如清水、浑浊水域、绿色植被、沙土等。该方法在输入数据对瑞利散射和气溶胶散射进行补偿的情况下,得到了最好的结果。为了测量大水体场景的OOB效应,必须首先从输入的卫星数据中计算出水离开辐射光谱。

    示例

    [newhcube.oobEffect] =替换机(hcubespectralResponse也返回每个光谱波段的相对OOB效应。

    示例

    [___] =替换机(hcubespectralResponse“RegionMask”,面具通过使用名称-值对参数指定区域掩码'RegionMask'.该区域掩模指示输入卫星数据中的均匀区域。

    newhcube.=替换器(___“BlockSize”,blocksize指定通过使用名称值对参数来块处理超细数据多维数据集的块大小'blocksize'.您可以指定'blocksize'名称 - 值对参数除了先前语法中的输入参数之外。

    该功能将输入图像划分为不同的块,处理每个块,然后连接每个块的处理后的输出以形成输出矩阵。高光谱图像是多维数据集,其可以太大而无法完全符合系统存储器。这可能导致系统在运行时耗尽内存correctOOB功能。如果遇到此类问题,请使用此语法执行块处理。

    例如,correctOOB (hcube、spectralResponse BlockSize, [50 50])将输入图像划分为大小50×50的非重叠块,然后在每个块上执行带外校正。

    注意

    来执行块处理'blocksize'名称 - 值对参数,您必须具有MATLAB R2021A或更高版本。

    注意

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

    例子

    全部折叠

    将多光谱数据读入工作区。

    hcube =超立方体('lc08_l1tp_097070_20201101_20201101_01_cropped.dat');

    将数字数字的像素值转换为大气(TOA)辐射值的顶部。

    hcube = dn2radiance(hcube);

    估算遥感水的反射率。

    [rrshcube,mask] = rrs(hcube);

    读取传感器的光谱响应。

    SpectralResponse = Readtable(“spectralResponse.txt”);SpectralResponse = Table2Array(SpectralResponse);

    使用区域掩码指定的透明水像素执行OOB校正。

    [newhcube, oobEffect] = correctOOB (rrshcube spectralResponse,'RegionMask',面具);

    估计输入的RGB图像和OOB校正的输出数据。通过应用对比度拉伸来增加图像对比度。

    imgin = colorize(hcube,'方法'“rgb”“ContrastStretching”,真正的);imgOut =再着色(newhcube,'方法'“rgb”“ContrastStretching”,真正的);

    显示输入和OOB校正的输出图像。

    图蒙太奇({imgin,imgout})标题('Input Image | OOB Corrected Image'

    输入参数

    全部折叠

    输入卫星数据,指定为hypercube.对象。这些功能从中读取数据多维数据集DataCube对象的属性。数据立方体的大小m——- - - - - -N——- - - - - -C.C.为输入卫星数据中的光谱频带数。

    传感器光谱响应,指定为矩阵或表格。矩阵或表的大小必须是K.——- - - - - -C.+1。矩阵或表的第一列包含波长值,光谱分辨率为1nm。

    您可以下载不同传感器的光谱响应https://oceancolor.gsfc.nasa.gov/docs/rsr/rsr_tables/

    区域掩模指示均匀区域,指定为大小的矩阵m——- - - - - -N.区域掩模是具有强度值0的二进制图像和1.具有强度值1的区域对应于输入卫星数据中的均匀区域。

    例子:FordeOob(HCube,Spectralresponse,'RegionMask',Mask)

    数据类型:逻辑

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

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

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

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

    输出参数

    全部折叠

    带外校正数据,作为一个返回hypercube.

    为每个波段的带外效应,返回为C.- 再生矢量。每个光谱频带的带外效果被测量为输入数据中的均匀区域像素的值之间的相对差异hcube和纠正的数据newhcube.

    介绍了R2020b