本發(fā)明涉及無人機(jī)(unmannedaerialvehicle,uav)中的視覺定位,具體設(shè)計(jì)一種基于歷史訪問信息的無人機(jī)視覺定位累積誤差抑制方法,英文名稱為cumulativeerrorsuppressionmethodbasedonhistoricalvisitinginformation,ces-hvi(b64c27/08有兩個(gè)或多個(gè)旋翼的;h04n1/409誤差的抑制;h04w40/20定位)。
背景技術(shù):
機(jī)器的自動(dòng)化是當(dāng)今時(shí)代的需求。出于安全性、速度、準(zhǔn)確性和精密度的考慮,自主駕駛的車輛、機(jī)器人和自動(dòng)化生產(chǎn)系統(tǒng)的需求量越來越大。無人機(jī)在這一領(lǐng)域具有很長(zhǎng)的研究歷史。無人機(jī)具有隱蔽性好、操作靈活、可適應(yīng)各種惡劣環(huán)境的特點(diǎn),可以最大程度地將人從環(huán)境中解放出來,所以隨著現(xiàn)代科學(xué)技術(shù)的不斷發(fā)展,具有自主導(dǎo)航能力的智能機(jī)器人、無人機(jī)等載體的運(yùn)用得到了廣泛的關(guān)注。2005年8月,美國(guó)國(guó)防部在《無人機(jī)系統(tǒng)發(fā)展圖(2005-2030)》中明確指出將把無人機(jī)作為近30年航空器發(fā)展重點(diǎn)。
視覺定位是通過攝像機(jī)獲取環(huán)境圖像,再經(jīng)過處理器分析計(jì)算得出物體位置的過程。相比激光測(cè)距儀、航跡推算和gps全球定位系統(tǒng)等如今眾多的定位方式,視覺定位不但解決了室內(nèi)定位面臨的無線屏蔽、干擾等不利因素的影響。還更好地解決了諸如激光測(cè)距定位價(jià)格昂貴、航跡推算定位誤差大等一系列定位問題。正是由于算法的諸多優(yōu)點(diǎn),現(xiàn)被廣泛運(yùn)用于無人機(jī)室內(nèi)定位技術(shù)中。美國(guó)愛荷華州立大學(xué)用imu和攝像頭實(shí)現(xiàn)了無人機(jī)在規(guī)則走廊內(nèi)的自主飛行。2010年在德國(guó)國(guó)防部支持下markuskleinert等人成功實(shí)現(xiàn)了單目視覺下的slam和imu數(shù)據(jù)的融合算法,完成了室內(nèi)多處場(chǎng)景全局地圖構(gòu)建;scientificsystemscompany的jeffreybyrne提出了利用圖像特征點(diǎn)在視野內(nèi)擴(kuò)張速度結(jié)合慣導(dǎo)數(shù)據(jù)估計(jì)障礙物距離的方法,并在2010年將視覺技術(shù)成功地運(yùn)用在了無gps的無人機(jī)樓宇間的飛行中。
但視覺定位技術(shù)也有其一定的缺陷,由于視覺定位是利用上一時(shí)刻的位置計(jì)算結(jié)果去估算下一時(shí)刻的位置,長(zhǎng)時(shí)間的飛行會(huì)導(dǎo)致無人機(jī)視覺定位誤差的累積,累積的誤差嚴(yán)重了影響了無人機(jī)視覺定位的效果,如今如何抑制累積誤差成了無人機(jī)視覺定位系統(tǒng)中的關(guān)鍵問題。部分研究者試圖通過抑制單次定位誤差來獲得好的定位效果。文獻(xiàn)[1]中南京理工大學(xué)通過建立誤差矩陣模型進(jìn)行參數(shù)補(bǔ)償,從而提高定位精度。文獻(xiàn)[2]中四川大學(xué)制造科學(xué)與工程學(xué)院提出一種基于模型控制方法和基于智能計(jì)算方法相結(jié)合的方法,該方法有利于提高機(jī)器人的視覺定位精度。文獻(xiàn)[3]中科院自動(dòng)化研究所得到攝像機(jī)的內(nèi)部參數(shù)隨機(jī)器人位置的變化關(guān)系,使機(jī)器人在粗定位的基礎(chǔ)上,自動(dòng)地調(diào)節(jié)攝像頭的內(nèi)參,補(bǔ)償定位誤差提高定位精度。不同于以上通過誤差補(bǔ)償提高定位精度的思路,另一種解決方案直接針對(duì)累積誤差本身的抑制問題,文獻(xiàn)[4-5]提出在飛行過程中設(shè)置坐標(biāo)已知的路標(biāo),從而糾正累積定位誤差。文獻(xiàn)[4]中劉振宇設(shè)計(jì)了一種可擴(kuò)展的彩色人工路標(biāo),并給出路標(biāo)的編碼方法減少了定位的累積誤差。文獻(xiàn)[5]浙江大學(xué)陳明芽提出單目視覺自然路標(biāo)輔助的移動(dòng)機(jī)器人定位方法,在gps受限情況下提高了慣性導(dǎo)航定位的精度和魯棒性。
綜合現(xiàn)有的視覺定位累積誤差抑制方法,誤差補(bǔ)償雖從一定程度上減少了累積誤差的影響,但是對(duì)于不同的視覺定位系統(tǒng),固定的誤差補(bǔ)償方法不具有一定的通用性,而且誤差補(bǔ)償需提前建立視覺定位模型,從視覺定位模型中得出誤差模型,再進(jìn)行誤差補(bǔ)償。這樣的誤差補(bǔ)償不能夠很好的適應(yīng)無人機(jī)的需求。建立已知路標(biāo)庫(kù)的方法,就是在無人機(jī)飛行過程中通過識(shí)別已知坐標(biāo)的路標(biāo),從而達(dá)到抑制累積誤差的效果,該方法在很大程度上抑制了累積誤差,卻很難運(yùn)用到未知環(huán)境中去。該方法需要提前設(shè)置路標(biāo)庫(kù),一旦無人機(jī)進(jìn)入未提前設(shè)置路標(biāo)庫(kù)的區(qū)域內(nèi),該方法將完全不適用,并且當(dāng)在新的環(huán)境中使用該累積誤差抑制方法時(shí),需要提前設(shè)置大量路標(biāo),這必將損耗大量的人力物力。
對(duì)比文件
[1]liuyouwu,zhangqingetc.thecompensativetechniqueofpositioningerrorsforncmachinetools[j].internationalconferenceonintelligentmanufacturing.wuhan,1995:843-846.
[2]尹湘云,殷國(guó)富,胡曉兵,等.基于支持矢量機(jī)回歸的機(jī)器人視覺系統(tǒng)定位精度[j].機(jī)械工程學(xué)報(bào),2011,47(1):48-54.
[3]李新征,易建強(qiáng),趙冬斌.基于視覺的機(jī)器人定位精度提高方法[j].計(jì)算機(jī)測(cè)量與控制,2005,13(6):545-547.
[4]劉振宇,姜楠,張令濤.基于人工路標(biāo)和立體視覺的移動(dòng)機(jī)器人自定位[j].計(jì)算機(jī)工程與應(yīng)用,2010,46(9):190-192.
[5]陳明芽,項(xiàng)志宇,劉濟(jì)林.單目視覺自然路標(biāo)輔助的移動(dòng)機(jī)器人定位方法[j].浙江大學(xué)學(xué)報(bào)工學(xué)版,2014(2):285-291.
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種無人機(jī)視覺定位累積誤差抑制方法,以有效抑制全局累積誤差。
為了解決以上技術(shù)問題,本發(fā)明采用的具體技術(shù)方案如下:
一種無人機(jī)視覺定位累積誤差抑制方法,其特征在于:針對(duì)具備雙攝像頭的小型無人機(jī),先利用當(dāng)前捕獲的圖像信息對(duì)自身位置進(jìn)行估算,估算出初始坐標(biāo),再以估算的初始坐標(biāo)為圓心作圓,將圓內(nèi)具有高圖像特征點(diǎn)匹配率的歷史訪問點(diǎn)集定義為可信空間,進(jìn)而利用可信空間中可信歷史訪問點(diǎn)的圖像信息進(jìn)行定位結(jié)果優(yōu)化;用當(dāng)前捕獲的圖像與各可信歷史訪問點(diǎn)的圖像信息,結(jié)合各可信歷史訪問點(diǎn)的已知坐標(biāo),逐一計(jì)算兩點(diǎn)之間的相對(duì)旋轉(zhuǎn)量與位移量,并以圖像特征點(diǎn)匹配率作為權(quán)重進(jìn)行加權(quán),最終得到優(yōu)化定位結(jié)果,即tm時(shí)刻無人機(jī)位置坐標(biāo)
tm時(shí)刻無人機(jī)位置坐標(biāo)
步驟一、計(jì)算初始坐標(biāo)
已知tm-1時(shí)刻無人機(jī)在地面坐標(biāo)系下的坐標(biāo)為
step1:獲取tm-1時(shí)刻的左右圖像
step2:獲取tm時(shí)刻的左右圖像
step3:利用tm-1時(shí)刻存儲(chǔ)的匹配特征點(diǎn)信息對(duì)tm時(shí)刻的匹配特征點(diǎn)進(jìn)行特征點(diǎn)追蹤,得到的追蹤特征點(diǎn)個(gè)數(shù)為
經(jīng)過以上的步驟便可以得出tm時(shí)刻無人機(jī)在地面坐標(biāo)系下的初始坐標(biāo)
步驟二、可信空間構(gòu)建
以步驟一計(jì)算出的初始坐標(biāo)
所述圖像特征點(diǎn)匹配率定義為:假設(shè)nti為ti時(shí)刻由左、右攝像頭圖像計(jì)算出的匹配特征點(diǎn)個(gè)數(shù),同時(shí)建立并存儲(chǔ)ti時(shí)刻特征點(diǎn)的描述算子,在tj時(shí)刻由左、右攝像頭圖像計(jì)算出的匹配特征點(diǎn)中追蹤ti時(shí)刻的匹配特征點(diǎn),假設(shè)追蹤到的匹配特征點(diǎn)個(gè)數(shù)為
式1中,λ表示可信空間范圍大小;δ為圖像特征點(diǎn)匹配率閾值;
步驟三、當(dāng)前位置與可信歷史點(diǎn)的相對(duì)旋轉(zhuǎn)量與位移量計(jì)算
利用hp(k)時(shí)刻所存儲(chǔ)可信歷史訪問點(diǎn)的圖像匹配特征點(diǎn)信息,結(jié)合tm時(shí)刻提取的圖像匹配特征點(diǎn)信息,重新計(jì)算
步驟四、得出優(yōu)化定位結(jié)果
利用匹配率,按公式(2)進(jìn)行定位結(jié)果的優(yōu)化,并以優(yōu)化結(jié)果作為最終坐標(biāo)輸出;
式(2)中,
所述可信空間構(gòu)建中,可信空間范圍大小λ、圖像特征點(diǎn)匹配率閾值δ,可按照下表給出的不同無人機(jī)飛行速度和攝像頭幀率條件下的參考值進(jìn)行設(shè)置。
本發(fā)明具有有益效果?,F(xiàn)有的視覺定位累積誤差抑制方法,誤差補(bǔ)償對(duì)于不同的視覺定位系統(tǒng),固定的誤差補(bǔ)償方法不具有一定的通用性,而且誤差補(bǔ)償需提前建立視覺定位模型,這樣的誤差補(bǔ)償不能夠很好的適應(yīng)無人機(jī)的需求。建立已知路標(biāo)庫(kù)的方法在很大程度上抑制了累積誤差,但是卻很難運(yùn)用到未知環(huán)境中去。本發(fā)明針對(duì)建立路標(biāo)庫(kù)的方法進(jìn)行改進(jìn),針對(duì)小型無人機(jī)常見的室內(nèi)巡航場(chǎng)景,利用可信歷史訪問點(diǎn)作為已知路標(biāo),不需要提前建立路標(biāo)庫(kù),能夠更好地適應(yīng)未知環(huán)境,同時(shí)可以有效抑制全局累積誤差。
附圖說明
圖1為本發(fā)明實(shí)施示例圖,取點(diǎn)25為例示意;
圖2為本發(fā)明預(yù)設(shè)軌跡、未優(yōu)化原始算法軌跡和ces-hvi方法軌跡對(duì)比圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步詳細(xì)說明。
設(shè)定實(shí)驗(yàn)的無人機(jī)飛行路線如圖2中預(yù)設(shè)軌跡所示,無人機(jī)未優(yōu)化原始定位計(jì)算的軌跡和ces-hvi方法軌跡也如圖2所示,實(shí)施的定位過程如下所示:
步驟1.確定可信歷史訪問點(diǎn)的選取條件
鑒于飛行實(shí)驗(yàn)中無人機(jī)飛行速度為60cm/s、攝像頭的幀率為50幀/s,根據(jù)本發(fā)明權(quán)利要求第二點(diǎn)中給出的參考數(shù)據(jù),將λ取200cm,δ取0.25。
下面使用圖1中從(0,0)開始的第25個(gè)點(diǎn)為例,說明ces-hvi方法的具體步驟。其中25號(hào)點(diǎn)的預(yù)設(shè)坐標(biāo)為(478,102)。
步驟2.實(shí)施ces-hvi方法
step1.在25號(hào)點(diǎn)的位置獲取左右攝像頭圖像,結(jié)合24號(hào)點(diǎn)獲取的左右攝像頭圖像,計(jì)算兩點(diǎn)間中無人機(jī)飛行的相對(duì)旋轉(zhuǎn)量與偏移量,得出25號(hào)位置的坐標(biāo)為(557,111)。
step2.根據(jù)已確定的λ取值200cm,在距離坐標(biāo)(557,111)半徑為200cm的范圍內(nèi)尋找歷史訪問點(diǎn)。
step3.在步驟2找到的歷史點(diǎn)中,根據(jù)已確定的特征點(diǎn)匹配率閾值δ=0.25,排除掉特征點(diǎn)匹配率小于0.25的歷史點(diǎn),將剩下的點(diǎn)放到集合hp中,稱之為可信歷史訪問點(diǎn)集。其中集合中可信歷史訪問點(diǎn)分別是點(diǎn)5,點(diǎn)6,點(diǎn)7,點(diǎn)23和點(diǎn)24,同時(shí)這五個(gè)位置點(diǎn)圖片信息與點(diǎn)25圖片信息計(jì)算出的特征點(diǎn)匹配率分別為0.58,0.81,0.55,0.53,0.61。
step4.分別利用點(diǎn)5,點(diǎn)6,點(diǎn)7,點(diǎn)23和點(diǎn)24圖片信息與點(diǎn)25圖片信息直接計(jì)算點(diǎn)25的坐標(biāo)分別為(487,102),(490,102),(491,102),(540,107)和(557,111)。
step5.利用公式
得到的最終坐標(biāo)為(511,104),比未經(jīng)優(yōu)化的計(jì)算坐標(biāo)(557,111)更加接近預(yù)設(shè)坐標(biāo)(478,102),可以明顯看出ces-hvi優(yōu)化算法對(duì)于累積誤差的改善。