INSAR实验报告.docx

上传人:b****6 文档编号:7378918 上传时间:2023-01-23 格式:DOCX 页数:20 大小:536.49KB
下载 相关 举报
INSAR实验报告.docx_第1页
第1页 / 共20页
INSAR实验报告.docx_第2页
第2页 / 共20页
INSAR实验报告.docx_第3页
第3页 / 共20页
INSAR实验报告.docx_第4页
第4页 / 共20页
INSAR实验报告.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

INSAR实验报告.docx

《INSAR实验报告.docx》由会员分享,可在线阅读,更多相关《INSAR实验报告.docx(20页珍藏版)》请在冰豆网上搜索。

INSAR实验报告.docx

INSAR实验报告

实验一、SAR信号统计模型验证

实验目的

通过MATLAB编程,拟合有关SAR数据的实部、虚部、灰度、相位的概率密度曲线,并与实际曲线进行比较,掌握MATLAB编程的初步知识。

实验数据

txt文本格式的实部和虚部数据

实验步骤

一、打开MATLAB,根据老师给出的实部的MATLAB的程序和拟合曲线,试着编出虚部的程序,调试并运行。

二、在实部实验的基础上,接着进行以后的改编,根据各个曲线的表达式,拟合各自的曲线。

实验结果

实部:

 

虚部:

 

灰度:

 

相位:

 

功率:

 

实验心得

这是首次用MATLAB编程实现SAR的统计特征图像,由于之前没有用MATLAB编程实现过,所以这次实验是在学习老师所给程序的基础上进行改编的。

学会了MATLAB中画图函数的编写,函数曲线的颜色、线型、多幅图像同时呈现编程方法。

但是功率power的图像画的并不理想,拟合的曲线并没有很好地显示出来。

通过这次的练习,平时老师课件里的东西,我们也能编程写出来,确实让我们学会了理论联系实践,学以致用。

这次的实验还比较顺利,希望在以后的学习和实验中可以更多的学习一些软件,多用编程的思想实现一些自己的想法。

实验源代码

实部:

clear;

clc;

load’Real。

txt';

load’Imag.txt';

[m,n]=size(Real);

Realvector=reshape(Real,m*n,1);

maxreal=max(Realvector);

minreal=min(Realvector);

x=minreal:

10:

maxreal;

Realvar=var(Realvector);

PDF_Re=exp(-x.^2/(2*Realvar))/sqrt(2*pi*Realvar);

pixel_count1=PDF_Re*10*m*n;

figure;

