• 大小: 270KB
    文件类型: .zip
    金币: 2
    下载: 0 次
    发布日期: 2024-01-30
  • 语言: Matlab
  • 标签: 监督分类  matlab  

资源简介

8波段的遥感影像,其中包含建筑物、道路、植被、 水四种地物类型,现已从四种类型中分别选取了训练样本若干,分别存储在building.xls、road.xls、vegetation.xls和water.xls四个文件中,unknow.xls文件中存储了待分类像素在8个波段上的灰度值以及这些像素的真实地物类型,要求利用最大似然法对unknow.xls中的像素进行分类,并利用unknow.xls文件中最后一列的类别信息对分类结果进行精度评价。已求出总体精度、用户精度、制图精度、Kappa系数。内附数据以及结果文件。 需要更改读取文件的路径为自己的路径。matlab完美运行

资源截图

代码片段和文件信息

function class=supervised_classification(~)
[U]=xlsread(‘D:\朝花夕拾\淡\遥感原理与应用\分类——实验\road\unknown.xlsx‘);%感兴趣区数据
u=U(:1:8);%感兴趣区8个波段的灰度值
[munu]=size(u);
A=xlsread(‘D:\朝花夕拾\淡\遥感原理与应用\分类——实验\road\building.xls‘);   %建筑物
B=xlsread(‘D:\朝花夕拾\淡\遥感原理与应用\分类——实验\road\road.xls‘);       %道路
C=xlsread(‘D:\朝花夕拾\淡\遥感原理与应用\分类——实验\road\vegetation.xls‘); %植被
D=xlsread(‘D:\朝花夕拾\淡\遥感原理与应用\分类——实验\road\water.xls‘);      %水
MA=mean(A);MB=mean(B);MC=mean(C);MD=mean(D);%均值
EA=cov(A); EB=cov(B); EC=cov(C); ED=cov(D); %协方差
[mana]=size(A);[mbnb]=size(B);[mcnc]=size(C);[mdnd]=size(D);
PA=ma/(ma+mb+mc+md);
PB=mb/(ma+mb+mc+md);
PC=mc/(ma+mb+mc+md);
PD=md/(ma+mb+mc+md);
%判别
for i=1:mu
    %选择UNKONW 的第i个向量X
    %计算Da Db Dc Dd
    X=u(i1:8);
     
    Da=-0.5*((X-MA)*inv(EA)*(X-MA)‘)-0.5*log(det(EA))+log(PA);
    Db=-0.5*(X-MB)*inv(EB)*(X-MB)‘-0.5*log(det(EB))+log(PB);
    Dc=-0.5*(X-MC)*inv(EC)*(X-MC)‘-0.5*log(det(EC))+log(PC); 
    Dd=-0.5*(X-MD)*inv(ED)*(X-MD)‘-0.5*log(det(ED))+log(PD);
    D=[Da Db Dc Dd];
    [xy]=max(D);
    class_now(i1)=y;
   
end

uo=U(:9);
%c=0
%for i=1:mu
    %if(uo(i1)==class_now(i1))
       % c=c+1;
    %end
%end
class=class_now;

[fnamefilepath]=uiputfile(‘*.txt‘‘分类结果另存为‘);
fid=fopen(strcat(filepathfname)‘wt‘);
fprintf(fid‘分类结果:\n‘);
for j=1:mu
    fprintf(fid‘%d\n‘class(j1));
    
end
%精度

XX=confusionmat(uo‘class‘);%混淆矩阵
disp(XX);
disp(XX(44));
sp=0;
XKS=0;
for i=1:4
    pu(i)=XX(ii)/(XX(i1)+XX(i2)+XX(i3)+XX(i4));%用户精度
    sp=XX(ii)+sp;
    pA(i)=XX(ii)/(XX(1i)+XX(2i)+XX(3i)+XX(4i));%制图精度
    XKS=XKS+(XX(i1)+XX(i2)+XX(i3)+XX(i4))*(XX(1i)+XX(2i)+XX(3i)+XX(4i));%kappa系数
end

p=sp/mu;%总体精度
Kappa=(mu*sp-XKS)/(mu^2-XKS);
fprintf(fid‘总体精度:\n‘);
fprintf(fid‘%f\n‘p);
fprintf(fid‘用户精度:\n‘);
fprintf(fid‘%f\n‘pu);
fprintf(fid‘制图精度:\n‘);
fprintf(fid‘%f\n‘pA);
fprintf(fid‘Kappa系数:\n‘);
fprintf(fid‘%f\n‘Kappa);

fclose(fid);
disp(p);

end

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-05-25 10:19  road\
     文件      254976  2018-05-25 10:07  road\building.xls
     文件      218112  2018-05-25 10:07  road\road.xls
     文件       50417  2018-05-25 10:07  road\unknown.xlsx
     文件      226816  2018-05-25 10:07  road\vegetation.xls
     文件      253952  2018-05-25 10:07  road\water.xls
     文件         165  2018-05-25 10:19  road\~$unknown.xlsx
     文件        2161  2018-06-01 12:28  supervised_classification.m
     文件        2618  2018-06-01 12:31  监督分类结果.txt
     文件       12185  2018-05-31 22:21  说明.docx

评论

共有 条评论