本發(fā)明屬于計算機(jī)視覺技術(shù)領(lǐng)域,涉及圖像拼接技術(shù)領(lǐng)域,尤其涉及一種基于網(wǎng)格優(yōu)化圖像實時拼接方法。
背景技術(shù):
圖像拼接是利用多個攝像機(jī)獲取不同角度的圖像并進(jìn)行拼接形成寬視野圖像的技術(shù),圖像拼接主要分為三個主要步驟:圖像預(yù)處理、圖形配準(zhǔn)、圖像融合。
為了降低拼接中視差引起的拼接重影、模糊問題,目前已有的相關(guān)算法可以歸納為spatially-varyingwarping方法,即是在配準(zhǔn)階段采用局部參數(shù)變換模型代替全局變換模型以適用于深度大小不一的場景。
zaragoza等人提出as-projective-as-possible(apap)方法,將圖像劃分為多個密集矩形網(wǎng)格,對每一矩形網(wǎng)格,利用匹配的特征點(diǎn)對,估計局部射影變換矩陣,并引入了距離權(quán)重因子,近距離的特征點(diǎn)權(quán)重大,遠(yuǎn)距離的特征點(diǎn)權(quán)重小,距離權(quán)重因子自適應(yīng)地調(diào)整射影模型參數(shù),以適應(yīng)不同深度大小的場景。apap方法引入了網(wǎng)格的概念,配準(zhǔn)精度得到很大提高,但是形狀保持欠佳,而且計算復(fù)雜度比較高,實時性不好。
shape-preserving-half-projective(sphp)方法從形狀矯正的角度出發(fā),將圖像劃分為三大區(qū)域,從重疊區(qū)域到非重疊區(qū)域,逐漸由射影變換過渡到相似變換,減小了形狀失真,但是配準(zhǔn)精度不高,重疊區(qū)域有比較明顯的重影和模糊。
naturalimagestitchingwiththeglobalsimilarityprior方法,采用直線對齊約束確定全局相似矩陣的角度選擇,用apap方法初始化網(wǎng)格,同時使用局部相似約束和全局相似約束,多圖拼接性能和觀感自然度提升。
技術(shù)實現(xiàn)要素:
本發(fā)明在高配準(zhǔn)精度和形狀保持的前提下,為了提高拼接的實時性,提出了一種基于網(wǎng)格變形的實時圖像拼接方法。
一種基于網(wǎng)格變形的圖像拼接方法,包括如下步驟:
s1:對空間相鄰兩幅圖像,分別提取sift特征,匹配特征;
s2:采用ransac算法迭代計算,篩選特征點(diǎn)對;
s3:估計全局射影矩陣并進(jìn)行全局射影變換;
s4:運(yùn)用delaunay三角剖分,對重疊區(qū)域構(gòu)造稠密三角網(wǎng)格,非重疊區(qū)域構(gòu)造稀疏網(wǎng)格;
所述三角剖分的具體定義:設(shè)v是三角網(wǎng)格的頂點(diǎn),v是圖像平面上所有網(wǎng)格頂點(diǎn)的集合,e是三角網(wǎng)格的邊,e為e的集合,t為某個三角形網(wǎng)格,t為三角形網(wǎng)格的集合,那么該點(diǎn)集v的一個三角剖分t=(v,e)為一個平面圖,該平面圖需滿足如下條件:1、除了端點(diǎn),平面圖中的邊不包含點(diǎn)集中的任何點(diǎn);2、沒有相交邊;3、平面圖中所有的面都是三角面,且所有三角面的合集是散點(diǎn)集v的凸包;
delaunay邊的具體定義:假設(shè)e中的一條邊e(兩個端點(diǎn)為a,b),e若滿足下列條件,則稱之為delaunay邊:存在一個圓經(jīng)過a,b兩點(diǎn),圓內(nèi)不含點(diǎn)集v中任何其他的點(diǎn),這一特性又稱空圓特性;
所述delaunay三角剖分的具體定義:如果點(diǎn)集v的一個三角剖分只包含delaunay邊,那么該三角剖分稱為delaunay三角剖分;
自適應(yīng)三角網(wǎng)格在圖像的重疊區(qū)域采用加密的網(wǎng)格,而在圖像非重疊區(qū)域使用稀疏的網(wǎng)格,設(shè)定稠密網(wǎng)格邊長間距為lmin,稀疏網(wǎng)格邊長間距為lmax,lmax=3lmin;以篩選后得到的sift特征點(diǎn)和圖像邊界點(diǎn)為優(yōu)先選擇,以lmin為半徑采集重疊區(qū)域三角網(wǎng)格的頂點(diǎn),以lmax半徑采集非重疊區(qū)域三角網(wǎng)格的頂點(diǎn);在得到網(wǎng)格頂點(diǎn)后,使用delaunay三角剖分構(gòu)造三角網(wǎng)格;
s5:建立網(wǎng)格變形能量函數(shù),優(yōu)化全局射影配準(zhǔn);
s6:圖像融合生成寬視野圖像。
進(jìn)一步的,所述s1步驟具體為:首先對輸入圖像對(i,i′),分別采用sift(scaleinvariantfeaturetransform)算法提取sift特征,得到sift特征點(diǎn)集f={x=[xiyi]t|i=1,2,...,m},f′={x′=[x′iy′i]t|i=1,2,...,n},x和x′是圖像對(i,i′)重疊區(qū)域的特征點(diǎn)對,對每個sift特征生成128維特征向量,采用關(guān)鍵點(diǎn)特征向量的歐式距離作為兩幅圖像中關(guān)鍵點(diǎn)的相似性判定度量,得到sift特征點(diǎn)對集f′match。
進(jìn)一步的,所述s2步驟具體為:ransac算法通過反復(fù)選擇特征點(diǎn)對集f′match的一組隨機(jī)子集,被選取的子集被假設(shè)為局內(nèi)點(diǎn),并用下述方法進(jìn)行驗證:
s201:選擇射影模型適應(yīng)于假設(shè)的局內(nèi)點(diǎn),利用隨機(jī)選擇的特征點(diǎn)對子集估計射影模型的參數(shù);
s202:用s201中得到的模型測試所有的其它特征點(diǎn),如果某個點(diǎn)適用于估計的模型,則認(rèn)為它也是局內(nèi)點(diǎn);如果有足夠多的點(diǎn)被歸類為假設(shè)的局內(nèi)點(diǎn),估計的模型就足夠合理;
s203:用所有假設(shè)的局內(nèi)點(diǎn)去重新估計模型,因為它僅僅被初始的假設(shè)局內(nèi)點(diǎn)估計過;
s204:最后,通過估計局內(nèi)點(diǎn)與模型的錯誤率來評估模型;
以上過程被重復(fù)執(zhí)行,最后選出所有的局內(nèi)點(diǎn)記為fmatch。
進(jìn)一步的,其特征在于,所述s5步驟具體為:估計目標(biāo)網(wǎng)格頂點(diǎn),使得能量函數(shù)最小化,利用原目標(biāo)網(wǎng)格頂點(diǎn)和目標(biāo)網(wǎng)格頂點(diǎn)估計局部相似變換模型,并用來優(yōu)化全局射影矩陣參數(shù);
設(shè)定原圖像網(wǎng)格的頂點(diǎn)坐標(biāo)為
s501:構(gòu)造尺度縮放誤差項
尺度變換誤差項構(gòu)建如下:
其中,at是三角網(wǎng)格tp的面積,||.||f表示frobenius范數(shù),jt(q)為一個2×2的jacobian矩陣,三角形tp變換到tq發(fā)生仿射變換,jt(q)是仿射變換的旋轉(zhuǎn)和縮放部分;
最小化尺度縮放誤差es使得仿射變換的線性部分盡可能接近尺度變換gt;
s502:構(gòu)造平滑誤差項
引入平滑誤差項:
其中att′=(at+at′)/2;
s503:構(gòu)造形狀相似項
假設(shè)原始網(wǎng)格上三個連續(xù)點(diǎn)
引入長度比和邊的角度來表征形狀相似項
s504:構(gòu)建能量函數(shù)并求解,求出目標(biāo)網(wǎng)格頂點(diǎn)
綜合步驟s501、s502和s503,引入權(quán)重因子ε和μ,得到能量函數(shù)如下:
e=es+εem+μef
以上網(wǎng)格變形能量函數(shù)是關(guān)于mq的頂點(diǎn)和三角形的尺度因子的二次方程;網(wǎng)格變形能量函數(shù)的最小化可以通過求解稀疏線性方程組來實現(xiàn),通過能量函數(shù)最小化,可以得到目標(biāo)網(wǎng)格頂點(diǎn)坐標(biāo)和各個三角網(wǎng)格的尺度因子;
s505:估計局部剛性變換模型參數(shù)
根據(jù)s504步驟求出的目標(biāo)網(wǎng)格頂點(diǎn)坐標(biāo),結(jié)合原網(wǎng)格頂點(diǎn)坐標(biāo),分別計算每個三角網(wǎng)格的剛性變換矩陣s;
s506:優(yōu)化全局射影模型參數(shù)
利用局部的剛性變換矩陣,對全局射影變換后的圖像作進(jìn)一步變換。
本發(fā)明使用稠密的三角網(wǎng)格表征重疊區(qū)域,使用稀疏的三角網(wǎng)格表示圖像的非重疊區(qū)域,所以相對apap方法整幅圖像采用密集的同等的矩陣網(wǎng)格,大大提高了算法效率。同時網(wǎng)格變形可以充分利用gpu的并行、高速運(yùn)算性能,可以大大提高拼接速度。本發(fā)明將圖像劃分為多個三角網(wǎng)格,單獨(dú)計算每個網(wǎng)格的局部剛性變換參數(shù),可以降低視差引起的拼接重影和模糊;考慮了三角網(wǎng)格變形的連續(xù)性和形狀相似項,所以變換后的目標(biāo)圖像比較自然,可以更好地保持圖像的形狀特征。
本發(fā)明的附加方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明實施例全景圖像實時拼接方法的系統(tǒng)流程圖;
圖2是本發(fā)明實施例中三角網(wǎng)格的示意圖;
圖3是本發(fā)明實施例中網(wǎng)格變形算法的流程圖;
圖4是本發(fā)明實施例中圖像經(jīng)過兩次變換后的幾何關(guān)系示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明提供了一種基于網(wǎng)格變形的圖像實時拼接方法,將圖像表示為基于圖像特征的自適應(yīng)三角網(wǎng)格,建立網(wǎng)格變形能量函數(shù),并添加約束項,由此將圖像變換轉(zhuǎn)換為在相關(guān)約束下的網(wǎng)格變形問題。圖1是本發(fā)明實施例全景圖像實時拼接方法的系統(tǒng)流程圖。如圖1所示,本發(fā)明一種基于網(wǎng)格變形的實時圖像拼接方法包括以下步驟:
s1:對空間相鄰兩幅圖像,分別提取sift特征,匹配特征
首先對輸入圖像對(i,i′),分別采用sift(scaleinvariantfeaturetransform)算法提取sift特征,得到sift特征點(diǎn)集f={x=[xiyi]t|i=1,2,...,m},f′={x′=[x′iy′i]t|i=1,2,...,n},x和x′是圖像對(i,i′)重疊區(qū)域的特征點(diǎn)對。對每個sift特征生成128維特征向量。采用關(guān)鍵點(diǎn)特征向量的歐式距離作為兩幅圖像中關(guān)鍵點(diǎn)的相似性判定度量,得到sift特征點(diǎn)對集f′match。
s2:采用ransac算法迭代計算,篩選特征點(diǎn)對
ransac通過反復(fù)選擇特征點(diǎn)對集f′match的一組隨機(jī)子集,被選取的子集被假設(shè)為局內(nèi)點(diǎn),并用下述方法進(jìn)行驗證:
s201:選擇射影模型適應(yīng)于假設(shè)的局內(nèi)點(diǎn),利用隨機(jī)選擇的特征點(diǎn)對子集估計射影模型的參數(shù)。
s202:用s201中得到的模型測試所有的其它特征點(diǎn),如果某個點(diǎn)適用于估計的模型,則認(rèn)為它也是局內(nèi)點(diǎn)。如果有足夠多的點(diǎn)被歸類為假設(shè)的局內(nèi)點(diǎn),估計的模型就足夠合理。
s203:用所有假設(shè)的局內(nèi)點(diǎn)去重新估計模型,因為它僅僅被初始的假設(shè)局內(nèi)點(diǎn)估計過。
s204:最后,通過估計局內(nèi)點(diǎn)與模型的錯誤率來評估模型。
以上過程被重復(fù)執(zhí)行,最后選出所有的局內(nèi)點(diǎn)記為fmatch。
s3:估計全局射影矩陣并進(jìn)行全局射影變換
利用s2步驟中選擇出的所有局內(nèi)點(diǎn),用來重新估計射影模型參數(shù),然后對原圖像進(jìn)行射影變換,若以左圖像為參考圖像,則右圖像根據(jù)h進(jìn)行射影變換。
s4:運(yùn)用delaunay三角剖分,對重疊區(qū)域構(gòu)造稠密三角網(wǎng)格,非重疊區(qū)域構(gòu)造稀疏網(wǎng)格
三角剖分的定義:設(shè)v是三角網(wǎng)格的頂點(diǎn),v是圖像平面上所有網(wǎng)格頂點(diǎn)的集合,e是三角網(wǎng)格的邊,e為e的集合,t為某個三角形網(wǎng)格,t為三角形網(wǎng)格的集合,那么該點(diǎn)集v的一個三角剖分t=(v,e)為一個平面圖,該平面圖滿足條件:1)除了端點(diǎn),平面圖中的邊不包含點(diǎn)集中的任何點(diǎn)。2)沒有相交邊。3)平面圖中所有的面都是三角面,且所有三角面的合集是散點(diǎn)集v的凸包。
在實際中運(yùn)用的最多的三角剖分是delaunay三角剖分,它是一種特殊的三角剖分。先從delaunay邊說起:
delaunay邊:假設(shè)e中的一條邊e(兩個端點(diǎn)為a,b),e若滿足下列條件,則稱之為delaunay邊:存在一個圓經(jīng)過a,b兩點(diǎn),圓內(nèi)不含點(diǎn)集v中任何其他的點(diǎn),這一特性又稱空圓特性。
delaunay三角剖分:如果點(diǎn)集v的一個三角剖分只包含delaunay邊,那么該三角剖分稱為delaunay三角剖分。
自適應(yīng)三角網(wǎng)格在圖像的重疊區(qū)域采用加密的網(wǎng)格,而在圖像非重疊區(qū)域使用稀疏的網(wǎng)格,設(shè)定稠密網(wǎng)格邊長間距為lmin,稀疏網(wǎng)格邊長間距為lmax,通常lmax=3lmin。以篩選后得到的sift特征點(diǎn)和圖像邊界點(diǎn)為優(yōu)先選擇,以lmin為半徑采集重疊區(qū)域三角網(wǎng)格的頂點(diǎn),以lmax半徑采集非重疊區(qū)域三角網(wǎng)格的頂點(diǎn)。在得到網(wǎng)格頂點(diǎn)后,使用delaunay三角剖分構(gòu)造三角網(wǎng)格。如圖2所示,(a)為原圖像,(b)為原圖像的網(wǎng)格圖像。若圖像的貝殼為圖像的sift特征點(diǎn)分布區(qū)域,則該貝殼區(qū)域構(gòu)建密集的三角網(wǎng)格,而其余區(qū)域構(gòu)建稀疏的三角網(wǎng)格。
該步驟中使用稠密的三角網(wǎng)格表征重疊區(qū)域,使用稀疏的三角網(wǎng)格表示圖像的非重疊區(qū)域,所以相對apap方法整幅圖像采用密集的同等的矩陣網(wǎng)格,大大提高了算法效率。同時網(wǎng)格變形可以充分利用gpu的并行、高速運(yùn)算性能,可以大大提高拼接速度。
s5:建立網(wǎng)格變形能量函數(shù),優(yōu)化全局射影配準(zhǔn)
特征三角網(wǎng)格只發(fā)生剛性變換,相鄰網(wǎng)格變形盡可能平滑,由此建立網(wǎng)格變形能量函數(shù)。估計目標(biāo)網(wǎng)格頂點(diǎn),使得能量函數(shù)最小化,利用原目標(biāo)網(wǎng)格頂點(diǎn)和目標(biāo)網(wǎng)格頂點(diǎn)估計局部相似變換模型,并用來優(yōu)化全局射影矩陣參數(shù)。
設(shè)定原圖像網(wǎng)格的頂點(diǎn)坐標(biāo)為
s501:構(gòu)造尺度縮放誤差項
本文方法希望特征三角網(wǎng)格在網(wǎng)格變形過程中沒有旋轉(zhuǎn),只發(fā)生尺度變換
其中,at是三角網(wǎng)格tp的面積,||.||f表示frobenius范數(shù),jt(q)為一個2×2的jacobian矩陣,三角形tp變換到tq發(fā)生仿射變換,jt(q)是仿射變換的旋轉(zhuǎn)和縮放部分。
最小化尺度縮放誤差es使得仿射變換的線性部分盡可能接近尺度變換gt,即所有三角形都傾向于以不旋轉(zhuǎn)方式均勻地縮放。
s502:構(gòu)造平滑誤差項
為了得到更自然的目標(biāo)圖像,保持目標(biāo)圖像的連續(xù)性,要求相鄰網(wǎng)格在變形過程中發(fā)生的尺度變換應(yīng)盡可能地相似。引入平滑誤差項:
其中att′=(at+at′)/2。
s503:構(gòu)造形狀相似項
假設(shè)原始網(wǎng)格上三個連續(xù)點(diǎn)
為了保持三角網(wǎng)格的形狀相似性,我們引入長度比和邊的角度來表征形狀相似項:
s504:構(gòu)建能量函數(shù)并求解,求出目標(biāo)網(wǎng)格頂點(diǎn)
綜合步驟s501~s503,引入權(quán)重因子ε和μ,得到能量函數(shù)如下:
e=es+εem+μef
以上網(wǎng)格變形能量函數(shù)是關(guān)于mq的頂點(diǎn)和三角形的尺度因子的二次方程。網(wǎng)格變形能量函數(shù)的最小化可以通過求解稀疏線性方程組來實現(xiàn),通過能量函數(shù)最小化,可以得到目標(biāo)網(wǎng)格頂點(diǎn)坐標(biāo)和各個三角網(wǎng)格的尺度因子。
s505:估計局部剛性變換模型參數(shù)
根據(jù)s504步驟求出的目標(biāo)網(wǎng)格頂點(diǎn)坐標(biāo),結(jié)合原網(wǎng)格頂點(diǎn)坐標(biāo),分別計算每個三角網(wǎng)格的剛性變換矩陣s。
s506:優(yōu)化全局射影模型參數(shù)
利用局部的剛性變換矩陣,對全局射影變換后的圖像作進(jìn)一步變換。為了更好地表明兩次圖像變換的關(guān)系,圖像經(jīng)過兩次變換后的幾何關(guān)系如圖4表示。首先原圖像經(jīng)過h全局射影變換得到i,然后對圖像進(jìn)行二次變換wh-1,其中w為局部三角網(wǎng)格的剛性變換矩陣,h-1為h為全局射影矩陣的逆矩陣。
s5步驟中,將圖像劃分為多個三角網(wǎng)格,單獨(dú)計算每個網(wǎng)格的局部剛性變換參數(shù),可以降低視差引起的拼接重影和模糊;考慮了三角網(wǎng)格變形的連續(xù)性和形狀相似項,所以變換后的目標(biāo)圖像比較自然,可以更好地保持圖像的形狀特征。
s6:圖像融合生成寬視野圖像
原圖像經(jīng)過兩次變換后,采用featherblending融合方法,對變換后的左右圖像進(jìn)行融合,融合生成最后的全景圖像。
以上所揭露的僅為本發(fā)明一種較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。