房鵬飛,彭華仁,呂天志
(中電科思儀科技股份有限公司,山東青島,266555)
數(shù)字熒光頻譜技術(shù)是現(xiàn)代頻譜技術(shù)的一個(gè)重大突破,該技術(shù)利用數(shù)字計(jì)算的方式模擬了CRT 顯示器的熒光效果,并且得益于數(shù)字化技術(shù)的靈活性,它可以得到更快的顯示速度和更多樣性的顯示效果[2~3]。數(shù)字熒光頻譜技術(shù)可以同時(shí)分析當(dāng)前時(shí)刻以及之前一段時(shí)間的連續(xù)多幀頻譜,對(duì)這些頻譜的頻點(diǎn)信息進(jìn)行統(tǒng)計(jì)分析,從而獲得該時(shí)段內(nèi)監(jiān)測(cè)頻段的所有信號(hào)的強(qiáng)度分布二維數(shù)據(jù),結(jié)合歸一化技術(shù)和色彩編碼技術(shù),最終得到一幅能夠表示信號(hào)分布的頻譜態(tài)勢(shì)圖。將該技術(shù)應(yīng)用到電磁信號(hào)監(jiān)測(cè)設(shè)備上,能夠輕松的觀察重疊信號(hào),發(fā)現(xiàn)隱蔽信號(hào)、突發(fā)信號(hào),有效地提高電磁信號(hào)監(jiān)測(cè)設(shè)備的使用體驗(yàn),是信號(hào)監(jiān)測(cè)、干擾排查的重要功能之一。
本文硬件平臺(tái)選用中電科思儀科技股份有限公司推出的3943B 手持式監(jiān)測(cè)接收機(jī),基于Qt 跨平臺(tái)開(kāi)發(fā)框架,采用C++與QML 混合編程技術(shù),實(shí)現(xiàn)了數(shù)字熒光頻譜功能。由于傳統(tǒng)的數(shù)字熒光頻譜算法計(jì)算量大,手持式設(shè)備的處理器影響數(shù)字熒光頻譜顯示效果,因此本文對(duì)數(shù)據(jù)處理算法進(jìn)行了優(yōu)化,提高了軟件的流暢度。
數(shù)字熒光頻譜技術(shù)是將監(jiān)測(cè)頻段一定時(shí)間范圍內(nèi)的大量頻譜數(shù)據(jù)搜集起來(lái),統(tǒng)計(jì)在每個(gè)頻率點(diǎn)和每個(gè)幅度處的累計(jì)次數(shù),從而形成一幅統(tǒng)計(jì)圖,將統(tǒng)計(jì)圖的數(shù)值歸一化后與顏色碼一一對(duì)應(yīng)即可形成一幅展示頻譜分布態(tài)勢(shì)的圖片。
在對(duì)頻譜進(jìn)行統(tǒng)計(jì)之前,首先將頻譜離散化,先虛擬一個(gè)網(wǎng)格區(qū)域,網(wǎng)格的橫向分辨率和縱向分辨率分別與要生成的數(shù)字熒光圖圖片的橫縱分辨率一致,橫向表示頻譜頻率,縱向表示頻譜幅度,以14×8 的網(wǎng)格為例,如圖1 所示,將頻譜和網(wǎng)格疊加,就可以看到頻譜圖被分割成14×8 個(gè)方格,現(xiàn)規(guī)定有頻譜穿過(guò)的方格的值為“1”,其余方格的值為“0”。

