喬 興,王宏力,王永勝,崔祥祥,陸敬輝
(第二炮兵工程大學303教研室,陜西西安710025)
星敏感器是天文導航系統(Celestial Navigation System,CNS)中重要的姿態測量元件,是當前姿態輸出精度最高、得以廣泛應用的光學姿態敏感器[1]。星敏感器雖為高精度儀器,但星敏感器的多種參數誤差極大的影響了姿態矢量的獲取精度。因此,為提高星敏感器的測量精度和可靠性,獲得高測角精度,必須要對星敏感器參數誤差進行標定補償。
國內外許多學者對星敏感器的參數標定算法已有大量研究,目前,常用的標定算法有最小二乘算法、卡爾曼濾波算法及改進的濾波算法、遺傳算法等,以上各種算法都能夠滿足不同條件的指標要求,但也存在標定精度過低、對標定初始值依賴性強等問題。其中最小二乘算法存在占用存儲空間大、計算量過大、對于非線性、多目標問題精度較低,且受到初始值影響較大等問題,濾波算法主要存在計算量大、收斂時間長、精度受復雜環境影響較大,遺傳算法主要存在不易精確收斂到全局最優解[2-4]。
基于以上問題本文提出一種基于GA-LM(Genetic Algorith算法與Levenberg-Marquardt算法)融合的星敏感器參數標定算法,充分利用了GA算法的全局搜索以及LM算法的局部尋優能力,解決了最小二乘算法依賴初值、易陷入局部收斂以及GA算法標定效率低、標定結果差的問題,對提高制導精度具有重要意義。
星敏感器在使用中由于工作環境的改變以及長期工作帶來的老化和磨損都會造成系統內部參數變化,從而引入系統誤差。在實際測量使用中,星敏感器系統誤差的存在會直接導致星敏感器星點坐標的測量誤差,對于具體的誤差影響因數和數值關系還需要更加具體。因此,要準確描述星點成像的幾何關系,主要考慮以下誤差因素:1)視軸交點的不準確,也就是視軸的指向發生偏移,記為(x0,y0);2)焦距f的不確定;3)CCD焦平面傾斜,假設焦平面相對理想情況X軸正向轉動了x角度、Y繞軸轉動了y;4)CCD焦平面繞視軸旋轉了β角,記為旋轉角β;5)光學鏡頭的畸變:鏡頭畸變包括徑向和切向畸變,徑向畸變會引起圖像點沿徑向移動,離中心點越遠其變形越大;切向畸變引起的誤差比較小,可以忽略不計,一般情況下,徑向畸變是影響星敏感器標定因素的主要因素[5],因此只考慮徑向畸變。如圖1所示。則以上的誤差項對星敏感器星像位置坐標影響為[5-7]:

圖1 星敏感器誤差傳遞圖

其中,X、Y表示標準星像位置坐標中,星敏器系統誤差對星像位置坐標的影響量,即為實測星像坐標與理想成像點的誤差校正公式。(x,y)表示標準星像位置坐標;(Δx,Δy)表示主點偏移;x、y、β 分別表示CCD焦平面旋轉角以及CCD焦平面繞視軸旋轉角。
星敏感器標定是一個多參數、大范圍、非線性的復雜函數優化問題,在利用最小二乘法進行參數標定時,會有三個缺陷:一是強烈依賴初值;二是容易陷入局部收斂;三是對于非線性、多目標問題精度較低。對于GA算法標定參數,其收斂速度慢,不容易得到最優解,局部搜索能力較弱。
利用改進的最小二乘法——LM算法對參數進行標定,可以擴大收斂范圍,使標定過程不易很快陷入局部最優解,但是沒有解決強烈依賴初值的問題。
LM算法的迭代公式為:

LM算法迭代公式通過引入非負參數λk,克服了滿秩要求及壞條件下的迭代缺陷,選擇合適的非負參數λk可以確保矩陣J(xk)TJ(xk)+λkI為非奇異。而且能避免出現過大的dk值。此外,當J(xk)奇異時,dk=-(J(xk)TJ(xk))-1J(xk)TF(xk)沒有定義,而LM算法是有意義的。而GA算法是以群體搜索特性為最突出特點的一種優化方法,全局搜索能力較強,但標定效率不夠高,標定結果不是最優解,只能近似于最優解。
為了充分利用GA算法的全局搜索以及LM算法的局部尋優能力,并解決LM算法依賴初值以及GA算法標定效率低、標定結果差的問題,基于此問題,本文將兩種算法進行融合處理,提出一種基于GA-LM融合的星敏感器參數標定算法。
通過理想成像與實際成像坐標的關系可以看出,星敏感器參數存在未修正誤差時,將對視場內恒星的成像矢量的計算造成誤差,導致工作性能大大降低。所以在使用前必須加以標定校正。對星敏感器參數進行綜合標定,最常用的方法是最小二乘法,但其有較多局限性。
(1)GA算法與LM算法的銜接點
本文的融合算法需要解決的問題是GA算法與LM算法的銜接點。本文將通過設定判定準則來解決這一問題,即適應度差值計算法。
連續若干代個體的平均適應度值的差值小于一極小值ε。例如:設目標函數的適應度函數為fitness(x),第 k代個體適應度的平均值為fitness(xk),GA算法終止的條件需滿足:

