一種無人機的三維環境建模方法及系統的制作方法
【技術領域】
[0001] 本發明涉及無人機領域,尤其涉及一種無人機的三維環境建模方法及系統。
【背景技術】
[0002] 機器人如何在位置環境的未知位置中實現即時定位和地圖構建(Simultaneous LocalizationAndMapping,SLAM)是實現機器人自主導航、路徑規劃、目標識別及跟蹤等 任務的前提。利用不同傳感器所重建出來的三維模型已經被應用到機器導航、增強實現、醫 學圖像處理等多個領域。然而,如何利用單鏡頭在無人機上進行實時的三維環境建模,進而 實現其自主控制是當前研宄的一個難點。
【發明內容】
[0003] 有鑒于此,本發明實施例的目的在于提供一種無人機的三維環境建模方法及系 統,旨在解決現有技術中無法利用單鏡頭在無人機上進行實時的三維環境建模的問題。
[0004] 本發明實施例是這樣實現的,一種無人機的三維環境建模方法,包括:
[0005] 獲取關鍵幀圖像上的點特征、線特征,并劃分紋理區域;
[0006] 選取距離所述關鍵幀最近的一幀為目標關鍵幀,在所述目標關鍵幀中求匹配點和 線,利用對極幾何三角化得到3D的點和線,并結合紋理區域完成面特征的生成和更新;
[0007] 在三維空間中將得到的多層次特征進行有效結合,其中,所述多層次的特征包括 點特征、線特征以及面特征;
[0008] 利用對偶四元數對多層次的特征進行統一描述。
[0009] 優選的,所述選取距離所述關鍵幀最近的一幀為目標關鍵幀,在所述目標關鍵幀 中求匹配點和線,利用對極幾何三角化得到3D的點和線,并結合紋理區域完成面特征的生 成和更新的步驟包括:
[0010] 采用FAST-10進行角點檢測,并以角點為中心形成8X8的源模板;
[0011] 將提取的角點進行縮減,然后去除靠近地圖中已有特征的角點;
[0012] 通過對極幾何得到在所述目標幀的圖像上的對極線,在所述對極線附近搜索角 點,將搜索到的多個角點與提取到的角點模板做距離測度計算對比,得到最小距離測度,其 中,若所述最小距離測度小于設定的閾值,則將所述最小距離測度作為匹配點;
[0013] 利用對極幾何三角化計算所述匹配點的3D深度信息,并將所述匹配點融入已有 地圖中。
[0014] 優選的,所述選取距離所述關鍵幀最近的一幀為目標關鍵幀,在所述目標關鍵幀 中求匹配點和線,利用對極幾何三角化得到3D的點和線,并結合紋理區域完成面特征的生 成和更新的步驟包括:
[0015] 利用Canny算子提取所述關鍵幀的圖像邊緣,根據圖像邊緣的梯度變化角度信息 進行融合生長,并去除短的邊緣和彎曲的邊緣,同時將剩下的邊緣作為圖像線元;
[0016] 將地圖中所有特征投影到當前所述關鍵幀的圖像上,并將靠近投影特征的線元去 除,以得到候選線元;
[0017] 獲取所述候選線元的中心點在所述目標關鍵幀的圖像上的對極線,以該對極線為 中心形成匹配搜索區域,并獲取所述匹配搜索區域中的邊緣點,去除遠離對極線的點、去除 與源直線線極性不符的點、去除梯度變化方向與對極線垂直的點、去除短的邊緣點以及彎 曲的邊緣點,形成匹配候選線;
[0018] 根據匹配候選線三角化得到所述源直線所有可能的3D深度,并通過第三幀關鍵 幀驗證,并將只有驗證成功的3D線融入到已有地圖中。
[0019] 優選的,所述選取距離所述關鍵幀最近的一幀為目標關鍵幀,在所述目標關鍵幀 中求匹配點和線,利用對極幾何三角化得到3D的點和線,并結合紋理區域完成面特征的生 成和更新的步驟包括:
[0020] 首先利用圖形紋理,將紋理相同的地方分割成一塊,并將太小的塊去除,形成平面 的候選區域;
[0021] 判斷3D的點特征、線特征是否在已有面特征上,若在面特征上,則實現平面的增 長,并完成平面初始點和基礎向量的更新;
[0022] 若不在面特征上,則利用已經生成的3D線判斷是否存在交線或者平行線,若存在 交線則直接生成新的平面,若存在平行線則判斷這些平行線是否屬于同一個候選區域,若 屬于同一個候選區域則生成一個新的平面。
[0023] 優選的,所述利用對偶四元數對多層次的特征進行統一描述的步驟包括:
[0024] 利用對偶四元數對點特征進行描述;
[0025] 利用對偶四元數對線特征進行描述;
[0026] 利用對偶四元數對面特征進行描述。
[0027] 另一方面,本發明還提供一種無人機的三維環境建模系統,所述三維環境建模系 統包括:
[0028] 特征提取模塊,用于獲取關鍵幀圖像上的點特征、線特征,并劃分紋理區域;
[0029] 地圖拓展模塊,用于選取距離所述關鍵幀最近的一幀為目標關鍵幀,在所述目標 關鍵幀中求匹配點和線,利用對極幾何三角化得到3D的點和線,并結合紋理區域完成面特 征的生成和更新;
[0030] 地圖簡化模塊,用于在三維空間中將得到的多層次特征進行有效結合,其中,所述 多層次的特征包括點特征、線特征以及面特征;
[0031] 統一描述模塊,用于利用對偶四元數對多層次的特征進行統一描述。
[0032] 優選的,所述地圖拓展模塊包括特征點拓展子模塊,其中,所述特征點拓展子模塊 包括:
[0033] 第一提取模塊,用于采用FAST-10進行角點檢測,并以角點為中心形成8X8的源 模板;
[0034] 第一去除模塊,用于將提取的角點進行縮減,然后去除靠近地圖中已有特征的角 占.
[0035] 第一匹配模塊,用于通過對極幾何得到在所述目標幀的圖像上的對極線,在所述 對極線附近搜索角點,將搜索到的多個角點與提取到的角點模板做距離測度計算對比,得 到最小距離測度,其中,若所述最小距離測度小于設定的閾值,則將所述最小距離測度作為 匹配點;
[0036] 第一融入模塊,用于利用對極幾何三角化計算所述匹配點的3D深度信息,并將所 述匹配點融入已有地圖中。
[0037] 優選的,所述地圖拓展模塊包括特征線拓展子模塊,
[0038] 其中,所述特征線拓展子模塊包括:
[0039] 第二提取模塊,用于利用Canny算子提取所述關鍵幀的圖像邊緣,根據圖像邊緣 的梯度變化角度信息進行融合生長,并去除短的邊緣和彎曲的邊緣,同時將剩下的邊緣作 為圖像線元;
[0040] 第二去除模塊,用于將地圖中所有特征投影到當前所述關鍵幀的圖像上,并將靠 近投影特征的線元去除,以得到候選線元;
[0041] 第二匹配模塊,用于獲取所述候選線元的中心點在所述目標關鍵幀的圖像上的對 極線,以該對極線為中心形成匹配搜索區域,并獲取所述匹配搜索區域中的邊緣點,去除遠 離對極線的點、去除與源直線線極性不符的點、去除梯度變化方向與對極線垂直的點、去除 短的邊緣點以及彎曲的邊緣點,形成匹配候選線;
[0042] 第二融入模塊,用于根據匹配候選線三角化得到所述源直線所有可能的3D深度, 并通過第三幀關鍵幀驗證,并將只有驗證成功的3D線融入到已有地圖中。
[0043]優選的,所述地圖拓展模塊包括特征面拓展子模塊,
[0044]其中,所述特征面拓展子模塊包括:
[0045]平面去除模塊,用于首先利用圖形紋理,將紋理相同的地方分割成一塊,并將太小 的塊去除,形成平面的候選區域;
[0046] 平面更新模塊,用于判斷3D的點特征、線特征是否在已有面特征上,若在面特征 上,則實現平面的增長,并完成平面初始點和基礎向量的更新;
[0047] 平面生成模塊,用于若不在面特征上,則利用已經生成的3D線判斷是否存在交線 或者平行線,若存在交線則直接生產新的平面,若存在平行線則判斷這些平行線是否屬于 同一個候選區域,若屬于同一個候選區域則生成一個新的平面。
[0048] 優選的,所述統一描述模塊包括:
[0049]點特征描述子模塊,用于利用對偶四元數對點特征進行描述;
[0050] 線特征描述子模塊,用于利用對偶四元數對線特征進行描述;
[0051] 面特征描述子模塊,用于利用對偶四元數對面特征進行描述。
[0052] 在本發明實施例中,本發明提供的技術方案能利用單鏡頭在無人機上進行實時的 三維環境建模,通過基于對偶四元數的多層次特征環境建模的方法,將多層次幾何結構用 對偶四元數坐實現了統一表示方式和轉換過程,從而能夠為進一步的新的專用對偶四元數 解算硬件的研發提供基礎研宄成果,而且,點、線、面多層次特征的有效結合,能夠顯著的減 少地圖的存儲空間和捆綁調整優化過程數據的處理量,提高系統的優化速度,另外,由于直 線特征能有效的提高匹配過程抗運動模糊的能力,減少錯誤匹配率,從而提高了地圖的精 確性和魯棒性。
【附圖說明】
[0053] 圖1