圖1 頻譜離散化示意圖
圖中每個(gè)小方格的橫軸頻寬為:SGrid=FSpan/Pixelm,其中,F(xiàn)Span表示監(jiān)測(cè)頻段寬度,Pixelm表示熒光圖橫向像素?cái)?shù)量。
圖中每個(gè)小方格的縱軸幅度范圍為:AGrid=ARange/Pixeln,其中,ARange表示頻譜圖顯示的幅度范圍,Pixeln表示熒光圖縱向像素?cái)?shù)量。
計(jì)算方格數(shù)值的具體方法為,從起始監(jiān)測(cè)頻率開(kāi)始,每次步進(jìn)頻寬SGrid,在每個(gè)步進(jìn)頻段中,遍歷該頻段內(nèi)每個(gè)頻點(diǎn)的幅度值,以確定穿越哪個(gè)方格。
將所有統(tǒng)計(jì)周期內(nèi)的頻譜都進(jìn)行離散化,可得到若干個(gè)二維數(shù)組,然后把所有的數(shù)組累加,即可得到統(tǒng)計(jì)數(shù)組,以每個(gè)周期內(nèi)有9 條頻譜為例,得到二維的顯示數(shù)據(jù)后還需要將其可視化,即根據(jù)每個(gè)方格的數(shù)值計(jì)算方格的顏色,這樣將每個(gè)方格都填充上對(duì)應(yīng)的顏色即可得到一幅圖像,如圖2 所示,當(dāng)熒光圖的像素分辨率足夠高的時(shí)候,就能夠分辨細(xì)小信號(hào)。

圖2 數(shù)字熒光頻譜圖示意圖
累計(jì)的次數(shù)需要與顏色映射,最簡(jiǎn)單的映射關(guān)系是灰度圖的映射,根據(jù)規(guī)定的顯示范圍,均勻的映射到0~255上,0 表示黑色,255 表示白色。在計(jì)算機(jī)中,彩色值是由紅(R)綠(G)藍(lán)(B)顏色值組成的,每個(gè)顏色的取值范圍是0~255,因此最多有224種顏色。盡管有這么多顏色,但是人眼的識(shí)別能力是有限的,早在1985 年,IBM 資深專家Mike Cowlishaw 發(fā)表文章論證了17 位的顏色值即可表示最理想的色彩[4],三原色比例R:G:B 為5:7:5。
三原色的配色方程可用公式表示:

實(shí)際應(yīng)用中,顏色碼[C]用一個(gè)16 位數(shù)表示即可達(dá)到較高的顯示效果,基于此,三原色系數(shù)一般用二進(jìn)制取位法來(lái)確定,即從顏色碼[C]中提取不同的位數(shù)來(lái)生成R[R]、G(G)、B(B)的值。具體的取位方法有兩種較為常用:順序取位法、循環(huán)取位法[5]。
(1)順序取位法
順序取位法可用圖3 表示。

圖3 順序取位法示意圖
該方法是取低5 位作為B(B)的值,選取中間5 位為G(G)的值,選取高6 位為R[R]的值。當(dāng)需要不同的色系時(shí),可以改變RGB 占位的比例。
(2)交叉取位法
不同于順序取位法,交叉取位是從高位到地位依次抽取某幾位,然后組成RGB 系數(shù)。具體方式見(jiàn)圖4。

圖4 交叉取位法示意圖
通過(guò)上述辦法,可生成一個(gè)大小為65535 的參考顏色碼數(shù)組,根據(jù)統(tǒng)計(jì)周期的頻譜幀數(shù),將頻譜統(tǒng)計(jì)的二維數(shù)據(jù)歸一化為0~1,然后采取線性映射或非線性映射的方式(如圖5 所示),從參考顏色數(shù)組中確定每一個(gè)方格的顏色碼。

圖5 顏色映射關(guān)系
本文所采用的硬件平臺(tái)為思儀3943B 手持式監(jiān)測(cè)接收機(jī),該接收機(jī)基于Linux 系統(tǒng)開(kāi)發(fā),配有800MHz 處理器、10.1 英寸的觸摸屏幕,可實(shí)現(xiàn)9kHz~8GHz 頻段內(nèi)的信號(hào)搜索、截獲、測(cè)量、分析、解調(diào)、測(cè)向、定位等多種功能,最大支持20MHz 掃描帶寬,可用于非法發(fā)射源/干擾源快速檢測(cè)與定位。
本文所實(shí)現(xiàn)的數(shù)字熒光頻譜圖應(yīng)用需要觸摸點(diǎn)擊、滑動(dòng)、縮放等手勢(shì)操作,因此選用QML 語(yǔ)言設(shè)計(jì)開(kāi)發(fā)界面??紤]到需要對(duì)大量頻譜進(jìn)行計(jì)算、分析,因此需要用到Qt Quick 提供的混合編程方案,具體是指C++與QML 語(yǔ)言混合編程,該方案可以充分利用C++在復(fù)雜數(shù)據(jù)處理方面的優(yōu)勢(shì)和QML 在數(shù)據(jù)顯示方面的優(yōu)勢(shì)?;谶@種需求,本文的軟件方案采用分層架構(gòu)。上層顯示層負(fù)責(zé)人機(jī)交互、圖像刷新,下層為數(shù)據(jù)處理層,負(fù)責(zé)軟件配置狀態(tài)更新、算法調(diào)用、數(shù)據(jù)流控制、顯示數(shù)據(jù)傳輸?shù)取?/p>

