file1=dir('a01p_QEP018221_*');
file2=dir('a02p_QEP018221_*');
file3=dir('a01s_QEP018221_*');
file4=dir('a02s_QEP018221_*');
file5=dir('a01w_QEP018221_*');
file6=dir('a02w_QEP018221_*');
%% P01
for i=1:93
A=importdata(file1(i).name);
B=[A.data(1,2) A.data(2,2) A.data(3,2) A.data(4,2) A.data(1041,2) A.data(1042,2) A.data(1043,2) A.data(1044,2)];
M=mean(B);
C(:,i)=A.data(5:1040,2)-M;
end
[row,column]=find(C>=200000);
x=unique(column);
C(:,x)=[];
[row,column]=find(C<=0);
x=unique(column);
C(:,x)=[];
P01=mean(C,2);
%% P02
for i=1:91
A=importdata(file2(i).name);
B=[A.data(1,2) A.data(2,2) A.data(3,2) A.data(4,2) A.data(1041,2) A.data(1042,2) A.data(1043,2) A.data(1044,2)];
M=mean(B);
C(:,i)=A.data(5:1040,2)-M;
end
[row,column]=find(C>=200000);
x=unique(column);
C(:,x)=[];
[row,column]=find(C<=0);
x=unique(column);
C(:,x)=[];
P02=mean(C,2);
%% S01
for i=1:100
A=importdata(file3(i).name);
B=[A.data(1,2) A.data(2,2) A.data(3,2) A.data(4,2) A.data(1041,2) A.data(1042,2) A.data(1043,2) A.data(1044,2)];
M=mean(B);
C(:,i)=A.data(5:1040,2)-M;
end
[row,column]=find(C>=200000);
x=unique(column);
C(:,x)=[];
[row,column]=find(C<=0);
x=unique(column);
C(:,x)=[];
S01=mean(C,2);
%% S02
for i=1:100
A=importdata(file4(i).name);
B=[A.data(1,2) A.data(2,2) A.data(3,2) A.data(4,2) A.data(1041,2) A.data(1042,2) A.data(1043,2) A.data(1044,2)];
M=mean(B);
C(:,i)=A.data(5:1040,2)-M;
end
[row,column]=find(C>=200000);
x=unique(column);
C(:,x)=[];
[row,column]=find(C<=0);
x=unique(column);
C(:,x)=[];
S02=mean(C,2);
%% W01
for i=1:100
A=importdata(file5(i).name);
B=[A.data(1,2) A.data(2,2) A.data(3,2) A.data(4,2) A.data(1041,2) A.data(1042,2) A.data(1043,2) A.data(1044,2)];
M=mean(B);
C(:,i)=A.data(5:1040,2)-M;
end
[row,column]=find(C>=200000);
x=unique(column);
C(:,x)=[];
[row,column]=find(C<=0);
x=unique(column);
C(:,x)=[];
W01=mean(C,2);
%% W02
for i=1:99
A=importdata(file6(i).name);
B=[A.data(1,2) A.data(2,2) A.data(3,2) A.data(4,2) A.data(1041,2) A.data(1042,2) A.data(1043,2) A.data(1044,2)];
M=mean(B);
C(:,i)=A.data(5:1040,2)-M;
end
[row,column]=find(C>=200000);
x=unique(column);
C(:,x)=[];
[row,column]=find(C<=0);
x=unique(column);
C(:,x)=[];
W02=mean(C,2);
%% 画图
figure(1)
plot(A.data(5:1040),P01,'LineWidth',1,'Color','b');
hold on
plot(A.data(5:1040),P02,'LineWidth',1,'Color','r');
hold off
xlabel('wavelength','FontSize',15);
ylabel('计数值','FontSize',15);
legend('P01','P02');
title('标准漫反射板光谱曲线');
figure(2)
plot(A.data(5:1040),S01,'LineWidth',1,'Color','b');
hold on
plot(A.data(5:1040),S02,'LineWidth',1,'Color','r');
hold off
xlabel('wavelength','FontSize',15);
ylabel('计数值','FontSize',15);
legend('S01','S02');
title('海表面水体光谱曲线');
figure(3)
plot(A.data(5:1040),W01,'LineWidth',1,'Color','b');
hold on
plot(A.data(5:1040),W02,'LineWidth',1,'Color','r');
hold off
xlabel('wavelength','FontSize',15);
ylabel('计数值','FontSize',15);
legend('W01','W02');
title('天空光光谱曲线');
%% 遥感反射比
rou=0.25;
Fres=0.025;
Rrs1=(rou.*(W01-Fres.*S01))./(pi.*P01);
Rrs2=(rou.*(W02-Fres.*S02))./(pi.*P02);
figure(4)
plot(A.data(5:1040),Rrs1,'LineWidth',1,'Color','b');
hold on
plot(A.data(5:1040),Rrs2,'LineWidth',1,'Color','r');
hold off
xlabel('wavelength','FontSize',15);
ylabel('遥感反射率','FontSize',15);
legend('A01','A02');
title('遥感反射率光谱曲线');
matlab滴m_map学习心得8
于 2023-11-07 16:49:06 首次发布