乾貨 | 人工智能在視頻領域的應用初探

近些年人工智能的熱度很高,人工智能在視頻領域的應用已經逐漸走入人們的生活,人臉識別,行爲分析,車牌識別等等。算法

傳統視頻應用的流程:安全

1、人工智能對視頻應用的滲透

目前的人工智能還處於工具階段,可以滲透包括預處理和後處理,超分辨率,機器視覺等等,人們在這些過程當中使用人工智能工具來提高開發效率或者處理效果。服務器

在移動直播的環境下,在編碼前,不影響畫質的前提下,自動檢測是否爲弱網環境從而判斷是否選擇性丟幀,以下降編碼環節的功耗開銷。另外一方面在弱網環境下帶寬可能出現瓶頸,經過測速可進行動態碼率切換,以保障網絡推流流暢。網絡

在播放前對視頻中的人或物進行檢測並處理,集成自動美顏、渲染等,以達到更好的觀看效果。機器學習

近年來網絡直播應用的興起,出現了跟以往廣播電視編解碼不太同樣的需求。那就是:函數

  • 編碼端,保證編碼實時性和碼率的要求的同時,保證儘可能高的圖像質量;工具

  • 發送,傳輸,緩衝,延時儘可能小;性能

  • 解碼器儘可能能輸出最好的質量,最好能超分辨率。學習

業內一直在努力把人工智能技術跟編解碼作更深的融合,用來解決傳統方法一直很難解決的這幾個問題。優化

 

2、人工智能加強的編碼器

當前編碼器遇到的問題:硬件編碼器性能好,可是圖像質量差,碼率高。軟件編碼器效率較低,遇到複雜視頻,好比物體繁多,較大運動,閃光,旋轉,既不能知足實時編碼的需求,同時輸出碼率也出現較大抖動。對於網絡應用來講是很大的障礙。

一、動態編碼器

不一樣場景下編碼保持恆定質量的碼率:

編碼時間和碼率是正相關的,在碼率暴漲的同時,編碼時間也劇烈延長。對於低延時需求強烈的直播應用,會形成嚴重的卡頓。

通常就只好使用絕對不變碼率ABR. 不一樣場景下ABR的圖像質量:

這樣帶來的結果就是圖像質量不穩定。

咱們但願是下圖這樣的曲線:

這就須要編碼器可以提早斷定大碼率場景出現的可能性。須要斷定的幾種狀況:

  • 物體繁多且有攝像機運動;

  • 背景不動可是有大量物體的大範圍運動,包括快速運動,旋轉,仿射,蠕變等;

  • 出現閃光,風沙,粒子系統。

這就須要開發一種適用於高清晰度直播應用的面向場景的智能編碼技術。該技術經過監督學習將常見視頻編碼卡頓場景分類並快速識別,提早預判視頻場景的編碼複雜度和碼率抖動,使用動態參數配置來編碼,保證編碼的實時性和限定碼率下最好的圖像質量。

京東雲基於業界領先的AI技術,提供對單人及多人的姿態預估技術,準確地判斷出圖片或視頻中的人體14個主要關鍵點並給出相應的置信度,可應用於各個領域中的人體動做姿態分析、預估及檢測。算法性能LIP Dataset(單人)mAP 90%;COCO val 2017(多人)mAP 80%,處於業內領先水平。

二、內容自動植入

這裏說的廣告的自動植入問題。一種是在編碼前合成到視頻裏面,這個過程跟編碼關係不大。可是直接合成到視頻以後,全部的觀衆看到的內容就都同樣。

要作到個性化,精準的廣告投放,就只有在播放端解碼後合成。要作到這點,服務器不只要發送原始視頻流,還要發送後期合成物體的定位方法和圖像數據,以便客戶端按照需求進行動態合成。

首先,自動植入的廣告跟前貼片比起來優點很明顯,能夠植入的廣告數量很是巨大,效果也更天然,用戶也不會產生明顯的反感。

其次,個性化精準投放,又進一步擴大了廣告投放的總容量和效率。

京東雲視頻直播平臺擁有領先的合成技術,除了字幕、廣告外,還能夠提供水印、靜態或動態logo等功能,以加強視頻的宣傳力度和版權保護。

三、交互式視頻

目前基本作法是圖像識別後,與搜索引擎鏈接,產生一個內容連接。

針對視頻和圖像中的人物,京東雲提供的AI能力可對人臉進行搜索和比對實現企業、商業、住宅等多種場景的刷臉進門等功能,提高安全性、效率和用戶體驗用。

同時還可快速檢測並定位人臉,返回高精度的人臉框座標,五官與輪廓關鍵點和三維座標,而且可識別多達9種人臉天然屬性和5種情緒屬性。

 

3、人工智能加強的解碼器

