資源簡介
matlab完整可運行,含實驗報告,含評價參數,含測試圖片

代碼片段和文件信息
function?sar_cfar_6(hobjecteventdatahandlesf)
%SAR圖像CFAR目標檢測算法,算法采用的是基于瑞利分布的雙參數CFAR算法
%???sar_cfar_4(hobjecteventdatahandlesf),hobjecteventdatahandles分別是
%???圖形界面程序傳遞下來的對象,事件,句柄;在這里,對象和事件均未使用,只使用了
%???句柄,f為輸入的SAR圖像,此時,SAR圖像已經由三維變成了一維
f=imread(‘SAR-ship-4m.bmp‘);
figure;
imshow(f);???%顯示原圖
pf?=?0.001;??????????????????????????%人為設定的恒虛警率
%?densGate?=?0.01;??????????????%密度濾波閾值
%?rad?=?1;????????????????????????%形態學濾波結構元素半徑值
%--圖像前期處理
f?=?double(f);
f_size?=?size(f);
%--交互的確定目標尺寸
%rect?=?getrect(handles.axes1);??
width?=?40;
height?=?45;
%?tic
%--進度條程序
%?hWaitbar?=?waitbar(0‘請等待‘);
%?h1=findobj(hWaitbar‘type‘‘patch‘);
%?set(h1‘FaceColor‘‘r‘‘EdgeColor‘‘y‘);
%?numWait?=?f_size(1)*f_size(2);
%?numWaitCount?=?0;
%--------------------------------------------------------------------------
%????????一、確定CFAR檢測器參數,包括窗口尺寸,保護區寬度,雜波區寬度
%--------------------------------------------------------------------------
%--確定CFAR檢測器的參數
%--1.取長寬中的最大值
global?tMaxLength;
tMaxLength?=?max(widthheight);
%--2.確定保護區的邊長
global?proLength;
proLength?=?tMaxLength*2?+?1;???????????????????????????%為方便計算,取為奇數
%--3.確定雜波區環形寬度
global?cLength;
cLength?=?1;????????????????????????????????????????????%厚度一般為1個像素點
%--4.計算用于雜波區域的像素數
numPix?=?2*cLength*(2*cLength+proLength+proLength);?
%--5.CFAR檢測器邊長的一半
global?cfarHalfLength;
cfarHalfLength?=?tMaxLength+cLength;
%--6.CFAR檢測器邊長
global?cfarLength;
cfarLength?=?proLength?+?2*cLength;
str?=?sprintf(‘CFAR檢測器保護區邊長:%f,雜波區環形寬度:%f,用于雜波的像素數:%f‘...
??????????????proLengthcLengthnumPix);???????????????%顯示
%?disp(str);??????????????????????????????????????????????%顯示
%--------------------------------------------------------------------------
%?????????二、對原圖像邊界擴充,以消除邊界的影響
%--------------------------------------------------------------------------
padLength?=?cfarHalfLength;???????????%確定圖像填充的邊界大小為CFAR滑窗的一半
global?g;
g?=?padarray(f[padLength?padLength]‘symmetric‘);??????%g為填充后的圖像
%?global?g_dis;???????????????????????????????????????????%畫圖
%?g_dis?=?g;??????????????????????????????????????????????%畫圖
%--------------------------------------------------------------------------
%?????????三、確定CFAR閾值
%--------------------------------------------------------------------------
th?=?(2*sqrt(-log(pf))-sqrt(pi))/(sqrt(4-pi));??%該閾值由認為確定的虛警概率求
%X?=?norminv(Pmusigma)????????????????????????????????????????????????%得
%--------------------------------------------------------------------------
%????????四、利用CFAR檢測器,求解局部閾值,執行單個像素點的判斷
%--------------------------------------------------------------------------
%--1.定義結果處理矩陣
global?resultArray
resultArray?=?zeros(size(g));
%--2.CFAR檢測
%這里將CFAR檢測器劃分為四個檢測區,如下圖所示
%
%??????????|—————————————|
%??????????|——————-1——————|
%??????????|???|????????????????|???|
%??????????|???|????????????????|???|
%??????????|?3?|????????????????|?4?|
%??????????|???|????????????????|???|
%??????????|???|????????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????24509??2017-01-01?21:04??遙感\c.JPG
?????文件????????8924??2017-01-02?13:20??遙感\cfar.m
?????文件????????8594??2017-01-02?21:29??遙感\cfar2.m
?????文件?????4474680??2015-12-01?20:04??遙感\SAR-ship-1.5m.bmp
?????文件??????764568??2014-11-19?11:21??遙感\SAR-ship-4m.bmp
?????文件?????1820160??2017-01-03?00:05??遙感\實驗四?SAR圖像艦船目標檢測.doc
?????目錄???????????0??2017-12-09?22:13??遙感\
- 上一篇:matlab圖論以及圖論軟件
- 下一篇:語音識別matlab GUI
評論
共有 條評論