快手“萌面” Kmoji 魔法表情背后的那些 AI 技術
2018年7月,快手上線萌面魔法表情,首次將iphoneX的Animoji玩法普及到全部機型。2018年12月,快手又進一步上線了“萌面Kmoji”魔法表情,通過該功能,用戶能夠用相機拍攝生成自己的專屬臉部AR虛擬形象,同時可以捕捉用戶表情,眨眼、張嘴、抬眉毛、吐舌頭等細微動作都能精準還原。這是短視頻平臺首次實現用戶自定義AR虛擬形象進行拍攝的玩法。
用戶用萌面Kmoji制作的手工耿形象
“萌面Kmoji”生成的虛擬形象表情生動逼真,與蘋果推的memoji效果觀感幾無二致。不過對“萌面Kmoji”而言,iPhoneX或更新型的蘋果設備或系統并非必需,同樣在任意一部智能手機上都可以流暢使用。
另一方面,相比于蘋果設備Memoji復雜的捏臉步驟,“萌面Kmoji”則簡單得多:打開最新版快手APP的拍攝頁面,在魔法表情“萌面”表情中選擇“創建專屬萌面”進行拍攝,系統就會根據用戶面部特征,一鍵自動生成和用戶肖似的AR形象。
用戶也可憑喜好對虛擬形象的五官、皮膚、發型、裝飾等進行自由調整,打造獨一無二的AR形象,“萌面Kmoji”的捏臉選項中提供了超過160余種素材選項,給用戶更豐富的個性化選擇。
“萌面Kmoji” 背后是快手技術團隊大量的研發工作。首先,基于人臉關鍵點、圖像特征提取等AI技術,“萌面Kmoji”不需要iPhoneX等設備才支持的3D結構光信息,僅憑2D視覺信息即可識別用戶的發型、臉型、五官形狀、膚色、口紅顏色、胡須等面部屬性信息,構建用戶專屬的3D AR形象,并通過表情參數驅動3D形象做出各種細微表情,例如微笑、閉眼、張嘴、吐舌頭等50余種表情,是多模態技術的成功應用。
此外,“萌面Kmoji”采用了基于物理的真實感渲染算法,金屬、皮革等模型材質更加真實更具質感,大大提升模型的表現力。同時,快手技術團隊通過對算法的優化,大大降低了運行“萌面Kmoji”對CPU、GPU資源的占用,提升了運行效率,普通千元手機也可順利運行。
萌面Kmoji背后的人工智能技術方案詳解
基于3D分析和2D信息融合的人臉屬性和表情識別
個性化萌面系統的實現基礎是人臉屬性和表情識別,這需要3D分析以及與2D信息的融合。
對于圖像信息,快手技術團隊會利用3D重建技術恢復出3D結構,同時和2D信息做有機的融合,并基于這些重建、分析和融合,做人臉屬性的分析,從各個維度分析出人臉特征,生成個性化的虛擬形象。同時也會實時進行人臉的表情分析,用于驅動生成的虛擬形象。
在此之上,快手技術團隊還會借助人體進行相關分析,比如頭發,肩部等,為和現實場景融合打下基礎,并通過自研的手機端真實感渲染引擎,將活動的個性化萌面實時呈現給用戶。
3D人臉重建
3D人臉重建是整個系統中非常重要的一環。快手技術團隊采集了上萬人臉三維數據,包含各種年齡段,人種,臉型等,以及每個個體對應的人臉各種表情,從而建立了幾乎涵蓋所有人臉空間和表情空間的三維人臉數據庫。通過該數據庫,可以建模出任意人臉的任意表情。快手技術團隊研發了人臉關鍵點技術,通過百余個關鍵點刻畫人臉的表情變化,從而重建每個個體各種表情下的三維人臉。另一方面,通過高效的神經網絡技術,保證3D人臉重建在性能較低的手機上也能實時運行。
人臉屬性感知
在人臉屬性感知方面,快手技術團隊采用神經網絡感知人臉細粒度屬性,包含了性別,年齡,膚色,臉型,眼睛,嘴巴細粒度信息,相比同類產品,可做到自動的人臉定制化,同時利用海量人臉數據,多任務協同學習,捕捉人臉細微特征。細粒度屬性的區分是非常困難的,有些問題即使是人眼本身都難以區分,為此快手技術團隊做了很多精細的設計,融合了分類/回歸/分割等技術,提高自動捏臉的準確度。
人臉表情識別
人臉表情是一種復雜且細微的信息,人對表情的感知是非常靈敏的。讓機器識別細微/夸張/靈活/穩定的人臉表情信號,單靠圖像信息是難以達到的。
快手技術團隊通過 2D 的 RGB 視覺信息對問題進行建模、求解,獲得人臉關鍵點以及實時重建的三維模型,求解出人臉的表情,驅動虛擬形象做各種逼真的動作。同時,得益于深度神經網絡模型的量化,通過壓縮和加速解決手機性能問題,該方案可適配任意機型。
高質量渲染
萌面效果的最終呈現離不開渲染, 為了獲得高質量的渲染,快手技術團隊采用了先進的Pp技術,在移動端實現了PC游戲級畫質;同時,依托深厚的AI技術積累,萌面能夠根據外部環境和用戶的形象特征智能化地選擇最適合用戶的材質,達到最優的渲染效果。
為了獲得更加真實的體驗效果,快手技術團隊引入了物理引擎實現頭發、布料等柔體的運動效果。為了使用戶獲得最優的體驗,渲染引擎會根據不同機型選擇合適的渲染質量。
移動端預測模型優化
為了讓AI模型在手機端能夠流暢地運行,快手技術團隊主要做了三方面的優化:
首先是圖像預處理環節,我們將圖像各種預處理操作合并起來,以及對預處理所涉及到的圖像內存進行統一分配和回收,以減少內存資源的消耗,提高分配使用的效率。
同時,我們充分利用了NEON加速以及蘋果自帶的accelerate加速,整個運行庫只占用2M的空間。
最后,我們在保證預測精度的前提下,對AI模型進行局部的INT8量化,經過優化后,運行速度可提高1倍以上,同時AI預測模型的占用空間也壓縮到將近原來的四分之一。
除了虛擬形象之外,基于萌面所使用的這套系統,快手技術團體還進行了擴展應用:人像3D打光、世界上另一個你
人像3D打光
人像3D打光主要利用了實時人臉三維重建技術,該技術利用了人臉參數化先驗模型,根據輸入圖,自動匹配人臉幾何信息,得到人臉3D模型參數,獲得人臉3D網格模型。可以根據不同的場景設置不同的光源,利用實時渲染技術對虛擬人臉進行渲染,得到面部光影圖;同時,對輸入人像進行前景分割,得到前景分割蒙版,也可以根據原圖得到其他蒙版信息;這些蒙版分別作為不同的圖層按照場景需求特定的方式疊加到原圖上,就可以得到打光結果。
世界上的另一個你
“世界上另一個你”是整套系統的另一個線下應用,體驗者走到屏幕前,點擊拍攝按鈕,3s倒計時后,左邊屏幕鏡頭拍攝定格參會者的面部圖像,右邊屏幕通過與視頻庫內的數十億快手用戶公開視頻進行檢索匹配,百毫秒內匹配出結果,顯示播放1個快手端內相似長相的用戶視頻。
核心技術:
- 基于幾十億的公開人臉數據,進行人臉屬性分析和識別,提取人臉特征并做數據結構化,建立了高效的索引,并針對低對比度、模糊、大角度等人臉做了專門的優化。
- 對前端拍攝的人臉圖像進行檢測,同樣基于人臉分析模型,提取人臉特征,并在后臺索引中進行檢索,找到相似度最高的三個人臉圖像。
- 對檢索出的三個人臉圖像進行更細粒度的屬性分析,得出對應的年齡、性別、表情等屬性,基于屬性對檢索結果進行重排。
- 最后前端展示出相似度最高的的人臉。
相比于其他的通用圖片檢索平臺,快手優勢在于:
- 數據量極大
- 數據分布相對均勻
- 數據多樣性:不同場景,姿態、光照、表情等數據十分豐富