資源簡介
SAR成像的PGA自聚焦算法,一個很值得參考的程序,親測可用
代碼片段和文件信息
function?[dataoutphase_correctionentropy_his]?=?PGA(datainvarlimiteration_num)
%PGA?phase?gradient?autofocus?of?ISAR
%?function?[dataout]=PGA(datain)?performs?phase?gradient?
%?autofocus?of?ISAR.
%
%?datain?is?range-time?data?of?ISAR.
%?dataout?is?range-time?data?that?have?been?removed?translational
%?phase?error.
%
%?Reference:
%???D.E.?Wahl?P.H.?Eichel?D.C.?Ghiglia?C.V.?Jakowatz?“Phase
%???gradient?autofocus-a?robust?tool?for?high?resolution?SAR?phase
%???correction“?IEEE?Trans.?Aero.?&?Elec.?Sys.?vol.?30?no.?3?1994.
if?nargin?2
????varlim?=?0.2;?
????iteration_num=10;
end
[MN]?=?size(datain);
dataout?=?datain;
%?varlim?=?0.2;
[dataslvarslen]?=?sltbin(datainvarlim);
clear?datain
datain?=?datasl;
phase_correction?=?ones(1N);
%?實驗
%?datain=dataout;
%?temp=0;
%?Iterative?Phase?Correction
%?iteration_num=10
for?iii?=?1:iteration_num
????orig_img?=?fftshift(fft(datain[]2)2);???????????%做行FFT
????
????%?Circular?Shifting
????center_az_idx?=?ceil(N/2);
????[tmp?maximum_az_idx]?=?max(abs(orig_img)?[]?2);
????new_img?=?zeros(lenN);
????for?i?=?1:size(orig_img1)
????????new_img(i:)?=?circshift(transpose(orig_img(i:))?center_az_idx?-?maximum_az_idx(i));
????end
???%?
%????figurecontour(abs(new_img)20)xlabel(‘方位‘)ylabel(‘距離‘)
???
????%?Windowing
????if?1
????????window?=?20*log10(sum(abs(new_img).^2?1));
????????scatter_power?=?window;
????????db_down?=?30;
????????window_cutoff?=?max(window)-db_down;
????????leftidx?=?find(window(1:center_az_idx)?-?window_cutoff<0?1?‘last‘?);
????????rightidx?=?find(window(center_az_idx+1:end)?-?window_cutoff<0?1?‘first‘);
????????leftidx?=?leftidx+1;
???????
評論
共有 條評論