天天看點

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

小叽導讀:如今,90、00後一代成為消費主力,補貼、打折、優惠等“價格戰”已很難建立起忠誠度,如何與年輕人建立更深層次的情感共鳴?互動就是一種很好的方式,它能讓使用者更深度的參與品牌/平台呈現的内容,提供更深層的參與感,提升使用者對品牌/平台的認同感和滿意度。今天,我們一起看看這些趣味互動技術背後的秘密。

一. 背景

最近一年以來,阿裡巴巴搜尋事業部和浙江大學宋明黎教授團隊聯合打造了手淘視訊互動平台(AliPlayStudio),分别落地線上互動、線下大屏互動多個場景(線上手淘APP的拍立淘、掃一掃、搜尋關鍵詞入口;線下商場大屏、影院互動大屏等)。接入阿裡集團内天貓品牌、阿裡影業、優酷IP、淘寶網紅,行業營銷等各類資源,線上上線下讓使用者互動,打通線上公域場景 、手淘APP 、線下商超這3個流量場。以新穎的視訊化互動方式,利用使用者對明星、紅人、IP、新奇的玩法所産生的好奇心及聚衆心理,創造全新的AI互動營銷方式,同時結合權益發放、店鋪加粉、商品推薦等手段,将互動使用者自然轉化為真正的消費者。

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

下面是18年雙11期間上線的“明星猜拳PK”互動:

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

下面是結合了人像語義切割、使用者年齡/性别預測的的18年天貓黑5“刷臉”活動:

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

下面是人臉融合的玩法:

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

下面是基于實時人體關鍵點檢測的《西虹市首富》宣發互動玩法:

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

下面是和“黃小鹿”互動大屏線上下商場部署的“明星合圖”活動:使用者通過在大屏上自拍,經過人像切割後跟明星合照,用手淘掃碼導流到線上關注店鋪,完成照片列印。

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

為了打造AliPlayStudio視訊互動平台,我們從基礎圖像算法能力到系統層面的端上模型推理加速、用戶端native實作(視訊、圖檔,Camera多輸入源渲染)、H5玩法子產品化等,做了大量研發工作。

本文主要介紹圖像算法這塊的研發工作。

端上互動用到的手勢識别、POSE檢測、人像語義切割等能力,涉及計算機視覺分類、檢測、語義切割幾個核心問題。随着這幾年深度學習的發展,目前這些任務比較好的解法都是基于深度學習方法。我們的業務場景(手淘)要求模型一般能夠大規模部署到手機和低性能的嵌入式裝置上。這些任務盡管解決的Pipeline不一樣,都會面臨一個共性的問題:設計一個面向低性能平台的輕量級高效神經網絡,并且能在 cpu、gpu、dsp等混合環境有高效的實作部署、運作,讓網絡在保持不錯的性能下,盡量降低計算代價和帶寬需求。

在神經網絡加速方面,目前業界常用的一些方法有網絡減支和參數共享、網絡量化、知識蒸餾以及模型結構優化等。關于剪枝方面的研究在大模型上做的比較多,效果也比較好。但是我們模型的backbone一般是采用MobileNet/ShuffleNet這類很小的網絡,剪枝在小網絡上精度損失比較大,加速收益比不高。目前我們主要采用模型結構優化和知識蒸餾來提升網絡性能。

我們研發的視覺互動基礎算法能力中,人臉識别、人臉關鍵點檢測,使用者年齡性别預測等是已經有較好解決方案的任務,人像語義切割、手勢識别、人體關鍵點識别、圖像風格化、人臉融合這幾個目前業界還沒有成熟方案的任務。我們的工作重點也主要投入在後面幾個任務上。

二. 人像語義切割

圖像語義分割任務(Semantic Segmentation)根據物體的不同類别進行像素級别的标記。針對人這個特殊的類别,Human Parsing将人的各個部位(臉部/頭發/四肢等)進行像素級别的區分。我們分别從資料、模型、架構優化三面着手,整體提升分割效果和體驗。

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

在資料層面,語義切割的樣本标注非常貴,我們通過圖檔合成創造更多樣本。為了模拟真實的資料分布,分别采用了顔色遷移算法調整前背景光照、通過人位置的分布統計将人貼到合理的位置。通過人工合成高品質的資料,我們能夠獲得相比原來數十倍的分割樣本。

在模型層面,我們分别針對圖檔分割場景和視訊分割場景訓練了高精度模型和實時模型:

