通過多年的技術發展,目前互聯網視頻的觀看視頻體驗仍然沒法知足用戶預期,所以咱們須要應用更新的技術來持續超越傳統在線觀影體驗。與此同時,長週期、大投入的視頻內容源,成爲「超高清」大規模落地的瓶頸。如何讓新片在製做階段就知足超高清要求?如何加強用戶的觀看體驗?如何經過高清修復技術讓經典老片換新顏?這些問題都將經過下文一一解答。本文內容來自阿里巴巴高級技術專家梅大爲在LiveVideoStackCon2019北京站上的精彩分享。
文 / 梅大爲(張行)算法
整理 / LiveVideoStack網絡
你們好,我是阿里巴巴高級技術專家梅大爲,本次分享的主題是優酷在超高清視頻技術的實踐,主要內容是優酷在超高清視頻技術上的理解和思考,以及在超高清視頻上進行修復加強的具體實踐。大衆在互聯網上觀看視頻,除了視頻自己的內容和VIP的價格之外,最關注的的應該就是視頻的觀看體驗。根據優酷的用戶調查數據來看,很大部分的用戶在選擇視頻APP時更關注是否有藍光、4K或者HDR、杜比音效這些選項,也有70%的用戶會在觀看視頻1分鐘後由於視頻清晰度的緣由而棄劇,這兩個數據都體現出視頻觀看體驗對用戶的重要性。框架
1. 超高清視頻體驗ide
通過這麼多年的發展,目前互聯網視頻的觀看體驗仍然沒法知足用戶預期,以《血戰鋼鋸嶺》中的片斷做比較,對比三家藍光流和介質質量能夠發現,騰訊、優酷、愛奇藝三家藍光流的質量都小於原始介質質量,網友知乎@馬小帥也很直接的指出了其中關於碼率的問題,碼率相較原片相差不少倍,清晰度天然也會有差別。工具
2. 高清不清晰的緣由測試
碼率受限確實是目前互聯網視頻「高清不清」的主要緣由,而碼率問題也主要受限於網站帶寬成本和用戶網絡條件兩個方面,從視頻網站來考慮的話,碼率意味着帶寬,帶寬意味着成本,在視頻網站多數都還在虧損的大環境下,加大在帶寬上的投入是比較困難的。若是從用戶角度來看碼率受限的問題,能夠看到目前多數用戶的有效帶寬仍是在幾兆到十幾兆的範圍內。所以視頻網站的核心技術問題是如何作到窄帶高清,在保障帶寬不增加的前提下提供更優質的視頻體驗,提高單位帶寬承載的信息量。網站
3. 優酷超高清視頻之路編碼
3.1 窄帶高清設計
窄帶高清目前有不少公司都在作,而優酷主要基於硬壓縮能力和內容分析理解兩方面來解決窄帶高清的問題,提高壓縮工具的硬壓縮能力,不斷適應新的標準,在同一個標準體系框架內也能夠不斷地迭代壓縮算法。從壓縮對象/視頻內容來說的話,根據對質量貢獻的不一樣將內容進行分類,好比噪聲、干擾對視頻清晰度有反作用內容,以及背景和雜亂的細節、人臉特寫等內容,將其進行區別的視頻處理和壓縮,以此達到最優帶寬和清晰度的效果。基於這兩點優酷也在前幾年推出了窄帶高清2.0版本,在業界有一些不錯的反響。3d
3.2 從窄帶高清到超高清
從窄帶高清到超高清是一個巨大的跳躍,由於窄帶高清歸根結底仍是個轉碼技術,追求的目標是在轉碼過程當中的損失最小,而超高清是一個端到端全鏈條的體驗技術,關注的不只僅是轉碼,還包括轉碼前的介質和轉碼後流渲染的質量,超高清各項數據指標如上圖所示。
從視頻生產消費的全鏈條中來看優酷實現超高清過程當中遇到的問題,視頻鏈條主要分爲介質製做、流生產和終端渲染三個部分,這三個部分對於視頻的質量和清晰度都很是重要,其中介質製做基本決定了視頻清晰度的基礎,這一步處理很差再以後就很難補救,而在流生產轉碼過程當中須要儘可能減小壓縮帶來的損失,儘量的保留原清晰度,最後在終端渲染方面須要充分利用母帶的能力,作最適合的顏色和亮度呈現。優酷在三個部分所作的工做如上圖所示。
4. 優酷超高清實踐
4.1 介質品質保障
對於介質品質保障,優酷首先推出了視頻介質標準,在此以前因爲介質來源不少,介質的製做流程各不相同,因此介質的畫質也不一樣。在優酷的視頻庫中能夠看到各類各樣分辨率的介質,不少介質分辨率和碼率不匹配,最終播放效果就不可能作到清晰,所以優酷推出視頻介質標準,但願藉此規範介質的碼率和分辨率,保障在視頻介質製做部分不出差錯。
僅僅依靠視頻介質標準沒辦法對介質品質進行保障,由於高碼率和高分辨率並非高清晰度的充分條件,所以優酷利用基於內容理解的線上質量檢測系統,對常見的幾種介質問題分別建模、設計算法、訓練模型和檢測。
有了視頻介質標準和質量檢測系統仍是不可以充分保障介質的品質,所以須要在後期經過高質剪輯將質量檢測中發現的問題解決。優酷在這方面也有在作一些嘗試,包括和後期公司進行按期交流,瞭解介質在後期公司的處理流程、使用的工具和設置參數,若是遇到疑難素材,優酷會給後期公司開放雲端修復工具來處理,完成後期替換和剪輯。
5. 視頻畫質修復
5.1 算法修復
關於視頻畫質修復很容易讓人聯想到老電影,老電影也是視頻畫質修復的主要應用場景,優酷創立時間很早,因此視頻庫中有不少老視頻資源,而老視頻資源中存在的最廣泛問題就是噪聲和模糊,優酷的解決方式有母帶介質、膠片修復和算法修復三種。首先能夠去找版權方拿到更好的介質源進行替換,但大多時候版權方也沒有更好的介質。其次能夠用當前的介質拿去作膠片修復,但膠片修復費時費力,沒辦法大規模應用。最後,算法修復的好處是能夠作批量化處理,能夠設計算法去解決視頻畫質的問題,但缺點是通用算法沒辦法對個別問題進行修正,所獲得的結果不會那麼穩定。
5.2 視頻去噪
噪聲在視頻中是一個廣泛存在的問題,不只僅出如今老電影中,在新片和特定的場景中也會出現噪聲,噪聲會影響主觀畫質,而且噪聲會使得碼率增長,對壓縮並不友好,所以視頻去噪就顯得尤其重要。
優酷面對的視頻種類不少,噪聲種類也不少。優酷使用基於網絡的去噪方式來作視頻的去噪處理,要作到兼容噪聲多樣性就須要多種噪聲加強數據去訓練網絡,使得它能夠對不一樣噪聲進行處理。針對噪聲強度的問題,優酷也有前置的噪聲估計模塊,讓噪聲估計結果來指導網絡進行去噪處理。最後,視頻去噪有豐富的時間和空間信息,因此優酷使用三維去噪網絡保證去噪效果的最大化。
關於去噪流程框圖首先來看去噪網絡模塊,三維的卷積去噪網絡和普通去噪網絡的不一樣是,在網絡輸入除了不一樣的多幀數據外還包括表明噪聲強度的額外數據輸入,依靠噪聲強度來指導網絡進行更好的卷積,兼容大噪聲和小噪聲的狀況,根據線下運行的數據來看仍是頗有效果的,而這個方法的代價是須要一個比較可靠的噪聲強度估計做爲前置處理步驟。MEMC又叫作運動估計運動補償模塊,它的做用是抵消畫面中的運動,把相關的內容在時間和空間上彙集起來,方便三維的去噪網絡作卷積處理。
噪聲估計也是視頻去噪中比較經典的問題,其中目標壓制的噪聲又分爲熱噪聲和壓縮噪聲兩類,對熱噪聲估計採用圖像分塊方差統計量,方法雖然老卻十分有用;對壓縮噪聲的估計採用CNN分類網絡,這兩個噪聲估計完以後會將兩個結果合併造成每一幀的噪聲估計值,把幀間的各類估計效果作融合和後處理。值得一提的是,在後處理中因爲噪聲有很強的場景相關性,在同一個場景內噪聲是差很少的,但在場景切換時噪聲會發生突變,因此在作噪聲後處理的時候須要基於場景進行噪聲估計,保證後處理後噪聲在一個場景中是緩變的,去噪效果有一致性,在場景切換時去噪效果要可以及時響應,避免因爲場景切換去噪效果出現呼吸效應。
ME、MC在傳統的圖像處理中運用十分廣泛,ME更多用於多尺度運動搜索,先在大尺度上進行運動搜索,而後把搜索結果傳遞到小尺度上,這種方式效率很高,既能保證大物體運動與場景的一致性,也能保證對小物體與運動邊界刻畫的精細程度。MC的目標是基於匹配score融合當前塊和最佳匹配塊,最終融合須要考慮匹配的程度如何,匹配的越好就越多的使用臨近塊的能量,匹配的越差就越多使用當前塊的能量,這樣作既能保證去噪效果,又能克服匹配不好致使去噪效果不佳。
5.3 老片字幕修復
影視資源的陳舊感雖然多半來自於內容,但仍是有一部分是因爲字幕的影響,若是對字幕進行修復的話也能夠在必定程度上將老影視資源的觀看質量提高一個臺階。
字幕修復的流程分爲字幕檢測、字幕分割、字幕擦除和字幕回貼四個步驟,具體實現過程由上圖所示。
5.4 算法創造價值
視頻修復從其餘維度來看算法創造的價值,左上圖的內容表示的是優酷最爲關注的用戶觀看時長數據,能夠看到在視頻修復先後用戶的觀看時長有明顯的提高,對於某些視頻甚至能夠達到較修復前幾倍的提高。右上角是從用戶彈幕數據中觀察視頻修復對於用戶的影響,紅色是視頻修復完成的時間點,在修復前彈幕對於畫質的吐槽較多,而修復後彈幕對於畫質清晰的內容逐漸增多。左下相關媒體對於優酷高清畫質的報道,而右下的圖是優酷將《士兵突擊》進行畫質修復後的一場放映會,吸引了大量粉絲前來觀影,這樣的線下互動對優酷自身來說也頗有意義。
6. 超高清加強
作超高清加強很大一部分的緣由,是因爲家用電視的尺寸愈來愈大,以更近的距離看更大屏幕的訴求使得用戶對視頻清晰度有了更高的要求,所以超高清就變得很是有必要。在真正的超高清設備上看超高清的視頻流,觀感是徹底不同的。超高清的本質是信息量,信息量主要由採集時得到的分辨率、幀率、動態範圍和視角決定,超高清在雲端重建的時候就能夠補足在採集過程當中沒有拿到的信息,以此得到更好的體驗效果。加強手段包括視頻超分辨率、視頻幀率上採樣、SDR轉HDR和視角重建。
6.1 視頻超分辨率問題分析
視頻超分辨率目標就是提高空間分辨率,補足內容的高頻細節,其背後的假定是高頻與中低頻有必定的聯繫,經過中低頻來作高頻的反演,這通常是經過深度網絡來解決這個問題。另外,噪聲對於視頻加強有很大的干擾,處理很差容易使超分辨率出現bad case,在這部分優酷是採用一些適量加噪的數據去訓練網絡,讓網絡能夠具有必定的抗噪能力。視頻超分辨率問題比較複雜,不可能用一個網絡去解決全部問題,所以優酷在這部分把問題分爲不少類,作到專網專用來提高最後的超分效果。最後,提早預估網絡能力,聚焦目標效果,在作網絡訓練時把握尺度,這裏須要對訓練數據作預處理,評估訓練難度。
6.2 視頻超分辨率訓練數據產生
因爲優酷主營業務是互聯網視頻,因此關於視頻訓練的數據很是豐富,同一個視頻內容既有高清版本又有低清版本,這種狀況下就能夠對網絡進行真實的訓練,但一般狀況下沒有這麼好的數據對供測試使用,每每只有高清的視頻版本,因此低清視頻更可能是靠隨機壓縮、模糊、採樣和噪聲本身生成,根據實際問題來進行調整,這兩種方式均可以產生訓練數據對,最後再通過數據的篩選和重置獲得最終的訓練數據對。
6.3 視頻超分辨率訓練數據處理流程
當得到訓練數據對後,處理流程就更像一個天然而然的過程,從輸入視頻開始,通過分類獲得不一樣的類別,不一樣的類別用不一樣的網絡處理,最後獲得超分結果。流程圖雖然簡單,但涉及分類的部分其實很是複雜,首先可根據內容標籤將視頻分爲電影、動漫、電視劇等類型,也能夠根據內容來源和屬性分爲DVD超分1080P、1080P超分4K等類型,核心思想是把退化方式相近的視頻分紅同一類,退化方式差別大的視頻分紅不一樣類作不一樣處理,這個分類問題目前還在不斷地探索和發展。
6.4 SDR與HDR對比效果
SDR與HDR對比之下能夠看到SDR畫面發灰且對比度不夠,而HDR在顏色豐富度和亮度、對比度都要優於SDR。
6.5 超高清終端渲染
優酷在超高清終端渲染上作了一些超高清的工做,因爲不一樣終端存在差別性,須要正確認識每一個終端的能力去作適配。另外,不一樣的終端設備存在必定的顯示偏差,也須要去作矯正以求在不一樣終端設備上顯示效果一致。後處理分爲設備自己的後處理和自身視頻的後處理,前者包括硬件芯片和系統層的後處理,優酷將其歸入整個超高清的處理鏈條中,以達到最終的渲染效果。優酷自身的後處理包括畫質加強和渲染工做等。
7. 關於超高清技術的將來
關於超高清的將來,優酷有清晰的戰略規劃。首先是真4K的拍攝&製做,這是從介質製做方面提升視頻的質量,並且拍攝過程要作到高效和低成本纔可以普及,目前已和合做夥伴有了些階段性的進展,在將來應該會達到更好的製做水平。在真4K介質製做能力發展和普及的過程當中,雲端超高清重置也會起到補充做用,因爲單純的靠採集端來製做超高清介質確定是不現實的,有關VR的技術必定須要視角重建的工做,這部分在超分辨率技術中也是須要不斷深刻。在信息壓縮方面,優酷更多將展望下一代的編碼標準和更好的通訊技術,包括已定稿的H.266和目前比較火熱的5G通訊技術,將來關於超高清技術的發展必定會更加精彩。