徐寬,王新華,蔡俊華,吳賽飛
(南京航空航天大學(xué)江蘇南京211106)
固定翼飛行器自主著陸中視覺(jué)算法的研究
徐寬,王新華,蔡俊華,吳賽飛
(南京航空航天大學(xué)江蘇南京211106)
固定翼無(wú)人機(jī)自主著陸引導(dǎo)系統(tǒng)有跟蹤速度快、精度高的特點(diǎn),本文設(shè)計(jì)并搭建一套基于Adaboost視覺(jué)算法的自動(dòng)著陸引導(dǎo)系統(tǒng)。文中首先介紹了視覺(jué)著陸引導(dǎo)系統(tǒng)的原理、組成,并分析其數(shù)學(xué)模型,其次在使用機(jī)器學(xué)習(xí)Adaboost算法的基礎(chǔ)上,通過(guò)使用高斯分布模型以及基于距離的聚類算法提高對(duì)單飛行器和多飛行器的識(shí)別精度。最后通過(guò)仿真實(shí)驗(yàn)對(duì)視覺(jué)識(shí)別算法的可靠性,精度進(jìn)行驗(yàn)證。得到本文設(shè)計(jì)的自主著陸系統(tǒng)很好的滿足固定翼飛機(jī)自主著陸的需求的結(jié)論。
飛行器控制;導(dǎo)航技術(shù);機(jī)器視覺(jué);Adaboost算法;聚類算法;自主著陸
自動(dòng)著陸是固定翼無(wú)人飛行器整個(gè)自動(dòng)飛行過(guò)程中最危險(xiǎn)也是要求最高的過(guò)程。目前無(wú)人飛行器著陸普遍采用基于GPS導(dǎo)航的方式,雖然精度高、使用簡(jiǎn)單[1-2],但信號(hào)易受無(wú)線電信號(hào)的干擾并易丟失。機(jī)器視覺(jué)的迅速發(fā)展為解決這個(gè)問(wèn)題提供了新的途徑。視覺(jué)導(dǎo)航通過(guò)傳感器獲取圖像信息,并通過(guò)圖像處理獲取飛行器的位置信息[3]。目前,很多學(xué)者設(shè)計(jì)的視覺(jué)引導(dǎo)方案都是放在無(wú)人飛行器上,不僅增加了重量,而且因?yàn)閳D像處理能力不強(qiáng),效果并不顯著。
文中針對(duì)固定翼無(wú)人飛行器設(shè)計(jì)并搭建一套路基視覺(jué)引導(dǎo)系統(tǒng),精度適中,成本低[4-5]。
Adaboost算法有較高的識(shí)別準(zhǔn)確度,但是通過(guò)單純的調(diào)節(jié)Adaboost函數(shù)參數(shù)容易因?yàn)轱w行器姿態(tài),方位的變換而產(chǎn)生識(shí)別誤差,同時(shí)在復(fù)雜空域環(huán)境下也不能做到準(zhǔn)確的識(shí)別。所以本文在視覺(jué)算法中通過(guò)使用高斯分布模型和K-means基于距離的聚類算法,很好地提高對(duì)飛行器的識(shí)別精度,為之后的著陸引導(dǎo)做好準(zhǔn)備。
1.1視覺(jué)著陸引導(dǎo)系統(tǒng)
文中設(shè)計(jì)的視覺(jué)著陸引導(dǎo)系統(tǒng)由兩個(gè)圖像跟蹤分系統(tǒng)組成,圖像跟蹤系統(tǒng)由攝像機(jī)和高精度二軸云臺(tái)(PTU)組成并分別置于跑道兩側(cè)[6],如圖1所示,利用圖像跟蹤技術(shù)在圖像中檢測(cè)識(shí)別并跟蹤無(wú)人飛行器,并精確記錄云臺(tái)偏轉(zhuǎn)角度。利用兩云臺(tái)俯仰航向角度及云臺(tái)間的距離,經(jīng)過(guò)幾何關(guān)系解析和三角計(jì)算可確定無(wú)人飛行器的相對(duì)空間位置,然后通過(guò)數(shù)傳將無(wú)人機(jī)的位置信息發(fā)送給無(wú)人飛行器,從而引導(dǎo)無(wú)人飛行器精確著陸。
1.2模型解析
我們假設(shè)地面坐標(biāo)系原點(diǎn)在系統(tǒng)中的某臺(tái)攝像機(jī)鏡頭中心(如左攝像機(jī)),光軸X平行于跑道,Y軸垂直于跑道,Ol和Or是左右攝像機(jī)鏡頭中心,OlOr為系統(tǒng)基線(兩云臺(tái)間的距離)。αl,βl,αr,βr分別代表左右兩側(cè)云臺(tái)的俯仰角和航向角。假設(shè)云臺(tái)在初始位置時(shí),αl=0,αr=0,βl=0,βr=0,順時(shí)針?lè)较蜣D(zhuǎn)動(dòng)為正。P為飛機(jī)所在位置,Q是P在XOY平面的垂向投影,設(shè)QR=h,OlOr=D,俯仰角αl,αr航向角βl,βr可從視覺(jué)著陸引導(dǎo)系統(tǒng)的云臺(tái)中直接獲取。
圖1 視覺(jué)導(dǎo)航系統(tǒng)
2.1AdaBoost算法分析
Adaboost是一種迭代算法[7],其核心思想是通過(guò)是針對(duì)同一訓(xùn)練集訓(xùn)練不同的分類器,通過(guò)這些弱分類器的集合形成一個(gè)新的分類器。同時(shí),由于采取級(jí)聯(lián)結(jié)構(gòu),大多數(shù)負(fù)樣本會(huì)在前面比較簡(jiǎn)單的級(jí)次中被略過(guò),同時(shí)將前一級(jí)被誤識(shí)的負(fù)樣本作為下一級(jí)次負(fù)樣本的訓(xùn)練樣本。完整的Adaboost算法如下:
同時(shí)因?yàn)锳daboost為級(jí)聯(lián)過(guò)程,因此可以認(rèn)為,當(dāng)Adaboost使用的正樣本,負(fù)樣本足夠多的時(shí)候,且有一定數(shù)量的級(jí)聯(lián)結(jié)構(gòu)的情況下,使用Adaboost算法的檢測(cè)錯(cuò)誤率幾乎等于0。
在以往的經(jīng)驗(yàn)中,我們往往是通過(guò)改變Adaboost函數(shù)中的限定參數(shù)來(lái)達(dá)到精確識(shí)別的目的。但這些在實(shí)際工程運(yùn)用中并不現(xiàn)實(shí),因?yàn)椴豢赡芡瓿蓪?duì)所有飛行器的正樣本的采集,也無(wú)法每時(shí)每刻都給出最佳的限定參數(shù)值。
2.2單飛行器AdaBoost算法改進(jìn)
2.3多飛行器算法分析及改進(jìn)
在空域較為復(fù)雜的環(huán)境中,如出現(xiàn)多架無(wú)人飛行器時(shí),只使用Adaboost算法無(wú)法為識(shí)別的準(zhǔn)確度與精度上提供保證。而通過(guò)一種基于距離的聚類算法可以提高在這一復(fù)雜情況下的識(shí)別的準(zhǔn)確度與精度,聚類算法如下:
1)對(duì)于圖像上的m個(gè)特征點(diǎn)Pi(x,y),隨機(jī)取出k個(gè)特征點(diǎn),作為聚類中心點(diǎn)。然后遍歷計(jì)算其余特征點(diǎn)到聚類中心點(diǎn)的距離‖Pi(x,y)-mj(x,y)‖,i∈[1,m],j∈[1,M]。對(duì)于點(diǎn)Pi(x,y)的分類原則找到距離各自最近的聚類中心點(diǎn),將其加入到該聚類中。這樣我們得到最初的聚類結(jié)果,也就是第一次迭代過(guò)程。
2)我們根據(jù)更新后聚類結(jié)果,重新計(jì)算每種聚類中心。之后重新遍歷其余特征點(diǎn)到該聚類中心的距離,根據(jù)其到各聚類中心是否為最短距離重新進(jìn)行分類。
3)之后重復(fù)步驟2),直到收斂。即前后兩次的聚類中心不變或是小于一定值。
同樣假設(shè),如在兩架無(wú)人飛行器的復(fù)雜情況下,用Adaboost的識(shí)別結(jié)果應(yīng)該遵循這樣的分布:在真實(shí)飛機(jī)存在的地方,其被識(shí)別出來(lái)的概率應(yīng)該最大。因此聚類算法流程如圖2所示。
圖2 K-means聚類算法流程圖
視覺(jué)著陸引導(dǎo)控制包括縱向和側(cè)向著陸控制:
當(dāng)視覺(jué)引導(dǎo)系統(tǒng)給出的高度Hs與理想基準(zhǔn)下滑軌跡Hc不一致時(shí),則出現(xiàn)著陸高度偏差Her,經(jīng)引導(dǎo)律計(jì)算處理并發(fā)送給無(wú)人飛行器,通過(guò)飛行控制系統(tǒng)來(lái)控制飛機(jī)的姿態(tài)(△θ),使無(wú)人飛行器飛行高度不斷跟蹤基準(zhǔn)的下滑軌跡Hc,從而完成對(duì)高度的糾偏。
當(dāng)視覺(jué)引導(dǎo)系統(tǒng)測(cè)得無(wú)人飛行器的軌跡相對(duì)于理想軌跡有側(cè)偏,則形成誤差信號(hào)yer,通過(guò)無(wú)人飛行器軌跡控制器[8]計(jì)算得到航向角偏差△φ,無(wú)人飛行器上的側(cè)向飛行控制系統(tǒng)收到該指令后操縱無(wú)人飛行器不斷修正航跡,以最終消除側(cè)偏。
4.1仿真實(shí)驗(yàn)方案
對(duì)于隨機(jī)搜集到的飛機(jī)圖片及降落視頻,使用由相同的正負(fù)樣本所訓(xùn)練出來(lái)的分類器(分類器由597個(gè)正樣品,1 470個(gè)負(fù)樣品訓(xùn)練所得):
1)對(duì)于單飛行器的情況,比較由只使用Adaboost算法的識(shí)別結(jié)果與嵌套使用高斯分布模型之后的Adaboost算法的識(shí)別結(jié)果,并記錄數(shù)據(jù),繪制表格分析;
2)對(duì)于由復(fù)雜空域環(huán)境下的情況(本文中假設(shè)2架飛行器),比較由只使用Adaboost算法的識(shí)別結(jié)果與嵌套使用K-means聚類算法的Adaboost算法的識(shí)別結(jié)果,并記錄數(shù)據(jù),進(jìn)行分析,及提出改進(jìn)意見(jiàn)。
4.2單飛行器的仿真結(jié)果及分析
1)只使用Adaboost的檢測(cè)結(jié)果如圖3所示。
圖3Adaboost檢測(cè)結(jié)果
2)置信水平為0.99,對(duì)于單張圖片的檢測(cè)結(jié)果如圖4所示。
圖4 改進(jìn)Adaboost檢測(cè)結(jié)果
3)只使用Adaboost函數(shù)處理降落視頻檢測(cè)結(jié)果:
組1:參數(shù)設(shè)計(jì)min_neighbor=8;min_size=cvSize(40,40),總幀數(shù):107。如表1所示。
組2:參數(shù)設(shè)計(jì)min_neighbor=15;min_size=cvSize(50,50),總幀數(shù):2173。如表2所示。
表2 組2 Ababoost檢測(cè)結(jié)果
組3:參數(shù)設(shè)計(jì)min_neighbors=8;min_size=cvSize(80,80),總幀數(shù):1109。如表3所示。
表3 組3 Ababoost檢測(cè)結(jié)果
組4:參數(shù)設(shè)計(jì)min_neighbors=2;min_size=cvSize(35,35),總幀數(shù):595。如表4所示。
表4 組4 Ababoost檢測(cè)結(jié)果
4)在置信水平為0.99,改進(jìn)算法處理降落視頻的檢測(cè)結(jié)果,如表5所示。
表5 置信水平0.99降落視頻結(jié)果表
分析:
1)對(duì)于單張圖片,在嵌套使用高斯分布模型之后,Adaboost算法的識(shí)別準(zhǔn)確度得到了明顯的提高。且對(duì)識(shí)別速度的影響并不大,可以滿足飛行系統(tǒng)的要求。
2)通過(guò)分析比較在兩種算法在降落視頻中的識(shí)別正確率,可以認(rèn)為:在沒(méi)有足夠的正負(fù)樣本的情況,通過(guò)假設(shè)在一定條件下所有Adaboost函數(shù)識(shí)別出的飛機(jī)位置的錯(cuò)誤率符合高斯分布模型,并以此來(lái)求解飛機(jī)的坐標(biāo),用這種方法可以大幅的提高Adaboost算法識(shí)別的正確率。
4.3多飛行器的仿真結(jié)果及分析
1)Adaboost多飛行器檢測(cè):
Adaboost檢測(cè)結(jié)果如圖5所示
圖5的參數(shù)設(shè)計(jì):min_neighbors=6;min_size=cvSize(50,50);
圖5Adaboost多飛行器檢測(cè)結(jié)果
K-mean算法檢測(cè)結(jié)果如圖6所示。
圖6K-mean算法檢測(cè)結(jié)果
由實(shí)驗(yàn)結(jié)果分析可知在使用K-means算法對(duì)Adaboost的檢測(cè)結(jié)果進(jìn)行處理之后,可以有效的提高識(shí)別的準(zhǔn)確度,精確度。
2)算法改進(jìn)與提高
但并不是所有的識(shí)別效果都是如此。首先若直接使用Adaboost算法,在不同的情況下,對(duì)應(yīng)的最佳識(shí)別效果的參數(shù)設(shè)計(jì)往往是不同,而我們很難在使用過(guò)程中調(diào)節(jié)函數(shù)中的參數(shù)來(lái)得到我們想要的效果。同樣在使用聚類算法對(duì)Adaboost算法結(jié)果進(jìn)行處理時(shí),因?yàn)檎J(rèn)為每個(gè)樣本分布所占的權(quán)重是一樣,就會(huì)出現(xiàn)識(shí)別的誤差。如圖7中兩架飛機(jī)相對(duì)于攝像頭的距離不一致的時(shí)候,距離較遠(yuǎn)的那架飛機(jī)的特征點(diǎn)會(huì)被距離較近的飛機(jī)的特征點(diǎn)所影響,從而出現(xiàn)差偏。
圖7 雙機(jī)Adaboost算法
對(duì)于這個(gè)問(wèn)題,可以通過(guò)增加Adaboost的訓(xùn)練樣本數(shù)來(lái)提高識(shí)別的準(zhǔn)確度,如圖8中使用的分類器由797個(gè)正樣品,1970個(gè)負(fù)樣品訓(xùn)練所得。如圖8所示,其識(shí)別結(jié)果得到了明顯的改進(jìn)。
圖8 雙機(jī)改進(jìn)Adaboost算法
文中針對(duì)固定翼無(wú)人飛行器在自動(dòng)著陸時(shí)速度快、精度要求高的特點(diǎn),設(shè)計(jì)并搭建了一套基于Adaboost算法的無(wú)人飛行器自動(dòng)著陸引導(dǎo)系統(tǒng)。并通過(guò)高斯分布模型和基于距離的聚類算法有效地提高了視覺(jué)識(shí)別算法的準(zhǔn)確度,精確度。最后通過(guò)仿真實(shí)驗(yàn)對(duì)該算法進(jìn)行了驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,該算法可以為固定翼飛行器的自主著陸提供有效的支持。
[1]Weiwei Kong,Daibing Zhang,Xun Wang.Autonomous Landing of an UAV with a Ground-Based ActuatedInfrared Stereo Vision System.IEEE International Conference on Intelligent Robots and Systems,2013:2963-2970.
[2]吳顯亮,石宗英,鐘宜生.無(wú)人機(jī)視覺(jué)導(dǎo)航研究綜述[J].系統(tǒng)仿真學(xué)報(bào),2010,22(1):62-65.
[3]丁萌,曹云峰.利用計(jì)算機(jī)視覺(jué)獲取無(wú)人機(jī)飛行姿態(tài)角[J].傳感器與微系統(tǒng),2007,26(11):65-68.
[4]于永軍,徐錦法,張梁,等.慣導(dǎo)/雙目視覺(jué)位姿估計(jì)算法研究[J].儀器儀表學(xué)報(bào),2014,35(10):2170-2176.
[5]Madison R W,Andrews G L,DeBitetto P A,et al.Visionaidednavigationforsmalluavsingpschallenged environments[J].The Draper Technology Digest,2008:4.
[6]Weiwei Kong,Dianle Zhou,Yu Zhang.A Ground-Based Optical System for Autonomous Landing of a Fixed Wing UAV[C]11.IEEE International Conference on Intelligent Robots and Systems,2014:4797-4804.
[7]李闖,丁曉青,吳佑壽.一種該進(jìn)的Adaboost算法-AD Adaboost[J].計(jì)算機(jī)學(xué)報(bào),2007,30(1):104-105.
[8]Park S,Deyst J,How J P.A New Nonlinear Guidance Logic for Trajectory Tracking[C]11 Proceedings of the AIAA Guidance,Navigation and Control Conference,2004.
Research on visual algorithm of fixed-wing aircraft automatic landing
XU Kuan,WANG Xin-hua,CAI Jun-hua,WU Sai-fei
(Nanjing University of Aeronautics and Astronautics,Nanjing 211106,China)
Fixed wing unmanned aerial vehicle autonomous landing requires the guidance system with high speed and high precision.This paper designs and builds a set of automatic landing guidance system based on Adaboost algorithm.In this paper,the principle and composition of the visual landing guidance system are introduced,and the mathematical model is analyzed.Secondly,the recognition accuracy of single aircraft and multi aircraft is improved by using Gauss distribution model and distance based algorithm.Finally,the reliability and accuracy of the visual recognition algorithm are verified by simulation experiments.The simulation experiments show that the design of the autonomous landing system is good to meet the needs of the fixed wing aircraft autonomous landing.
control and navigation technology of aerocraft;machine vision;adaboost algorithm;clustering algorithm;autonomous landing
V249.1
A
1674-6236(2016)17-0035-04
2015-09-21稿件編號(hào):201509145
徐寬(1994—),男,浙江紹興人。研究方向:固定翼無(wú)人機(jī)著陸技術(shù)、視覺(jué)導(dǎo)航技術(shù)、飛行控制。