一種無人機視覺定位累積誤差抑制方法與流程
2023-05-08 18:52:41 1

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