語義分割網絡大都采用Encoder-Decoder結構,Encoder負責提取高層語義資訊,Decoder負責還原邊緣分割細節。對于高精度模型,在backbone選取方面,我們采用了Inception結構。為了獲得更大的感受野,我們參考DeepLab系列工作的思路,引入了ASPP(Atrous Spatial Pyramid Pooling)。

在Decoder設計上,我們參考UNet系列工作的思路,将前層的特征進行融合,以獲得更好的邊緣細節。整體的網絡結構如下圖所示:

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

實時模型需要做到精度 / 速度的相對平衡。是以模型設計的整體原則是:Encoder盡量精簡、Decoder盡量恢複細節。Encoder子產品針對backbone分析耗時瓶頸,進行模型裁剪,減少channels數目;采用fast downsample,使得feature maps的大小盡可能早的縮小,以節省計算量;不固定輸入大小,在不同機型下可以使用不同大小的輸入。

Decoder網絡在精簡的基礎上盡可能多的融合前層特征,提高網絡整體并行度:采用類似UNet的結構,融入淺層特征;在Decoder部分也采用較大的卷積核來進一步擴大感受野;引入殘差結構增加資訊流動。

通過以上優化,我們的模型大小在1.7MB左右(量化後0.5M),miou 0.94,在中端Android機型(高通625)、320*240輸入下,能達到25FPS,滿足實時化要求。

此外針對人這個特定的類别,我們嘗試加入更多關于人的先驗知識來提升分割效果。分别嘗試了Pose Estimation-Human Segmentation聯合訓練和Human Parsing- Human Segmentation聯合訓練。通過聯合訓練的方式,不同任務之間能夠互相作用進而提高各個任務的精度。

下面是手機端實時切割的效果(同時加上了手勢檢測,識别剪刀手勢來實時換背景):

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

下面是商場場景下的切割效果:

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

三. 猜拳遊戲:手勢識别

18年雙11期間我們在手淘上線了“明星猜拳大戰”玩法,受到使用者大量好評。這是業界首次在手機端上實作的實時猜拳玩法。

猜拳互動要求實時檢測使用者的手勢(剪刀/石頭/布/其他),我們需要從使用者視訊的每一幀中找到手的位置,然後再對其進行分類,這也就是目标檢測要做的事情。

雖然目标檢測在近幾年得到了飛速的發展,但是直接将現有模型算法用在猜拳遊戲上還是會遇到一些挑戰。首先由于手是非剛體,形變極大,同一個手勢會表現出很多形态,再加上角度等問題,使得我們幾乎不可能窮舉所有可能的情況。另外,使用者在切換手勢的過程中會出現很多中間形态,這些形态的類别也很難确定。此外我們需要在手淘app覆寫的絕大部分中低端機型上做到實時運作,這對我們的模型運作速度提出很大挑戰。

為此我們從模型架構、主幹網絡、特征融合、損失函數、資料等層面進行了全方位的優化,保證遊戲能夠在大部分移動端上都能夠正常運作。具體的,在模型架構上我們采用了經典的SSD架構,因為SSD速度快、效果好、易擴充;主幹網絡借鑒了最新的MNasNet,進行了深度的優化,使其速度和精度進一步提升;特征融合用的是改進版的特征金字塔FPN,使其融合能力更強更高效。最終我們的模型優化到隻有1.9M,雙十一手淘的線上ios裝置平均運作時間17ms,在測試集上的AP(IoU=0.5)達到了0.984。

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

四. 人體關鍵點檢測

人體關鍵點檢測任務是針對RGB圖檔或視訊輸入,檢測其中人物的頭、頸、肩、腕、肘、髋、膝、踝等骨骼關鍵點。傳統的基于視覺的關鍵點檢測技術一般需借助Kinect等特殊的攝像頭裝置,解決方案成本高,且不易擴充。而近年來學術界利用深度學習的相關工作又重在追求精度,模型設計複雜,速度比較慢且需要占用大量存儲空間。 我們在平衡計算量和精度上做了大量探索和實驗,提出一個能在手機端上實時運作的高精度人體關鍵點檢測模型。具體來說,我們借鑒了語義分割中的Encoder-Decoder模型,引入MobileNet系列輕量級網絡作為backbone提取高層語義資訊,然後decoder使用轉置卷積進行上采樣恢複稠密輸出,同時也使用了open pose工作的PAF(Part Affinity Fields)子產品進行兩路輸出預測。

