瞄準(zhǔn)器的眼跟蹤算法研究
視線跟蹤是圖像實(shí)時(shí)處理的重要領(lǐng)域,廣泛應(yīng)用于軍事領(lǐng)域的預(yù)警、火控、制導(dǎo)。視線跟蹤又稱眼睛瞄準(zhǔn)系統(tǒng)或視覺(jué)跟蹤系統(tǒng),它用眼睛注視作為輸入,并配上相應(yīng)的硬件設(shè)備來(lái)表達(dá)思想及控制周圍環(huán)境。另外還有“眼動(dòng)鼠標(biāo)”通過(guò)移動(dòng)眼球控制電腦屏幕鼠標(biāo)的運(yùn)動(dòng),并且能利用眼睛的注視打開(kāi)或關(guān)閉窗口程序,實(shí)驗(yàn)表明用視線跟蹤控制要比鼠標(biāo)迅速。
頭盔瞄準(zhǔn)器能夠在盡可能大的范圍內(nèi)觀察瞄準(zhǔn)目標(biāo),而無(wú)需在發(fā)動(dòng)攻擊前才使飛機(jī)對(duì)準(zhǔn)目標(biāo)。從理論上講,頭盔瞄準(zhǔn)器幾乎具有全向視場(chǎng),這是其他任何一種探測(cè)器都無(wú)法比擬的,而在實(shí)際應(yīng)用中,頭盔瞄準(zhǔn)器的觀察范圍是由駕駛員頭部轉(zhuǎn)動(dòng)所達(dá)到范圍和頭盔位置傳感器跟蹤測(cè)量范圍共同決定,因此,頭盔跟蹤受跟蹤范圍和響應(yīng)速度限制,而視線跟蹤正好能擴(kuò)大該范圍。另外,隨導(dǎo)彈離軸角的增加,頭盔瞄準(zhǔn)器觀察目標(biāo)和瞄準(zhǔn)目標(biāo)的范圍要求也再增加,且要求在各種機(jī)動(dòng)狀態(tài)都能使用,眼跟蹤和頭跟蹤正好解決了這個(gè)矛盾。
2 視線跟蹤原理
以正視下的視線方向作為基準(zhǔn),改變視線方向,即眼球發(fā)生一定角度轉(zhuǎn)動(dòng)時(shí),瞳孔中心位置同步移動(dòng),因此實(shí)時(shí)獲取瞳孔中心位置坐標(biāo)即可實(shí)現(xiàn)視線跟蹤。
圖1給出視線跟蹤原理圖。以眼底為坐標(biāo)原點(diǎn)O,S為瞳孔中心位置,s’為S在YOZ面的投影,(M,N)為S’在YOZ面上二維坐標(biāo),CCD攝像機(jī)在X軸方向上。設(shè)定正視方向(即頭盔跟蹤法線方向)為X軸,頭盔左右方向?yàn)閆軸,頭盔上下方向?yàn)閅軸。根據(jù)瞳孔中心在ZOY面上的投影坐標(biāo)及人眼球半徑(約10 mm),得到俯仰角α(∠SON’)、方位角β(∠M’ON’)的值,這樣就可確定眼跟蹤視線方位。
3 跟蹤算法實(shí)現(xiàn)
3.1 閾值選取
從內(nèi)存讀取紅外源圖像,圖2(a)中,瞳孔與眼睛其他部分相比要暗得多,采用簡(jiǎn)單的二值化法分離瞳孔,提取瞳孔邊緣。具體做法:先計(jì)算出整個(gè)眼睛圖像的灰度直方圖,第一個(gè)峰值對(duì)應(yīng)的是瞳孔區(qū)域灰度值,如圖2(b)中箭頭所示。選擇在第一個(gè)峰值的右側(cè)相隔2至5個(gè)灰度值處提取瞳孔的二值化閾值,即灰度值為78,但這樣會(huì)導(dǎo)致眼睫毛部分保留大量信息。圖2(c)是采用閾值63二值化后的結(jié)果,可以看出,瞳孔被成功分離出來(lái),雖然保留小部分睫毛,但不影響后續(xù)分析。
3.2 Sobel算子檢測(cè)邊緣
圖像的邊緣是圖像最基本特征。所謂邊緣就是指那些周圍灰度有跳躍變化的像素集合。邊緣廣泛存在于物體與背景、物體與物體、基元與基元之間。Sobel算子是一種一階微分算子,在邊緣檢測(cè)中應(yīng)用廣泛。Sobel算子有兩個(gè),其中,是檢測(cè)水平邊緣的,而是檢測(cè)垂直邊緣的。在圖2(c)中,瞳孔上的像素與其周圍像素有明顯階躍變化。所以可利用該特性作為檢測(cè)瞳孔邊緣依據(jù)。利用Sobel算子檢測(cè)瞳孔邊緣結(jié)果,如圖3所示。
3.3 Hough圓檢測(cè)算法
Hough變換是在圖像處理中從圖像中識(shí)別幾何形狀的基本方法。Hough變換的基本原理利用點(diǎn)與線的對(duì)偶性,將原始圖像空間給定的曲線通過(guò)曲線表達(dá)形式變?yōu)閰?shù)空間的一點(diǎn)。這樣就把原始圖像中給定曲線的檢測(cè)問(wèn)題轉(zhuǎn)化為尋找參數(shù)空間中的峰值問(wèn)題,即把檢測(cè)整體特性轉(zhuǎn)化為檢測(cè)局部特性,比如直線、橢圓、圓、弧線等。
Hough變換的編程思想:以已知量r、△r分別為半徑、圓環(huán)的寬度,圖像像素值為255、坐標(biāo)為(xo,yo)的點(diǎn)為圓心,建立一個(gè)圓模板;將符合(a-x0)2+(b—y0)2一r2<△r2的所有點(diǎn)(a,b)的坐標(biāo)計(jì)入模板數(shù)組,然后將圓心移動(dòng)至下一個(gè)符合像素值為255的點(diǎn)(x1,y1),同時(shí)將上述圓模板按照同圓心的行列變換移動(dòng),再次將符合(a-x1)2+(b-y1)2一r2<△r2的所有點(diǎn)(a,b)的坐標(biāo)計(jì)入模板數(shù)組。依此類推,檢測(cè)完圖像中所有符合要求的圓心,統(tǒng)計(jì)計(jì)入模板數(shù)組次數(shù)最多的坐標(biāo),那么該坐標(biāo)就為所求參數(shù)坐標(biāo)(a,b),即為固定半徑下的圓心坐標(biāo)。
3.4 瞳孔中心坐標(biāo)確定
根據(jù)半徑取值范圍,進(jìn)行多次Hough變換檢測(cè)圓心,得到一個(gè)圓心集合,該集合中選取其對(duì)應(yīng)頻率最大的目標(biāo),即為真正的瞳孔中心。
3.5 眼球移動(dòng)角度
圖1所示的S’坐標(biāo)即為瞳孔中心坐標(biāo),其投影SN’=S’N,S’M=ON=M’N’可得:
從而求得α,β∈(0~π/2),再根據(jù)瞳孔中心與正視時(shí)瞳孔中心位置,可得俯仰角和方位角。
3.6 算法實(shí)現(xiàn)
圖像處理算法程序采用Visttal C++6.0,最后將圖像處理程序封裝在一個(gè)COM組件中,從而完成后臺(tái)圖像處理,并將所得的數(shù)據(jù)通過(guò)接口傳遞給前臺(tái)界面,實(shí)現(xiàn)整個(gè)軟件的系統(tǒng)測(cè)試。其程序流程如圖4所示。
4 結(jié)語(yǔ)
目前現(xiàn)有的頭盔瞄準(zhǔn)系統(tǒng),對(duì)目標(biāo)瞄準(zhǔn)線方向的測(cè)量都是對(duì)駕駛員頭部位置空間的測(cè)量,但采用頭盔測(cè)量方式的頭盔瞄準(zhǔn)系統(tǒng),空中格斗時(shí)在高過(guò)載下,飛行員有時(shí)不可能轉(zhuǎn)動(dòng)頭部,卻可以用其眼睛一直跟蹤,這就是眼跟蹤的優(yōu)勢(shì)。研究表明,頭盔跟蹤期間,眼球運(yùn)動(dòng)超過(guò)頭部運(yùn)動(dòng),在多目標(biāo)搜索的情況下,眼位置和頭部位置保持一定角偏離,眼跟蹤具有巨大的實(shí)際應(yīng)用價(jià)值。眼跟蹤和頭跟蹤的擬合使用,使瞄準(zhǔn)更迅速,更精確,更自由。因此,該技術(shù)將大大提高空軍的戰(zhàn)斗力和反應(yīng)速度。