其中,n表示連續n代個體。
第k代的代數確定可以根據收斂過程觀察計算法進行確定,即:運用GA算法得到多次優化過程,比較幾次收斂圖的走勢,通過觀察收斂過程的方法初步判斷趨于穩定或者優化效果不明顯的迭代數,如果優化過程各不相同,可以增加優化的次數,或者取幾次迭代數的平均值。
(2)適應度函數
本文將根據實驗室的相關設備對提出的融合算法進行實驗驗證。星敏感器參數標定的原理就是要使星敏感器成像模型獲得的像點坐標值(x'j,y'j)(j=1,2,…,M)與實際圖像的測量值 (xj,yj)(j=1,2,…,M)之間均方根距離的平均值最小。因此,定義適應度函數為:f(θj)=

其中,f(θj)是第j個個體的適應度函數值;(x(θj),y(θj))為對應于染色體θj和第i幅圖像的第j個個體的實際圖像測量值;(x'(θj),y'(θj))為對應于染色體θj和第i幅圖像的第j個個體利用星敏感器成像模型獲得的像素坐標。
(3)終止條件
在融合算法標定過程中,有兩個終止條件需要判定,GA算法的終止條件1利用適應度差值計算法進行計算,連續若干代個體的平均適應度值的差值小于極小正值ε。設目標函數的適應度函數為fitness(x),第 k代個體適應度的平均值為fitness(xk),GA算法終止的條件1需滿足:

當GA算法達到終止代數后,利用LM算法進行二次尋優,直到達到終止條件2:f(θj)=

即星敏感器成像模型獲得的像點坐標值(x'j,y'j)(j=1,2,…,M)與實際圖像的測量值 (xj,yj)(j=1,2,…,M)之間均方根距離的平均值最小。
運用GA-LM融合算法進行星敏感器系統參數標定的流程框圖如圖2所示。

圖2 GA-LM融合算法標定星敏感器系統參數的流程圖
為驗證融合算法思想的科學性,體現其優越性,將通過半實物系統進行實驗驗證。
本實驗采用的實驗室設備包括:多星模擬器硬件、星敏感器模擬器等。
星敏感器模擬器和星模擬器對準,如圖3(a)所示是星模擬器中顯示的9×7的點陣標準圖像,圖3(b)是星敏感器中采集的9×7的點陣平面實際成像星圖。

圖3 標準圖像與實際成像
灰度值加權法計算質心坐標能充分利用每一點的灰度值信息,而且計算量要比傳統的質心計算方法小的多,同時可以滿足星圖中的精度和實時性要求。本實驗中,將運用此方法進行質心的提取。得到標準星圖和實際成像中星點的圖像坐標值如表1所示。

表1 星點的圖像坐標值
參數誤差根據不同型號的星敏感器實際加工、裝配、測量及經驗進行設計,具體如下:焦距誤差一般應在2%以內,即|Δf|≤0.02f;主點偏移根據經驗通常比焦距誤差小一個數量級,即一般不會超過10個像素,取|x0|≤0.15mm;根據各種不同型號的星敏感器情況,鏡頭一階畸變系數取為:|k1|≤5×10-5;CCD平面的傾斜角α及旋轉角β實際中均為比較小的量,取誤差最大的情況:|α|≤0.05°,|β|≤0.05°。
用本文方法進行參數標定時,根據提供的設備技術指標,GA算法的初始種群生成范圍設置如下:焦距 f=44.8 mm,且 dx=dy=6.5 μm,則[fx,fy]= [6892,6892],所以設定 fx,fy∈[6750,7000];圖像的大小為670像素×520像素,所以得到中心圖像坐標為(x0,y0)=(335,260),設定 x0∈[325,345];y0∈ [250,270];徑向畸變系數 k1,k2∈[- 5 × 10-5,5 × 10-5];傾斜角 αx,αy∈[- 0.05°,0.05°];繞光軸 zs軸的旋轉角 β ∈ [- 0.05°,0.05°];在該范圍內得到初始種群后,利用GA算法開始搜索,GA算法的相關參數設置如表2所示,傳統最小二乘算法的初始值設置:歸一化焦距[fx,fy]=[6892,6892],中心圖像坐標為(x0,y0)=(335,260),徑向畸變系數k1=k2=0.00005,α =β =0.05°。
采用實驗設備對模擬星圖利用傳統最小二乘算法和GA-LM融合兩種算法進行優化,得到優化結果,如表3所示。

