国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于深度學(xué)習(xí)的平面位姿估計(jì)算法

2022-09-04 03:07:00陳玉鵬
關(guān)鍵詞:法線位姿實(shí)例

許 鮮,陳 寧,陳玉鵬

(集美大學(xué)海洋裝備與機(jī)械工程學(xué)院,福建 廈門 361021)

0 引言

隨著計(jì)算機(jī)視覺技術(shù)的發(fā)展,平面位姿估計(jì)在機(jī)器人技術(shù)、增強(qiáng)現(xiàn)實(shí)和虛擬現(xiàn)實(shí)、船舶海上作業(yè)等領(lǐng)域的應(yīng)用越來越廣泛[1-5]。盡管在過去幾十年中,已經(jīng)出現(xiàn)了很多平面位姿估計(jì)的方法,但是在快速準(zhǔn)確和適應(yīng)性方面還有很大的提升空間,尤其是對(duì)缺少紋理表面的平面目標(biāo)而言。

平面位姿估計(jì)的目的是檢測(cè)平面并估計(jì)其平移和旋轉(zhuǎn)。傳統(tǒng)視覺平面位姿估計(jì)通常分為兩類。1)基于特征的方法[6-7],計(jì)算一組三維點(diǎn)和二維投影之間的對(duì)應(yīng)關(guān)系,得到相機(jī)與平面之間的相對(duì)位置和方向,比如通過在平面物體上添加特定標(biāo)志物,使用相機(jī)對(duì)特定標(biāo)志物進(jìn)行定位和檢測(cè),實(shí)現(xiàn)檢測(cè)非接觸式的平面位姿檢測(cè),其中比較成熟的方法有Aruco[8],Apriltag[9]等。然而這些方法精度易受場(chǎng)景限制,依賴于特定的特征,這些特征對(duì)圖像變化和遮擋對(duì)不確定因素等的魯棒性較差。2)基于模板匹配的直接方法[10],將姿態(tài)估計(jì)問題簡(jiǎn)化為模板匹配問題,通過優(yōu)化參數(shù)來估計(jì)姿態(tài),觀察目標(biāo)圖像的剛性變換,但是這些模板匹配方法的主要缺點(diǎn)是,當(dāng)仿射或者單應(yīng)變換空間與姿態(tài)空間之間未對(duì)準(zhǔn)時(shí),容易產(chǎn)生額外的附加姿態(tài)誤差。

隨著深度學(xué)習(xí)對(duì)場(chǎng)景理解能力的增強(qiáng),基于深度學(xué)習(xí)的位姿估計(jì)方法實(shí)現(xiàn)了精度、實(shí)時(shí)性和魯棒性更好的位姿估計(jì)結(jié)果。Rad等[11]提出BB8網(wǎng)絡(luò),從單張RGB圖像預(yù)測(cè)目標(biāo)3D邊框的2D投影,并使用PnP算法解算出目標(biāo)3D位姿;Kehl等[12]提出了SSD-6D網(wǎng)絡(luò),使用合成數(shù)據(jù)集進(jìn)行訓(xùn)練,將SSD用于三維實(shí)例檢測(cè)和6D位姿估計(jì),獲得更好的實(shí)時(shí)性;Xiang等[13]提出PoseCNN網(wǎng)絡(luò),可以在雜亂場(chǎng)景中實(shí)現(xiàn)精確的物體6D姿態(tài)估計(jì);Sida等[14]提出PVNet網(wǎng)絡(luò),從單張RGB圖像預(yù)測(cè)目標(biāo)的語義分割和物體關(guān)鍵點(diǎn)的向量場(chǎng),使用隨機(jī)投票算法計(jì)算出目標(biāo)的關(guān)鍵點(diǎn),并使用PnP算法解算出目標(biāo)6D位姿;Chen等[15]提出DenseFusion網(wǎng)絡(luò),在像素級(jí)別嵌入和融合顏色和深度信息,以估計(jì)RGB-D圖像中已知物體的6D位姿。然而現(xiàn)有大多數(shù)基于深度學(xué)習(xí)的位姿估計(jì)方法需要已知目標(biāo)的三維模型,且網(wǎng)絡(luò)的泛化性較差,很難實(shí)現(xiàn)未知模型的平面位姿估計(jì)。

