如何妙筆勾檀妝:畫素級語義理解

深度學習大講堂發表於2018-02-27

編者按:在徐凝的《宮中曲》中有這樣一句詩,“一日新妝拋舊樣”,描繪了中唐時期宮中女人換妝的場景,而另一句詩“檀妝唯約數條霞”,講的則是複雜的檀妝其實只需寥寥數筆來勾勒。

而在計算機視覺世界中,畫素級語義理解技術,則賦予了機器對人臉進行換妝的能力,其通過細粒度分割的方式,將面部的不同區域在畫素級剝離開來,從而將換妝的過程簡化為寥寥數筆。

今天,來自中科院資訊工程研究所的劉偲副研究員 ,將為大家講述如何利用畫素級語義分割技術,在計算機視覺領域用寥寥數筆來為影象換妝。

文末,大講堂特別提供文中提到所有文章的下載連結。


如何妙筆勾檀妝:畫素級語義理解

本次報告的主題為“影象的畫素級語義理解”,本文將從語義分割演算法出發,著重介紹其在場景解析、人臉解析、以及人體解析中的應用情況。文中所有應用成果均來自於中科院資訊工程研究所網路空間技術實驗室,http://liusi-group.com/。


如何妙筆勾檀妝:畫素級語義理解

物體分類作為計算機視覺一大重要研究方向,其目的是對圖片整體進行分類,如上左圖所示,物體分類判斷圖中含有桌子、人、燈。而當我們進一步想對圖片的區域性進行分類時,便需要進行物體檢測,如上中圖所示,用方框畫出物體的位置並判斷框中物體是桌子、人或是燈。當我們想更進一步,對圖片中的每個畫素進行分類時,我們便進入了一個更加細緻的領域,那就是畫素級的語義分割,如上右圖,每個畫素都標上了對應的類別。可以看出,從物體分類到物體檢測再到語義分割,任務的粒度越來越細。今天我所要介紹的主要內容便是三者中最為細緻的語義分割。


如何妙筆勾檀妝:畫素級語義理解

影象的畫素級語義理解應用場景非常廣泛,在自動駕駛、醫療影像處理、視訊監控以及擴增實境(AR)中都有很大的使用空間。例如在自動駕駛中可以通過對獲取到的影象進行分割,以輔助車輛更好地對前方場景進行分析和判斷;在醫療影像處理中,可以通過對影象進行解析,準確地發現並定位患者體內的病變組織,從而為治療提供更多的可靠資訊。


影象語義分割相關研究概述


如何妙筆勾檀妝:畫素級語義理解

首先回顧一下一些經典的影象分割資料集及演算法。


如何妙筆勾檀妝:畫素級語義理解

早期語義分割資料集,通常包含圖片數量、物體類別較少,例如2005年由微軟提出的MSRC包含23類物體,591張圖片。2008年的LabelMe則含有183類物體,3萬多張圖片。2009年第一個道路語義分割的資料集CamVid釋出。2011年的SIFTFLOW類別數為33類,含有2688張圖片。2012年的PASCAL VOC含有21類物體以及2913張圖片,該資料集後來成為了語義分割任務中一個重要的benchmark dataset。後來2014年在PASCAL VOC的基礎上,PASCAL CONTEXT將物體類別以及圖片數量都進行了大幅地擴充。


如何妙筆勾檀妝:畫素級語義理解

2013年針對人臉分割的Helen分割資料集釋出,同年釋出的還有香港中文大學的人體分割資料集PPSS。隨後,2014年釋出的PASCAL PART將PASCAL VOC中物體的部位進行細分,提供了更加細緻的分割標註。同年微軟提出了COCO資料集,豐富的圖片和類別使其成為了又一重要的benchmark dataset。隨後,針對道路圖片的Cityscape以及含有深度資訊的SUN RGB-D資料集也被髮布了出來。


如何妙筆勾檀妝:畫素級語義理解

