基於三維卷積神經網路的全參考影片品質評估演算法

  • 2019 年 12 月 13 日
  • 筆記

在騰訊,我們有多個影片業務線,點播影片有騰訊影片,企鵝影視;短影片有微視,K歌;直播類有Now直播,企鵝電競;實時傳輸類有QQ和微信的音影片通話,無線投屏和騰訊會議等。

用戶對不同的產品有不同程度的期待:比如理想網路環境下,能不能在27寸顯示器上看到毛髮清晰可見的高清影片?使用3G等弱網環境時,影片通話能不能保證畫面不頻繁卡死?

對業務提供方來說,所有問題都可以歸結為一個目的:在不同的網路狀況下,保證用戶最佳的影片觀看體驗。在整個影片鏈路中,我們可以精確度量大部分模組,如採集,上傳,預處理,轉碼,分發。我們最未知的部分卻恰恰是最關鍵的部分,即用戶的影片觀看體驗到底怎麼樣。本文旨在介紹業界影片品質評估進展並提出一種基於三維卷積神經網路的全參考影片品質評估演算法。

什麼是影片品質評估 (VQA, Video Quality Assessment)

影片品質評估的目的是準確地衡量影片內容的人眼感知品質。不經壓縮的源影片因為碼率太大而不適合互聯網傳輸。我們必須使用標準的編解碼器,如H.264/AVC, HEVC,或自研編解碼器來編碼進而降低碼流大小。然而,影片壓縮會不可避免的引入壓縮失真。以H.264/AVC壓縮為例,圖1給出了一個壓縮失真示例圖 [1]。其中,白線左邊對應未經壓縮的原始畫面,地面磚塊上的紋理清晰可見,背景的藍天顏色過渡自然。白線右邊對應壓縮過的低碼率影片畫面。可以明顯的看到壓縮失真,磚塊紋理變得模糊不清,藍天也因為塊效應的原因出現了不自然的條條。

圖一. H.264壓縮失真截圖。白線左邊為高清源影片,白線右邊為低碼率壓縮影片

在工業界和學術界,評估影片品質有兩種常用方法:1)影片品質主觀實驗,2)影片品質客觀演算法。兩種方法有各自的適用場景和局限性。

通過主觀實驗我們能精確衡量影片品質。在某些核心問題上,如codec性能比較,我們仍需要通過主觀實驗來得到確切的答案。同時,主觀實驗打分數據通常會用作驗證客觀品質評估演算法性能的Ground Truth。完整的主觀實驗流程一般包含:1)選取有代表性的源影片、2)添加待衡量的影片處理方案、3)按照ITU標準設計主觀實驗、4)招募志願者觀看影片並打分、5)收集主觀打分並剔除無效數據、6)數據建模並拋出實驗結論。ITU有一些列標準來指導如何做主觀實驗,如ITU-T P910 [2], ITU-R BT.2020 [3]等,本文不做展開。

很顯然,主觀實驗是一個周期長,費時費力的過程。訴諸主觀打分來驗證所有影片品質需求是不可行的。好在我們可以使用客觀品質評估演算法來模擬主觀打分,進而實現影片品質評估。然而,開發準確而快速的客觀品質評估演算法仍然是一項有挑戰性的工作。

傳統VQA演算法不能有效的使用影片的運動資訊

客觀影片品質評估演算法只需要計算影片的品質分數。從工業界的角度來看,經典的客觀演算法有PSNR,SSIM [4],MS-SSIM [5],這些演算法基於經典的訊號保真度來判斷失真影片與無損影片源的差異,再根據差異大小擬合出影片感知品質。近期的演算法有VQM [6],從多個維度提取時空聯合特徵去逼近主觀品質。目前的主流演算法有VMAF [7],使用機器學習方法對多個影像品質客觀演算法進行融合。藉助於融合的思想,VMAF能夠靈活的加入新的客觀演算法。另一方面,通過使用新的數據集來重新訓練,VMAF也可以方便的遷移到細分維度的影片品質評估任務。

影像品質評估主要是衡量畫面內失真在畫面掩蓋效應影響下的可感知程度。而影片品質評估不僅僅取決於畫面內的失真,也包含時域內的失真和時域掩蓋效應。這裡掩蓋效應可簡單理解為背景的複雜程度。如果背景較複雜,我們稱之為較強的掩蓋效應,反之亦然。舉個例子,圖一中滑板處於快速運動的狀態,掩蓋效應較強,所以滑板區域的失真更難察覺。而背景中藍天部門是大片的光滑區域,掩蓋效應較弱,細微的壓縮失真也能容易察覺到。因此,在開發一個客觀影片品質評估演算法中,我們必須把影片固有的運動資訊考慮進來。