最近的一些使用深度學(xué)習(xí)的平面重建方法可以從單幅RGB圖像中檢測(cè)平面實(shí)例分割、深度及法線信息。Liu等[16]提出了一種端到端的深度神經(jīng)網(wǎng)絡(luò)PlaneNet,從單幅RGB圖像中推算平面參數(shù)及其對(duì)應(yīng)的平面分割掩碼;Yang等[17]提出一種針對(duì)室外場(chǎng)景的非監(jiān)督學(xué)習(xí)方法PlaneRecover,預(yù)測(cè)平面實(shí)例分割及其平面參數(shù)。但PlaneNet和PlaneRecover兩者都需要事先給出單個(gè)圖像中的最大平面數(shù),并且跨域的泛化能力較差。為了解決上述問題,Liu等[18]提出基于MaskRCNN的平面重建網(wǎng)絡(luò)PlaneRCNN,可以從單個(gè)RGB圖像中檢測(cè)出小的平面區(qū)域并重建分段平面深度圖;Yu等[19]提出了平面重建網(wǎng)絡(luò)PlanarReconstruction,訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)得到每像素的嵌入映射,再使用聚類算法對(duì)嵌入向量分組得到任意數(shù)量的平面實(shí)例,通過平面參數(shù)預(yù)測(cè)分支得到平面參數(shù)。受這些工作的啟發(fā),本文使用基于深度學(xué)習(xí)的方法進(jìn)行平面分割和法線估計(jì),并經(jīng)過位姿解算實(shí)現(xiàn)單個(gè)RGB圖像的平面位姿估計(jì),解決傳統(tǒng)視覺位姿估計(jì)需要添加特定標(biāo)志物和現(xiàn)有深度學(xué)習(xí)位姿估計(jì)算法需要已知物體三維模型的問題。

1 平面位姿估計(jì)試驗(yàn)系統(tǒng)

1.1 平面位姿估計(jì)試驗(yàn)系統(tǒng)硬件設(shè)計(jì)

基于實(shí)驗(yàn)需求搭建一套平面位姿估計(jì)實(shí)驗(yàn)系統(tǒng),如圖1所示,包括六自由度運(yùn)動(dòng)模擬系統(tǒng)和視覺檢測(cè)系統(tǒng)。其中:六自由度運(yùn)動(dòng)模擬系統(tǒng)通過輸入設(shè)定的運(yùn)動(dòng)方程模擬需要的六自由度運(yùn)動(dòng);視覺檢測(cè)系統(tǒng)通過相機(jī)可以獲得其安裝視野下的彩色RGB圖像,通過單目視覺位姿檢測(cè)算法檢測(cè)出目標(biāo)位姿,可對(duì)位姿估計(jì)效果進(jìn)行驗(yàn)證。

1.2 基于深度學(xué)習(xí)的單圖像位姿估計(jì)算法

本文的目標(biāo)是從單個(gè)RGB圖像推斷平面實(shí)例和平面位姿,算法框架如圖2所示。在第一個(gè)階段,使用多分枝的編碼器-解碼器網(wǎng)絡(luò)共同預(yù)測(cè)單圖像平面實(shí)例和法線?;赟canNet[20]數(shù)據(jù)集生成平面實(shí)例數(shù)據(jù)集,并進(jìn)行訓(xùn)練,輸入單張RGB圖像,采用編碼器-解碼器網(wǎng)絡(luò)獲得每個(gè)像素的關(guān)聯(lián)嵌入向量,使用均值漂移算法對(duì)嵌入向量進(jìn)行聚類,得到平面實(shí)例分割;共享編碼特征進(jìn)行平面參數(shù)分支解碼,得到每個(gè)像素的法線信息。第二個(gè)階段,對(duì)獲得的平面掩碼和法線進(jìn)行位姿解算,獲得平面的位姿,對(duì)實(shí)例分割和法線進(jìn)行位姿解算,得到每個(gè)平面實(shí)例的位姿信息,最后通過實(shí)驗(yàn)對(duì)基于深度學(xué)習(xí)的平面位姿估計(jì)算法的可行性進(jìn)行驗(yàn)證。

