李云鵬,劉小燕
(上海工程技術(shù)大學(xué)環(huán)境設(shè)計系,上海 201600)
由不同相機經(jīng)過多角度采集的圖像,會存在較大程度的視差,單張圖像背景面積相對較小,不能夠顯示完整的圖像信息,為了還原真實場景、擴大三維視覺感知視野,就需要對大視差的背景圖像進行精準拼接,來完成對場景的還原。
楊春德等人[1]研究出一種快速拼接算法,利用尺度不變原則提取變換特征點,經(jīng)過動態(tài)規(guī)劃完成自適應(yīng)拼接,并通過邊緣檢測算法對原始圖像進行矯直,使之形成一個全新的全景圖,降低圖像的扭曲程度;楊劉濤等人[2]研究了雙視點圖像拼接法,基于卷積網(wǎng)絡(luò)模型建立歷史數(shù)據(jù)庫,根據(jù)數(shù)據(jù)庫內(nèi)手勢特征,對不同視點下的圖像進行剪切和拼接。但是經(jīng)過上述方法進行圖像背景拼接后通常會出現(xiàn)重影、模糊、圖像扭曲變形等情況,視覺效果并不理想,具有一定的局限性。
針對上述問題,本文提出一種基于虛擬現(xiàn)實的大視差圖像背景拼接優(yōu)化算法。虛擬現(xiàn)實通過計算機仿真技術(shù),以三維模型建立仿真虛擬環(huán)境,憑借人機互動形式呈現(xiàn)給體驗者,使體驗者在視覺感官內(nèi)獲得身臨其境的沉浸式體驗。以虛擬現(xiàn)實技術(shù)為基礎(chǔ),計算不同俯仰夾角圖像下所產(chǎn)生重疊區(qū)域,利用網(wǎng)格表示單應(yīng)性矩陣劃分圖像,在重疊區(qū)域網(wǎng)格內(nèi)搜索圖像特征點,經(jīng)過二輪劃分避免拼接后重影問題,利用信息熵和互信息值確定圖像及特征點相似程度,篩選匹配點對進行排錯處理,得到正確配點,最終完成圖像背景拼接。拼接后圖像背景沒有明顯縫隙,說明該方法具有有效性。
大視差圖像是在同一位置用不同角度對相同物體的描述,因角度不同導(dǎo)致成像效果也不相同,但圖像中的物體都是相同的,這就會使多個待拼接圖像背景中存在重疊區(qū)域。為了更好地拼接圖像背景,首先計算圖像間的背景重合區(qū)域。通過遍歷全局的方式尋找圖像中的匹配點,通常耗時較長且重復(fù)性高,誤匹配的幾率大,因此本文采用對圖像間重疊區(qū)域進行計算和預(yù)估的方式實現(xiàn)重疊區(qū)域檢測[3]。
為了降低后續(xù)特征點的檢測和匹配工作復(fù)雜度、避免全圖搜索耗時較長的問題,對不同圖像序列之間的重疊區(qū)域進行預(yù)估,步驟如下:
1)首先根據(jù)拍攝設(shè)備參數(shù),獲得設(shè)備在水平方向的拍攝角度范圍α。
2)根據(jù)各拍攝設(shè)備的排列結(jié)構(gòu),確定設(shè)備組的安裝結(jié)構(gòu),在半徑為r的圓面上排列設(shè)備組,測量出相鄰兩個拍攝設(shè)備之間的水平夾角β。
3)根據(jù)攝影中心、物點以及虛擬像點三點共線的原則,得出像點在圖像上的坐標。
4)依據(jù)步驟1)和2)獲取的參數(shù),計算出圖像在水平方向上的重疊區(qū)域,在沒有相對俯仰夾角的情況下[4],相鄰兩個拍攝設(shè)備之間的幾何關(guān)系可以用式(1)來表示
(1)
式中:ε表示相鄰兩幅圖像重疊區(qū)域在整張圖像中的占比。
通過以上步驟,能夠確定兩幅待拼接圖像的重疊區(qū)域與它們邊界值的關(guān)系,b1、b2分別代表兩幅圖像之間各自重疊區(qū)域的邊界值,d表示圖像水平方向長度,待拼接圖像1的重疊區(qū)域分布在(b1,d)長度區(qū)間,待拼接圖像2的重疊區(qū)域則分布在(0,b2)長度區(qū)間。
經(jīng)過對上述重疊區(qū)域及邊界值的計算,可以得出相鄰兩個拍攝設(shè)備所采集的圖像在水平方向上的重疊區(qū)域??紤]到相鄰設(shè)備間的相對俯仰夾角情況,設(shè)定設(shè)備間存在俯仰夾角θ,然后進一步估計兩幅圖像間垂直方向的重疊區(qū)域[5],計算過程如下所示
(2)
b=img.rowsη
(3)
式中:γ表示拍攝設(shè)備在垂直方向上的視角,η表示圖像非重疊區(qū)域在整幅圖像上的占比,img.rows表示拍攝設(shè)備上顯示的圖像垂直方向?qū)挾龋琤表示圖像非重疊區(qū)域的長度。測量出b值后,可根據(jù)b值計算出兩幅圖像在垂直方向上的重疊區(qū)域。將得出的垂直方向重疊區(qū)域與水平方向垂直區(qū)域相結(jié)合,可以得出存在水平和俯仰夾角的相鄰拍攝設(shè)備所采集圖像間的重疊區(qū)域。
為了使特征點的檢測能夠針對圖像的特定區(qū)域進行,不至于重復(fù)搜索或搜索無意義區(qū)域,提出掩模處理方法[6]。在搜索特征點之前,對待搜索圖像進行區(qū)域遮擋,控制圖像搜索區(qū)域,對于兩幅圖像來說,非重疊區(qū)域沒有相同特征點,不具備特征點搜索價值,掩模處理方法將計算出的待拼接圖像重疊區(qū)域進行屏蔽處理,這樣后續(xù)的特征點搜索就只針對屏蔽區(qū)域進行,大大節(jié)省了搜索時間,減少了全局搜索帶來的麻煩。
利用網(wǎng)格劃分大視差目標圖像,將其分為多個網(wǎng)格,用單應(yīng)性矩陣表示網(wǎng)格,網(wǎng)格和矩陣一一對應(yīng),在每個單應(yīng)性矩陣內(nèi)檢測生成匹配點,再進行初始匹配。
將兩幅待拼接圖像分別用I和I′來表示,在兩幅圖像中搜索出的與之相對應(yīng)的匹配點分別為p=[x,y,1]T、p′=[x′,y′,1],這時匹配點間的關(guān)系可變換為p′=h(p),它們的橫縱坐標關(guān)系如下
(4)
(5)
在齊次坐標下,p=[x,y,1]T和p′=[x′,y′,1]所對應(yīng)的變換關(guān)系為:p′~Hp,其中,H表示單應(yīng)性矩陣,H∈R3×3。鑒于p′和p屬于同一方向,那么p′~Hp就滿足03×1=p′×Hp這一條件,展開H矩陣可得下式
(6)
用Ah=0轉(zhuǎn)換上式得出
(7)
此時對于I和I′兩幅圖像而言,共有N組互相對應(yīng)的匹配點,矩陣h可表示為
(8)
(9)
對在網(wǎng)格內(nèi)搜索得到的特征點數(shù)據(jù)進行初始匹配,初始匹配中,圖像中每個特征點的數(shù)量分布與其在網(wǎng)格中紋理的復(fù)雜度呈正相關(guān)[7]。假設(shè)將圖像分成C1×C2個網(wǎng)格,計算出與每個網(wǎng)格相對應(yīng)的單應(yīng)性矩陣Hn,1,n∈{1,2,…C1×C2}。但由于網(wǎng)格密度不夠緊湊,若待拼接圖像紋理過于復(fù)雜,兩幅圖像重疊區(qū)域,很可能會出現(xiàn)虛化、重影現(xiàn)象。
在目標圖像重疊區(qū)域內(nèi),網(wǎng)格中圖像特征點數(shù)量為m,若m≥η,這時需要對網(wǎng)格進行第二輪詳細劃分,其中,η表示需要第二輪詳細劃分網(wǎng)格的匹配點最少對數(shù),將網(wǎng)格第二輪詳細劃分為c1×c2個,計算二次網(wǎng)格的形變單應(yīng)性矩陣為Hn,m,其中,n∈{1,2,…,C1×C2},m∈{1,2,…,c1×c2}。
根據(jù)圖像背景特征點,利用特征點鄰近算法對已經(jīng)搜索出的特征點進行初始匹配后,初始匹配結(jié)果不可避免地存在些許錯誤匹配情況,因此優(yōu)化的步驟首先是監(jiān)測圖像間的相似度情況,在相似度很高的情況下,篩選和校準匹配,去除掉錯誤匹配對[8]。
信息熵是對信息源所包容信息量的度量和量化指標,圖像信息熵描述的是圖像中所包含的信息量,熵值也能夠反映出圖像信息的復(fù)雜程度和不確定性,通過判斷圖像灰度值的分散程度,確定圖像的熵值大小,灰度越分散,代表灰度值的不確定性越高,這時圖像中熵值也就越大,信息熵表示如下
(10)
式中,x表示圖像灰度值,p(x)表示灰度值為x發(fā)生的概率。
互信息可以表示兩幅圖像之間存在的信息關(guān)系,也就是其中一幅圖像中所包含的另一幅圖像的信息總量,通過圖像信息熵可以判斷和度量兩幅圖像之間的相似程度,其表達式為
V(A,B)=H(I)+H(I′)-H(I,I′)
(11)
式中,H(I)、H(I′)表示I、I′兩幅圖像的信息熵,H(I,I′)表示I、I′兩幅圖像的聯(lián)合熵。對兩幅待拼接圖像的灰度值分布情況進行統(tǒng)計,計算它們之間的相關(guān)概率,其聯(lián)合熵用下式來表達
(12)
兩幅圖像中聯(lián)合熵數(shù)值越小,表明兩幅圖像間互信息值越大,那么這兩幅圖像間的信息相關(guān)性越大,圖像相似度越高。通過計算判斷熵值和互信息,能夠在很大程度上減少噪聲對圖像的干擾,還可以在減少計算量的同時實現(xiàn)對特征點的實時篩選匹配。
下面是具體的圖像背景拼接優(yōu)化流程:
步驟一:在圖像中任意選取一對特征點,根據(jù)得出的圖像間重疊區(qū)域,對這對特征點進行區(qū)域判斷,若這對特征點不在得出的重疊區(qū)域內(nèi),則放棄該特征點對再隨機選擇下一對特征點,若在重疊區(qū)域內(nèi)則進一步判斷是否是正確點對。
步驟二:利用鄰近算法,計算出與特征點相鄰最近點和次近點的比值,若比值是小于0.6的,判定兩個特征點是正確的匹配對,若比值在0.6到0.9之間,這時應(yīng)利用圖像信息熵和互信息值這兩個因素,對特征點對作進一步判斷,看是否是正確匹配點對,若比值大于0.9,則不符合條件,直接跳過判斷下一對特征點。
步驟三:在圖像的灰度坐標上,根據(jù)圖像中特征點的坐標位置,截取相鄰區(qū)域,利用信息熵和互信息這兩個度量值,計算特征點之間的互信息數(shù)值,若互信息數(shù)值大于0.4,則將這對特征點認定為正確匹配對,由此實現(xiàn)圖像背景拼接。
為驗證所提方法對大視差圖像背景拼接的有效性,本文在開源數(shù)據(jù)庫內(nèi)隨機選取兩幅大視差圖像作為目標,進行拼接仿真,將這兩幅圖像分別命名為圖像A和圖像B,如圖1所示。
圖1 待拼接大視差圖像
從圖1中可以看出,圖像A的右側(cè)部分與圖像B左側(cè)部分具有重疊區(qū)域,兩幅圖像屬于同一風(fēng)景原型圖像,在大視差拍攝角度下形成了橫向與縱向不同程度的錯位情況,仿真將針對上述兩個圖像進行圖像背景拼接。為優(yōu)化拼接效果,需計算兩幅待拼接圖像的重疊區(qū)域,再確定存在的重疊區(qū)域內(nèi)標記背景特征點,有助于后期拼接操作。
圖2為不同方法的圖像特征點提取結(jié)果。
圖2 不同方法的圖像特征點提取結(jié)果
根據(jù)圖2可知,本文方法標記圖A特征點13個,圖B特征點10個;利用快速圖像拼接法得出圖像A特征點16個,圖像B特征點18個;利用雙視點圖像拼接法得出圖像A特征點10個,圖像B特征點14個。
三種方法各自獲取到不同數(shù)量的特征點,將圖像A和圖像B上的特征點一一匹配。本文方法得到10對匹配點,如圖3所示;經(jīng)過快速圖像拼接法匹配得到7對匹配點,如圖4所示;經(jīng)過雙視點圖像拼接法,最終得到6對匹配點,如圖5所示。
圖3 本文特征點匹配結(jié)果
圖4 快速圖像拼接法特征點匹配結(jié)果
圖5 雙視點圖像拼接法特征點匹配結(jié)果
對上述3、4、5三幅圖進行對比可以看出,快速圖像拼接法搜索到的特征點雖然較多,但一部分特征點分布在全局,而并非重疊區(qū)域,導(dǎo)致一部分特征點無法進行配對;雙視點圖像拼接法提取特征點相對較少,所能配對的特征點相對更少;本文在重疊區(qū)域搜索特征點,得到的特征點均在有效區(qū)域內(nèi),通過信息熵和互信息兩個值,對特征點和目標圖像相似度進行判斷,確認正確匹配點,同時篩除掉錯誤匹配,所得到的正確匹配點對相對更多,最終得到的匹配對也較其它兩種方法多,配準性能較好。
經(jīng)過以上步驟圖像背景最終拼接完成,三種方法下拼接完成的圖像分別如下圖6、7、8所示。從圖中可以看出圖6拼接效果完整無明顯接縫,呈現(xiàn)效果過渡自然,圖像還原度較高;而圖7和8呈現(xiàn)的拼接效果,在橫向和縱向上均出現(xiàn)不同程度的錯位情況,且都存在較為明顯的拼接縫隙,圖像還原并不完整,還原度較低。實驗證明本文方法對圖像背景的拼接優(yōu)化可行性更高,拼接效果好。
圖6 本文方法最終拼接結(jié)果
圖7 快速圖像拼接法最終拼接結(jié)果
圖8 雙視點圖像拼接法最終拼接結(jié)果
本文經(jīng)過對待拼接圖像重疊區(qū)域的估計運算,鎖定特征點搜索區(qū)域,不僅省去了全局搜索的麻煩,同時提高了特征點搜索速度和匹配準確度。經(jīng)過對圖像中信息熵和互信息兩個值的計算,能夠確定圖像以及特征點相似度,進一步篩選特征點對,得到正確的匹配點對,經(jīng)過對圖像背景的拼接得到完整的背景圖像。實驗證明本文所提方法特征點搜索準確迅速,正確匹配點對更多,對圖像背景拼接效果較好,沒有明顯縫隙,可適用性高,魯棒性好,能夠?qū)崟r、高效、準確地實現(xiàn)圖像背景拼接。