2016年的DAVIS資料集將instance級的分割與視訊相結合,提出了視訊中的物體分割這一更加具有挑戰的任務,類似的還有2017年釋出的GyGO資料集。2017年中山大學、商湯科技集團等釋出了一個更加完善的人體分割資料庫LIP(Look into Person),同年釋出的ADE20K則將物體類別推向了極致,資料集中標註了將近2700類的物體。近期由FAIR釋出的Panoptic Segmentation則整合了已有的多個資料集並提出了一個新的分割任務。


如何妙筆勾檀妝:畫素級語義理解

現在我們來介紹一下語義分割演算法的前世今生。早期的演算法中有引數型方法的代表Texton Boost,也有Label Transfer等非參的方法。2012年發表於TPAMI的Learning Hierarchical Features for Scene Labeling則是第一篇將深度學習應用於語義分割的演算法。


如何妙筆勾檀妝:畫素級語義理解

2015年由Long等人提出的Fully Convolutional Networks for Semantic Segmentation(FCN)不僅獲得了當年CVPR的best paper候選,還引領了之後語義分割演算法使用全卷積網路的方向。之後的Segnet提出了複用encoding特徵的辦法,帶有洞的卷積(Dilated Convolution)擴大了網路的視野域,極大地提升了分割的精度,成為了語義分割網路的“標配”。 2015年樑小丹博士和我本人合作發表於TPAMI的Deep Human Parsing with Active Template Regression首次將語義分割應用於人像解析。我們的另一篇工作Matching-CNN meets KNN: Quasi-parametric human parsing則將KNN的方法與CNN進行結合,提升了網路對人體進行解析的能力。


如何妙筆勾檀妝:畫素級語義理解

之後Deeplab演算法結合了dilated convolution以及fully connected crfs,提升了分割效能。RefineNet則提出了一種將高層語義特徵以及底層特徵進行融合的結構,極大地改進了效能。隨後商湯科技公司提出的PSPNet引入了Pyramid Pooling Module,在獲得了多個尺度特徵的基礎上,通過結合這些特徵得到更好的分割結果。曠視科技提出的Large Kernel Matters則使用了較大的卷積以及一個Boundary Refinement模組來提升網路的整體效能。


如何妙筆勾檀妝:畫素級語義理解

之後FAIR的Mask RCNN提出RoI Align層,在faster-rcnn的基礎上實現了instance級的語義分割。隨後Deeplab的改進版MaskLab提出一種新的方向特徵,改進了instance級分割效果。

回顧完語義分割的資料集以及常見演算法。下面我們將介紹我們組在這方面的工作。


如何妙筆勾檀妝:畫素級語義理解

我將從場景解析、人臉解析以及人體解析三個方面來分別作介紹。


場景解析


如何妙筆勾檀妝:畫素級語義理解

首先,我們先介紹北交的劉婷,趙耀,韋世奎,UIUC魏雲超和我合作的解析方面的工作。

桌布作為家中裝飾的一個非常重要的部分,常常決定了整個房間的氣氛。於是很多人在裝修時一定會想看一下自己的房間適合換上什麼樣的桌布。因此,我們提出了一個可以對牆壁桌布進行解析以及更換的模型。


如何妙筆勾檀妝:畫素級語義理解

具體來說,在給定輸入的圖片之後,我們先用一個基於VGG16的Deeplab-LargeFOV模型提取特徵。此外,我們加入了兩個1x1的卷積對con4和conv5的特徵進行提取以得到影象的邊緣資訊,之後再將邊緣資訊與語義分割的結果進行融合,得到最終的分割結果。根據分割的結果,我們就可以對桌布進行顏色和紋理的更換。該工作發表於2017年的ACM Multimedia會議。下圖是一些結果展示。


如何妙筆勾檀妝:畫素級語義理解

人臉解析


介紹完場景解析的工作後,我們將介紹人臉解析方面的工作。


如何妙筆勾檀妝:畫素級語義理解