plot(x,pixel_count1,'r’);

count2=hist(Realvector,x);

holdon;

plot(x,count2,'rs',’MarkerEdgeColor’,'k’,。

..

'MarkerFaceColor’,'g',.。

.

’MarkerSize’,2);

ylabel(’Pixelcount');

xlabel('Realisticcomponent(Re)’);

虚部:

clear;

clc;

load’Real.txt’;

load’Imag。

txt';

[m,n]=size(Imag);

Imagvector=reshape(Imag,m*n,1);

maximag=max(Imagvector);

minimag=min(Imagvector);

x=minimag:

10:

maximag;

Imagvar=var(Imagvector);

PDF_Im=exp(—x。

^2/(2*Imagvar))/sqrt(2*pi*Imagvar);

pixel_count2=PDF_Im*10*m*n;

figure;

plot(x,pixel_count2,'r’);

count=hist(Imagvector,x);

holdon;

plot(x,count,’rs’,'MarkerEdgeColor’,'k’,.。

’MarkerFaceColor','g’,...

'MarkerSize’,2);

ylabel(’Pixelcount');

xlabel(’Imaginarycomponent(Im)');

灰度:

load’Real.txt’;

load'Imag。

txt';

[m,n]=size(Imag);

Amplitude=sqrt(Real。

^2+Imag。

^2);

Amplitudevector=reshape(Amplitude,m*n,1);

Ampvar=var(Amplitudevector)*2/(4-pi);

maxAmp=max(Amplitudevector);

minAmp=min(Amplitudevector);

X=minAmp:

10:

maxAmp;

PDF_A=X。

*exp(—X。

^2/(2*Ampvar))/Ampvar;

pixel_count2=PDF_A*10*m*n;

figure;

plot(X,pixel_count2,'r’);

count=hist(Amplitudevector,X);

holdon;

plot(X,count,'rs’,'MarkerEdgeColor',’k',。

’MarkerFaceColor’,’g’,。

.。

'MarkerSize',2);

ylabel('Pixelcount’);

xlabel(’Amplitudecomponent(A)’);

功率:

clear;

clc;

load’Real.txt';

load'Imag。

txt’;

Powe=Real.^2+Imag。

^2;

[m,n]=size(Powe);

Powevector=reshape(Powe,m*n,1);

maxPowe=max(Powevector);

minPowe=min(Powevector);

x=minPowe:

10000:

maxPowe;

Powevar=var(Powevector);

PDF_P=(exp(—x/(2*Powevar)))/(2*Powevar);

pixel_count4=PDF_P*10*m*n;

figure;

plot(x,pixel_count4,’y');

count=hist(Powevector,x);

holdon;

plot(x,count,'rs’,'MarkerEdgeColor’,’k',.。

.

’MarkerFaceColor’,'g’,。

'MarkerSize',2);

ylabel(’Pixelcount’);

xlabel(’Power(P)');

相位:

clear;

clc;

load’Real.txt’;

load'Imag。

txt’;

[m,n]=size(Imag);

Imagvector=reshape(Imag,m*n,1);

Realvector=reshape(Real,m*n,1);

Phase=atan2(Imagvector,Realvector);

x=—pi:

pi/100:

pi;

PDF_w=1/(2*pi);

pixel_count2=PDF_w*pi/100*m*n;

figure;

plot(x,pixel_count2,’r’);

count=hist(Phase,x);

holdon;

plot(x,count,’rs’,'MarkerEdgeColor’,’k’,...

’MarkerFaceColor’,’g’,..。

’MarkerSize’,2);

ylabel(’Pixelcount');

xlabel(’Phasecomponent(Ph)');

实验二INSAR信号统计模型验证

实验目的

通过MATLAB编程实现INSAR的数据统计特征的表达,掌握用MATLAB编写函数的方法,进一步掌握MATLAB在INSAR实验中的应用.

实验环境及数据

MATLAB7。

0

实验心得

通过本次实验,我学会了使用MATLAB在同一窗口中呈现多个图像的方法.这次实验中要考虑L的取值不同给函数图像带来的差异。

通过这次实验,我对MATLAB更熟悉了一些。

用MATLAB编程主要要理清思路,掌握每个函数的用法,这样编程才会顺利。

MATLAB这个软件的功能很强大,以后要好好学习,掌握基本的用法,为以后的学习打下基础.

实验结果

L=1

L=10

L=20

相干图

实验源代码

L1:

clc;

clear;

L=1;

Gam=0。

1;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0.3;

Phai=[—pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0.5;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0。

7;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0.95;

Phai=[—pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

xlabel(’Phai(rad)’);

ylabel('PDF(Phai)');

L=10

clear;

L=10;

Gam=0。

1;

Phai=[—pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0。

3;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0.5;

Phai=[—pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0。

7;

Phai=[—pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0.95;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

xlabel('Phai(rad)');

ylabel('PDF(Phai)');

L=20

clear;

L=20;

Gam=0。

1;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0。

3;

Phai=[—pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0。

5;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0。

7;

Phai=[—pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

holdon;

Gam=0。

95;

Phai=[-pi:

(2*pi)/100:

pi];

PDF=pdf_phai(Phai,Gam,L);

plot(Phai,PDF);

xlabel('Phai(rad)’);

ylabel(’PDF(Phai)’);

调用函数的源代码

functionPDF=pdf_phai(Phai,Gam,L)

Beita=Gam*cos(Phai);

temp1=(1—Gam.^2).^L./2./pi;

temp2=gamma(2*L—1)./(gamma(L)).^2。

/2。

^(2*L-2);

temp3=(2*L—1).*Beita。

*(pi./2+asin(Beita))./(1-Beita。

^2)。

^(L+0.5);

temp4=1。

/(1—Beita。

^2)。

^L;

ifL==1

PDF=temp1.*(temp2.*(temp3+temp4));

else

temp5=0;

fori=0:

(L-2)

temp5=temp5+gamma(L—0。

5)。

*gamma(L—1—i).*(1+(2*i+1)。

*Beita.^2)。

/gamma(L—0.5—i)。

/gamma(L—1)./(1-Beita.^2)。

^(i+2);

end

temp5=temp5。

/2/(L-1);

PDF=temp1。

*(temp2。

*(temp3+temp4)+temp5);

end

end

 

相干图的源代码

L=1;

Gam=[0:

0.01:

1];

forPhai=—pi:

(2*pi)/100:

pi

SD=sqrt(Phai^2*(pdf_phai(Phai,Gam,L)))

end

plot(Gam,SD,’y');

holdon;

L=2;

Gam=[0:

0.01:

1];

forPhai=-pi:

(2*pi)/100:

pi

SD=sqrt(Phai^2*(pdf_phai(Phai,Gam,L)))

end

plot(Gam,SD,’b’);

holdon;

L=4;

Gam=[0:

0.01:

1];

forPhai=-pi:

(2*pi)/100:

pi

SD=sqrt(Phai^2*(pdf_phai(Phai,Gam,L)))

end

plot(Gam,SD,'r');

holdon;

L=8;

Gam=[0:

0.01:

1];

forPhai=-pi:

(2*pi)/100:

pi

SD=sqrt(Phai^2*(pdf_phai(Phai,Gam,L)))

end

plot(Gam,SD,’m');

holdon;

L=10;

Gam=[0:

0。

01:

1];

forPhai=-pi:

(2*pi)/100:

pi

SD=sqrt(Phai^2*(pdf_phai(Phai,Gam,L)))

end

plot(Gam,SD,'k');

holdon;

L=16;

Gam=[0:

0。

01:

1];

forPhai=-pi:

(2*pi)/100:

pi

SD=sqrt(Phai^2*(pdf_phai(Phai,Gam,L)))

end

plot(Gam,SD,’c');

holdon;

L=20;

Gam=[0:

0.01:

1];

forPhai=-pi:

(2*pi)/100:

pi

SD=sqrt(Phai^2*(pdf_phai(Phai,Gam,L)))

end

plot(Gam,SD,’g’);

xlabel(’coherence');

ylabel(’PhaseSD(deg)’);

legend('L=1',’L=2','L=4','L=8',’L=10','L=16’,’L=20’);

实验三、拼接和显示长沙地区SRTM高程模型

实验内容及目的

本次实验的内容是根据给定的长沙地区的SRTM数据(数据格式是。

hgt),通过matlab把给定数据转换成surfer软件能识别的数据格式,然后用surfer软件裁剪和显示长沙地区的数字高程模型。

目的是加深对用MATLAB编程拼接图像,然后初步掌握用surfer软件裁剪和显示长沙地区的数字高程模型.

试验数据

SRTM数据是二进制格式,扩展名是hgt。

数据以块为单位划分,每块包含经度和纬度方向各一度的范围,像素之间的间隔是3″,所以每块包含1201×1201个像素。

以左下角的经纬度命名的(如图1所示)长沙地区8块高程数据。

 

试验步骤及结果

1。

Matlab读取和拼接8块SRTM数据

(1)读取数据

例如,读取N27E111.hgt的函数:

fid1=fopen('N27E111.hgt','r','b’);

A1=fread(fid1,[1201,1201],'bit16');

fclose(fid1);

A1=A1';

(2)拼接数据

用[]或cat函数实现拼接,例如:

A=[12;34];B=[56;78];

cat(1,A,B)=[12;34;56;78]

cat(2,A,B)=[1256;3478]

[A;B]=cat(1,A,B)

[A,B]=cat(2,A,B)

在数据中有很多无意义的值被赋予了—32768,这些值要去掉换成0或用周围的值替换,这在程序中是用循环来实现的.

拼接图如下:

 

2。

把拼接好的数据写成Surf可以读的格式

假设拼接好的SRTM存于F矩阵,写为Surf可读文件的程序

fid1=fopen('Changsha_grid.dat','w');

fprintf(fid1,'DSAA\n');

fprintf(fid1,’%8.0f%8。

0f\n',4804,2402);

fprintf(fid1,'%8.0f%8.0f\n',111,115);

fprintf(fid1,’%8.0f%8.0f\n’,27,29);

fprintf(fid1,'%8.2f%8.2f\n’,min(min(F)),max(max(F)));

fori=2402:

—1:

1

forj=1:

4804

fprintf(fid1,’%14。

5f',F(i,j));

end

fprintf(fid1,'\n’);

end

fclose(fid1);

3.用surfer软件裁剪和显示长沙地区的数字高程模型

首先,打开surfer,找到菜单map下的imagemap,读由matlab生成的数据文件Changsha_grid。

dat,并以out为文件名把图以二进制格式保存在磁盘上。

在surfer的界面上出来了原始图如下:

 

然后,选择菜单grid下的blank命令,还是打开Changsha_grid。

dat文件,接着打开边界文件boundary_blank。

bln,保存名称是out.grd,格式是二进制的。

最后,在选择菜单map下的imagemap,打开刚才的文件out。

grd;再选择菜单map下的basemap,打开文件boundary_plot。

bln,出现长沙市的概略图。

用limits属性设置好图的坐标范围,纬度111.8—114.5,经度27。

8—28.7。

最后,选中两副图,在选择菜单map下的的overlap,两张图就叠加在一起了,也就出来了最后的成果图如下:

 

试验心得

这次实验是根据所给数据将数据转变成surfer能识别的格式,然后在surfer中对拼接好的图像进行处理,对长沙地区裁剪并且显示其数字高程模型。

这次实验遇到了一些问题,比如如何在MATLAB中拼接图像,由于有重叠部分,分成两次来完成,首先是在同一纬度内拼接,后一幅图像要从第二行开始,然后保持拼接好的图像的经度不变,进行纬度的拼接。

由于是初次做,第一次拼接的图像是错位的,但是仔细考虑了拼接的顺序之后,终于拼接成功了。

其次,通过这次实验,以前在书上和课件上看到的都是老师做好的实验图像,根据图像去理解一些信息.通过这次实验,对理论知识有了更深的理解,记忆更加深刻,同时增加了我们将理论知识和实践结合起来学习动力.有些东西,听听就过了,但是没有深入地理解,这样的实验确实可以使我们的理解更深。

试验源代码

fid1=fopen(’N27E111。

hgt’,’r','b');

A1=fread(fid1,[1201,1201],’bit16');

fclose(fid1);

A1=A1’;

fid2=fopen('N27E112.hgt’,'r’,'b’);

A2=fread(fid2,[1201,1201],’bit16');

fclose(fid2);

A2=A2’;

fid3=fopen('N27E113.hgt',’r','b’);

A3=fread(fid3,[1201,1201],’bit16');

fclose(fid3);

A3=A3’;

fid4=fopen('N27E114.hgt’,'r',’b');

A4=fread(fid4,[1201,1201],’bit16’);

fclose(fid4);

A4=A4’;

fid5=fopen(’N28E111。

hgt’,'r',’b’);

A5=fread(fid5,[1201,1201],'bit16’);

fclose(fid5);

A5=A5';

fid6=fopen(’N28E112。

hgt’,'r’,'b’);

A6=fread(fid6,[1201,1201],’bit16’);

fclose(fid6);

A6=A6';

fid7=fopen(’N28E113.hgt’,’r','b’);

A7=fread(fid7,[1201,1201],'bit16');

fclose(fid7);

A7=A7’;

fid8=fopen('N28E114.hgt’,’r’,’b’);

A8=fread(fid8,[1201,1201],'bit16’);

fclose(fid8);

A8=A8';

S1=[A5,A6(:

2:

1201),A7(:

2:

1201),A8(:

2:

1201)];

S2=[A1,A2(:

2:

1201),A3(:

,2:

1201),A4(:

,2:

1201)];

S=[S1;S2(2:

1201,:

)];

S(find(S==—32768))=0;

figure;

imagesc(S,[1,400]);

fid9=fopen(’Changsha_grid.dat',’w');

fprintf(fid9,’DSAA\n');%±êʾ·û

fprintf(fid9,’%8.0f%8。

0f\n',4801,2401);

fprintf(fid9,'%8.0f%8.0f\n’,111,115);%¾.¶È

fprintf(fid9,'%8.0f%8。

0f\n',27,29);%γ¶È

fprintf(fid9,’%8。

2f%8.2f\n',min(min(S)),max(max(S)));%

fori=2401:

-1:

1%´Ó×îºóÒ»ÐпªÊ¼Ð´

forj=1:

4801

fprintf(fid9,’%14。

5f',S(i,j));

end

fprintf(fid9,’\n');

end

fclose(fid9);

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1