AI+AR如何提升花椒直播的体验?
隨著全民直播時(shí)代的到來,用戶對(duì)視頻質(zhì)量和創(chuàng)意需求增多,由此產(chǎn)生了視頻增強(qiáng)等技術(shù)的巨大需求。360資深技術(shù)專家劉洛麒根據(jù)360在視頻領(lǐng)域的開發(fā)經(jīng)驗(yàn)與技術(shù)積累,詳細(xì)介紹了人工智能在視頻直播中的技術(shù)與相關(guān)應(yīng)用。本文來自其在LiveVideoStackCon 2018大會(huì)中的演講,并由LiveVideoStack整理而成。
文 / 劉洛麒
整理 / LiveVideoStack
大家好,我叫劉洛麒,在360人工智能研究院負(fù)責(zé)計(jì)算機(jī)視覺算法方面的工作。本次的分享主要介紹AI與AR在花椒直播中的應(yīng)用。內(nèi)容可以分為三個(gè)部分,第一部分是花椒直播的行業(yè)地位和產(chǎn)品優(yōu)勢(shì);第二部分是花椒直播的AI算法的技術(shù)儲(chǔ)備和技術(shù)壁壘,這里主要介紹我們到底做了哪些技術(shù),達(dá)到了一個(gè)什么樣的效果,最后是介紹花椒直播中基于AI的AR特效平臺(tái)。
首先來看一下花椒直播的行業(yè)地位和產(chǎn)品優(yōu)勢(shì)。
?
在去年的第四季度,花椒直播大概在直播平臺(tái)上有2.13%的活躍用戶占比,這個(gè)占比在所有的直播平臺(tái)里算是最高的。
?
另外,花椒直播在去年第四季度有17%的增長(zhǎng)率。由于花椒直播有各種不同的運(yùn)營(yíng)手段,包括在花椒直播中使用技術(shù)手段在平臺(tái)上獲得更多的新的應(yīng)用,使得增長(zhǎng)率保持在一個(gè)非常高的水平。
?
接下來主要介紹一下360AI研究院在人工智能技術(shù)上所做的一些核心工作。360AI研究院聯(lián)合新加坡國(guó)立大學(xué)歷史上共獲得過10余項(xiàng)Pascal和Imagenet比賽的獎(jiǎng)項(xiàng),并在2012年P(guān)ASCAL收官之戰(zhàn)上曾獲得兩項(xiàng)冠軍,然后在17年的IMAGENET收官之戰(zhàn)上再獲得了兩項(xiàng)單項(xiàng)冠軍。當(dāng)然刷比賽的分?jǐn)?shù)不是我們的核心點(diǎn),我們同時(shí)還有一些原創(chuàng)性的想法,比如我們?cè)缙诘囊粋€(gè)卷積的想法就獲得了Google最杰出科學(xué)家的郵件感謝和贊許。
?
下面主要介紹我們?cè)诤诵募夹g(shù)上的一些思考。我們?cè)诤诵乃惴ǚ矫嬗腥齻€(gè)網(wǎng)絡(luò)模型的貢獻(xiàn),比較早期的是Network in Network網(wǎng)絡(luò),然后是現(xiàn)在比較強(qiáng)的Dual-path Network,即雙通道網(wǎng)絡(luò),以及推薦用在花椒直播的模型設(shè)計(jì)上的一個(gè)輕量級(jí)的多纖維網(wǎng)絡(luò),Multi-fiber Network。對(duì)于網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì),主要有兩點(diǎn)需要注意,首先是它性能要非常好,另外就是速度和性能的一個(gè)權(quán)衡。
?
NIN網(wǎng)絡(luò)是我們比較早期的工作,相比Alexnent我們主要想到兩點(diǎn)需要改進(jìn)的地方,第一點(diǎn)是卷積層需要改進(jìn),卷積是一個(gè)局部線性的結(jié)構(gòu),所以我們就設(shè)置了一個(gè)非常復(fù)雜的局部網(wǎng)絡(luò)結(jié)構(gòu),比如左邊紅色的一個(gè)框圖,我們把卷積層擴(kuò)展成多層感知機(jī)的一個(gè)局部結(jié)構(gòu),擴(kuò)展了之后使它的表達(dá)能力會(huì)變得非常強(qiáng);第二點(diǎn)是連接層的一個(gè)改進(jìn),我們把全連接層改成Global Average Pooling。
后來出現(xiàn)了殘差網(wǎng)絡(luò)Resnet,它可以優(yōu)化非常深的網(wǎng)絡(luò)。殘差網(wǎng)絡(luò)有很強(qiáng)的遞歸特性,與RNN網(wǎng)絡(luò)有一定的參照性。
?
將殘差網(wǎng)絡(luò)疊起來,當(dāng)參數(shù)共享時(shí)其實(shí)就是RNN。
?
另外一點(diǎn)就是RNN有三階、四階或者更高階的,高階的RNN展開之后其實(shí)就是一個(gè)DenseNet網(wǎng)絡(luò)。這啟發(fā)我們思考?xì)埐罹W(wǎng)絡(luò)和DenseNet網(wǎng)絡(luò)之間的關(guān)系。
?
其實(shí)我們研究了相鄰的兩層,比如上圖中右邊的綠色小圓球和小箭頭的兩層,我們發(fā)現(xiàn)如果把這相鄰的兩層做參數(shù)共享,它可以直接串起來。
?
如果輸入輸出相同時(shí)我們可以再加一個(gè)新的通路。
?
當(dāng)新的通路添加之后需要將結(jié)構(gòu)重新調(diào)整一下。
?
調(diào)整完之后,中間可以形成一個(gè)殘差網(wǎng)絡(luò)結(jié)構(gòu)。也就是說中間網(wǎng)絡(luò)結(jié)構(gòu)和左邊網(wǎng)絡(luò)結(jié)構(gòu)相當(dāng)于是等價(jià)的。我們得出的結(jié)論就是,當(dāng)相鄰兩層參數(shù)共享時(shí),殘差網(wǎng)絡(luò)就等同于DenseNet網(wǎng)絡(luò)。于是我們?cè)O(shè)計(jì)了DPN來結(jié)合這兩個(gè)網(wǎng)絡(luò)的優(yōu)點(diǎn)。
?
DPN其實(shí)相當(dāng)于有兩個(gè)通道,一部分是DenseNet網(wǎng)絡(luò)結(jié)構(gòu),另一部分是殘差網(wǎng)絡(luò)結(jié)構(gòu)。這樣就可以同時(shí)保留兩個(gè)網(wǎng)絡(luò)的優(yōu)勢(shì)。
?
我們?cè)俸?jiǎn)化一下,大概是上圖這樣的一個(gè)形式。
?
我們大概設(shè)定了不同深度的網(wǎng)絡(luò),在同樣的精度下,我們的模型與當(dāng)時(shí)最好的ResNeXt-101模型做比較,結(jié)果如上圖所示。我們的模型比它小26%,計(jì)算量小25%,Memory小8%。
?
然后是單個(gè)模型,單個(gè) center-crop 大概達(dá)到4.16%,這是當(dāng)時(shí)最好的一個(gè)結(jié)果。
?
上圖是結(jié)果的展示,可以看到圖中桌子,花,小朋友等都能非常準(zhǔn)確的檢測(cè)到。
剛才設(shè)計(jì)的是比較大型的高性能網(wǎng)絡(luò),我們的第三個(gè)設(shè)計(jì)是一個(gè)非常有效的,非常快速的網(wǎng)絡(luò)結(jié)構(gòu)。最近大家用的比較多的網(wǎng)絡(luò)結(jié)構(gòu)中間都采用了分組卷積,比如ResNeXt,它的特點(diǎn)是組與組之間沒有連接,計(jì)算量也因此小了很多。但是ResNeXt的問題就是它的輸入輸出層中的卷積并沒有使用分組卷積,所以我們將輸入輸出層的組與組之間的連接去掉。
?
但是去掉連接后其實(shí)也會(huì)出現(xiàn)問題,于是我們?cè)诿總€(gè)層之間增加了一個(gè)Transistor,相當(dāng)于路由的東西。當(dāng)跑一個(gè)比較簡(jiǎn)單的殘差結(jié)構(gòu)時(shí)可以把組與組之間的信息進(jìn)行信息交換。
?
我們最終也做了一個(gè)視頻分類的問題。
?
上圖顯示的是在Kinetics視頻數(shù)據(jù)集上的一個(gè)結(jié)果,可以看到網(wǎng)絡(luò)還是非常有效的。
前面介紹的是我們核心網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì),但我們還需要研究一些可以應(yīng)用在具體問題上的算法,于是我們開發(fā)了基于AI的AR特效平臺(tái),這個(gè)平臺(tái)也應(yīng)用到了花椒直播上。
花椒的特效平臺(tái)主要包含四個(gè)方面的技術(shù),第一個(gè)是人臉分析技術(shù),主要是人臉檢測(cè),身份識(shí)別等,然后就是背景替換、手勢(shì)識(shí)別以及美顏系統(tǒng)。
?
這些算法準(zhǔn)確率非常高,我們?cè)贔DD 300_W這些庫上都做過驗(yàn)證,同時(shí)其還有非常高的穩(wěn)定性。底層算法也做了很多優(yōu)化,比如在iphone 6s上,CPU占用只有20%,內(nèi)存占用50M,這是在兩年前的數(shù)據(jù),現(xiàn)在的性能應(yīng)該更高,并且人臉檢測(cè)定位模型也非常小。
?
上圖是我們?nèi)四樂治龅腟DK的一個(gè)效果展示。
?
我們還做了一個(gè)3D的表情驅(qū)動(dòng),主播和用戶連麥的時(shí)候,很多用戶不想露自己的臉,于是我們通過添加卡通人物,用戶只把聲音傳給主播,表情和卡通人物是聯(lián)動(dòng)的。
?
手勢(shì)識(shí)別的算法可以快速準(zhǔn)確的跟蹤和識(shí)別多種手勢(shì),并滿足各種高低端終端的使用需求。
?
摳圖算法采用兩種模式以滿足不同用戶的需求,一種模式是主播在直播的時(shí)候可以通過綠幕來替換背景,其特點(diǎn)是穩(wěn)定,資源占用較低;另外一種模式是前后景分割,通過使用FCN模型,將主播人臉、頭發(fā)等摳出來。
?
風(fēng)格化濾鏡,主播在直播時(shí)候可以隨意切換不同的濾鏡。
?
當(dāng)然最核心的還是美顏算法。我們的美顏叫做“可控美顏”,它只對(duì)人前景做美顏效果,在盡量維持整體背景的前提下對(duì)面部區(qū)域進(jìn)行微調(diào)整。
點(diǎn)擊【閱讀原文】或掃描圖中二維碼了解更多LiveVideoStackCon 2019 上海 音視頻技術(shù)大會(huì) 講師信息。
總結(jié)
以上是生活随笔為你收集整理的AI+AR如何提升花椒直播的体验?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Intel视频处理与分析技术栈和架构纵览
- 下一篇: Mozilla发布最大公共语音数据集Co