于文波, 江潔
(北京航空航天大學(xué)儀器科學(xué)與光電工程學(xué)院, 北京 100083)
星敏感器通過(guò)對(duì)視場(chǎng)內(nèi)捕獲的恒星與內(nèi)置導(dǎo)航星庫(kù)中的參考恒星進(jìn)行匹配,進(jìn)而確定載體姿態(tài),是目前已知的最高精度姿態(tài)測(cè)量?jī)x器[1-3],在各類(lèi)航天飛行器中獲得了廣泛應(yīng)用[4-7]。星敏感器的信息處理過(guò)程主要包括星圖星點(diǎn)提取、星圖識(shí)別以及姿態(tài)解算3個(gè)階段。其中,星點(diǎn)提取是指在星圖中將成像星點(diǎn)的位置信息準(zhǔn)確有效地提取出來(lái),這是星敏感器后續(xù)工作的基礎(chǔ)。
目前,星點(diǎn)提取方法主要包括擬合法和質(zhì)心法2類(lèi)[8-9]。擬合法[10-11]將感光面上的成像近似看作高斯分布,然后利用高斯曲面對(duì)灰度分布進(jìn)行擬合,獲得的高斯能量中心即為星點(diǎn)光斑的中心。但是上述方法均較為復(fù)雜,有些改進(jìn)算法[12]還需要對(duì)星圖進(jìn)行2次掃描才能完成高精度的星點(diǎn)提取,因此這類(lèi)方法不適用于快速星點(diǎn)提取場(chǎng)合。傳統(tǒng)質(zhì)心法[13]結(jié)構(gòu)簡(jiǎn)單,易于實(shí)現(xiàn),因此獲得了廣泛的應(yīng)用。但是,這種方法對(duì)噪聲較為敏感,且僅適用于規(guī)則形狀星點(diǎn)的質(zhì)心提取。針對(duì)傳統(tǒng)質(zhì)心法對(duì)噪聲敏感的問(wèn)題,魏新國(guó)等[8]分析指出,帶閾值的質(zhì)心法具有較高的定位精度和抗噪能力。樊巧云和張廣軍[14]在傳統(tǒng)質(zhì)心法的基礎(chǔ)上,提出了一種簡(jiǎn)單有效的抗單點(diǎn)像素噪聲的質(zhì)心定位方法,并在現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)硬件系統(tǒng)上予以實(shí)現(xiàn),取得了良好的效果。Wang等[15]提出了一種動(dòng)態(tài)等價(jià)樹(shù)結(jié)構(gòu)記錄并完成星點(diǎn)連通域融合的方法,該方法能夠有效提取不規(guī)則形狀星點(diǎn)的質(zhì)心,從而提高了質(zhì)心法的魯棒性。總之,質(zhì)心法及其各種改進(jìn)算法由于具有精度高、算法簡(jiǎn)單、實(shí)時(shí)性好等優(yōu)勢(shì),因而成為星敏感器領(lǐng)域廣泛采用的星點(diǎn)提取方法。
然而,現(xiàn)有質(zhì)心法在星點(diǎn)提取速度上仍存在一定不足。文獻(xiàn)[16]指出,在不改變其他參數(shù)情況下,若提高圖像探測(cè)器的像素分辨率,則星敏感器姿態(tài)測(cè)量精度相應(yīng)提高。因此,目前大面陣圖像探測(cè)器,如分辨率為2 048像素×2 048像素,甚至更高的5 120像素×3 840像素,已逐步應(yīng)用于星敏感器領(lǐng)域,這一情況進(jìn)一步加劇了星點(diǎn)提取的負(fù)擔(dān),現(xiàn)有方法的星點(diǎn)提取速度已成為限制星敏感器數(shù)據(jù)更新率提高的主要瓶頸。為此,鑒于FPGA具有并行處理能力,本文在傳統(tǒng)單路質(zhì)心方法的基礎(chǔ)上,重點(diǎn)對(duì)多路快速星點(diǎn)質(zhì)心提取方法進(jìn)行研究。該方法在FPGA中采用多路掃描方式直接對(duì)大面陣星圖像素?cái)?shù)據(jù)進(jìn)行并行處理,非常適用于快速處理場(chǎng)合,其處理速度是相同主頻率下的傳統(tǒng)單路質(zhì)心方法的若干倍。
現(xiàn)有的大面陣圖像探測(cè)器一般均具有多通道像素輸出能力。若一幅星圖的像素分辨率為2m行×2n列,則采用多通道像素傳輸過(guò)程如圖1所示。圖中,星圖全像面劃分為了w個(gè)2m行×l列像素的子像面,且w×l=2n,圖像像素按照每行w個(gè)通道并行輸出,即每周期輸出一行像素中的w個(gè)像素,故只需l個(gè)周期即可輸出一行像素,然后繼續(xù)輸出下行像素,直至全部像素?cái)?shù)據(jù)輸出完畢為止。
在將星圖全像面劃分為w個(gè)通道進(jìn)行輸出后,每個(gè)周期均有w個(gè)像素需要處理,此時(shí),若采用多路快速星點(diǎn)質(zhì)心提取方法可以直接對(duì)多通道輸出像素進(jìn)行并行處理,而無(wú)需進(jìn)行單行像素的拼接與緩存,從而大大減少了星點(diǎn)提取的處理時(shí)間。
圖2是多路快速星點(diǎn)質(zhì)心提取方法的基本實(shí)現(xiàn)原理框圖。由圖可知,多路星點(diǎn)質(zhì)心提取模塊由w個(gè)功能完全相同的單路質(zhì)心提取子模塊組成。其中,每個(gè)單路子模塊均對(duì)應(yīng)處理一個(gè)像素,同時(shí),每一單路模塊均與其左右相鄰2個(gè)模塊建立了數(shù)據(jù)交換通道,以便完成邊界目標(biāo)的有效提取。特別地,位于兩邊的單路模塊CH_1和CH_w,均僅存在一個(gè)分割邊界,但為了保持所有模塊的一致性,將其不存在分割邊界的交換通道的輸入置為零。
圖1 多通道像素傳輸過(guò)程Fig.1 Multichannel pixel transmission process
圖2 多路快速星點(diǎn)質(zhì)心提取基本原理框圖Fig.2 Block diagram of basic principle of multichannel fast star centroid extraction
相比于現(xiàn)有的單路質(zhì)心方法,多路方法能夠直接對(duì)多通道輸出像素?cái)?shù)據(jù)進(jìn)行并行處理,從而顯著提升星點(diǎn)提取的處理速度。然而,在實(shí)際應(yīng)用中,多路方法不可避免的存在2個(gè)問(wèn)題,即邊界星點(diǎn)目標(biāo)融合問(wèn)題以及冗余存儲(chǔ)資源占用問(wèn)題。圖3是一幅星圖的局部示意圖,為了清晰顯示,對(duì)其進(jìn)行了閾值化處理。
首先,由圖3可知,在多路快速星點(diǎn)質(zhì)心提取過(guò)程中,處于通道邊界的相鄰像素恰好被各自對(duì)應(yīng)的子模塊分別掃描計(jì)算,從而導(dǎo)致邊界上的星點(diǎn)目標(biāo)被人為分割。因此,必須對(duì)邊界星點(diǎn)目標(biāo)的各部分信息進(jìn)行重新融合,否則將嚴(yán)重降低邊界星點(diǎn)的質(zhì)心定位精度。其次,由于受到背景噪聲干擾,圖3中除包含一個(gè)星點(diǎn)目標(biāo)外,還包含大量單點(diǎn)、雙點(diǎn)和多點(diǎn)噪聲目標(biāo),這些噪聲目標(biāo)將消耗大量存儲(chǔ)資源。對(duì)于多路快速星點(diǎn)質(zhì)心提取方法,為確保各單路模塊正確完整提取星點(diǎn)信息,各單路模塊的存儲(chǔ)資源開(kāi)銷(xiāo)應(yīng)與傳統(tǒng)單路質(zhì)心方法相當(dāng),進(jìn)而使得整個(gè)多路方法所使用的總存儲(chǔ)資源是傳統(tǒng)單路質(zhì)心方法的若干倍。在此情況下,噪聲目標(biāo)占用存儲(chǔ)資源的問(wèn)題將使得多路方法的總存儲(chǔ)資源開(kāi)銷(xiāo)急劇增加,嚴(yán)重時(shí)甚至由于總存儲(chǔ)資源不足而導(dǎo)致多路方法無(wú)法綜合實(shí)現(xiàn)。
圖3 局部星圖的閾值化結(jié)果Fig.3 Thresholding results of partial star image
針對(duì)上述2個(gè)問(wèn)題,本文分別提出2種技術(shù)手段予以解決。首先,提出一種基于目標(biāo)行方向有效長(zhǎng)度的邊界目標(biāo)信息融合方法,該方法通過(guò)利用目標(biāo)行方向有效像素?cái)?shù)目信息(即行方向有效長(zhǎng)度)實(shí)時(shí)判定是否啟動(dòng)邊界目標(biāo)信息融合,能夠正確完成各種形狀邊界目標(biāo)的信息融合。其次,提出一種動(dòng)態(tài)雙指針循環(huán)映射機(jī)制,能夠?qū)θ哂啻鎯?chǔ)資源進(jìn)行實(shí)時(shí)回收利用,大大提高了存儲(chǔ)資源的利用效率。
當(dāng)采用多路快速星點(diǎn)質(zhì)心提取方法時(shí),星圖中除了具有傳統(tǒng)的內(nèi)部目標(biāo)外,還存在一定的邊界目標(biāo)。為了正確融合邊界目標(biāo)信息,本文提出一種基于目標(biāo)行方向有效長(zhǎng)度的邊界目標(biāo)融合方法,該方法將復(fù)雜的信息融合過(guò)程轉(zhuǎn)化為直觀的行方向有效長(zhǎng)度特征的判定過(guò)程,從而能夠正確完成各種形狀邊界目標(biāo)的信息融合。
目標(biāo)的行方向有效長(zhǎng)度(以下簡(jiǎn)稱(chēng)為目標(biāo)行有效長(zhǎng)度),指的是星圖實(shí)時(shí)掃描過(guò)程中目標(biāo)當(dāng)前行有效像素的個(gè)數(shù),記做Lu,則Lu為非負(fù)整數(shù)。利用Lu信息可以對(duì)目標(biāo)進(jìn)行標(biāo)記,其具體流程如圖4所示。圖中,記CP為當(dāng)前像素標(biāo)記,其左方像素標(biāo)記為L(zhǎng)f,新標(biāo)記值記為Nf,目標(biāo)當(dāng)前行位于上行Lu范圍內(nèi)的第1個(gè)有效像素記為P1,其對(duì)應(yīng)標(biāo)記值記為L(zhǎng)P1,其上行P1像素對(duì)應(yīng)標(biāo)記值為L(zhǎng)P1(up)。由圖4可知,行有效長(zhǎng)度標(biāo)記法的本質(zhì)是通過(guò)上行的Lu信息確定目標(biāo)同一行的有效像素均采用相同標(biāo)記,而與該行有效像素是否連續(xù)無(wú)關(guān)。
當(dāng)采用多路快速星點(diǎn)提取方法時(shí),若每個(gè)單路模塊內(nèi)部均按照?qǐng)D4所示的行有效長(zhǎng)度標(biāo)記法對(duì)星圖中的目標(biāo)進(jìn)行標(biāo)記,則對(duì)于圖3中的邊界星點(diǎn)目標(biāo),其最終標(biāo)記結(jié)果如圖5所示。圖中,白色像素部分表示星圖背景,深色(灰色與黑色)像素部分表示星點(diǎn)目標(biāo)。其中,為了突出P1像素,將各行P1像素由灰色加深為黑色顯示,其標(biāo)記值如白色字體所示。s1~s7與d1~d13分別為當(dāng)前邊界星點(diǎn)目標(biāo)所在位置的像素行號(hào)與列號(hào)。星點(diǎn)左右2個(gè)部分均采用順序標(biāo)記方式,而為了加以區(qū)別,左側(cè)部分以阿拉伯?dāng)?shù)字順序標(biāo)記,右側(cè)部分則以大寫(xiě)英文字母順序標(biāo)記。
基于行有效長(zhǎng)度的邊界目標(biāo)融合方法對(duì)于各種形狀目標(biāo)的處理過(guò)程是相同的。以圖5所示星點(diǎn)目標(biāo)為例,其融合過(guò)程的原理如圖6所示。圖6中,目標(biāo)處于分割邊界時(shí),同一行將會(huì)獲得左右2個(gè)行有效長(zhǎng)度信息,分別記做LuL、LuR。
首先,如圖6中虛線框Q1所示,根據(jù)連通域特性,當(dāng)目標(biāo)在邊界2側(cè)首次出現(xiàn)連通像素時(shí),表目標(biāo)為邊界目標(biāo)。其次,如虛線框Q2所示,在發(fā)現(xiàn)邊界目標(biāo)后,當(dāng)掃描至LuL=0或LuR=0時(shí),表明邊界目標(biāo)在左側(cè)或右側(cè)的部分信息掃描結(jié)束,此時(shí)在掃描結(jié)束一側(cè)的當(dāng)前行中位于上行有效長(zhǎng)度上的最后一個(gè)像素(該像素稱(chēng)為融合像素,并記做M)處進(jìn)行融合,將M像素側(cè)的信息融入至另一側(cè)信息中。最后,如虛線框Q3所示,利用式(1)可以對(duì)目標(biāo)掃描是否結(jié)束進(jìn)行判定,當(dāng)目標(biāo)左右2個(gè)行有效長(zhǎng)度信息LuL和LuR均為0時(shí),判定目標(biāo)掃描結(jié)束,并將目標(biāo)當(dāng)前行中位于其上一行Lu上的最后一個(gè)像素稱(chēng)為目標(biāo)掃描結(jié)束像素,簡(jiǎn)記為E像素。
圖4 行有效長(zhǎng)度標(biāo)記法流程圖Fig.4 Flowchart of marking method based on effective length in scanning direction
圖5 邊界目標(biāo)標(biāo)記結(jié)果示意圖Fig.5 Schematic diagram of marking results of boundary target
圖6 邊界目標(biāo)融合原理示意圖Fig.6 Schematic diagram of fusion principle of boundary target
Lu=LuL+LuR=0
(1)
以上就是利用行有效長(zhǎng)度信息進(jìn)行邊界目標(biāo)融合的基本原理,其本質(zhì)是將復(fù)雜的信息融合判定過(guò)程轉(zhuǎn)化為直觀的行有效長(zhǎng)度特征的判定過(guò)程,通過(guò)實(shí)時(shí)判斷邊界目標(biāo)2側(cè)的LuL、LuR信息滿足至少一個(gè)為零時(shí),即可獲得正確的目標(biāo)融合時(shí)刻(M像素),并在該時(shí)刻將目標(biāo)2側(cè)信息進(jìn)行融合,從而保證融合信息完整正確,且融合過(guò)程大為簡(jiǎn)化。
在多路快速星點(diǎn)質(zhì)心提取方法中,除星點(diǎn)目標(biāo)信息外,還存在大量無(wú)效信息占用存儲(chǔ)資源。本文從存儲(chǔ)資源循環(huán)利用的角度出發(fā),提出一種動(dòng)態(tài)雙指針循環(huán)映射機(jī)制,能夠?qū)崟r(shí)回收利用無(wú)效信息占用的存儲(chǔ)資源,當(dāng)各單路模塊采用上述機(jī)制時(shí),存儲(chǔ)資源開(kāi)銷(xiāo)均大為減少,從而最終使得多路快速星點(diǎn)質(zhì)心提取方法的總存儲(chǔ)資源開(kāi)銷(xiāo)顯著減少,保證其在資源受限的FPGA芯片上依然可綜合實(shí)現(xiàn)。
1.4.1 噪聲目標(biāo)判定
由圖3可知,噪聲目標(biāo)和星點(diǎn)目標(biāo)在大小上具有顯著區(qū)別,因而可以采用目標(biāo)大小特征對(duì)噪聲目標(biāo)進(jìn)行剔除。然而,由于目標(biāo)的大小、形狀存在隨機(jī)性,在星圖實(shí)時(shí)掃描中,傳統(tǒng)方法難以判定目標(biāo)掃描何時(shí)結(jié)束;若判定錯(cuò)誤,則可能誤回收有效星點(diǎn)信息的存儲(chǔ)資源,從而嚴(yán)重影響多路星點(diǎn)質(zhì)心提取方法的性能。因此,準(zhǔn)確判定目標(biāo)掃描是否結(jié)束是正確回收無(wú)效信息占用存儲(chǔ)資源的前提,在準(zhǔn)確判定目標(biāo)掃描結(jié)束后,即可利用目標(biāo)大小特征剔除噪聲目標(biāo),并回收其占用的存儲(chǔ)資源。
由圖6可知,行有效長(zhǎng)度標(biāo)記法能夠準(zhǔn)確判定目標(biāo)掃描是否結(jié)束。利用行有效長(zhǎng)度信息判定噪聲目標(biāo)掃描結(jié)束的結(jié)果如圖7所示,圖中E像素仍然表示目標(biāo)掃描結(jié)束像素。
由圖6和圖7可知,當(dāng)掃描至目標(biāo)E像素時(shí),判定當(dāng)前目標(biāo)掃描結(jié)束,此時(shí),利用目標(biāo)大小特征即可對(duì)噪聲目標(biāo)進(jìn)行剔除。記Kmin為星點(diǎn)目標(biāo)像素?cái)?shù)目最小值,若當(dāng)前目標(biāo)大小為Pnum,則判定其為有效星點(diǎn)目標(biāo)的條件如式(2)所示,否則為噪聲目標(biāo),應(yīng)回收其占用的存儲(chǔ)資源。一般來(lái)說(shuō),式(2)中的目標(biāo)大小閾值Kmin由灰度分割閾值大小以及星圖中目標(biāo)數(shù)量、大小等確定。
Pnum≥Kmin
(2)
圖7 噪聲目標(biāo)掃描結(jié)束的判定結(jié)果Fig.7 Decision results of scan ending of noise target
1.4.2 動(dòng)態(tài)雙指針循環(huán)映射
由以上分析可知,利用目標(biāo)行有效長(zhǎng)度Lu信息及Pnum信息能夠準(zhǔn)確判定噪聲目標(biāo)。在此基礎(chǔ)上,本文提出一種動(dòng)態(tài)雙指針循環(huán)映射機(jī)制,能夠循環(huán)利用噪聲目標(biāo)占用的存儲(chǔ)資源,從而有效減少各單路模塊的存儲(chǔ)資源開(kāi)銷(xiāo),最終使得多路快速星點(diǎn)質(zhì)心提取方法的總存儲(chǔ)資源開(kāi)銷(xiāo)顯著減少。值得注意的是,動(dòng)態(tài)雙指針循環(huán)映射機(jī)制不僅能夠回收利用噪聲目標(biāo)占用的存儲(chǔ)資源,對(duì)于單個(gè)目標(biāo)占用多個(gè)標(biāo)記情況,在對(duì)該目標(biāo)各部分信息融合后,同樣可以將無(wú)效標(biāo)記對(duì)應(yīng)信息占用的存儲(chǔ)資源進(jìn)行回收。因此,本文后續(xù)內(nèi)容不再對(duì)噪聲目標(biāo)信息和無(wú)效標(biāo)記對(duì)應(yīng)信息進(jìn)行區(qū)分,而是統(tǒng)一稱(chēng)為無(wú)效信息。
圖8是動(dòng)態(tài)雙指針循環(huán)映射機(jī)制的工作原理圖。如圖8所示,目標(biāo)信息存儲(chǔ)在星點(diǎn)信息存儲(chǔ)空間中,該存儲(chǔ)空間共可以存儲(chǔ)N個(gè)標(biāo)記的信息,每個(gè)標(biāo)記包含5組信息,即行有效長(zhǎng)度Lu,像素灰度和∑f(x,y),橫坐標(biāo)與像素灰度乘積累加和∑xf(x,y),縱坐標(biāo)與像素灰度乘積累加和∑yf(x,y),以及當(dāng)前目標(biāo)大小信息Pnum,∑f(x,y)、∑xf(x,y)和∑yf(x,y)的值為星點(diǎn)信息存儲(chǔ)空間中的對(duì)應(yīng)數(shù)據(jù)。地址指針PA和PB分別為主映射指針和回收映射指針,其維度與星點(diǎn)信息存儲(chǔ)空間相同,即均為N維指針,且其功能始終保持動(dòng)態(tài)循環(huán)交替轉(zhuǎn)換。隨著行有效長(zhǎng)度標(biāo)記法實(shí)時(shí)標(biāo)記目標(biāo),標(biāo)記空間中的標(biāo)記值逐漸以自增1方式遞增,且標(biāo)記值始終與主映射指針的地址一一對(duì)應(yīng),而該地址對(duì)應(yīng)空間的存儲(chǔ)內(nèi)容則指向星點(diǎn)信息存儲(chǔ)空間的地址,從而根據(jù)主映射指針的上述映射關(guān)系,不斷將不同標(biāo)記值的目標(biāo)信息存入對(duì)應(yīng)的星點(diǎn)信息存儲(chǔ)空間中。
圖8 動(dòng)態(tài)雙指針循環(huán)映射原理圖Fig.8 Schematic diagram of dynamic dual-pointer cyclic mapping
圖8(a)為初始循環(huán)映射關(guān)系示意圖。初始狀態(tài)下,PA作為主映射指針,其存儲(chǔ)內(nèi)容與星點(diǎn)信息存儲(chǔ)空間的地址一一映射;PB作為回收映射指針,其存儲(chǔ)內(nèi)容為回收的無(wú)效信息占用星點(diǎn)信息存儲(chǔ)空間的地址。假設(shè)標(biāo)記1、Q-1、Q、Q+1和N分別為初始循環(huán)映射下的標(biāo)記值,且滿足1 如圖8(b)所示,當(dāng)標(biāo)記值遞增至N+1時(shí),初始循環(huán)映射結(jié)束,并開(kāi)始第2次循環(huán)映射。此時(shí),交換指針PA、PB的功能,并按照?qǐng)D8(b)中主映射指針PB的映射關(guān)系對(duì)標(biāo)記值對(duì)應(yīng)目標(biāo)進(jìn)行信息存儲(chǔ),PA則作為回收映射指針。第2次循環(huán)映射過(guò)程中,目標(biāo)信息占用的存儲(chǔ)空間回收或保留的原理與圖8(a)所示初始循環(huán)映射過(guò)程完全相同。同理,當(dāng)?shù)?次循環(huán)映射結(jié)束后,再次交換指針PA、PB的功能,并如此循環(huán)往復(fù),直至一幀星圖掃描結(jié)束時(shí)停止。 若每一次循環(huán)映射結(jié)束后得到的回收地址總數(shù)目用Wj表示,并為了便于描述,將初始狀態(tài)時(shí)存儲(chǔ)空間總數(shù)目N記做W0,則使用Wj可以描述第j+1次循環(huán)映射的可用地址總數(shù)目,其中,j=0, 1, 2, …,L。當(dāng)j=0時(shí),表示初始循環(huán)映射;當(dāng)j=L時(shí),表示第L+1次循環(huán)映射,或稱(chēng)為最終循環(huán)映射。如圖9所示,整個(gè)動(dòng)態(tài)雙指針循環(huán)映射過(guò)程實(shí)質(zhì)上是對(duì)標(biāo)記空間的動(dòng)態(tài)壓縮映射過(guò)程。 當(dāng)整幅星圖掃描結(jié)束時(shí),利用質(zhì)心法即可獲得星點(diǎn)目標(biāo)的質(zhì)心定位結(jié)果,(xc,yc)為星點(diǎn)目標(biāo)的質(zhì)心坐標(biāo),xc和yc的表達(dá)式為 (3) 圖9 動(dòng)態(tài)空間壓縮映射原理圖Fig.9 Schematic diagram of dynamic space compression mapping 為了驗(yàn)證本文提出的多路快速星點(diǎn)質(zhì)心提取方法(實(shí)驗(yàn)中,多路快速星點(diǎn)提取方法以四路模塊為例,故此節(jié)簡(jiǎn)稱(chēng)為四路法)的資源使用情況、星圖處理速度和星點(diǎn)提取結(jié)果正確性等方面性能,本節(jié)進(jìn)行了相關(guān)實(shí)驗(yàn)測(cè)試,并對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行了分析討論。 選取Xilinx公司Virtex5系列XC5VLX30型FPGA芯片(封裝:FF324,速度:1級(jí)),分別對(duì)傳統(tǒng)單路質(zhì)心方法、基于本文方法的改進(jìn)單路法以及本文提出的四路法進(jìn)行FPGA硬件實(shí)現(xiàn)。其中,傳統(tǒng)單路質(zhì)心方法是指現(xiàn)有的采用連通域標(biāo)記,并且不對(duì)存儲(chǔ)資源進(jìn)行高效優(yōu)化使用的星點(diǎn)提取方法;基于本文方法的改進(jìn)單路法指的是采用目標(biāo)行有效長(zhǎng)度標(biāo)記法和動(dòng)態(tài)雙指針循環(huán)映射機(jī)制的改進(jìn)單路質(zhì)心方法;本文提出的四路法則是由多個(gè)功能完全一致的單路質(zhì)心提取模塊組成,每個(gè)單路模塊均以上述改進(jìn)單路法為基礎(chǔ)并結(jié)合了邊界目標(biāo)融合功能,因此,四路法能夠?qū)Ψ指詈蟮男菆D全像面進(jìn)行并行星點(diǎn)提取,同時(shí)還具有邊界星點(diǎn)目標(biāo)正確融合與存儲(chǔ)資源高效循環(huán)利用特性。上述3種方法綜合實(shí)現(xiàn)后的FPGA資源使用情況如表1所示。 表1 3種方法的FPGA資源使用情況Table 1 FPGA resource usage of three methods 由表1可知,2種單路方法的邏輯資源(Slice Registers和Slice LUTs)均占用較少,但為了有效存儲(chǔ)星點(diǎn)信息,存儲(chǔ)資源(Block RAM/FIFO)均消耗較多,傳統(tǒng)單路質(zhì)心方法和基于本文方法的改進(jìn)單路法的存儲(chǔ)資源使用率分別為37.5%和15.6%。相比于傳統(tǒng)單路質(zhì)心方法,基于本文方法的改進(jìn)單路法采用了動(dòng)態(tài)雙指針循環(huán)映射機(jī)制,能夠高效循環(huán)利用無(wú)效信息占用的存儲(chǔ)資源,因而總存儲(chǔ)資源使用量大為減少,僅為傳統(tǒng)單路質(zhì)心方法的約二分之一。由以上實(shí)驗(yàn)結(jié)果估算可知,當(dāng)傳統(tǒng)單路質(zhì)心方法直接擴(kuò)展為四路星點(diǎn)提取方法時(shí),其需要的總存儲(chǔ)資源在FPGA總存儲(chǔ)資源中的占比約為37.5%×4=150%>100%,顯然,由于存儲(chǔ)資源的瓶頸,所選用FPGA芯片已無(wú)法完成傳統(tǒng)單路質(zhì)心方法到四路法的擴(kuò)展實(shí)現(xiàn)。同時(shí),由表1可知,本文提出的四路法由基于本文方法的改進(jìn)單路法擴(kuò)展實(shí)現(xiàn),其邏輯資源與存儲(chǔ)資源均為改進(jìn)單路法的4倍左右。其中,在存儲(chǔ)資源方面,由傳統(tǒng)單路質(zhì)心方法直接擴(kuò)展的四路法的存儲(chǔ)資源使用率約為150%,而本文提出的多路法為59.4%,僅占前者的約40%,表明所選用FPGA芯片仍然能夠有效實(shí)現(xiàn)本文提出的四路法。 表2是3種方法的處理速度情況表。如表2所示,由于基于本文方法的改進(jìn)單路法占用存儲(chǔ)資源大為減少,邏輯復(fù)雜度有所降低,因而其最大綜合頻率較傳統(tǒng)單路質(zhì)心方法略有提高;相比之下,由于四路法的邏輯實(shí)現(xiàn)最為復(fù)雜,因而其最大綜合頻率為3種方法中最低。在上述最大綜合頻率條件下,以分辨率為2m×2n=2 048像素×2 048像素的圖像探測(cè)器為例,可得上述3種方法能夠處理的極限星圖幀率如表2所示。由表2可知,四路法能夠處理的極限星圖幀率約為傳統(tǒng)單路質(zhì)心方法的3.6倍。 下面對(duì)多路方法的星點(diǎn)質(zhì)心提取結(jié)果正確性進(jìn)行驗(yàn)證,仍然以表1、表2中的四路法為例。整個(gè)實(shí)驗(yàn)裝置如圖10所示,圖中,星敏感器固定在實(shí)驗(yàn)平臺(tái)上,其視軸方向正對(duì)于動(dòng)態(tài)多星模擬器視軸,以便能夠有效拍攝模擬器生成的星圖。 實(shí)驗(yàn)中,采用單幀星圖曝光模式,然后FPGA將拍攝得到的原始星圖數(shù)據(jù)與四路法計(jì)算的對(duì)應(yīng)星點(diǎn)質(zhì)心數(shù)據(jù)一并上傳至上位機(jī)。需要注意的是,為了避免FPGA硬件字長(zhǎng)的截?cái)嗾`差對(duì)質(zhì)心定位結(jié)果的影響,實(shí)驗(yàn)中FPGA上傳至上位機(jī)的星點(diǎn)質(zhì)心數(shù)據(jù)為∑f(x,y)、∑xf(x,y)和∑yf(x,y) 共3項(xiàng)數(shù)據(jù),以上數(shù)據(jù)均為整型變量,星點(diǎn)的質(zhì)心結(jié)果(xc,yc)則在上位機(jī)MATLAB中根據(jù)式(3)計(jì)算得到。同時(shí),上位機(jī)MATLAB軟件還對(duì)上傳的原始星圖數(shù)據(jù)進(jìn)行處理,首先采用與上述基于FPGA的四路法完全相同的全局閾值進(jìn)行目標(biāo)分割,再以經(jīng)典的四連通域標(biāo)記法進(jìn)行標(biāo)記聚類(lèi),得到星點(diǎn)目標(biāo)的∑f(x,y)、∑xf(x,y)和∑yf(x,y)共 3項(xiàng)信息,最終同樣按照式(3)對(duì)星圖中星點(diǎn)質(zhì)心進(jìn)行計(jì)算。 表2 3種方法的處理速度Table 2 Processing speed of three methods 圖10 實(shí)驗(yàn)裝置Fig.10 Experimental setup 實(shí)驗(yàn)拍攝了大量不同天區(qū)的星圖,選取248幅星圖進(jìn)行計(jì)算,其中恰好包含邊界星點(diǎn)目標(biāo)的星圖約占10%。當(dāng)對(duì)全部248幅星圖進(jìn)行計(jì)算時(shí),可得基于FPGA的四路提取方法得到的星點(diǎn)質(zhì)心數(shù)據(jù)∑f(x,y)、∑xf(x,y)和∑yf(x,y)(實(shí)際計(jì)算值),與上位機(jī)MATLAB計(jì)算得到的對(duì)應(yīng)星點(diǎn)質(zhì)心數(shù)據(jù)(理論計(jì)算值)均相同。其中,圖11是任選的一幅某天區(qū)的星點(diǎn)質(zhì)心提取結(jié)果示意圖,該星圖包含一個(gè)邊界星點(diǎn)目標(biāo)R,紅線表示四路法的像面分割邊界;圖12是上述邊界星點(diǎn)目標(biāo)R的局部放大圖。由圖11和圖12可知,基于FPGA的四路法得到的星點(diǎn)質(zhì)心與上位機(jī)MATLAB計(jì)算得到的對(duì)應(yīng)星點(diǎn)質(zhì)心(理論計(jì)算值)完全一致,表明本文提出的四路法能夠正確提取單路模塊內(nèi)部星點(diǎn)目標(biāo)以及邊界星點(diǎn)目標(biāo)的質(zhì)心結(jié)果。 圖11 某天區(qū)的星點(diǎn)質(zhì)心提取結(jié)果Fig.11 Extraction results of star centroid of sky map 圖12 邊界星點(diǎn)目標(biāo)R的局部放大圖Fig.12 Partial enlarged drawing of boundary star target R 本文提出了一種多路星點(diǎn)質(zhì)心提取方法,適用于快速處理場(chǎng)合,其處理速度是相同主頻率下的傳統(tǒng)單路質(zhì)心方法的若干倍。為了驗(yàn)證本文方法的性能,選取Xilinx公司的FPGA芯片進(jìn)行實(shí)驗(yàn)測(cè)試。 1) 實(shí)驗(yàn)結(jié)果表明,基于本文方法改進(jìn)單路法的總存儲(chǔ)資源使用量?jī)H為傳統(tǒng)單路質(zhì)心方法的約二分之一;同時(shí),由傳統(tǒng)單路質(zhì)心方法直接擴(kuò)展的多路快速質(zhì)心提取方法的存儲(chǔ)資源使用率約為150%,導(dǎo)致所選用FPGA芯片無(wú)法實(shí)現(xiàn),而本文提出的多路快速質(zhì)心提取方法僅為59.4%,表明在所選用的相同F(xiàn)PGA芯片上仍然能夠?qū)崿F(xiàn)。 2) 在處理速度方面,本文提出的多路快速質(zhì)心提取方法的極限星圖幀率為72.3 Hz,是傳統(tǒng)單路質(zhì)心方法的約3.6倍。 3) 在星點(diǎn)提取結(jié)果正確性方面,對(duì)實(shí)際拍攝的248幅星圖進(jìn)行計(jì)算,其中恰好包含邊界星點(diǎn)目標(biāo)的星圖約占10%,經(jīng)實(shí)驗(yàn)驗(yàn)證,本文的多路快速星點(diǎn)質(zhì)心提取方法提取方法的質(zhì)心結(jié)果與上位機(jī)MATLAB計(jì)算結(jié)果完全相同,從而表明了算法的正確性。2 實(shí)驗(yàn)測(cè)試與分析
3 結(jié) 論