资源简介
高光谱图像降维,可实现matlab对envi文件的直接读取,同时对高光谱图片直接处理。
代码片段和文件信息
%PCA算法
clearclose all
%读数据
fid=freadenvi(‘shiyan‘);
[MNband]=size(fid);
%M=100;
%N=100;
%band=189;
%R=zeros(MNband);
%for i=1:band;
% F=fread(fid[M N]‘int16‘);
% R(::i)=F; %取得第i波段光谱图像
%end
%fclose(fid)
%imshow(R(::1)[])%显示第i波段图像
%协方差矩阵
r(1:band1:band)=0;
v(1:band)=0;
for i=1:M
for j=1:N
a(1:band)=fid(ij1:band);
r=r+a‘*a;
v=v+a;
end
end
r=r/(M*N);
v=v/(M*N);
C=r-v‘*v;%协方差矩阵cov(XY)=E(XY)-E(X)E(Y)
%主成分变换
[Tlambda]=eig(C);%协方差矩阵的特征向量T
newlamda=diag(lambda); %diag函数提取对角元素
[yi]=sort(newlamda); %对特征值进行从小到大排序,y为排序后的值,i为序号
for z=1:length(y)
newy(z)=y(length(y)+1-z); %newy为按照特征值从大到小排序后的结果
end
rate=y/sum(y)
newrate=newy/
相关资源
- 基于matlab的图像处理源程序
- 引导图像滤波器 Matlab实现
- 图像小波变换MatLab源代码
- 冈萨雷斯数字图像处理matlab版(第三
- 基于区域生长的图像分割MATLAB
- 基于matlab 的图像处理100实例
- 8领域边界跟踪 图像处理 matlab
- 细胞图像分割matlab代码
- 图像的二进小波分解matlab源码(保证
- Matlab图像二值化和逆向二值化
- matlab-图像处理算法
- p文件,MATLAB的
- matlab 数字图像对比度拉伸算法
- MATLAB实现混沌图像加密仿真程序
- 数字图像处理radon matlab变换算法代码
- 图像匹配matlab源程序sift算法
- 图像降噪Matlab代码
- Matlab图像分割边缘提取算法
- 基于MATLAB的图像特征点匹配和筛选
- 传统关联成像、计算鬼成像matlab
- 医学图像重建作业matlab源码
- MATLAB7.x图像处理
- SPECT图像重建与结果分析
- 图像的饱和度,亮度,色调的matlab代
- 系数绝对值最大 图像融合MATLAB算法
- MATLAB多聚焦图像融合将两张到六张不
- matlab实现对两幅图像的叠加
- 世上最牛的23个图像跟踪算法MATLAB程序
- 图像信息熵 matlab M文件
- 基于matlab的车牌识别系统论文
评论
共有 条评论