2 原理及方法

2.1 數(shù)據(jù)集構(gòu)建

用于平面位姿估計(jì)的深度學(xué)習(xí)算法需要大量數(shù)據(jù)集進(jìn)行訓(xùn)練,同時(shí)平面區(qū)域在圖像中可能具有復(fù)雜的邊界,手動(dòng)標(biāo)注這些區(qū)域非常耗時(shí),并且不能保證對(duì)數(shù)據(jù)集提供精確的位姿標(biāo)注。為了避免繁瑣的手動(dòng)標(biāo)注過程,可以使用模型擬合算法,將現(xiàn)有RGB-D數(shù)據(jù)集中的每像素深度圖轉(zhuǎn)換為平面實(shí)例標(biāo)注,使用PlaneNet生成的ScanNet數(shù)據(jù)集[20]訓(xùn)練并評(píng)估該方法,通過將平面擬合到ScanNet的合并網(wǎng)格并將其投影回各個(gè)框架,可以獲取真實(shí)值。生成過程還包含來自ScanNet的語義注釋,結(jié)果數(shù)據(jù)集包含50 000個(gè)訓(xùn)練圖像和760張測(cè)試圖像,分辨率為256 px×192 px,數(shù)據(jù)集含有深度信息,并具有平面實(shí)例分割標(biāo)記及平面法線信息。

2.2 算法網(wǎng)絡(luò)結(jié)構(gòu)

平面位姿估計(jì)算法采用一種編碼器-解碼器的網(wǎng)絡(luò)結(jié)構(gòu),如圖3所示。

其中:C為卷積層;P為池化層。輸入單張RGB圖像,編碼器使用ResNet101-FPN網(wǎng)絡(luò),解碼器分別為平面/非平面語義分割,關(guān)聯(lián)嵌入向量和平面參數(shù)解碼,三個(gè)分支共享相同的高級(jí)特征映射。C1~C5采用自下向上的通路,即普通卷積特征自底向上逐層濃縮表達(dá)特征的過程。此過程低層表達(dá)邊緣等較淺層次的圖片信息特征,較高層表達(dá)較深層次的圖片特征,如物體輪廓、類別等。P1~P5采用自上至下的通路,處理每一層信息時(shí)會(huì)參考上一層的高維信息作為輸入。上層特征輸出的特征圖尺寸小但感受野更大,高維信息經(jīng)實(shí)驗(yàn)證實(shí)能夠?qū)罄m(xù)的目標(biāo)檢測(cè)、物體分類等任務(wù)發(fā)揮關(guān)鍵作用。解碼器網(wǎng)絡(luò)采用1×1卷積,可有效降低中間層次的通道數(shù)量,使輸出不同維度的各個(gè)特征圖有相同的通道數(shù)量。平面參數(shù)解碼分支得到法線估計(jì)結(jié)果,結(jié)合平面/非平面語義分割和平面參數(shù)解碼,使用均值漂移聚類算法對(duì)嵌入向量解碼進(jìn)行聚類,得到平面實(shí)例分割結(jié)果。深度學(xué)習(xí)算法的網(wǎng)絡(luò)輸出為法線估計(jì)和實(shí)例分割。

2.3 損失函數(shù)

對(duì)平面/非平面分割解碼器,由于平面/非平面分割區(qū)域在人為環(huán)境下不平衡,因此采用式(1)所示的平衡交叉熵?fù)p失函數(shù)。

(1)

其中:F和B分別是前景(平面)和后景(非平面)像素點(diǎn)集;pi是第i個(gè)像素屬于前景的概率;ω是前景和后景像素點(diǎn)數(shù)的比值。

