基於學習的編碼(六):DRNLF

基於學習的編碼(六):DRNLF

本文算法來自JVET-L0242,dense residual convolutional network based in-loop filter (DRNLF)用於VTM的環路濾波中,用在DBF之後,SAO和ALF之前,如下圖所示。

 

由RDO決定是否使用DRNLF。

網絡結構

DRNLF的結構如下圖:

 

N代表DRU(dense residual unit)數量,M代表卷積核數量。

本文算法是JVET-K0391的改進,K0391中DRU的結構如下圖所示:

 

 

主要有5個方面改進:

  1. 刪除了外部(global identity skip connection)3x3卷積層,加快了訓練。

  2. 歸一化的QP map和重建圖像一起輸入DRN,僅用一個模型就可以適應不同QP情況。

  3. 在YUV空間訓練。

  4. 爲了減少計算複雜度,DRU數量從8減少到4,卷積核從64減爲32。

  5. 3x3的卷積層替換爲3x3的DSC(depth-wise separable convolutional)層。

以上5個改進使模型參數由810k減少爲22k。

訓練

使用DIV2K生成訓練集和驗證集,訓練集包含800幅圖像,驗證集包含100幅。網絡在YUV空間訓練,所以需要將DIV2K的圖像由RGB空間轉換到YUV空間。使用VTM2.0.1在AI(All Intra)配置下使用不同QP壓縮圖像。壓縮後的圖像和對應的QP作爲網絡輸入。壓縮前的圖像作爲ground truth。假設壓縮圖像集爲{X},對應的ground truth集爲{Y},則損失函數如下:

 

實驗

在VTM2.0.1內,AI配置,QP取{22,27,32,37},僅使用CPU環境的實驗結果如下:

感興趣的請關注微信公衆號Video Coding

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章