首先我們定義一下這裡所說的人臉解析問題。如上圖所示,對於給定的一張人臉圖片,我們希望得到不同語義部位的分割結果,換句話說就是將影象中的每個畫素標註為對應的類別。


如何妙筆勾檀妝:畫素級語義理解

上圖是我們課題組在CVPR2017所發表的一份工作。通過加入一個可學習的放縮層,可以讓網路自動地去調節視野域以得到最好的分割結果。為此我們設計了兩個不同版本的網路,其中單支路版本使用一個resize factor對特徵進行變換,並使用變換後的特徵進行前向計算,得到最終分割結果。而多支路的版本則可以根據需要設定多個支路並讓每個支路學習到不同的resize factor,最終將這些特徵進行合併、並進行前向計算,得到分割結果。


如何妙筆勾檀妝:畫素級語義理解

上圖是我們的方法與其他人臉解析演算法的定量及定性結果比對。可以看出我們的演算法顯著提升瞭解析的效果。仔細看圖中右方的結果圖,可以看出在嘴脣、眉毛、眼睛等部位的結果上,我們的方法結果更好。


如何妙筆勾檀妝:畫素級語義理解

基於人臉解析,我們開展了多項工作。主要有智慧美妝、妝容遷移、人臉老化三個工作。


如何妙筆勾檀妝:畫素級語義理解

首先是智慧美妝部分。電商的發展以及美妝業的巨大市場催生了對智慧美妝產品的需求。


如何妙筆勾檀妝:畫素級語義理解

如何妙筆勾檀妝:畫素級語義理解

根據人臉解析的結果,我們可以將指定的美妝產品應用於圖片,最終得到美妝的結果。具體來說,在得到人臉解析結果後我們將選擇的化妝產品應用於相應的區域。有了這一系統,我們可以在不用手動化妝、卸妝的情況下嘗試不同的妝容效果。


如何妙筆勾檀妝:畫素級語義理解

一些女生看到明星的照片時,常常會想看自己化上同樣的妝是什麼樣子。為此我們設計了一個基於深度學習的妝容遷移演算法。


如何妙筆勾檀妝:畫素級語義理解

如何妙筆勾檀妝:畫素級語義理解

如上面兩圖所示。我們通過人臉解析演算法得到妝容的關鍵區域,然後使用風格遷移的演算法將不同區域的妝容轉移至對應的區域。根據不同的參考妝容可以獲得不同的遷移結果。通過控制遷移時的引數,我們還可以控制妝容的濃淡。相應工作發表於IJCAI 2016。


如何妙筆勾檀妝:畫素級語義理解

人臉解析的第三個應用是人臉老化。人臉老化對於跨年齡驗證、走失人口尋找都有重要意義,而且具有一定的娛樂價值。在我們的工作中,先通過人臉解析提取人臉的主要部分,然後使用圖片以及對應的年齡資訊訓練一個生成對抗網路(GAN)。在訓練好模型後,將一個人的照片以及想轉換到的年齡資訊輸入進這個模型,就可以得到相應年齡段的照片。該論文發表於ACM MM 2017。 

如何妙筆勾檀妝:畫素級語義理解

上圖右方兩行圖片中,有一行是我們的網路生成的結果,有一行是真實的圖片。各位猜一猜哪一行是真實的,哪一行是生成的。

正確答案是:第一行是生成的圖片,第二行是真實的圖片。不知道各位猜對了沒有~

如何妙筆勾檀妝:畫素級語義理解

上圖是兩個不同人物的生成結果。我們生成了這兩個人在0-10歲、19歲-29歲、40-49歲、及60歲以後四個年齡段的結果。可以從下面的動圖裡看到整個變化過程。

如何妙筆勾檀妝:畫素級語義理解
如何妙筆勾檀妝:畫素級語義理解
人體解析

如何妙筆勾檀妝:畫素級語義理解
最後介紹一下人體解析的相關工作。

