關於VMAF,內容感知編碼和無參指標的思考

  • 2019 年 12 月 23 日
  • 筆記

本文為媒礦工廠編譯的技術文章

原標題:Thoughts around VMAF, Content-Aware Encoding and No-Reference metrics

原文鏈接:https://sonnati.wordpress.com/2019/12/03/thoughts-around-vmaf-contentawareencoding-and-no-ref-metrics/

原作者:Fabio Sonnati

翻譯整理:徐鋆

介紹

獨立於所使用的編碼器,內容感知編碼(Content-Aware Encoding, CAE)和內容感知傳輸(Context-Aware Delivery, CAD)代表了目前影片流的最先進技術。多媒體行業花了很長時間來消化這些概念,但現在它們絕對是主流:

每個內容都是不同的,需要用不同的方式來編碼。觀看的內容是不同的,需要不同的服務。流媒體服務的優化需要CAE和CAD策略。

我已經多次討論了這些邏輯以及對CAE和CAD策略的需求,這些年來,我為客戶實現了不同的優化。

說起內容感知編碼,一開始我們使用經驗規則來確定源特徵和編碼參數之間的關係,從而在儘可能小的比特率下獲得令人滿意的品質水平。用來調整演算法的「品質指標」通常是技術人員的感覺,或者更少見的使用全功能的主觀品質評價。按照經典的優化方法,我們將一個複雜的域(比如影片流)細分成子域,遞歸地嘗試逐個優化它們(如果可能的話,再進行聯合優化),並使用人眼感覺測試來指導決策。

最近,引入了與人眼感覺高度相關的指標,如VMAF,極大地助力了設計更精確的CAE模型,以及驗證交付給客戶的影片實際品質。但是,所有的問題都解決了嗎?現在,我們能否用與人眼感知相關的低消耗、快速的客觀指標,完全取代專家的眼睛和主觀測試?答案並不簡單。根據我的經驗,是和不是取決於很多因素,其中之一就是準確性。

關於準確性

在我的職業生涯中,我有幸與思想開放的管理者、開發者以及敢於走出舒適區、為了品質、優化和創新而推動實驗、嘗試和大膽想法的合作夥伴共事。所以在過去的十年里,我有機會參與了一些有創新性的令人興奮的項目,比如:各種CAE的部署,研究人眼感覺來調整影片編碼的優化和濾波,定義類似於VMAF的指標來訓練最先進的CAE中的機器學習演算法等。在本文的後續部分,我將討論在追求最佳編碼流程的過程中遇到的一些問題。

當VMAF在2016年發布時,我對使用它來改進一個客戶的現有CAE部署很感興趣。如果可以用一個可伸縮的影片品質評價工具來代替一個昂貴而耗時的主觀評價,那就可以在編碼優化、影片處理、新編解碼器或其他有關影片流的創造性想法方面進行大量的實驗。可重複品質指標對於「推銷」一個新想法也很有用,因為可以演示它會產生的好處(特別是如果這個指標是由Netflix開發的,並且很具有說服力)。

然而,從一開始,VMAF就在實驗中表現出了一些非最優行為,至少在一些場景中是這樣。特別的,我現在甚至可以識別出VMAF的致命弱點是在黑暗或平坦場景中估計感知品質的準確性下降。

在CAE中,我們試圖使用儘可能少的比特率來達到期望的最低品質水平。這同時導致低複雜度的平坦場景有非常低的比特率。另一方面,在這種場景中,任何對量化水平或目標比特率的錯誤估計都可能導致品質的嚴重惡化,特別是可能會引入大量的「帶狀」偽影。這樣的話,CAE的一個優點變成了一個缺點,因為標準的CBR編碼可以避免在相同的情況下產生帶狀效應(儘管會浪費比特率)。

因此,需要一個準確的度量來處理這個問題。帶狀偽影是8位AVC/HEVC編碼的一大難題,同時也會出現在10位HEVC影片中,特別是當源的能量較低時。一個錯誤的量化階可以完全抹除更高頻、更精細的頻率分量,從而導致帶狀效應的產生。

如果我們使用像VMAF這樣的指標來調整CAE演算法,那就需要非常小心,或者重新訓練VMAF來增加在這些情況下的準確性(VMAF還有其他有問題的情況,比如非常顆粒狀的雜訊,但在那些情況下,主觀品質會被低估,這個處理起來較為簡單)。

