高新波:異質圖像合成與識別(3)
首先利用貪婪學習算法生成初始的畫像,然后利用照片和畫像,分別使畫像和畫像匹配去尋找K近鄰,基于照片和照片匹配去尋找K近鄰,基于照片和畫像匹配去尋找K近鄰,由于畫像和照片它的高頻分量比較吻合,利用它做先驗知識來選擇一個最佳的K近鄰然后進行合成,最終進行迭代以后仍然可以得到好的結果。

上圖是我們生成的結果。

上圖是我們利用給定風格的畫像(一張),可以將給定的測試照片合成出對應風格的畫像分。

同樣地,對于非人臉圖像的其他圖像來說,也可以生成如給定的人臉圖像風格一樣的畫像來。上圖中分別展示了根據動漫風格、簡單素描、復雜素描風格進行合成的畫像。


當然我們還可以合成不同年齡的人臉。如果小孩走丟的時候是7、8歲,現在已經17、18歲,我們可以根據年齡的遷移合成不同年齡段的畫像。以上主要講的是由照片生成畫像,當然也可以實現由畫像生成照片,因為該過程是可逆的。

接下來是基于概率圖模型的異質圖像合成方法。

基于概率圖模型的方法實際上可以用最大后驗概率的方法尋找k近鄰。當然,最大后驗概率可以分解成最大似然函數和先驗概率的情況。

上圖是我們在2007年的時候提出的嵌入式模型合成方法。把畫像和照片看成是觀測序列,同時存在一個隱含狀態和狀態轉移空間,利用狀態轉移矩陣得到合成模型,然后基于該模型實現畫像或照片的合成。2014年在IJCV上我們對它做了新的解釋,完全可以用最大后驗概率或者概率圖模型進行解釋,這樣我們就把它統一到概率圖模型的框架上去。

09年在PAMI上有上圖所示的王曉剛教授的一個工作,提出了利用馬爾科夫隨機場理論來進行畫像的合成。過去我們生成畫像塊的時候只是利用照片和畫像之間的關系,其實要生成畫像的話,相鄰畫像塊之間也有約束關系,為此提出了嵌入式的馬爾科夫模型。這里面就有兩個似然函數,一個表示畫像和照片之間的關聯性,一個表示畫像塊之間的兼容性。

上圖是香港科技大學學者在CVPR2012提出馬爾科夫加權隨機場模型。在考慮塊和塊之間的關系時,把每一塊又使用k近鄰來表示,變成k近鄰和k近鄰之間的約束關系,同樣分為畫像和照片之間的關系和照片和照片之間的關系。

如上圖所示,馬爾科夫隨機場實際上是找最近鄰,而馬爾科夫加權隨機場實際上是利用k近鄰來合成。

我們在此基礎上又提出上圖所示的新的基于直推式學習的方法。上圖是一個非常簡單的圖模型,這個圖上照片和畫像都只有一個葉節點,由一個共同的根節點來控制,這個節點就是它們加權生成的加權矩陣W。現在如果來一個照片以后如何得到它的畫像呢?過去是訓練好以后再進行處理,現在要把訓練和測試樣本放在一起學習,就變成直推式的學習,這樣我們來推導最大后驗概率。實際上這個最大后驗概率的計算可以基于概率圖模型進行簡化,當給定W的時候兩個葉節點之間相互獨立,可以把模型簡化成上圖中兩個似然函數和一個先驗概率的情況。

這種學習算法是我們2014年發表的,叫做基于直推式的學習,把訓練樣本和測試樣本放在一起,原來歸納式的學習方法相當于在訓練樣本上做的誤差很小,但是在測試樣本不能保證誤差也很小,直推式的方法可以保證在測試樣本上誤差也是非常小的。

這樣一來求最大后驗概率的問題就轉變為如何構造先驗概率和似然函數的問題。先驗概率是構造式的,比如說我們要生成上圖所示的這樣一個塊,利用k近鄰加權線性組合形成的,鄰近的塊也是利用加權形成的,對于交疊的區域應該是非常兼容的,所以利用兩個誤差越小越好,相應的指數函數越大越好,這樣構造出一個先驗概率。

對于似然函數則是上圖這樣的,合成鼻子的時候事先找到了k個相近的鼻子,使得它合成的誤差越小越好,畫像上把對應的鼻子和權值W組合就可以生成出鼻子來,這樣就可以構造出兩個似然函數,合成誤差越小越好。這兩個權值在兩者之間是共享的。

這樣一來就可以構造出上圖所示的一個目標函數,看上去非常復雜,實際上推導一下只不過是用矩陣來表示最大后驗概率的計算公式。


優化目標函數以后就可以得到生成結果,上面分別是由照片生成畫像和由畫像生成照片的結果,顯然比原來的兩種方法合成出的圖像更清晰。

同樣還可以用合成出來的照片和畫像進行模式識別。如上圖所示,在香港中文大學的數據庫上可以達到97%左右的正確率。

在合成過程中,如上圖所示,如果測試圖像里面光照是單側不是正面光的,生成出來效果就不好;如果不同背景,原來照片訓練里面都是藍色背景,實際合成有黃色、白色背景,那合成出來效果也不好;另外不同種族,當訓練庫中的照片都是華人的照片,要合成一個歐洲人,那么合成出來的結果一定會像一個亞洲人。

為了解決這個問題,我們做了一個上圖所示的基于多視的表示方法,進行特征描述的時候,不僅僅用灰度,還利用不同的濾波器濾波以后的圖像,在圖像上分別提取灰度信息、SURF特征、多尺度LBP特征,構造非常復雜的特征表示形式。

利用這個精細的表示形式,可以利用剛才講的概率圖模型進行上圖所示的合成。

但是,由于生成不同的圖像,不同特征的貢獻率不一樣。所以又引入一個加權系數,同時要學習一個合成的加權系數W,它們之間通過上圖所示的迭代來進行優化。

同樣基于概率圖模型構造似然項和先驗概率項,最后得到了上圖所示的聯合概率密度的形式。為了避免平凡解,我們還加入了一項正則項。

上圖就給出不同特征的貢獻程度,越亮的話就表示這個特征起的作用越大,越暗表示起的作用越小。

上圖是我們由照片生成的畫像,其他方法由于背景不一樣可能會生成一些偽的背景。

同樣我們可以由畫像生成照片,上圖是我們的實驗結果。

可能對其他的照片我們的視覺不一定敏感,對于名人的照片一般都比較敏感。上圖是對于一些明星的照片合成的畫像結果,其他方法可能都有一些偽的陰影出現。

上圖表示在用其他描述方法上我們的識別率都達到97%左右。



*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。
c++相關文章:c++教程