在學術界,有很多相應的策略被提出。最常用對做法是提取兩種特徵,一種特徵去描述畫面品質,另一種特徵去描述影片運動的大小。比較主流的運動特徵包含:TI (Temporal Information), 運動向量 (Motion Vector), 光流 (Optical Flow) 等。這種做法最大的缺陷是完全剝離了畫面資訊和運動資訊,影片不再被當作三維數據來處理,而是二維數據加一維數據來處理。

為了解決上訴問題,另外一種比較直觀的方法是對影片進行三維切片 8。如圖二所示,我們使用(x, y, t)來標記空域和時域軸。這裡切片如果與時間軸垂直,即(x, y)方向,那麼切出來的就是傳統意義上的影片幀;如果與時間軸平行,即(x, t) 或 (y, t)方向,我們就得到了時空聯合的二維切片。在某種程度上,後兩個切片包含了運動資訊。對以上三種切片使用影像品質評估演算法,再把切片分數融合起來,就能取得不錯的品質提升。儘管如此,三維切片還是沒有最大程度的使用運動資訊。

圖二. 三維空間內影片切片示意圖

有不少圖片品質評估演算法是基於經典的DCT或小波變換,再從變換係數中提取特徵向量。對影片而言,一種比較直觀的拓展就是使用三維變換,如三維DCT變換,三維小波變換等。經過三維變換後,我們從變換係數中進一步提取特徵來而做品質評估。這種方法保留了影片的時空聯合資訊,但是三維變換會引入複雜度過高的問題。

使用三維卷積神經網路來學習影片的時空聯合特徵 (C3D, Convolutional 3D Neural Network)

近年來深度學習在多個電腦視覺圖片任務中取得了矚目的成就。同時也有學者把二維神經網路擴展到三維神經網路來更好的處理影片任務 [9]。我們嘗試使用三維卷積神經網路來學習時空特徵並把它用到影片品質任務中。我們先給出基本的二維和三維卷積模組,再進一步介紹所提出的網路結構。

  1. 圖三a給出了二維卷積核在二維輸入上的卷積操作。為了避免歧義,我們假設是對二維影像進行卷積操作。其中輸入影像大小為HxW,卷積核大小為kxk,影像時域深度和卷積核時域深度均為1。經過卷積運算輸出仍為二維。輸入輸出均不包含任何運動資訊。
  2. 圖三b給出了二維卷積核在三維輸入上的卷積操作。我們可以假設輸入為一個畫面大小為HxW,包含L幀的影片。這裡卷積核的深度不再是1,而是跟影片幀數相同。經過卷積操作,輸出仍為二維,且與圖三a的輸出大小相同。這種卷積操作有利用到影片前後幀的運動資訊,但是只用一步卷積就把所有運動資訊給吃掉了。
  3. 圖三c給出了三維卷積核在三維輸入上的卷積操作。與圖三b相比,這裡卷積核的深度為d,且d小於L。經過三維卷積操作,輸出仍為三維。當d=1時,等價為圖三a的卷積操作對影片幀進行逐幀處理,但是並沒有利用到前後幀的運動資訊。當d=L時,它的效果等同於圖三b。所以當d小於L時,三維卷積能更可控的利用運動資訊。如果我們想讓運動資訊消失的快一些,就調大三維卷積的深度d。相反,使用小一些的d能更緩慢的提取運動資訊。
圖三. 二維與三維卷積操作示意圖

在此基礎上,我們設計了自己的影片品質評估演算法C3DVQA。其核心思想是使用三維卷積來學習時空聯合特徵,進而更好的去刻畫影片品質。

圖四給出了我們所提出的網路結構圖,其輸入為損傷影片和殘差影片。網路包含兩層二維卷積來逐幀提取空域特徵。經級聯後,空域特徵仍保留前後幀的時許關係。網路接著使用四層三維卷積層來學習時空聯合特徵。在這裡,三維卷積輸出描述了影片的時空掩蓋效應,而且我們使用它來模擬人眼對影片殘差的感知情況:掩蓋效應弱的地方,殘差更容易被感知;掩蓋效應強的地方,複雜的背景更能掩蓋畫面失真。

網路最後是池化層和全連接層。池化層的輸入為殘差幀經掩蓋效應處理後的結果,它代表了人眼可感知殘差。全連接層學習整體感知品質和目標品質分數區間的非線性回歸關係。

圖四. 本文所提出的網路結構圖。包含兩層二維卷積,四層三維卷積,池化和全連接層。卷積參數表示:(channel,kernel size,stride, padding)

結果

我們在LIVE [1] 和CSIQ [3]兩個影片品質數據集上對所提出演算法的性能進行驗證。LIVE資料庫包含10個參考影片和對應每個參考影片的15個失真影片。CSIQ數據集包含12個源影片和相對應的18個失真影片。我們使用標準的PLCC和SROCC作為品質準則來比較不同演算法的性能。

