作业帮 > 综合 > 作业

关于matlab程序 PCA变换代码有些地方没看懂!

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/14 00:17:42
关于matlab程序 PCA变换代码有些地方没看懂!
[M,N,bs] = size(multi);
multi_mean = mean(mean(multi)); %多光谱影像各波段均值
multi_Cx = 0; %协方差矩阵
for i = 1 :M
for j = 1 :N
multi_S = multi(i,j,:);
multi_S = multi_S - multi_mean;
multi_S = reshape(multi_S,bs,1); % 转换为bs行向量
multi_Cx = multi_Cx + multi_S * multi_S'; 这一步是求协方差的吗?
end
end
multi_Cx = multi_Cx / (bs - 1); 为什么要除以(bs-1)?
关于matlab程序 PCA变换代码有些地方没看懂!
multi_Cx = multi_Cx + multi_S * multi_S'  --------------- 这一步是求协方差的中间过程multi_Cx = multi_Cx / (bs - 1);------------------------这个是协方差矩阵