在VVC中,與HEVC相比,增加了一個新的變換階段,稱為低頻不可分離變換(LFNST)。主要條件是LFNST僅適用于亮度/色度分量的幀內塊(啟用單獨的色度)。
LFNST的主要目標是進一步壓縮低頻初級變換系數(shù)之間的冗余,低頻初級變換系數(shù)是來自常規(guī)方向幀內預測的變換系數(shù)。我們還可以添加,對于細長的矩形,LFNST有助于將系數(shù)精確地集中在右上角。
那么它是怎樣工作的?LFNST應用于前向初級變換和量化(在編碼器端)之間以及去量化和反向初級變換之間(在解碼器端)。LFNST包含2種模式:4x4LFNST(對于寬度/高度<8 的塊)和8x8LFNST(對于寬度/高度>=8 的塊)。
例如,讓我們考慮塊 X的 4x4 LFNST:
首先,我們需要將 X表示為一維向量:
之后,不可分離變換可以計算為:F = T? X (F和 X 是向量),其中T 是 16x16變換矩陣,F(xiàn)是具有變換系數(shù)的 16x1向量,可以使用以下方法將其重組為4x4 塊光柵掃描順序。
在LFNST中,使用了矩陣乘法的方法,因此為了節(jié)省存儲矩陣系數(shù)的內存空間并降低計算復雜度,最好將矩陣維數(shù)最小化。這樣。主要思想是將N維向量映射到R維向量,其中N>R,N/R是縮減因子。對于8x8 LFNST,縮減因子為4,因此變換矩陣為16x64。但在VVC 的后期階段,它進一步減少到16x48。因此,由于矩陣維數(shù)減少,存儲它們的內存使用量從10Kb 減少到8Kb,而性能沒有太大下降。
對于解碼器端的逆過程,逆LFNST 矩陣是前向變換矩陣的轉置矩陣。
LFNST 有一些限制,不能在以下情況下使用:
1、塊大小大于64x64 或寬度/高度CU 大于最大transform_block_size;
2、如果應用ISP TU 寬度或高度小于4;
3、塊具有INTER 模式;
4、使用變換跳過;
5、塊4x4 和 8x8具有超過 8個第一有效系數(shù);
6、第一個子塊中有一些系數(shù);
7、如果只有1 個非歸零系數(shù)(僅DC);需要注意的是,LFNST和 MTS是連接的:如果啟用LFNST,則只能應用DCT-II 模式(MTS索引 = 0)。
LFNST 變換矩陣 T可以表示如下:
8 個不同的 16x16矩陣,用于 4x4LFNST(4lfnstTrSetIdx 和 2lfnst_idx 的笛卡爾積);
8 個不同的 16x48矩陣,用于 8x8LFNST;所有這些矩陣都預先計算并存儲在編碼器/解碼器端。
選擇最合適的 LFNST矩陣取決于lfnstTrSetIdx,它取決于在比特流中傳輸?shù)腎ntraPredMode 和lfnst_idx。下面可以看到lfnstTrSetIdx對IntraPredMode的依賴表:
在這里你可以看到 LFNST如何在解碼器端工作:
這就是今天的全部內容。在我們的下一篇文章中,我們將繼續(xù)向您介紹VVC 轉型創(chuàng)新。您也可以在這里查看我們之前關于MTS 的文章。
審核編輯:劉清
-
解碼器
+關注
關注
9文章
1144瀏覽量
40824 -
編碼器
+關注
關注
45文章
3655瀏覽量
134872 -
HEVC
+關注
關注
1文章
37瀏覽量
23950
原文標題:ViCueSoft:VVC中的低頻不可分變換(LFNST)
文章出處:【微信號:哲想軟件,微信公眾號:哲想軟件】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論