因為這兩個資料庫相對較小,我們參考另外一片深度學習文章 [10] 的做法,每次隨機抽取80%的參考影片和由它們所得到的失真影片作為測試集。我們重複了20次這樣的數據集劃分並且每次都從頭開始訓練模型。具體品質評估的散點圖如圖五所示。

圖五. 品質估計結果散點圖,每一個點代表一個待測影片。其中Y軸為估計影片品質,X軸為主觀打分結果,左圖為LIVE上測試結果,右圖為CSIQ上測試結果。

我們與常用的全參考品質評估演算法進行了對比,比較的演算法包括PSNR,MOVIE [11],ST-MAD [12],VMAF和DeepVQA [10]。每次測試都會得到一個PLCC和SROCC,下表中我們使用多次實驗結果的中值來代表最終性能。

我們可以清楚的看到本文所設計的演算法C3DVQA在兩個資料庫上均大幅領先PSNR,MOVIE,ST-MAD,VMAF等傳統演算法。值得一提的是DeepVQA也是一個基於深度學習的演算法,也取得了不錯的性能。我們把這些性能提提升歸結為兩方面的原因,1)使用CNN來學習品質相關特徵要優於傳統的特徵提取演算法;2)DeepVQA和C3DVQA均學習影片的時空聯合特徵,顯性的利用運動資訊更能刻畫影片品質。

方法

PLCC (LIVE)

SROCC (LIVE)

PLCC (CSIQ)

SROCC (CSIQ)

PSNR

0.7271

0.7398

0.5988

0.6106

MOVIE

0.8609

0.8481

0.6295

0.6247

ST-MAD

0.8570

0.8386

0.7674

0.7766

VMAF

0.8115

0.8163

0.6570

0.6377

DeePVQA

0.8952

0.9152

0.9135

0.9123

C3DVQA

0.9122

0.9261

0.9043

0.9152

總結

本文簡要回顧了目前學術界和工業界影片品質評估方向的發展狀況。處於複雜度考慮,工業界仍傾向於使用複雜度較低的基於影像品質評估的方案。但是這樣做的缺陷就是不能不能把影片作為一個整體來學習時空特性,儘管結果差強人意,也算是性能與複雜度很好的折中。

我們提出了一種基於三維卷積神經網路的全參考演算法。通過學習影片的時空聯合特徵,能更好的解決運動資訊丟失問題。相對於傳統特徵提取演算法,我們的演算法能大幅度的提升準確度。

當然,這一切才剛剛開始,還有很多工作需要補充。我們想要詳細的複雜度分析,特別是在沒有GPU可用的場景。我們也想知道所訓練的演算法在其它資料庫上的性能,而且不僅僅局限於PGC影片,也包括UGC影片。

好消息是我們有計劃對業界開源模型訓練程式碼,這樣能方便所有人去使用自己的資料庫訓練測試特定影片業務場景。同時,我們也歡迎任何形式的協同開發,不管是貢獻資料庫,還是貢獻預訓練模型,甚至是拋出業務場景中所遇到的問題。

致謝

本項目基於騰訊多媒體實驗室與北大深圳研究生院李革教授團隊高校聯合項目。

參考文獻

1 Wang, Haiqiang et al. "VideoSet: A large-scale compressed video quality dataset based on JND measurement." 2017.

2 ITU-T P.910. "Subjective video quality assessment methods for multimedia appli- cations. " 1999.

3 ITU-R BT.2022. "General viewing conditions for subjective assessment of quality of SDTV and HDTV television pictures on flat panel displays." 2012.

4 Wang, Zhou et al. "Image quality assessment: from error visibility to structural similarity." 2004.

5 Wang, Zhou et al. "Multiscale structural similarity for image quality assessment." 2003.

6 Wolf, Stephen et al. "Video quality model for variable frame delay (VQM-VFD)." 2011.

7 Zhi, Li et al. 「Toward a practical perceptual video quality metric.」 2016.

8 Phong Vu, et al. 「ViS3: an algorithm for video quality assessment via analysis of spatial and spatiotemporal slices.」 2014.

9 Tran Du, et al. 「Learning Spatiotemporal Features with 3D Convolutional Networks.」 2015.

10 Woojae Kim, et al. 「Deep video quality assessor: From spatio-temporal visual sensitivity to a convolutional neural aggregation network.」 2018.

11 Seshadrinathan, Kalpana, et al. "Motion tuned spatiotemporal quality assessment of natural videos." 2009.

12 Phong V Vu, et al. 「A spatiotemporal most-apparent-distortion model for video quality assessment.」 2011.