周云成,許童羽,鄧寒冰,苗 騰,吳 瓊
(沈陽農(nóng)業(yè)大學信息與電氣工程學院,沈陽 110866)
在無導軌或輔助標志物引導的非結構化溫室環(huán)境下,移動機器人需要通過自身傳感系統(tǒng)探查工作場景結構,據(jù)此完成導航、定位和避障等功能,即機器人通常要具備即時定位與地圖構建(Simultaneous Localization and Mapping, SLAM)系統(tǒng),而位置及姿態(tài)(位姿)跟蹤是其中的一個關鍵環(huán)節(jié)[1]。
傳統(tǒng)溫室移動機器人通過跟蹤導軌[2]或輔助標志物實現(xiàn)導航定位。袁挺等[3]用鋪設在硬化水泥路面中央的紅色線作為導航標志物。高國琴等[4]以圖像色調分量為特征,用番茄壟間路徑與兩側的差異,通過閾值分割、邊緣提取和Hough變換獲取導航路徑。居錦等[5]提出一種基于側向光電圓弧陣列的下沉路沿或凸起路沿檢測方法,實現(xiàn)道路沿邊導航。這些方法可實現(xiàn)機器人的移動導引,但對溫室建設結構及作物種植模式也提出了較高要求。日光溫室構型和種植作物變化多樣,如果機器人缺少對環(huán)境結構的獲取和理解過程,也無相應的位姿跟蹤與定位技術,則難以實現(xiàn)自主作業(yè)。為此,國內(nèi)外學者在該方向上開展了相關研究。史兵等[6]利用無線傳感器網(wǎng)絡采集對機器人通過性有影響的環(huán)境溫濕度,構建動態(tài)更新的環(huán)境信息柵格地圖,實現(xiàn)機器人導航。該研究需要手動輸入溫室結構及障礙物位置信息,自適應能力有限。Masuzawa等[7]用Kinect v2相機作為視覺傳感器,開發(fā)了一個園藝收獲支持機器人原型,利用從一系列連續(xù)幀中提取的彩色圖像特征點及對應深度來估計機器人運動及溫室三維結構。Kinect易受日光干擾,且深度檢測范圍小。侯加林等[8]用雙激光雷達和cartographer算法實現(xiàn)溫室二維柵格地圖實時構建和機器人即時定位。激光雷達可直接獲取三維場景結構,精度高,但價格昂貴。彩色相機成本低,且圖像可用于多種視覺任務,因此視覺SLAM(visual SLAM, vSLAM)[9-10]技術在機器人領域受到越來越多的關注。作為vSLAM的關鍵環(huán)節(jié),深度和位姿估計等前端處理的精度將直接影響其性能。傳統(tǒng)位姿估計[11]依賴人工設計的低級圖像特征,其在常規(guī)環(huán)境下可取得理想結果,但當出現(xiàn)非剛體、遮擋、無紋理區(qū)域時,該類方法往往會失效[12]。得益于卷積神經(jīng)網(wǎng)絡(Convolution Neural Network, CNN)提取的高級圖像特征[13],基于深度學習的位姿估計方法取得了一定的研究進展[14-19]。Zhou等[14]提出一種深度和位姿變換估計模型,其利用不同視角下的圖像重構誤差作為監(jiān)督信號來實現(xiàn)無監(jiān)督學習,但由于訓練過程中僅采用單目視頻序列,該模型只能估計相機的相對位置變化。Zhan等[15]針對該問題,提出可用雙目視頻序列進行訓練的自監(jiān)督學習模型,基于雙目基線約束,該模型可實現(xiàn)實際深度和位姿變換的估計。Shen等[18]將極線幾何約束引入到自監(jiān)督學習框架中,但該方法需要預先提取圖像特征并匹配特征點。Godard等[19]提出的Monodepth2模型是目前精度最高的自監(jiān)督學習方法之一,該方法在模型中引入了最小化投影和自動遮罩損失,用來解決場景運動和目標遮擋問題。上述模型僅在空間尺度上采用雙目基線約束,尚缺少在視頻時間序列上的一致性約束。另一方面,與當前研究[14-19]主要面向的城市道路環(huán)境不同,溫室環(huán)境狹窄擁擠,遮擋嚴重,作物植株顏色、紋理單一,該類方法在溫室移動機器人位姿估計及軌跡跟蹤上的適用性值得進一步深入研究。
鑒于以上問題及溫室移動機器人自主導航作業(yè)的實際需求,在雙目基線約束[15]基礎上,將時序深度一致性約束引入到學習框架中,提出一種自監(jiān)督位姿變換估計模型,該模型可用雙目視頻序列進行訓練。針對研究中發(fā)現(xiàn)的用幀間靜止樣本訓練模型會造成其位姿變換估計值收縮的問題,提出采用軟遮罩來抑制此類樣本誤差梯度回傳的處理方法。在現(xiàn)有研究基礎上,優(yōu)化設計神經(jīng)網(wǎng)絡結構。以采集自種植作物為番茄的日光溫室視頻數(shù)據(jù)為例,定義模型性能的判別標準,開展訓練與測試試驗,驗證模型的有效性。
在運動相機采集的連續(xù)視頻序列中,Is、It為相鄰視頻幀,其中Is記為源圖像,It記為目標圖像。設空間點P同時出現(xiàn)在相鄰幀中,且在Is、It上的投影像素坐標分別為ps和pt,K為相機內(nèi)參矩陣,Tt→s為相機在It和Is成像狀態(tài)之間的位姿變換矩陣,根據(jù)多視幾何,式(1)成立
式中Ds(ps)、Dt(pt)分別表示ps、pt對應的空間點P的深度。當ps、pt用齊次坐標表示時,有式(2)
式中~表示在齊次坐標系下等價。設K已知,根據(jù)式(2),由Tt→s和It對應的深度圖Dt,It上的像素點可投影到Is上。在Is上對投影點周圍采樣可重構目標圖像,簡記為為采樣運算[20],proj為式(2)所示的投影運算,warp 表示投影和采樣的復合運算,K則被作為warp的內(nèi)部信息。
由pe度量的圖像重構誤差,以及由此回傳的誤差梯度是DNN優(yōu)化訓練的關鍵。根據(jù)現(xiàn)有研究[18-19],用圖像像素空間的L1(1范數(shù))距離和結構相似度指數(shù)(Structural Similarity Index, SSIM)[21]的線性組合來定義pe函數(shù),如式(3)所示,其中SSIM在塊級別比較圖像的亮度,以及對亮度變化不敏感的對比度和結構特征相似性。
式中i為像素索引,α為線性組合的比例系數(shù)。
1.3.1 雙目基線約束及軟遮罩的提出
由圖1可以看出,等比例縮放圖像深度和相機光心間的距離,It與Is間的投影關系保持不變,即模型對Dt及Tt→s的預測是相互耦合的,在無額外約束條件下,fD、fP無法預測深度及位置變化的絕對值。雙目相機左、右目間的位姿變換矩陣Tl→r為已知,即左目相對于右目在x方向上平移了一個基線距離,本研究用該基線距離作為約束條件,用雙目視頻序列作為訓練樣本。將k時刻左目圖像作為目標圖像,記為,將k時刻右目圖像和k-1時刻左目圖像作為源圖像,分別記為和,基于fD對的深度圖,以及fP對左目相機在k和k-1時刻間的位姿變換矩陣的預測,分別在上采樣重構目標圖像,即有,并以式(4)作為fD和fP的聯(lián)合優(yōu)化目標
因Tl→r已知,以為目標,將使fD對的預測趨于實際值,同時以為目標,將使fP對的估計趨于實際值。
在溫室場景中,如果相機靜止,且當前場景不因外部因素擾動而發(fā)生變形,則相機采集的相鄰視頻幀圖像是相同或相似的,稱這樣的相鄰雙目視頻幀為幀間靜止樣本(靜止幀)。根據(jù)式(2),如果以式(4)第2項為模型優(yōu)化訓練目標,無論fD是否正確預測了圖像深度,fP只需將幀間位姿變換預測為0,即可使該目標最小化,從而可能使fP的網(wǎng)絡參數(shù)向預測結果為0的方向塌縮,影像模型訓練。網(wǎng)絡參數(shù)主要受模型誤差梯度驅動,為避免靜止幀對訓練產(chǎn)生的影響,本研究提出用式(5)形式抑制該類樣本的回傳梯度
1.3.2 時序深度一致性約束的提出
圖2模型在2個假設上構建:1)場景為剛體;2)場景中可視目標物之間無遮擋。當假設滿足時,通過對深度及位姿變換的精確估計,目標圖像才可完全從源圖像采樣重構。當假設不滿足時,將產(chǎn)生問題梯度,影響模型訓練。作物植株為柔性材料,受風或機器人擾動,場景內(nèi)部分目標物可能并非絕對靜止。同時,溫室空間有限,株形復雜,相互遮擋嚴重。為提高模型訓練的魯棒性,需要對圖像中非靜止和遮擋區(qū)域進行處理,本研究模型除了預測深度及位姿變換外,還為每個重構目標圖像預測一個歸一化遮罩平面,用以標識因非剛體或遮擋而不能從源圖像采樣重建的目標圖像區(qū)域(對應中像素值低的區(qū)域),并將其從pe度量中排除。通過式(6)所示的加權表觀差異度量函數(shù)wpe來實現(xiàn)該處理
根據(jù)以上優(yōu)化目標及約束條件,定義模型的重構目標圖像表觀差異及約束損失Lpr如式(7)所示
式中λ、ζ為各項比例調整系數(shù),分別為重構圖像和對應的歸一化遮罩平面。系數(shù)λ用來調整k-1時刻左目圖像深度預測訓練對模型參數(shù)修正的貢獻程度。
用U-Net[22]架構的卷積自編碼器(Convolutional Auto-Encoder, CAE)作為構建fD的DNN網(wǎng)絡(圖3a)。CAE由編碼器和解碼器構成。在解碼器上設置深度預測分支,該分支包含1個卷積核大小為3×3、輸出通道數(shù)為1的卷積層(conv 1, 3×3),其以解碼器特征圖作為輸入,輸出特征圖u經(jīng)Sigmoid函數(shù)激活后作為對的逆向深度的預測,然后用式(8)所示的變換作為對深度圖的預測結果
式中a、b為變換系數(shù),該變化可將深度約束在范圍內(nèi)。與用獨立DNN預測遮罩平面的方法[12]不同,為降低模型復雜度,本研究進一步用fD預測重構圖像的歸一化遮罩平面,且遮罩平面預測分支的結構與深度預測分支相同。通過預測多尺度深度圖來消除采樣運算 的梯度局部性問題[16],分別在空間尺度為輸入圖像1、1/2、1/4和1/8的解碼器特征圖上設置預測分支,預測對應尺度的深度圖和歸一化遮罩平面。同時,fD以參數(shù)共享的方式預測的深度圖和重構圖像的歸一化遮罩平面
fP(圖3b)采用與fD相同的CAE結構,與fD不同的是,fP的解碼器僅為重構圖像預測多尺度歸一化遮罩平面,并在編碼器末端連接一個位姿預測分支(Pose Estimation Branch, PEB),該分支采用與文獻[19]相同的結構,用于預測間的位姿變換矩陣PEB的最后一層為不包含任何激活函數(shù)的conv 6, 1×1,其輸出特征圖經(jīng)全局平均池化后生成6維向量,其中3維作為以歐拉角表示的幀間姿態(tài)變換,另外3維作為在3-D空間上的位置移動,該6維向量可直接轉換[19]為。Godard等[23]研究表明,以同步雙目圖像作為深度預測網(wǎng)絡的輸入,可提高深度預測精度,本研究采用該方法,以期通過提高深度預測精度來間接提高位姿估計精度。fD、fP映射的最終形式分別為
按Godard等[19]的方法,將多尺度深度圖及歸一化遮罩平面上采樣到輸入圖像尺度后,按式(7)分別計算各尺度重構目標圖像表觀差異及約束損失,結合邊緣感知深度平滑約束[16],定義模型總損失Lt如式(9)所示
在相同計算代價下,擴張卷積(Dilated Convolution, DC)[24]可顯著擴大卷積運算的感受野,這有利于在特征圖上建立遠程空間相關性,該相關性可能對深度預測[25]及位姿估計[14]具有促進作用。但現(xiàn)有研究[26]也表明,DC會使稠密預測結果產(chǎn)生網(wǎng)格偽影,雖然混合DC可解決該問題,但單層孔洞型卷積核仍無法充分提取和聚合輸入特征圖的局部特征。本研究提出一種新的星型擴張卷積(Star DC, SDC),其卷積核由中心的3×3實心核及8個方向的1-D(1維)核構成,該核可有效提取圖像局部特征,且具有較大的感受野。與相同感受野大小的標準卷積相比,SDC可有效降低卷積運算量。SDC不需要修改或擴展現(xiàn)有神經(jīng)網(wǎng)絡計算框架,其可通過擴張率連續(xù)的3×3 DC運算疊加構成(圖4),如1-D DC運算疊加可表示為式(11)
式中s為輸入信號,g為輸出信號,r為擴張率,hr表示擴張率為r的1-D卷積核,q為元素索引,G為用于疊加的DC組數(shù)。相應的,2-D SDC運算模塊可由擴張率連續(xù)的G個2-D DC疊加構成,將G作為SDC的超參數(shù),各DC在相同輸入特征圖上運算,產(chǎn)生的多組特征圖通過面向元素(element-wise)求和方式進行疊加,生成疊加特征圖,該特征圖經(jīng)激活后作為SDC的輸出。為降低SDC的運算量,為各DC采用深度化卷積(Depthwise Convolution, DepthConv)[27-28]形式。
進一步用反向殘差模塊(Inverse Residual Module, IRM)[29]結構來降低計算資源需求量[30]。用SDC替代標準IRM中的DepthConv層來構建基于SDC的IRM,稱為SDC-IRM(圖5)。SDC-IRM的輸入特征圖通道數(shù)及IRM擴展因子超參數(shù)S[29]決定了SDC的特征圖通道數(shù),即SDC的寬度。當SDC的超參數(shù) 1G=時,SDC-IRM等同于標準IRM。
以計算機視覺任務中廣泛采用的殘差網(wǎng)絡(Residual Net, ResNet)[31]為基本架構,并用SDC-IRM取代ResNet的常規(guī)殘差模塊來構建CAE(圖6)編碼器,稱為ResNet-SDC。在構建ResNet-SDC時,固定各卷積模塊的寬度(模塊的輸出特征圖通道數(shù))比,即首端標準卷積模塊和后續(xù)SDC-IRM之間的寬度比,與標準ResNet架構中的對應比例相同,因此網(wǎng)絡寬度將由首端模塊的寬度C決定,稱C為ResNet-SDC的超參數(shù)。此時,ResNet-SDC的結構由ResNet架構類型,如ResNet-18[31],超參數(shù)C,以及各SDC-IRM模塊的超參數(shù)S和G決定。解碼器由轉置卷積(Transposed Convolution, TransConv)和標準IRM模塊構成,通過TransConv逐步上采樣輸出特征圖的空間尺度,并通過元素級求和方式,融合編碼器同維度的輸出特征圖。用于多尺度逆向深度圖和歸一化遮罩平面預測的分支設置在解碼器對應尺度的IRM模塊上,fP的PEB則以編碼器最后一個SDC-IRM的輸出特征圖作為輸入。除預測分支外,網(wǎng)絡中各卷積層均配置批歸一化(Batch Normalization, BN)[32],并用Leaky-ReLU[33]作為激活函數(shù)。
雙目視頻采集設備為Stereolabs ZED 2k立體相機,其左、右目分辨率均為1 920×1 080像素,有效采樣距離為0.3~20.0 m。用MATLAB R2018a的立體相機標定工具箱標定相機,獲取其內(nèi)、外參數(shù)(含K及雙目基線距離)。2020年1月和11月,于晴朗天氣的9:00-15:00時段,分別在沈陽農(nóng)業(yè)大學實驗基地某遼沈IV型節(jié)能日光溫室和沈陽市遼中區(qū)某實際生產(chǎn)用日光溫室中進行視頻采集,溫室種植作物均為番茄,植株吊蔓生長,其中前者溫室處于坐果期,株高1.8~2.3 m,行距約1.0 m,株距約0.3 m,后者處于花期,株高1.3~1.5 m,行距0.8~1.0 m,株距約0.3 m。
共采集3類視頻。首先將相機置于手推式小車上,沿株行間和人行通道隨機行走,行進過程中采集視頻,并通過調整相機角度來增加樣本視角多樣性。將采集的視頻分割成小序列,每個序列包含200幀雙目圖像,共計500個序列,構成集合A。然后將相機固定于帶刻度平直滑軌的可移動滑塊上,在溫室多個位置固定滑軌,移動滑塊并采集視頻,移動過程中,相機在滑塊上姿態(tài)(角度)固定,即相機僅產(chǎn)生位置變化,每次采樣生成1個視頻序列并記錄滑塊滑動距離,共采集200個序列,構成移動距離已知的集合B。進一步將相機固定于三腳架頂部具刻度、可360°旋轉的載臺上,在溫室多個位置放置三腳架,轉動載臺并采集視頻,轉動過程中,相機相對于載臺位姿固定,每次采樣生成1個視頻序列同時記錄載臺轉動角度,共采集200個序列,構成轉動角度已知的集合C??蓪⒓螦采集時的相機運動視為不規(guī)則運動,集合B、C視為規(guī)則運動。集合A、B、C共同構成溫室環(huán)境雙目視頻數(shù)據(jù)集。
用Microsoft Cognitive Toolkit (CNTK v2.7)[34]實現(xiàn)本研究模型,用Adam優(yōu)化器[35]對其進行訓練。根據(jù)相機有效采樣距離,式(8)中的變換系數(shù)設置為 3.28a=、b= 0.05。根據(jù)預試驗,損失函數(shù)中各項系數(shù)分別設置為α= 0.85、?= 5、λ=1、ζ=1、μ= 5,網(wǎng)絡權重衰減因子設為5×10-5,可取得較好的效果。初始學習率為10-4,每經(jīng)20代(epochs)迭代訓練,學習率下降為原來的1/10[19],預試驗表明經(jīng)過40代迭代訓練,模型損失可收斂到穩(wěn)定值。模型輸入圖像設置為512×288像素。訓練過程中,用數(shù)據(jù)增廣方法來提高樣本多樣性,該方法可在不增加樣本采集工作量的前提下,提高模型泛化效果。首先把1個視頻序列的當前幀作為目標圖像,再從其前后3個連續(xù)幀中隨機選擇1個作為源圖像,構成一個樣本,該過程可增加幀間位姿變換的多樣性。接著隨機決定是否對該樣本圖像做水平翻轉或垂直翻轉,并進一步按文獻[25]方法對每對目標圖像和源圖像的亮度、對比度和飽和度在[0.8, 1.2]范圍內(nèi)做相同隨機調整。數(shù)據(jù)增廣中所采用的隨機過程均服從均勻分布。
在NVidia Tesla K80計算卡上開展訓練及測試試驗,試驗用計算機配置為Intel Xeon E7-4820 v3處理器,128GB內(nèi)存,Windows Server 2012 R2操作系統(tǒng)。采用簡單交叉驗證來評估模型,每次試驗分別從集合A、B、C中隨機選擇80%、50%、50%的樣本序列作為訓練集,使訓練集樣本數(shù)不低于數(shù)據(jù)集樣本總數(shù)的2/3,其余作為測試集。為提高評估可靠性,每個模型試驗重復5次,最后用各指標均值來評價模型。在對模型進行測試時,僅將圖像調整為輸入尺寸,不對測試樣本進行數(shù)據(jù)增廣。
本研究用移動距離和轉動角度已知的B、C測試集視頻序列來評估模型精度。如果在不規(guī)則運動的A類視頻占多數(shù)的訓練集上訓練的模型,能夠準確預測規(guī)則運動的B、C測試集的位姿變化,即可說明模型的泛化性能。對于有n幀圖像的序列j,相機末幀相對于首幀的位姿變換估計為為模型估計的m和m-1幀間的位姿變換矩陣。是幀間位姿變換的累積,是變換的宏觀表現(xiàn),因此可用其評估模型位姿估計和軌跡跟蹤的精度。可分解為位置變換和以軸角表示的姿態(tài)變換。設B測試集有N個序列,序列j記錄的相機實際滑動距離為lj,用各序列和lj的平均相對誤差(Mean Relative Error, MRE)、平方相對誤差(Squared Relative Error, Sq Rel)、均方根誤差(Root Mean Squared Error, RMSE)和lg化RMSE(lg RMSE, RMSElg)來評估模型位置估計精度。各指標定義如式(12)~(15)
相機在平直滑軌上移動時,模型估計軌跡應該是平直的,該平直性用視頻序列的估計軌跡與首末幀估計坐標構成的直線之間的決定系數(shù)R2來衡量,進而用N個序列的平均決定系數(shù)(meanR2, mR2)來衡量模型估計軌跡的穩(wěn)定性。同時,固定在滑塊上的相機在平直滑軌上移動時也不應有姿態(tài)角變化,如存在該變化,則被視為隨機誤差,進一步用平均每百幀累積姿態(tài)角誤差(Mean Cumulative Rotation Error per Hundred Frames, MCRE)來衡量模型的穩(wěn)定性。C測試集中,序列j記錄的相機實際轉動角度為rj,模型估計姿態(tài)角變化為,用各序列和rj的MRE、Sq Rel、RMSE和RMSElg來進一步評價模型姿態(tài)估計的精度。
為分析不同處理對模型位姿估計精度的影響,通過啟用或關閉不同處理,構建了8種模型(表1)。其中軟遮罩處理,指在和的表觀差異度量中用pe'函數(shù),如不啟用,則采用pe函數(shù)。歸一化遮罩處理指在模型中預測歸一化遮罩平面,并在損失函數(shù)中使用wpe。星型擴張卷積處理指在SDC模塊中采用r連續(xù)變化的DepthConv,否則各DepthConv的r值均為1,此時SDC退化為DepthConv。雙目輸入指fD的輸入為同步雙目圖像,否則僅輸入目標圖像。特征丟棄處理指在PEB前采用丟棄(Dropout)層,按30%的比例丟棄fD編碼器傳入的特征[36]。時序一致性處理指fD共享參數(shù)方式預測源圖像深度,并進行時序深度一致性約束,如不啟用,則模型中無此約束,相當于λ=0、ζ=0。首先以ResNet-18作為參考架構,并設置ResNet-SDC的超參數(shù)C=48來構建CAE編碼器,其中SDC-IRM的超參數(shù)設為S=1、G=6,解碼器中的IRM超參數(shù)S=1。對各模型采用相同的訓練 和測試方法,結果如表2。
表1 不同處理的深度及位姿估計模型 Table 1 Depth and pose estimation models with different treatments
表2 不同模型的位置及姿態(tài)估計性能比較 Table 2 Pose estimation performance comparison between different models
由表2可知,不同模型在位置及姿態(tài)估計性能上具有較大差異。模型I在II的基礎上啟用了軟遮罩,該處理使I的4種位姿估計誤差指標均顯著降低,其中位置估計MRE減少了5.06個百分點,姿態(tài)估計MRE減少了11.05個百分點,RMSE則分別降低了24.78%和30.65%,表明軟遮罩處理能夠有效提高模型精度。如不啟用軟遮罩,當訓練集中存在靜止幀時,無論fD的深度預測結果如何,fP對位姿變化的預測趨近于0,都可以使以pe為代價的損失最小化,從而使fP網(wǎng)絡參數(shù)向輸出為0的方向更新,出現(xiàn)預測值收縮問題,這是模型II精度低于模型I的原因。軟遮罩可抑制靜止幀產(chǎn)生的網(wǎng)絡參數(shù)修正,也會對網(wǎng)絡訓練產(chǎn)生一定影響,即模型對幀間不明顯位姿變化不敏感,會產(chǎn)生較大的系統(tǒng)隨機誤差,這也是模型I的mR2和MCRE指標比II差的原因。
I在III的基礎上采用歸一化遮罩,該處理使I的4種位置和2種姿態(tài)估計誤差顯著降低,其中MRE分別減少了4.15個百分點和3.86個百分點,mR2顯著提高。用歸一化遮罩抑制無法采樣重建的目標圖像區(qū)域的表觀差異度量,使模型有機會考慮并處理非剛體及場景遮擋問題,避免了問題梯度回傳,使模型更具魯棒性。I在IV的基礎上,在網(wǎng)絡中啟用了SDC,在網(wǎng)絡參數(shù)不變的前提下,該處理使4種位置估計誤差和3種姿態(tài)估計誤差顯著降低,其中I的姿態(tài)估計MRE在IV的基礎上減少了7.54個百分點,同時RMSE也有所降低,表明本研究設計的SDC模塊能夠有效提高模型位姿估計的精度。SDC擴大了卷積核的感受野,可使編碼器在特征圖顯著降維前,建立起遠距離特征點的空間相關性,這對位置及姿態(tài)估計都具有重要作用。
I在V的基礎上,對fD采用雙目輸入,該處理使I的4種位置估計誤差顯著下降。VII在VIII的基礎上采用雙目輸入,使VII的姿態(tài)估計MRE和RMSElg誤差顯著下降,Sq Rel和RMSE有所降低,表明雙目輸入對提升模型位姿估計精度具有一定作用。以雙目圖像作為輸入,能夠有效提高深度估計精度[23],由fD和fP的耦合性,fD性能的提高,對fP也具有促進作用。VI在I的基礎上,在PEB前啟用了Dropout,該處理使VI的位置估計MRE顯著下降,mR2顯著升高,MCRE顯著下降,姿態(tài)估計MRE顯著升高,其他各項誤差指標有所下降,表明Dropout對提高模型精度具有一定效果,對提高模型穩(wěn)定性具有顯著作用,這和Dropout迫使網(wǎng)絡學習更加魯棒性的特征有關。VII在I的基礎上啟用了時序一致性約束,使VII的位置估計MRE和姿態(tài)估計的全部4種誤差顯著下降,其中姿態(tài)估計MRE減少了2.74個百分點,RMSE降低36.48%,同時mR2顯著提高,MCRE降低了54.75%,表明本研究提出的時序一致性約束對位姿估計精度和模型穩(wěn)定性都具有顯著提升作用。對幀間時序深度進行一致性約束,該一致性也會間接傳導到fP中,從而使位姿預測更加穩(wěn)定??傮w而言,相較于其他模型,VI和VII具有更高的綜合位姿估計性能。
為進一步分析網(wǎng)絡結構對模型性能的影響,通過調整CAE編碼器的參考架構、ResNet-SDC的超參數(shù)C、SDC-IRM的超參數(shù)S和G,以及PEB的寬度(分支中除conv 6, 1×1之外其他各層卷積的通道數(shù)),構建了9種網(wǎng)絡結構(表3)。與模型I相比,VI和VII啟用多種處理,具有更高的性能,但也需要更多的存儲和計算資源,與網(wǎng)絡2結合時,超出了試驗設備的處理能力,因此本 研究在資源需求相對較低、性能相對較高的模型I基礎上應用這些網(wǎng)絡,開展訓練和測試試驗,用于分析網(wǎng)絡結構對模型性能的影響,結果如表4。
表4 網(wǎng)絡結構對位姿估計性能的影響 Table 4 Effect of the network structure on performance of pose estimation
表4數(shù)據(jù)表明,網(wǎng)絡結構可顯著影響模型I的位姿跟蹤性能。與網(wǎng)絡1比,2采用ResNet-50參考架構,增加了編碼器深度,使模型位置估計MRE和姿態(tài)估計的3種誤差顯著下降,mR2顯著提高、MCRE顯著下降,表明增加編碼器深度可提高模型位姿估計性能及穩(wěn)定性。這主要是隨著網(wǎng)絡深度增加,編碼器的圖像特征提取能力增強,但同時網(wǎng)絡計算復雜度也會增加。網(wǎng)絡3在1的基礎上擴大了C值,增加了網(wǎng)絡寬度,但除mR2顯著提高、MCRE顯著降低,即模型穩(wěn)定性增加外,其他位姿估計誤差都顯著增加了,表明簡單增加網(wǎng)絡寬度無法提高模型性能。這和SDC-IRM的結構和其超參數(shù)設置有關,IRM允許用較窄的瓶頸層[29],且由于網(wǎng)絡3中的S=1,僅增加C,并不能顯著增加SDC的寬度和其圖像特征提取能力。相較于網(wǎng)絡1,4增加了S值,使模型的位置估計MRE和 RMSElog顯著降低,mR2顯著提高,MCRE顯著下降,其中姿態(tài)估計MRE減少了7.30個百分點,達4.53%,模型精度及穩(wěn)定性顯著提高。S值增大,有效增加了SDC-IRM中SDC模塊的寬度,可提高其特征提取和模型表達能力,進而提高了模型的位姿估計性能。
網(wǎng)絡5在1的基礎上,增加了G的值,雖使位置估計誤差升高,但mR2顯著增加,MCRE顯著下降,姿態(tài)估計誤差也顯著降低,說明繼續(xù)增大SDC感受野對模型性能仍有一定促進作用,但該作用主要集中在對姿態(tài)估計精度和模型穩(wěn)定性的提升上。網(wǎng)絡7、8、9的比較也表明,增加G值,主要促進姿態(tài)估計精度的提升。當G=6時,進一步增加G,對模型性能的提升已無顯著作用,表明此時SDC的感受野大小已能滿足相關點建立空間相關性的需求,繼續(xù)增加G值,SDC的特征響應值中包含了大范圍內(nèi)的無關特征,反而會影響模型性能。相比網(wǎng)絡1,6增加了PEB的寬度,使后者位置估計的MRE顯著下降,mR2顯著升高,MCRE顯著降低,姿態(tài)估計精度顯著提高,表明增加PEB寬度對提高模型位置估計性能和穩(wěn)定性是有效的。綜合各項指標,針對模型I,在ResNet-18參考架構下,網(wǎng)絡4和8具有更高的位姿估計精度。
Monodepth2[19]是目前精度最高的同類型深度及位姿估計模型之一,該模型同樣可采用雙目視頻序列進行訓練,其以標準ResNet-18作為CAE編碼器,解碼器則由最鄰近插值上采樣和常規(guī)卷積構成。本研究方法組合綜合性能較高的模型VII和網(wǎng)絡4,且在PEB前啟用Dropout。同時添加2種組合,組合1用模型VII和Monodepth2的網(wǎng)絡結構,組合2用Monodepth2模型和本研究網(wǎng)絡。開展訓練和測試試驗,同時用計算速度衡量位姿估計網(wǎng)絡(由fP的編碼器和PEB構成)的實時性,不同方法的性能比較結果如表5。
由表5可知,本研究方法的位置和姿態(tài)估計MRE分別為8.29%和5.71%,與Monodepth2相比,分別減少8.61個百分點和6.83個百分點,RMSE則分別降低45.98%和49.78%,除mR2和計算速度外,其他各項誤差指標均顯著低于后者,表明針對種植作物為番茄的溫室環(huán)境,本研究方法在位姿估計上具有更高的精度。本研究網(wǎng)絡計算速度為56.5幀/s,具有實時性,由于SDC是通過多組DepthConv疊加構成的,速度上低于單層常規(guī)卷積,因此整體計算速度低于Monodepth2。本研究方法和組合1的模型相同而網(wǎng)絡不同,對比表明,除mR2和MCRE外,前者其他各項誤差指標均顯著低于后者,表明本研究網(wǎng)絡具有更高的位姿估計精度。對比Monodepth2和組合2,后者各項誤差顯著降低,mR2均值有所增加,進一步表明本研究網(wǎng)絡的有效性。與常規(guī)殘差模塊相比,本研究網(wǎng)絡的SDC-IRM具有更大的單層感受野,有利于在更大尺度范圍內(nèi)搜索圖像的空間相關性,這是本研究網(wǎng)絡能進一步提升模型精度的主要原因。對比本研究方法和組合2,除mR2和MCRE無顯著差異外,前者其他各項誤差指標均顯著低于后者,表明本研究在模型中引入的多種處理對提高溫室移動機器人位姿估計性能是有效的。
進一步在A、B、C測試集上,對各方法的深度估計性能進行比較。用點i的估計深度和通過文獻[25]方法獲得的實際深度Dt(i)的MRE、Sq Rel、RMSE、RMSElg,以及閾值限定精度,即滿足的點所占的比例,其中[19],來評價模型深度估計性能,同時評估深度估計網(wǎng)絡fD的實時性,結果如表6。
表6 不同方法間的深度估計性能比較 Table 6 Depth estimation performance comparison between different methods
由表6可知,本研究模型在20 m采樣范圍內(nèi),其深度估計MRE為11.35%(<11.4%),RMSE為0.528 m(<0.53 m),計算速度為31.9幀/s,具有實時性,與Monodepth2相比,前者的各項誤差均顯著降低,閾值限定精度顯著升高。除模型和網(wǎng)絡結構差異外,本研究采用同步雙目圖像作為fD的輸入,該處理可有效提高深度估計精度[23],由fD和fP的耦合性,其可進一步促進位姿估計精度的提高,這也是本研究模型位姿估計誤差低于Monodepth2的另一個原因。對比本研究方法和組合1,以及Monodepth2和組合2,結果表明本研究網(wǎng)絡同樣可提高深度估計精度。SDC的卷積核結構可同時提取局部圖像特征并建立起特征點間的遠程空間相關性,這一特性對位姿及深度估計性能的提升均是有效的。組合1的各項深度估計誤差均顯著低于Monodepth2,表明本研究在模型中引入的多種處理對提高深度估計精度也是有效的。
采用本研究模型對測試集中部分視頻序列的相機軌跡進行估計,并在視頻序列首幀對應的場景中渲染部分軌跡點,同時估計首幀圖像的深度,結果如圖7。
圖7表明,模型能夠對相機運動軌跡進行有效跟蹤,并能估計每幀圖像對應的深度。圖7a對應的視頻序列為相機沿行間通道行進至溫室后保溫墻前折返,模型估計的運動軌跡及部分軌跡點與該過程是相符的。圖7b對應的視頻序列為相機在行間通道右側行進至保溫墻前的人行通道,左轉并繼續(xù)前進,從模型跟蹤軌跡來看,與該過程也是相符的。圖7c為相機沿植株行間通道行進至保溫墻前右轉,模型所跟蹤的運動軌跡變化趨勢與相機對應的運動過程也是相符的。圖7d為相機在平直滑軌上前向移動1.2 m,從模型跟蹤的相機軌跡及軌跡在x,z平面上的投影可以看出,軌跡長度與移動距離相符,且跟蹤軌跡平直,表明本研究模型具有較好的穩(wěn)定性。采樣設備為雙目相機,模型跟蹤的是左目相機的運動軌跡,圖7d中部分軌跡點與滑軌的相對位置關系也與該情況相符。圖7同時表明,模型能夠估計圖像對應場景的深度,其對株行間通道和目標物遠近都給出了較好的預測。位姿跟蹤與深度估計能為vSLAM提供支撐,這為模型應用于溫室移動機器人自主作業(yè)提供了可能。
面向溫室移動機器人自主作業(yè)實際需求,提出一種基于時序一致性約束的自監(jiān)督位姿變換估計模型。以采集自種植作物為番茄的日光溫室視頻數(shù)據(jù)為例,開展訓練和測試試驗,結論如下:
1)用軟遮罩將視頻序列的靜止樣本從圖像表觀差異度量中去除,模型的位置和姿態(tài)估計相對誤差MRE分別減少5.06個百分點和11.05個百分點,均方根誤差RMSE分別降低24.78%和30.65%。在模型中用歸一化遮罩來處理非剛體場景和目標遮擋問題,位姿估計MRE則分別減少4.15個百分點和3.86個百分點。2種遮罩可顯著提高模型精度。
2)基于星型擴張卷積的反向殘差模塊在網(wǎng)絡參數(shù)不變的前提下,使模型的姿態(tài)估計MRE減少7.54個百分點,表明該結構對降低模型誤差具有顯著作用,增加卷積核感受野是提高模型精度的有效手段。
3)時序深度一致性約束使模型對姿態(tài)估計的MRE減少了2.74個百分點,RMSE降低36.48%,每百幀累積姿態(tài)角誤差降低54.75%,該約束可用于提高模型姿態(tài)估計精度及穩(wěn)定性。
4)擴大反向殘差模塊的擴展因子可顯著降低位姿估計誤差,姿態(tài)估計MRE減少了7.30個百分點。增加星型擴張卷積核的感受野能夠提升姿態(tài)估計精度,但當最大擴張率超過6時,其作用不再明顯。
5)本研究位置和姿態(tài)估計MRE分別為8.29%和5.71%,與Monodepth2相比,分別減少了8.61個百分點和6.83個百分點,模型精度顯著提高,模型能夠對相機行進過程中的軌跡進行有效跟蹤。位姿估計網(wǎng)絡計算速度為56.5幀/s,具有實時性。該方法可為溫室移動機器人導航系統(tǒng)設計提供支撐。