我認為VMAF並不是所有情況下的正確選擇,因為就連YouTube在Big Apple 2019大會上也指出,VMAF往往不能正確識別出帶狀效應的存在。

我估計這種行為可能是由於VMAF評估品質的方式,例如下2.5xH的距離可以減少在這些情況下的靈敏度,但由於VMAF 4k的距離是1.5xH,所以問題依然存在於此。這是這個基本指標的一個缺點。

4K下的一個案例

讓我們分析一個具體的案例。最近我對4K內容進行了主觀品質測試,包括SDR和HDR/HLG。VMAF 4K沒有針對HDR進行調優,因此我將僅考慮SDR情況。主觀評價已經被用來調證一個專用的品質指標來支援HDR內容,並且用於訓練一個基於機器學習的,針對4K SDR/HDR影片流的CAE模型。

下圖顯示了一個黑暗場景。左邊是原始版本,右邊是壓縮後的版本。

在下圖(對上圖進行了Gamma映射,提升了亮度,從而可以看到偽影)中,可以很容易地看到影像已經嚴重損壞。它充滿了條紋,運動也(在這裡不可見)是受影響的,並且還有偽影。然而,VMAF平均分為81.8分(滿分100分),相當於4分(滿分5分)的MOS分,嚴重高估了主觀品質。

主觀評分小組(總共60人,9000多分,離50寸4K顯示器1.5xH的距離,DSIS方法)打出的MOS分為3.2,但在我看來仍然是偏高的,因為另一個專業團隊的打分為更低的2.3分。

從研究中,我們發現這類偽影的主觀評分差異顯著增加,這可能是由於個體的視覺敏銳度和文化方面的差異(沒有經過識別特定偽影的訓練)。但專業人士很快就會發現品質很差,因此也有很大一部分觀眾(在這個例子中,58%的人打分在3分或以下)會認為品質不夠,尤其是相比於他們對於4K的預期來說。

這是一個經典問題,當方差很大時,需要考慮均值。VMAF還提供了一個置信區間,這對於做出更好的決策是有用的,但是對於上面的例子,預測仍然有一個被高估的均值,並且與平均主觀分數至少相差2 JND,更不用說與專家評分的差別了。

無論如何,下面這張圖中我們可以看到VMAF 4K與SDR序列的主觀評價之間的相關性。低於紅線的點表示VMAF高估了預測品質的內容。基於這種評估所做的任何決策都可能導致錯誤或偽影。

仍有很長的路要走

VMAF現在還不是一個完美的工具。然而,它為在各種場景中方便地估計影片品質鋪平了道路。我們可能應該做的是考慮它到底是什麼:在通往準確和全面的品質評估的漫長旅程中,這是重要的「一步」。

現在,如果VMAF在特定的場景中不是準確的,或者如果你需要一種不同的靈敏度,可以使用其他數據重新訓練VMAF,改變或整合基本指標或製作自己的關注特定需求的指標 (可能不那麼普遍適用但在特定場景中更精確)。還可以使用綜合的方法,也就是混合使用各種估計器來減少弱點。

在未來,我認為有其他著眼點來處理這種問題:更好的時域遮蔽;在時間和空間域上不同的打分方法;在不同觀測條件下的品質擴展。

最後,我覺得YouTube的方法非常有趣。他們使用無參考指標來估計源和編碼影片的品質。無參考指標並不是用來衡量一對壓縮影片的感知退化,而是只用來評估壓縮影片的「絕對」品質,而不評估原影片。

我認為無參指標不僅在源不可訪問(或檢索和使用的代價高昂)時評估品質很有用,就像在監視現有的實時服務時一樣,而且它們作為CAE演算法的內部指標也很有用。

事實上,如果可以節省頻寬,現代的編碼流程常常試圖用「感覺上好」來換取對源的保真。使用無參考指標而不是全參考指標可以增加這種行為,類似於在超解析度中所發生的情況,即從DNN訓練中更傳統的成本函數轉變到GAN中的「逆向」成本函數。但這又是另一個故事了。

更多與影片品質評價指標相關的內容講可以查看之前的訪談音頻(一)訪談音頻(四)Demuxed 2019帖子。