平面嵌入解碼器采用關(guān)聯(lián)嵌入的思想,為每個(gè)像素預(yù)測(cè)一個(gè)嵌入向量,采用式(2)中的判別損失函數(shù),其中“拉”損失將每個(gè)嵌入拉到對(duì)應(yīng)實(shí)例的平均嵌入,而“推”損失將實(shí)例中心彼此推開,使同一平面實(shí)例中的像素比不同平面中的像素更接近。由于圖像中平面實(shí)例的數(shù)量不是先驗(yàn)已知的,采用均值漂移聚類算法將得到的嵌入向量分組成平面實(shí)例。標(biāo)準(zhǔn)均值漂移算法在每次迭代中對(duì)所有像素嵌入向量進(jìn)行兩兩距離計(jì)算,計(jì)算復(fù)雜度較大。為了解決實(shí)時(shí)性,PlanarReconstruction在聚類開始時(shí)過濾掉局部密度較低的錨點(diǎn),并提出了均值漂移聚類的一個(gè)快速版本,只移動(dòng)嵌入空間中的少量錨點(diǎn),并將每個(gè)像素分配給最近的錨點(diǎn)。聚類算法收斂后,形成聚類,每個(gè)聚類對(duì)應(yīng)一個(gè)平面實(shí)例,聚類中心是這個(gè)聚類中錨點(diǎn)的平均值。

LE=Lpull+Lpush。

(2)

其中:

(3)

(4)

其中:C是標(biāo)準(zhǔn)的聚類(平面)的數(shù)量;NC是每個(gè)聚類中元素的數(shù)量;xi是像素嵌入;μc是聚類C的平均嵌入;δv和δd分別是拉損失和推損失邊界。如果嵌入的像素是容易分離的,即類內(nèi)實(shí)例的距離大于δd或嵌入向量及其中心之間的距離小于δv,懲罰是零,否則懲罰將大幅增加。

平面參數(shù)分支推斷圖像每個(gè)像素點(diǎn)的平面參數(shù),即點(diǎn)的法向量,使用式(5)中的L1損失即L1范數(shù)損失函數(shù),也被稱為最小絕對(duì)值偏差,是目標(biāo)值與估計(jì)的絕對(duì)差值的均值。

(5)

已知同一平面上單位法線相等且滿足平面公式(6)。

nT·Q=1。

(6)

其中:n為平面法線,為單位法線矢量(M)除以平面偏距(d),即n=M/d;Q為平面像素點(diǎn)3維坐標(biāo)。

由此先驗(yàn)知識(shí),使用如式(7)所示損失函數(shù),使同一平面實(shí)例上法線相等。

(7)

2.4 位姿解算

(8)

其中:α、β分別為繞x、y軸的轉(zhuǎn)動(dòng)角;[tx,ty,tz]T為平移矢量。

在相機(jī)坐標(biāo)系中,平面公式滿足式(9)。

nx·xc+ny·yc+nz·zc=1。

(9)

在理想針孔模型下,攝像機(jī)的成像模型齊次坐標(biāo)投影關(guān)系為:

(10)

其中:fx,fy為焦距;cx,cy為圖像中心與像素坐標(biāo)系原點(diǎn)像素偏差;R,T分別為旋轉(zhuǎn)矩陣和平移矩陣,M1,M2分別為攝像頭的內(nèi)參矩陣和外參矩陣;[uv]為像素坐標(biāo)系下坐標(biāo)點(diǎn);[xcyczc]為相機(jī)坐標(biāo)系下坐標(biāo)點(diǎn);[xwywzw]為世界坐標(biāo)系下坐標(biāo)點(diǎn)。

由式(10)和式(11)可得相機(jī)坐標(biāo)系下坐標(biāo)點(diǎn)為[xcyczc]。

(11)

聯(lián)立兩式解得:tx=x0;ty=y0;tz=z0;α=arcsin (ny);β=arctan(-nx/nz)。代入式(8)可解得M2,得到平面的位姿。

3 實(shí)驗(yàn)

首先對(duì)平面重建網(wǎng)絡(luò)進(jìn)行復(fù)現(xiàn)和對(duì)比,在此基礎(chǔ)上選擇泛化性更好的平面重建網(wǎng)絡(luò)架構(gòu)。然后使用選定的平面重建網(wǎng)絡(luò)進(jìn)行平面實(shí)例分割和法線估計(jì),在ScanNet數(shù)據(jù)集上對(duì)平面實(shí)例分割和法線估計(jì)的結(jié)果進(jìn)行量化分析和評(píng)估。最后在ScanNet數(shù)據(jù)集上對(duì)平面位姿估計(jì)的結(jié)果進(jìn)行對(duì)比分析,并在NYU數(shù)據(jù)集和平面位姿估計(jì)實(shí)驗(yàn)系統(tǒng)上進(jìn)行驗(yàn)證。使用PyTorch來實(shí)現(xiàn)本文的模型。服務(wù)器平臺(tái)配置:Intel(R) Core(TM) i7-7700K CPU@4.2GHz處理器,16 GB內(nèi)存,1T盤,8GB Geforce GTX 1070 GPU。

