高光谱数据处理工具软件使用手册
一数据读取操作
1 读取南京中地仪器公司的光谱数据(单个文件)
[sampleName,lambda,spectrum ]=hyperReadZD(fname)
2 读取北师大波谱库的数据(单条记录)
[metaInfo,lambda,spectrum]=hyperReadSPL(fname,iStart,iEnd,i Step,desPathStr)
参数:如果输入参数iStart,iEnd,iStep则将读取的波谱数据按照以上三个参数进行重采样。
三参数的含义分别是:起始波段(nm),终止波段(nm),采样间隔(nm);如果输入desPathStr,则将采样后的结果作为zip文件保存在目录desPathStr内。
3 读取Envi波谱库数据(单个文件,多条记录)
[samplename,lambda,spectral]=hyperReadEnvi(fname)
4 读取ASD波谱仪数据
[measured, lambda, reference] = hyperReadAsd(filename)
5 读取高光谱影像数据(AVIRIS格式)
[M, wavelengths_nm] = hyperReadAvirisRfl(filename, height, width, bands)
二数据转换
1 高光谱立方体数据转换为二维数组
[M] = hyperConvert2d(M)
输入:
M - 高光谱立方体数据(m x n x p)
输出:
M –二维矩阵形式(p x N)
2 将二维数组转换为数据立方体
[img] = hyperConvert3d(img, h, w, numBands)
输入:
M –二维数据矩阵 (p x N)
输出:
M –三维数据立方体 (m x n x p)
3 光谱重采样
[ output ] = hyperResample( M, currentWaveLengths, desiredWaveLengths )
输入:
M –二维高光谱数据矩阵 (p x N)
currentWavelengths –数据M的当前波长.(p x 1)
desiredWavelengths –将要转换的目标波长
输出:
M_resampled –将M按照目标波长重新采样的结果。
三光谱变换
1 主成份变换
[M_pct] = hyperPct(M, q)
输入:
M –二维数据矩阵(p x N)
q –保留主成份个数
输出:
M_pct –变换后的二维数据矩阵(q x N) which is result of transform V –转换系数.
2 最小噪声分离技术
M = hyperMnf(M, h, w)
输入
M –二维数据矩阵 (p x N)
h –行数
w –列数
Outputs
M –变换后的二维数据矩阵
H –转换系数
四光谱解混(端元提取)
1 高光谱自动目标提取
[ U, indices ] = hyperAtgp( M, q, Maug )
输入
M -二维数据矩阵(p x N)
q –端元个数
Maug –端元先验光谱(I可选),(p x (# targets))
输出
U –端元光谱矩阵 (p x q)
indices –端元在矩阵M中的位置
2 像元纯度指数法
[U] = hyperPpi(M, q, numSkewers)
输入
M –二维 (p x N)
q –提取端元个数
numSkewers - Number of "skewer" vectors to project data onto. 输出
U - Recovered endmembers (p x N)
五相对含量计算(丰度成图)
[ X ] = hyperFcls( M, U )
输入
M –高光谱数据矩阵(p x N)
U –端元光谱(p x q)
输出
X –含量计算结果 (q x N)
六光谱相似性测量
1 光谱角计算(SAM)
[errRadians] = hyperSam(a, b)
输入:
a –目标光谱.
b –参考光谱.
输出:
errRadians –光谱角(弧度)。