matlab高光谱图像预处理三维转二维和归一化
1,三维转二维
用reshape()函数
举个例子A=(2,2,2)将A转换成2*4的矩阵
val(:,:,1) = 0 1 2 3 val(:,:,2) = 4 5 5 6
>> aa=reshape(A,4,2) aa = 0 4 2 5 1 5 3 6
AA=aa‘(aa的转置)
AA是全部每个x,y点上的z向量构成的二维矩阵
高光谱图像预处理同理,转换成所有光谱向量构成的二维矩阵
二,归一化
方法1.
B=im2double(B)%把图像转换成double精度类型(0~1)
方法2.
Bmax=max(max(B)); Bmin=min(min(B)); B=(B-Bmin)/(Bmax-Bmin);