模型在高通骁龍845上運作單幀圖檔(320*320輸入)隻需要11ms,在RK3399這種低端嵌入式晶片上也可以跑到15fps,預測精度能夠很好的支援我們線上線下的互動場景,且模型大小僅2.5M。下面是我們多人實時關鍵點識别在RK3399上跑的效果:

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

五.圖像風格化

圖像風格化算法的目标是在保持内容圖的進階語義資訊不變的情況下,将風格圖的風格遷移到内容圖。 風格化算法一般有2類:慢速、快速風格化,我們的互動場景下隻适合後者: 對特定風格圖訓練前向神經網絡模型,在測試的時候隻需要一次前向即可得到響應結果。雖然快速圖像風格化算法的速度較快,但是與此同時帶來的一個缺點是風格遷移過程中很多因素變得不可控,比如筆觸大小。 給定一個預訓練好的網絡和一張固定大小的内容圖,輸出的風格化結果圖的筆觸大小是固定的,無法讓使用者進行筆觸大小的靈活控制, 即無法實作精細的任意連續筆觸大小控制。針對此問題,我們和浙江大學宋明黎老師團隊合作,提出了一個筆觸大小可控的圖像風格化遷移算法。

我們設計了一個筆觸金字塔結構,通過筆觸金字塔(StrokePyramid),把整個網絡劃分為了很多不同筆觸分支,下面的分支通過在前一分支的基礎上增加卷積層的方式獲得了更大的感受,并利用不同的感受野,使用不同尺度大小的風格圖進行訓練,之後通過在特征空間進行筆觸特征插值(stroke interpolation),來實作任意的連續筆觸大小控制。在測試階段,筆觸金字塔通過門函數來控制網絡的感受野,進而産生出與感受野對應的不同的筆觸大小。

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

下面是我們在明星合圖活動上應用的不同筆觸風格遷移效果。

對于1024×1024 大小的測試圖,我們的模型在NVIDIA Quadro M6000上隻需要0.09s的時間,模型大小為0.99MB。

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

我們的工作發表于ECCV 2018上,具體見論文:Stroke Controllable Fast Style Transfer with Adaptive Receptive Fields.

六.人臉融合

人臉融合是将使用者自拍圖檔的人臉與模闆圖的人臉進行融合,融合以後,模闆圖的人臉呈現出使用者人臉的五官特征與臉型輪廓,并保持原模闆圖的發飾、穿着,以此達到以假亂真的效果,實作“換臉”。 簡單實作人臉融合并不困難,但是,如果想使得絕大多數的使用者圖檔都能呈現滿意的效果并不容易,有許多細節問題,其中最主要的兩個問題是人臉變形與圖像融合:

使用者在自拍的時候,拍攝的角度多種多樣,無法做到與模闆圖的人臉保持相同的角度。如果隻做簡單的變形就将使用者的人臉貼到模闆上,會造成十分詭異的效果。

使用者所使用的拍照裝置各異,拍照環境各異,會産生不同的像素與光照環境的圖檔,這些圖檔中存在大量白平衡失調、皮膚高光等的錯誤。

如何對這些品質不足的圖檔進行處理,使得融合後仍然能夠産生高品質的融合圖檔,是人臉融合中必須解決的問題。 我們的方法獲得了完善的使用者臉部關鍵點,在盡可能保持使用者五官臉部形狀的同時,利用關鍵點插值對其進行變換,保證了五官的和諧,同時,針對使用者不同的臉型,如圓臉、尖臉,對模闆圖進行了變換,使得融合後得到的結果與使用者更加相似。 為了解決使用者照片品質各異的問題,我們利用皮膚在顔色空間上的特征值,采用預定義的LUT(LookUpTable),将使用者的膚色與模特膚色進行了統一,并有效處理了高光的問題,使得低品質的圖檔也能夠得到良好的融合效果,并且觀感上更加受使用者喜愛。

在家和愛豆玩"剪刀石頭布",阿裡工程師如何辦到?

七. 總結

從18年3月份以來,我們以活動營銷的方式,在手機淘寶app内拍立淘、掃一掃、搜尋等産品落地了十多場視覺互動IP營銷活動。

