周昆正
(中國(guó)電子科技集團(tuán)公司第二十研究所,西安 710068)
在雷達(dá)數(shù)據(jù)處理中,點(diǎn)跡數(shù)據(jù)預(yù)處理是航跡數(shù)據(jù)處理的前提,關(guān)系到一部雷達(dá)最終的點(diǎn)跡精度、航跡的濾波質(zhì)量和精度。雷達(dá)目標(biāo)回波信號(hào)經(jīng)信號(hào)處理以后形成原始點(diǎn)跡數(shù)據(jù),一個(gè)目標(biāo)可能在不同方位、不同距離同時(shí)輸出點(diǎn)跡數(shù)據(jù),因此需要通過(guò)點(diǎn)跡凝聚將掃描獲得的單目標(biāo)的多個(gè)數(shù)據(jù)凝聚成一個(gè)點(diǎn)跡[1][3]。傳統(tǒng)的自動(dòng)點(diǎn)跡提取處理方法一般分兩步:一是剔除原始點(diǎn)跡中的野值;二是對(duì)同一組的點(diǎn)跡進(jìn)行距離、方位上的凝聚處理,求出目標(biāo)的物理位置估計(jì)值。
一般的原始點(diǎn)跡數(shù)據(jù)量較大,點(diǎn)跡數(shù)據(jù)處理系統(tǒng)具有一定的實(shí)時(shí)性。因此,早期的數(shù)據(jù)處理系統(tǒng)的實(shí)現(xiàn)采用DSP,近年來(lái)也有采用FPGA實(shí)現(xiàn)[3],這些實(shí)現(xiàn)方式由于存儲(chǔ)量的限制對(duì)數(shù)據(jù)處理系統(tǒng)能力的發(fā)揮都有一定的制約。近年來(lái),隨著通用CPU(X86、PowerPc、ARM、龍芯等)處理能力的提升、高速并行計(jì)算、多核多線程技術(shù)的發(fā)展,利用通用CPU實(shí)現(xiàn)點(diǎn)跡凝聚已成為可能。
本文針對(duì)某型艦載警戒監(jiān)視雷達(dá)的實(shí)際需求,通過(guò)PCI總線,采用高速主動(dòng)DMA傳輸方式,完成原始點(diǎn)跡數(shù)據(jù)的實(shí)時(shí)傳輸,采用通用 CPU實(shí)時(shí)完成點(diǎn)跡凝聚。本文設(shè)計(jì)的雷達(dá)點(diǎn)跡數(shù)據(jù)處理系統(tǒng),經(jīng)過(guò)實(shí)際運(yùn)行,達(dá)到了良好的數(shù)據(jù)處理效果。
點(diǎn)跡凝聚的方法較多,但大體可分為先距離后方位的聚類方法,以及基于圖像處理的點(diǎn)跡凝聚方法[5][6]。圖像法的計(jì)算量大、且延遲多,在實(shí)際工程中應(yīng)用較少。傳統(tǒng)的點(diǎn)跡凝聚方法是質(zhì)心法。其思路是,先對(duì)信號(hào)處理后獲得的點(diǎn)跡信息進(jìn)行聚類,再求其質(zhì)心。
其中,iP為幅度值,xi為方位碼,?x為方位中心估值。
實(shí)際實(shí)現(xiàn)中,其核心和難點(diǎn)是凝聚點(diǎn)跡塊的獲取,即哪些視頻點(diǎn)可凝聚為一個(gè)點(diǎn)跡塊。因?yàn)槔走_(dá)掃描回波是每雷達(dá)周期一組回波,故通常采用先距離維后方位維的“聚類”方法。因在距離和方位維分別依次獨(dú)立進(jìn)行聚類,這樣就容易造成方位維目標(biāo)丟失或分裂。
在一維方位中心估計(jì)的基礎(chǔ)上進(jìn)一步可以實(shí)現(xiàn)二維質(zhì)量中心估計(jì),以實(shí)現(xiàn)對(duì)于目標(biāo)方位中心和距離中心的精確估計(jì)。與面積中心法相比,質(zhì)量中心法充分利用了目標(biāo)回波的幅值信息,具有較高的估計(jì)精度。二維質(zhì)量中心法的計(jì)算公式可以由式(1)衍生得到。對(duì)于屬于同一個(gè)目標(biāo)的回波信號(hào),有
其中,Pi,j為幅度值,xi,j為方位碼或距離嗎,?x為方位或距離中心估值。
圖1 點(diǎn)跡凝聚框圖
在文獻(xiàn)7中,首先在各距離單元內(nèi)分別計(jì)算方位中心,以確定哪些距離單元的信號(hào)是由同一目標(biāo)產(chǎn)生的。而后,對(duì)所有應(yīng)融合到一起的目標(biāo)回波數(shù)據(jù)重新進(jìn)行計(jì)算得到方位中心估值和距離中心估值。
筆者認(rèn)為,此種分步驟分別計(jì)算,以及后續(xù)的簡(jiǎn)化的二維質(zhì)量中心法:方位質(zhì)量中心, 距離峰值搜索,在距離量化精度較高時(shí),有可能會(huì)損失質(zhì)量中心的計(jì)算精度。因此,本文對(duì)所有應(yīng)融合到一起的目標(biāo)回波數(shù)據(jù)采用連通性判斷后累加計(jì)算,最終計(jì)算出方位中心估值和距離中心估值。
本雷達(dá)是艦載兩坐標(biāo)機(jī)械掃描天線空海兼顧型警戒監(jiān)視雷達(dá),根據(jù)本雷達(dá)的特點(diǎn),首先在方位維進(jìn)行過(guò)門限檢測(cè)和滑窗檢測(cè),再根據(jù)不同工作方式下的目標(biāo)方位維持續(xù)單元數(shù),目標(biāo)在距離維持續(xù)單元數(shù),剔除野值,同時(shí)完成凝聚。本方法與常規(guī)方法不同之處在于先進(jìn)行目標(biāo)檢測(cè),方位維凝聚,再進(jìn)行距離維凝聚。目標(biāo)檢測(cè)要在方位—距離的二維區(qū)域進(jìn)行,同時(shí)剔除了過(guò)大的地物和過(guò)小的噪聲干擾,抑制目標(biāo)分裂或丟失,降低虛警率。
在本項(xiàng)目中,天線為機(jī)械旋轉(zhuǎn),轉(zhuǎn)速有三種,雷達(dá)工作周期有三種,方位量化 14位。因此,雷達(dá)點(diǎn)跡處理系統(tǒng)共有九種工作方式。
信號(hào)處理輸出的數(shù)字回波數(shù)據(jù),經(jīng)過(guò)PCI總線,采用主動(dòng)DMA方式傳送到數(shù)據(jù)處理CPU的內(nèi)存區(qū)域。即在每個(gè)雷達(dá)工作周期的起始,由信號(hào)處理FPGA電路,編程PCI9054控制芯片的DMA控制寄存器組,主動(dòng)發(fā)起DMA傳輸,數(shù)據(jù)由FPGA緩存?zhèn)鬏數(shù)綌?shù)據(jù)處理CPU的內(nèi)存區(qū)域,不影響CPU正在進(jìn)行的其他操作。
按照數(shù)據(jù)處理的要求,數(shù)據(jù)處理 CPU每天線周期32卦限工作,每卦限11.25度區(qū)域,定時(shí)工作,處理信號(hào)處理送來(lái)的數(shù)字回波。點(diǎn)跡凝聚處理在每卦限中斷時(shí)處理,輸出的點(diǎn)跡送 TWS處理建立航跡,最后通過(guò)以太網(wǎng)輸出點(diǎn)跡、航跡數(shù)據(jù)到終端顯示。
本系統(tǒng)運(yùn)行 VxWorks 嵌入式實(shí)時(shí)操作系統(tǒng),為了確保雷達(dá)數(shù)據(jù)處理的實(shí)時(shí)性,在軟件設(shè)計(jì)中采用了多任務(wù)設(shè)計(jì)方法。主要有網(wǎng)絡(luò)傳送任務(wù)、網(wǎng)絡(luò)接收任務(wù)、卦限中斷處理、點(diǎn)跡數(shù)據(jù)處理、TWS航跡處理任務(wù)。
對(duì)于機(jī)械掃描天線雷達(dá),目標(biāo)駐留時(shí)間較長(zhǎng),又有噪聲及海雜波影響或目標(biāo)本身的起伏,當(dāng)天線進(jìn)行連續(xù)掃描時(shí),波束掃過(guò)目標(biāo)期間時(shí)將獲得一串回波脈沖,其幅度值不等幅度,且目標(biāo)開始出現(xiàn)的角度位置不能預(yù)知,故采用該滑窗檢測(cè)器進(jìn)行點(diǎn)跡的提取,不僅可以判決目標(biāo)的存在與否, 還可以判定目標(biāo)的方位。
當(dāng)天線進(jìn)行連續(xù)掃描時(shí),波束掃過(guò)目標(biāo)期間時(shí)將獲得一串回波脈沖。根據(jù)雷達(dá)半功率點(diǎn)波瓣寬度,雷達(dá)天線轉(zhuǎn)速及重復(fù)頻率,計(jì)算出波瓣內(nèi)常規(guī)點(diǎn)目標(biāo)回波個(gè)數(shù),由此來(lái)確定目標(biāo)檢測(cè)時(shí)的準(zhǔn)則。
其中,θ0.5為半功率點(diǎn)波瓣寬度,Ωd為天線轉(zhuǎn)速(°/s),fr為脈沖重復(fù)頻率(Hz)。針對(duì)超大目標(biāo)在距離較近時(shí),不能按照點(diǎn)目標(biāo)計(jì)算,其回波個(gè)數(shù)應(yīng)適量修正。
目標(biāo)檢測(cè)主要是獲取目標(biāo)點(diǎn)跡塊區(qū)域,判定是否目標(biāo)。根據(jù)本雷達(dá)特點(diǎn),不同工作方式下目標(biāo)持續(xù)的距離和方位單元數(shù)大不相同,可以據(jù)此對(duì)回波數(shù)據(jù)進(jìn)行篩選,目標(biāo)在方位維會(huì)占據(jù)多個(gè)單元,也可能跨距離單元。
圖2 滑窗檢測(cè)器判決原理
常規(guī)的滑窗檢測(cè)器由多節(jié)延遲線檢測(cè)門限電路組成[1][8],工程中常用性能比較好的小滑窗檢測(cè)[1][2]。本文中,針對(duì)輸入的數(shù)字視頻回波,采用軟件判決回波是否超過(guò)第一檢測(cè)門限,輸出“0”、“1”的二值信號(hào),二進(jìn)制滑窗積累采用軟件對(duì)二值信號(hào)累加后進(jìn)行判決。
由于雷達(dá)工作狀態(tài)有全域檢測(cè)和檢測(cè)波門內(nèi)檢測(cè)兩種方式,據(jù)此生成與數(shù)字視頻距離、方位單元匹配的波門位面,允許該單元數(shù)字視頻參與點(diǎn)跡凝聚,設(shè)置為“1”,否則為“0”。經(jīng)過(guò)第一門限后的二值信號(hào)與波門位面進(jìn)行 “邏輯與”操作,輸出的二值信號(hào)進(jìn)入下一步驟的二進(jìn)制滑窗積累。
目標(biāo)凝聚過(guò)程中使用的參數(shù)包括凝聚標(biāo)識(shí),目標(biāo)方位維的起始、結(jié)束、距離單元數(shù),目標(biāo)凝聚塊的方位起始、結(jié)束,距離起始、結(jié)束,幅度與距離乘積的累加和,幅度與方位乘積的累加和,幅度的累加和,凝聚塊的目標(biāo)點(diǎn)的計(jì)數(shù)。
方位維凝聚在滑窗檢測(cè)之后進(jìn)行?;皺z測(cè)時(shí),目標(biāo)回波個(gè)數(shù)大于4/7門限時(shí),滑窗檢測(cè)結(jié)果為“1”,否則為“0”。對(duì)滑窗檢測(cè)結(jié)果進(jìn)行累加,計(jì)算目標(biāo)過(guò)門限的回波個(gè)數(shù)。當(dāng)判斷是一個(gè)目標(biāo)的起始時(shí),計(jì)算方位凝聚的參數(shù)初值,例如幅度與方位乘積的累加和,幅度的累加和。當(dāng)目標(biāo)已經(jīng)起始,當(dāng)前滑窗檢測(cè)結(jié)果為“1”時(shí),則累加當(dāng)前方位的凝聚參數(shù),例如幅度與方位乘積的累加和,幅度的累加和。此時(shí),如果當(dāng)前方位單元經(jīng)過(guò)正北,則給當(dāng)前方位加上360度后再計(jì)算凝聚參數(shù)。如果目標(biāo)在方位維結(jié)束,目標(biāo)回波個(gè)數(shù)大于最小方位寬度門限,則計(jì)算所有凝聚參數(shù),設(shè)置凝聚標(biāo)識(shí)為“有效”,存入緩沖區(qū)。否則刪除所有凝聚參數(shù),剔除當(dāng)前凝聚點(diǎn)。如果目標(biāo)在卦限邊界沒(méi)有結(jié)束,則保留凝聚參數(shù)到下一個(gè)卦限繼續(xù)處理。
方位維凝聚時(shí),在每一個(gè)距離單元,從每一個(gè)卦限回波的方位起始到方位結(jié)束,一個(gè)距離單元做完再進(jìn)行下一個(gè)距離單元,順序進(jìn)行。在方位維凝聚時(shí),根據(jù)目標(biāo)的特點(diǎn),在雷達(dá)不同的工作方式下,計(jì)算點(diǎn)目標(biāo)的回波個(gè)數(shù),作為最小方位寬度門限,可以有效剔除噪聲、干擾等虛假目標(biāo)?;皺z測(cè)可以抑制方位分裂。在雷達(dá)的方位分辨力范圍內(nèi)的點(diǎn)跡可以凝聚為一個(gè)目標(biāo),也可以抑制方位分裂。
點(diǎn)跡凝聚輸出參數(shù)有時(shí)戳、質(zhì)心的距離、方位,目標(biāo)距離和方位上的寬度,點(diǎn)跡的平均幅度,目標(biāo)的原始回波點(diǎn)計(jì)數(shù)。
方位維凝聚后,再進(jìn)行方位凝聚塊的跨距離單元凝聚。距離維凝聚過(guò)程,在每一個(gè)距離單元,從每一個(gè)卦限回波的方位起始到方位結(jié)束,一個(gè)距離單元做完再進(jìn)行下一個(gè)距離單元,順序進(jìn)行。即對(duì)于第i距離單元對(duì)應(yīng)的凝聚塊,分別與第i-1和i+1距離單元的方位凝聚塊進(jìn)行連通判定,依據(jù)雷達(dá)的距離分辨力,還可以對(duì)第i-2和i+2距離單元處理。若連通,則合并凝聚塊,凝聚參數(shù)合并。
在程序?qū)崿F(xiàn)連通判定時(shí),這部分功能可以采用函數(shù)的迭代調(diào)用完成。連通判定程序每迭代一次,迭代深度遞增。如果超過(guò)最大迭代深度,則返回,設(shè)置返回值為距離深度超長(zhǎng)。如果方位凝聚跨越卦限邊界,則再設(shè)置返回值為兩種情況兼有。
凝聚標(biāo)識(shí)類型有六種:“0”數(shù)據(jù)無(wú)效;“1”數(shù)據(jù)有效;“2”占用,正在進(jìn)行凝聚搜索;“3”已搜索過(guò),目標(biāo)跨邊界,留給下一卦限處理;“5”深度過(guò)長(zhǎng),剔除;“7”目標(biāo)跨邊界,深度過(guò)長(zhǎng),留給下一卦限,搜索所有連通區(qū)域,剔除。
距離維凝聚過(guò)程中,僅迭代搜索是正常返回時(shí)才進(jìn)行參數(shù)合并。連通判定時(shí),需注意方位凝聚塊跨越正北的情況。凝聚程序結(jié)束時(shí),如果為方位凝聚跨越卦限邊界,恢復(fù)凝聚塊凝聚標(biāo)識(shí)為“有效”,留待下一卦限再處理。
在雷達(dá)的距離分辨力范圍內(nèi)的點(diǎn)跡可以凝聚為一個(gè)目標(biāo),可以抑制距離分裂。根據(jù)典型目標(biāo),如飛機(jī)、作戰(zhàn)艦艇的實(shí)際大小估值,計(jì)算目標(biāo)在不同距離上的最大方位寬度門限和距離寬度門限,可以有效剔除地物等面目標(biāo)。
(1)存儲(chǔ)空間需求優(yōu)化
本項(xiàng)目在軟件設(shè)計(jì)時(shí),方位按照20000單元設(shè)計(jì)、距離按照 6400單元設(shè)計(jì)。點(diǎn)跡凝聚時(shí),如果一幀雷達(dá)回波的視頻數(shù)據(jù)和凝聚中間過(guò)程數(shù)據(jù)都存儲(chǔ),那么需要存儲(chǔ)空間約300MB。當(dāng)修改為按照卦限定時(shí)處理后,僅存儲(chǔ)本卦限的雷達(dá)回波,需要存儲(chǔ)空間約40MB。運(yùn)行耗時(shí)稍有增加,原因是卦限處理時(shí),需要保存卦限邊界的中間處理數(shù)據(jù)。
采用通用 CPU實(shí)現(xiàn)點(diǎn)跡凝聚,存儲(chǔ)空間的需求約束不大。軟件設(shè)計(jì)可以采用流水處理方式,大量記錄中間處理過(guò)程數(shù)據(jù),減少 CPU的邏輯判斷耗時(shí),提高軟件運(yùn)行效率。
(2)程序代碼優(yōu)化
現(xiàn)代通用 CPU都具有二級(jí)、甚至三級(jí)指令緩存、數(shù)據(jù)緩存,其工作流水線比較長(zhǎng),因此適合于大數(shù)據(jù)量的流水操作。例如,最新架構(gòu)的ARM CPU在多媒體指令優(yōu)化時(shí),F(xiàn)FT算法的計(jì)算效率已經(jīng)接近 TI公司的主流 DSP芯片。當(dāng)指令中大量存在if/else等邏輯判斷、跳轉(zhuǎn)指令,會(huì)破壞CPU的工作流水線,運(yùn)行效率會(huì)大幅度降低[9][10]。
滑窗檢測(cè)第一門限檢測(cè)時(shí),當(dāng)采用if/else指令實(shí)現(xiàn),在測(cè)試計(jì)算機(jī)上實(shí)現(xiàn)一幀雷達(dá)回波計(jì)算需要耗時(shí)66ms。當(dāng)采用邏輯判斷的結(jié)果(邏輯“1”或邏輯“0”)直接賦值給變量時(shí),同樣的計(jì)算量耗時(shí)僅為13 ms。
滑窗檢測(cè),當(dāng)采用if/else指令實(shí)現(xiàn),在測(cè)試計(jì)算機(jī)上實(shí)現(xiàn)一幀雷達(dá)回波計(jì)算需要耗時(shí)215ms。當(dāng)采用邏輯判斷的結(jié)果(邏輯“1”或邏輯“0”)直接參與滑窗檢測(cè)累加計(jì)算時(shí),同樣的計(jì)算量耗時(shí)僅為33 ms。
方位維、距離維凝聚時(shí),大量存在邏輯判斷,代碼優(yōu)化效果很小。
(3)波門位面
在本項(xiàng)目中,點(diǎn)跡凝聚工作在全域、區(qū)域兩種方式下。區(qū)域工作方式時(shí),僅輸出波門警戒區(qū)內(nèi)的點(diǎn)跡。如果仍然進(jìn)行全域凝聚,輸出的點(diǎn)跡再與波門警戒區(qū)作符合性判斷,當(dāng)波門警戒區(qū)數(shù)百個(gè),每卦限點(diǎn)跡數(shù)千個(gè)時(shí),計(jì)算耗時(shí)是巨大的。
為此,把每個(gè)波門警戒區(qū)與卦限角度區(qū)域做重合性判斷,設(shè)置波門掩膜位面,作為雷達(dá)回波數(shù)據(jù)的掩膜位面。雷達(dá)回波數(shù)據(jù)與掩膜位面復(fù)合后,再進(jìn)行過(guò)門限檢測(cè)和滑窗檢測(cè),運(yùn)行耗時(shí)僅略微增加。
本項(xiàng)目測(cè)試時(shí)采用的通用計(jì)算機(jī)為Core2 Duo E7500 2.93GHz,編程環(huán)境為Visual Studio2008,視頻數(shù)據(jù)隨機(jī)產(chǎn)生。當(dāng)天線掃描周期6s,一幀雷達(dá)波束6700多,距離單元3200個(gè),過(guò)門限點(diǎn)數(shù)為全部一幀回波的17%時(shí),凝聚耗時(shí)461ms,約占天線掃描周期的不到10%。
本項(xiàng)目中,信號(hào)處理每雷達(dá)周期的數(shù)字回波,通過(guò)PCI總線主動(dòng)DMA方式傳輸,16kB數(shù)據(jù)約需要130μs,傳輸效率非常高。采用的通用CPU為Core2 Duo L2400 1.66GHz,編程環(huán)境為VxWorks6.8,程序移植后運(yùn)行。在實(shí)際雷達(dá)工作情況下,雷達(dá)工作參數(shù)與上述相同,針對(duì)實(shí)際雷達(dá)回波,門限適宜選擇,凝聚耗時(shí)最大每卦限約20ms。完全達(dá)到了點(diǎn)跡數(shù)據(jù)處理的實(shí)時(shí)性要求。
本文對(duì)一個(gè)實(shí)際艦載搜索雷達(dá)點(diǎn)跡凝聚處理軟件的設(shè)計(jì)思路、方法、軟件優(yōu)化設(shè)計(jì)進(jìn)行了闡述。采用通用 CPU進(jìn)行目標(biāo)檢測(cè)和點(diǎn)跡凝聚處理,充分發(fā)揮了通用 CPU開發(fā)簡(jiǎn)便、內(nèi)存大、軟件可針對(duì)MMX、SSE、SSE2等多媒體指令集優(yōu)化的優(yōu)點(diǎn),可以完成以前DSP、FPGA才能完成的處理任務(wù),可以完成更復(fù)雜的數(shù)據(jù)處理算法。隨著信息技術(shù)的發(fā)展,雷達(dá)數(shù)據(jù)處理與信號(hào)處理進(jìn)一步融合的趨勢(shì)愈發(fā)明顯,通用 CPU必將在雷達(dá)系統(tǒng)中更加廣泛應(yīng)用。
參考文獻(xiàn):
[1]張明友, 汪學(xué)剛. 雷達(dá)系統(tǒng)(第2版)[M]. 北京:電子工業(yè)出版社, 2006.
[2]Merrill L SKolnik. 雷達(dá)手冊(cè)(第2版)[M]. 北京:電子工業(yè)出版社, 2004.
[3]吳順君, 梅曉春. 雷達(dá)信號(hào)處理和數(shù)據(jù)處理技術(shù)[M].北京:電子工業(yè)出版社, 2008.
[4]楊海英, 蔡文彬, 秦赟等. 點(diǎn)跡凝聚在FPGA 上的實(shí)現(xiàn)[J]. 雷達(dá)與對(duì)抗, 2012, 32(3).
[5]楊文琳, 方志宏, 阮信暢等. 雷達(dá)點(diǎn)跡凝聚處理技術(shù)及其數(shù)據(jù)分析[J]. 信號(hào)處理, 2001, 17(2).
[6]李潔. 雷達(dá)原始回波數(shù)據(jù)的模擬和處理 [D]. 西安電子科技大學(xué), 2014.
[7]蔡晨曦, 王祖斌, 王秀壇等. 遠(yuǎn)程警戒雷達(dá)自動(dòng)點(diǎn)跡提取算法[J]. 清華大學(xué)學(xué)報(bào)(自然科學(xué)版), 2002, 42 (7).
[8]于振華. 雷達(dá)點(diǎn)跡檢測(cè)器的設(shè)計(jì)原理和實(shí)現(xiàn)[J]. 艦船電子對(duì)抗, 2007, 30(5).
[9]張紅祥. C+ +代碼優(yōu)化技巧[J]. 長(zhǎng)春師范學(xué)院學(xué)報(bào)(自然科學(xué)版), 2005, 24(5).
[10]范建軍. SSE2指令在代碼優(yōu)化中的關(guān)鍵作用研究[J].華中師范大學(xué)學(xué)報(bào)( 自然科學(xué)版), 2004, 38(4).