李芹
(四川大學計算機學院,成都610065)
圖像拼接的目標是將多張有重疊區域的圖像進行無縫拼接,進而得到一張較高分辨率的圖像。在實際的生產應用中,如3D 虛擬場景、醫學影像分析,普通鏡頭很難拍出不變形的全景圖像,因此圖像拼接技術常被用來構建全景圖像。當前,國內外已有許多學者在圖像拼接領域取得較好的研究成果。近年來,國內外的研究熱點主要集中在如何降低光照、視差、尺度等影響,以及提高拼接效率和增強模型的適應性等方面。
圖像拼接算法依據配準方法的不同,大致分為基于特征的方法和基于區域的方法。基于特征的拼接方法通過對圖像間重疊部分的特征點、斑塊特征等信息進行提取和匹配,這類方法有較強的魯棒性和穩定性,應用也比較廣泛。基于區域的拼接方法通過計算圖像間的灰度相似度,獲得圖像重疊部分的位置和范圍。
本文采用了常用的圖像拼接算法流程[13],如圖1 所示。其中包括:①取圖像;②輸入圖像;③圖像預處理:對輸入的圖像進行去噪、直方圖均衡化等處理,避免因圖像質量不佳導致拼接效果差;④圖像配準:提取圖像SIFT特征點,再利用隨機抽樣一致算法精確過濾匹配點對,最后獲得圖像變換模型;⑤圖像融合:基于多分辨率金字塔,根據匹配點對和圖像變換矩陣將多張圖像合為一張圖像,同時消除拼接處的縫隙;⑥輸出圖像。

圖1 圖像拼接算法流程
圖像配準方法主要包括基于灰度信息、基于變換域和基于特征點的三類配準方法。基于灰度信息的配準方法根據多張圖像重疊部分的灰度信息計算相似度,再采用搜索算法來確定使相似度為最值的圖像變換模型的參數。顯然,這種方法雖然精度高、魯棒性好,但是計算量大、實時匹配的難度大。基于變換域的配準方法開始于1975 年Kuglin 等人提出的相位相關法[1],此后還有其他學者提出了擴展相位相關法[2]、基于Fourier 變換[3]、Gabor 變換和小波變換的方法。這類方法的優點是對噪聲和光照不敏感,當圖像之間存在歐氏變換即只有旋轉和尺度的變換時,采用此類方法可以高效地進行配準。當圖像之間存在仿射變換、投影變換或透視變換時,此類方法并不能獲得良好的效果。基于特征點的配準方法是指從待匹配圖像中提取一些特征信息,如角點、直線、斑塊等,再針對這些特征信息建立相關性的分析方法,最后確定圖像變換模型的參數。Harris 在1988 年提出了Harris 興趣點檢測子[4],這個方法所提取的Harris 角點具有旋轉和平移不變性。在此基礎上,后面有學者提出Harris-Laplacian 算子[5]和Harris-Affine[6]算子。2004 年,Lowe 將現有的局部特征檢測方法進行了完善和總結,并提出了對此后的圖像處理工作產生了巨大影響的SIFT 算子[7],SIFT描述子在Harris 角點的基礎上還具有尺度不變性和一定范圍內的仿射不變性。在此之后,大量科研工作圍繞SIFT 進行展開。典型的有,PCA-SIFT[8]提出用統計學中的主成分分析(PCA)對SIFT 描述子向量進行降維,這樣可以過濾噪聲和提高匹配效率。SURF 算法[9]在提高特征點檢測效率方面有了明顯的提升。Moreal提出的ASIFT 方法不僅具有仿射不變性、尺度不變性,所提取的特征點也遠比SIFT 算法多。2013 年,Guo-Rong Cai 等人提出了PSIFT(Perspective-SIFT)[11],這個方法用單應變換來近似射影變換,對射影變換具有較好的魯棒性。
總的來說,基于特征點的配準方法在解決圖像尺度不變、仿射不變或透視不變性具有較大的優勢,穩定性和魯棒性也較強,本文將采用基于SIFT 特征提取的方法來進行圖像拼接。
(1)SIFT 特征點檢測
SIFT 算法是基于尺度空間提取局部特征的算法,該算法所提取出的特征點對旋轉和尺度變化具有不變性,對光照、噪聲和一定的仿射變化具有魯棒性。整個算法分為以下四部分:
①尺度空間極值探測
首先是構造多尺度空間。由于高斯核函數被證明是實現空間尺度變換的唯一線性核,因此二維圖像的尺度空間被定義為:
L(x,y,σ)=G( )x,y,σ *I(x,y) (1)
有別于之前大多數算法所采用的Laplacian-of-Gaussian 方法[4],SIFT 算法提出了高斯差分(DoG)尺度空間,利用不同尺度的高斯差分核函數與圖像進行卷積操作能生成圖像金字塔。

