??? 摘 要:采用圖像識別以及目標(biāo)快速跟蹤算法,實現(xiàn)對飛行中火箭的實時跟蹤,使用高性能MSP430、CPLD芯片實現(xiàn)傳統(tǒng)的只有通過多單片機(jī)才能實現(xiàn)云臺" title="云臺">云臺在水平垂直方向的同時獨立運動" title="獨立運動">獨立運動,消除了多單片機(jī)通信過程的時間消耗所造成的步進(jìn)電機(jī)" title="步進(jìn)電機(jī)">步進(jìn)電機(jī)控制失效因素,解決了單片CPLD實現(xiàn)內(nèi)部資源短缺的問題,并結(jié)合實際實現(xiàn)系統(tǒng)整體機(jī)械結(jié)構(gòu),提高了火箭目標(biāo)跟蹤的快速性、安全性和精確性。
??? 關(guān)鍵詞: 火箭? MSP430? CPLD? 云臺
?
??? 從火箭發(fā)射到起飛后的一段時間內(nèi),由于受地形等因素的影響,外測系統(tǒng)(雷達(dá)、光學(xué)等設(shè)備)常常難以正常跟蹤火箭。尤其在發(fā)射失敗時,外測系統(tǒng)很難捕獲到目標(biāo),致使指揮人員無法得到火箭飛行數(shù)據(jù),并作出正確的判斷和指揮[1]。這樣在火箭起飛的初始階段,采用攝像機(jī)的自動跟蹤就顯得非常重要。但目前的方式仍是操作人員手動控制攝像機(jī)進(jìn)行跟蹤,其安全性和可靠性都存在較大的問題。同時,也無法實現(xiàn)幾臺攝像機(jī)在多角度多方位進(jìn)行跟蹤。
??? 隨著微電子技術(shù)與工藝的發(fā)展,高性能單片機(jī)不斷推陳出新,可編程邏輯器件也取得了長足發(fā)展[2]。高速運行并更好地實現(xiàn)硬件控制算法,縮小通信時耗,提高快速性,這在目標(biāo)跟蹤系統(tǒng)中實現(xiàn)目標(biāo)跟蹤的安全性與精確性是非常重要的。
1 目標(biāo)跟蹤系統(tǒng)的整體設(shè)計
??? 系統(tǒng)由攝像機(jī)、圖像監(jiān)視系統(tǒng)、圖像處理模塊" title="處理模塊">處理模塊、MSP430+CPLD控制系統(tǒng)" title="控制系統(tǒng)">控制系統(tǒng)和機(jī)械系統(tǒng)組成。其中,圖像處理模塊、MSP430+CPLD控制系統(tǒng)實現(xiàn)和系統(tǒng)機(jī)械結(jié)構(gòu)設(shè)計是本系統(tǒng)的關(guān)鍵部分。系統(tǒng)框架如圖1所示。
?????????????????????? 
??? 火箭圖像數(shù)據(jù)經(jīng)過攝像機(jī)采集后,送圖像處理模塊進(jìn)行處理,產(chǎn)生目標(biāo)偏差信號,偏差信號經(jīng)控制驅(qū)動電路產(chǎn)生控制信號,控制機(jī)械系統(tǒng)帶動云臺上的攝像機(jī)運動將目標(biāo)回到視野,使火箭目標(biāo)圖像始終保持在監(jiān)視顯示區(qū)域的中心位置附近,從而實現(xiàn)火箭連續(xù)視頻運動圖像的跟蹤。若控制器脫離控制范圍可通過人工方式進(jìn)行控制。
2 運動火箭圖像處理模塊
??? 火箭的圖像處理在PC機(jī)中完成。系統(tǒng)采用幀差算法與模板匹配算法相結(jié)合的方法實現(xiàn)目標(biāo)火箭的檢測與鎖定,在跟蹤目標(biāo)背景簡單的情況下使用幀差方法,在背景復(fù)雜的情況下使用模板匹配方法,并在目標(biāo)跟蹤失效時,使用卡爾曼濾波器對目標(biāo)位置進(jìn)行預(yù)測。
2.1 數(shù)字化圖像預(yù)處理
??? 攝像機(jī)拍攝到的火箭圖像要經(jīng)過采樣量化得到數(shù)字化圖像,然后對灰度圖像進(jìn)行降噪,消除圖像在輸入、傳送、處理過程中形成的干擾噪聲和假輪廓,形成具體算法的輸入圖像。
??? 圖像的灰度化和中值濾波可以很好地進(jìn)行降噪和保護(hù)圖像所蘊含的豐富信息[1]。
2.2 運動火箭目標(biāo)檢測與跟蹤
??? 要在視頻流中提取目標(biāo),一般要依據(jù)目標(biāo)前景所處的背景環(huán)境確定目標(biāo)所在的區(qū)域和顏色等特征??梢允褂卯?dāng)前監(jiān)視環(huán)境中的一幅靜態(tài)圖像作為“靜態(tài)”前景目標(biāo),然后利用背景圖像與當(dāng)前幀圖像的差進(jìn)行運動火箭目標(biāo)的檢測,即采用“靜態(tài)”背景幀差方法[3-4]。不過此種幀差算法一般只適用于背景單一、所受干擾較小的環(huán)境。
??? 在火箭發(fā)射開始時,由于日光、火箭噴發(fā)的氣體、火花以及發(fā)射架影響使得背景復(fù)雜,使用幀差分算法很難把背景與目標(biāo)分離開來。這時,模板匹配算法可以較好地實現(xiàn)目標(biāo)的識別功能[5-6]。在實現(xiàn)過程中,通過灰度直方圖來判斷當(dāng)前背景的復(fù)雜程度,進(jìn)而確定采用幀差算法還是模板匹配算法。
??? 當(dāng)火箭開始升空,目標(biāo)背景變得單一,外界干擾也小,系統(tǒng)通過灰度直方圖判斷背景為簡單,同時火箭飛行速度也開始加快,正好適用幀差算法,從而代替計算量大的模板匹配的方法。
??? 當(dāng)火箭上升到一定高度,火箭速度加快和受到外界云層的遮擋,可能導(dǎo)致跟蹤目標(biāo)失效,此時利用卡爾曼濾波器的遞推估計能力對火箭目標(biāo)在下一時刻可能處于的區(qū)域進(jìn)行預(yù)測,以縮小搜索的目標(biāo)范圍,從而保證目標(biāo)跟蹤的準(zhǔn)確性[4,7]。實踐中,此法滿足了跟蹤的實時性,同時具有很好的魯棒性,解決了圖像受污染或者遮擋導(dǎo)致無法識別的問題。
3 MSP430+CPLD控制系統(tǒng)設(shè)計
3.1 控制方案優(yōu)點
??? 系統(tǒng)控制方案:使用MSP430處理器作為主控芯片,負(fù)責(zé)與PC機(jī)進(jìn)行通信并實現(xiàn)對CPLD的控制。利用CPLD內(nèi)部進(jìn)程并發(fā)執(zhí)行特性實現(xiàn)多路驅(qū)動脈沖的產(chǎn)生,從而實現(xiàn)云臺水平和垂直方向同時不相關(guān)獨立運動。該控制方案,一方面消除了通過多片單片機(jī)進(jìn)行多機(jī)通信才能實現(xiàn)過程中的通信時間消耗帶來的步進(jìn)電機(jī)失步的因素,另一方面解決了通過單片CPLD芯片實現(xiàn)過程中與PC機(jī)通信及實現(xiàn)控制消耗過多內(nèi)部資源且不易實現(xiàn)控制、導(dǎo)致沒有足夠資源實現(xiàn)多路驅(qū)動脈沖產(chǎn)生的問題。
3.2 控制方案實現(xiàn)
??? 在PC機(jī)上完成圖像數(shù)據(jù)的處理后,PC機(jī)就要與控制系統(tǒng)進(jìn)行交互,發(fā)送偏差控制數(shù)據(jù)。通過MAX1487實現(xiàn)MSP430與PC機(jī)之間的串行RS485通信[5],然后MSP430根據(jù)接收到的控制信息,控制CPLD芯片實現(xiàn)步進(jìn)電機(jī)控制。控制系統(tǒng)流程如圖2所示。
?????????????????????? 
??? MSP430接收到偏差控制信息,經(jīng)過校驗無誤后,根據(jù)信息控制CPLD產(chǎn)生具體的驅(qū)動控制信號。系統(tǒng)要完成云臺攝像機(jī)水平和垂直方面的獨立運動。其中控制信息格式如圖3所示。
??????????????????????? 
??? 此信息格式分為兩部分:步進(jìn)電機(jī)1#與步進(jìn)電機(jī)2#,分別用于控制云臺系統(tǒng)兩臺步進(jìn)電機(jī),達(dá)到兩電機(jī)同時不相關(guān)地獨立運動。
??? 另外加入了人為控制機(jī)制,以便及時處理跟蹤中的異常情況,同時也方便調(diào)試。
3.3 步進(jìn)電機(jī)定位控制
??? CPLD根據(jù)MSP430的控制信號(包括方向控制信號和移動定位控制信息),產(chǎn)生所需脈沖的數(shù)量和脈沖的頻率。脈沖的數(shù)量用于控制步進(jìn)電機(jī)運行步數(shù),即攝像頭的位置偏差,而脈沖的頻率則用于實現(xiàn)跟蹤圖像的速度選擇。
??? 在軟件上,CPLD基于VHDL語言編程,程序中可以實現(xiàn)不同進(jìn)程并發(fā)執(zhí)行。由此可知,只需要編寫多路能夠?qū)崿F(xiàn)單個步進(jìn)電機(jī)轉(zhuǎn)向與移動定位的控制進(jìn)程,便可實現(xiàn)云臺的多角度獨立控制[8]。單路進(jìn)程定位控制如圖4所示。
???????????????????? 
4 系統(tǒng)機(jī)械結(jié)構(gòu)性能分析與實現(xiàn)
??? 系統(tǒng)結(jié)構(gòu)框架主要由底座、攝像機(jī)固定架、機(jī)械架構(gòu)、減速機(jī)構(gòu)以及限位控制機(jī)構(gòu)等部分組成。
4.1 減速機(jī)減速比的計算
??? 攝攝像機(jī)固定架如圖5所示。假定像機(jī)質(zhì)量為m,重心在M,Cg的距離為r=(h2+l2)1/2,則轉(zhuǎn)過a角后的力矩為:
M=Grsina=mg(h2+l2)1/2sina,所以力矩最大值Mmax為mg(h2+l2)1/2,如果m=40kg,g=9.8m/s2,h=0.2m,l=0.4m,Mmax=179牛米,則變速比為179/2.4=79(實際中取80)。
????????????????????? 
4.2 物像跟蹤能力計算
??? 目標(biāo)鎖定圖如圖6所示。假定計算機(jī)計算誤差的速度為t0秒/次;圖像鎖定范圍RL為RLW×RLH像素;圖像模板計算范圍RC為RCW×RCH像素。只討論垂直方向的跟蹤能力。
???????????????????? 
??? 對于一個高為H的物體O,如要能跟蹤且便于觀察,則其最佳位置如圖6所示。若物體被鎖定,且被跟蹤。物體在計算誤差的速度容許的前提下,物體始終處于如圖6所示位置,則系統(tǒng)能夠滿足“物體被鎖定,且被跟蹤”的要求,即有如下條件成立:
??? 
??? 對于云臺而言,由圖7可知,其垂直方向旋轉(zhuǎn)角速度ω0應(yīng)滿足如下條件:
???
?
??? 要注意,攝像機(jī)的運動范圍一般都是已知的,由此一般要在云臺中加入限位控制裝置。
??? 本文結(jié)合火箭飛行過程中目標(biāo)識別跟蹤算法,并通過MSP430+CPLD控制步進(jìn)電機(jī)實現(xiàn)了云臺控制系統(tǒng)和連續(xù)視頻運動圖像中火箭目標(biāo)的實時跟蹤,并取得了良好的效果。
參考文獻(xiàn)
[1] ?劉宇. 視覺跟蹤伺服系統(tǒng)在火箭發(fā)射測控中的應(yīng)用.重慶:重慶大學(xué)出版社, 2005.
[2] ?王成, 薛小剛, 鐘信潮. FPGA/CPLD設(shè)計工具-Xilinx ISE使用詳解.北京:人民郵電出版社, 2005.
[3] ?王強(qiáng), 韓軍功.一種圖像序列中運動前景分割法.計算機(jī)工程,2003,29(19):48-49.
[4] ?崔玉文,黃飛泉等.運動目標(biāo)的快速檢測與跟蹤算法的研究.齊齊哈爾大學(xué)學(xué)報,2006,22(4):23-25.
[5] ?應(yīng)陳克,胡文江. 復(fù)雜背景下目標(biāo)模板更新算法研究.遙感測控.2006,27(10):34-39.
[6] ?吳益飛,李勝. 基于MSP430 單片機(jī)的云臺控制系統(tǒng)設(shè)計與實現(xiàn). 微計算機(jī)信息,2006,22(7-2):90-93.
[7] ?王俊風(fēng),雷斌.卡爾曼預(yù)測在自動跟蹤云臺中應(yīng)用.國外電子測量技術(shù),2006,25(10):53-55.
[8] ?王強(qiáng),趙宇. CPLD在步進(jìn)電機(jī)控制系統(tǒng)中的應(yīng)用.電子測量技術(shù), 2006,29(6):118-120.

