(南京理工大學(xué) 機(jī)械工程學(xué)院,江蘇 南京 210094)
隨著戰(zhàn)爭(zhēng)理念的更新,現(xiàn)代戰(zhàn)機(jī)更強(qiáng)調(diào)高速、可靠性打擊、高隱身性能等條件。為了進(jìn)一步提高戰(zhàn)機(jī)發(fā)射導(dǎo)彈時(shí)其自身的安全性和打擊的可靠性,機(jī)彈分離技術(shù)[1-2]開(kāi)始不斷發(fā)展。研究[3-4]的主要內(nèi)容是機(jī)彈許可分離,即導(dǎo)彈與載機(jī)不僅分離到安全距離才點(diǎn)火,且其點(diǎn)火時(shí)導(dǎo)彈的角偏移能控制在一個(gè)較小的范圍內(nèi),使得導(dǎo)彈的命中精度基本不受影響,同時(shí)載機(jī)的安全性得到保證。目前,國(guó)內(nèi)外對(duì)于機(jī)彈分離[1-2]的研究手段主要有3種:數(shù)值模擬法、風(fēng)洞試驗(yàn)及飛行實(shí)驗(yàn)。相比于高成本的飛行實(shí)驗(yàn)與風(fēng)洞試驗(yàn),數(shù)值模擬法的優(yōu)勢(shì)隨著計(jì)算機(jī)技術(shù)的提高逐漸凸顯出來(lái)。其主要是通過(guò)計(jì)算機(jī)來(lái)求解出載機(jī)與導(dǎo)彈的運(yùn)動(dòng)方程,進(jìn)而研究其特性。目前的機(jī)彈分離數(shù)值模擬計(jì)算過(guò)程為:給定初始計(jì)算狀態(tài),生成網(wǎng)格,求解流場(chǎng)計(jì)算氣動(dòng)力,求解導(dǎo)彈運(yùn)動(dòng)方程,從而得到導(dǎo)彈的質(zhì)心運(yùn)動(dòng)方程及導(dǎo)彈姿態(tài)來(lái)分析導(dǎo)彈發(fā)射的安全性。由上可知初始計(jì)算狀態(tài)的誤差對(duì)于最后實(shí)際結(jié)果的誤差有著關(guān)鍵的影響,而目前絕大部分的初始計(jì)算狀態(tài)如初速度、初角速度都只由導(dǎo)彈分離時(shí)所受力及力矩的作用粗略計(jì)算得出,為了保證仿真結(jié)果的精確性與實(shí)用性,有必要精確求出機(jī)載導(dǎo)彈分離時(shí)的初始物理信息。本文提供了一種能實(shí)時(shí)且精準(zhǔn)提取導(dǎo)彈在與彈射掛架分離時(shí)的初始物理信息的方案,運(yùn)用區(qū)域霍夫變換對(duì)導(dǎo)彈彈身及彈尾的一系列標(biāo)識(shí)圓進(jìn)行跟蹤,再將標(biāo)識(shí)圓的運(yùn)動(dòng)轉(zhuǎn)換成導(dǎo)彈運(yùn)動(dòng),從而達(dá)到提取導(dǎo)彈分離物理信息的目的。
本方案適用于室內(nèi)導(dǎo)彈彈射試驗(yàn),可以根據(jù)需要添加風(fēng)洞等條件。導(dǎo)彈可以看成是剛體,其分離運(yùn)動(dòng)可以分解為彈體的平動(dòng)以及彈體繞自身質(zhì)心的轉(zhuǎn)動(dòng)。在導(dǎo)彈上添加了一系列標(biāo)識(shí)圓,如圖1所示。
圖1 標(biāo)識(shí)圓在導(dǎo)彈上的分布Fig.1 Distribution of marking circles on missile
為了簡(jiǎn)化模型,本文只研究導(dǎo)彈在z-x平面內(nèi)的運(yùn)動(dòng)情況。分別在彈體側(cè)面及彈體的尾部添加3個(gè)標(biāo)識(shí)圓(原理圖便于查看,實(shí)際圓半徑要更?。?,并放置雙高速攝像機(jī)對(duì)彈體下落進(jìn)行觀測(cè)。其初始狀態(tài)如上圖所示,以1、2、3 這3個(gè)標(biāo)識(shí)圓的觀測(cè)為例,在導(dǎo)彈未彈射時(shí),過(guò)標(biāo)識(shí)圓2圓心平行于y軸的直線(xiàn)與過(guò)標(biāo)識(shí)圓5圓心平行于x軸的直線(xiàn)相交于導(dǎo)彈的質(zhì)心,可以用標(biāo)識(shí)圓2的絕對(duì)位移以及其繞彈體轉(zhuǎn)動(dòng)造成的相對(duì)位移求出質(zhì)心的位移即導(dǎo)彈位移。導(dǎo)彈的位移(xd,zd)和俯仰角θd可表示為
式中:λ為實(shí)際導(dǎo)彈尺寸與畫(huà)面導(dǎo)彈尺寸縮放比;xn、zn為第n個(gè)標(biāo)識(shí)圓圓心的位移;?l2·sinθd、l2·cosθd分別為標(biāo)識(shí)圓2 繞彈體轉(zhuǎn)動(dòng)造成的x、z方向上的相對(duì)位移;l2由(3)式給出。
取一極短的時(shí)間間隔 ?t,導(dǎo)彈的速度(vdx,vdz)和俯仰角速度θ′d可表示為
同理通過(guò)對(duì)標(biāo)識(shí)圓4、5、6 進(jìn)行跟蹤觀測(cè)可以求得導(dǎo)彈的滾轉(zhuǎn)角 γd及滾裝角速度γ′d,同時(shí)可計(jì)算出l2,如下式所示:
其中R為標(biāo)識(shí)圓2圓心所在彈體圓截面的半徑。
雖然目前目標(biāo)跟蹤算法[5-8]層出不窮,但其絕大多數(shù)都是基于tracking-by-detection的原理進(jìn)行跟蹤。其步驟如下:1)用目標(biāo)檢測(cè)算法檢測(cè)每幀畫(huà)面中需要的目標(biāo),并得到其對(duì)應(yīng)的位置坐標(biāo);2)通過(guò)某種方式將步驟1)里的檢測(cè)結(jié)果與上一幀的檢測(cè)結(jié)果進(jìn)行關(guān)聯(lián)匹配,也就是一一對(duì)應(yīng)起來(lái)。檢測(cè)算法分為傳統(tǒng)方法以及基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)方法。出于時(shí)效性的考慮,本方案采取了主流的檢測(cè)圓及圓心的方法,即隨機(jī)霍夫變換(RHT)[9]。而一般的數(shù)據(jù)關(guān)聯(lián)方法是計(jì)算兩幀中任意2個(gè)目標(biāo)間的歐幾里得距離,并取最小值,相應(yīng)的2個(gè)目標(biāo)被關(guān)聯(lián),之后使用匈牙利算法來(lái)找出最匹配的目標(biāo)對(duì)。但由于導(dǎo)彈彈射時(shí)采用的是高速攝像機(jī),其幀率可達(dá)到1000 fps,在進(jìn)行多次重復(fù)試驗(yàn)進(jìn)行數(shù)據(jù)比對(duì)或其他類(lèi)似情況的時(shí)候,短時(shí)間內(nèi)會(huì)產(chǎn)生大量的待檢測(cè)圖片。即使采用傳統(tǒng)的隨機(jī)霍夫變換加上一般的數(shù)據(jù)關(guān)聯(lián)方法也難以保證其檢測(cè)時(shí)效性。為了解決該問(wèn)題,本文結(jié)合KCF[10](Kernel correlation filter)原理的部分思想提出了一種基于速度確定搜索區(qū)間的算法,其依據(jù)的是由于高速攝像機(jī)的高幀率,前后幀之間的速度矢量變化可以忽略的特點(diǎn)。該算法原理如圖2所示。
圖2 基于速度確定搜索區(qū)間Fig.2 Determine search interval based on speed
假設(shè)我們需要檢測(cè)n個(gè)目標(biāo),在這里以標(biāo)識(shí)圓為例。首先對(duì)視頻的前3幀的每一幀進(jìn)行全圖RHT,查找出每個(gè)標(biāo)識(shí)圓圓心的初始位置,并通過(guò)上文所述的一般數(shù)據(jù)關(guān)聯(lián)方法對(duì)其上下幀的圓進(jìn)行一一匹配。從第3幀開(kāi)始,對(duì)每個(gè)圓給定一個(gè)邊長(zhǎng)均為β·r的矩形搜索框,其中β為矩形框長(zhǎng)度系數(shù),r為檢測(cè)的標(biāo)識(shí)圓半徑。假設(shè)我們測(cè)出標(biāo)識(shí)圓m及其圓心所在的位置(xm,ym),則由當(dāng)前幀圓心的位置與上上幀圓心的位置采用平均速度法求出上一幀圓心的速度(vmx,vmy),由(4)式表示:
式中(x0m,y0m)與(x1m,y1m)分別代表前一幀與后一幀的圓心位置。將其近似為當(dāng)前幀的圓心速度并假設(shè)其保持不變,則可預(yù)測(cè)下一幀圓心位置在(xm+vmx·?t,ym+vmy·?t)附近,把搜索框中心移步到該位置。從下一幀開(kāi)始,只需要在n個(gè)搜索框內(nèi)(n為待搜索圓個(gè)數(shù))進(jìn)行區(qū)域RHT,且無(wú)需進(jìn)行數(shù)據(jù)關(guān)聯(lián),就可以進(jìn)行n個(gè)圓的多目標(biāo)跟蹤。步驟流程如圖3所示。
傳統(tǒng)KCF算法原理是根據(jù)原有搜索框的位置將預(yù)測(cè)搜索框在原有搜索框附近進(jìn)行循環(huán)移位,再使用分類(lèi)器依次計(jì)算響應(yīng)值,得到最大的響應(yīng)值就是所求結(jié)果。而本文利用了高速攝像機(jī)高幀率的特點(diǎn),將搜索框的下一位置進(jìn)行較為精準(zhǔn)的預(yù)測(cè),從而避免了不必要的計(jì)算,節(jié)省了時(shí)間成本,時(shí)效性大幅提高。
圖3 算法流程示意圖Fig.3 Flow diagram of algorithm
由于真實(shí)的導(dǎo)彈彈射試驗(yàn)涉密,故設(shè)計(jì)了模擬實(shí)驗(yàn)來(lái)對(duì)上文算法進(jìn)行效果評(píng)估。以等比縮小的待測(cè)物體來(lái)模擬導(dǎo)彈,取標(biāo)識(shí)圓內(nèi)徑r=0.7 cm、外徑R=0.9 cm、相鄰圓圓心距l(xiāng)=12.7 cm。以上物理量皆根據(jù)實(shí)際大小等比縮放。實(shí)驗(yàn)內(nèi)容為,在漸變亮度背景情況下對(duì)該算法及傳統(tǒng)的全圖隨機(jī)霍夫變換加上一般性數(shù)據(jù)關(guān)聯(lián)方法進(jìn)行效果比對(duì),其中矩形框長(zhǎng)度系數(shù)β設(shè)為4.0。
原圖一般為彩色的且含有較多噪聲,需要進(jìn)行圖像處理才能開(kāi)始目標(biāo)檢測(cè)。首先對(duì)其進(jìn)行邊緣檢測(cè),其算法有Laplacian算子[11]、Sobel算子[12]和Canny算子[13]等。為了滿(mǎn)足邊緣檢測(cè)的3個(gè)主要標(biāo)準(zhǔn)即低錯(cuò)誤率、高定位性及最小響應(yīng),本文采用目前效果最好的Canny算子對(duì)其進(jìn)行檢測(cè)。在邊緣檢測(cè)后為了減少數(shù)據(jù)量,采用二值化處理,即圖像灰度化,處理后效果如圖4(b)所示。最后一步是對(duì)圖像進(jìn)行高斯濾波[14-15](必須使用高斯濾波,因?yàn)槠渌姆椒ㄈ缇禐V波都無(wú)法很好保留細(xì)節(jié)部分),以抑制圖像中的噪聲。對(duì)于本算法而言,由于是圖像區(qū)域性檢測(cè)跟蹤,故圖像的處理在給定搜索框內(nèi)進(jìn)行便可,處理后的圖像如圖4(c)所示。
圖4 圖像處理結(jié)果Fig.4 Results of image processing
通過(guò)對(duì)無(wú)風(fēng)環(huán)境下室內(nèi)導(dǎo)彈彈射視頻幀分析,可以得到指標(biāo)如(5)式所示。
圖5 視頻幀處理結(jié)果Fig.5 Results of video frame processing
表1 前3幀的坐標(biāo)定位Table1 Coordinate positioning of first three frames
由表1可見(jiàn)初始定位的搜索框十分準(zhǔn)確,坐標(biāo)誤差不超過(guò)1.5%。
處理完前3幀圖像后,按算法流程逐幀預(yù)估搜索框的位置并進(jìn)行區(qū)域RHT檢測(cè)跟蹤相應(yīng)標(biāo)識(shí)圓。圖5(b)是視頻中等間隔取出的3幀原始圖像,可以從圖像中看出標(biāo)識(shí)圓移動(dòng)的速度是逐漸改變的,其坐標(biāo)數(shù)據(jù)如表2所示。
表2 等間隔幀的坐標(biāo)定位Table2 Coordinate positioning of equally spaced frames
由表2可以看出搜索框中心與圓心的位置十分接近。設(shè)搜索框中心與圓心的歐幾里得距離為l,標(biāo)識(shí)圓的半徑為r,則預(yù)測(cè)區(qū)域的位置誤差可以由即相對(duì)距離誤差來(lái)表示。以15幀為步長(zhǎng),從300幀圖像中均勻地取出20幀圖像,可以得到每幀圖像每個(gè)標(biāo)識(shí)圓對(duì)應(yīng)的ε,如圖6所示。
圖6 三個(gè)標(biāo)識(shí)圓對(duì)應(yīng)的預(yù)測(cè)誤差Fig.6 Prediction errors corresponding to three marking circles
由圖6可以看出標(biāo)識(shí)圓1,即左邊的標(biāo)識(shí)圓的ε最大,這是因?yàn)槠渌俣鹊淖兓容^其他2個(gè)標(biāo)識(shí)圓更大,但其最大相對(duì)距離誤差不會(huì)超過(guò)5%,從而證明了預(yù)測(cè)區(qū)域的穩(wěn)定性較好。
為驗(yàn)證該算法在復(fù)雜背景下仍然具有較好的效果,將模擬實(shí)驗(yàn)的背景設(shè)置為多圓干擾背景,其結(jié)果如圖7所示。從圖7可看出區(qū)域RHT 避開(kāi)了所有的干擾圓,只要矩形框長(zhǎng)度系數(shù)β選擇恰當(dāng),背景中的干擾圓一般不會(huì)影響區(qū)域RHT,故該算法具有較好的復(fù)雜背景適應(yīng)能力。
再比較單幀圖像處理時(shí)本算法與傳統(tǒng)方法的耗時(shí),對(duì)比結(jié)果如表3所示。
圖7 復(fù)雜背景下視頻幀處理結(jié)果Fig.7 Results of video frame processing under complex backgrounds
表3 耗時(shí)對(duì)比表Table3 Comparison of time consumption
從上表可以看出,相較于傳統(tǒng)方法,本算法可以縮短近41.6%的耗時(shí)。這在于本算法只對(duì)框選區(qū)域進(jìn)行圖像處理及霍夫變換,避免了不必要的計(jì)算。
通過(guò)本算法得到相應(yīng)的標(biāo)識(shí)圓每幀所對(duì)應(yīng)的位置后,就可以通過(guò)(1)~(3)式來(lái)計(jì)算出導(dǎo)彈彈射分離初始狀態(tài)物理信息。算法精度來(lái)源于物理定位精度,而物理定位精度由相機(jī)的像素精度及RHT的精度共同決定,標(biāo)識(shí)圓越完美,RHT的精度越高,通過(guò)觀察視頻幀,發(fā)現(xiàn)相對(duì)于像素帶來(lái)的誤差,RHT 帶來(lái)的誤差可以忽略。對(duì)于本彈射系統(tǒng),像素帶來(lái)的不確定區(qū)間為(?0.25 mm,0.25 mm),用1000幀高速攝像機(jī)(像素1440×1080)記錄真實(shí)的導(dǎo)彈彈射運(yùn)動(dòng)過(guò)程,共采集300幀圖像,對(duì)機(jī)彈分離點(diǎn)所在幀進(jìn)行物理信息提取。為盡可能減少相機(jī)像素帶來(lái)的誤差,取?t=0.01 s,即間隔10幀。用3種不同型號(hào)的導(dǎo)彈掛架進(jìn)行彈射試驗(yàn),計(jì)算分離點(diǎn)的物理信息及其物理量平均誤差 η,如表4所示。
從表4可以看出物理量平均誤差最大誤差不超過(guò)2.39%,隨著彈射速度的增大,其誤差越小。這是因?yàn)閺椛渌俣仍酱?,相鄰幀的相似度就越小,像素精度帶?lái)的誤差就會(huì)越小。
以上實(shí)驗(yàn)可以證明該算法兼顧了時(shí)效性及魯棒性(抗干擾性),同時(shí)在高幀率下,預(yù)測(cè)區(qū)域的穩(wěn)定性較高,不容易陷入局部最優(yōu)。
表4 物理量及誤差計(jì)算Table4 Calculation of physical quantities and corresponding error
本文設(shè)計(jì)了一套關(guān)于如何提取導(dǎo)彈彈射分離下落的初始物理信息的方案,其使用高速攝像機(jī)對(duì)標(biāo)識(shí)圓圓心的位置進(jìn)行檢測(cè),并將其轉(zhuǎn)化為導(dǎo)彈的俯仰角、滾轉(zhuǎn)角、質(zhì)心位移及其各自對(duì)應(yīng)的速度、角速度等物理信息;同時(shí)提出了基于搜索框預(yù)測(cè)的區(qū)域RHT算法,其相比于傳統(tǒng)方法性能更優(yōu)良。應(yīng)用此方案可以為機(jī)彈分離數(shù)值模擬技術(shù)提供精確的初始條件,減少仿真誤差,機(jī)彈分離安全性研究的基礎(chǔ)更加牢靠,具有良好的應(yīng)用前景。