技術宅
相信很多朋友都使用過美圖秀秀之類的APP,通過它們可以在手機上瞬間將手機拍攝的照片進行美化,如實現磨皮美白、祛斑祛痘等,而很多直播問的主播也是在通過類似的APP進行實時美化效果,讓她們姣好的面容展現在我們面前。今天就讓我們解讀這些APP是怎樣實現美化的,以及美顏背后運用的技術。
不是新技術 聊聊圖像美化那些事
說到圖像美化,就不得不提到Photoshop。很多朋友都知道,借助PS可以化腐朽為神奇,將人物P得美輪美奐。不過PS操作畢竟繁瑣,而隨著移動設備的普及,越來越多類似PS的APP就逐漸在手機上流行起來,比如美圖秀秀、百變魔圖等。一些手機更是將美容功能融合到手機系統中,如美圖手機可以通過調用系統API訪問相機,然后將采集到的畫面進行美顏處理(圖1)。
隨著網絡直播的興起,APP美容技術也在不斷發展,它已經不再局限于對靜態照片的美容,越來越多直播平臺可以使用APP對主播的動態圖像進行實時美化,比如將主播的小眼睛變大,把圓臉變成瓜子臉,幾乎實現了現實生活中的“整容”效果。
變美的背后——認識APP美化原理
對于普通用戶來說,在手機上進行美顏操作都非常簡單,比如美圖秀秀磨皮祛痘操作,只要在功能面板上選擇相應的菜單,然后簡單點擊選擇即可實現快速美容(圖2)。
不過這看似簡單的操作背后卻是強大的圖片處理技術在支撐著。以簡單的去痘操作為例。大家知道很多朋友臉上都有痘痘,這樣拍攝出來的照片,痘痘就會在你的臉上形成一個灰度值的變化。而如果一張照片上相臨的兩個區域灰度值相差比較大,在照片上就會形成噪點。因此祛痘操作實際上就是圖片處理上常用的“降噪”。降噪主要是通過一定的算法實現,比如濾波算法,它可以對周圍的點取均值來替代原先的值,使得圖片上的噪點看上去不那么明顯,反映在照片上就是人臉的痘痘消失了,看上去皮膚更為光滑。
因此當我們在美化APP中輕松點選去痘操作后,手機APP實際上在后臺先進行噪點的判定(通過一個點的亮度和周圍點的亮度的差值進行比較找到噪點),然后調用一定的算法進行降噪,最后還要將經過處理的圖片與原圖進行混合(因為如果只是使用處理后的照片很容易丟失細節,使得處理后的照片看上去失真),并通過調整兩張圖片的混合權重,使得處理后的照片看起來既有美化效果,又不會給人“太假”的感覺。這也是一般美化APP處理圖片的常見流程(圖3)。
對于網絡主播的動態美容則更為復雜,它首先要實現“人臉識別”。APP只有準確識別到人臉才能進行美容,人臉識別的核心技術則是深度學習技術。這種技術借助互聯網上海量的圖像數據進行學習訓練,抓取到核心的特征,然后生成一種算法。這樣美顏APP就可以利用這些算法實現對主播們的動態美容。比如對于主播膚色的調整,深度學習技術首先會抓取原圖和美膚處理后的圖片進行比較,然后分析其中的差異,這樣經過大量的學習后,它就可以在抓取到當前主播原圖后使用特定的算法快速完成對主播的膚色處理,使得“美容”后的效果更為逼真、有效(圖4)。
同樣的,對于整容成瓜子臉、將小眼睛變大之類的美容效果,也都是使用類似的方式完成美化。這樣在直播時,從相機采集到每一幀的畫面,深度學習技術都會進行人臉識別,再標示出關鍵點的位置,然后結合圖像技術得到最終的美容效果。舉個簡單的例子,現在網上流行的網紅臉,通過深度學習的人臉識別技術可以在抓取到當前主播臉部數據后和網紅臉進行比較,然后通過特定的算法進行優化,可以將主播整容為最受網友喜愛的臉型和膚色,這樣我們在直播平臺看到的就是各種靚妹和帥哥,實際上功勞卻是后臺的人臉識別技術整容的結果。
寫在最好美化APP更讓人值得期待
隨著網絡直播的流行,現在基于人臉識別的美容技術也在不斷發展。一方面,硬件廠商在自己的設備中逐漸植入各種深度學習技術,比如從iOS 9開始,蘋果就提供了深度學習API,在iOS 10相關的API得到進一步更新,進行深度學習的開發已經逐漸成熟了。谷歌則早在2015年就發布了Facenet網絡,用這個網絡可以達到對人臉98%以上的識別率。另一方面,基于移動平臺的第三方人臉識別技術也在不斷發展,比如Caffe(卷積神經網絡框架),一個清晰、可讀性高、快速的深度學習框架,可以讓移動設備擁有更強的深度學習能力。
人們對美的追求是無止境的,誰都希望自己有更美的面容出現在大眾眼前。正是由于這些技術的不斷進步和移動設備硬件性能的不斷提高,在不久的將來,無論是手機拍攝的照片,還是各類網絡直播(包括視頻聊天),我們都可以以更美的形象出現在人們的面前。