將每個采樣點同它26 個在空間上和尺度上相鄰的點進行比較,如果存在某個采樣點的值比這26 個相鄰點的值都大或都小,則該點被認為是圖像在該尺度下的一個關鍵點。
②關鍵點精確定位
這一步是想將上一步所得到的關鍵點精確為亞像素級精度,同時獲得該點更精確的尺度信息,剔除上一步中對噪聲敏感的點和具有不穩定邊緣響應的關鍵點。首先將DoG 函數擬合為三元二次的泰勒展開式,再對該式求導從而獲得關鍵點更精確位置和尺度信息。其次將已檢測到的精確特征點,代入DoG 函數的展開式中,去掉值低于一定閾值的特征點。由于DoG函數主曲率與其Hessian 矩陣特征值成正比,那么當
③確定主方向
上一步已確定了不同尺度下的精確關鍵點,接下來將為這些關鍵點一一分配主方向。
計算每個關鍵點處以及以該點為中心、3*1.5σ為半徑的圓形區域內所有采樣點的梯度值m( x,y )和方向θ( x,y )。計算公式如下:

建立梯度直方圖,統計在關鍵點鄰域內的采樣點的梯度值和方向。梯度直方圖的橫軸以10°為單位劃分為36 段,直方圖的每一柱的縱向高度代表所有在該方向范圍內的采樣點的梯度幅值的累加。將梯度直方圖峰值對應的方向看作特征點的主方向,若有大于峰值的80%的柱,其峰值所對應的方向可看作特征點的輔方向。結合主方向附近兩個柱的柱值做拋物線插值,可得到關鍵點的精確主方向。
④生成描述子
使用方向歸一化來實現旋轉不變性:將坐標軸旋轉至關鍵點的主方向。旋轉后以關鍵點為中心構造16×16 的區域,對此區域內每個像素點的梯度方向以及幅值進行高斯加權。在每個4×4 的子區域內分別計算8 個方向上幅值的累加。最終區域內將形成一個反映特征點鄰域信息的128 維特征向量。
(2)特征點匹配
上一節通過SIFT 算法提取待匹配圖像的特征點,并生成了特征點的描述子。本節針對一張圖像上的每個特征點,逐一搜索另一張圖像中的特征點,找到描述子相似度最大時所對應的特征點,將這兩個特征點看做一組匹配點對。
經過粗匹配后的特征點對中可能存在錯誤匹配點對,例如兩個特征點所在的圖像區域并不屬于同一場景或同一物體。顯然,保留這種誤匹配點對會影響最終的配準效果,因此本文使用RANSAC(隨機抽樣一致)策略在匹配點對中進行提純。
RANSAC 算法能從包含誤匹配點對的點對中估算圖像變換模型的參數值。具體步驟如下:隨機抽取4對特征點并用最小二乘法求解其對應的單應變換矩陣H,同時計算剩余特征點經過該變換矩陣H 變換后的得到的點與其粗匹配后的點之間的歐氏距離。當距離在一定閾值內的匹配點對數達到最大時,計算這種情況下對應的圖像變換矩陣H,即可獲得最終的圖像變換模型。
本文基于SIFT 特征提取和多分辨率融合方法[12]來實現圖像拼接。下面是在VS2015 環境下對已預處理的兩張圖像進行特征提取、匹配、拼接后的結果。

圖2 提取SIFT特征點

圖3 特征點粗匹配結果

圖4 RANSAC精匹配結果

圖5 拼接效果圖
由上述實驗結果可知,在圖像拼接過程中,基于SIFT 特征的圖像配準方法對圖像的旋轉和尺度具有不變性,對光照和一定的仿射變換也有較強的魯棒性。RANSAC 方法能夠有效地剔除誤匹配點對,多分辨率融合方法可以有效地避免縫隙和重影。
本文通過SIFT 算法、RANSAC 算法以及多分辨率融合方法,實現了圖像的有效拼接。針對圖像配準方法,目前已有文獻提出能實現圖像的仿射、透視不變性,這無疑將推動圖像拼接技術的發展。此外,在圖像配準和圖像融合這兩個過程中都需要建立圖像金字塔,這也就意味著需要對圖像進行重采樣。而在實際生產應用中,任何采樣方法都不能保證信號的完全恢復。因此,圖像拼接必定會產生由采樣或者重建導致的混疊現象。如何減少混疊帶來的配準效果影響、提高拼接速度和拼接系統的自適應性,將是未來圖像拼接工作的主要研究方向。