Natural Image Stitching with the Global Similarity Prior 論文筆記(一)


《Natural Image Stitching with the Global Similarity Prior》論文筆記(一)

@(sinbad)[360sinbad@gmail.com]
簡要記錄下基於網格優化的圖像對齊方法算法的流程步驟,以便日后記憶。

全局單應性VS網格優化
2D圖像拼接常利用相機做純旋轉運動或者拍攝場景為平面場景的前提假設對模型進行單應性近似,從而得到圖像之間的映射關系。圖像對齊時僅僅利用全局單應性往往不夠。2011年后陸續出來基於網格優化的圖像對齊方法。其中,APAP方法利用多個局部單應性來實現精確對齊,但是在圖像變換的約束上僅有局部單應性容易造成圖像畸變,使得圖像質量變差。GSP方法提出相似性變換優先的思想,利用相機運動模型估計分解出合理的尺度因子和2D旋轉角,從而約束了圖像變形,可以得到表現更為自然的拼接圖像。再結合局部相似性優化項,從而更為通用地解決了圖像精確對齊問題。在實際應用中,使用最廣泛的兩個方向應該是在手機上的全景圖像拼接和最近比較火的視頻防抖。我估計全景拼接之前都是以opencv的拼接算法為原型,參考論文為 Automatic Panoramic Image Stitching using Invariant Features基於全局單應性變換,然后對重疊邊界進行金字塔融合,手機上可以參考google原生相機的全景拼接。不知從哪款手機開始,全景拼接開始重新被定義,網上搜了下全景拼接算法提供商TOP class --日本morpho最為出名估計是用的網格優化方案。

算法流程

  • [ ] 特征檢測及匹配
  • [ ] 圖像兩兩匹配圖驗證
  • [ ] APAP方法生成匹配點
  • [ ] 焦距估計和3維旋轉角估計
  • [ ] 尺度和旋轉角估計
  • [ ] 網格優化
  • [ ] 紋理映射合成結果圖

GSP算法簡介

算法思想主要是將圖像網格化變形,通過特征對齊的方式約束重疊區域,通過全局相似性平滑非重疊區域,另外在局部相似約束下,保證圖像拼接自然減少畸變。本篇主要從網格優化的能量函數分析,針對能量函數各個優化項的構造具體分析,方便理解。
總的能量代價函數論文中為:

式中,為對齊誤差項,為局部相似項,為全局相似項,為局部相似項權重參數。
對於兩個互有重疊的圖像,將圖像網格化並使用向量

表示圖像I的網格頂點坐標,其中m為頂點個數。兩個圖像頂點坐標可表述為

對齊項:

我們知道對齊大多會想到特征匹配,但這里不是使用匹配后的feature point而是APAP論文中提出的matching point坐標作為對齊輸入。效果見下圖。

Tips:相對於feature points在圖像中的分布,matching points就均勻很多。matching points對應的是網格頂點,(?)具體是網格頂點還是網格quad的中心點得細看下代碼。如何生成需要看論文APAP中的介紹。核心思想也是在圖像網格化基礎上,對每一個網格求解局部獨立單應性矩。局部獨立單應性矩求解方法跟單個全局單應性矩的求解方法相似,只是對單個全局單應性矩前加了一個系數矩,因此單個全局求解單應性矩的方法叫DLT,局部的求解就叫做Moving DLT.兩者的求解詳情放在了文章后面。
對齊項表述的約束原理網上找了兩張圖說明比較形象,但又有點出入。

另外一個參考說明。

兩者的區別在於第一個是當求解圖像變形后的網格時,設網格做warp得到的新的feature point坐標為未知,網格做warp后feature point坐標點為測量值計算最小誤差。同理反過來求解圖像變形后的網格。由於優化的是網格頂點(matching point),因此,將特征點表達成其所有網格的四個頂點的雙邊線性組合:
其中,代表各自所占的面積比重,例如:p越靠近遠離,則越大,而越小。而變換后的特征點表達為:,其中變換前后保持不變。

求解方法上,對齊項可以簡化為求解線性方程組。表示在頂點集下的雅可比矩陣。所以為其所在網格4個頂點差值權值矩陣。
補充說明1.
*1.單個全局單應性
圖像q到p的單應性近似模型表達為

矩陣表達形式為

對公式進行展開可以得到兩個線性方程,如下公式

對公式進行直接線性變換(DLT, Direct Linear Transformation),將帶估計的單應性矩陣H轉變成變量向量,同時將匹配特征點對p與q的已知變量關系轉換已知線性變量矩陣

因而可以得到如下公式

通常,在兩幅圖像圖像上可以有着上百或者上千對的匹配特征點對。因而,實際上在求解h時通常是通過使得累積平方和誤差最小來評估(最小二乘法),如下公式所示。

此處,上式是一個超定方程的最小二乘解(當n>4時)。其利用‖h‖=1來限制h的自由度為8,其中。其表示所有的縱向排列,大小為2n×9。
通常,利用SVD分解A矩陣,則可以很容易地獲得最小二乘解,其值為最小奇異值對應的特征向量。事實上,為了避免誤匹配帶來的影響,通常也可以利用RANSAC結合單應性評估的四點法(最小采樣四個匹配特征點對,通常為了保證高置信度,就僅采樣四個匹配特征點對),來求解問題。
*2. 多個局部單應性
為了獲得多個局部單應性,首先將圖像進行網格划分。然后,根據每對匹配特征點對距離當前網格中心點的遠近來進行加權,從而評估加權平方和誤差最小,如下公式所示:

進而

m表示網格個數,需要評估m個局部單應性。矩陣是權重的對角組合

另外,權重

其中,點表示查詢圖上第k個網格的中心點,點表示查詢圖像上第i個特征點,參數σ是高斯函數的尺度因子,參數γ是一個閾值參數。該公式表明:一、特征點越靠近網格中心,則其對當前網格單應性估計的貢獻越大;二、由於實際中多數特征點都是遠離網格中心的,其權重趨近於0,為了避免這些特征點的貢獻消失,設置閾值參數γ用於確立最小權重不低於該閾值。
另外,可以看到:假如,則退化成單位矩陣,於是,所有的局部單應性估計結果都會退化成全局單應性。從這個角度來看,閾值參數γ代表着局部單應性往全局單應性的趨近程度。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM