一種應用于視頻編解碼的dc預測電路及其方法
【專利摘要】本發明一種應用于視頻編解碼的DC預測電路和DC預測方法;其特征是包括加法器復用模塊、中間值寄存器模塊、狀態自適應機控制模塊;加法器復用模塊通過復用加法器得到資源的最大有效利用;中間值寄存器模塊通過把重要的中間值存儲傳遞給下個周期作為輸入,來減少重復計算;狀態自適應機控制模塊控制數據的傳輸和計算周期的跳轉;本發明在實現了DC預測算法功能的基礎上,能減少電路工作面積、降低電路的運算周期、增加工作頻率并且提高計算的準確率。
【專利說明】
_種應用于視頻編解碼的DG預測電路及其方法
技術領域
[0001] 本發明屬于視頻編解碼技術的預測編碼技術領域,具體的說是一種應用于視頻編 解碼的DC預測電路及其方法。
【背景技術】
[0002] 隨著目前科學技術的不斷發展,信息技術和計算機互聯網分別在不同程度改變了 人們的日常的生活。如今,人們獲取信息的主要來源于多媒體信息,而多媒體信息卻以視頻 為核心。在視頻儲存和傳輸不斷被廣泛應用的過程中,多媒體技術漸漸開始將研究領域擴 充到高效視頻編碼的技術中。人們對于高清視頻并且占用空間小的要求越來越強烈,視頻 編解碼就越顯得重要。DC預測編碼技術是幀內預測算法之一,它的廣泛性使用,也使得人們 對其硬件電路的性能要求越來越高。
[0003] 現有技術中,DC預測編碼的硬件電路已經得到很大的提高,周巍、黃曉東等人在 2013PCS(Picture Coding Symposium)發表"EFFICIENT INTRA PREDICTION VLSI ARCHITECTURE FORHEVC STANDARD"中所述電路,是目前DC預測電路和DC預測方法中比較簡 單和快速的電路;但是仍存在以下四個問題:
[0004] 1、電路面積不夠優化,多次使用三輸入加法器,且計算過程中多次出現重復計算;
[0005] 2、預測電路存在計算結果不夠精確的缺陷,算法周期還有降低的空間,周期長拉 低了數據的處理速度,以致于對整個視頻編解碼的速率都有影響;
[0006] 3、電路的工作頻率357MHz,相對于之前的電路有很大的提升,但仍待提高以適應 高頻率的編碼速度,若DC預測算法的頻率是瓶頸,將會拉低整個視頻序列的實時編碼速度;
[0007] 4、實現方法存在不精確的問題,未能完全考慮DC預測算法中,對于移位時產生的 小數位直接丟棄問題,準確率降低。
【發明內容】
[0008] 本發明為解決上述現有技術中存在的不足之處,提出一種應用于視頻編解碼的DC 預測電路及其方法,以期能減少電路工作面積、降低電路運算周期、提高工作頻率和計算的 準確率,從而能降低視頻編解碼的成本和功耗。
[0009] 本發明為達到上述目的所采用的技術方案是:
[0010] 本發明一種應用于視頻編解碼的DC預測電路的特點是,用于在2 X N周期內預測任意一 個圖像中4N X 4N區域內的像素值,記所述4N X 4N區域為一預測塊/
則所述預測塊PU的上方一行參考像素重建值記為A=[R0,-iRi,-!,…,R4N-1;-!],所述預測塊 PU的左方一列參考像素重建值記為L=[R-u,!?-1;1,…,R-1>4N-山記所述周期為T,貝打連示 第m個周期;初始化n = 1,m = 1;
[0011] 所述DC預測電路包括:加法器復用模塊、中間值寄存器模塊、狀態自適應機控制模 塊;
[0012] 所述加法器復用模塊在第m個周期Tm內對所述上方一行參考像素重建值A和左方 一列參考像素重建值L進行第η次計算,得到第η次計算的3個累加值SUM_0、SUM_4和5通_6并 傳遞給所述中間值寄存器進行存儲,以及在第η次計算時所述預測塊PU的第一子塊
并直接輸出;
[0013] 所述狀態自適應機控制模塊從所述中間值寄存器中讀取所述第η次計算的3個累 加值SUM_0、SUM_4和SUM_6并傳遞給所述加法器復用模塊;
[0014] 所述加法器復用模塊在第m+1個周期Tm+1內對所述第η次計算的三個累加值SUM_0、 SUM_4和SUM_6以及所述上方一行參考像素重建值Α進行第η次計算,得到第η次計算時所述 預測塊PU的第二子塊PU〃 η = [ Ρ0, 0,Pi, 0,…,Ph-i, 0 ];對所述第η次計算的三個累加值SUM_0、 SUM_4和SUM_6以及所述左方一列參考像素重建值L進行計算,得到在第η次計算時所述預測 塊?加勺第三子塊卩11〃 /11=[?(),1,?(),2,",?(),411-1];
[0015]由所述第η次計算時的第一子塊PIT η、第二子塊PU〃n以及第三子塊PIT η構成第η次 計算時預測塊PUn,將η+1賦值給η,將m+2賦值給m后,重復所述加法器復用模塊的第η次計 算,直到η = Ρ?@_πι = 2ΧΝ為止,從而獲得預測塊PU。
[0016] 本發明所述的應用于視頻編解碼的DC預測電路的特點也在于,所述加法器復用模 塊包括:一號加法器、二號加法器、三號加法器、四號加法器、五號加法器、六號加法器、七號 加法器、八號加法器、一號移位器、二號移位器、三號移位器、四號移位器、五號移位器、六號 移位器、七號移位器、八號移位器、九號移位器;
[0017] 所述加法器復用模塊的第η次計算為:
[0018] 在第m個周期1"內,所述一號加法器至四號加法器對所述上方一行參考像素重建 值A和左方一列參考像素重建值L進行第η次計算,得到第η次計算的四個累加值SUM_0、SUM_ 1、SUM_2、SUM_3;
[0019] 由所述八號加法器對所述第n次計算的四個累加值SUM_0、SUM_1、SUM_2、SUM_3和 常數"4"進行計算,得到第n次計算的累加值SUM_7;
[0020] 所述一號移位器對所述第η次計算的累加值SUM_7進行右移3位操作,得到第η次計 算平均值DCvalue;
[0021] 所述二號移位器對所述第η次計算的平均值DCvalue進行右移2位操作,得到第η次 計算的中間值DCvalue';
[0022] 所述六號加法器對所述第η次計算的中間值DCvalue'和第η次計算的平均值 DCvalue進行計算,得到第η次計算的累加值SUM_5;
[0023] 所述七號加法器對所述第η次計算的累加值SUM_5和常數"2"進行計算,得到第η次 計算的累加值SUM_6;
[0024] 所述五號加法器對所述第η次計算的中間值DCvalue'和常數"2"進行計算,得到第 η次計算的累加值SUM_4;
[0025] 以所述第η次計算的平均值DCvalue作為所述第η次計算的第一子塊PIT "中的所有 元素值;
[0026] 在第m+1個周期Tm+1內,所述一號加法器對所述第η次計算的累加值SUM_0和第η次 計算的SUM_4進行第η次計算,得到的結果再利用所述三號移位器進行右移2位操作,得到第 η次計算的第二子塊PU%中的第一個元素值Ρη-1>η-1;
[0027] 所述二號加法器對所述上方一行參考像素重建值Α中的元素值Rn,^和第η次計算 的累加值SUM_6進行計算,得到的結果再利用所述四號移位器進行右移2位操作,得到第η次 計算的第二子塊PU〃 n中的第二個元素值Ρη,η-1;
[0028] 所述三號加法器對所述上方一行參考像素重建值Α中的元素值Rn+1,^和第η次計算 的累加值SUM_6進行計算,得到的結果再利用所述五號移位器進行右移2位操作,得到第二 子塊PU〃 n中的第三個元素值Pn+1,n-1;
[0029] 所述四號加法器對所述上方一行參考像素重建值A中的元素值Rn+2,^和第η次計算 的累加值SUM_6進行計算,得到的結果再利用所述六號移位器進行右移2位操作,得到第η次 計算的第二子塊PU%中的第四個元素值Ρ η+2,η-1;
[0030] 所述五號加法器對所述左方一列參考像素重建值L中的元素值R-1>n和第η次計算 的累加值SUM_6進行計算,得到的結果再利用所述七號移位器進行右移2位操作,得到第η次 計算的第三子塊PU"、中的第一個元素值Ρ η-1>η;
[0031] 所述六號加法器對所述左方一列參考像素重建值L中的元素值R-1>n+1和第η次計算 的累加值SUM_6進行計算,得到的結果再利用所述八號移位器進行右移2位操作,得到第η次 計算的第三子塊PU"、中的第二個元素值Ρ η-1>η+1;
[0032] 所述七號加法器對所述左方一列參考像素重建值L中的元素值R-1>n+2和第η次計算 的累加值SUM_6進行計算,得到的結果再利用所述九號移位器進行右移2位操作,得到第η次 計算的第三子塊PU"、中的第三個元素值Ρ η-1>η+2。
[0033] 本發明一種應用于視頻編解碼的DC預測方法的特點是用于在2ΧΝ周期內預測任意一個 圖像中4NX4嘔域內的像素值,記所述4NX4N區域為一預測塊』
則所述預測塊PU的上方一行參考像素重建值記為A=[R0,-l,Kl,-1,···,K4N-1,-1」,所還頂測厭 PU的左方一列參考像素重建值記為L=[R-1;1,…,R-1>4N-山記所述周期為T,貝打連示 第 m 個周期;NG(l,2,4,8,16);Kn<N;Km<2XN;
[0034] 所述預測方法是按如下步驟進行:
[0035] 步驟 1、初始化n = l,m=l;
[0036] 步驟2、在第m個周期1"內,利用式(1)得到第η次計算的累加值SUM_0:
[0037] SUM_0 = Rn-i,-i+R-i,n-i (1)
[0038] 步驟3、在第m個周期1"內,利用式(2)得到第η次計算的平均值Devalue,并以所述 平均值Devalue作為所述第η次計算的第一子±彡
中的所有 元素值;
[0039]
[0040]步驟4、在第m個周期1?內,利用式(3)得到第η次計算的累加值Sum_4:
[0041] Sum_4 = 2 XDcvalue+2 (3)
[0042] 步驟5、在第m個周期1?內,利用式(4)得到第η次計算的累加值Sum_6:
[0043] Sum_6 = 3 X Dcvalue+2 (4)
[0044] 步驟6、在第m+1個周期Tm+1內,利用式(5)得到第η次計算的第二子塊PU〃n= [Ρο,ο, Ρ?,Ο,…,Ρ4η-1,0]中的第一個元素值Ρη-Ι,η-1:
[0045] Ρη-1, η-1 = (SUM_0+SUM_4) ^ 4 (5)
[0046] 步驟7、在第m+1個周期Tm+1內,利用式(6)得到第η次計算的第二子塊PU" η中的第二 個元素值Ρη,η-1:
[0047] Pn,n-l=(Rn)-l+SUM_6)^4 (6)
[0048] 步驟8、在第m+1個周期Tm+1內,利用式(7)得到第η次計算的第二子塊PU〃 n中的第三 個元素值Ρη+Ι,η-1:
[0049] Pn+i,n-i=(Rn+i>-i+SUM_6)^4 (7)
[0050] 步驟9、在第m+1個周期Tm+1內,利用式(8)得到第η次計算的第二子塊PU〃n中的第四 個元素值Pn+2,n-l :
[0051] Pn+2,n-1 = (Rn+2,-1+SUM_6 ) ^4 (8)
[0052] 步驟10、在第m+1個周期Tm+1內,利用式(9)得到第η次計算的第三子塊PU〃' η中的第 一個元素值Ρη-Ι,η:
[0053] Pn-i,n=(R-i)n+SUM_6)^4 (9)
[0054] 步驟11、在第m+1個周期Tm+1內,利用式(10)得到第η次計算的第三子塊Pl/〃 n中的 第二個元素值Pn-1>n+1:
[0055] Ρη-1, n+1 = (R-i, n+i+SUM_6) ^ 4 (10)
[0056] 步驟12、在第m+1個周期Tm+1內,利用式(11)得到第n次計算的第三子塊PU〃7n中的 第三個元素值Ρη-1, n+2 :
[0057] Pn-1, n+2 = ( R-l, n+2+SUM_6 ) ^ 4 (11)
[0058] 從而得到在第η次計算時所述預測塊PU第二子塊?1]%=[?0,0少1,(),一,?411- 1,()]和第 二子塊PtZ" η= [Ρο,Ι,P0,2,…,P0,4n-1];
[0059] 步驟13、由所述第n次計算時的第二子塊PU〃n和第三子塊PIT n構成第n次計算時預 測塊PUn;
[0060] 步驟14、將n+1賦值給n,將m+2賦值給m后,重復步驟2執行,直到n = N且m = 2 XN為 止,從而獲得預測塊PU。
[0061] 與現有技術相比,本發明的有益技術效果體現在:
[0062] 1、本發明提出的優化現有DC預測算法電路設計,克服了電路占用面積大、工作頻 率不夠高的問題,提出了一種應用于視頻編解碼的DC預測算法的硬件實現方式,采用了分 割處理架構,通過加法器復用、狀態自適應機控制以及中間值寄存等技術,降低了預測電路 面積,并提高了預測電路的工作頻率。
[0063] 2、本發明提出的應用于視頻編解碼的DC預測算法的實現方式,通過加法器的復用 模塊,減少了數據的重復計算,把邏輯門數從12970降低到8762,有效降低了電路的占用面 積,從而降低了整個電路的設計成本。
[0064] 3、本發明提出的通過狀態機來控制加法器的輸入端,從而達到了對加法器進行復 用,同時減少了冗余計算,并且巧妙的使用寄存器來寄存中間值,把原有工作周期從3個周 期降到2個周期,DC預測算法是視頻編解碼預測算法的一種,因為DC預測算法電路工作的速 度提高了 33%,所以這將會使得整個視頻編解碼的速率都有顯著的提升,進而提高了工作 頻率,從而提高了視頻編解碼的速度。
[0065] 4、本發明提出的應用于視頻編解碼的DC預測算法的實現方式,精簡了電路結構, 使得最快工作頻率達到500MHz,與之前電路相比,速度提高了25%,根據該電路的工作頻 率,把視頻序列的實時編碼速率從4096 X 2160@30fps提升到了 7680 X 4320@30fps。
[0066] 5、本發明提出的硬件優化后的DC預測算法電路技術,更準確的遵循DC預測算法的 工作原理。在進行Devalue值計算時,考慮到硬件電路在移位過程中,可能會出現四舍五入 的情況,把加 N的計算考慮進去,有效克服了全部舍去出現的錯誤預測,把原本有像素的點 的預測成無像素點。本發明相比之前的設計,對算法實現的更完善、更精準。
【附圖說明】
[0067]圖1為本發明DC預測模板;
[0068]圖2為本發明DC預測硬件結構電路;
[0069] 圖3為本發明DC預測算法的中間值計算電路;
[0070] 圖4為本發明DC預測算法的預測值計算電路;
[0071] 圖5為本發明狀態機電路;
[0072] 圖6為本發明優化結果實驗數據對比圖。
【具體實施方式】
[0073] 本實施例中,一種應用于視頻編解碼的DC預測電路用于在2XN周期內預測任意一個圖 像中4N X 4N區域內的像素值,記4N X 4N區域為一預測塊J
則預測塊的上方一行參考像素重建值記為A=[R0,-^Ri,-丨,…,!^-1,-1],預測塊PU的左方 一列參考像素重建值記為1^=[1?-1,(),1?-1,1,〃_,1?-1,411];記周期為1',則1'111表不第111個周期 ;
[0074] 具體實施中,N= 1,則在2周期內預測任意一個圖像中4 X 4區域內的像素值,記4 X 4區域為一預測塊
,如圖1所示,則預測塊PU的上方一行參考像 素重建值記為A= [Rq,-i,Ri,-i,R2,-i,R3-i],預測塊PU的左方一列參考像素重建值記為L = [R-1,0,R-1,1,R-1,2,R-1,3] ;Tm表示第m個周期,貝ijTi表示第1個周期;初始化n = l,m=l;
[0075] 如圖2所示,DC預測電路包括:加法器復用模塊、中間值寄存器模塊、狀態自適應機 控制模塊;
[0076] 加法器復用模塊在第1個周期1^內對上方一行參考像素重建值A和左方一列參考 像素重建值L進行第1次計算,得到第1次計算的3個累加值SUM_0、SUM_4和SUM_6并傳遞給中 間值寄存器進行存儲,以及在第1次計算時預測塊PU的第一子塊
中直 接輸出;
[0077]狀態自適應機控制模塊從中間值寄存器中讀取第1次計算的3個累加值SUM_0、 SUM_4和SUM_6并傳遞給加法器復用模塊;
[0078]加法器復用模塊在第2個周期T2內對第1次計算的三個累加值SUM_0、SUM_4和SUM_ 6以及上方一行參考像素重建值A進行第1次計算,得到第1次計算時預測塊PU的第二子塊 PU/ = [Pm,Pi, 0,Ρ2, 0,P3, 0];對第1次計算的三個累加值SUM_0、SUM_4和SUM_6以及左方一列 參考像素重建值L進行計算,得到在第1次計算時預測塊PU的第三子塊 P〇,3];
[0079] 由第1次計算時的第一子塊PI/ i、第二子塊PU%以及第三子塊PIT i構成第1次計算 時預測塊PUi,由于N=l,所以η的值為1,即只需要計算一次即可得到預測值PUfPU。
[0080] 加法器復用模塊包括:一號加法器、二號加法器、三號加法器、四號加法器、五號加 法器、六號加法器、七號加法器、八號加法器、一號移位器、二號移位器、三號移位器、四號移 位器、五號移位器、六號移位器、七號移位器、八號移位器、九號移位器;
[0081 ]加法器復用模塊的第1次計算為:
[0082] 如圖3所示,在第1個周期1^內,一號加法器至四號加法器對上方一行參考像素重 建值A和左方一列參考像素重建值L進行第1次計算,得到第1次計算的四個累加值SUM_0、 SUM_1、SUM_2、SUM_3;
[0083] 由八號加法器對第1次計算的四個累加值SUM_0、SUM_1、SUM_2、SUM_3和常數"4"進 行計算,得到第1次計算的累加值SUM_7;
[0084] -號移位器對第1次計算的累加值SUM_7進行右移3位操作,得到第1次計算平均值 DCvalue;
[0085] 二號移位器對第1次計算的平均值DCvalue進行右移2位操作,得到第1次計算的中 間值DCvalue';
[0086] 六號加法器對第1次計算的中間值DCvalue'和第1次計算的平均值DCvalue進行計 算,得到第1次計算的累加值SUM_5;
[0087] 七號加法器對第1次計算的累加值SUM_5和常數"2"進行計算,得到第1次計算的累 加值SUM_6;
[0088] 五號加法器對第1次計算的中間值DCvaluV和常數"2"進行計算,得到第1次計算 的累加值SUM_4;
[0089] 以第1次計算的平均值DCvalue作為第1次計算的第一子塊PI/i中的所有元素值;
[0090] 在第2個周期T2ft,重復使用加法器模塊的八個加法器,第1個周期Ti內計算的中間 值寄存到中間寄存器模塊中,以其作為第2個周期T 2內的輸入;
[0091] 如圖4所示,一號加法器對第1次計算的累加值SUM_0和第1次計算的SUM_4進行計 算,得到的結果再利用三號移位器進行右移2位操作,得到第1次計算的第二子塊PU%中的 第一個元素值Pm;
[0092] 二號加法器對上方一行參考像素重建值A中的元素值Rk和第1次計算的累加值 SUM_6進行計算,得到的結果再利用四號移位器進行右移2位操作,得到第1次計算的第二子 塊PU〃 i中的第二個元素值Pi, 〇;
[0093] 三號加法器對上方一行參考像素重建值A中的元素值R2,^和第1次計算的累加值 SUM_6進行計算,得到的結果再利用五號移位器進行右移2位操作,得到第二子塊PU%中的 第三個元素值P2,o;
[0094] 四號加法器對上方一行參考像素重建值A中的元素值R3,^和第1次計算的累加值 SUM_6進行計算,得到的結果再利用六號移位器進行右移2位操作,得到第1次計算的第二子 塊PU〃 i中的第四個元素值P3, 〇;
[0095] 五號加法器對左方一列參考像素重建值L中的元素值R-1;1和第1次計算的累加值 SUM_6進行計算,得到的結果再利用七號移位器進行右移2位操作,得到第1次計算的第三子 塊PI/" !中的第一個元素值Po, i;
[0096] 六號加法器對左方一列參考像素重建值L中的元素值R-1>2和第1次計算的累加值 SUM_6進行計算,得到的結果再利用八號移位器進行右移2位操作,得到第1次計算的第三子 塊PI/" i中的第二個元素值P〇,2;
[0097] 七號加法器對左方一列參考像素重建值L中的元素值R-1>3和第1次計算的累加值 SUM_6進行計算,得到的結果再利用九號移位器進行右移2位操作,得到第1次計算的第三子 塊PU〃' i中的第三個元素值Po, 3;
[0098] 如圖5所示,狀態自適應機控制模塊包含兩個狀態:計算中間值狀·Μ_ν&1ι?θ和預 測像素值狀態P_value,兩個狀態是無條件自動跳轉。
[0099] 本實例中,如表1所示,參考像素值由上方一列參考像素重建值和左方一列參考像 素重建值構成;
[0100] 表1參考像素值
[0101]
[0102] 本實施例中,一種應用于視頻編解碼的DC預測方法是按如下步驟進行:
[0103] 步驟 1、初始化n = i,m=l;
[0104] 步驟2、在第1個周期1\內,利用式(1)得到第1次計算的累加值SUM_0:
[0105] SUM_0 = Ro,-i+R-i,o = 20 (1)
[0106] 步驟3、在第1個周期1^內,利用式(2)得到第1次計算的平均值Devalue,并以平均 值Devalue作為第1次計算的第一子塊
中的所有元素值;
[0107]
[0108] 步驟4、在第1個周期1\內,利用式(3)得到第1次計算的累加值Sum_4:
[0109] Sum_4 = 2 XDcvalue+2 = 22 (3)
[0110] 步驟5、在第1個周期1\內,利用式(4)得到第1次計算的累加值Sum_6:
[0111] Sum_6 = 3 X Dcvalue+2 = 32 (4)
[0112] 步驟6、在第2個周期T2內,利用式(5)得到第1次計算的第二子塊PU〃 i = [Po, ο,Pi, ο, 卩2,0,?3,0]中的第一個元素值?0,0:
[0113] Ρο, ο = (SUM_0+SUM_4 )^4 = 10 (5)
[0114] 步驟7、在第2個周期T2ft,利用式(6)得到第1次計算的第二子塊PU%中的第二個元 素值Ρι,ο:
[0115] Pi,〇=(Ri,-i+SUM_6)^4=10 (6)
[0116] 步驟8、在第2個周期T2ft,利用式(7)得到第1次計算的第二子塊PU%中的第三個元 素值P2,0:
[0117] P2,o=(R2)-i+SUM_6)^4=10 (7)
[0118] 步驟9、在第2個周期^內,利用式(8)得到第1次計算的第二子塊PU%中的第四個元 素值P3,0:
[0119] P3,o=(R3)-i+SUM_6)^4=10 (8)
[0120] 步驟10、在第2個周期T2R,利用式(9)得到第1次計算的第三子塊PIT i中的第一個 元素值Ρο,ι:
[0121] P〇,i = (R-i>i+SUM_6)^4=10 (9)
[0122] 步驟11、在第2個周期T2內,利用式(10)得到第1次計算的第三子塊PU〃' i中的第二 個元素值P〇,2:
[0123] P〇,2 = (R-i,2+SUM_6)^4=10 (10)
[0124] 步驟12、在第2個周期T2內,利用式(11)得到第1次計算的第三子塊Pl/〃 i中的第三 個元素值P〇,3:
[0125] P〇,3 = (R-i,3+SUM_6)^4=10 (11)
[0126] 從而得到在第1次計算時預測塊PU第二子塊?1]〃1=[?0,(),? 1,(),?2,(),?3,()]和第三子 塊Ρυ?Ρο,ιΡ^Ρ。』];
[0127] 步驟13、由第1次計算的第二子塊PU%和第三子塊Plf^構成第1次計算時預測塊 PUi;
[0128] 步驟14、由1彡η彡N;1彡m彡2 XN知只需要計算一次即可,從而獲得預測塊PU的值 如表2;
[0129] 表2預測像素值
[0130]
[0131] 針對4X4的預測塊對DC預測算法進行VLSI設計,并采用Verilog HDL語言進行描 述,通過Synopsys軟件進行仿真和綜合,在SMIC 0.18um工藝下綜合得到該電路最快工作頻 率為500MHz,電路工作的面積為8762gate,算法周期降低到2個周期。本發明與周巍、黃曉東 等人在2013PCS(Picture Coding Symposium)發表"EFFICIENT INTRA PREDICTION VLSI ARCHITECTURE F0RHEVC STANDARD"中所述電路相比,工作頻率提高了40%,門控數降低了 40%,算法周期降低了 33%,工作頻率、邏輯門數、算法周期的對比圖分別在圖6所示,如果 擴展到整個視頻編解碼的平臺上,優化效果更明顯。
【主權項】
1. 一種應用于視頻編解碼的DC預測電路,其特征是,用于在2XN周期內預測任意一個圖像 中4N X 4N區域內的像素值,記所述4N X 4N區域為一預測塊則所述預測塊PU的上方一行參考像素重建值記為A=[Ro,-i,Ri,-1,···,R4N-1,-1],所述預測塊 PU的左方一列參考像素重建值記為L= [R-1,0,R-1,1,…,R-1,4N-1];記所述周期為T,則Tm表不 第m個周期;初始化n = I,m = 1; 所述DC預測電路包括:加法器復用模塊、中間值寄存器模塊、狀態自適應機控制模塊; 所述加法器復用模塊在第m個周期Tm內對所述上方一行參考像素重建值A和左方一列參 考像素重建值L進行第η次計算,得到第η次計算的3個累加值SUMJK SUM_4和SUM_6并傳遞給 所述中間值寄存器進行存儲,以及在第η次計算時所述預測塊HJ的第一子塊并直接輸出; 所述狀態自適應機控制模塊從所述中間值寄存器中讀取所述第η次計算的3個累加值 SUM_0、SUM_4和SUM_6并傳遞給所述加法器復用模塊; 所述加法器復用模塊在第m+1個周期IW內對所述第η次計算的三個累加值SUM_0、SUM_ 4和SUM_6以及所述上方一行參考像素重建值A進行第η次計算,得到第η次計算時所述預測 塊PU的第二子塊PU〃n = [Po, 〇,P1, 〇,…,P4n-!, 〇];對所述第η次計算的三個累加值SUM_0、SUM_4 和SUM_6以及所述左方一列參考像素重建值L進行計算,得到在第η次計算時所述預測塊PU 的第三子塊?1^"11=[?(),1,?(),2,",?(),411-1]; 由所述第η次計算時的第一子塊PU\、第二子塊Plfn以及第三子塊Plf'構成第η次計算 時預測塊PUn,將η+1賦值給η,將m+2賦值給m后,重復所述加法器復用模塊的第η次計算,直 至Ijn = N且m = 2 X N為止,從而獲得預測塊PU。2. 根據權利要求1所述的應用于視頻編解碼的DC預測電路,其特征是,所述加法器復用 模塊包括:一號加法器、二號加法器、三號加法器、四號加法器、五號加法器、六號加法器、七 號加法器、八號加法器、一號移位器、二號移位器、三號移位器、四號移位器、五號移位器、六 號移位器、七號移位器、八號移位器、九號移位器; 所述加法器復用模塊的第η次計算為: 在第m個周期1?內,所述一號加法器至四號加法器對所述上方一行參考像素重建值A和 左方一列參考像素重建值L進行第η次計算,得到第η次計算的四個累加值SUM_0、SUM_1、 SUM_2、SUM_3; 由所述八號加法器對所述第η次計算的四個累加值SUM_0、SUM_1、SUM_2、SUM_3和常數 "4"進行計算,得到第n次計算的累加值SUM_7; 所述一號移位器對所述第η次計算的累加值SUM_7進行右移3位操作,得到第η次計算平 均值 DCvalue; 所述二號移位器對所述第η次計算的平均值DCvalue進行右移2位操作,得到第η次計算 的中間值DCvalue7 ; 所述六號加法器對所述第η次計算的中間值DCvalue'和第η次計算的平均值DCvalue進 行計算,得到第η次計算的累加值SUM_5; 所述七號加法器對所述第η次計算的累加值SUM_5和常數"2"進行計算,得到第η次計算 的累加值SUM_6; 所述五號加法器對所述第η次計算的中間值DCvalue'和常數"2"進行計算,得到第η次 計算的累加值SUM_4; 以所述第η次計算的平均值DCvalue作為所述第η次計算的第一子塊PIT n中的所有元素 值; 在第m+1個周期Tm+1內,所述一號加法器對所述第η次計算的累加值SUM_0和第η次計算 的SUM_4進行第η次計算,得到的結果再利用所述三號移位器進行右移2位操作,得到第η次 計算的第二子塊PU%中的第一個元素值Ρ η-1>η-1; 所述二號加法器對所述上方一行參考像素重建值A中的元素值Rk和第η次計算的累加 值SUM_6進行計算,得到的結果再利用所述四號移位器進行右移2位操作,得到第η次計算的 第二子塊PU〃n中的第二個元素值Ρη,η-1; 所述三號加法器對所述上方一行參考像素重建值A中的元素值Rn+^和第η次計算的累 加值SUM_6進行計算,得到的結果再利用所述五號移位器進行右移2位操作,得到第二子塊 Plfn中的第三個元素值; 所述四號加法器對所述上方一行參考像素重建值A中的元素值Rn+^和第η次計算的累 加值SUM_6進行計算,得到的結果再利用所述六號移位器進行右移2位操作,得到第η次計算 的第二子塊PU〃n中的第四個元素值Ρ η+2,η-1; 所述五號加法器對所述左方一列參考像素重建值L中的元素值R-1>n和第η次計算的累加 值SUM_6進行計算,得到的結果再利用所述七號移位器進行右移2位操作,得到第η次計算的 第三子塊PU〃' η中的第一個元素值Pn, η; 所述六號加法器對所述左方一列參考像素重建值L中的元素值R-1>n+1和第η次計算的累 加值SUM_6進行計算,得到的結果再利用所述八號移位器進行右移2位操作,得到第η次計算 的第三子塊PU"'中的第二個元素值Ρ η-1>η+1; 所述七號加法器對所述左方一列參考像素重建值L中的元素值R-1>n+2和第η次計算的累 加值SUM_6進行計算,得到的結果再利用所述九號移位器進行右移2位操作,得到第η次計算 的第三子塊Ρ?/〃 η中的第三個元素值Ρη-1>η+2。3. -種應用于視頻編解碼的DC預測方法,其特征是用于在2 X N固期內預測仵意一個圖像中 4Ν X 4Ν區域內的像素值,記所述4Ν X 4Ν區域為一預測蘿則所述預測塊PU的上方一行參考像素重建值記為A=[Ro,-i,Ri,-1,···,R4N-1,-1],所述預測塊 PU的左方一列參考像素重建值記為L= [R-1,0,R-1,1,…,R-1,4N-1];記所述周期為T,則Tm表不 第 m 個周期;NG(l,2,4,8,16);Kn<N;Km<2XN; 所述預測方法是按如下步驟進行: 步驟1、初始化n= I,m= 1; 步驟2、在第m個周期1"內,利用式(1)得到第η次計算的累加值SUM_0: SUM_0 = Rn-l,-l+R-l,n-l (I) 步驟3、在第m個周期1?內,利用式(2)徨剎笛笪的平抝佶TV.vAlim,并以所述平均值 Devalue作為所述第η次計算的第一子塊.3的所有元素值;步驟4、在第m個周期1"內,利用式(3)得到第η次計算的累加值Sum_4: Sum_4 = 2 XDcvalue+2 (3) 步驟5、在第m個周期1"內,利用式(4)得到第η次計算的累加值Sum_6: Sum_6 = 3 XDcvalue+2 (4) 步驟6、在第m+1個周期Tm+1內,利用式(5)得到第η次計算的第二子塊PU〃n=[P〇,〇, Ρ?,Ο,…,P4n-1,0]中的第一個元素值Pn-Ι,η-1: Pn-1, η-1 = (SUM_0+SUM_4) + 4 (5) 步驟7、在第m+1個周期Tm+1內,利用式(6)得到第η次計算的第二子塊PUn 〃中的第二個元 素值 Ρη, η-1: Pn,n-l=(Rn,-l+SUM_6)^4 (6) 步驟8、在第m+1個周期Tm+1內,利用式(7)得到第η次計算的第二子塊PUn 〃中的第三個元 素值 Pn+l,n-1: Ρη+ι,η-i=(Rn+i,-i+SUM_6)+4 (7) 步驟9、在第m+1個周期Tm+1內,利用式(8)得到第η次計算的第二子塊PUn 〃中的第四個元 素值 Ρη+2,η-1: Pn+2,n-i=(Rn+2,-i+SUM_6)+4 (8) 步驟10、在第m+1個周期Tm+1內,利用式(9)得到第n次計算的第三子塊PlV〃中的第一個 元素值Ρη-1, η: Pn-l,n=(R-l,n+SUM_6)+4 (9) 步驟11、在第m+1個周期Tm+1內,利用式(10)得到第n次計算的第三子塊PUr/"中的第二個 兀素值Ρη-1,η+1: Pn-l,n+l=(R-l,n+l+SUM_6)^4 (10) 步驟12、在第m+1個周期Tm+1內,利用式(11)得到第η次計算的第三子塊PIT n中的第三個 兀素值Ρη-l,n+2 : Pn-i,n+2=(R-i,n+2+SUM_6)+4 (11) 從而得到在第n次計算時所述預測塊PU第二子塊Plfn= [PM,和第三子 塊Pt/" η= [P〇,l,P〇,2,…,P〇,4n-1]; 步驟13、由所述第η次計算時的第二子塊PU〃n和第三子塊Ρ?/〃 n構成第η次計算時預測塊 PUn; 步驟14、將η+1賦值給η,將m+2賦值給m后,重復步驟2執行,直到n = N且m = 2 X N為止,從 而獲得預測塊PU。
【文檔編號】H04N19/70GK105898334SQ201610471667
【公開日】2016年8月24日
【申請日】2016年6月22日
【發明人】杜高明, 郭晨陽, 張阿敏, 張多利, 宋宇鯤, 王春華
【申請人】合肥工業大學