譬如《西虹市首富》《碟中諜6》的影視IP宣發、雙11《明星猜拳大戰》、天貓國際黑5“刷臉”活動、雙12"AI看相"、元旦"淘公仔"新年簽活動。新鮮的AI互動技術結合有趣的創意,受到使用者好評,引發在微網誌等平台上大量自發參與、傳播讨論。

同時我們也與線下互動大屏場景鹿合作,其線下拍照互動産品“黃小鹿”部署在全國各大商場。我們為其提供了基礎的人像語義切割等能力,從18年8月份開始陸續上線了健樂多、彈個車、婚博會糖類、貝殼租房等品牌宣傳活動以及雙十一天貓線下快閃店、萬聖節等活動。 後面我們将通用互動提煉,進行平台化沉澱。讓更多的品牌,尤其是中獨幕喜劇牌能夠通過平台快速配置産出一套AI互動營銷活動,再借助其站外推廣資源引導使用者回流,提升活動參與熱度,赢得平台内更多推廣資源。既能給品牌客戶提供強有力的營銷抓手,實作“财丁兩旺“,又能為平台帶來使用者增量,進而實作雙赢。

最後,感謝阿裡巴巴-浙江大學前沿技術聯合研究中心(AZFT)對本項目的支援。

參考文獻:

[1] Howard A G, Zhu M, Chen B, et al. Mobilenets: Efficient convolutional neural networks for mobile vision applications[J]. arXiv preprint arXiv:1704.04861, 2017.

[2] Chen L C, Papandreou G, Kokkinos I, et al. Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs[J]. IEEE transactions on pattern analysis and machine intelligence, 2018, 40(4): 834-848.

[3] Chang J R, Chen Y S. Pyramid Stereo Matching Network[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 5410-5418.

[4] Li H, Xiong P, An J, et al. Pyramid Attention Network for Semantic Segmentation[J]. arXiv preprint arXiv:1805.10180, 2018.

[5] Gong K, Liang X, Li Y, et al. Instance-level Human Parsing via Part Grouping Network[J]. arXiv preprint arXiv:1808.00157, 2018.

[6] Liu W, Anguelov D, Erhan D, et al. Ssd: Single shot multibox detector[C]//European conference on computer vision. Springer, Cham, 2016: 21-37.

[7] Sandler, M.; Howard, A.; Zhu, M.; Zhmoginov, A.; and Chen, L.-C. 2018. Mobilenetv2: Inverted residuals and linear bottlenecks. CVPR.

[8] Tan M, Chen B, Pang R, et al. Mnasnet: Platform-aware neural architecture search for mobile[J]. arXiv preprint arXiv:1807.11626, 2018.

[9] Lin T Y, Goyal P, Girshick R, et al. Focal loss for dense object detection[J]. IEEE transactions on pattern analysis and machine intelligence, 2018.

[10] Lin T Y, Dollár P, Girshick R B, et al. Feature Pyramid Networks for Object Detection[C]//CVPR. 2017, 1(2): 4.

[11] Ren S, He K, Girshick R, et al. Faster r-cnn: Towards real-time object detection with region proposal networks[C]//Advances in neural information processing systems. 2015: 91-99.

[12] Z. Cao, T. Simon, S.-E. Wei, and Y. Sheikh. Realtime Multiperson 2d pose estimation using part affinity fields. In CVPR, 2017. 5

[13] C. Payer, T. Neff, H. Bischof, M. Urschler, and D. Stern.Simultaneous multi-person detection and single-person poseestimation with a single heatmap regression network. InICCV PoseTrack Workshop, 2017.

[14] G. Papandreou, T. Zhu, N. Kanazawa, A. Toshev,J. Tompson, C. Bregler, and K. Murphy. Towards accuratemulti-person pose estimation in the wild. In CVPR, 2017.

[15] Chen, D., Liao, J., Yuan, L., Yu, N., Hua, G.: Coherent online video style transfer. Proceedings of the IEEE International Conference on Computer Vision (2017)

[16] Chen, D., Yuan, L., Liao, J., Yu, N., Hua, G.: Stylebank: An explicit representa-tion for neural image style transfer. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (2017)

[17] Chen, D., Yuan, L., Liao, J., Yu, N., Hua, G.: Stereoscopic neural style transfer. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (2018)

[18] Chen, L.C., Papandreou, G., Kokkinos, I., Murphy, K., Yuille, A.L.: Deeplab: Se-mantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs. IEEE Transactions on Pattern Analysis and Machine Intelli-gence (2017)

繼續閱讀