于國棟, 王春陽, 蘭孝野, 徐鵬宇, 張 月, 劉曉辰, 李忠琦
(中國人民解放軍63869部隊,吉林 白城 137001)
對于一些大視場、大場景,特別是近些年比較熱門的360°全視場監(jiān)控等應用,由于單個攝像機的視場和功能限制,通常難以夠覆蓋完整的角度。一般對大視場范圍的圖像采集或者全景視頻監(jiān)控有兩種解決方式,一種是使用廣角攝像頭;另一種是使用多臺固定的攝像機覆蓋完整的監(jiān)控范圍,然后再經(jīng)過圖像拼接獲取完整的監(jiān)控區(qū)域[1]。但是由于受相機功能和價格的限制,廣角攝像機往往難以被采用。為此,需要尋找一種在大視角拍攝情況下,能快速獲取高質(zhì)量畫質(zhì)的圖像采集技術(shù)。
圖像拼接是將在同一時間和地點拍攝的幾張具有一定重合區(qū)域的照片拼接成一張全景圖像的技術(shù),是計算機視覺和圖形學領域的研究課題之一。全景圖像拼接技術(shù)廣泛應用于安防監(jiān)控、戰(zhàn)場態(tài)勢感知、虛擬現(xiàn)實技術(shù)和醫(yī)學圖像等多種領域[1-2]。傳統(tǒng)圖像拼接過程一般包含圖像預處理、圖像配準、圖像映射和圖像融合等幾個步驟[3]。
傳統(tǒng)的圖像拼接算法是基于輸入的每一幀圖像進行特征提取和計算配準的拼接方法。具體步驟是先提取特征點,然后再進行特征匹配與融合等步驟。但是對于實時的圖像拼接場景,傳統(tǒng)方法需要消耗大量的空間和時間,因此若是對每一幀圖像都進行特征提取和匹配,無法滿足實時拼接的要求,容易出現(xiàn)鬼影等問題。泊松圖像融合算法,雖然融合效果較好,但計算量較大。此外還有基于最佳縫合線和相關(guān)的改進算法,但是都無法滿足實時拼接的要求。傳統(tǒng)的圖像融合算法中,基于多分率的圖像融合算法是在RGB三個通道上做拉普拉斯金字塔并實現(xiàn)融合,計算量大。
本文提出了一種基于YUV色彩空間的拉普拉斯金字塔的快速圖像融合算法,解決適用于多攝像頭合成全景視頻拼接難題。系統(tǒng)由多臺安放在固定位置的相機組成,具有固定的重合面積,并且使用相同的外部觸發(fā),對實時采集到的圖像進行拼接??紤]到實際應用場景中相機的角度、位置和重疊的區(qū)域固定,所以采用離線標定,在離線標定階段就計算出相機的映射關(guān)系,然后保存到本地。在每次拼接時加載映射矩陣,無需再重復進行特征提取和匹配,可以省去拼接過程中大量的前期工作,直接進入圖像拼接、融合步驟。
離線標定的第一階段是對待拼接的圖像進行特征提取和配準。常用的特征提取算法中,基于尺度不變的有SIFT算法[4]和SURF等算法[5-6],這些算法各有優(yōu)缺點。由于在實際應用中使用離線標定方法,所以無需關(guān)注在離線標定階段中特征提取和全局配準所消耗的時間,因此選用效果最好的SIFT算法[7]。
假設Ri和Sk是一對配準點的SFIT描述符,SIFT特征向量為128維,即包含128個數(shù)據(jù)[8],其中Ri=(ri1,ri2,…,ri128),Sk=(sk1,sk2,…,sk128),則Ri和Sk的歐氏距離計算公式如下:
(1)
在攝像機數(shù)學模型中,一個三維空間中的點P=[X,Y,Z,1]T映射到攝像機二維平面上的點p=[x,y,1]T滿足以下關(guān)系:
p=MP,
(2)
假設兩個攝像機的相機映射矩陣分別為M1和M2,T通過這兩個相機拍攝的圖像中有相同點P,而點P在兩幅圖像中的齊次坐標分別為p1和p2,則有下列公式成立:
(3)
(4)
這樣,攝像機中相應點的變換就可以用一個3×3的單應性矩陣H表示。兩幅圖像之間的單應性矩陣H可以表示成如下形式:
(5)
H為非奇異矩陣,因此對于點p1、p2用非齊次坐標代替齊次坐標,設p1和p2的非齊次坐標為p1=[x1,y1,1]T和p2=[x2,y2,1]T,則二維投影變換的關(guān)系可表示為:
(6)
(7)
由于一對匹配點只能確定2個線性方程,因此理論上需要至少4對匹配點才可以求出投影變換矩陣H。對于實際工程中有n個點對(n>4)時,最終可利用最小二乘法計算出投影變換矩陣M。
圖像融合是將圖像配準之后的待拼接圖像在空間上進行疊加。圖像融合直接影響拼接后圖像的質(zhì)量。傳統(tǒng)的圖像融合算法,例如加權(quán)平均融合計算量小,可用于快速圖像拼接,但融合效果較差,容易出現(xiàn)鬼影等問題[8-12]。泊松圖像融合算法雖然融合效果較好,但計算量較大。此外還有基于最佳縫合線和相關(guān)的改進算法,但是都無法滿足實時拼接的要求。傳統(tǒng)的圖像融合算法中,基于多分率的圖像融合算法是在RGB三個通道上做拉普拉斯金字塔并實現(xiàn)融合,計算量大。
本文采用一種改進的多分率圖像融合方法,提出在YUV色彩空間中進行拉普拉斯金字塔圖像融合。該方法可以減少大量的計算,并且圖像融合效果較佳。
(1)首先構(gòu)造高斯金字塔,將原始圖像作為金字塔的最底層圖像G0,使用高斯卷積核對圖像進行卷積,然后再下采樣得到上一層圖像G1。重復進行卷積核下采樣操作i次即可獲取第i層圖像Gi,迭代多次,即可形成圖像高斯金字塔。
Gi+1=DOWN(Gi+1?g3×3),
(8)
其中g(shù)3×3是高斯卷積核。DOWN表示下采樣計算。
(2)構(gòu)造拉普拉斯金字塔,在構(gòu)建高斯金字塔的過程中,持續(xù)的卷積核下采樣會造成圖像高頻信息的丟失,所以使用拉普拉斯金字塔來保存圖像的高頻信息。將上一層的高斯金字塔圖像進行上采樣后再進行卷積操作,使用該層的高斯金字塔圖像減去卷積后的圖像即可得到當前層的拉普拉斯金字塔圖像。
拉普拉斯金字塔中第i層圖像:
Li=Gi-UP(Gi+1)?g3×3,
(9)
其中:Li是拉普拉斯金字塔中第i層的圖像,Gi是高斯金字塔中第i層的圖像,UP表示上采樣計算。
(3)融合后恢復圖像,處理的過程需要對每一層金字塔融合。處理的過程從上到下,最終獲得原始圖像。
完成每一層的圖像融合之后,要根據(jù)融合后的拉普拉斯金字塔重構(gòu)高斯金字塔,并最終得到實際融合后的圖像,計算公式如下:
Gi=Li+DOWN(Gi+1)?g3×3.
(10)
(1)色彩空間轉(zhuǎn)換
RGB和YUV色彩空間的互相轉(zhuǎn)換公式如下:
(11)
(12)
(2)處理Y通道
在YUV色彩空間中,Y通道表示像素點的亮度信息并反映圖像中灰度值的動態(tài)范圍。YUV色彩空間將亮度和顏色分開,Y部分指標是融合后圖像的亮度信息,UV通道表示顏色信息。在圖像融合中,高對比度的區(qū)域應給更高的權(quán)重,所以拉普拉斯金字塔可以很好地保留高對比度的區(qū)域。
拉普拉斯圖像融合,其實就是權(quán)重融合,本文從兩個方面考慮權(quán)重、對比度因子和顏色深度因子。
對比度因子公式如下:
C(i,j)k=|Yk(i+1,j)+Yk(i-1,j)+Yk(i,j+1)+Yk(i,j-1)-4Y(i,j)|,
(13)
其中:Yk(i,j)是第k層中坐標為(i,j)的Y通道值。
顏色深度因子Ek(i,j)公式如下:
Ek(i,j)=|Uk(i,j)×Vk(i,j)+ε|,
(14)
其中:Uk(i,j)和Vk(i,j)分別表示第i層輸入圖像在坐標(i,j)(i,j)處的U通道和V通道的值,ε是一個很小的值,避免權(quán)重為0。
最終的實際權(quán)重為:
Wk(i,j)=Ck(i,j)×Ek(i,j),
(15)
使用這個權(quán)重來完成圖像融合,最終可得到融合后的Y通道圖像。
(3)處理UV通道
(16)
(17)
根據(jù)上述公式獲取融合后UV通道的值,即相同像素點位置,選擇兩個中較大值的U和V。最后將融合后的YUV色彩空間圖像轉(zhuǎn)換為RGB色彩空間的圖像即可。
為驗證文章方法的有效性,在場區(qū)生活區(qū)選取一個寬闊場地驗證實際拼圖效果。本文選用的圖像獲取設備為華為Mate20,該手機內(nèi)置鏡頭為徠卡三攝鏡頭,采用“廣角+超廣角+5倍長焦距”的組合。其中,廣角鏡頭1 200萬像素(f/1.8光圈,等效焦距27 mm),超廣角1 600萬像素(f/2.2光圈,等效焦距17 mm),長焦鏡頭800萬像素(f/2.4光圈,等效焦距52 mm)。程序運行環(huán)境Visual Studio,算法實現(xiàn)工具OpenCV4.1.0,操作系統(tǒng)是Windows10,CPU配置為Corei7-8750,2.20GHz。
在拍攝場景前,隨機選取兩個拍攝位置,相距大約5 m,拍攝圖像并保存。
圖像處理分兩個階段:離線標定階段和實時拼接階段。這兩個階段的主要任務和工作如下:
(1)離線標定階段
離線標定階段主要包括特征提取、特征匹配和單應性矩陣的計算。
離線標定階段的任務是提取特征點和進行特征匹配,最終根據(jù)匹配的結(jié)果計算出單應性矩陣。該矩陣在實時拼圖時加載,直接用于圖像映射,可節(jié)省大量的特征提取和配準時間。
(2)實時拼接階段
實時拼接階段包括加載單應性矩陣計算和圖像融合。
圖1 待拼接圖像Fig.1 Diagram of images to be spliced
圖1為待拼接的兩張圖像,分別取全景圖像的左右兩部分,經(jīng)特征匹配和校準后,得到配準的特征點。如圖2所示,綠色圓圈表示SIFT特征提取和配準后得到的特征點。使用這些配準的特征點計算得到透視變換矩陣為:
(18)
圖2 SIFT算法特征配準結(jié)果Fig.2 Result of SIFT algorithm feature registration
新建兩張空圖L和R,高度與原圖相等,寬度是原圖的兩倍,將待拼接的左圖拷貝到圖L中 待拼接的右圖經(jīng)單應性矩陣計算后投影到圖R中,得到對齊后的圖像,如圖3所示。圖4為加權(quán)平均融合算法得到的結(jié)果,從拼接效果可以看出,使用SIFT特征提取和配準之后的特征點計算得到的單應性矩陣可以使圖像獲得較好的對齊效果。
圖3 圖像對齊Fig.3 Diagram of image alignment
圖4 加權(quán)平均融合算法Fig.4 Diagram of weighted average fusion algorithm
雖然使用該單應性矩陣有較好的圖像對齊效果,但是也存在一定的缺點,經(jīng)過矩陣運算對齊后的圖像,其右側(cè)相對于原圖缺少了一部分。產(chǎn)生這種情況的主要原因為:右側(cè)的點經(jīng)過單應性矩陣計算后其坐標超出目標圖像矩陣的范圍,導致超出范圍的這部分被拋棄了。在實際應用中,如果圖像側(cè)邊不重要,可以忽略。但如果側(cè)邊圖像有必要保留,可通過修改單應性矩陣的方式保留該部分圖像信息。
單應性矩陣公式如下:
(19)
圖像對齊后,分別采用加權(quán)平均算法、改進的漸入漸出算法、傳統(tǒng)拉普拉斯金字塔融合算法和本文算法,對圖像進行融合處理,其效果如圖4~7所示。相對于使用加權(quán)平均融合算法,無論是傳統(tǒng)的拉普拉斯圖像融合還是本文算法都有更好的融合效果。加權(quán)平均融合算法和改進的漸入漸出算法在一些細微之處無法將兩幅圖像中的同一個物體融為一體,而是當作兩個物體同時保留在圖像上,融合效果較差,而拉普拉斯算法卻可以識別并做了很好的融合。
使用3個不同大小的融合區(qū)域(320×1 440,430×1 440,730×1 440)進行多次融合取處理時長的平均值,比較3種算法的融合速度。如表1所示,加權(quán)平均融合算法雖然有較快的處理速度,但是融合效果不佳。改進的漸入漸出圖像融合方法相對于加權(quán)平均融合算法圖像拼接效果更好,但是也會帶來更復雜的計算。傳統(tǒng)拉普拉斯算法和本文算法處理效果幾乎一致,但是處理效率差別較大,本文算法的處理時間明顯快于傳統(tǒng)拉普拉斯金字塔融合算法,處理時間提高了近3倍。
圖5 改進漸入漸出圖像融合算法Fig.5 Diagram of improved gradual in gradual out image
圖6 RGB色彩空間拉普拉斯融合Fig.6 Diagram of Laplace fusion in RGB color space
圖7 YUV色彩空間拉普拉斯融合Fig.7 Diagram of Laplacian fusion in YUV color space
可見,相比于傳統(tǒng)拉普拉斯金字塔融合算法,本文方法在不降低處理質(zhì)量的前提下,處理速度更快,效率更高,處理海量高清圖像時,更能體現(xiàn)本文算法的優(yōu)越性。
表1 本文算法與傳統(tǒng)拉普拉斯金字塔融合算法處理速度對比結(jié)果Tab.1 Results of speed comparison between the two algorithms (s)
快速圖像拼接中采用離線標定的方法可節(jié)省大量計算時間。在傳統(tǒng)拉普拉斯金字塔圖像融合基礎上,提出基于YUV色彩空間的拉普拉斯金字塔圖像融合,將圖像亮度和顏色分離,只對Y通道做拉普拉斯金字塔圖像融合,相對傳統(tǒng)拉普拉斯圖像融合速度提升了近3倍,簡化了實現(xiàn)過程,也同樣可以獲取較好的圖像融合效果。