當前解碼器須要加強的點:你們都在構想能不能應用超分辨率技術,把較低分辨率的視頻的播放質量提高一大塊。目前有不少算法顯示出巨大的潛力,好比谷歌的RAISR,處理圖像時候效果很好。能不能實時用到視頻上,或者硬件化,或者採用更快的能實時運行的算法。咱們在後面會討論一種折中方案,在犧牲一點質量的前提下,可以實時運行的超分辨率算法。

一、單個圖像的超分辨率

天然圖像基本上是平滑的紋理填充和較明顯的邊緣組合造成。

常規拉伸算法有雙線性插值和雙三次樣條曲線差值。通常說來,三次曲線要比線性插值效果好。但實際簡單的雙線性插值的目視效果要好過三次曲線。

緣由有如下幾個:

一、低分辨率下線條會變得模糊。

二、低分辨率圖像在拉伸到高分辨率時候會在線條上引入額外的模糊。

三、噪音的存在。

第1點不用過多解釋,分辨率低了天然會模糊

第2點:好比B樣條,三次樣條曲線有一個應用條件,那就是樣本數據自己應該是光滑的,至少是分段光滑。可是在圖像裏面,物體的邊界和背景的結合處,就不知足這個條件了。普通的三次樣條曲線插值並無考慮圖像內部各個物體的不一樣,簡單的把整個圖像做爲一個總體來計算。這樣必然就在邊界處引入了嚴重的模糊。

所以超分辨率主要從以上幾個方面進行處理。

那麼如何下降線條的拉伸效應,也就是線條的銳度保持。

好比一個4x4的像素塊,比較常見的是以下的形態:

普通的三次b樣條的濾波器參數矩陣爲:

加入在4x4像素塊中心插入一個點

第一種狀況,插入點在邊界上:

使用標準濾波器:

使用改進濾波器:

第二種狀況,插入點在邊界內:

標準濾波:

第三種狀況,插入點在邊界外:

使用標準濾波器:

使用改進濾波器:

第三種狀況與第一種同樣。因此只須要考慮插入點在邊界上的狀況。

因爲每一個像素是8位的,因此一個4x4像素塊可能的組合是大體128位整數。而現實中常出現的種類通常少於理論上限,所以須要考慮的組合每每不須要這麼多。這種狀況就須要使用統計方法,也就是經過機器學習來得到一個比較好的濾波器參數表。

機器學習過程一般是準備一些原始 HR 圖象(2x2)和從採樣生成的 LR(1x1)圖象,做爲配對數據。而後採用一些優化操做:

第一步,將複雜 4x4 梯度圖象點陣處理成爲簡單的碼本圖象(HASH); 第二步,針對這個碼本圖象,使用考慮臨近像素梯度權重的方法重構B樣條濾波器參數,每次都和原始的 2x2 倍圖象進行 SAD (COST函數)計算,尋找最接近的擬合曲線參數(下山法); 第三步,對上一步得到的大量參數計算機率分佈,取最大機率的參數做爲該碼本的最優解; 第四步,對近似的碼本進行合併處理,以減少碼本的數量。

關於低分圖像對邊界形成的模糊,咱們能夠嘗試使用一個梯度變換的方法:

這種算法的思路就是計算出梯度的分佈,而後適當把梯度收窄。不考慮實現速度的話,這個方法取得效果也是很驚人的。

可是這個算法的運算量很是龐大。所以須要把這個過程融合到尋找濾波器參數矩陣的過程當中。

二、視頻的超分辨率

上面是單個圖像的超分辨率。視頻的超分辨率和單個圖像不一樣。單個圖像的超分辨率算法能夠融合到視頻超分辨率裏面來。

視頻的超分辨率是從連續的視頻序列中從新建立高分辨率的圖像,涉及到圖像配準和子像素提取。研究方法和評價方法也存在很大差別。有些人用圖像的超分辨率方法來套用的話就會出現一些疑惑:

首先視頻編碼是一個有損壓縮過程,不一樣分辨率的序列壓縮退化過程是不一樣的,所以找不到合適的HR/LR配對。視頻質量的評估也是遠比圖像質量評估要複雜。所以目視質量是一個比較簡易的評估標準。固然尋找一個HR/LR配對來計算PSNR(峯值信噪比)也是能夠的,可是說服力遠不如圖像配對的狀況。

評估模型:

在這個過程當中,由於原始視頻(未經壓縮)圖像較大,因此HR(0)不適合用來作原始分辨率參照。咱們能夠選取HR(1)和HSR來比較獲取一個PSNR(0), 而後選取HR(1)和普通拉伸得到的HBR來比較獲取一個PSNR(1). 若是PSNR(0)比PSNR(1)要高的話,就說明超分辨取得了效果。

在視頻直播和人工智能的結合方面,京東雲一直在不斷探索,咱們但願能夠基於京東雲平臺優質底層資源和領先的實施轉碼技術,爲客戶提供更加專業的一站式服務。

歡迎點擊「連接」瞭解京東雲更多精彩內容

點擊"京東雲"瞭解更多詳情

相關文章
相關標籤/搜索