Alpha matting算法發展


一、摳圖算法簡介

  Alpha matting算法研究的是如何將一幅圖像中的前景信息和背景信息分離的問題,即摳圖。這類問題是數字圖像處理與數字圖像編輯領域中的一類經典問題,廣泛應用於視頻編緝與視頻分割領域中。Alpha matting的數學模型是

                          

           由Porter 和 Duff於1984 年提出[1]。他們首先引入了α 通道的概念,即它是一種前景和背景顏色的線性混合表示方法。一張圖片包含前景信息、背景信息,將該圖片看成是前景圖和背景圖的合成圖,於是便有了以上的混合模型。前景α為1, 背景α為 0,α的取值介於0-1之間,表示前后背景圖的線性組合。在大多數自然圖像中,大多數像素點都屬於絕對前景或者絕對背景,如何將其它混合點的α 值准確的估計出來是alpha matting的關鍵。

         

  給定一個輸入圖像,對於所有像素點,它的(F,B, α)都是未知的,需要進行估計,如果圖片是灰度圖片,每個像素點包含3個未知數,這樣的問題是一個欠約束問題。大多數摳圖問題需要用戶交互的先驗條件,使得我們對已知輸入圖像的顏色統計有預先的估計和假設,從而能夠更加准確的估計出未知量的值,常見的人工添加的約束條件有三區標注圖(trimap)草圖(scribble)兩種。

  預先提供的約束條件(trimap圖或scribble圖)越精確,未知區域內的點就越少,更多前景和背景信息就更容易利用。然而,在實踐中,要求預先輸入非常准確的 trimap 是一件異常繁瑣的工作,不現實也不必要的,如何在預先提供的trimap以及最終算法所求得的摳圖結果之間尋求一個最佳答案,不同的摳圖算法對於這個問題有着不同的闡述。

二、Alpha matting 算法的發展

  通常,alpha matting算法要解決兩個問題,一個是求解圖像像素點顏色分布模型,一個是求解像素點顏色和α 值的關系。一些經典的摳圖算法會預先假設好局部像素點顏色分布模型和像素點顏色α 值模型,再通過采樣(例如貝葉斯摳圖[2])或傳播(例如封閉式(closed-form)摳圖[3])的方法擬合模型,求解α 值,另一些摳圖算法將摳圖問題視為一個半監督的學習過程,用學習的方法擬合模型求解α 值[4]。以上這些方法中關聯像素點是從待定像素的鄰域中取的,除了這些局部摳圖算法之外,一些學者根據非局部原理提出非局部摳圖算法,例如K近鄰摳圖[5]、全局采樣摳圖[6]等。近年來深度學習如火如荼,最近比較熱門的發展方向是基於CNN的摳圖方法[7]

  2003年Chuang Y Y等提出貝葉斯摳圖(Bayes matting)[2]算法,核心是通過領域采樣,從待定像素的領域像素中采樣關聯像素,利用圖像像素點的顏色值特征,以定向高斯模型建立像素顏色模型,再用極大似然發估計α 值。貝葉斯方法從條件概率的角度去考慮摳圖問題,以貝葉斯公式建立F、B和α的聯合概率分布,摳圖問題就可以被轉化為已知圖片像素顏色I的情況下,為了最大化后驗概率P(F,B,α|I),求 F、B和α估計值的問題。

  2006年Levin A等提出封閉式摳圖(Closed formed matting)[3],核心思想是通過傳播的方法來利用圖像的顏色特征,即允許α值從已知區域傳播到領域未知域。封閉式摳圖基於兩個假設:一是顏色分布遵循顏色線性模型;二是前景背景顏色值局部平滑,並由此推知未知像素的alpha值和該像素點的顏色I呈線性相關關系,經過矩陣計算之后,代價函數表達式轉化為關於α的二次型形式:  

                  

  其中L為拉普拉斯矩陣(matting Laplacian matirx),可以由圖像局部像素點顏色計算得到。由此,待定點的α值可以在沒有明確估計該像素點前景和背景顏色的情況下以封閉的形式求解。

  封閉式摳圖方法提出的拉普拉斯矩陣被廣泛地於各種摳圖方法中。例如,K近鄰摳圖(KNN matting,2012)[5]就是通過在特征空間取k個最鄰近點計算得拉普拉斯矩陣計算α值,這種非局部摳圖關注於可以處理更稀疏的trimap,甚至不需要附加的約束條件輸入,直接通過圖像自身的前景與背景屬性的區別來進行分割。

  貝葉斯算法基於圖像局部顏色一致性的假設前提,封閉式摳圖預先假設了顏色線性模型,這兩種經典方法都預先假設了顏色分布模型,考慮到顏色分布不一定服從一個確定的模型,2009年有學者提出了基於學習的摳圖算法(learning based matting)[4],將摳圖問題視為一個半監督的學習問題,以更通用的學習的方法擬合顏色模型求解α值,並且這種算法模型,除了顏色之外還可以融入其他圖像特征。較早期的摳圖算法中圖像特征只考慮顏色,例如貝葉斯摳圖(2003)和封閉式摳圖(2006)采用的圖像特征是顏色,K近鄰摳圖(2012)采用的特征是HSV顏色和像素點坐標兩種[5],隨着摳圖算法的發展,算法模型中漸漸融入其他圖像特征。例如2017年Chao L[9]設計了一個新的特征,稱為SUMD特征,以增加像素識別能力。這種特征是一種紋理特征,功能是使具有相似紋理的像素點具有相似的特征值。

  傳統alpha matting 方法通常只使用低層次的特征,基於深度學習的算法可以考慮更高層次的圖像特征,並且可以通過創建大型圖像數據集來自動優化算法。2017年Xu N等 [7]提出一種基於深度學習的新摳圖算法,使用的CNN模型分為兩個階段:第一階段是深卷積編碼器,將原圖和對應的trimap圖作為輸入,預測圖像的α;第二階段是一個小型卷積神經網絡,作用是對第一個網絡的輸出進行精修優化。由於CNN網絡可以捕捉到更高階的圖像結構和語義特征,並且可以通過大數據集進行優化,基於深度學習的摳圖方法可以更好的適用於真實圖像。