3.1 平面實(shí)例分割結(jié)果

平面重建網(wǎng)絡(luò)PlaneRCNN和PlanarReconstruction均使用ScanNet數(shù)據(jù)集進(jìn)行訓(xùn)練,并使用NYU數(shù)據(jù)集和用戶圖片對(duì)兩者的訓(xùn)練結(jié)果進(jìn)行測(cè)試,測(cè)后對(duì)比結(jié)果如圖5所示。由圖5可見,PlaneRCNN對(duì)小平面的檢測(cè)結(jié)果較好,但會(huì)誤識(shí)別多余的小平面。相比之下,PlanarReconstruction對(duì)小平面的檢測(cè)效果較差,但能夠檢測(cè)出較完整的平面,該網(wǎng)絡(luò)對(duì)平面實(shí)例的檢測(cè)具有更好的泛化性。因此本文嘗試在平面重建網(wǎng)絡(luò)PlanarReconstruction基礎(chǔ)上進(jìn)行平面位姿估計(jì)。

圖6為在ScanNet數(shù)據(jù)集上的平面實(shí)例分割結(jié)果,與真實(shí)平面實(shí)例分割相比,基本能得到數(shù)量和形狀一致的平面分割結(jié)果。平面召回率是正確預(yù)測(cè)標(biāo)準(zhǔn)平面的百分比,像素召回率是正確預(yù)測(cè)平面內(nèi)像素的百分比,因此,本文使用平面和像素召回率作為評(píng)價(jià)指標(biāo)。標(biāo)準(zhǔn)平面預(yù)測(cè)指標(biāo):ⅰ)其中一個(gè)預(yù)測(cè)平面交并比(IOU,Intersection over Union)得分大于0.5;ⅱ)重疊區(qū)域平均深度差小于閾值,該閾值從0.05 m到0.60 m不等,增量為0.05 m,則認(rèn)為標(biāo)準(zhǔn)平面預(yù)測(cè)正確。實(shí)驗(yàn)中,通過該指標(biāo)進(jìn)行判定得到算法的平面和像素召回率,圖7為在ScanNet測(cè)試數(shù)據(jù)集上的平面召回率(藍(lán)色)和像素召回率(黑色),可以看出測(cè)試集上平面召回率平均值為0.625,像素召回率平均值為0.773。

3.2 平面位姿檢測(cè)結(jié)果

法線估計(jì)的準(zhǔn)確性是平面位姿估計(jì)準(zhǔn)確率的關(guān)鍵因素。根據(jù)研究,平面法線召回率是正確預(yù)測(cè)標(biāo)準(zhǔn)平面法線的百分比,像素召回率是正確預(yù)測(cè)法線的平面內(nèi)像素的百分比。其中平面法線預(yù)測(cè)指標(biāo)為:ⅰ)其中一個(gè)預(yù)測(cè)平面交并比(IOU)得分大于0.5;ⅱ)預(yù)測(cè)法線與真實(shí)法線夾角小于閾值,該閾值從0到30°不等,增量為2.5°,則認(rèn)為平面法線預(yù)測(cè)正確。實(shí)驗(yàn)中,通過該指標(biāo)進(jìn)行判定,得到算法的平面和像素法線召回率。

如圖8為在ScanNet測(cè)試數(shù)據(jù)集上的平面法線召回率(藍(lán)色)和像素法線召回率(黑色),可以看出平面法線召回率平均值為0.414,像素法線召回率為0.328。

表1為在ScanNet測(cè)試數(shù)據(jù)集上的深度預(yù)測(cè)準(zhǔn)確率,其均方根誤差為0.039 m。由圖8和表1可以看出,相比平面實(shí)例分割效果,基于單圖像的平面法線預(yù)測(cè)精度還有較大提升空間。

