• 大小: 4KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-09
  • 语言: Matlab
  • 标签: goldstein  

资源简介

老师讲述的goldstein滤波 clc clear fid1=fopen(''); %读取相干系数 Coh = fread(fid1,[1000,700],'uint8'); Coh=Coh';%转置 fclose(fid1); fid1=fopen('');%读取幅度值 Amp=fread(fid1

资源截图

代码片段和文件信息

clc
clear
fid1=fopen(‘‘);       %读取相干系数
Coh = fread(fid1[1000700]‘uint8‘);

Coh=Coh‘;%转置
fclose(fid1);
fid1=fopen(‘‘);%读取幅度值
Amp=fread(fid1[1000700]‘uint32‘);
Amp=Amp‘;
fclose(fid1);
fid1=fopen(‘‘);%读取相位
Pha= fread(fid1[1000700]‘uint8‘);
Pha=Pha‘;
fclose(fid1);
imagesc(Pha);
%row=2640;col=2450*2;
%fid1=fopen(‘G:\毕业设计\导师资料\INSAR入门资料\滤波程序及数据\程序及数据\master_slave.flt‘);
%[fltcount]=fread(fid1[49002640]‘float32‘‘ieee-be‘);
%fclose(fid1);
%flt=flt‘;
%flt_real=flt(:1:2:end-1);
%flt_image=flt(:2:2:end);
%IFG_shanghai=flt_real+i*flt_image;
%Interferogram=IFG_shanghai;%干涉图
%A1=angle(IFG_shanghai);%求相位角
%Pha=A1
%enta coherence data from gamma

%fid1=fopen(‘G:\毕业设计\导师资料\INSAR入门资料\滤波程序及数据\程序及数据\master_slave.cc‘);
%[Cohcount]=fread(fid1[24502640]‘float32‘‘ieee-be‘);
%fclose(fid1);
%Coh=Coh‘;



%b=max(max(Pha));
%a=min(min(Pha));
%c=Pha(1:7001:1000)
%imagesc(Pha)
Pha=Pha*pi*2/255-pi;

%imagesc(Pha)
Coh=Coh/255;
Interferogram=Amp.*exp(i*Pha); 
[LP]=size(Interferogram);
%REAL=Amp.*cos(Pha)
%imagesc(REAL)
%IMAGE=Amp.*sin(Pha)
%figure(2)
%imagesc(IMAGE)
%figure(3)
%sumf=REAL.*IMAGE
%imagesc(Pha)
%figure(4)
%imagesc(sumf)
Block=32;
Overlap=28;
increment=Block-Overlap;
Start_point=Overlap/2+1;%从15开始
Start_point_row=2;%开始行(从第二行开始)
Start_point_col=2;%开始列
End_point_row=L- (Block-Overlap/2);%终止行(倒数第二行)要加括号吗
End_point_col=P- (Block-Overlap/2);%终止列(倒数第二列)
grid=zeros(size(Interferogram));%格网值赋0

for ii=Start_point:increment:End_point_row%ii从15开始
     for jj=Start_point:increment:End_point_col
         fetch_int=Interferogram((ii-14):(ii-14)+31(jj-14):(jj-14)+31);%取整个图块的干涉值
         fetch_coh=Coh((ii-14):(ii-14)+31(jj-14):(jj-14)+31);
         namda1=mean2(fetch_coh(15:1815:18));%对中间位置相干系数两次取平均(结果为一个数)
         namda2=namda1/100;%化为百分数
         H = fft2(fetch_int);     %与下一行一起组成FFT变换
         H = fftshift(H);
         S=abs(H);
         S=S/max(max(S));%将化为百分比(比上最大值)
         S=S.^(1-namda1);%对应位置相乘得平滑值
         H=H.*S;
         H = ifftshift(H);   %与下一行一起组成反FFT变换    
         fetch_int = ifft2(H);   
        

评论

共有 条评论