圖6 軟件架構(gòu)示意圖
根據(jù)數(shù)字熒光頻譜圖的原理,在數(shù)據(jù)處理層采用C++語(yǔ)言實(shí)現(xiàn)編碼,處理過(guò)程及人機(jī)交互需要設(shè)立參數(shù)如表1所示。

表1 軟件參數(shù)表
數(shù)據(jù)處理流程:底層數(shù)據(jù)準(zhǔn)備好之后,上位機(jī)讀取原始數(shù)據(jù),每次讀取一幀頻譜,然后更新數(shù)字熒光頻譜圖圖像統(tǒng)計(jì)數(shù)據(jù),統(tǒng)計(jì)完成后計(jì)算顏色碼得到數(shù)字熒光頻譜圖位圖。為了降低數(shù)據(jù)計(jì)算壓力,減少重復(fù)的計(jì)算,本軟件在實(shí)現(xiàn)過(guò)程中,將所有的離散頻譜數(shù)據(jù)都做了緩存,當(dāng)某幀頻譜超過(guò)生存周期時(shí),將其從統(tǒng)計(jì)數(shù)據(jù)中刪除,然后新進(jìn)入生存周期的頻譜數(shù)據(jù)加入統(tǒng)計(jì),而不必重新計(jì)算所有的頻譜數(shù)據(jù),減少了頻譜數(shù)據(jù)處理量,節(jié)省了處理時(shí)間。流程圖如圖7 所示。

圖7 數(shù)據(jù)處理流程
數(shù)字熒光頻譜圖生成后,利用Qt 的信號(hào)槽機(jī)制,向QML 界面發(fā)送圖像準(zhǔn)備好的信號(hào),然后進(jìn)行繪制。
如圖8 所示,左圖為對(duì)跳頻信號(hào)的監(jiān)測(cè),可以看到:當(dāng)信號(hào)的頻率變化很快時(shí),傳統(tǒng)的頻譜圖同一時(shí)刻只能監(jiān)測(cè)到一個(gè)信號(hào),而下方的數(shù)字熒光頻譜圖,可以清晰地看到跳頻信號(hào)的兩個(gè)頻點(diǎn)處的頻譜信息。右圖是對(duì)FM 調(diào)制信號(hào)的監(jiān)測(cè),在傳統(tǒng)的頻譜圖上觀察,只能看到一個(gè)信號(hào)在移動(dòng),而在數(shù)字熒光頻譜圖上可以清晰地看到頻率變化的過(guò)程,展示了更多的頻譜細(xì)節(jié)。

圖8 信號(hào)實(shí)測(cè)結(jié)果
從測(cè)試結(jié)果可以看到,該軟件可以實(shí)現(xiàn)數(shù)字熒光頻譜功能,可以分析頻譜在階段時(shí)間內(nèi)的分布態(tài)勢(shì),能夠有效地幫助使用者監(jiān)測(cè)信號(hào)、分析信號(hào)。
本文分析了數(shù)字熒光頻譜技術(shù)的重要性,介紹了數(shù)字熒光頻譜技術(shù)的實(shí)現(xiàn)原理和顏色碼產(chǎn)生方法,基于思儀3943B手持式監(jiān)測(cè)接收機(jī)硬件平臺(tái),實(shí)現(xiàn)了數(shù)字熒光頻譜應(yīng)用,并針對(duì)低頻處理器做了算法優(yōu)化。該軟件運(yùn)行穩(wěn)定流暢,具有良好的使用體驗(yàn),為異常信號(hào)監(jiān)測(cè)和干擾信號(hào)排查提供了有效的技術(shù)手段。