表1 在ScanNet測(cè)試集上的深度預(yù)測(cè)準(zhǔn)確率Tab.1 Accuracy of depth prediction onScanNet test setAbs_RelSq_RelRMSERMSE_log0.096310.64020.03930.1239

使用位姿解算算法對(duì)平面實(shí)例分割和法線估計(jì)進(jìn)行位姿解算,在ScanNet數(shù)據(jù)集上的平面位姿估計(jì)結(jié)果如圖9所示。

其中:第2列為使用深度學(xué)習(xí)預(yù)測(cè)的平面實(shí)例分割和法線估計(jì)解算的平面位姿,第3列為使用數(shù)據(jù)集中真實(shí)平面實(shí)例分割和法線信息解算的平面位姿。圖9中,每個(gè)平面實(shí)例中心處均標(biāo)記解算得到的平面坐標(biāo)系,紅綠藍(lán)顏色的坐標(biāo)軸分別為x,y,z軸。本文采用的平面位姿估計(jì)計(jì)算法在簡(jiǎn)單場(chǎng)景下的位姿估計(jì)結(jié)果基本與真實(shí)值一致。

圖10為在用戶圖片和NYU數(shù)據(jù)集上的平面位姿檢測(cè)結(jié)果,可以看出位姿估計(jì)結(jié)果仍具有一定參考性。

實(shí)驗(yàn)中在ScanNet數(shù)據(jù)集上預(yù)測(cè)每張圖片平面位姿平均用時(shí)0.0545 s,實(shí)時(shí)性為18.5 f/s,基本滿足實(shí)時(shí)性要求。

4 結(jié)論

本文研究了基于深度學(xué)習(xí)的平面位姿檢測(cè)算法,采用編碼器-解碼器網(wǎng)絡(luò)從單個(gè)RGB圖像中檢測(cè)平面實(shí)例分割及法線信息,對(duì)每個(gè)平面進(jìn)行位姿解算,從而獲得其實(shí)時(shí)位姿。實(shí)驗(yàn)結(jié)果表明,在ScanNet測(cè)試數(shù)據(jù)集上的平面召回率為0.625,平面法線召回率為0.414,實(shí)時(shí)性為18.5 f/s。同樣在NYU和用戶自制的RGB圖上平面分割效果較好,但基于單圖像的平面法線預(yù)測(cè)準(zhǔn)確率較差,平面位姿估計(jì)效果有待提高。同時(shí)還表明,基于深度學(xué)習(xí)的RGB圖像平面位姿檢測(cè)方法是可行的,但平面檢測(cè)效果尤其是單圖像法線和深度估計(jì)的準(zhǔn)確率有待進(jìn)一步提升。未來改進(jìn)平面位姿檢測(cè)的工作應(yīng)該集中在研究更魯棒的實(shí)例分割和法線估計(jì)算法,嘗試多視圖、多傳感器融合等方法來提高平面位姿估計(jì)的準(zhǔn)確率。

猜你喜歡
法線位姿實(shí)例
基于定位法線的工件自由度判定方法及應(yīng)用
橢圓法線定理的逆定理
基于共面直線迭代加權(quán)最小二乘的相機(jī)位姿估計(jì)
基于CAD模型的單目六自由度位姿測(cè)量
小型四旋翼飛行器位姿建模及其仿真
雙曲螺線的副法線曲面的相關(guān)性質(zhì)研究*
完形填空Ⅱ
完形填空Ⅰ
基于幾何特征的快速位姿識(shí)別算法研究
三談等軸雙曲線的典型性質(zhì)
乐东| 永顺县| 隆子县| 和林格尔县| 新郑市| 安远县| 繁昌县| 西畴县| 平阴县| 女性| 公安县| 通海县| 河东区| 体育| 漳浦县| 保康县| 南部县| 遵义县| 勐海县| 华坪县| 屏山县| 石门县| 揭西县| 子洲县| 屏东县| 南充市| 临朐县| 依安县| 蒲江县| 乌拉特前旗| 奇台县| 灵川县| 双江| 自治县| 嵊州市| 左贡县| 连云港市| 尉氏县| 安顺市| 康定县| 贞丰县|