一種無人機實時在線地圖生成方法
【專利摘要】本發(fā)明提出一種無人機實時在線地圖生成方法,在無人機上實現(xiàn)地圖實時在線重建,然后將重建好的地圖通過高帶寬數(shù)據(jù)傳輸鏈路傳回地面,應用于無人機實時地獲得其周圍環(huán)境的三維地圖以及實現(xiàn)對自身的定位。通過本發(fā)明,無人機能夠在未知空域飛行,在自身位置不確定的條件下,通過對環(huán)境信息的探測和比較,對環(huán)境的特征信息的提取和匹配,來獲取自身的定位以及進行三維地圖的構建。本發(fā)明可應用于戰(zhàn)場需求(如無人機自主飛行、攻擊);火災/地震/洪水等災害應急救援;無人機治安管理監(jiān)控等。本方法與現(xiàn)有方法相比,無論是位置漂移量、角度漂移量還是絕對誤差都處于中上水平,本方法獲取環(huán)境較多信息,而且與全稠密的方法相比,本方法的實驗精度依然能夠達到使用標準,而且能夠直接在CPU上運行,實時性好。
【專利說明】
一種無人機實時在線地圖生成方法
技術領域
[0001] 本發(fā)明涉及計算機圖像處理與地圖測繪領域,具體為一種無人機實時在線地圖生 成方法,通過對無人機和地面站傳輸內(nèi)容方式的改變,實現(xiàn)了無人機實時在線地圖生成。
【背景技術】
[0002] 傳統(tǒng)的測繪技術將地面的特征點和界線通過測量手段(比如利用遙感、激光、超聲 波等)獲得反映地面現(xiàn)狀的圖形和位置信息。傳統(tǒng)的測繪技術對于傳感器要求較高,雖然其 測繪精度高,但是高成本和從信息采集到得出結果所需的時間長制約了傳統(tǒng)測繪在一些場 合(例如對時效性要求比較高)的應用。
[0003] 基于計算機視覺的SLAM(Simultaneous Localization and Mapping),即同時定 位與地圖構建,由于其重要的理論與應用價值,一直以來都是學者研究的熱點。但目前三維 重建的方式是無人機機載相機拍攝到的圖像通過高清圖傳傳給地面電腦,地面電腦對拍攝 到的圖像進行三維重建。這種方法存在著很大的不足:
[0004] 1、圖像大量重復、冗余;
[0005] 2、傳輸速度很大,導致傳輸距離小,圖像傳回地面站很難;
[0006] 3、傳輸信號易受干擾。
[0007] 4、不能使飛機做決策、自動飛行。
【發(fā)明內(nèi)容】
[0008] 為解決現(xiàn)有技術存在的問題,本發(fā)明提出了一種無人機實時在線地圖生成方法, 在無人機上實現(xiàn)地圖實時在線重建,然后將重建好的地圖通過高帶寬數(shù)據(jù)傳輸鏈路傳回地 面。
[0009] 本發(fā)明的硬件實現(xiàn)主要分為兩大部分,第一部分是天空端,主要裝置是將微小型 計算機安置在無人機上,無人機直接搭載USB相機。在無人機在飛行過程中,通過USB相機進 行圖像信息采集,直接將數(shù)據(jù)給微小型計算機,微小型計算機對所采集到的圖像信息進行 地圖重建,在飛行過程中由飛行控制器為微小型計算機的圖像處理軟件提供GPS,并且將其 傳給DDL圖傳;第二部分是地面端,天空端和地面端的信息傳遞主要是通過DDL圖傳實現(xiàn)。
[0010] 在整個過程中,微小型計算機與飛控系統(tǒng)利用串口進行信息傳遞。主要是用USB轉 UART將飛控的GPS信息傳給微小型計算機。飛控系統(tǒng)和微小型計算機的信息會實時的通過 DDL圖傳傳給地面的DDL圖傳。
[0011] 在天空端,無人機要對采集到的數(shù)據(jù)信息進行處理以實時地獲取自身姿態(tài)和三維 環(huán)境的地圖,主要由以下步驟實現(xiàn):
[0012] 步驟1:采集圖像
[0013]無人機機載相機采集到一系列圖像,并將圖像傳遞給無人機載的微小型計算機;
[0014]步驟2:無人機載的微小型計算機對相機獲取的第一幀圖像進行處理得到初始化 地圖:
[0015] 步驟2.1:對第一幀圖像進行去畸變處理,得到去畸變后的第一幀圖像;
[0016] 步驟2.2:對去畸變后的第一幀圖像進行深度初始化:根據(jù)設定的灰度梯度閾值, 篩選出去畸變后的第一幀圖像中灰度梯度大于灰度梯度閾值的像素點,并賦予所篩選出的 像素點隨機深度值;
[0017] 步驟2.3:根據(jù)無人機機載相機參數(shù)將步驟2.2中賦予深度值的像素點反投影回三 維環(huán)境,得到初始化后的地圖;
[0018] 步驟2.4:將去畸變后的第一幀圖像設置為關鍵幀;
[0019] 步驟3:對無人機機載相機實時獲得的第i幀圖像進行如下處理,i = 2,3,4……:
[0020] 步驟3.1:對第i幀圖像進行去畸變處理,得到去畸變后的第i幀圖像;
[0021] 步驟3.2:以當前關鍵幀為基準,進行去畸變后的第i幀圖像與基準的圖像對齊操 作,得到第i幀到當前關鍵幀的位姿變化;
[0022] 步驟3.3:根據(jù)當前關鍵幀對應的相機姿態(tài),以及步驟3.2得到的第i幀到當前關鍵 幀的位姿變化,得到第i幀對應的相機姿態(tài)和相機在局部坐標下的位置;
[0023] 步驟3.4:根據(jù)設定的灰度梯度閾值,篩選出去畸變后的第i幀圖像中灰度梯度大 于灰度梯度閾值的像素點,并根據(jù)相機參數(shù)和步驟3.3得到的第i幀對應的相機姿態(tài),將篩 選出的像素點反投影回三維環(huán)境,得到所篩選出的像素點深度值;并將所篩選出的帶有深 度值的像素點加入地圖中;
[0024] 步驟3.5:若步驟3.2得到的第i幀到當前關鍵幀的位姿變化大于設定的位姿變化 閾值,則用第i幀代替當前關鍵幀作為新的關鍵幀。
[0025] 步驟4:當預設幀數(shù)的無人機機載相機實時獲得的圖像處理完成后,無人機載的微 小型計算機將生成的地圖通過無人機載的DDL圖傳傳給地面端顯示。
[0026] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:
[0027] 提取并存儲每一個關鍵幀圖像中的特征點;
[0028] 若步驟3.2中圖像對齊操作無法實現(xiàn),則進行失敗重建:
[0029]提取去畸變后的當前幀圖像的特征點,將當前幀的特征點與存儲的每一個關鍵幀 圖像中的特征點進行匹配,尋找成功匹配特征點個數(shù)最多的關鍵幀,若該關鍵幀中成功匹 配特征點的個數(shù)占該關鍵幀中特征點總數(shù)的比例不大于40%,則以當前幀作為第一幀,返 回步驟2;否則以該關鍵幀作為為基準,進行去畸變后的當前幀圖像與基準的圖像對齊操 作,得到當前幀到當前關鍵幀的位姿變化;
[0030]根據(jù)基準對應的相機姿態(tài),以及當前幀到當前關鍵幀的位姿變化,得到當前幀對 應的相機姿態(tài);
[0031 ]根據(jù)設定的灰度梯度閾值,篩選出去畸變后的當前幀圖像中灰度梯度大于灰度梯 度閾值的像素點,并根據(jù)相機參數(shù)和當前幀對應的相機姿態(tài),將篩選出的像素點反投影回 三維環(huán)境,得到所篩選出的像素點深度值;并將所篩選出的帶有深度值的像素點加入地圖 中;而后繼續(xù)按照步驟3進行。
[0032] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:采用快 速角點檢測方法提取特征點。
[0033] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:步驟 3.4中,將所篩選出的帶有深度值的像素點加入地圖的過程中,若某一像素點反投影后,在 地圖中對應的三維點的鄰域內(nèi),已存在有地圖三維點,則將該像素點反投影后在地圖中對 應的三維點,以及三維點鄰域內(nèi)的已存在的地圖三維點去除,并將該像素點反投影后在地 圖中對應的三維點,與三維點鄰域內(nèi)的已存在的地圖三維點的加權平均點加入地圖中。
[0034] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:步驟 3.5中,若步驟3.2得到的第i幀到當前關鍵幀的位姿變化大于設定的位姿變化閾值,且第i 幀與當前關鍵幀的幀數(shù)差不小于15幀,則用第i幀代替當前關鍵幀作為新的關鍵幀。
[0035] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:步驟 3.2中的圖像對齊操作采用以下過程:
[0036]先設定第i幀到當前關鍵幀的位姿變化的初始值;根據(jù)第i幀到當前關鍵幀的位姿 變化,將當前關鍵幀中篩選出的灰度梯度大于灰度梯度閾值的像素點反投影到三維環(huán)境, 再從三維環(huán)境投影到去畸變后的第i幀圖像上,得到投影點;并在去畸變后的第i幀圖像上 找到,當前關鍵幀中篩選出的灰度梯度大于灰度梯度閾值的像素點的對應點;計算投影點 與對應點的光度值殘差和;迭代變化第i幀到當前關鍵幀的位姿變化,使光度值殘差和最 小。
[0037] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:采用第 i_l幀到當前關鍵幀的位姿變化作為第i幀到當前關鍵幀的位姿變化的初始值。
[0038] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:步驟 3.4中,得到所篩選出的像素點深度值后;采用圖優(yōu)化方法對第i幀對應的相機在局部坐標 下的位置,以及所篩選出的帶有深度值的像素點位置進行優(yōu)化,將優(yōu)化后的帶有深度值的 像素點加入地圖中。
[0039] 進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:將重建 后的地圖轉換到世界坐標系下:
[0040] 在無人機實時地圖重建過程中,通過衛(wèi)星定位信號獲得每一幀時刻下,無人機在 世界坐標系下的軌跡信息Xn,n表示的是第η幀;并在無人機實時地圖重建過程中,得到每一 幀對應的相機在局部坐標系下的位置 Χη;通過優(yōu)化函數(shù) Ν
[0041 ] arg min ^ 0-(χ;, S) - Xt,): ?· ni=i
[0042]得到優(yōu)化函數(shù)取最小值對應的變換矩陣δ,其中N為無人機實時地圖重建過程中的 總幀數(shù),Τ(χη,δ)表示從局部坐標系到世界坐標系的投影轉換函數(shù),δ為從局部坐標系到世 界坐標系的變換矩陣;根據(jù)得到的變換矩陣S對應的投影轉換函數(shù),將重建得到的地圖轉換 到世界坐標系下。
[0043]進一步的優(yōu)選方案,所述一種無人機實時在線地圖生成方法,其特征在于:當衛(wèi)星 定位信號頻率小于幀頻時,對于每一個衛(wèi)星定位信號采集時刻^,得到無人機在世界坐標 系下的軌跡信息Χη;并用采集時刻tn前后各一幀對應的相機在局部坐標系下的位置插值得 到采集時刻^下相機在局部坐標系下的位置 Xn;通過優(yōu)化函數(shù)
[0044] arg m i η [ 0-( .? - Z")2
[0045] 得到優(yōu)化函數(shù)取最小值對應的變換矩陣δ,其中Ν為衛(wèi)星定位信號的總采集點數(shù),Τ (Xn,S)表示從局部坐標系到世界坐標系的投影轉換函數(shù)J為從局部坐標系到世界坐標系 的變換矩陣;根據(jù)得到的變換矩陣δ對應的投影轉換函數(shù),將重建得到的地圖轉換到世界坐 標系下。
[0046] 有益效果
[0047] 本發(fā)明提出的方法與諸多現(xiàn)有方法相比,無論是位置漂移量、角度漂移量還是絕 對誤差都處于中上水平,本方法獲取環(huán)境較多信息,而且與全稠密的方法相比,本方法的實 驗精度依然能夠達到使用標準,而且能夠直接在CHJ上運行,不用要求GPU,實時性好。
[0048] 而且,本發(fā)明采用在無人機上實時在線地圖生成方式,圖像信息傳遞更易實現(xiàn),減 小了數(shù)據(jù)量的儲存,以及傳輸?shù)男畔⒘?,具體而言是:1、沒有大量重復、冗余的圖片傳輸回 來;2、傳輸信息量小,使得傳輸速率小,傳輸距離遠;3、在無人機飛行時進行地圖實時重建, 可以讓飛機做出決策、自動飛行,可以用于壁障、路徑規(guī)劃等。
[0049] 本發(fā)明的附加方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變 得明顯,或通過本發(fā)明的實踐了解到。
【附圖說明】
[0050] 本發(fā)明的上述和/或附加的方面和優(yōu)點從結合下面附圖對實施例的描述中將變得 明顯和容易理解,其中:
[0051] 圖1:三角化投影確定像素深度示意圖;
[0052] 圖2:直接圖像對齊方法不意圖;
[0053]圖3:失敗重建示意圖;
[0054]圖4:圖優(yōu)化方法示意圖;
[0055] 圖5:擬合衛(wèi)星導航數(shù)據(jù)示意圖;
[0056] 圖6:相機獲取的一幀原始圖像;
[0057]圖7:實時重建的三維點云圖;
[0058]圖8:使用無人機在線實時重建的地圖;
[0059]圖9:拼接后的地圖;
[0060]圖10:無人機在線實時地圖重建系統(tǒng)天空端示意圖;
[0061 ]圖11:無人機在線實時地圖重建系統(tǒng)地面端示意圖。
【具體實施方式】
[0062] 下面詳細描述本發(fā)明的實施例,所述實施例是示例性的,旨在用于解釋本發(fā)明,而 不能理解為對本發(fā)明的限制。
[0063] 本實施例的硬件實現(xiàn)主要分為兩大部分,第一部分在天空端進行,如圖10所示,第 二部分在地面端進行,如圖11所示。
[0064] 在整個過程中,機載微小型計算機與飛控系統(tǒng)利用USB-UART進行信息傳遞。主要 是用USB-UART將飛控的GPS信息傳給機載微小型計算機。飛控系統(tǒng)和機載微小型計算機的 信息會實時的通過機載DDL圖傳傳給地面端顯示。
[0065] 本實施例的具體實施例步驟如下:
[0066] 在天空端的任務是在飛行過程中進行實時地圖的重建:
[0067]步驟1:采集圖像
[0068] 無人機機載相機采集到一系列圖像,并將圖像通過USB2.0或者USB3.0傳遞給無人 機載的微小型計算機;這樣的傳輸方式比遠程傳輸要快很多。
[0069] 步驟2:無人機載的微小型計算機對相機獲取的第一幀圖像進行處理得到初始化 地圖:
[0070] 步驟2.1:用事先獲取的標定數(shù)據(jù)對第一幀圖像進行去畸變處理,得到去畸變后的 第一幀圖像,用于后續(xù)處理。
[0071] 步驟2.2:對去畸變后的第一幀圖像進行深度初始化:根據(jù)設定的灰度梯度閾值, 篩選出去畸變后的第一幀圖像中灰度梯度大于灰度梯度閾值的像素點,并賦予所篩選出的 像素點隨機深度值;這樣的隨機處理并不會影響后面的重建精度,因為通過幾十幀的處理 后,深度地圖會逐漸趨近于一個準確的模型。
[0072] 步驟2.3:根據(jù)相機參數(shù)將步驟2.2中賦予深度值的像素點反投影回三維環(huán)境,得 到初始化后的地圖.
[0073]步驟2.4:將去畸變后的第一幀圖像設置為關鍵幀;提取并存儲關鍵幀中的特征 點。對于特征點檢測的方法有:① SIFT、②SURF、③fast-corner(快速角點檢測:通過高斯過 濾,再角點檢測)等,由于本發(fā)明旨在應用于實時生成環(huán)境三維地圖,程序注重實時性,而前 兩種雖然精度高、效果好,但是其所需要的時間很長,不適合實時運行的情形,因此本步驟 以及后續(xù)步驟中都采用fast-corner來檢測特征點。
[0074]步驟3:對相機實時獲得的第i幀圖像進行如下處理,i = 2,3,4……:
[0075]步驟3.1:對第i幀圖像進行去畸變處理,得到去畸變后的第i幀圖像。
[0076] 步驟3.2:當?shù)趇幀圖像數(shù)據(jù)加載進來后,系統(tǒng)以當前關鍵幀為基準(即跟蹤基礎), 進行去畸變后的第i幀圖像與基準的圖像對齊操作,得到第i幀到當前關鍵幀的位姿變化。
[0077] 由于幀率較高,相鄰幀的差別(時間、空間)不是很大,在此假設在兩幀這么小的時 間間隔內(nèi),同一個像素的光度值不發(fā)生改變(變化很小,忽略不計)。本文直接通過比較兩幅 圖像的光度值,通過最小化光度誤差獲得兩幀間的位姿變化,即完成圖像對齊操作:
[0078]先設定第i幀到當前關鍵幀的位姿變化的初始值。
[0079]根據(jù)第i幀到當前關鍵幀的位姿變化,將當前關鍵幀中篩選出的灰度梯度大于灰 度梯度閾值的像素點反投影到三維環(huán)境,再從三維環(huán)境投影到去畸變后的第i幀圖像上,得 到投影點;并在去畸變后的第i幀圖像上找到,當前關鍵幀中篩選出的灰度梯度大于灰度梯 度閾值的像素點的對應點;計算投影點與對應點的光度值殘差和;迭代變化第i幀到當前關 鍵幀的位姿變化,使光度值殘差和最小。
[0080] 由于幀率較高,導致了兩幀間的位姿變化量在一個小區(qū)域內(nèi)是近似不變的,因此 可以采用第i_l幀到當前關鍵幀的位姿變化作為第i幀到當前關鍵幀的位姿變化的初始值。
[0081] 利用相機的參數(shù)矩陣將像素點反投影到三維環(huán)境中是為了通過三角化,算出當前 幀(即第i幀)與當前關鍵幀的姿態(tài)變化,即SE(3)變換:SE(3)是一個4 X 4的矩陣,表示位置 和姿態(tài)變化(在相機投影方程中又稱為外參矩陣):
[0083]這個矩陣主要分為兩大部分,其中從aoo到a22為S0(3),表示三維空間中姿態(tài)(角 度)的變化,從To到T2表示位置的變化,即(x,y,z)的變化量。SHO由SE(3)加上Scale參數(shù)組 成,S0(3)*s即可將SE(3)變成sno:
[0085] s表示Scale參數(shù),用于仿射變換。
[0086] 步驟3.3:根據(jù)當前關鍵幀對應的相機姿態(tài),以及步驟3.2得到的第i幀到當前關鍵 幀的位姿變化,得到第i幀對應的相機姿態(tài)和相機在局部坐標下的位置。
[0087] 步驟3.4:根據(jù)設定的灰度梯度閾值,篩選出去畸變后的第i幀圖像中灰度梯度大 于灰度梯度閾值的像素點,并根據(jù)相機參數(shù)和步驟3.3得到的第i幀對應的相機姿態(tài),將篩 選出的像素點反投影回三維環(huán)境,得到所篩選出的像素點深度值;并將所篩選出的帶有深 度值的像素點加入地圖中。
[0088] 由于目前整套系統(tǒng)前后依賴性強,為了減小來自傳感器的誤差對最終結果的影 響,矯正每一步的位姿,這里采用圖優(yōu)化方法對第i幀對應的相機在局部坐標下的位置,以 及所篩選出的帶有深度值的像素點位置進行優(yōu)化,將優(yōu)化后的帶有深度值的像素點加入地 圖中。公知的圖優(yōu)化方法公式為:
[0089] arg min ^ ek {xk, zA )T , z,) xk.
[0090] Xk表示前面定義的節(jié)點(也可以理解為狀態(tài)),Zk表示邊(也可以理解為約束),e k表 示這些節(jié)點滿足約束的狀態(tài)(如果沒有噪聲及e3k=〇),Qk表示引入的信息矩陣,及約束的置 信度,如果誤差大則它對應的置信度就小。定義完變量之后,我們要做的就是使整個誤差函 數(shù)降到最小,以達到全局最優(yōu)的目的。在本方法中我們將地圖點的三維位置和無人機的位 姿定義為節(jié)點,將從圖像到地圖點的投影關系和相鄰兩幀之間的SE(3)的變化定義為邊,信 息矩陣包含兩方面:地圖點的被關鍵幀觀測次數(shù)和圖像中點的灰度梯度。
[0091] 此外在步驟3.4中,將所篩選出的帶有深度值的像素點加入地圖的過程中,若某一 像素點反投影后,在地圖中對應的三維點的鄰域(設定的某一小值)內(nèi),已存在有地圖三維 點,則將該像素點反投影后在地圖中對應的三維點,以及三維點鄰域內(nèi)的已存在的地圖三 維點去除,并將該像素點反投影后在地圖中對應的三維點,與三維點鄰域內(nèi)的已存在的地 圖三維點的加權平均點加入地圖中。
[0092] 步驟3.5:若步驟3.2得到的第i幀到當前關鍵幀的位姿變化大于設定的位姿變化 閾值,則用第i幀代替當前關鍵幀作為新的關鍵幀。本實施例,為了提高運算速率,降低存儲 的數(shù)據(jù)量,這里要求若步驟3.2得到的第i幀到當前關鍵幀的位姿變化大于設定的位姿變化 閾值,且第i幀與當前關鍵幀的幀數(shù)差不小于15幀,則用第i幀代替當前關鍵幀作為新的關 鍵幀。
[0093] 關鍵幀的設立是由于其具有的位姿相對于前一個關鍵幀變化較大,其探測到的三 維環(huán)境信息相比較于之前的關鍵幀有較大不同,因此將其設為一個標尺,用于擴展全局地 圖和檢測后續(xù)的幀是否有較大的位姿變化。
[0094] 在跟蹤過程中,如果產(chǎn)生"丟幀"現(xiàn)象(可能的原因有:相機移動過快,導致當前幀 與當前的關鍵幀的"差距"過大,無法在當前的關鍵幀上進行跟蹤,如果這時不進行處理將 導致前后創(chuàng)建的兩個地圖間沒有一個緊密的"聯(lián)系",讓之前的所有工作失去意義),所以判 斷若步驟3.2中圖像對齊操作無法實現(xiàn),則進行失敗重建:
[0095] 提取去畸變后的當前幀圖像的特征點,將當前幀的特征點與存儲的每一個關鍵幀 圖像中的特征點進行匹配,尋找成功匹配特征點個數(shù)最多的關鍵幀,若該關鍵幀中成功匹 配特征點的個數(shù)占該關鍵幀中特征點總數(shù)的比例不大于40%,則以當前幀作為第一幀,返 回步驟2;否則以該關鍵幀作為為基準,進行去畸變后的當前幀圖像與基準的圖像對齊操 作,得到當前幀到當前關鍵幀的位姿變化;
[0096] 根據(jù)基準對應的相機姿態(tài),以及當前幀到當前關鍵幀的位姿變化,得到當前幀對 應的相機姿態(tài);
[0097] 根據(jù)設定的灰度梯度閾值,篩選出去畸變后的當前幀圖像中灰度梯度大于灰度梯 度閾值的像素點,并根據(jù)相機參數(shù)和當前幀對應的相機姿態(tài),將篩選出的像素點反投影回 三維環(huán)境,得到所篩選出的像素點深度值;并將所篩選出的帶有深度值的像素點加入地圖 中;而后繼續(xù)按照步驟3進行。
[0098]由于上述重建出來的三維環(huán)境是基于局部坐標系下的,與真實三維環(huán)境在統(tǒng)一的 尺度上不匹配,為了能夠更好的應用重建地圖,所以下面基于衛(wèi)星定位信號進行擬合,將重 建出來的三維環(huán)境在統(tǒng)一的尺度下匹配到真實三維環(huán)境中。
[0099]在無人機實時地圖重建過程中,通過衛(wèi)星定位信號獲得每一幀時刻下,無人機在 世界坐標系下的軌跡信息Xn,n表示的是第η幀;并在無人機實時地圖重建過程中,得到每一 幀對應的相機在局部坐標系下的位置 Χη;通過優(yōu)化函數(shù) Ν
[0100] argmin [0-(? - X")」 δ· fi 士.1
[0101] 得到優(yōu)化函數(shù)取最小值對應的變換矩陣δ,其中N為無人機實時地圖重建過程中的 總幀數(shù),Τ(χη,δ)表示從局部坐標系到世界坐標系的投影轉換函數(shù),δ為從局部坐標系到世 界坐標系的變換矩陣;根據(jù)得到的變換矩陣S對應的投影轉換函數(shù),將重建得到的地圖轉換 到世界坐標系下。
[0102] 另外,衛(wèi)星定位信號頻率往往小于幀頻,而且衛(wèi)星定位信號的采集時刻與圖像采 集時刻不嚴格對齊,此時,對于每一個衛(wèi)星定位信號采集時刻^,得到無人機在世界坐標系 下的軌跡信息Χη;并用采集時刻t n前后各一幀對應的相機在局部坐標系下的位置插值得到 采集時刻^下相機在局部坐標系下的位置Xn;通過優(yōu)化函數(shù)
[0103] arg m i η ^ 0-( xi;,S) - X,,)J ^ η;=?
[0104] 得到優(yōu)化函數(shù)取最小值對應的變換矩陣δ,其中Ν為衛(wèi)星定位信號的總采集點數(shù),Τ (Xn,S)表示從局部坐標系到世界坐標系的投影轉換函數(shù)J為從局部坐標系到世界坐標系 的變換矩陣;根據(jù)得到的變換矩陣δ對應的投影轉換函數(shù),將重建得到的地圖轉換到世界坐 標系下。
[0105] 步驟4:當預設幀數(shù)的無人機機載相機實時獲得的圖像處理完成后,無人機載的微 小型計算機將生成的地圖通過無人機載的DDL圖傳傳給地面端顯示。例如,可以設定在機載 微小型計算機每處理完第10幀,第20幀……等預先設定幀圖像后,將實時生成的地圖通過 無人機載的DDL圖傳傳給地面端顯示。
[0106] 下面給出重建的結果,包括實時和離線數(shù)據(jù)的測試結果,并與當前一些主流的視 覺SLAM方法作比較,來評價系統(tǒng)性能。以下所有的測試都在min117(基于Ubuntul4.04, 64b i t)上進行,8G RAM,不用GPU,主頻3 · 50GHz。
[0107] 表1:RGB_D基準測試結果比較
[0109] 表2:絕對跟蹤誤差測試結果比較(單位cm)
[0111] 注:[1 ]方法為:Dense RGB-D Odometry; [2]方法為:PTAM(keypoint_based); [3] 方法為:semi-densemono-VO; [4]方法為:keypoint-based mono-SLAM; [5]方法為:Direct RGB-D SLAM; [6]方法為:keypoint-based RGB-D SLAM;-表示沒有查到該方法的數(shù)據(jù),X表 示追蹤失敗(Tracking Lost);用作比較的數(shù)據(jù)來自Computer Vision Group;通過比較可 以發(fā)現(xiàn):本專利的方法無論是位置漂移量、角度漂移量還是絕對誤差都處于中上水平,相比 較其他的方法,我們的方法獲取環(huán)境較多信息,同時與全稠密的方法,我們實驗精度依然能 夠達到使用標準,而且能夠直接在CHJ上運行,不用要求GPU。
[0112] 此外本方法在無人機上驗證了實時地圖構建,如圖8和圖9所示。本系統(tǒng)中無人機 上搭載了一臺高清攝像機和微小型計算機,利用微小型計算機運行本方法能夠實時計算得 到大地的稀疏點云,利用解算的飛機位姿、點云、特征點將拍攝的圖像實時拼接得到二維地 圖。通過本實驗能夠證明本發(fā)明方法能夠實現(xiàn)實時重建地圖。
[0113] 盡管上面已經(jīng)示出和描述了本發(fā)明的實施例,可以理解的是,上述實施例是示例 性的,不能理解為對本發(fā)明的限制,本領域的普通技術人員在不脫離本發(fā)明的原理和宗旨 的情況下在本發(fā)明的范圍內(nèi)可以對上述實施例進行變化、修改、替換和變型。
【主權項】
1. 一種無人機實時在線地圖生成方法,其特征在于:包括W下步驟: 步驟1:采集圖像 無人機機載相機采集到一系列圖像,并將圖像傳遞給無人機載的微小型計算機; 步驟2:無人機載的微小型計算機對相機獲取的第一帖圖像進行處理得到初始化地圖: 步驟2.1:對第一帖圖像進行去崎變處理,得到去崎變后的第一帖圖像; 步驟2.2:對去崎變后的第一帖圖像進行深度初始化:根據(jù)設定的灰度梯度闊值,篩選 出去崎變后的第一帖圖像中灰度梯度大于灰度梯度闊值的像素點,并賦予所篩選出的像素 點隨機深度值; 步驟2.3:根據(jù)無人機機載相機參數(shù)將步驟2.2中賦予深度值的像素點反投影回Ξ維環(huán) 境,得到初始化后的地圖; 步驟2.4:將去崎變后的第一帖圖像設置為關鍵帖; 步驟3:對無人機機載相機實時獲得的第i帖圖像進行如下處理,i = 2,3,4……: 步驟3.1:對第i帖圖像進行去崎變處理,得到去崎變后的第i帖圖像; 步驟3.2: W當前關鍵帖為基準,進行去崎變后的第i帖圖像與基準的圖像對齊操作,得 到第i帖到當前關鍵帖的位姿變化; 步驟3.3:根據(jù)當前關鍵帖對應的相機姿態(tài),W及步驟3.2得到的第i帖到當前關鍵帖的 位姿變化,得到第i帖對應的相機姿態(tài)和相機在局部坐標下的位置; 步驟3.4:根據(jù)設定的灰度梯度闊值,篩選出去崎變后的第i帖圖像中灰度梯度大于灰 度梯度闊值的像素點,并根據(jù)相機參數(shù)和步驟3.3得到的第i帖對應的相機姿態(tài),將篩選出 的像素點反投影回Ξ維環(huán)境,得到所篩選出的像素點深度值;并將所篩選出的帶有深度值 的像素點加入地圖中; 步驟3.5:若步驟3.2得到的第i帖到當前關鍵帖的位姿變化大于設定的位姿變化闊值, 則用第i帖代替當前關鍵帖作為新的關鍵帖; 步驟4:當預設帖數(shù)的無人機機載相機實時獲得的圖像處理完成后,無人機載的微小型 計算機將生成的地圖通過無人機載的DDL圖傳傳給地面端顯示。2. 根據(jù)權利要求1所述一種無人機實時在線地圖生成方法,其特征在于: 提取并存儲每一個關鍵帖圖像中的特征點; 若步驟3.2中圖像對齊操作無法實現(xiàn),則進行失敗重建: 提取去崎變后的當前帖圖像的特征點,將當前帖的特征點與存儲的每一個關鍵帖圖像 中的特征點進行匹配,尋找成功匹配特征點個數(shù)最多的關鍵帖,若該關鍵帖中成功匹配特 征點的個數(shù)占該關鍵帖中特征點總數(shù)的比例不大于40%,則W當前帖作為第一帖,返回步 驟2;否則W該關鍵帖作為為基準,進行去崎變后的當前帖圖像與基準的圖像對齊操作,得 到當前帖到當前關鍵帖的位姿變化; 根據(jù)基準對應的相機姿態(tài),W及當前帖到當前關鍵帖的位姿變化,得到當前帖對應的 相機姿態(tài); 根據(jù)設定的灰度梯度闊值,篩選出去崎變后的當前帖圖像中灰度梯度大于灰度梯度闊 值的像素點,并根據(jù)相機參數(shù)和當前帖對應的相機姿態(tài),將篩選出的像素點反投影回Ξ維 環(huán)境,得到所篩選出的像素點深度值;并將所篩選出的帶有深度值的像素點加入地圖中;而 后繼續(xù)按照步驟3進行。3. 根據(jù)權利要求2所述一種無人機實時在線地圖生成方法,其特征在于:采用快速角點 檢測方法提取特征點。4. 根據(jù)權利要求1所述一種無人機實時在線地圖生成方法,其特征在于:步驟3.4中,將 所篩選出的帶有深度值的像素點加入地圖的過程中,若某一像素點反投影后,在地圖中對 應的Ξ維點的鄰域內(nèi),已存在有地圖Ξ維點,則將該像素點反投影后在地圖中對應的Ξ維 點,W及Ξ維點鄰域內(nèi)的已存在的地圖Ξ維點去除,并將該像素點反投影后在地圖中對應 的Ξ維點,與Ξ維點鄰域內(nèi)的已存在的地圖Ξ維點的加權平均點加入地圖中。5. 根據(jù)權利要求1所述一種無人機實時在線地圖生成方法,其特征在于:步驟3.5中,若 步驟3.2得到的第i帖到當前關鍵帖的位姿變化大于設定的位姿變化闊值,且第i帖與當前 關鍵帖的帖數(shù)差不小于15帖,則用第i帖代替當前關鍵帖作為新的關鍵帖。6. 根據(jù)權利要求1所述一種無人機實時在線地圖生成方法,其特征在于:步驟3.2中的 圖像對齊操作采用W下過程: 先設定第i帖到當前關鍵帖的位姿變化的初始值;根據(jù)第i帖到當前關鍵帖的位姿變 化,將當前關鍵帖中篩選出的灰度梯度大于灰度梯度闊值的像素點反投影到Ξ維環(huán)境,再 從Ξ維環(huán)境投影到去崎變后的第i帖圖像上,得到投影點;并在去崎變后的第i帖圖像上找 到,當前關鍵帖中篩選出的灰度梯度大于灰度梯度闊值的像素點的對應點;計算投影點與 對應點的光度值殘差和;迭代變化第i帖到當前關鍵帖的位姿變化,使光度值殘差和最小。7. 根據(jù)權利要求6所述一種無人機實時在線地圖生成方法,其特征在于:采用第i-1帖 到當前關鍵帖的位姿變化作為第i帖到當前關鍵帖的位姿變化的初始值。8. 根據(jù)權利要求1所述一種無人機實時在線地圖生成方法,其特征在于:步驟3.4中,得 到所篩選出的像素點深度值后;采用圖優(yōu)化方法對第i帖對應的相機在局部坐標下的位置, W及所篩選出的帶有深度值的像素點位置進行優(yōu)化,將優(yōu)化后的帶有深度值的像素點加入 地圖中。9. 根據(jù)權利要求1或8所述一種無人機實時在線地圖生成方法,其特征在于:將重建后 的地圖轉換到世界坐標系下: 在無人機實時地圖重建過程中,通過衛(wèi)星定位信號獲得每一帖時刻下,無人機在世界 坐標系下的軌跡信息Χη,η表示的是第η帖;并在無人機實時地圖重建過程中,得到每一帖對 應的相機在局部坐標系下的位置Xn;通過優(yōu)化函數(shù)得到優(yōu)化函數(shù)取最小值對應的變換矩陣δ,其中N為無人機實時地圖重建過程中的總帖 數(shù),Τ(Χη,δ)表示從局部坐標系到世界坐標系的投影轉換函數(shù),δ為從局部坐標系到世界坐 標系的變換矩陣;根據(jù)得到的變換矩陣S對應的投影轉換函數(shù),將重建得到的地圖轉換到世 界坐標系下。10. 根據(jù)權利要求1或8所述一種無人機實時在線地圖生成方法,其特征在于:當衛(wèi)星定 位信號頻率小于帖頻時,對于每一個衛(wèi)星定位信號采集時刻tn,得到無人機在世界坐標系 下的軌跡信息Xn;并用采集時刻tn前后各一帖對應的相機在局部坐標系下的位置插值得到 采集時刻tn下相機在局部坐標系下的位置Xn;通過優(yōu)化函數(shù)得到優(yōu)化函數(shù)取最小值對應的變換矩陣δ,其中N為衛(wèi)星定位信號的總采集點數(shù),Τ(Χη, δ)表示從局部坐標系到世界坐標系的投影轉換函數(shù),δ為從局部坐標系到世界坐標系的變 換矩陣;根據(jù)得到的變換矩陣δ對應的投影轉換函數(shù),將重建得到的地圖轉換到世界坐標系 下。
【文檔編號】G06T17/05GK106097304SQ201610373105
【公開日】2016年11月9日
【申請日】2016年5月31日
【發(fā)明人】布樹輝, 楊君, 趙勇
【申請人】西北工業(yè)大學