與人臉解析部分相同,我們首先定義一下人體解析問題。對於一個給定的人物圖片,人體解析的主要任務是將圖片中人體的不同部位進行分類,最後獲得畫素級的分類結果。如上圖所示。


如何妙筆勾檀妝:畫素級語義理解

那麼研究人體解析有什麼樣的重要性呢?舉兩個經典案例,在周克華搶劫案以及長春盜車殺嬰案件中,雖然案發城市已經有完備的監控裝置,但由於缺乏相應的分析能力,導致視訊的篩選和分析仍需人力來進行,被人們形容為“有眼無珠”。如果能減少相應的人力消耗並提高分析速度,將會給社會帶來很大的積極影響。


如何妙筆勾檀妝:畫素級語義理解

如何妙筆勾檀妝:畫素級語義理解

如上圖所示。設計好的分割模型可以準確地將人體影象進行分割,同時屬性預測模型可以對人像進行準確的預測。這樣一來,當我們拿到一個描述,例如圖中“棕色上衣、黑色緊身褲,拿著白色行李箱的女性”時,計算機便可以快速地在海量監控資料中自動地找到匹配的圖片或視訊。


如何妙筆勾檀妝:畫素級語義理解

上圖是我們CVPR2017的一個工作的網路結構框圖。該工作充分利用了多幀的資訊,得到了很好的人體分割結果。下面我們將介紹網路的各個部分以及相應的功能。


如何妙筆勾檀妝:畫素級語義理解

首先我們使用一個基於FCN(全卷積網路)的分割網路對視訊中的不同幀進行分割。


如何妙筆勾檀妝:畫素級語義理解

如何妙筆勾檀妝:畫素級語義理解

然後我們使用分割時所使用的特徵進行光流的估計,得到幀與幀之間的光流資訊。


如何妙筆勾檀妝:畫素級語義理解

最後我們根據光流資訊對不同幀的結果進行融合。最終得到目標幀的分割結果。下圖是我們分割演算法以及屬性預測演算法的動態演示圖。

如何妙筆勾檀妝:畫素級語義理解

總結與展望

最後,我總結一下今天的分享並做一些展望。


如何妙筆勾檀妝:畫素級語義理解

今天我首先分享了我們在場景解析方面的工作,主要是桌布虛擬更換以及圖片去霧霾工作(由於篇幅未展開)。


如何妙筆勾檀妝:畫素級語義理解

然後介紹了我們小組在人臉解析方面的工作,包括妝容遷移、人臉老化、智慧美妝。


如何妙筆勾檀妝:畫素級語義理解

最後我介紹了我們在人體解析方面的工作,主要是視訊監控中的人體解析任務。


如何妙筆勾檀妝:畫素級語義理解

當然,影象的畫素級語義理解還有很多的研究方向,例如影象去噪、影象修復、自動上色、超解析度、去模糊等等。


如何妙筆勾檀妝:畫素級語義理解

對於未來的發展,我們認為主要有三個趨勢。

  • 首先是模型的小型化,未來深度學習的模型將逐漸從計算、儲存能力豐富的GPU叢集走向CPU平臺或是嵌入式裝置中,這對模型的大小以及計算複雜度都將有更嚴格的限制。

  • 第二個趨勢就是資料標註的低成本化,未來將會有更多的弱監督、半監督演算法湧現,加上遷移學習的發展,我們對於資料的人工標註將會越來越少。相應的成本也將越來越低。

  • 最後是資訊源的多模態化,現在的影象解析工作大多基於普通的RGB三通道圖片。但隨著資訊源的增多,我們可以獲得深度資訊、雷達探測資訊等更多的資料。通過這些資料的整合,我們將進一步提升解析演算法的效能。

以上就是我今天的分享,大家如果感興趣可以關注我們的主頁 http://liusi-group.com/。


文中劉老師提到的文章下載連結為: 

https://pan.baidu.com/s/1pMuaqHd

相關文章