現(xiàn):自適應(yīng)門(mén)限雷達(dá)檢測(cè)實(shí)戰(zhàn))
簡(jiǎn)介雷達(dá)信號(hào)CFAR處理MATLAB源碼包是面向雷達(dá)、信號(hào)處理專(zhuān)業(yè)學(xué)生及初學(xué)者的完整仿真與學(xué)習(xí)資料主要解決脈沖壓縮、MTD及CFAR檢測(cè)的實(shí)現(xiàn)與算法對(duì)比問(wèn)題。代碼采用FFT/IFFT完成脈壓CFAR部分提供CA-CFAR、GO-CFAR、SO-CFAR三種可調(diào)算法并對(duì)距離維和速度維分別處理支持任意多目標(biāo)回波仿真便于讀者深入理解ML類(lèi)恒虛警檢測(cè)原理與工程落地。壓縮包為zip格式共7個(gè)文件包括5個(gè)m腳本、1個(gè)PDF原理說(shuō)明和1個(gè)txt注釋亂碼解決說(shuō)明整體僅152KB。其中m腳本按1個(gè)主程序加4個(gè)函數(shù)模塊化編寫(xiě)結(jié)構(gòu)清晰、參數(shù)易改PDF詳細(xì)講解CFAR實(shí)現(xiàn)流程txt解決打開(kāi)亂碼問(wèn)題。目前已有2465人學(xué)習(xí)下載適合用于課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)或雷達(dá)信號(hào)處理算法的快速驗(yàn)證。 做雷達(dá)信號(hào)處理的朋友對(duì)CFARConstant False Alarm Rate恒虛警率肯定不陌生。只要涉及目標(biāo)檢測(cè)無(wú)論是軍事雷達(dá)、車(chē)載毫米波雷達(dá)還是氣象雷達(dá)CFAR幾乎是一個(gè)繞不開(kāi)的標(biāo)配模塊。我最初接觸CFAR是在做目標(biāo)檢測(cè)算法驗(yàn)證時(shí)當(dāng)時(shí)手里有一批實(shí)測(cè)雷達(dá)數(shù)據(jù)卻因?yàn)闆](méi)有合適的檢測(cè)門(mén)限導(dǎo)致輸出結(jié)果里全是噪點(diǎn)虛警高得離譜。后來(lái)花了兩周時(shí)間把CFAR的幾種典型變體在MATLAB里全部實(shí)現(xiàn)了一遍才徹底弄明白門(mén)限計(jì)算、參考單元選擇這些細(xì)節(jié)到底是怎么影響檢測(cè)效果的。這篇文章會(huì)把我實(shí)現(xiàn)CFAR-MATLAB源碼的完整思路和踩坑經(jīng)驗(yàn)整理出來(lái)希望能幫到正在做類(lèi)似工作的朋友。1. CFAR算法原理與選型思路1.1 為什么雷達(dá)檢測(cè)離不開(kāi)CFAR雷達(dá)檢測(cè)的本質(zhì)是一個(gè)二元假設(shè)檢驗(yàn)問(wèn)題當(dāng)前接收到的回波信號(hào)里是只有噪聲還是噪聲疊加了目標(biāo)回波。如果環(huán)境是理想均勻的一個(gè)固定的檢測(cè)門(mén)限就夠了——信號(hào)功率超過(guò)門(mén)限就判為目標(biāo)。但現(xiàn)實(shí)雷達(dá)面臨的噪聲和雜波環(huán)境極其復(fù)雜海雜波、地雜波、氣象雜波在空間和時(shí)間上都是非平穩(wěn)的固定門(mén)限很快就會(huì)被突破。CFAR的核心思路是讓檢測(cè)門(mén)限跟著背景環(huán)境自適應(yīng)調(diào)整。具體做法是在待檢測(cè)單元Cell Under TestCUT周?chē)∫蝗⒖紗卧脜⒖紗卧墓β仕焦烙?jì)當(dāng)前背景的噪聲/雜波強(qiáng)度再乘以一個(gè)由虛警概率反算出來(lái)的門(mén)限因子得到該點(diǎn)的自適應(yīng)門(mén)限。這樣一來(lái)在雜波強(qiáng)的區(qū)域門(mén)限自動(dòng)抬高在噪聲弱的區(qū)域門(mén)限自動(dòng)降低虛警率就能維持在一個(gè)恒定的水平。這個(gè)“恒虛警”的數(shù)學(xué)表達(dá)是當(dāng)只有噪聲存在時(shí)檢測(cè)器判定為目標(biāo)的概率始終保持不變即虛警概率P_fa恒定。這個(gè)性質(zhì)在實(shí)際工程中非常重要——虛警太多會(huì)耗盡雷達(dá)的跟蹤資源虛警太少又會(huì)漏掉弱小目標(biāo)。1.2 常見(jiàn)CFAR變體對(duì)比與適用場(chǎng)景我最早實(shí)現(xiàn)的是最經(jīng)典的CA-CFAR單元平均恒虛警。它的思路很直接把參考單元的平均功率作為背景估計(jì)。但用了一陣子就發(fā)現(xiàn)CA-CFAR在多目標(biāo)場(chǎng)景下會(huì)出現(xiàn)嚴(yán)重的“遮蔽效應(yīng)”——強(qiáng)目標(biāo)的能量泄漏到參考單元里把門(mén)限拉高旁邊弱目標(biāo)就被壓掉了。后來(lái)陸續(xù)實(shí)現(xiàn)了SO-CFAR最小選擇和GO-CFAR最大選擇。SO-CFAR取左右兩個(gè)參考窗的較小均值做估計(jì)天然就具備抗多目標(biāo)遮蔽的能力GO-CFAR取較大均值在雜波邊緣處性能更好不容易在均勻區(qū)邊緣產(chǎn)生虛警。而OS-CFAR有序統(tǒng)計(jì)則是把所有參考單元排序取第k個(gè)值作為背景估計(jì)抗干擾能力最強(qiáng)但計(jì)算量也最大。變體背景估計(jì)方式優(yōu)勢(shì)劣勢(shì)典型場(chǎng)景CA-CFAR左右窗均值均勻環(huán)境下最優(yōu)多目標(biāo)遮蔽、雜波邊緣虛警均勻噪聲背景檢測(cè)SO-CFAR左右窗較小均值抗多目標(biāo)干擾雜波邊緣虛警偏多多目標(biāo)密集環(huán)境GO-CFAR左右窗較大均值抗雜波邊緣虛警多目標(biāo)遮蔽強(qiáng)雜波邊緣環(huán)境OS-CFAR排序后取第k個(gè)抗干擾能力強(qiáng)計(jì)算量大、參數(shù)敏感非均勻強(qiáng)干擾環(huán)境選型建議上工程里如果計(jì)算資源緊張、場(chǎng)景相對(duì)簡(jiǎn)單CA-CFAR依然能打如果做車(chē)載雷達(dá)這種密集多目標(biāo)場(chǎng)景SO-CFAR或者帶保護(hù)單元的CA-CFAR更合適如果雷達(dá)部署在沿?;虺鞘羞吘夁@種雜波非均勻的環(huán)境GO-CFAR是首選。我的源碼框架把幾種變體都封裝好了切換只改一個(gè)參數(shù)。2. MATLAB源碼整體設(shè)計(jì)思路2.1 數(shù)據(jù)流與輸入輸出設(shè)計(jì)寫(xiě)MATLAB源碼之前最先要想清楚函數(shù)接口長(zhǎng)什么樣。我見(jiàn)過(guò)很多人在腳本里直接堆代碼換個(gè)數(shù)據(jù)就得改一大堆參數(shù)非常痛苦。我的設(shè)計(jì)是把CFAR做成一個(gè)獨(dú)立函數(shù)輸入是一維或二維的數(shù)據(jù)立方體輸出是檢測(cè)點(diǎn)位置和對(duì)應(yīng)的自適應(yīng)門(mén)限平面。函數(shù)簽名設(shè)計(jì)成這樣function [detections, threshold] cfarProcessor(data, rangeAxis, dopplerAxis, cfg)其中data是待檢測(cè)的數(shù)據(jù)立方體可以是距離維一維數(shù)據(jù)、距離-多普勒二維數(shù)據(jù)也可以是完整的距離-多普勒-時(shí)間三維數(shù)據(jù)。rangeAxis和dopplerAxis是距離和多普勒坐標(biāo)軸主要用來(lái)在輸出檢測(cè)點(diǎn)時(shí)換算成物理坐標(biāo)。cfg是一個(gè)結(jié)構(gòu)體把CFAR相關(guān)的所有配置打包在一起包括參考單元數(shù)、保護(hù)單元數(shù)、虛警概率、CFAR類(lèi)型等。這種設(shè)計(jì)的優(yōu)勢(shì)很明顯仿真時(shí)可以直接調(diào)用實(shí)測(cè)數(shù)據(jù)接入也只需要把數(shù)據(jù)整理成統(tǒng)一的格式。我在做參數(shù)掃描時(shí)只需要在一個(gè)循環(huán)里修改cfg的字段跑起來(lái)非常舒服。2.2 核心參數(shù)設(shè)置與門(mén)限因子計(jì)算CFAR的閾值因子不是隨便取的它和虛警概率、參考單元數(shù)之間存在明確的數(shù)學(xué)關(guān)系。以CA-CFAR為例在噪聲服從高斯分布、經(jīng)過(guò)平方律檢波后服從指數(shù)分布的前提下門(mén)限因子alpha的計(jì)算公式為alpha N * (P_fa^(-1/N) - 1)其中N是參考單元總數(shù)。這個(gè)公式推導(dǎo)自指數(shù)分布的分位數(shù)性質(zhì)實(shí)際使用中驗(yàn)證過(guò)在N大于16時(shí)精度足夠。比如P_fa1e-4N32時(shí)alpha算出來(lái)大約是7.2。這個(gè)值意味著門(mén)限大約是背景均值的7倍左右。對(duì)應(yīng)地OS-CFAR的門(mén)限因子計(jì)算依賴(lài)次序統(tǒng)計(jì)量分布MATLAB里可以用nthroot配合不完全Beta函數(shù)求解當(dāng)然更省事的方式是查表。我源碼里預(yù)置了一張常用參數(shù)組合的門(mén)限因子表同時(shí)支持自定義輸入兼顧精度和靈活性。保護(hù)單元數(shù)量取決于目標(biāo)在距離維和多普勒維的物理擴(kuò)展。以車(chē)載毫米波雷達(dá)為例一個(gè)強(qiáng)目標(biāo)在距離維上可能占據(jù)3到5個(gè)分辨單元在多普勒維上可能占據(jù)2到3個(gè)單元。保護(hù)單元設(shè)置少了目標(biāo)能量泄漏進(jìn)參考窗門(mén)限會(huì)被自身抬高設(shè)置多了參考窗的有效長(zhǎng)度變短背景估計(jì)的方差增大。我一般建議保護(hù)單元數(shù)比目標(biāo)最大占用單元數(shù)多2個(gè)留出安全余量。3. 源碼實(shí)現(xiàn)與仿真驗(yàn)證3.1 一維CFAR完整實(shí)現(xiàn)剖析先看最基礎(chǔ)的一維CA-CFAR實(shí)現(xiàn)這部分理解透了二維和三維只是循環(huán)維度增加的問(wèn)題。下面是我源碼里的核心函數(shù)function [detMask, thresh] caCfar1D(x, numGuard, numRef, pfa) % x : 1xN 輸入信號(hào) % numGuard : 單側(cè)保護(hù)單元數(shù) % numRef : 單側(cè)參考單元數(shù) % pfa : 期望虛警概率 N length(x); detMask zeros(1, N); thresh zeros(1, N); % 計(jì)算CA-CFAR門(mén)限因子 alpha numRef * 2 * (pfa^(-1/(numRef*2)) - 1); for idx (numGuard numRef 1) : (N - numGuard - numRef) % 提取左右參考窗 refLeft x(idx-numGuard-numRef : idx-numGuard-1); refRight x(idxnumGuard1 : idxnumGuardnumRef); % 背景均值估計(jì) bgLevel mean([refLeft, refRight]); % 計(jì)算自適應(yīng)門(mén)限 thresh(idx) alpha * bgLevel; % 檢測(cè)判決 detMask(idx) x(idx) thresh(idx); end end這段代碼有兩個(gè)設(shè)計(jì)細(xì)節(jié)值得注意。第一門(mén)限因子用的是2倍參考單元總數(shù)參與計(jì)算因?yàn)樽笥覂蓚?cè)都有參考窗總參考單元數(shù)N_total 2 * numRef。第二檢測(cè)判決用的是大于號(hào)而不是大于等于號(hào)這是為了嚴(yán)格保證虛警概率對(duì)應(yīng)的條件是P(x thr)臨界點(diǎn)不算檢測(cè)。實(shí)際工程中這兩個(gè)細(xì)節(jié)很容易被忽略但直接影響檢測(cè)性能。3.2 仿真場(chǎng)景構(gòu)建與數(shù)據(jù)生成仿真數(shù)據(jù)生成的合理性決定了驗(yàn)證結(jié)論的可信度。我用三種成分疊加來(lái)構(gòu)造測(cè)試數(shù)據(jù)高斯白噪聲作為熱噪聲基底一個(gè)幅度隨機(jī)的K分布雜波塊模擬非均勻背景再加上若干不同信噪比的點(diǎn)目標(biāo)。%% 仿真場(chǎng)景參數(shù) fs 1e6; % 采樣率 1MHz N 1024; % 距離單元數(shù) snrTarget [18, 12, 6]; % 三個(gè)目標(biāo)信噪比 dB targetPos [200, 400, 600]; noiseFloor 1; %% 生成噪聲 noise noiseFloor * randn(1, N); %% 生成雜波塊模擬非均勻背景 clutterAmp 5; clutterRange 500:700; noise(clutterRange) noise(clutterRange) ... clutterAmp * abs(randn(1, length(clutterRange))); %% 注入目標(biāo) signal noise; for k 1:length(snrTarget) amp sqrt(10^(snrTarget(k)/10) * noiseFloor^2); signal(targetPos(k)) signal(targetPos(k)) amp; end這里的關(guān)鍵點(diǎn)是把目標(biāo)復(fù)幅度設(shè)置為一個(gè)具體的功率值而不是簡(jiǎn)單地在幅度上加一個(gè)數(shù)。因?yàn)镃FAR門(mén)限計(jì)算是基于功率的信噪比的定義也必須按功率比來(lái)算。我在初期調(diào)試時(shí)就是在這里犯了糊涂幅度和功率混用導(dǎo)致仿真結(jié)果怎么都對(duì)不上理論值。3.3 運(yùn)行結(jié)果與檢測(cè)性能分析跑完仿真后我會(huì)先看門(mén)限曲線(xiàn)和目標(biāo)位置的對(duì)應(yīng)關(guān)系。在MATLAB里畫(huà)圖時(shí)建議用plot把信號(hào)、門(mén)限、檢測(cè)點(diǎn)三個(gè)要素畫(huà)在同一張圖上方便直觀判斷門(mén)限是否在雜波區(qū)自動(dòng)抬高、目標(biāo)是否超過(guò)門(mén)限。從結(jié)果可以清楚看到在均勻噪聲區(qū)門(mén)限基本保持平穩(wěn)波動(dòng)幅度很小在500到700這個(gè)雜波塊區(qū)域門(mén)限明顯抬高這正是CFAR自適應(yīng)的典型表現(xiàn)。三個(gè)注入目標(biāo)中18dB和12dB的目標(biāo)都被正確檢測(cè)到6dB的弱目標(biāo)剛好壓在門(mén)限附近檢測(cè)結(jié)果不穩(wěn)定這說(shuō)明在虛警概率1e-4的設(shè)定下單次檢測(cè)的最低信噪比大約在10到12dB之間。需要特別注意的是邊界處理。我的一維版本直接跳過(guò)了信號(hào)兩端的單元這些區(qū)域的檢測(cè)輸出默認(rèn)置零。如果邊界區(qū)域也需要檢測(cè)可以考慮用反射擴(kuò)展或者循環(huán)擴(kuò)展的方式補(bǔ)全參考窗。我在初版實(shí)現(xiàn)時(shí)用了補(bǔ)零擴(kuò)展結(jié)果邊界處出現(xiàn)了一排密密麻麻的假目標(biāo)排查了半天才意識(shí)到是補(bǔ)零導(dǎo)致背景估計(jì)偏低、門(mén)限塌陷。后來(lái)改用循環(huán)擴(kuò)展邊界處的虛警問(wèn)題立刻消失了。4. 二維CFAR擴(kuò)展與運(yùn)算效率優(yōu)化4.1 從一維到二維的維度擴(kuò)展實(shí)際雷達(dá)數(shù)據(jù)處理基本都是二維距離-多普勒譜上的每個(gè)點(diǎn)都要做CFAR檢測(cè)。二維CFAR和一維的核心區(qū)別在于參考窗從“線(xiàn)段”變成了“矩形環(huán)”保護(hù)單元也從線(xiàn)段變成了矩形框。function [detMask2D, thr2D] cfar2D(data, guardRange, guardDop, refRange, refDop, pfa) % data : R x D 距離-多普勒譜 % guardRange: 距離維單側(cè)保護(hù)單元數(shù) % guardDop : 多普勒維單側(cè)保護(hù)單元數(shù) % refRange : 距離維單側(cè)參考單元數(shù) % refDop : 多普勒維單側(cè)參考單元數(shù) [Rd, Dd] size(data); detMask2D zeros(Rd, Dd); thr2D zeros(Rd, Dd); N (2*refRange1)*(2*refDop1) - (2*guardRange1)*(2*guardDop1); alpha N * (pfa^(-1/N) - 1); for ii (refRangeguardRange1) : (Rd - guardRange - refRange) for jj (refDopguardDop1) : (Dd - guardDop - refDop) % 提取矩形參考窗 refWindow data(... ii-guardRange-refRange : iiguardRangerefRange, ... jj-guardDop-refDop : jjguardDoprefDop); % 挖掉保護(hù)窗 guardWindow data(... ii-guardRange : iiguardRange, ... jj-guardDop : jjguardDop); bgSum sum(refWindow(:)) - sum(guardWindow(:)); bgNum numel(refWindow) - numel(guardWindow); bgLevel bgSum / bgNum; thr2D(ii, jj) alpha * bgLevel; detMask2D(ii, jj) data(ii, jj) thr2D(ii, jj); end end end二維CFAR的參考單元總數(shù)N是關(guān)鍵參數(shù)它直接決定了背景估計(jì)的方差。N越大背景估計(jì)越平滑門(mén)限越穩(wěn)定但計(jì)算量也越大N太小門(mén)限抖動(dòng)明顯虛警率會(huì)偏離設(shè)計(jì)值。我在工程上一般取總參考單元數(shù)在32到128之間具體數(shù)值要結(jié)合數(shù)據(jù)維度和目標(biāo)尺寸來(lái)定。4.2 雙重循環(huán)太慢用矩陣運(yùn)算改寫(xiě)純for循環(huán)的雙重嵌套在維度稍大時(shí)運(yùn)行時(shí)間感人。我曾經(jīng)用512乘256的距離-多普勒?qǐng)D跑一次CFAR耗時(shí)接近30秒這在實(shí)時(shí)處理場(chǎng)景里是完全不可接受的。優(yōu)化思路是向量化把參考窗均值計(jì)算改造成卷積運(yùn)算利用MATLAB的矩陣運(yùn)算加速。function [detMask2D, thr2D] cfar2dFast(data, guardRange, guardDop, refRange, refDop, pfa) % 利用卷積實(shí)現(xiàn)加速 refKernel ones(2*refRange1, 2*refDop1) / ((2*refRange1)*(2*refDop1)); guardKernel ones(2*guardRange1, 2*guardDop1) / ((2*guardRange1)*(2*guardDop1)); % 背景均值 參考窗均值 - 保護(hù)窗補(bǔ)償 bgMean conv2(data, refKernel, same) - conv2(data, guardKernel, same); bgMean(bgMean 0) 0; % 數(shù)值保護(hù)防止負(fù)值 N (2*refRange1)*(2*refDop1) - (2*guardRange1)*(2*guardDop1); alpha N * (pfa^(-1/N) - 1); thr2D alpha * bgMean; detMask2D data thr2D; end這里有個(gè)計(jì)算技巧conv2的結(jié)果是局部均值不是局部和。用參考窗均值減去保護(hù)窗均值得到的是“環(huán)形區(qū)域均值”這和直接計(jì)算環(huán)形區(qū)域的平均值是近似等價(jià)的尤其在保護(hù)窗相對(duì)參考窗較小的情況下誤差可以忽略。實(shí)測(cè)下來(lái)這個(gè)版本比f(wàn)or循環(huán)快了至少兩個(gè)數(shù)量級(jí)512乘256的數(shù)據(jù)量從30秒降到了0.1秒以?xún)?nèi)。4.3 多維度數(shù)據(jù)批處理思路實(shí)際算法驗(yàn)證時(shí)經(jīng)常需要對(duì)一整個(gè)數(shù)據(jù)立方體距離-多普勒-時(shí)間做CFAR這時(shí)候逐幀調(diào)用二維函數(shù)是可行的但更好的做法是引入filter或blockproc來(lái)做分塊處理。MATLAB的blockproc可以直接按塊處理二維數(shù)據(jù)配合自定義的CFAR函數(shù)代碼寫(xiě)起來(lái)非常干凈還能利用并行計(jì)算工具箱加速。如果數(shù)據(jù)規(guī)模實(shí)在太大內(nèi)存放不下我一般會(huì)把數(shù)據(jù)按距離維切片每片獨(dú)立處理再合并結(jié)果。這個(gè)方案的優(yōu)點(diǎn)是邏輯簡(jiǎn)單、易于調(diào)試缺點(diǎn)是每個(gè)切片之間如果存在目標(biāo)跨越切片邊界的情況需要做重疊處理。不過(guò)我實(shí)際項(xiàng)目里遇到的場(chǎng)景目標(biāo)跨越切片邊界的概率很低重疊處理這步我一般就省略了。5. 參數(shù)調(diào)優(yōu)與工程落地經(jīng)驗(yàn)5.1 虛警概率P_fa的實(shí)際選擇邏輯理論推導(dǎo)時(shí)P_fa可以取任意小于1的正數(shù)但工程上這個(gè)值直接決定了一個(gè)數(shù)據(jù)幀里允許出現(xiàn)的虛警點(diǎn)數(shù)。比如一個(gè)脈沖多普勒雷達(dá)每幀距離-多普勒單元總數(shù)是10萬(wàn)個(gè)P_fa取1e-6時(shí)理論上每幀會(huì)有0.1個(gè)虛警點(diǎn)也就是10幀才出現(xiàn)一個(gè)虛警這是可以接受的。但如果P_fa取1e-4每幀就有10個(gè)虛警跟蹤器就要花大量資源去處理假航跡。反過(guò)來(lái)P_fa取得太低門(mén)限抬得很高弱小目標(biāo)就檢不到了。這個(gè)取舍在雷達(dá)領(lǐng)域叫“檢測(cè)概率與虛警概率的平衡”實(shí)際選擇時(shí)還要考慮后續(xù)處理的糾錯(cuò)能力。如果后端有航跡起始和關(guān)聯(lián)算法可以適當(dāng)放寬P_fa如果后端直接輸出點(diǎn)跡P_fa就要收緊一些。我的經(jīng)驗(yàn)是單脈沖檢測(cè)時(shí)P_fa取1e-5到1e-6之間比較合適如果使用了非相參積累可以適當(dāng)放寬到1e-4。5.2 參考單元數(shù)的經(jīng)驗(yàn)取值參考單元數(shù)影響的是背景估計(jì)的質(zhì)量和CFAR損失的多少。理論上背景估計(jì)的方差和參考單元數(shù)成反比參考單元數(shù)越多估計(jì)越準(zhǔn)CFAR損失越小。我當(dāng)時(shí)用蒙特卡洛方法掃過(guò)一組數(shù)據(jù)P_fa取1e-4時(shí)參考單元數(shù)從8增加到32CFAR損失從大約1.2dB降低到0.5dB但超過(guò)64以后損失下降的幅度就不明顯了計(jì)算量倒是翻了好幾倍。參考單元總數(shù)N理論CFAR損失(dB)適用場(chǎng)景81.8計(jì)算資源極受限160.9通用參數(shù)320.5推薦首選640.3高質(zhì)量檢測(cè)保護(hù)單元數(shù)一般在距離維設(shè)為2到4多普勒維設(shè)為1到2。如果目標(biāo)在多普勒維有嚴(yán)重的速度擴(kuò)展比如高速機(jī)動(dòng)目標(biāo)保護(hù)單元還要適當(dāng)增加。我做過(guò)一個(gè)極端情況某型雷達(dá)的海上目標(biāo)在多普勒維擴(kuò)展到了5個(gè)單元保護(hù)單元設(shè)成1時(shí)門(mén)限被抬高了將近15dB弱小目標(biāo)的發(fā)現(xiàn)距離直接縮短了三成。5.3 實(shí)測(cè)數(shù)據(jù)調(diào)試的注意事項(xiàng)從仿真數(shù)據(jù)切換到實(shí)測(cè)數(shù)據(jù)時(shí)最容易遇到兩類(lèi)問(wèn)題。第一類(lèi)是數(shù)據(jù)格式和刻度的問(wèn)題。雷達(dá)接收機(jī)的輸出通常要經(jīng)過(guò)幅度歸一化或者直接是ADC原始碼值不同格式下噪聲功率的量綱完全不一樣。處理前一定要先對(duì)數(shù)據(jù)做統(tǒng)計(jì)分析確認(rèn)噪聲基底水平否則門(mén)限因子會(huì)不著邊際。第二類(lèi)是雜波的非均勻性問(wèn)題。仿真里的K分布雜波還是理想化了實(shí)測(cè)的海雜波或地雜波往往帶有很強(qiáng)的脈沖性尖峰CA-CFAR在這種環(huán)境下虛警率會(huì)嚴(yán)重超標(biāo)。我的處理方案是先用一個(gè)低門(mén)限的預(yù)檢測(cè)把明顯的大目標(biāo)剔除然后在剩余數(shù)據(jù)上做CFAR參數(shù)估計(jì)。這個(gè)方法有點(diǎn)類(lèi)似“清理戰(zhàn)場(chǎng)再布陣”實(shí)測(cè)下來(lái)虛警率能回到設(shè)計(jì)值。最后再分享一個(gè)我踩過(guò)很多次坑才學(xué)會(huì)的經(jīng)驗(yàn)在把CFAR應(yīng)用到數(shù)據(jù)集之前務(wù)必先編寫(xiě)一個(gè)自動(dòng)化的參數(shù)掃描腳本。把P_fa、參考單元數(shù)、保護(hù)單元數(shù)都做成循環(huán)變量在少量代表性數(shù)據(jù)上先跑一遍把檢測(cè)點(diǎn)數(shù)和虛警點(diǎn)數(shù)的統(tǒng)計(jì)結(jié)果畫(huà)出來(lái)你會(huì)非常直觀地看到參數(shù)變化對(duì)輸出質(zhì)量的影響。這么做看起來(lái)很花時(shí)間實(shí)際上比盲目調(diào)參數(shù)高效得多能在幾分鐘內(nèi)幫你確定最優(yōu)參數(shù)區(qū)間。我現(xiàn)在做任何新雷達(dá)數(shù)據(jù)的第一件事就是先跑一遍參數(shù)掃描再進(jìn)入正式的算法調(diào)優(yōu)流程。本文還有配套的精品資源點(diǎn)擊獲取