一鍵高清還原老照片:全方位解讀美圖影像實驗室MTlab人像畫質修復技術

近日,美圖影像實驗室MTlab針對低清畫質推出高效的人像畫質修復算法,輕鬆解決圖片被壓縮,亦或是由於夜拍、抓拍或是抖動造成的照片模糊、失焦等問題。美圖人像畫質修復算法在自研的超清人像生成網絡結構 BeautyGAN(Beauty Generative Adversarial Networks)基礎上,從美圖數以億計的海量人像數據中學習,使其具備人像畫質修復能力,最大程度還原人像原有的臉部信息,重新定義低清畫質的寬容度(Portrait Redefinition)。本文將對這一人像畫質修復算法進行深入解讀。

左:原圖,右:修復結果

一、導語

日前,林青霞的一組復古照片在各大社交媒體平臺引起了廣泛關注與熱議,成功將“AI老照片修復”帶入大衆視野,也讓更多人近距離感受到黑科技的魅力所在。由於早期拍攝設備的配置有限,手機像素比較低,又或是圖片經過多次的網絡轉載和壓縮,使得很多老照片畫質受損嚴重,清晰度較差。而隨着AI的不斷髮展,尤其是生成技術的發展,使智能修復老照片成爲可能。老照片往往承載着許多回憶,甚至是許多人的情感寄託,然而模糊老舊的照片已經無法滿足用戶日趨嚴格的審美需求。爲了解決這一痛點,美圖影像實驗室MTlab作爲美圖核心技術研發部門,推出了人像畫質修復技術,通過便捷的一鍵操作就能高清還原老照片中的人像。事實上,除了老照片修復外,還可以修復的場景包括模糊、失焦、壓縮等各類低清人像畫質照片。

借鑑前沿的深度學習技術,如降噪、增強、超分、強化學習等,在生成網絡的基礎上,結合大量的對抗式生成網絡的前沿技術,進一步加強了美圖影像實驗室MTlab自研的生成網絡結構 BeautyGAN的生成能力。美圖憑藉自身強大的數據基礎,使BeautyGAN具備良好的人像修復能力,最大程度還原人像原有的臉部信息。通過網絡結構和訓練方案的不斷優化,提高修復的效率,讓用戶無需等待,數秒內即可看到人像修復的結果。

二、人像畫質修復完整流程

針對一張待修復的圖片,一般分兩步來處理。首先利用人臉點摳取臉部,對臉部做修復,使其變清晰;其次對全圖進行去彩噪、去噪、去馬賽克、去jpeg壓縮、去模糊、去輕微抖動等畫質修復操作,從而達到畫質增強的效果。

分辨率比較高的圖片在進行全圖去噪等操作時,耗時較爲嚴重。爲了提高計算效率,美圖影像實驗室MTlab會將待修復圖縮小到一定尺度,再進行分塊、去噪等修復操作。最後通過guided-filter網絡結構的畫質增強方案恢復爲原始分辨率。上述臉部修復和全圖修復(全圖修復包括低分辨率修復和高分辨率增強)並行完成後,將修復後的臉部貼回原圖,合成完整的修復圖。再利用超分網絡,最終使得畫質整體變得更加清晰。完整修復圖如圖(1)所示。


圖(1) 畫質修復流程

三、畫質增強

前已述及,對於分辨率比較高的圖,直接進行去噪等操作存在佔用內存或顯存高等問題,進而導致計算效率低下。因此,把原圖縮小到一定尺度進行低分辨率修復如去噪、去模糊等,將會大幅提升處理效率。在低分辨率修復完成後,藉助Wu等人[1]提出的DGF網絡結構(Deep Guided Filtering Network),恢復爲原始分辨率或放大爲更大分辨率的圖。

比如,一張1280尺度的圖片,縮小到640尺度進行去噪、去模糊等修復,得到640尺度的修復結果,通過DGF網絡結構恢復爲原始1280尺度的分辨率,但實際上若想變爲更大尺度1920的分辨率,可以把原1280尺度的圖片先用立方插值放大爲1920(此時放大的結果會變糊),然後利用640尺度修復結果加上DGF網絡結構,可以讓1920尺度的圖片實現去噪、去模糊等修復效果的同時,在1920尺度上變得更清晰。即通過低分辨率修復模塊和DGF網絡結構,可以讓1280尺度的圖片放大爲1920尺度分辨率的圖片。


圖(2) DGF畫質增強網絡結構及ResBlock使用方式

其中,IH表示高分辨率的原始圖片,IL表示IH縮小到一定尺度的低分辨率圖片,OL表示低分辨率圖片IL修復結果,DGF網絡結構具體參數含義可參考對應文獻[1],OH0表示DGF網絡結構輸出的結果。