三、摳圖公式-圖像去霧

  圖像去霧的研究算法有很多,但是主要分為兩類,基於圖像增強的去霧算法和基於圖像復原的去霧算法。基於圖像增強的去霧算法主要是通過去除圖像的噪聲,提高圖像的對比度,從而恢復出無霧清晰圖像。而基於圖像復原的去霧算法,主要是采用霧化圖像模型。

  2009年何凱明[14]提出暗通道去霧算法,將摳圖算法應用到圖像去霧算法中,以優化透射率計算。何的暗通道去霧算法是基於圖像復原的去霧算法,采用霧化圖像模型,其數學表達為:

                 

  其中I(x)為觀測到的霧化圖像,J(x)是景物的實際圖像,t(x)是透射率,A 為大氣光成分。

      

  圖像去霧的目標就是從I(x)中恢復J(x) 、A、 t(x),在霧化圖像模型中,大氣光成分A雖然是未知量,但一般情況下,它是一個三通道強度值均接近於255的全局常量,唯一的未知是散射率t(x),而在求得t(x)的情況下,可以很容易恢復出實際圖像J。

  霧化圖像模型摳圖公式數學表達形式是一樣的,J、A、t分別與前景F、背景B、透明度通道α對應。何參考封閉式摳圖[3]的代價函數提出去霧算法透射率的代價函數:

                  E(t) = tTLt                                          

  其中L為拉普拉阿斯矩陣,與封閉式摳圖[3]中的拉普拉斯矩陣有着相似的形式,這樣就可以采用圖像軟摳圖的方法,對計算得到的透射率圖t(x)進行精細優化。

  采用封閉式摳圖算法優化圖像去霧透射率的方法計算速度較慢,為了解決這個問題,2013年何凱明[15]提出了一種新型的圖像濾波方法——引導濾波器,將封閉式摳圖算法應用在圖像濾波中。

參考文獻

       [1]       T. Duff, T. Porter. Compositing Digital Images[C]//Proceedings of the 11th Annual Conference on Computer Graphics and Interactive Techniques. 1984:253–259.

       [2]       Chuang Y Y, Curless B, Salesin D H, et al. A Bayesian approach to digital matting[C]// IEEE Computer Society Conference on Computer Vision & Pattern Recognition. 2003.

       [3]       Levin A , Lischinski D , Weiss Y. A Closed Form Solution to Natural Image Matting[C]// null. IEEE Computer Society, 2006:61-68.

       [4]       Zheng Y , Kambhamettu C . Learning based digital matting[C]// 2009 IEEE 12th International Conference on Computer Vision (ICCV). IEEE Computer Society, 2009.

       [5]       Chen Q , Li D , Tang C K . KNN Matting[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013, 35(9):2175-2188.

       [6]       He K, Rhemann C, Rother C, et al. A global sampling method for alpha matting[J]. 2011.

       [7]       Xu N , Price B , Cohen S , et al. Deep Image Matting[J]. 2017.

       [8]       He K , Rhemann C , Rother C , et al. A global sampling method for alpha matting[J]. 2011. 

       [9]       Chao L, Ping W, Zhu X, et al. Three-layer graph framework with the sumD feature for alpha matting[J]. Computer Vision & Image Understanding, 2017, 162:S1077314217301236.

     [10]     姚桂林. 數字圖像摳圖關鍵技術研究[D].哈爾濱工業大學,2013.

     [11]     楊仙魁. 閉合型摳圖的研究與應用[D].雲南大學,2013.

     [12]     崔兆華,高立群,馬紅賓,李洪軍.改進alpha-matting算法及其在軍事紅外目標提取中的應用[J].渤海大學學報(自然科學版),2013,34(02):225-231+95.

     [13]     Al Y Y B E. Interactive Graph Cuts for Optimal Boundary & Region Segmentation of Objects in N-D Images[J]. Iccv, 2001, 1:105-112.

     [14]     He K, Jian S, Tang X. Single image haze removal using dark channel prior[C]// IEEE Conference on Computer Vision & Pattern Recognition. 2009.

     [15]     He K, Sun J, Tang X. Guided Image Filtering[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2013, 35(6):1397-1409.


免責聲明!

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



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