【基于投票的物體位姿估計算法分析4400字】_第1頁
【基于投票的物體位姿估計算法分析4400字】_第2頁
【基于投票的物體位姿估計算法分析4400字】_第3頁
【基于投票的物體位姿估計算法分析4400字】_第4頁
【基于投票的物體位姿估計算法分析4400字】_第5頁
已閱讀5頁,還剩10頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

-PAGE44--PAGE43-基于投票的物體位姿估計算法分析目錄TOC\o"1-3"\h\u4274基于投票的物體位姿估計算法分析 1230311.1 算法思想 119681.2 像素級投票網絡PVNet 285371.2.1 網絡結構 2280501.2.2 關鍵點選擇 3307841.2.3 RANSAC算法 564861.3 3D-2DPnP 513121.1.1 PnP算法思路 6238911.1.2 PnP算法數學推導 7102311.1.2 不確定性驅動的PnP 872971.4 目標姿態估計實驗及分析 858711.4.1 實驗環境及硬件配置 8243711.4.2 數據集和預處理 9247561.4.3 目標姿態估計結果 131.1 算法思想在單張RGB圖像的六自由度位姿估計問題上,很多位姿估計算法都采取兩階段的方法實現對目標物體的位姿估計,通常是先采用CNN檢測關鍵點,然后通過PnP算法求解出物體的估計位姿,因此成功檢測出準確的關鍵點是很重要的。但是很多方法僅僅通過回歸圖像坐標或熱圖確定關鍵點,在處于遮擋截斷情況下時目標物體的部分關鍵點往往是不可見的,這使得這些算法在面對目標物體處于被遮擋和截斷問題時有很大的困難,即使它們能夠利用卷積神經網絡來預測看不見的關鍵點,但泛化是很困難的。本文使用基于像素投票的方式能夠很好地解決遮擋和截斷情形下的關鍵點檢測問題。基于像素投票的物體位姿估計算法分為兩個階段,第一階段中PVNet先對輸入RGB圖像進行處理得到向量場預測和語義標簽,之后利用PVNet輸出的語義標簽和從像素指向預測關鍵點的單位向量,隨機選擇一對像素的向量,把它們的交叉點看作為一個關鍵點,重復這樣的過程的得到一個關鍵點假設集合,然后基于RANSAC投票生成關鍵點預測;第二階段在已知目標物體的2D關鍵點位置后可以使用PnP算法求解目標物體的六自由度位姿。但是不同的一點是它考慮了不同關鍵點的可靠度不同,并引入了關鍵點概率分布的協方差矩陣,進一步提高了目標姿態估計的魯棒性。算法基本流程如下圖所示:圖1.1基于像素投票位姿估計算法流程1.2 像素級投票網絡PVNet1.2.1 網絡結構本文采用的PVNet網絡結構是在基于ResNet-18網絡模型的進行修改,網絡模型如圖1.2,在ResNet-18網絡模型有三個部分的修改,第一部分是取消網絡中的特征圖大小為H=8×W=8時后續的池化,不對特征圖進行下降采樣,減少信息的損失。因為減少池化層改變了感受野,因此需要將Res-Net18里后續的卷積層替換為合適的空洞卷積層,空洞卷積的原理如圖1.3,空洞卷積的優點是在不做池化損失信息的同時增大了感受野,使得卷積輸出信息范圍增大。同時需要將Res-Net18網絡里的全連接層替換為卷積層采用全卷積的結構,使得輸入圖片的大小不受限制。圖1.2網絡結構圖圖1.3DilatedconvPVNet的輸入為H×W×3的圖像,用全卷積結構PVNet對它進行處理,輸出為H×W×(K×2×C)的單位向量和類概率,輸出結果如圖1.4。圖1.4網絡輸出結果1.2.2 關鍵點選擇在目標物體位姿估計中,要求已知三維物體關鍵點的關鍵點,結合通過投票機制得到的2D關鍵點,再由PnP算法求解位姿。因此三維物體關鍵點的定義對關鍵點的定位影響很大,很多深度學習方法定義目標物體在3D包圍框的八個角點為關鍵點如圖1.5,顯然2D圖像中這8個角點距離目標物體圖像像素距離較遠,由于關鍵點假設是由從目標物體開始的矢量生成的,這些關鍵點距離目標物體像素的距離越遠定位誤差就越大,檢測關鍵點的難度就越大。因此考慮到在目標物體表面選擇關鍵點,我們使用最遠點采樣算法(FPS)選擇關鍵點。圖1.53D包圍框最遠點采樣算法(FPS)是一種常用的采樣算法,能夠實現對樣本的均勻采樣,其基本原理如下:假設有n個點,要從里面按照FPS算法,采樣出k個點。將所有點分類到兩個集合A,B里面。A表示選中的點形成的集合,B表示未選中的點構成的集合。最遠點采樣算法的邏輯如下:每次從集合B里面選一個到集合A里面的點距離最大的點將其分類到A集合,A集合中的點就是我們采樣得到的關鍵點集。初始情況下,集合A為空,集合B包括所有點。第一步從集合B中隨機選一個點到A集合中。接著選第二個點,選出集合B中所有點中距離A中的點最遠的點,將其分類到A集合中,此時集合A包含兩個點,集合B包含n-1個點。選第三個點,這是最遠點采樣算法的核心;因為集合A中不止有一個點,所以我們假設集合B中一個點pB:先分別計算出pB到集合A中每個點的距離,再取pB使用最遠點采樣方法選擇關鍵點的結果如下圖1.6:圖1.6最遠點采樣法的關鍵點分布1.2.3 RANSAC算法PVNet輸出目標對應的語義標簽以及每個像素趨于2D關鍵點XK的向量場預測,對于每個像素點P,其趨向于2D關鍵點XK的單位向量VV已知語義標簽和單位向量Vkh最后,用目標物體的所有像素對關鍵點假設進行投票,關鍵點的投票分數的定義如下:w投票分數越高代表與更多的預測方向一致,其置信度更高,根據關鍵點假設可以估算關鍵點的空間概率分布,這里可以求出關鍵點XK的均值μk和協方差μk1.3 3D-2DPnP根據前面工作我們已經得到了目標物體的2D關鍵點位置,可以使用PnP算法求解6D姿態,但是本文的投票機制得出關鍵點信息是每個關鍵點的概率分布,所以區別于很多姿態估計算法中直接使用現有的PnP求解器求解,PVNet算法考慮了關鍵點置信度的差異和不確定性,使用不確定性驅動的PnP算法求解目標物體的6D姿態。1.1.1 PnP算法思路PnP問題就是解決在已知世界坐標系中三維物體關鍵點信息以及其在圖像上的投影的情況時如何計算相機位姿或物體位姿的問題,PnP問題求解方法還有很多,例如直接線性變換(DLT)、EPnP、P3P、非線性優化方式等。我們接下來對PnP算法的討論的前提是假設以下相機處于點Oc,P1、P2、P1為特征點。當n=1時,即只有一個特征點時,假設P1位于圖像的中心,那么顯然向量Oc當n=2時,即多了一個約束,顯然OcP1P2形成一個三角形,由于P1、P2兩點位置確定,三角形的邊P1P2確定。再加上向量OcP1和OcP2,從Oc點射向特征點的方向角也能確定。于是能夠計算出OcP1的長度=r1,OcP2的長度=r2。于是這種情況下得到兩個球:以P1為球心,半徑為r1的球A;以P2為球心,半徑為r2的球B。顯然,相機位于球A,球B的相交處,依舊是無數個解。當n=3時,即多了一個以P3為球心的球C,相機位于ABC三個球面的相交處,這次有4組解,其中一個正解就是相機真實的位姿。當n>3時,n=3時已經求出4個解,再加一個特征點就可以求出唯一正解,但是計算量過大,過于復雜,因此可以先通過3個特征點計算出4組解,根據公式:x將第四個點的世界坐標代入,能夠得到在圖像上的四個投影,將投影誤差最小的作為我們的正解。1.1.2 PnP算法數學推導記世界坐標系中的三維坐標點為A,B,C,2D點為a,b,c其中a,b,c為A,B,C在相機成像平面上的投影。示意圖如下:圖1.7P3P問題示意圖由余弦定理有:O兩邊同時除以,并記為,記為,得x記v=A有:x可以解得:(1?u)已知圖像上2D點的位置,則公式中的余弦角已知,可以通過世界坐標系下A,B,C的坐標算出。未知的,求解這樣一個二元二次方程組是困難的,需要用到吳消元法,最多得到四個解,使用驗證點來確定最可能的解,從而得到相機坐標系下的3D坐標,再使用ICP計算相機的位姿信息。1.1.2 不確定性驅動的PnP因為PVNet網絡中基于RANSAC投票的機制給出了每個關鍵點的空間概率分布,所以要考慮這種不確定性的帶給姿態估計精度的影響。我們在前面式子中已經給出了關鍵點的均值μk以及協方差kmin

X因為PVNet網絡中基于RANSAC投票的機制給出了每個關鍵點的空間概率分布,所以要考慮信息的不確定性,在原來公式中添加了協方差矩陣如下:Xk這里的Xk代表關鍵點的3D坐標,Xk是1.4 目標姿態估計實驗及分析1.4.1 實驗環境及硬件配置本項目使用數據集為LINEMOD數據集。LINEMOD數據集在深度學習目標姿態估計中被廣泛應用,它是一個標準6D姿態檢測數據集,數據集中包含13個子集,每個子集中包含1300張目標圖像和目標3D模型相關的虛擬3D控制點文件。實驗中OcclusionLINEMOD數據集用于測試,LINEMOD數據集和blender渲染合成的數據集作為訓練數據進行訓練。本實驗環境配置如下:表1.SEQ表\*ARABIC\s11項目所用實驗環境及設備參數類型名稱參數顯卡型號NvidiaGeforceRTX1050Ti操作系統Ubuntu18.0464位pytorch版本1.4CUDA版本CUDA10.1、cuDNNv7.6.5Python版本1.61.4.2 數據集和預處理(1)LINEMOD數據集LINEMOD數據集是一個有許多遮擋場景、低紋理目標等數據的數據集,它可以作為標準6D姿態檢測數據集,LINEMOD格式數據集中包含JPEIGmages,Lable,Label_occlusion等文件。JPEGImages中存放的是訓練集圖片,格式為jpg,如圖1.8所示:圖1.8訓練集樣本但真正輸入網絡訓練的并不是訓練集中的所有圖片,而是train.txt隨機選擇的圖片作為訓練集,如下圖所示。圖1.9訓練集選取照片Labels文件夾下存放的是txt格式文件,每個文件對應一張訓練集圖片的關鍵點的標注信息如1.10圖所示,第一個數據為類別編號,其余18個數據為關鍵點的坐標。圖1.10訓練集標注信息Mask文件下存放的是與JPEGImages文件中訓練集圖像對應的掩碼圖像,如圖1.11所示:圖1.11訓練集掩碼test.Txt文件夾下保存的是測試用的所有樣本的絕對路徑,train.txt中存在訓練樣本的所有路徑,.ply文件中是目標物體的3D圖像信息如下圖1.12所示圖1.12三維模型(2)基于渲染的訓練數據合成為了避免產生過擬合,我們在訓練集中加入了渲染合成的圖像,使用Blender從3D模型合成渲染圖像,對每個目標對象呈現均勻視點采樣的10000幅圖像,結合從SUN397數據集中隨機的背景合成10000幅圖像。基于渲染合成的訓練數據如圖1.13所示。圖1.13基于渲染合成的訓練數據(3)數據預處理首先獲得圖片索引以及高寬,并獲得圖片像素、2D關鍵點坐標以及圖像掩碼用于數據增強。首先對像素格式進行轉換,再計算是否屬于前景物體,若在前景物體則對圖像進行隨機角度旋轉,此時像素、圖像掩碼、二維關鍵點坐標都會旋轉,之后再對圖像隨機進行裁剪操作和改變圖像大小,如果只有背景沒有前景則直接進行裁剪和填充操作將圖片變換到固定大小。具體代碼實現如圖1.14所示。圖1.13數據增強1.4.3 目標姿態估計結果(1)測試模型檢測效果圖1.14cat測試檢測效果在LINEMOD數據集上的測試結果如下圖1.15所示。圖1.15LINEMOD數據集測試結果在Occlusion_LINEMOD數據集上的測試結果,如圖1.16所示。圖1.16OccluedLINEMOD結果我們使用2D映射量化(2DProjectionmetric)和模型點平均3D距離量化(ADDmetric)這兩個兩個量化標準對我們的模型進行評估,2D映射量化通過計算給定的估計值和真實姿態的三維模型點投影之間的平均距離,當姿態距離小于5像素時我們認為姿態估計姿態正確。使用LINEMOD數據和合成數據訓練的模型,在LINEMOD數據集進行測試的效果如表1.2所示。表1.2本文方法PVNet與常見的姿態估計方法的ADD(-s)評估方法SSD-6DBB8PVNetcat0.5145.279.34glue027.095.66duck032.852.58ape027.941.62eggbox8.940.099.15為了測試算法對遮擋的魯棒性,我們使用LINEMOD和合成數據訓練的模型來測

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論