?

柱面全景視頻拼接算法

2019-09-17 08:27李曉禹陳杰
電子技術與軟件工程 2019年16期
關鍵詞:柱面投影攝像頭

文/李曉禹 陳杰

視頻拼接技術將多路具有重疊區域的小視野視頻拼接為一路完整大視野場景,有效地解決了單個攝像頭視野局限性的問題,在虛擬現實、智能監控等領域有著廣泛的應用。

視頻圖像是由每秒若干幀的靜態圖像組成的,所以視頻拼接的本質是圖像拼接,而圖像配準又是圖像拼接最核心的一步,通常使用的方法是基于圖像特征的配準。David G.Lowe 提出的尺度不變特征算子SIFT[1,2]在圖像拼接中被經常使用,但是SIFT 算法的計算速度較慢,無法滿足視頻實時性的要求,不適合應用于實時視頻的拼接。文獻[3]在SIFT 算法基礎上,提出了一種改進的尺度不變特征—SURF( Speeded Up Robust Features)。文獻[4]研究表明:SURF算法提高了特征檢測的速度,同時與SIFT 算法性能基本相同。但是視頻拼接與圖像拼接又有著很大的不同,最大的不同是視頻拼接需要有良好的實時性。文獻[5]和[6]雖然對SURF算法進行了改進,但是拼接速度仍然達不到實時性的要求。因此,SURF 雖然速度較快,但是為了能將其應用在實時視頻拼接中仍需要改進,文中采用一種改進的SURF 算法來進行圖像配準。

文中采用的視頻拼接流程是:實時地采集視頻圖像幀,以30幀/s 的速率提取視頻幀,提取模板幀,對模板幀多路視頻圖像利用改進的SURF進行配準以確定變換矩陣,利用這個變換矩陣對后續的每一幀圖像進行融合,形成一個大視角的圖像,最后將這些圖像以視頻的形式輸出。

1 柱面圖像全景拼接算法

圖像拼接算法在圖像正畸之后的下一個步驟是圖像配準。圖像配準是為了使圖像間相互重疊部分對齊,將待拼接圖像轉換到參考圖像的坐標系,構成完整的圖像,它是整個圖像拼接中的核心部分。圖像配準包括三個方面,即特征提取、特征匹配和確定變換矩陣。

1.1 特征點提取

本文首先要提取模板幀圖像的特征并進行匹配。為了加快匹配過程,SURF 在特征矢量中增加了一個新的變量,即特征點的拉普拉斯屬性,這兩類特征點具有不同的屬性,在匹配時只需對同類的特征點進行匹配,這樣會大大地提高匹配速度和精度。圖像中兩個特征點之間相似性的度量一般采用歐氏距離等距離函數進行度量,通過相似性的度量就可以得到待配準圖像間的潛在匹配點對。這其實是一個距離檢索問題,如果用窮舉法則浪費太多時間。由于用標準的K-d 樹時,數據集的維數不應該超過20[7],而改進的SURF的維數為16,所以采用K-d 樹進行特征匹配。

通常使用比值匹配法,即將其中的一幅圖像作為樣本,在樣本的特征點中尋找在另外一幅圖像中與它距離最近的特征點和次近特征點,然后計算這兩個特征點與樣本點之間歐氏距離的比值。對于比值小于某一閾值范圍內的特征點,則認為是正確匹配的特征點。

原有的SURF 算法是對整個圖像區域提取特征點,然后在整個圖像范圍內進行特征匹配,由于實際環境中兩個攝像頭拍攝的畫面必然會有重疊區域的存在,所以只需在重疊部分進行特征點提取就可以,這樣的好處是可以減少特征提取的時間,進而減少匹配的時間并能減少誤匹配。

由于提取的特征點存在誤匹配,本文根據相鄰兩個攝像頭之間重疊區域的大小對匹配的特征點進行高效篩選。篩選算法如下:設圖像的寬度為Width,重疊區域比例為factor,那么重疊區域的寬度為factor*Width,左邊圖像的特征點為leftPoints,右邊圖像的特征點為RightPoints,那么篩選算法如下:如果,leftPoints的cols值大于factor*Width,小于Width,該匹配點保留,否則丟棄;如果,RightPoints的cols值小于(1-factor)*Width,大于0,該匹配點保留,否則丟棄。該算法對重疊區域的之外的匹配特征點對剔除,提高了特征匹配的精準度。避免了重疊區域之外的誤匹配特征點對,同時減少了程序的耗時。

1.2 柱面投影

在平面上提取的經過篩選的高度匹配特征點進行柱面投影變換,以便準確計算兩幅圖像在后期融合時需要的變換量。

