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