但單純的DGF網絡結構做畫質增強,會丟失一些細節,因此需要將DGF得到的結果OH0,和原始分辨率的圖IH,通過concat的方式,再經過若干個ResBlock(通道數4/8通道即可),從而得到最終畫質增強的結果OH。以下是全圖修復(含臉部修復)示例:


圖(3) 左:原圖,右:修復結果


圖(4) 左:原圖,右:修復結果


圖(5) 左:原圖,右:修復結果

四、人臉修復

人臉修復具體包括人臉裁框和臉部生成修復。

1.人臉裁框

捨棄了以往單純利用眼睛間距來裁切人臉的方式,而採用最小包圍盒矩形框來裁切人臉,具體步驟爲:

(a)通過目前成熟的基於CNN的人臉檢測和人臉對齊方法獲得圖像中的人臉點集FP,計算其外接矩形,向外拓展得到人臉的裁切矩形。

(b)通過人臉的裁切矩形,獲得人臉的旋轉角度,從原圖中裁取擺正後的人臉圖像F。

2.生成網絡的設計

由於人臉特有的分佈特徵,使得其在生成網絡結構中能夠學習到人臉的共性,由此產生了很多人臉生成的網絡結構以及一系列特殊的訓練方法,但人臉生成存在五官變形、丟失遮擋(如手、劉海等)信息等,使得DL生成的人臉和真實人臉存在較大差距,肉眼可見是假臉。但StyleGAN[2]的出現解決了這個問題,能夠生成一張逼真的人臉,肉眼看不出和真實人臉的差別。其借用圖像風格遷移,讓生成式網絡能夠生成一張逼真的人臉。但其僅僅只是生成一張隨機的逼真人臉,並不能直接實現一對一的臉部修復,於是需要爲其設計encoder-decoder的網絡形式。同時爲了複用encoder的featuremap,保留臉部的五官特徵,避免發生變形,需要將其和decoder對應大小的featuremap連接起來。區別於以往採用加的連接形式,改成concat的方式,可保留encoder結構的部分featuremap,避免臉部嚴重變形或者丟失臉部遮擋(如手、劉海等)的信息。具體的網絡結構如下圖所示:

輸入一張大小爲sxs的圖,經過五次下采樣,得到一張大小s32xs32的featuremap,再經5次上採樣,修復生成一張大小爲sxs的修復臉部圖。


圖(6) 人臉修復基本網絡

3.構造生成器

爲加強BeautyGAN的生成能力,藉助StyleGAN的訓練方式,對於生成網絡,我們首先訓練decoder的生成能力,即輸入一個大小爲s32xs32的隨機向量,通過逐層的上採樣加上concat的隨機向量,最終生成一張sxs大小的人臉,保證生成的人臉看不出真假。以往一些生成網絡獲得的人臉往往跟真實人臉有差距,一看就是假臉,但結合StyleGAN的訓練方式,可以讓生成網絡得到的人臉逼近真實的人臉,肉眼幾乎看不出差別。


圖(7) decoder網絡訓練結構

對上述decoder網絡結構作生成器(generator),加上判別器(discriminator)構建GAN網絡結構,即美圖影像實驗室MTlab改進研發的gan網絡結構——BeautyGAN。其中,concat處每次迭代時都生成一個跟相應層featuremap大小一致的隨機向量,提高decoder的生成能力。

當decoder結構訓練穩定具備生成人臉的能力後,和encoder結構合併,進行整個網絡結構的訓練,讓encoder部分的學習率高於decoder部分的學習率,同時控制好判別器的學習率。以下是部分修復示例:


圖(8) 左:原圖,右:修復結果


圖(9) 左:原圖,右:修復結果

五、結語

隨着拍照場景需求的日漸多樣化,如夜拍(模糊、噪點多)、抓拍(曝光時間短,畫質差)等,用戶對於畫質修復的要求也越來越高。爲了滿足用戶豐富的場景使用需求,美圖影像實驗室MTlab研發了人像畫質修復的深度學習算法,幫助用戶修復低清畫質的清晰度,解決不同場景對於畫質清晰度的拍照需求。目前,該技術已成功應用在美圖秀秀中。當然,目前的生成網絡還存在一定的問題,MTlab研發人員未來將致力於研發更加有效的訓練方法,充分發揮其在圖像修復上的技術優勢,攻克技術難點,提高人像處理能力,爲用戶提供更好的拍照體驗。

參考文獻:

[1] H. Wu, S. Zheng, J. Zhang, and K, Huang. Fast End-to-End Trainable Guided Filter. CVPR, 2018.

[2] T. Karras, S. Laine, and T. Aila. A Style-Based Generator Architecture for Generative Adversarial Networks. CVPR, 2019

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章