








摘要:?jiǎn)螒?yīng)估計(jì)是許多計(jì)算機(jī)視覺任務(wù)中一個(gè)基礎(chǔ)且重要的步驟。傳統(tǒng)單應(yīng)估計(jì)方法基于特征點(diǎn)匹配,難以在弱紋理圖像中工作。深度學(xué)習(xí)已經(jīng)應(yīng)用于單應(yīng)估計(jì)以提高其魯棒性,但現(xiàn)有方法均未考慮到由于物體尺度差異導(dǎo)致的多尺度問題,所以精度受限。針對(duì)上述問題,提出了一種用于單應(yīng)估計(jì)的多尺度殘差網(wǎng)絡(luò)。該網(wǎng)絡(luò)能夠提取圖像的多尺度特征信息,并使用多尺度特征融合模塊對(duì)特征進(jìn)行有效融合,此外還通過估計(jì)四角點(diǎn)歸一化偏移進(jìn)一步降低了網(wǎng)絡(luò)優(yōu)化難度。實(shí)驗(yàn)表明,在MS-COCO數(shù)據(jù)集上,該方法平均角點(diǎn)誤差僅為0.788個(gè)像素,達(dá)到了亞像素級(jí)的精度,并且在99%情況下能夠保持較高的精度。由于綜合利用了多尺度特征信息且更容易優(yōu)化,該方法精度顯著提高,并具有更強(qiáng)的魯棒性。
關(guān)鍵詞:?jiǎn)螒?yīng)估計(jì); 多尺度殘差網(wǎng)絡(luò); 特征融合; 四角點(diǎn)歸一化偏移; 平均角點(diǎn)誤差
中圖分類號(hào):TP183;TP751文獻(xiàn)標(biāo)志碼:A文章編號(hào):1001-3695(2022)10-048-3179-07
doi: 10.19734/j.issn.1001-3695.2022.03.0124
Homography estimation method based on multi-scale residual network
Tang Yun1, Shuai Pengfei1, Jiang Peifan1, Deng Fei1, Yang Qiang1,2
(1.College of Computer amp; Network Security(Oxford Brookes College), Chengdu University of Technology, Chengdu 610059, China; 2. College of Control Engineering, Chengdu University of Information Technology, Chengdu 610225, China)
Abstract:
Homography estimation is a basic and important step in many computer vision tasks. Traditional homography estimation methods are based on feature point matching, which are difficult to work in weak texture images. Deep learning has been applied to homography estimation to improve its robustness, but the existing methods do not consider the multi-scale pro-blem caused by object scale differences, resulting in limited accuracy. To solve the above problems, this paper proposed a multi-scale residual network for homography estimation. The network could extract the multi-scale feature of the image, and used the multi-scale feature fusion module to effectively fuse the features. In addition, it further reduced the difficulty of network optimization by estimating the four-corner normalized offset. Experiments on MS-COCO dataset show that the average corner error of this method is only 0.788 pixels, which achieves sub-pixel accuracy, and can maintain high accuracy in 99% of cases. Due to the comprehensive utilization of multi-scale features and easier to optimize, this method has significantly improved accuracy and stronger robustness.
Key words:homography estimation; multi-scale residual network; feature fusion; four-corner normalized offset; average corner error
0引言
單應(yīng)(homography)指從一個(gè)平面到另一個(gè)平面的可逆映射,這種映射關(guān)系可以使用一個(gè)3×3的非奇異矩陣來表示,其中包含了平移、縮放、旋轉(zhuǎn)與透視,稱為單應(yīng)矩陣[1]。給定兩幅圖像,從中估計(jì)這兩幅圖像之間的單應(yīng)變換是計(jì)算機(jī)視覺中常見的需求。單應(yīng)估計(jì)具有廣泛的應(yīng)用場(chǎng)景,是圖像配準(zhǔn)[2]、圖像拼接[3]、圖像矯正[4]、三維重建[5]以及SLAM[6]等任務(wù)中的基礎(chǔ)性工作,單應(yīng)估計(jì)的精度對(duì)于這些任務(wù)有十分重要的影響。
傳統(tǒng)的單應(yīng)估計(jì)方法通常是基于特征點(diǎn)匹配的。它使用SIFT[7]、SURF[8]或ORB[9]等算法提取圖像中的特征點(diǎn),通過暴力匹配或FLANN[10]等匹配方法獲得兩組特征點(diǎn)的對(duì)應(yīng)關(guān)系,最后利用RANSAC[11]算法剔除錯(cuò)誤匹配后求解得到單應(yīng)矩陣。然而這種方法的效果很大程度上依賴于特征點(diǎn)的數(shù)量與分布,難以應(yīng)用于弱紋理圖像中,并且步驟比較繁瑣,許多超參數(shù)都需要人工指定[2]。
隨著深度學(xué)習(xí)的興起,基于深度學(xué)習(xí)的單應(yīng)估計(jì)方法被相繼提出。2016年DeTone等人[12]首次提出了一種基于VGG架構(gòu)的網(wǎng)絡(luò)用于單應(yīng)估計(jì),顯示了深度學(xué)習(xí)方法在單應(yīng)估計(jì)中的潛力;2017年Nowruzi等人[13]使用一種分層堆疊的網(wǎng)絡(luò),通過堆疊多個(gè)相同網(wǎng)絡(luò)模塊來逐步細(xì)化估計(jì)結(jié)果;Nguyen等人[14]提出了單應(yīng)估計(jì)的無監(jiān)督學(xué)習(xí)方法;2020年Zhang等人[15]以殘差網(wǎng)絡(luò)為主干,并使用內(nèi)容掩碼來選擇可靠的區(qū)域進(jìn)行單應(yīng)估計(jì)。這些方法均取得了一定的效果,但都忽略了單應(yīng)估計(jì)的多尺度性。在單應(yīng)估計(jì)中,兩次拍攝的照片由于相機(jī)的位置、距離和角度的不同,導(dǎo)致兩張圖像中的同一物體可能具有不同的尺度,而上述網(wǎng)絡(luò)模型均未考慮到這一點(diǎn),采用了單一尺度的特征進(jìn)行單應(yīng)估計(jì),因此具有一定的局限性。
為了解決單應(yīng)估計(jì)中存在的多尺度問題,同時(shí)也受到SKNet[16]在多尺度特征融合方式上的啟發(fā),本文提出了一種多尺度殘差單應(yīng)估計(jì)網(wǎng)絡(luò)(multi-scale residual homography estimation network,MRHENet)來進(jìn)行單應(yīng)估計(jì)。該網(wǎng)絡(luò)主要?jiǎng)?chuàng)新點(diǎn)有:a)使用不同感受野的卷積層提取多尺度特征進(jìn)行單應(yīng)估計(jì);b)提出多尺度特征融合模塊(multi-scale feature fusion module,MFF Module)來有效融合多尺度特征;c)不直接估計(jì)四角點(diǎn)絕對(duì)像素偏移[12],而是估計(jì)四角點(diǎn)歸一化偏移。在MS-COCO[17]與ApolloScape數(shù)據(jù)集[18]上的實(shí)驗(yàn)結(jié)果表明,本文方法優(yōu)于現(xiàn)有方法。其中,在MS-COCO數(shù)據(jù)集上,本文方法平均角點(diǎn)誤差[12]僅為0.788個(gè)像素,與文獻(xiàn)[12,15]相比,誤差分別降低了85.0%和59.4%,因此該方法精度顯著提高,并且具有更強(qiáng)的魯棒性。
1基本原理
1.1傳統(tǒng)單應(yīng)估計(jì)方法原理
假設(shè)通過針孔相機(jī)模型對(duì)同一平面上的物體進(jìn)行兩次拍攝獲得一對(duì)圖像A和B,那么圖像A和B存在單應(yīng)變換的關(guān)系。使用3×3的非奇異單應(yīng)矩陣H來表示這種關(guān)系,那么根據(jù)單應(yīng)矩陣的定義[1],可得單應(yīng)變換式(1)。
x′y′1=H·xy1=h11h12h13h21h22h23h31h32h33·xy1(1)
其中:?jiǎn)螒?yīng)矩陣H將圖像A上的點(diǎn)(x,y)映射到另一圖像B上的(x′,y′)。將式(1)變換后,可得兩個(gè)線性方程:
x′=h11x+h12y+h13h31x+h32y+h33, y′=h21x+h22y+h23h31x+h32y+h33
(2)
在單應(yīng)矩陣H中,h33為非零的縮放系數(shù),一般為1,因此只有八個(gè)自由度。根據(jù)式(2),一組匹配點(diǎn)對(duì)可得兩個(gè)線性方程,因此最少只需要四組匹配點(diǎn)對(duì)即可求解單應(yīng)矩陣,唯一的限制是這四組匹配點(diǎn)對(duì)中來自同一圖像的點(diǎn)需要滿足任意三點(diǎn)不共線[1]。
單應(yīng)矩陣求解方法如式(3)所示。
Η=無法求解nlt;4
fDLT(cornersA,cornersB) n=4
fLS(cornersA,cornersB) ngt;4 (3)
其中:cornersA、cornersB分別表示對(duì)兩圖提取匹配特征點(diǎn)的坐標(biāo);n表示匹配點(diǎn)對(duì)的數(shù)量。匹配點(diǎn)對(duì)若少于四組,則無法求解;若只有四組,則可以使用直接線性變換法(direct linear transformation,DLT)求解單應(yīng)矩陣;若多于四組,則可以使用最小二乘法(least squares,LS)求解。
傳統(tǒng)單應(yīng)估計(jì)方法步驟如下:a)通過特征點(diǎn)檢測(cè)算法從待估計(jì)的兩圖中獲取特征點(diǎn);b)使用特征點(diǎn)匹配算法以建立兩組特征點(diǎn)之間的對(duì)應(yīng)關(guān)系;c)根據(jù)對(duì)應(yīng)關(guān)系來求解單應(yīng)矩陣。針對(duì)特征點(diǎn)檢測(cè)算法,目前已有大量研究。文獻(xiàn)[7]提出SIFT算法,其匹配精度高,但算法復(fù)雜度較高,運(yùn)算時(shí)間長(zhǎng);文獻(xiàn)[8]對(duì)SIFT算法運(yùn)算速度進(jìn)行了改進(jìn),提出SURF算法;文獻(xiàn)[9]提出了ORB算法,計(jì)算效率較高但質(zhì)量不如SIFT算法。特征點(diǎn)匹配可使用暴力匹配或FLANN[10]等方法。由于可能存在誤匹配的特征點(diǎn)對(duì),在求解單應(yīng)矩陣時(shí),還需要使用RANSAC[11]算法排除誤匹配的離群值。
傳統(tǒng)單應(yīng)估計(jì)方法依賴于特征點(diǎn)檢測(cè)質(zhì)量與分布。實(shí)際上,為了達(dá)到理想精度而選擇的特征點(diǎn)檢測(cè)算法速度通常較慢,并且對(duì)于弱紋理圖像,往往難以找到足夠多的匹配點(diǎn)對(duì)來求解單應(yīng)矩陣,導(dǎo)致誤差很大甚至無法求解。因此,傳統(tǒng)單應(yīng)估計(jì)方法魯棒性較弱,在實(shí)際使用時(shí)有諸多限制。
1.2深度學(xué)習(xí)單應(yīng)估計(jì)方法原理
基于深度學(xué)習(xí)的單應(yīng)估計(jì)是指通過深度學(xué)習(xí)方法從輸入的兩張圖像中估計(jì)出對(duì)應(yīng)的單應(yīng)變換,其基本原理如圖1所示。假設(shè)有一對(duì)待估計(jì)圖像A和B,其中A為源圖像,B為目標(biāo)圖像,圖像B是由圖像A經(jīng)過單應(yīng)變換而來,單應(yīng)矩陣為H。基于深度學(xué)習(xí)的單應(yīng)估計(jì)方法的基本步驟為:首先對(duì)圖像A和B進(jìn)行預(yù)處理,然后將處理后的圖像輸入網(wǎng)絡(luò),由網(wǎng)絡(luò)估計(jì)出某種形式表示的單應(yīng)變換,最后計(jì)算得到單應(yīng)矩陣H*(H*表示對(duì)H的估計(jì)值,下文均使用上標(biāo)“*”表示估計(jì)值)。
單應(yīng)變換具有多種表示方式,可以直接采用單應(yīng)矩陣來表示,也可以采用四角點(diǎn)絕對(duì)像素偏移[12]或者其他形式來表示。由于單應(yīng)矩陣中各個(gè)元素的意義與取值范圍各不相同,例如式(1)中h11、h12、h21和h22表示旋轉(zhuǎn),h13、h23表示平移,而平移元素一般會(huì)遠(yuǎn)遠(yuǎn)大于旋轉(zhuǎn)元素,且無法對(duì)矩陣中的元素進(jìn)行歸一化處理,所以直接使用深度網(wǎng)絡(luò)估計(jì)單應(yīng)矩陣十分困難。為此,文獻(xiàn)[12]不直接估計(jì)單應(yīng)矩陣,而是把單應(yīng)矩陣參數(shù)化為四角點(diǎn)絕對(duì)像素偏移,通過網(wǎng)絡(luò)估計(jì)四角點(diǎn)絕對(duì)像素偏移從而得到四組匹配點(diǎn)對(duì),再使用式(3)中的直接線性法求解以獲取單應(yīng)矩陣。
與傳統(tǒng)單應(yīng)估計(jì)方法相比,深度學(xué)習(xí)單應(yīng)估計(jì)方法在速度和魯棒性上具有諸多優(yōu)勢(shì)。傳統(tǒng)方法由于需要檢測(cè)和匹配特征點(diǎn),速度通常較慢,并且在弱紋理圖像中難以獲得穩(wěn)定有效的匹配點(diǎn)對(duì),導(dǎo)致不能工作。而深度學(xué)習(xí)方法無須檢測(cè)與匹配特征點(diǎn),所以速度較快。對(duì)于傳統(tǒng)方法不能處理的弱紋理圖像,深度學(xué)習(xí)同樣能根據(jù)大量訓(xùn)練數(shù)據(jù)學(xué)習(xí)到的規(guī)律來估計(jì)出較合理的單應(yīng)矩陣。因此深度學(xué)習(xí)單應(yīng)估計(jì)方法在實(shí)際使用中限制較小、魯棒性更強(qiáng),具有較大的應(yīng)用價(jià)值。
2多尺度殘差單應(yīng)估計(jì)網(wǎng)絡(luò)
2.1網(wǎng)絡(luò)結(jié)構(gòu)
2016年文獻(xiàn)[12]首次將一種VGG架構(gòu)的網(wǎng)絡(luò)用于單應(yīng)估計(jì),但由于網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單且深度較淺,效果與傳統(tǒng)方法相比提升有限。傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)隨著深度不斷加深,網(wǎng)絡(luò)可能會(huì)出現(xiàn)退化,訓(xùn)練也會(huì)更加困難。因此,2016年He等人[19]提出殘差網(wǎng)絡(luò)(ResNet),通過恒等映射來降低深度網(wǎng)絡(luò)訓(xùn)練難度。2020年文獻(xiàn)[15]使用ResNet34作為主干,并使用內(nèi)容掩碼來進(jìn)行單應(yīng)估計(jì),效果相比于前人有一定提高。但是以上方法均忽略了單應(yīng)估計(jì)中存在的多尺度問題,因此具有一定的局限性。
在單應(yīng)估計(jì)中,兩次拍攝的照片由于相機(jī)位置、距離和角度的不同,兩張圖像之間會(huì)存在扭曲與縮放,導(dǎo)致圖像中同一物體尺度可能會(huì)發(fā)生變化,所以單應(yīng)估計(jì)面臨多尺度的挑戰(zhàn)。為了解決這一問題,本文綜合多尺度特征信息來估計(jì)四角點(diǎn)歸一化偏移,提出了一種多尺度殘差單應(yīng)估計(jì)網(wǎng)絡(luò)來進(jìn)行單應(yīng)估計(jì)。該網(wǎng)絡(luò)相比于前人提出的單應(yīng)估計(jì)網(wǎng)絡(luò)具有明顯的創(chuàng)新:首先,網(wǎng)絡(luò)具有三個(gè)多尺度分支,能夠提取圖像的多尺度特征信息;其次,提出了多尺度特征融合模塊(MFF module)來逐步融合多尺度特征;最后,網(wǎng)絡(luò)并不直接估計(jì)四角點(diǎn)絕對(duì)像素偏移,而是估計(jì)四角點(diǎn)歸一化偏移。網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
網(wǎng)絡(luò)輸入待估計(jì)的兩張128×128的歸一化灰度圖像,輸出表示四角點(diǎn)歸一化偏移的4×2矩陣H*4pt_norm。具體計(jì)算過程如下:首先,將待估計(jì)的兩圖像歸一化后堆疊成雙通道,同時(shí)輸入到三個(gè)特征提取分支中,分別提取大尺度、中尺度和小尺度的特征,其中,中尺度和小尺度分支具有額外的步長(zhǎng)為2的卷積層用來減小特征圖;三個(gè)分支經(jīng)過ReLU激活函數(shù)后,大尺度特征圖輸入到ResNet34[19]的stage1塊,stage1塊輸出與中尺度特征圖通過一個(gè)MFF模塊(縮放系數(shù)r=2)融合后作為stage2塊的輸入,stage2塊輸出與小尺度特征圖再通過一個(gè)MFF模塊(r=4)融合后依次通過stage3塊和stage4塊;最后,特征圖通過平均池化后形狀變?yōu)?×1×512,再經(jīng)過全連接層輸出4×2的矩陣H*4pt_norm。為了加速訓(xùn)練,在每個(gè)卷積層后均使用了BatchNorm層[20]。
2.2多尺度特征提取
在單應(yīng)估計(jì)中,兩次拍攝的照片由于相機(jī)位置、距離和角度的不同,兩張圖像之間會(huì)存在扭曲與縮放,導(dǎo)致圖像中的同一物體尺度可能會(huì)發(fā)生變化,所以單應(yīng)估計(jì)面臨多尺度的挑戰(zhàn)。而文獻(xiàn)[12~15]均忽略了這個(gè)問題,將兩圖視為相同尺度對(duì)待,使用單一大小的卷積層來提取圖像的原始特征。單一的卷積核感受野是固定不變的,導(dǎo)致提取到的特征是在單一空間尺度下的,雖然特征會(huì)在后續(xù)的卷積層和激活函數(shù)后被不斷聚合成深層語義特征,感受野逐漸變大,但此時(shí)已經(jīng)丟失了圖像原始的空間、幾何等細(xì)節(jié)特征[21]。因此,使用單一尺度的特征來進(jìn)行單應(yīng)估計(jì)具有一定的局限性,尤其在兩張圖像具有較大尺度差異時(shí)效果不佳。因此,多尺度特征信息對(duì)于單應(yīng)估計(jì)是十分重要的。本文把多尺度特征信息引入網(wǎng)絡(luò),利用多尺度特征信息來解決單應(yīng)估計(jì)中尺度不一致的問題,從而提高單應(yīng)估計(jì)的精度,使得即使在圖像尺度差異較大的情況下該方法也可以達(dá)到理想效果。
如圖2所示的網(wǎng)絡(luò)具有大、中、小三個(gè)尺度的提取分支,每個(gè)分支能夠提取對(duì)應(yīng)尺度的特征,因此網(wǎng)絡(luò)能夠利用多尺度特征信息來估計(jì)單應(yīng)變換。具體來說,在三個(gè)多尺度分支中,分別使用了感受野為7×7、5×5和3×3空洞卷積層[22]來提取圖像的不同尺度上的特征。圖3顯示了空洞卷積層的原理,與標(biāo)準(zhǔn)卷積相比,空洞卷積可以保證感受野大小不變的同時(shí)降低參數(shù)量和計(jì)算量,能夠提高計(jì)算效率。
在原始的ResNet34中,使用了最大池化來對(duì)特征圖下采樣,但是最大池化下采樣過程中只保留最大值,導(dǎo)致其余特征信息丟失,因此本文沒有使用最大池化,而是將stage1塊中第一層卷積步長(zhǎng)設(shè)置為2(原始步長(zhǎng)為1),在避免特征信息丟失的同時(shí)也減少了計(jì)算量。由于后續(xù)的MFF模塊需要輸入兩個(gè)相同形狀的特征圖,所以在中尺度和小尺度特征提取分支中分別使用了一層和兩層卷積核為2×2、步長(zhǎng)為2的卷積層,用于對(duì)特征圖下采樣以匹配后續(xù)的MFF模塊,同時(shí)也可以加強(qiáng)特征信息在通道上的交流。
2.3多尺度特征融合
在基于卷積的單應(yīng)估計(jì)網(wǎng)絡(luò)中,圖像特征通過卷積層逐漸由淺層特征變?yōu)樯顚犹卣鳌\層特征分辨率更高,包含更多位置、幾何等細(xì)節(jié)信息,但是由于經(jīng)過的卷積層較少,其語義性更低;而深層特征具有更強(qiáng)的語義信息,但是對(duì)細(xì)節(jié)感知能力較差。有效利用淺層特征與深層特征的優(yōu)勢(shì)是提高單應(yīng)估計(jì)精度的關(guān)鍵之一。
因此,網(wǎng)絡(luò)并沒有在剛開始就將三種尺度的特征融合,而是在stage1塊和stage2塊后分別將中尺度和小尺度的特征融合到網(wǎng)絡(luò)主干中。采用了逐步融合的方式能夠利用淺層特征包含的細(xì)節(jié)信息對(duì)深層特征進(jìn)行補(bǔ)充,實(shí)現(xiàn)淺層特征與深層特征優(yōu)勢(shì)互補(bǔ)。多尺度分支提取的特征由于尺度不同,如果直接通過相加來融合會(huì)導(dǎo)致不同尺度特征混合而難以充分利用多尺度特征的優(yōu)勢(shì);如果將特征在通道上連接,多尺度特征能得到保留,但是通道數(shù)就會(huì)加倍,計(jì)算效率會(huì)大幅降低。考慮到特征雖然尺度不同,但均來自于同一輸入,所以特征之間會(huì)存在冗余。為了充分利用多尺度特征并減少冗余以提高計(jì)算效率,同時(shí)也受到文獻(xiàn)[16]在多尺度特征融合方式上的啟發(fā),本文提出了使用MFF module來融合不同尺度的特征。
MFF模塊結(jié)構(gòu)如圖4所示。輸入兩個(gè)不同尺度的特征圖x1、x2∈Euclid ExtraaBpH×W×C,MFF模塊輸出融合后的特征圖xout∈Euclid ExtraaBpH×W×C。文獻(xiàn)[16]為了融合不同尺度的特征,先將x1與x2直接相加,再使用1×1的平均池化來提取通道上的信息。而本文與文獻(xiàn)[16]有兩處不同:a)本文先將x1與x2在通道上連接,這樣可以保持x1與x2各自的特征,便于后續(xù)提取通道上的特征;b)本文同時(shí)使用了1×1平均池化與1×1最大池化來提取通道上的信息,原因是平均池化只能提取到全局的平均信息,不能提取到局部信息,而最大池化只能提取局部信息而不能提取到全局信息,所以同時(shí)使用平均池化與最大池化能夠綜合全局與局部的信息。MFF模塊具體計(jì)算過程如下:
a)將x1、x2在通道上連接,得到xcat∈Euclid ExtraaBpH×W×2C,對(duì)xcat分別使用1×1平均池化和1×1最大池化提取通道上的信息并將結(jié)果相加,得到xg∈Euclid ExtraaBp1×1×2C。
xg=AvgPool(xcat)+MaxPool(xcat)(4)
b)使用節(jié)點(diǎn)數(shù)為C/r的全連接層fc0(r表示縮放系數(shù))縮短xg的長(zhǎng)度以提高計(jì)算效率,隨后通過ReLU函數(shù),得到zr∈Euclid ExtraaBp1×1×C/r。zr分別通過兩個(gè)節(jié)點(diǎn)數(shù)為C的全連接層fc1、fc2,得到z1、z2∈Euclid ExtraaBp1×1×C。
zr=ReLU (fc0(xg))
z1=fc1(zr),z2=fc2(zr)(5)
c)將z1、z2在通道上堆疊,并在通道上使用softmax函數(shù),得到輸入的兩特征圖在通道上的權(quán)重w1、w2∈Euclid ExtraaBp1×1×C。
w1[i]=ez1[i]ez1[i]+ez2[i], w2[i]=ez2[i]ez1[i]+ez2[i](6)
d)使用廣播乘法將x1、x2分別與w1、w2相乘,再將其結(jié)果相加,得到融合后的特征圖。
xout=x1w1+x2w2(7)
不同于將特征圖直接簡(jiǎn)單相加,MFF模塊能夠綜合通道上的全局信息為不同尺度的特征圖分配相應(yīng)權(quán)重,使得網(wǎng)絡(luò)具有根據(jù)輸入的圖像選擇合適尺度的特征進(jìn)行單應(yīng)估計(jì)的能力。不同尺度的特征信息經(jīng)過MFF模塊融合后能夠保留有效特征,減少冗余與無效的特征,有利于網(wǎng)絡(luò)充分利用多尺度特征信息,從而提高單應(yīng)估計(jì)的精度。
2.4四角點(diǎn)歸一化偏移
文獻(xiàn)[12]為了解決直接估計(jì)單應(yīng)矩陣而導(dǎo)致網(wǎng)絡(luò)難以優(yōu)化的問題,將單應(yīng)矩陣參數(shù)化為四角點(diǎn)絕對(duì)像素偏移H4pt,通過估計(jì)四角點(diǎn)絕對(duì)像素偏移來間接估計(jì)單應(yīng)矩陣,在一定程度上降低了網(wǎng)絡(luò)優(yōu)化的難度。但是,實(shí)際上四角點(diǎn)絕對(duì)像素偏移在數(shù)值上差異仍然較大,這會(huì)使得網(wǎng)絡(luò)優(yōu)化過程中梯度差異較大,不利于網(wǎng)絡(luò)優(yōu)化。同時(shí)也考慮到深度網(wǎng)絡(luò)中的權(quán)重一般會(huì)初始化為-1.0~1.0,而四角點(diǎn)絕對(duì)像素偏移在大部分情況下會(huì)遠(yuǎn)大于1像素,為了學(xué)習(xí)到這種絕對(duì)像素偏移的分布規(guī)律,網(wǎng)絡(luò)權(quán)重相對(duì)于初始值會(huì)發(fā)生較大改變,因此使用網(wǎng)絡(luò)直接估計(jì)四角點(diǎn)絕對(duì)像素偏移不利于網(wǎng)絡(luò)收斂。為了進(jìn)一步降低網(wǎng)絡(luò)優(yōu)化難度,本文用網(wǎng)絡(luò)估計(jì)四角點(diǎn)歸一化偏移H4pt_norm,計(jì)算方法如式(8)所示。
H4pt_norm=Δx1Δy1Δx2Δy2Δx3Δy3Δx4Δy4=H4pt·1W001H(8)
其中:Δxi與Δyi(i=1,2,3,4)表示從圖像原點(diǎn)開始順時(shí)針第i個(gè)點(diǎn)在圖像寬度與高度方向上的歸一化偏移量;W與H分別表示圖像的寬度與高度。由網(wǎng)絡(luò)估計(jì)的四角點(diǎn)歸一化偏移H*4pt_norm到單應(yīng)矩陣H*的計(jì)算方法如式(9)~(11)所示。
cornersA=000HWHW0(9)
cornersB=cornersA+H4pt_norm·W00H(10)
H*=fDLT(cornersA,corners*B)(11)
3實(shí)驗(yàn)與分析
3.1網(wǎng)絡(luò)訓(xùn)練
本文使用MS-COCO與ApolloScape數(shù)據(jù)集,按照文獻(xiàn)[12]方法生成實(shí)驗(yàn)所需數(shù)據(jù)集,不同的是本文并沒有將圖像縮放到320×240,這會(huì)使網(wǎng)絡(luò)從更少的特征中學(xué)習(xí)單應(yīng)估計(jì),有利于增強(qiáng)網(wǎng)絡(luò)魯棒性。除此以外,本文還通過將像素值除以255的方式來對(duì)圖像進(jìn)行歸一化。總共生成了22萬對(duì)圖像,圖像尺寸為128×128,最大角點(diǎn)偏移ρ=32像素(圖像的四分之一),其中18萬對(duì)用于訓(xùn)練網(wǎng)絡(luò),4萬對(duì)用于驗(yàn)證網(wǎng)絡(luò)。
損失函數(shù)使用平均角點(diǎn)誤差(average corner error,ACE)[12],表示預(yù)測(cè)的四角點(diǎn)偏移與真實(shí)值的平均歐氏距離,單位為像素(pixel,px),計(jì)算方法如式(12)所示。
ACE=14∑4i=1(Δxi-Δx*i)2+(Δyi-Δy*i)2×128(12)
本文基于PyTorch深度學(xué)習(xí)框架來完成實(shí)驗(yàn)。訓(xùn)練過程中,使用了概率為0.5的隨機(jī)翻轉(zhuǎn)用于增強(qiáng)數(shù)據(jù),采用Adam優(yōu)化器,L2正則化權(quán)重衰減系數(shù)設(shè)置為0.003,每次迭代訓(xùn)練256對(duì)圖像,初始學(xué)習(xí)率為0.000 2,每迭代20k次學(xué)習(xí)率乘以0.7,總共迭代200k次。
3.2實(shí)驗(yàn)測(cè)試
為了驗(yàn)證本文方法的實(shí)際效果,使用3.1節(jié)中的方法分別在最大角點(diǎn)偏移ρ=8 px、16 px、24 px和32 px時(shí)各生成了4萬對(duì)圖像,總共生成了16萬對(duì)圖像作為測(cè)試集。其中ρ=8 px表示最大偏移距離較小,ρ=32 px表示最大偏移距離較大,因此測(cè)試集中包含了不同程度偏移的圖像對(duì)。
在測(cè)試過程中,平均角點(diǎn)誤差A(yù)CE可能偶爾出現(xiàn)極端大的情況,導(dǎo)致整個(gè)測(cè)試集上的平均ACE(mean average corner error,Mean-ACE)偏高,同時(shí)傳統(tǒng)方法可能會(huì)由于特征點(diǎn)較少而失敗。所以本文對(duì)ACE作出限制,對(duì)于ACEgt;32 px或者傳統(tǒng)方法失敗的情況,均視為ACE=32 px。對(duì)于128×128的圖像,如果ACEgt;32 px則意味結(jié)果幾乎沒有任何價(jià)值,所以選擇用32 px作為閾值。由于Mean-ACE誤差只能反映誤差在測(cè)試集上的平均情況,不能反映誤差分布情況,所以本文引入了中值A(chǔ)CE(median average corner error,Median-ACE)作為評(píng)價(jià)指標(biāo)之一。對(duì)于ACEgt;32 px或者傳統(tǒng)方法失敗這兩種情況,意味著這次估計(jì)是無效的,所以本文還引入了無效率(invalid rate,IR)作為評(píng)價(jià)指標(biāo)之一,表示無效的情況在測(cè)試集中的比例。實(shí)驗(yàn)中所有方法均經(jīng)過多次測(cè)試,以避免偶然情況。
為了分別驗(yàn)證本文提出的三個(gè)改進(jìn)點(diǎn)的效果,首先進(jìn)行了消融實(shí)驗(yàn)。所有模型均使用相同的方法進(jìn)行訓(xùn)練與測(cè)試,在MS-COCO數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果如表1所示,其中MFE表示使用多尺度特征提取,MFF表示使用MFF模塊來融合多尺度特征,Norm表示使用了四角點(diǎn)歸一化偏移。由表1可知,單獨(dú)使用多尺度特征提取或者四角點(diǎn)歸一化偏移均能提升模型效果,并且使用MFF模塊融合多尺度特征后模型效果有一定提升。當(dāng)同時(shí)使用多尺度特征融合、MFF模塊與四角點(diǎn)歸一化偏移時(shí),模型效果能夠進(jìn)一步提升。
在進(jìn)行了消融實(shí)驗(yàn)后,本文使用最終模型與其他方法進(jìn)行對(duì)比實(shí)驗(yàn)。參與實(shí)驗(yàn)的方法包括了傳統(tǒng)方法中的SIFT[7]+RANSAC[11]和ORB[9]+RANSAC[11],以及基于深度學(xué)習(xí)的文獻(xiàn)[12,14,15]方法。在MS-COCO與ApolloScape數(shù)據(jù)集上的對(duì)比實(shí)驗(yàn)結(jié)果如表2、3所示。
由于ApolloScape數(shù)據(jù)集中的圖像紋理弱于MS-COCO數(shù)據(jù)集,所以各種方法在ApolloScape數(shù)據(jù)集上的誤差均有一定提升。比較表2與3可以明顯看出,傳統(tǒng)方法在較弱紋理圖像上誤差與無效率大幅增加,這使得傳統(tǒng)方法在實(shí)際中幾乎難以應(yīng)用。而基于深度學(xué)習(xí)的方法誤差與無效率雖然也有一定升高,但是幅度卻較小,這也印證了基于深度學(xué)習(xí)的方法在弱紋理圖像的魯棒性更強(qiáng)。
由于基于深度學(xué)習(xí)的方法在兩個(gè)數(shù)據(jù)集上具有相似的趨勢(shì),所以本文以MS-COCO數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果為例進(jìn)行分析。圖5和6分別顯示了MS-COCO數(shù)據(jù)集上不同程度偏移下各種方法的Mean-ACE和Median-ACE誤差。
從表2、3和圖5、6中可以看出,在傳統(tǒng)方法中,SIFT+RANSAC在精度上明顯優(yōu)于ORB+RANSAC。所有方法隨著圖像最大偏移距離ρ由小變大(從8 px增加到32 px),Mean-ACE與Median-ACE誤差均有不同程度的增加。其中,本文誤差變化相對(duì)平緩,是唯一能夠始終保持亞像素級(jí)精度的方法,而其他方法誤差增加比較明顯。基于深度學(xué)習(xí)的文獻(xiàn)[12,14,15]方法在MS-COCO數(shù)據(jù)集上雖然Mean-ACE誤差小于SIFT+RANSAC,但是Median-ACE誤差卻比SIFT+RANSAC大,而本文方法則在Mean-ACE與Median-ACE誤差上均領(lǐng)先于SIFT+RANSAC。
圖7顯示了在較大偏移(ρ=32 px)時(shí)MS-COCO數(shù)據(jù)集上各種方法的ACE累積分布曲線。從圖中可以看出,傳統(tǒng)方法ORB+RANSAC表現(xiàn)較差,在大部分情況下都具有相對(duì)較高的誤差,無效率高達(dá)49.32%;SIFT+RANSAC表現(xiàn)較好一些,能夠在大約70%的情況下保持較低的誤差(ACElt;4 px),而在另外30%的情況下誤差會(huì)急劇升高,表現(xiàn)變得非常糟糕,無效率為20.1%。基于深度學(xué)習(xí)的方法整體上都能在99%以上的情況下正常工作(ACElt;32 px),但文獻(xiàn)[12,14,15]方法60%以上的情況誤差高于SIFT+RANSAC,僅能在另外少部分情況下獲得比SIFT+RANSAC更好的結(jié)果;而本文方法能夠在絕大部分情況下具有比SIFT+RANSAC更低的誤差,并且能夠在99%情況下保持較高的精度(ACElt;4 px),具有最好的魯棒性。
表4顯示了不同方法之間的性能對(duì)比。在模型大小方面,本文模型比文獻(xiàn)[12,14]方法更小;在處理速度方面,本文方法速度與傳統(tǒng)方法相比具有顯著提升,與文獻(xiàn)[15]方法速度相當(dāng)。
3.3效果展示
圖8展示了使用不同方法進(jìn)行單應(yīng)估計(jì)上的可視化效果。其中最左側(cè)表示被估計(jì)的兩張圖像;右側(cè)圖像中的藍(lán)色框與紅色框分別表示被估計(jì)兩圖在原圖中的位置;綠色框表示使用不同方法估計(jì)的結(jié)果(見電子版)。紅色框與綠色框四角點(diǎn)的平均距離即為3.1節(jié)中的ACE誤差,兩者越接近則表示誤差越低,該方法越好。估計(jì)誤差顯示在對(duì)應(yīng)圖像下方,fail表示該方法失敗。可以看出,SIFT+RANSAC與ORB+RANSAC在弱紋理圖像中幾乎不能工作,而本文方法則始終保持較低的誤差。
*PPS(pairs per second)表示每秒處理的圖像對(duì)數(shù)量。SIFT+RANSAC與ORB+RANSAC運(yùn)行于CPU(R5 5600X),而其他方法運(yùn)行于GPU(RTX 3080Ti)。
4結(jié)束語
單應(yīng)估計(jì)是圖像拼接、圖像矯正等許多計(jì)算機(jī)視覺任務(wù)中的一個(gè)基礎(chǔ)且重要的步驟,具有廣泛的應(yīng)用場(chǎng)景,所以提高單應(yīng)估計(jì)的精度對(duì)這些任務(wù)具有重大意義。基于特征點(diǎn)匹配的傳統(tǒng)單應(yīng)估計(jì)方法難以在弱紋理圖像中工作。然而現(xiàn)有的深度學(xué)習(xí)方法未考慮到單應(yīng)估計(jì)的多尺度性,使用單一尺度的特征來估計(jì)四角點(diǎn)絕對(duì)像素偏移,導(dǎo)致圖像具有較大偏移時(shí)表現(xiàn)不佳。本文提出了一種基于多尺度殘差單應(yīng)估計(jì)網(wǎng)絡(luò)來進(jìn)行單應(yīng)估計(jì)的方法,通過提取圖像的多尺度特征信息并使用MFF模塊來融合多尺度特性信息,有效利用了多尺度特征信息,同時(shí)結(jié)合了淺層特征與深層特征的優(yōu)勢(shì),并且通過估計(jì)四角點(diǎn)歸一化偏移來進(jìn)一步降低了網(wǎng)絡(luò)優(yōu)化的難度。在多個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)證明了該方法相比于前人提出的傳統(tǒng)方法以及深度學(xué)習(xí)方法精度顯著提高、魯棒性也更強(qiáng),因此在實(shí)際中具有較大的應(yīng)用價(jià)值。
參考文獻(xiàn):
[1]Hartley R,Zisserman A. Multiple view geometry in computer vision [M]. 2nd ed. Cambridge: Cambridge University Press,2004: 25-48.
[2]夏丹,周睿. 視差圖像配準(zhǔn)技術(shù)研究綜述 [J]. 計(jì)算機(jī)工程與應(yīng)用,2021,57(2): 18-27. (Xia Dan,Zhou Rui. Survey of parallax image registration technology [J]. Computer Engineering and Applications,2021,57(2): 18-27.)
[3]Brown M,Lowe D G. Recognising panoramas [C]// Proc of IEEE International Conference on Computer Vision. Piscataway,NJ: IEEE Press,2003: 1218-1225.
[4]Yang Xieliu,Yin Chenyu,Tian Dake,et al. Rule-based perspective rectification for Chinese text in natural scene images [J]. Multimedia Tools and Applications,2021,80(12): 18243-18262.
[5]Zhang Zhongfei,Hanson A R. 3D reconstruction based on homography mapping[C]// Proc of ARPA Image Underst Workshop. 1996: 1007-1012.
[6]Davison A J,Reid I D,Molton N D,et al. MonoSLAM: real-time single camera SLAM [J]. IEEE Trans on Pattern Analysis and Machine Intelligence,2007,29(6): 1052-1067.
[7]Lowe D G. Distinctive image features from scale-invariant keypoints [J]. International Journal of Computer Vision,2004,60(2): 91-110.
[8]Bay H,Tuytelaars T,Van Gool L. SURF: speeded up robust features [C]// Proc of European Conference on Computer Vision. Berlin: Springer,2006: 404-417.
[9]Rublee E,Rabaud V,Konolige K,et al. ORB: an efficient alternative to SIFT or SURF [C]// Proc of IEEE International Conference on Computer Vision. Piscataway,NJ: IEEE Press,2011: 2564-2571.
[10]Muja M,Lowe D G. Fast approximate nearest neighbors with automa-tic algorithm configuration [C]// Proc of the 4th International Confe-rence on Computer Vision Theory and Applications. 2009:331-340.
[11]Fischler M A,Bolles R C. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated carto-graphy [J]. Communications of the ACM,1981,24(6): 381-395.
[12]DeTone D,Malisiewicz T,Rabinovich A. Deep image homography estimation [EB/OL]. (2016) [2022-03-13]. https://arxiv. org/abs/1606. 03798.
[13]Nowruzi F E,Laganiere R,Japkowicz N. Homography estimation from image pairs with hierarchical convolutional networks [C]// Proc of IEEE International Conference on Computer Vision. Piscataway,NJ: IEEE Press, 2017: 913-920.
[14]Nguyen T,Chen S W,Shivakumar S S,et al. Unsupervised deep homography: a fast and robust homography estimation model [J]. IEEE Robotics and Automation Letters,2018,3(3): 2346-2353.
[15]Zhang Jirong,Wang Chuan,Liu Shuaicheng,et al. Content-aware unsupervised deep homography estimation [C]// Proc of European Conference on Computer Vision. Cham: Springer,2020: 653-669.
[16]Li Xiang,Wang Wenhai,Hu Xiaolin,et al. Selective kernel networks [C]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2019: 510-519.
[17]Lin T Y,Maire M,Belongie S,et al. Microsoft COCO: common objects in context [C]// Proc of European Conference on Computer Vision. Cham: Springer,2014: 740-755.
[18]Huang Xinyu,Wang Peng,Cheng Xinjing,et al. The ApolloScape Open dataset for autonomous driving and its application[J]. IEEE Trans on Pattern Analysis and Machine Intelligence,2020,42(10): 2702-2719.
[19]He Kaiming,Zhang Xiangyu,Ren Shaoqing,et al. Deep residual learning for image recognition [C]// Proc of IEEE Conference on Computer Vision and Pattern Recognition. Piscataway,NJ: IEEE Press,2016: 770-778.
[20]Ioffe S,Szegedy C. Batch normalization: accelerating deep network training by reducing internal covariate shift [C]// Proc of International Conference on Machine Learning. New York: ACM Press,2015: 448-456.
[21]姚銘,鄧紅衛(wèi),付文麗,等. 一種改進(jìn)的Mask R-CNN的圖像實(shí)例分割算法 [J]. 軟件,2021,42(9): 78-82. (Yao Ming,Deng Hongwei,F(xiàn)u Wenli,et al. An improved Mask R-CNN image instance segmentation algorithm [J]. Computer Engineering amp; Software,2021,42(9): 78-82.)
[22]Yu F,Koltun V. Multi-scale context aggregation by dilated convolutions [EB/OL]. (2015) [2022-03-13]. https://arxiv. org/abs/1511. 07122.
收稿日期:2022-03-13;修回日期:2022-05-08基金項(xiàng)目:四川省科學(xué)技術(shù)廳應(yīng)用基礎(chǔ)項(xiàng)目(2021YJ0086)
作者簡(jiǎn)介:唐云(1975-),男,四川成都人,副教授,碩導(dǎo),碩士,主要研究方向?yàn)閿?shù)值計(jì)算、深度學(xué)習(xí)等;帥鵬飛(1997-),男(通信作者),四川眉山人,碩士研究生,主要研究方向?yàn)橛?jì)算機(jī)視覺、深度學(xué)習(xí)等(jerry.tom.cat@qq.com);蔣沛凡(1997-),男,江西上饒人,碩士研究生,主要研究方向?yàn)橛?jì)算機(jī)視覺、深度學(xué)習(xí)等;鄧飛(1980-),男,重慶人,教授,碩導(dǎo),博士,主要研究方向?yàn)閳D像與模式識(shí)別、深度學(xué)習(xí)等;楊強(qiáng)(1988-),男,四川遂寧人,講師,碩導(dǎo),博士,主要研究方向?yàn)槿斯ぶ悄堋⒛び?jì)算和特種機(jī)器人等.