表2 GA算法的參數設置

表3 采用模擬星圖的標定結果
運用傳統最小二乘算法、LM算法、GA算法及融合算法的標定過程如圖4所示,

圖4 星敏感器參數標定的收斂過程
由圖4可知:
(1)最小二乘法標定星敏感器參數受初始參數的取值影響較大,易陷入局部收斂,標定結果穩定性較差;
(2)LM算法改善了最小二乘法易陷入局部收斂以及標定結果不穩定的問題,但強烈依賴初值的問題并沒有得到根本解決。
(3)融合算法在140代后利用LM算法二次尋優,局部搜索能力明顯加強,標定結果更接近最優解。表明:融合算法充分利用了GA算法的全局搜索以及LM算法局部尋優的能力,GA算法進行大范圍搜索為LM算法提供一個合適的初值,解決了LM算法依賴初值以及GA算法標定效率低、標定結果差的問題,與提出融合算法的思路是一致的。
定義圖像坐標系的平均誤差為星敏感器成像模型投影得到的模擬星點圖像坐標(x'i,y'i)(i=1,2,…,m)和模擬星點的實際測量值(xi,yi)(i=1,2,…,m)之間均方根的平均值,以像素為單位,它反映的是求得的星敏感器模型的投影精度。對于N個測試點,其圖像坐標的平均絕對誤差為:

可利用上節中標定的結果計算63個未參與標定測試點的投影誤差,如表4所示。

表4 63個未參與標定測試點的投影誤差數據
得到63個未參與標定測試點的投影誤差如圖5所示。

圖5 63個測試點的投影誤差
綜上所述,傳統的最小二乘算法相比于優化前的相對誤差為0.37207,GA-LM融合算法相比于優化前的相對誤差為0.1190。所以得到本文提出的融合算法相比于優化前標定精度提高了88.099%,相比于傳統最小二乘法的標定精度提高了68.015%。
本文建立了星敏感器的誤差模型,并推導了星敏感器誤差校正公式;在分析常用參數標定方法的基礎上,提出了一種基于GA-LM融合的參數標定算法,通過設計半實物仿真實驗,結合實驗室相關設備,對融合算法進行了實驗驗證,結果表明:GALM融合算法相比于優化前的相對誤差為0.1190。所以得到本文提出的融合算法相比于優化前標定精度提高了88.099%,相比于傳統最小二乘法的標定精度提高了68.015%,對于提高星敏感器的測量精度具有重要應用。
[1] Mortari D,Junkins,JL.Lost- in - pace pyramid algorithm for robust star pattern recognition[C]∥24th Annual AAS Guidance and Control Conference,Breckenridge CO,2001,AAS:1 -4.
[2] Haibo Liu,Xiujian Li,Jichun Tan,et al.Novel approach for laboratory calibration of star tracker[J].Opt.Engng,2010,49(7):073601.
[3] LIDe - liang,Ruan Jin.Method adapting to the star sensor’s star extraction[J].Laser & Infrared,2009,12(39):1348 -1350.(in Chinese)李德良,阮錦.一種適用于星敏感器的星點提取方法[J].激光與紅外,2009,12(39):1348 -1350.
[4] WANG Cheng,WANG Hongqiang,CHEN Minghua,et al.The analysis and disposal of imaging circuit noise effect on star sensor[J].Laser & Infrared,2008,38(7):692 -696.(in Chinese)王辰,王宏強,陳明華,等.星敏感器成像電路噪聲分析及降噪處理[J].激光與紅外,2008,38(7):692-696.
[5] WANG Hongtao,LUO Changzhou,WANG Yu,et al.Star sensormodel parametric analysis and calibration method study[J].J.University of Electronic and Technology of China,2010,39(6):880 -885.(in Chinese)王洪濤,羅長洲,王渝,等.星敏感器模型參數分析及校準方法研究[J].電子科技大學學報,2010,39(6):880-885.
[6] PENG Yuan.Study Base on GA camera calibration method[D].Changsha:National University of Defense Technology,2009.(in Chinese)彭媛.基于遺傳算法的攝像機標定方法研究[D].長沙:國防科學技術大學,2009.
[7] Carl Christian LIEBE.Accuracy Performance of Star Trackers—A Tutorial[J].IEEE Trans.On Aerospace and Electronics Systems,2002,38(2):587 -599.