謝忠旭,王志乾,沈鋮武,劉 旭,孫浩洋,鄭博文,成 順
(1.中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所,吉林 長(zhǎng)春 130033;2.中國(guó)科學(xué)院大學(xué),北京 100049)
地面視覺(jué)引導(dǎo)無(wú)人機(jī)著陸系統(tǒng),依靠檢測(cè)安裝在無(wú)人機(jī)上的合作目標(biāo)來(lái)完成系統(tǒng)對(duì)無(wú)人機(jī)的捕獲與追蹤,并實(shí)時(shí)解算出無(wú)人機(jī)相對(duì)跑道的位置,最終完成著陸引導(dǎo)[1-3]。不同的合作目標(biāo)所設(shè)計(jì)的識(shí)別算法各不相同,但都需要滿足定位精度和引導(dǎo)系統(tǒng)的實(shí)時(shí)性要求[4]。
在光斑檢測(cè)方面,李天宇[5]提出了一種基于高斯擬合的信號(hào)彈光斑中心定位方法,該方法能夠在保證速度的同時(shí)達(dá)到亞像素精度。沈天浩[6]針對(duì)傳統(tǒng)灰度重心算法提出了優(yōu)化方案,利用該算法可有效提高系統(tǒng)的抗干擾性和實(shí)時(shí)性,完成對(duì)激光光斑的快速捕獲。針對(duì)遠(yuǎn)場(chǎng)不規(guī)則光斑的能量中心校準(zhǔn)問(wèn)題,何佳凱[7]提出了一種基于自適應(yīng)disk掩膜的激光光斑中心檢測(cè)算法,該方法在近場(chǎng)光斑與遠(yuǎn)場(chǎng)不規(guī)則光斑的中心檢測(cè)均具有優(yōu)異魯棒性和準(zhǔn)確性。為了提高圖像中光斑中心位置的定位精度,Zhu J[8]在橢圓擬合算法的基礎(chǔ)上進(jìn)行了改進(jìn),改進(jìn)后的算法可以有效地降低圖像中高斯白噪聲的影響,提高了抗干擾能力和定位精度。Zhao H[9]基于基線法的迭代雙面積收縮方法,提出了一種提高定位精度的激光光斑定心方法。該方法具有較強(qiáng)的抗背景噪聲干擾能力,最大定位精度可達(dá)0.05像素。
本文首先將實(shí)驗(yàn)采集到的光斑圖像進(jìn)行特征分析,其次根據(jù)光斑在圖像上的輪廓特征,利用圖像處理技術(shù)完成光斑的檢測(cè)。最后將多種光斑檢測(cè)算法的運(yùn)行時(shí)間與定位結(jié)果進(jìn)行對(duì)比,證明本實(shí)驗(yàn)算法的可靠性與實(shí)時(shí)性。
本文的視覺(jué)著陸引導(dǎo)系統(tǒng)是多傳感器融合系統(tǒng),主要由二維轉(zhuǎn)臺(tái)、激光發(fā)射器、CCD相機(jī)、合作目標(biāo)組成,如圖1所示。
圖1 著陸引導(dǎo)示意圖
合作目標(biāo)為角錐棱鏡,能夠?qū)⒅懸龑?dǎo)系統(tǒng)發(fā)射的激光原路返回。當(dāng)無(wú)人機(jī)進(jìn)入視場(chǎng)后,合作目標(biāo)反射回的激光光束,在CCD相機(jī)成像為光斑圖像。依靠圖像處理算法對(duì)光斑進(jìn)行實(shí)時(shí)檢測(cè),得出光斑中心與視軸中心的偏差,利用該數(shù)值完成對(duì)無(wú)人機(jī)的捕獲與追蹤。
CCD相機(jī)的光斑圖像如圖2所示,圖(a)為光斑實(shí)驗(yàn)圖像,圖2(b)為該圖的光斑放大圖,圖2(c)為光斑放大圖像的三維灰度分布圖。根據(jù)圖像中光斑的特征[10-11]進(jìn)行如下分析:
圖2 光斑圖像及三維灰度分布圖
(1)光斑中心區(qū)域的灰度值,明顯高于周?chē)尘暗幕叶戎?且中心區(qū)域的灰度分布均勻,在光斑邊緣處灰度值下降迅速;
(2)圖像中光斑的大小隨著CCD相機(jī)與合作目標(biāo)的距離而變化;
(3)圖像中光斑成像的效果與激光光束照射到靶面的角度有關(guān),當(dāng)光束與靶面呈垂直關(guān)系時(shí),成像效果最好;平行關(guān)系時(shí),成像效果最差;
(4)合作目標(biāo)反射回的光束在CCD相機(jī)表面會(huì)產(chǎn)生散射現(xiàn)象,導(dǎo)致光斑邊緣產(chǎn)生毛刺。
原始圖像的背景環(huán)境復(fù)雜,要在圖像中準(zhǔn)確地提取出光斑,需要將原始圖像進(jìn)行圖像預(yù)處理操作,由于圖像尺寸大,整體圖像的灰度值分布不均勻,因此需要選擇7×7模板的均值濾波才能有效的抑制噪聲。將濾波后的圖像進(jìn)行閾值分割,經(jīng)典的閾值分割方法有OTSU(大津法)、最大熵值法[12]、自適應(yīng)閾值法、直方圖技術(shù)。其中最大熵值法的熵值定義為:
(1)
其原理是設(shè)定一個(gè)閾值q(0≤q (2) (3) 總熵為: H(q)=H0(q)+H1(q) (4) 該方法在目標(biāo)明顯、環(huán)境復(fù)雜的條件下,目標(biāo)提取效果較好。閾值分割后,圖像中只保留了光斑信息。為了降低圖像的運(yùn)算量,將光斑從大尺寸的二值圖像中裁剪出來(lái),而后進(jìn)行形態(tài)學(xué)處理、Canny算子邊緣檢測(cè)、最終利用橢圓擬合法得到中心坐標(biāo),整體流程如圖3所示。 圖3 基于最大熵值法的光斑檢測(cè)算法流程圖 由于最大熵值法的數(shù)學(xué)模型簡(jiǎn)單,在背景復(fù)雜、總熵值高的情況下,能夠有效地將光斑與背景分離,當(dāng)背景單一時(shí),分割效果相對(duì)其他傳統(tǒng)閾值分割算法差。而合作目標(biāo)最終需要安裝在無(wú)人機(jī)上,背景環(huán)境無(wú)法預(yù)測(cè),因此采用最大熵值法進(jìn)行圖像分割有很強(qiáng)的不確定性。 針對(duì)原始圖像分辨率高、尺寸大的問(wèn)題,基于亮度調(diào)節(jié)的光斑檢測(cè)算法是采用了2×2模板對(duì)原始圖像進(jìn)行處理,通過(guò)只保留模板左上角灰度值的方式,將原始圖像的分辨率與尺寸都由2592×2048降為1296×1024。根據(jù)光斑特征可知,光斑與背景的灰度值相差大、對(duì)比度強(qiáng)。利用gamma變換對(duì)圖像進(jìn)行亮度調(diào)節(jié),將整體圖像變暗,從而降低背景對(duì)光斑的干擾,再通過(guò)大津法進(jìn)行閾值分割[13],而后進(jìn)行目標(biāo)裁剪、形態(tài)學(xué)處理、Canny算子邊緣檢測(cè),最終利用橢圓擬合算法完成中心定位,整體流程如圖4所示。由于該方法將整體圖像尺寸的橫縱坐標(biāo)各縮小2倍,得到的光斑中心位置并不是原始圖像中光斑的真實(shí)位置,因此需要將中心坐標(biāo)橫縱坐標(biāo)值擴(kuò)大2倍。 圖4 基于亮度調(diào)節(jié)的光斑檢測(cè)算法流程圖 圖5 基于輪廓特征的快速檢測(cè)光斑算法流程圖 在大尺寸、高分辨率的圖像中,光斑僅占原始圖像中的一小部分,進(jìn)行任何圖像處理操作時(shí),都會(huì)因圖像尺寸大導(dǎo)致運(yùn)行時(shí)間長(zhǎng),無(wú)法滿足系統(tǒng)的實(shí)時(shí)性要求。本算法采用目標(biāo)裁剪方法,將光斑從原始圖像中裁剪出來(lái),以此達(dá)到降低整體圖像運(yùn)算量的目的。該方法利用圖像中光斑中心處灰度值最大這一特征信息,通過(guò)尋找圖像中的最大灰度值,來(lái)確定光斑中心處的大致位置;而后設(shè)定光斑邊緣處的灰度閾值,以最大灰度值到該閾值對(duì)應(yīng)的位置范圍,為光斑在原始圖像的大致范圍,再增加一定的預(yù)留量后,將原始圖像進(jìn)行目標(biāo)裁剪;該方法能夠有效地將光斑從背景中裁剪出來(lái)。圖像中可能會(huì)存在干擾光源,導(dǎo)致目標(biāo)裁剪后的圖像尺寸仍然很大,因此需要設(shè)定一個(gè)裁剪面積閾值,當(dāng)裁剪下的圖像面積小于閾值時(shí),則進(jìn)行后續(xù)的圖像處理,否則將重新讀取下一幀圖像。 圖像的清晰度和光斑邊緣的平滑程度直接影響了后續(xù)中心定位的精度,而在目標(biāo)圖像中背景的灰度分布不均勻,圖像中還可能存在背景噪聲和CCD讀出噪聲[14]。因此采用3×3模板的均值濾波將目標(biāo)圖像模糊化,而后將分割閾值設(shè)為最大灰度值減去實(shí)驗(yàn)值,進(jìn)行閾值分割。閾值分割后光斑邊緣仍有少量毛刺存在,通過(guò)對(duì)目標(biāo)圖像進(jìn)行先開(kāi)運(yùn)算,后閉運(yùn)算的形態(tài)學(xué)處理,可以去除掉黑色背景中可能存在的白色干擾點(diǎn),又能將光斑邊緣平滑,以此操作保證邊緣檢測(cè)后的圖像是閉合的。 傳統(tǒng)的邊緣檢測(cè)算子有很多,其中Canny算子、Sobel算子、Laplacian算子,由于圖像中目標(biāo)單一,且經(jīng)過(guò)閾值分割后圖像清晰,因此采用上述三種算子都能有效地提取出的光斑邊緣。其中Laplacian邊緣檢測(cè)算法的運(yùn)行時(shí)間短、檢測(cè)出的邊緣清晰,所以本算法采用Laplacian算子對(duì)光斑圖像進(jìn)行邊緣檢測(cè)。再對(duì)得到的光斑邊緣圖像進(jìn)行中心定位,傳統(tǒng)的定位方法有質(zhì)心法、霍夫圓法、橢圓擬合法[15-17]。其中橢圓擬合法是基于邊緣信息的中心定位方法,與本文算法中光斑特征篩選契合度高,因此采用橢圓擬合法進(jìn)行中心定位,本算法的整體流程圖如5所示。 本文實(shí)驗(yàn)設(shè)備主要由二維轉(zhuǎn)臺(tái)、CCD相機(jī)、激光發(fā)射器、以及安裝在無(wú)人機(jī)的合作目標(biāo)組成。其中合作目標(biāo)是由4個(gè)角錐棱鏡構(gòu)成,本實(shí)驗(yàn)設(shè)備如圖6所示。本實(shí)驗(yàn)算法運(yùn)行在一臺(tái)工控機(jī)上,軟件使用Visual Studio 2015將系統(tǒng)設(shè)計(jì)成MFC界面的形式,使用開(kāi)源計(jì)算機(jī)視覺(jué)庫(kù)(OpenCV)對(duì)圖像進(jìn)行處理,采用C++進(jìn)行軟件編程,本實(shí)驗(yàn)設(shè)備整體參數(shù)如表1所示。 表1 實(shí)驗(yàn)設(shè)備參數(shù) 圖6 實(shí)驗(yàn)設(shè)備圖 為了更詳細(xì)地分析不同光斑檢測(cè)算法的圖像處理過(guò)程,分別采用上述三種光斑檢測(cè)算法處理相同的4幅實(shí)驗(yàn)圖像,基于最大熵值法的光斑檢測(cè)算法圖像處理過(guò)程如圖7所示,基于亮度調(diào)節(jié)的光斑檢測(cè)算法圖像處理過(guò)如圖8所示,基于輪廓特征的快速檢測(cè)光斑算法圖像處理過(guò)如圖9所示。 圖7 基于最大熵值法的光斑檢測(cè)算法圖像處理過(guò)程圖 圖8 基于亮度調(diào)節(jié)的光斑檢測(cè)算法圖像處理過(guò)程圖 圖9 基于輪廓特征的快速檢測(cè)光斑算法圖像處理過(guò)程圖 上述三種光斑檢測(cè)算法處理相同的實(shí)驗(yàn)圖像后,得到的光斑中心結(jié)果如表2所示??傮w運(yùn)行時(shí)間,如表3所示。 表2 光斑中心坐標(biāo) 表3 總體運(yùn)行時(shí)間(單位:ms) 由表2、表3可知,三種光斑檢測(cè)算法得出的光斑中心坐標(biāo)大致相同,而本文提出的基于輪廓特征的快速檢測(cè)光斑算法,在保證定位精度與準(zhǔn)確性的同時(shí),大大縮減了算法的檢測(cè)時(shí)間,其中最長(zhǎng)運(yùn)行時(shí)間僅為35.8 ms。 針對(duì)快速檢測(cè)大尺寸光斑圖像的問(wèn)題,本文提出了基于輪廓特征快速檢測(cè)光斑算法。該算法通過(guò)目標(biāo)裁剪的方法,將光斑從原始的灰度圖像中裁剪出來(lái),以達(dá)到降低整體圖像運(yùn)算量的目的。裁剪后的目標(biāo)圖像中存在著噪聲和毛刺,本文采用圖像預(yù)處理、形態(tài)學(xué)處理等操作,從而消除無(wú)關(guān)信息對(duì)目標(biāo)圖像的干擾,并讓光斑邊緣變得平滑。最后將基于輪廓特征的快速檢測(cè)光斑算法與其他算法進(jìn)行對(duì)比,實(shí)驗(yàn)結(jié)果表明該算法不僅可以保證定位的精度與準(zhǔn)確性,還有效地降低了算法的運(yùn)行時(shí)間,證明了該算法的實(shí)時(shí)性與可靠性。3.2 基于亮度調(diào)節(jié)的光斑檢測(cè)算法
3.3 基于輪廓特征的快速檢測(cè)光斑算法
4 實(shí)驗(yàn)驗(yàn)證與分析
4.1 實(shí)驗(yàn)平臺(tái)
4.2 圖像處理過(guò)程分析
4.3 檢測(cè)結(jié)果分析
5 結(jié) 論