如圖1所示,兩個攝像頭環形排列,每個攝像頭拍攝到的畫面為前方實線,圖像拼接就是將兩張圖像按照重疊區域融合,但是由于圖中兩個攝像頭朝向不同,使得拍攝畫面不滿足視覺一致性。因此考慮將圖像投影到柱面,即攝像頭前方弧線上,投影后的圖像重疊區域在柱面重合,具有較好視覺一致性。而且柱面圖像容易展開為矩形圖像,可直接用于圖像處理。圖1 (b)中點O 為攝像頭所在位置,前方矩形為拍攝畫面,柱面投影就是將其投影到紅色圓柱上。

既然投影后的圖像具有較好的視覺一致性,因此先對圖像進行柱面投影然后再拼接。源圖像Img上一點被映射到Imgcyl上的點。圖1(c)是圖1(b)的俯視圖,其中,Img 的寬AB和攝像頭的視角∠AOB均已知,分別是W和α,那么攝像頭的焦距f = W/(2×tan (α/2)),的寬度W′ = f×α。因為,PB = x,所以∠AOC = β = arctan ((x -W/2)=f),所以同樣的,圖1(d)是圖1(b)截面圖,其中,Img的高為H,PR = y,并且△PQO ~△ P′Q′O,所以可以得到P′R′ 值。坐標變換公式(2)如下:

根據上面的坐標變換公式,可以得到平面上匹配的特征點投影到柱面上的坐標。

1.3 確定變換量

經過柱面投影后的高度匹配特征點集用來進行圖像對齊融合。本算法的圖像對齊融合操作很簡單,只需要利用匹配的特征點集計算出圖像之間的平移量,然后將源圖像平移到目標圖像上即可。1&1圖像拼接平移量的計算方法是取所有匹配特征點平移量的平均值作為圖像的平移量,計算公式為(3):

其中,Wt是目標圖像寬度,Pi,x是目標圖像上的特征點,P'i,x是源圖像上的對應特征點,N是匹配的特征點數量,diffx是x方向平移量,diffy是y方向平移量。

圖像拼接結果Ires可由源圖像I′src和I′tar按照公式(4)平移拼接得到:

其中,left = I′tar(x, y) - diffx,Xfactor=(xleft)/|diffx|。圖像融合過程簡單的說就是,左側區域取自左圖,右側區域取自右圖,中間重疊區域為左圖右圖線性融合。以上是1&1圖像拼接的平移量計算。在多路攝像頭視頻拼接之前,采用公式(3)事先計算好多路攝像頭視頻幀兩兩之間的變換矩陣(1&1平移量),以8路攝像頭為例,后續2&2,4&4圖像拼接的平移量計算需在前次(1&1)拼接變化矩陣的基礎上累加。并將每次的平移量保存起來,用于后續視頻幀圖像的拼接融合。

1.4 模板幀融合

計算好圖像之間的平移量之后,就可以對其進行融合。兩幅融合之前需要對基于平面坐標的圖像進行柱面投影。

在進行柱面全景圖的拼接過程中,為了保持實際場景中的空間約束關系和實際場景的視覺一致性,需將拍攝得到的反映各自投影平面的重疊圖像序列映射到一個標準的柱面坐標空間上即柱面投影,采用上述公式(2)可以得到源圖像Img的柱面投影圖像Imgcyl。對每路攝像頭圖像進行柱面投影,得到柱面圖像序列,再進行拼接得到柱面全景圖。

柱面投影后的圖像具有視覺一致性,可以用來做圖像對齊和融合,具體方法為:取左邊的圖像為目標圖像,右邊的圖像為源圖像,源圖像在平移量的作用下,可以與目標圖像完美融合。

1.5 后續視頻幀拼接

后續視頻幀圖像融合過程中所需的攝像頭參數和畸變系統、圖像平移量在模板幀處理中就已得到,所以在后續視頻幀的融合過程中免于進行攝像頭標定、特征檢測和匹配以及平移量計算,這對算法速度的提升起到很大作用。

另外,柱面投影變換和圖像融合過程都可以使用GPU 的CUDA平臺并行加速(CUDA是NVIDIA推出的通用并行計算架構,支持對圖像進行并行運算處理)。所以后續視頻幀的處理速度快,可以做到實時拼接。實驗結果表明,在NVIDIA 1080Ti GPU上運行該算法,可以實時地生成無縫清晰的全景視頻。

猜你喜歡
柱面投影攝像頭
浙江首試公路非現場執法新型攝像頭
攝像頭連接器可提供360°視角圖像
解變分不等式的一種二次投影算法
基于最大相關熵的簇稀疏仿射投影算法
基于單攝像頭的柱面拼接
找投影
Maple動畫功能在高等數學教學中的應用示例(Ⅱ)
基于太赫茲技術的新一代攝像頭及其在安防領域的應用探討
矩形孔徑柱面鏡面形擬合基底多項式研究
基于節點剛度的柱面巨型網格結構靜力性能研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合