劉 影,李 群,何 杰,葛 飛
(北京自動(dòng)化控制設(shè)備研究所,北京 100074)
星敏感器是一種姿態(tài)敏感測(cè)量器件,可靠性高,其以恒星目標(biāo)為參照系,測(cè)量運(yùn)載體在慣性空間中的三軸姿態(tài)。由于星敏感器具有精度高、功耗低、自主性好、抗干擾能力強(qiáng)、工作方式靈活等特點(diǎn),使其在衛(wèi)星、導(dǎo)彈、艦船等相關(guān)平臺(tái)姿軌控制系統(tǒng)應(yīng)用極為廣泛。
為了保證最后星點(diǎn)提取及質(zhì)心計(jì)算結(jié)果的準(zhǔn)確性,需要對(duì)各種雜散光以及系統(tǒng)自身存在的噪聲帶來(lái)的影響進(jìn)行處理。目前主流的一些星圖去噪技術(shù)手段:1)空間域?yàn)V波處理:包括鄰域均值濾波、高斯低通濾波和中值濾波等;2)閾值分割:全局閾值法或局部閾值法;3)靜態(tài)背景噪聲法:通過(guò)選取軌道相同、位置間隔的兩幀星圖,對(duì)這兩幅圖像中同一像素點(diǎn)的灰度值取中值,并將該值作為背景噪聲,從而達(dá)到分離目標(biāo)與噪聲的目的。人們?cè)谔岣咝屈c(diǎn)的提取精度上進(jìn)行了大量研究,基于傳統(tǒng)方法不斷改進(jìn)。文獻(xiàn)[5]提出了一種將中值濾波和改進(jìn)的閾值函數(shù)相結(jié)合的圖像去噪方法,該方法對(duì)椒鹽噪聲具有很好的處理效果。文獻(xiàn)[6]提出了一種基于斜率差值的自適應(yīng)濾波算法,在有效保留極值附近信號(hào)的同時(shí),濾波的保真性也得到了提高。文獻(xiàn)[7]在常規(guī)的多窗口抽樣自適應(yīng)閾值選取方法的基礎(chǔ)上進(jìn)行改進(jìn),不僅滿足星圖去噪的要求,而且可以很好地保留灰度值較低的星點(diǎn)。文獻(xiàn)[8]提出了一種改進(jìn)的中值算法,通過(guò)確定角度大小和與鄰域信號(hào)點(diǎn)之間的關(guān)系來(lái)定位噪聲點(diǎn),然后對(duì)窗口中求得的均值和中值進(jìn)行加權(quán)濾波,進(jìn)而有效地抑制背景噪聲。但是這些算法實(shí)施起來(lái)較為復(fù)雜,不便于在硬件平臺(tái)上進(jìn)行測(cè)試和使用,而且這些算法對(duì)例如元器件產(chǎn)生的壞點(diǎn)的優(yōu)化作用較小。
本文在傳統(tǒng)的高斯低通濾波算法的基礎(chǔ)上進(jìn)行改進(jìn),首先對(duì)星圖中的壞點(diǎn)進(jìn)行剔除,然后采用高斯低通濾波算法對(duì)噪聲進(jìn)行平滑降噪,最后采用高通濾波抑制星圖中的強(qiáng)光背景信號(hào)。通過(guò)對(duì)Matlab模擬出的星圖影像進(jìn)行星點(diǎn)提取工作,驗(yàn)證了該算法的有效性。
星敏感器的硬件組成部分主要為遮光罩、光學(xué)鏡頭、圖像傳感器、成像電路、圖像處理電路以及數(shù)據(jù)處理單元等。星敏感器的工作過(guò)程是在一定的視場(chǎng)范圍內(nèi),恒星通過(guò)光學(xué)鏡頭成像到光電傳感器的光敏面上,由光電傳感器將光能轉(zhuǎn)化為視頻電模擬信號(hào),經(jīng)過(guò)放大、濾波、相關(guān)雙采樣、A/D轉(zhuǎn)換等一系列處理為灰度數(shù)據(jù);然后將采集到的數(shù)據(jù)保存為數(shù)字圖像,對(duì)數(shù)字圖像進(jìn)行星點(diǎn)提取和質(zhì)心計(jì)算,得到星點(diǎn)位于像平面上的坐標(biāo);接著通過(guò)星圖識(shí)別算法,與導(dǎo)航星庫(kù)對(duì)比,找到與其相匹配的導(dǎo)航星,最后根據(jù)識(shí)別的結(jié)果由姿態(tài)解算得到星敏感器的三軸姿態(tài)信息。其工作示意圖如圖1所示。
圖1 星敏感器工作原理示意圖Fig.1 Schematic diagram of the working principle of star sensors
通過(guò)分析其工作原理可知,星圖預(yù)處理是星敏感器工作過(guò)程中的重要一步,不僅影響了星圖識(shí)別的效率,而且對(duì)最后的姿態(tài)解算精度也有很大的影響,所以準(zhǔn)確地對(duì)星圖進(jìn)行處理是一項(xiàng)非常重要的工作。
通常星圖是由星點(diǎn)目標(biāo)、背景和噪聲三部分組成,用數(shù)學(xué)模型表示如下
(,)=(,)+(,)+(,)
(1)
式中,(,)表示像素點(diǎn)(,)處的灰度值;(,)、(,)、(,)分別為恒星目標(biāo)亮度、背景灰度及噪聲信號(hào)。通過(guò)實(shí)際觀測(cè)可以看出,天空中大部分的恒星是低亮度的,其灰度值比較低,所占據(jù)的像元面積也比較小,很容易被噪聲及背景淹沒(méi),所以直接對(duì)星圖進(jìn)行星點(diǎn)提取是很困難的,容易忽略掉星點(diǎn)或誤提噪聲點(diǎn)。因此,對(duì)星圖進(jìn)行去噪處理,提高圖像的信噪比是很有必要的。
星敏感器在使用過(guò)程中產(chǎn)生的噪聲主要分為兩部分:一是星空背景噪聲,屬于隨機(jī)突發(fā)噪聲,通??闯山符}噪聲去處理;二是感光元器件產(chǎn)生的噪聲,主要包含光子散粒噪聲、暗電流噪聲、固定圖形噪聲、量化噪聲等。在這些噪聲中,光子散粒噪聲是傳感器本身的噪聲,就目前的技術(shù)手段而言沒(méi)法被消除或抑制,其他的噪聲均可以采用相應(yīng)的硬件手段進(jìn)行處理。圖2所示為使用星敏感器拍攝的一幅實(shí)際星圖,任意選取圖中一星點(diǎn)周圍的局部星圖,如圖中標(biāo)記所示,對(duì)該部分進(jìn)行灰度分析,灰度范圍為[0.255],其灰度分布如圖3所示。
圖2 星敏感器拍攝的星圖Fig.2 Star map taken by a star sensor
圖3 局部星圖灰度分析Fig.3 Gray value analysis of local star image
通過(guò)分析局部星圖的灰度值,可以看出:恒星目標(biāo)區(qū)域?yàn)榈皖l部分,背景及噪聲屬于高頻部分,并且背景及噪聲的灰度值遠(yuǎn)小于星點(diǎn)的灰度值。該特性為星圖去噪及閾值分割提供了理論依據(jù)。
由前文分析可知,星圖噪聲為高頻信號(hào),并且星點(diǎn)的灰度能量分布可以近似看成是二維高斯分布。在數(shù)字圖像處理中,兩個(gè)同分布的函數(shù)經(jīng)過(guò)卷積運(yùn)算后,它們的函數(shù)類型不會(huì)發(fā)生變化,僅僅是尺度跟幅值發(fā)生變化。因此,可以采用高斯低通濾波對(duì)星圖進(jìn)行去噪處理,這樣處理完的星圖其質(zhì)心位置幾乎沒(méi)有改變,避免對(duì)后續(xù)過(guò)程造成影響。
高斯濾波算法是基于均值濾波加以改進(jìn)而推演出來(lái)的,對(duì)圖像的高斯噪聲具有很好的抑制效果。其算法過(guò)程就是將濾波窗口的中心點(diǎn)與高斯濾波模板的中心位置重合,并進(jìn)行卷積運(yùn)算,得到的結(jié)果即為窗口中心點(diǎn)的灰度值。其中,窗口大小一般可選擇3×3或5×5的矩陣框,如式(2)所示。
(,)=(,)?
(2)
式中,(,)表示濾波后的結(jié)果;(,)表示以(,)為中心的濾波窗口內(nèi)各點(diǎn)的灰度值;表示高斯濾波模板。
其中,歸一化的高斯濾波系數(shù)通過(guò)高斯函數(shù)計(jì)算得到,如式(3)
(3)
式中,、為濾波窗口內(nèi)各像素點(diǎn)到窗口中心點(diǎn)的距離;為高斯函數(shù)的標(biāo)準(zhǔn)差。模板中心點(diǎn)占整個(gè)窗口的比重與成反比,越小,中心占比越大,濾波效果甚微;越大,則模板與均值濾波模板的濾波效果近似,變化顯著,但圖像也相應(yīng)變得模糊。
高斯濾波模板操作方法簡(jiǎn)單,并且有一定的效果,但也存在著局限性,即不能真正去除噪聲信號(hào)。在處理過(guò)程中,往往會(huì)引入窗口鄰域內(nèi)的噪聲,特別是當(dāng)窗口內(nèi)有壞點(diǎn)存在時(shí),濾波效果將大大降低。而且高斯濾波模板的值是確定的,這就導(dǎo)致其在使用過(guò)程中無(wú)法順應(yīng)圖像變化特點(diǎn)進(jìn)行修正。
針對(duì)單一濾波模板存在的問(wèn)題,對(duì)高斯濾波進(jìn)行改進(jìn),以提高濾波質(zhì)量。改進(jìn)的方法分為三點(diǎn),下面分別進(jìn)行闡述:
2.2.1 數(shù)據(jù)擴(kuò)展
由于模板使用的是3×3窗口,且所有的操作都是對(duì)窗口中心點(diǎn)進(jìn)行的,這就導(dǎo)致圖像第一行(列)和最后一行(列)的數(shù)據(jù)不能被處理到。為了保證數(shù)據(jù)的完整性,需要對(duì)圖像數(shù)據(jù)進(jìn)行擴(kuò)展。一般可以用0,255或者與其相鄰的行(列)灰度值對(duì)外圍數(shù)據(jù)進(jìn)行填充。根據(jù)圖像的相關(guān)性,在一幅圖像的平滑位置,它的灰度變化規(guī)律近似服從線性關(guān)系,由此進(jìn)行數(shù)據(jù)填充。下面以第一列為例,詳細(xì)描述該填充過(guò)程。圖4所示為數(shù)據(jù)擴(kuò)展示意圖,其中陰影部分為擴(kuò)展的數(shù)據(jù)。
圖4 數(shù)據(jù)擴(kuò)展示意圖Fig.4 Diagram of data expansion
以圖像左上角為坐標(biāo)原點(diǎn),(,)表示點(diǎn)(,)處的灰度值,則填充規(guī)則如下
(-1,-1)=(,)
(4)
=2(,)-(+1,)
(5)
(6)
2.2.2 壞點(diǎn)剔除
由于外界環(huán)境以及硬件自身存在的噪聲影響,即使在星圖的平滑區(qū)域,某一點(diǎn)的灰度值與它鄰域內(nèi)的灰度值也會(huì)不可避免地存在一定的差異,但一般不會(huì)太大。通常將與其鄰域灰度差異較大的點(diǎn)認(rèn)為是壞點(diǎn),往往是孤立存在的。在進(jìn)行濾波去噪處理時(shí),如果直接處理這些點(diǎn),容易對(duì)其周圍的像素點(diǎn)造成影響,這時(shí)圖像中就會(huì)有亮斑或暗斑出現(xiàn)。所以在濾波前可以先對(duì)壞點(diǎn)進(jìn)行檢測(cè),消除其帶來(lái)的影響。
對(duì)檢測(cè)出來(lái)的壞點(diǎn)用其鄰域內(nèi)的中值進(jìn)行代替是一種處理的技術(shù)手段,其算法流程示意圖如圖5所示。對(duì)含有壞點(diǎn)的局部星圖進(jìn)行剔除工作,處理前后的星圖如圖6所示。從圖中可以看出,經(jīng)過(guò)處理后壞點(diǎn)被有效去除,并且星點(diǎn)信號(hào)幾乎沒(méi)有受到影響。
2.2.3 抑制強(qiáng)光背景
對(duì)星圖中強(qiáng)光背景信號(hào)帶來(lái)的影響,可以采用高通濾波的方式對(duì)圖像進(jìn)行處理。但直接使用傳統(tǒng)的高通濾波算子,會(huì)對(duì)圖像噪聲比較敏感,導(dǎo)致處理效果不好。于是將高斯濾波后的圖像與該圖經(jīng)過(guò)低通濾波處理后的圖像逐像素求差值,得到新圖像,從而實(shí)現(xiàn)高通濾波處理的目的。實(shí)現(xiàn)低通濾波的算法有很多種,包括中值濾波、均值濾波等,考慮到處理效果及運(yùn)算量,鄰域均值濾波是一種比較好的選擇。式(7)為鄰域均值濾波的計(jì)算公式,則高通濾波的數(shù)學(xué)表達(dá)式如式(8)
圖5 壞點(diǎn)剔除流程示意圖Fig.5 Schematic diagram of dead pixel removal process
(a)處理前
(b)處理后
(7)
(,)=′(,)-(,)
(8)
其中,(,)是經(jīng)過(guò)高通濾波以后最終輸出的圖像中(,)處的灰度值;′(,)是經(jīng)過(guò)高斯濾波后(,)處的灰度值;(,)為′(,)經(jīng)過(guò)鄰域均值濾波后(,)處的灰度值;為濾波模板的半邊長(zhǎng)。
本文采用模擬的星圖影像,并對(duì)其進(jìn)行星點(diǎn)提取實(shí)驗(yàn),以驗(yàn)證提出算法的可行性。模擬星圖的生成采用史密森星表(Smithsonian Astrophysical Observatory Star Catalog,SAO)數(shù)據(jù),該星表包含亮于11.3等的星號(hào)、赤經(jīng)、赤緯、星等等信息。視場(chǎng)大小為10°×10°,像元大小為1024pixel×1024pixel,選取的星點(diǎn)等級(jí)大于6等,當(dāng)星等為2.5時(shí)達(dá)到飽和。由前面對(duì)星圖的分析可知,星點(diǎn)目標(biāo)的能量分布近似為二維高斯分布,且大小一般為3~5個(gè)像元。因此,要產(chǎn)生模擬的星體目標(biāo)需要根據(jù)二維高斯函數(shù)做灰度彌散,其數(shù)學(xué)表達(dá)式如式(9)
(9)
其中,表示恒星成像到圖像傳感器光敏面上的總能量,其中心點(diǎn)坐標(biāo)為(,);為高斯彌散半徑,這里取=0671。星敏感器的光軸指向旋角為20°,赤經(jīng)為137°,赤緯為52°,生成的模擬星圖如圖7所示,其中標(biāo)記點(diǎn)為星點(diǎn)的位置。
在得到的模擬星圖背景上添加均值為0、方差=0.00001的高斯噪聲。對(duì)該圖分別采用傳統(tǒng)高斯濾波模板及本文提出的方法進(jìn)行濾波處理,并對(duì)質(zhì)心坐標(biāo)進(jìn)行計(jì)算,其對(duì)應(yīng)的像平面坐標(biāo)結(jié)果如表1所示。
圖7 模擬星圖影像Fig.7 Simulated star image
表1 模擬星圖星點(diǎn)計(jì)算結(jié)果
圖8和圖9所示為傳統(tǒng)方法與改進(jìn)方法提取坐標(biāo)的相對(duì)誤差曲線。通過(guò)對(duì)實(shí)驗(yàn)結(jié)果分析可知,利用本文提出的方法對(duì)模擬星圖影像進(jìn)行星點(diǎn)提取比傳統(tǒng)高斯濾波模板進(jìn)行處理的效果明顯提高,其中橫坐標(biāo)提高了0.00538個(gè)像素點(diǎn),縱坐標(biāo)提高了0.0077個(gè)像素點(diǎn)。其結(jié)果與實(shí)際星點(diǎn)位置誤差均值為=-0.00537pixel,=-0.00305pixel,偏差更小。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的高斯濾波算法能很好地抑制星圖背景噪聲,并且?guī)缀醪粫?huì)對(duì)質(zhì)心位置造成影響。
圖8 傳統(tǒng)法與改進(jìn)法的橫坐標(biāo)相對(duì)誤差Fig.8 The relative error of abscissa of the traditional method and the improved method
圖9 傳統(tǒng)法與改進(jìn)法的縱坐標(biāo)相對(duì)誤差Fig.9 The relative error of ordinate of the traditional method and the improved method
本文通過(guò)分析和總結(jié)星圖的特點(diǎn),對(duì)星圖去噪處理方法進(jìn)行研究,針對(duì)傳統(tǒng)的高斯濾波存在的問(wèn)題加以改進(jìn),研究結(jié)果表明:
1)對(duì)星圖進(jìn)行壞點(diǎn)剔除工作后,星圖中的一些孤立噪點(diǎn)被有效去除,避免在后續(xù)濾波處理中將其引入到星點(diǎn)鄰域內(nèi)。通過(guò)對(duì)比處理前后的局部星圖可以看出,恒星目標(biāo)位置基本不會(huì)發(fā)生變化。
2)在模擬出的星圖上分別采用傳統(tǒng)的高斯濾波算法與本文提出的算法進(jìn)行星點(diǎn)提取工作,并將所得到的結(jié)果與星點(diǎn)實(shí)際坐標(biāo)位置進(jìn)行對(duì)比可知,該方法得到的星點(diǎn)位置精確度更高,其中橫坐標(biāo)提高了0.00538個(gè)像素點(diǎn),縱坐標(biāo)提高了0.0077個(gè)像素點(diǎn)。
隨著人們對(duì)航天器姿態(tài)控制精度的要求越發(fā)苛刻,研究星敏感器星圖處理工作極具意義。本文提出的算法實(shí)現(xiàn)簡(jiǎn)單、靈活性強(qiáng),便于在可編程邏輯門陣列(Field Programmable Gate Array,F(xiàn)PGA)、數(shù)字信號(hào)處理器(Digital Signal Processing,DSP)等硬件平臺(tái)上開(kāi)展,具有工程實(shí)用價(jià)值。