一种应用于视频编解码的DC预测电路及其方法转让专利

申请号 : CN201610471667.9

文献号 : CN105898334B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜高明郭晨阳张阿敏张多利宋宇鲲王春华

申请人 : 合肥工业大学

摘要 :

本发明一种应用于视频编解码的DC预测电路和DC预测方法;其特征是包括加法器复用模块、中间值寄存器模块、状态自适应机控制模块;加法器复用模块通过复用加法器得到资源的最大有效利用;中间值寄存器模块通过把重要的中间值存储传递给下个周期作为输入,来减少重复计算;状态自适应机控制模块控制数据的传输和计算周期的跳转;本发明在实现了DC预测算法功能的基础上,能减少电路工作面积、降低电路的运算周期、增加工作频率并且提高计算的准确率。

权利要求 :

1.一种应用于视频编解码的DC预测电路,其特征是,用于在2×N周期内预测任意一个图像中4N×4N区域内的像素值,记所述4N×4N区域为一预测块则所述预测块PU的上方一行参考像素重建值记为A=[R0,-1,R1,-1,…,R4N-1,-1],所述预测块PU的左方一列参考像素重建值记为L=[R-1,0,R-1,1,…,R-1,4N-1];记所述周期为T,则Tm表示第m个周期;初始化n=1,m=1;

所述DC预测电路包括:加法器复用模块、中间值寄存器模块、状态自适应机控制模块;

所述加法器复用模块在第m个周期Tm内对所述上方一行参考像素重建值A和左方一列参考像素重建值L进行第n次计算,得到第n次计算的3个累加值SUM_0、SUM_4和SUM_6并传递给所述中间值寄存器模块进行存储,并得到在第n次计算时所述预测块PU的第一子块并直接输出;

所述状态自适应机控制模块从所述中间值寄存器模块中读取所述第n次计算的3个累加值SUM_0、SUM_4和SUM_6并传递给所述加法器复用模块;

所述加法器复用模块在第m+1个周期Tm+1内对所述第n次计算的三个累加值SUM_0、SUM_

4和SUM_6以及所述上方一行参考像素重建值A进行第n次计算,得到第n次计算时所述预测块PU的第二子块PUn″=[P0,0,P1,0,…,P4n-1,0];对所述第n次计算的三个累加值SUM_0、SUM_4和SUM_6以及所述左方一列参考像素重建值L进行计算,得到在第n次计算时所述预测块PU的第三子块PUn″′=[P0,1,P0,2,…,P0,4n-1];

由所述第n次计算时的第一子块PUn′、第二子块PUn″以及第三子块PUn″′构成第n次计算时预测块PUn,将n+1赋值给n,将m+2赋值给m后,重复所述加法器复用模块的第n次计算,直到n=N且m=2×N为止,从而获得预测块PU。

2.根据权利要求1所述的应用于视频编解码的DC预测电路,其特征是,所述加法器复用模块包括:一号加法器、二号加法器、三号加法器、四号加法器、五号加法器、六号加法器、七号加法器、八号加法器、一号移位器、二号移位器、三号移位器、四号移位器、五号移位器、六号移位器、七号移位器、八号移位器、九号移位器;

所述加法器复用模块的第n次计算为:

在第m个周期Tm内,所述一号加法器至四号加法器对所述上方一行参考像素重建值A和左方一列参考像素重建值L进行第n次计算,得到第n次计算的四个累加值SUM_0、SUM_1、SUM_2、SUM_3;

由所述八号加法器对所述第n次计算的四个累加值SUM_0、SUM_1、SUM_2、SUM_3和常数“4”进行计算,得到第n次计算的累加值SUM_7;

所述一号移位器对所述第n次计算的累加值SUM_7进行右移3位操作,得到第n次计算平均值DCvalue;

所述二号移位器对所述第n次计算的平均值DCvalue进行左移1位操作,得到第n次计算的中间值DCvalue′;

所述六号加法器对所述第n次计算的中间值DCvalue′和第n次计算的平均值DCvalue进行计算,得到第n次计算的累加值SUM_5;

所述七号加法器对所述第n次计算的累加值SUM_5和常数“2”进行计算,得到第n次计算的累加值SUM_6;

所述五号加法器对所述第n次计算的中间值DCvalue′和常数“2”进行计算,得到第n次计算的累加值SUM_4;

以所述第n次计算的平均值DCvalue作为所述第n次计算的第一子块PUn′中的所有元素值;

在第m+1个周期Tm+1内,所述一号加法器对所述第n次计算的累加值SUM_0和第n次计算的SUM_4进行第n次计算,得到的结果再利用所述三号移位器进行右移2位操作,得到第n次计算的第二子块PUn″中的第一个元素值Pn-1,n-1;

所述二号加法器对所述上方一行参考像素重建值A中的元素值Rn,-1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述四号移位器进行右移2位操作,得到第n次计算的第二子块PUn″中的第二个元素值Pn,n-1;

所述三号加法器对所述上方一行参考像素重建值A中的元素值Rn+1,-1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述五号移位器进行右移2位操作,得到第二子块PUn″中的第三个元素值Pn+1,n-1;

所述四号加法器对所述上方一行参考像素重建值A中的元素值Rn+2,-1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述六号移位器进行右移2位操作,得到第n次计算的第二子块PUn″中的第四个元素值Pn+2,n-1;

所述五号加法器对所述左方一列参考像素重建值L中的元素值R-1,n和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述七号移位器进行右移2位操作,得到第n次计算的第三子块PUn″′中的第一个元素值Pn-1,n;

所述六号加法器对所述左方一列参考像素重建值L中的元素值R-1,n+1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述八号移位器进行右移2位操作,得到第n次计算的第三子块PUn″′中的第二个元素值Pn-1,n+1;

所述七号加法器对所述左方一列参考像素重建值L中的元素值R-1,n+2和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述九号移位器进行右移2位操作,得到第n次计算的第三子块PUn″′中的第三个元素值Pn-1,n+2。

3.一种应用于视频编解码的DC预测方法,其特征是用于在2×N周期内预测任意一个图像中4N×4N区域内的像素值,记所述4N×4N区域为一预测块则所述预测块PU的上方一行参考像素重建值记为A=[R0,-1,R1,-1,…,R4N-1,-1],所述预测块PU的左方一列参考像素重建值记为L=[R-1,0,R-1,1,…,R-1,4N-1];记所述周期为T,则Tm表示第m个周期;N∈(1,2,4,8,16);1≤n≤N;1≤m≤2×N;

所述预测方法是按如下步骤进行:

步骤1、初始化n=1,m=1;

步骤2、在第m个周期Tm内,利用式(1)得到第n次计算的累加值SUM_0:SUM_0=Rn-1,-1+R-1,n-1  (1)

步骤3、在第m个周期Tm内,利用式(2)得到第n次计算的平均值DCvalue,并以所述平均值DCvalue作为所述第n次计算的第一子块 中的所有元素值;

步骤4、在第m个周期Tm内,利用式(3)得到第n次计算的累加值Sum_4:Sum_4=2×DCvalue+2  (3)

步骤5、在第m个周期Tm内,利用式(4)得到第n次计算的累加值Sum_6:Sum_6=3×DCvalue+2  (4)

步骤6、在第m+1个周期Tm+1内,利用式(5)得到第n次计算的第二子块PUn″=[P0,0,P1,0,…,P4n-1,0]中的第一个元素值Pn-1,n-1:Pn-1,n-1=(SUM_0+SUM_4)÷4  (5)

步骤7、在第m+1个周期Tm+1内,利用式(6)得到第n次计算的第二子块PUn″中的第二个元素值Pn,n-1:Pn,n-1=(Rn,-1+SUM_6)÷4  (6)

步骤8、在第m+1个周期Tm+1内,利用式(7)得到第n次计算的第二子块PUn″中的第三个元素值Pn+1,n-1:Pn+1,n-1=(Rn+1,-1+SUM_6)÷4  (7)

步骤9、在第m+1个周期Tm+1内,利用式(8)得到第n次计算的第二子块PUn″中的第四个元素值Pn+2,n-1:Pn+2,n-1=(Rn+2,-1+SUM_6)÷4  (8)

步骤10、在第m+1个周期Tm+1内,利用式(9)得到第n次计算的第三子块PUn″′中的第一个元素值Pn-1,n:Pn-1,n=(R-1,n+SUM_6)÷4  (9)

步骤11、在第m+1个周期Tm+1内,利用式(10)得到第n次计算的第三子块PUn″′中的第二个元素值Pn-1,n+1:Pn-1,n+1=(R-1,n+1+SUM_6)÷4  (10)

步骤12、在第m+1个周期Tm+1内,利用式(11)得到第n次计算的第三子块PUn″′中的第三个元素值Pn-1,n+2:Pn-1,n+2=(R-1,n+2+SUM_6)÷4  (11)

从而得到在第n次计算时所述预测块PU第二子块PUn″=[P0,0,P1,0,…,P4n-1,0]和第三子块PUn″′=[P0,1,P0,2,…,P0,4n-1];

步骤13、由所述第n次计算时的第一子块PU1′、第二子块PUn″和第三子块PUn″′构成第n次计算时预测块PUn;

步骤14、将n+1赋值给n,将m+2赋值给m后,重复步骤2执行,直到n=N且m=2×N为止,从而获得预测块PU。

说明书 :

一种应用于视频编解码的DC预测电路及其方法

技术领域

[0001] 本发明属于视频编解码技术的预测编码技术领域,具体的说是一种应用于视频编解码的DC预测电路及其方法。

背景技术

[0002] 随着目前科学技术的不断发展,信息技术和计算机互联网分别在不同程度改变了人们的日常的生活。如今,人们获取信息的主要来源于多媒体信息,而多媒体信息却以视频为核心。在视频储存和传输不断被广泛应用的过程中,多媒体技术渐渐开始将研究领域扩充到高效视频编码的技术中。人们对于高清视频并且占用空间小的要求越来越强烈,视频编解码就越显得重要。DC预测编码技术是帧内预测算法之一,它的广泛性使用,也使得人们对其硬件电路的性能要求越来越高。
[0003] 现有技术中,DC预测编码的硬件电路已经得到很大的提高,周巍、黄晓东等人在2013 PCS(Picture Coding Symposium)发表“EFFICIENT INTRA PREDICTION VLSI ARCHITECTURE FOR HEVC STANDARD”中所述电路,是目前DC预测电路和DC预测方法中比较简单和快速的电路;但是仍存在以下四个问题:
[0004] 1、电路面积不够优化,多次使用三输入加法器,且计算过程中多次出现重复计算;
[0005] 2、预测电路存在计算结果不够精确的缺陷,算法周期还有降低的空间,周期长拉低了数据的处理速度,以致于对整个视频编解码的速率都有影响;
[0006] 3、电路的工作频率357MHz,相对于之前的电路有很大的提升,但仍待提高以适应高频率的编码速度,若DC预测算法的频率是瓶颈,将会拉低整个视频序列的实时编码速度;
[0007] 4、实现方法存在不精确的问题,未能完全考虑DC预测算法中,对于移位时产生的小数位直接丢弃问题,准确率降低。

发明内容

[0008] 本发明为解决上述现有技术中存在的不足之处,提出一种应用于视频编解码的DC预测电路及其方法,以期能减少电路工作面积、降低电路运算周期、提高工作频率和计算的准确率,从而能降低视频编解码的成本和功耗。
[0009] 本发明为达到上述目的所采用的技术方案是:
[0010] 本发明一种应用于视频编解码的DC预测电路的特点是,用于在2×N周期内预测任意一个图像中4N×4N区域内的像素值,记所述4N×4N区域为一预测块则所述预测块PU的上方一行参考像素重建值记为A=[R0,-1,R1,-1,…,R4N-1,-1],所述预测块PU的左方一列参考像素重建值记为L=[R-1,0,R-1,1,…,R-1,4N-1];记所述周期为T,则Tm表示第m个周期;初始化n=1,m=1;
[0011] 所述DC预测电路包括:加法器复用模块、中间值寄存器模块、状态自适应机控制模块;
[0012] 所述加法器复用模块在第m个周期Tm内对所述上方一行参考像素重建值A和左方一列参考像素重建值L进行第n次计算,得到第n次计算的3个累加值SUM_0、SUM_4和SUM_6并传递给所述中间值寄存器模块进行存储,并得到在第n次计算时所述预测块PU的第一子块并直接输出;
[0013] 所述状态自适应机控制模块从所述中间值寄存器模块中读取所述第n次计算的3个累加值SUM_0、SUM_4和SUM_6并传递给所述加法器复用模块;
[0014] 所述加法器复用模块在第m+1个周期Tm+1内对所述第n次计算的三个累加值SUM_0、SUM_4和SUM_6以及所述上方一行参考像素重建值A进行第n次计算,得到第n次计算时所述预测块PU的第二子块PU″n=[P0,0,P1,0,…,P4n-1,0];对所述第n次计算的三个累加值SUM_0、SUM_4和SUM_6以及所述左方一列参考像素重建值L进行计算,得到在第n次计算时所述预测块PU的第三子块PU″′n=[P0,1,P0,2,…,P0,4n-1];
[0015] 由所述第n次计算时的第一子块PU′n、第二子块PU″n以及第三子块PU″′n构成第n次计算时预测块PUn,将n+1赋值给n,将m+2赋值给m后,重复所述加法器复用模块的第n次计算,直到n=N且m=2×N为止,从而获得预测块PU。
[0016] 本发明所述的应用于视频编解码的DC预测电路的特点也在于,所述加法器复用模块包括:一号加法器、二号加法器、三号加法器、四号加法器、五号加法器、六号加法器、七号加法器、八号加法器、一号移位器、二号移位器、三号移位器、四号移位器、五号移位器、六号移位器、七号移位器、八号移位器、九号移位器;
[0017] 所述加法器复用模块的第n次计算为:
[0018] 在第m个周期Tm内,所述一号加法器至四号加法器对所述上方一行参考像素重建值A和左方一列参考像素重建值L进行第n次计算,得到第n次计算的四个累加值SUM_0、SUM_1、SUM_2、SUM_3;
[0019] 由所述八号加法器对所述第n次计算的四个累加值SUM_0、SUM_1、SUM_2、SUM_3和常数“4”进行计算,得到第n次计算的累加值SUM_7;
[0020] 所述一号移位器对所述第n次计算的累加值SUM_7进行右移3位操作,得到第n次计算平均值DCvalue;
[0021] 所述二号移位器对所述第n次计算的平均值DCvalue进行左移1位操作,得到第n次计算的中间值DCvalue′;
[0022] 所述六号加法器对所述第n次计算的中间值DCvalue′和第n次计算的平均值DCvalue进行计算,得到第n次计算的累加值SUM_5;
[0023] 所述七号加法器对所述第n次计算的累加值SUM_5和常数“2”进行计算,得到第n次计算的累加值SUM_6;
[0024] 所述五号加法器对所述第n次计算的中间值DCvalue′和常数“2”进行计算,得到第n次计算的累加值SUM_4;
[0025] 以所述第n次计算的平均值DCvalue作为所述第n次计算的第一子块PUn′中的所有元素值;
[0026] 在第m+1个周期Tm+1内,所述一号加法器对所述第n次计算的累加值SUM_0和第n次计算的SUM_4进行第n次计算,得到的结果再利用所述三号移位器进行右移2位操作,得到第n次计算的第二子块PU″n中的第一个元素值Pn-1,n-1;
[0027] 所述二号加法器对所述上方一行参考像素重建值A中的元素值Rn,-1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述四号移位器进行右移2位操作,得到第n次计算的第二子块PU″n中的第二个元素值Pn,n-1;
[0028] 所述三号加法器对所述上方一行参考像素重建值A中的元素值Rn+1,-1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述五号移位器进行右移2位操作,得到第二子块PU″n中的第三个元素值Pn+1,n-1;
[0029] 所述四号加法器对所述上方一行参考像素重建值A中的元素值Rn+2,-1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述六号移位器进行右移2位操作,得到第n次计算的第二子块PU″n中的第四个元素值Pn+2,n-1;
[0030] 所述五号加法器对所述左方一列参考像素重建值L中的元素值R-1,n和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述七号移位器进行右移2位操作,得到第n次计算的第三子块PU″′n中的第一个元素值Pn-1,n;
[0031] 所述六号加法器对所述左方一列参考像素重建值L中的元素值R-1,n+1和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述八号移位器进行右移2位操作,得到第n次计算的第三子块PU″′n中的第二个元素值Pn-1,n+1;
[0032] 所述七号加法器对所述左方一列参考像素重建值L中的元素值R-1,n+2和第n次计算的累加值SUM_6进行计算,得到的结果再利用所述九号移位器进行右移2位操作,得到第n次计算的第三子块PU″′n中的第三个元素值Pn-1,n+2。
[0033] 本发明一种应用于视频编解码的DC预测方法的特点是用于在2×N周期内预测任意一个图像中4N×4N区域内的像素值,记所述4N×4N区域为一预测块则所述预测块PU的上方一行参考像素重建值记为A=[R0,-1,R1,-1,…,R4N-1,-1],所述预测块PU的左方一列参考像素重建值记为L=[R-1,0,R-1,1,…,R-1,4N-1];记所述周期为T,则Tm表示第m个周期;N∈(1,2,4,8,16);1≤n≤N;1≤m≤2×N;
[0034] 所述预测方法是按如下步骤进行:
[0035] 步骤1、初始化n=1,m=1;
[0036] 步骤2、在第m个周期Tm内,利用式(1)得到第n次计算的累加值SUM_0:
[0037] SUM_0=Rn-1,-1+R-1,n-1            (1)
[0038] 步骤3、在第m个周期Tm内,利用式(2)得到第n次计算的平均值DCvalue,并以所述平均值DCvalue作为所述第n次计算的第一子块 中的所有元素值;
[0039]
[0040] 步骤4、在第m个周期Tm内,利用式(3)得到第n次计算的累加值Sum_4:
[0041] Sum_4=2×DCvalue+2                  (3)
[0042] 步骤5、在第m个周期Tm内,利用式(4)得到第n次计算的累加值Sum_6:
[0043] Sum_6=3×DCvalue+2                  (4)
[0044] 步骤6、在第m+1个周期Tm+1内,利用式(5)得到第n次计算的第二子块PU″n=[P0,0,P1,0,…,P4n-1,0]中的第一个元素值Pn-1,n-1:
[0045] Pn-1,n-1=(SUM_0+SUM_4)÷4             (5)
[0046] 步骤7、在第m+1个周期Tm+1内,利用式(6)得到第n次计算的第二子块PU″n中的第二个元素值Pn,n-1:
[0047] Pn,n-1=(Rn,-1+SUM_6)÷4                (6)
[0048] 步骤8、在第m+1个周期Tm+1内,利用式(7)得到第n次计算的第二子块PU″n中的第三个元素值Pn+1,n-1:
[0049] Pn+1,n-1=(Rn+1,-1+SUM_6)÷4                (7)
[0050] 步骤9、在第m+1个周期Tm+1内,利用式(8)得到第n次计算的第二子块PU″n中的第四个元素值Pn+2,n-1:
[0051] Pn+2,n-1=(Rn+2,-1+SUM_6)÷4                (8)
[0052] 步骤10、在第m+1个周期Tm+1内,利用式(9)得到第n次计算的第三子块PU″′n中的第一个元素值Pn-1,n:
[0053] Pn-1,n=(R-1,n+SUM_6)÷4                (9)
[0054] 步骤11、在第m+1个周期Tm+1内,利用式(10)得到第n次计算的第三子块PU″′n中的第二个元素值Pn-1,n+1:
[0055] Pn-1,n+1=(R-1,n+1+SUM_6)÷4                (10)
[0056] 步骤12、在第m+1个周期Tm+1内,利用式(11)得到第n次计算的第三子块PU″′n中的第三个元素值Pn-1,n+2:
[0057] Pn-1,n+2=(R-1,n+2+SUM_6)÷4               (11)
[0058] 从而得到在第n次计算时所述预测块PU第二子块PU″n=[P0,0,P1,0,…,P4n-1,0]和第三子块PU″′n=[P0,1,P0,2,…,P0,4n-1];
[0059] 步骤13、由所述第n次计算时的第一子块PU1′、第二子块PU″n和第三子块PU″′n构成第n次计算时预测块PUn;
[0060] 步骤14、将n+1赋值给n,将m+2赋值给m后,重复步骤2执行,直到n=N且m=2×N为止,从而获得预测块PU。
[0061] 与现有技术相比,本发明的有益技术效果体现在:
[0062] 1、本发明提出的优化现有DC预测算法电路设计,克服了电路占用面积大、工作频率不够高的问题,提出了一种应用于视频编解码的DC预测算法的硬件实现方式,采用了分割处理架构,通过加法器复用、状态自适应机控制以及中间值寄存等技术,降低了预测电路面积,并提高了预测电路的工作频率。
[0063] 2、本发明提出的应用于视频编解码的DC预测算法的实现方式,通过加法器的复用模块,减少了数据的重复计算,把逻辑门数从12970降低到8762,有效降低了电路的占用面积,从而降低了整个电路的设计成本。
[0064] 3、本发明提出的通过状态机来控制加法器的输入端,从而达到了对加法器进行复用,同时减少了冗余计算,并且巧妙的使用寄存器来寄存中间值,把原有工作周期从3个周期降到2个周期,DC预测算法是视频编解码预测算法的一种,因为DC预测算法电路工作的速度提高了33%,所以这将会使得整个视频编解码的速率都有显著的提升,进而提高了工作频率,从而提高了视频编解码的速度。
[0065] 4、本发明提出的应用于视频编解码的DC预测算法的实现方式,精简了电路结构,使得最快工作频率达到500MHz,与之前电路相比,速度提高了25%,根据该电路的工作频率,把视频序列的实时编码速率从4096×2160@30fps提升到了7680×4320@30fps。
[0066] 5、本发明提出的硬件优化后的DC预测算法电路技术,更准确的遵循DC预测算法的工作原理。在进行Dcvalue值计算时,考虑到硬件电路在移位过程中,可能会出现四舍五入的情况,把加N的计算考虑进去,有效克服了全部舍去出现的错误预测,把原本有像素的点的预测成无像素点。本发明相比之前的设计,对算法实现的更完善、更精准。

附图说明

[0067] 图1为本发明DC预测模板;
[0068] 图2为本发明DC预测硬件结构电路;
[0069] 图3为本发明DC预测算法的中间值计算电路;
[0070] 图4为本发明DC预测算法的预测值计算电路;
[0071] 图5为本发明状态机电路;
[0072] 图6为本发明优化结果实验数据对比图。

具体实施方式

[0073] 本实施例中,一种应用于视频编解码的DC预测电路用于在2×N周期内预测任意一个图像中4N×4N区域内的像素值,记4N×4N区域为一预测块则预测块PU的上方一行参考像素重建值记为A=[R0,-1,R1,-1,…,R4N-1,-1],预测块PU的左方一列参考像素重建值记为L=[R-1,0,R-1,1,…,R-1,4N-1];记周期为T,则Tm表示第m个周期;
[0074] 具体实施中,N=1,则在2周期内预测任意一个图像中4×4区域内的像素值,记4×4区域为一预测块 如图1所示,则预测块PU的上方一行参考像
素重建值记为A=[R0,-1,R1,-1,R2,-1,R3-1],预测块PU的左方一列参考像素重建值记为L=[R-1,0,R-1,1,R-1,2,R-1,3];Tm表示第m个周期,则T1表示第1个周期;初始化n=1,m=1;
[0075] 如图2所示,DC预测电路包括:加法器复用模块、中间值寄存器模块、状态自适应机控制模块;
[0076] 加法器复用模块在第1个周期T1内对上方一行参考像素重建值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″1=[P0,0,P1,0,P2,0,P3,0];对第1次计算的三个累加值SUM_0、SUM_4和SUM_6以及左方一列参考像素重建值L进行计算,得到在第1次计算时预测块PU的第三子块PU″′1=[P0,1,P0,2,P0,3];
[0079] 由第1次计算时的第一子块PU1′、第二子块PU″1以及第三子块PU″′1构成第1次计算时预测块PU1,由于N=1,所以n的值为1,即只需要计算一次即可得到预测值PU1=PU。
[0080] 加法器复用模块包括:一号加法器、二号加法器、三号加法器、四号加法器、五号加法器、六号加法器、七号加法器、八号加法器、一号移位器、二号移位器、三号移位器、四号移位器、五号移位器、六号移位器、七号移位器、八号移位器、九号移位器;
[0081] 加法器复用模块的第1次计算为:
[0082] 如图3所示,在第1个周期T1内,一号加法器至四号加法器对上方一行参考像素重建值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进行左移1位操作,得到第1次计算的中间值DCvalue′;
[0086] 六号加法器对第1次计算的中间值DCvalue′和第1次计算的平均值DCvalue进行计算,得到第1次计算的累加值SUM_5;
[0087] 七号加法器对第1次计算的累加值SUM_5和常数“2”进行计算,得到第1次计算的累加值SUM_6;
[0088] 五号加法器对第1次计算的中间值DCvalue′和常数“2”进行计算,得到第1次计算的累加值SUM_4;
[0089] 以第1次计算的平均值DCvalue作为第1次计算的第一子块PU1′中的所有元素值;
[0090] 在第2个周期T2内,重复使用加法器模块的八个加法器,第1个周期T1内计算的中间值寄存到中间寄存器模块中,以其作为第2个周期T2内的输入;
[0091] 如图4所示,一号加法器对第1次计算的累加值SUM_0和第1次计算的SUM_4进行计算,得到的结果再利用三号移位器进行右移2位操作,得到第1次计算的第二子块PU″1中的第一个元素值P0,0;
[0092] 二号加法器对上方一行参考像素重建值A中的元素值R1,-1和第1次计算的累加值SUM_6进行计算,得到的结果再利用四号移位器进行右移2位操作,得到第1次计算的第二子块PU″1中的第二个元素值P1,0;
[0093] 三号加法器对上方一行参考像素重建值A中的元素值R2,-1和第1次计算的累加值SUM_6进行计算,得到的结果再利用五号移位器进行右移2位操作,得到第二子块PU″1中的第三个元素值P2,0;
[0094] 四号加法器对上方一行参考像素重建值A中的元素值R3,-1和第1次计算的累加值SUM_6进行计算,得到的结果再利用六号移位器进行右移2位操作,得到第1次计算的第二子块PU″1中的第四个元素值P3,0;
[0095] 五号加法器对左方一列参考像素重建值L中的元素值R-1,1和第1次计算的累加值SUM_6进行计算,得到的结果再利用七号移位器进行右移2位操作,得到第1次计算的第三子块PU″′1中的第一个元素值P0,1;
[0096] 六号加法器对左方一列参考像素重建值L中的元素值R-1,2和第1次计算的累加值SUM_6进行计算,得到的结果再利用八号移位器进行右移2位操作,得到第1次计算的第三子块PU″′1中的第二个元素值P0,2;
[0097] 七号加法器对左方一列参考像素重建值L中的元素值R-1,3和第1次计算的累加值SUM_6进行计算,得到的结果再利用九号移位器进行右移2位操作,得到第1次计算的第三子块PU″′1中的第三个元素值P0,3;
[0098] 如图5所示,状态自适应机控制模块包含两个状态:计算中间值状态M_value和预测像素值状态P_value,两个状态是无条件自动跳转。
[0099] 本实例中,如表1所示,参考像素值由上方一列参考像素重建值和左方一列参考像素重建值构成;
[0100] 表1 参考像素值
[0101]上方参考位置 R0,-1 R1,-1 R2,-1 R3,-1
像素值 10 10 10 11
左方参考位置 R-1,0 R-1,1 R-1,2 R-1,3
像素值 10 10 10 11
[0102] 本实施例中,一种应用于视频编解码的DC预测方法是按如下步骤进行:
[0103] 步骤1、初始化n=1,m=1;
[0104] 步骤2、在第1个周期T1内,利用式(1)得到第1次计算的累加值SUM_0:
[0105] SUM_0=R0,-1+R-1,0=20           (1)
[0106] 步骤3、在第1个周期T1内,利用式(2)得到第1次计算的平均值DCvalue,并以平均值DCvalue作为第1次计算的第一子块 中的所有元素值;
[0107]
[0108] 步骤4、在第1个周期T1内,利用式(3)得到第1次计算的累加值Sum_4:
[0109] Sum_4=2×DCvalue+2=22          (3)
[0110] 步骤5、在第1个周期T1内,利用式(4)得到第1次计算的累加值Sum_6:
[0111] Sum_6=3×DCvalue+2=32             (4)
[0112] 步骤6、在第2个周期T2内,利用式(5)得到第1次计算的第二子块PU″1=[P0,0,P1,0,P2,0,P3,0]中的第一个元素值P0,0:
[0113] P0,0=(SUM_0+SUM_4)÷4=10         (5)
[0114] 步骤7、在第2个周期T2内,利用式(6)得到第1次计算的第二子块PU″1中的第二个元素值P1,0:
[0115] P1,0=(R1,-1+SUM_6)÷4=10                (6)
[0116] 步骤8、在第2个周期T2内,利用式(7)得到第1次计算的第二子块PU″1中的第三个元素值P2,0:
[0117] P2,0=(R2,-1+SUM_6)÷4=10                (7)
[0118] 步骤9、在第2个周期T2内,利用式(8)得到第1次计算的第二子块PU″1中的第四个元素值P3,0:
[0119] P3,0=(R3,-1+SUM_6)÷4=10                (8)
[0120] 步骤10、在第2个周期T2内,利用式(9)得到第1次计算的第三子块PU″′1中的第一个元素值P0,1:
[0121] P0,1=(R-1,1+SUM_6)÷4=10                (9)
[0122] 步骤11、在第2个周期T2内,利用式(10)得到第1次计算的第三子块PU″′1中的第二个元素值P0,2:
[0123] P0,2=(R-1,2+SUM_6)÷4=10                (10)
[0124] 步骤12、在第2个周期T2内,利用式(11)得到第1次计算的第三子块PU″′1中的第三个元素值P0,3:
[0125] P0,3=(R-1,3+SUM_6)÷4=10                (11)
[0126] 从而得到在第1次计算时预测块PU第二子块PU″1=[P0,0,P1,0,P2,0,P3,0]和第三子块PU″′1=[P0,1,P0,2,P0,3];
[0127] 步骤13、由第1次计算的第二子块PU″1和第三子块PU″′1构成第1次计算时预测块PU1;
[0128] 步骤14、由1≤n≤N;1≤m≤2×N知只需要计算一次即可,从而获得预测块PU的值如表2;
[0129] 表2 预测像素值
[0130]预测位置 P0,0 P1,0 P2,0 P3,0
像素值 10 10 10 10
预测位置 P0,1 P1,1 P2,1 P3,1
像素值 10 10 10 10
预测位置 P0,2 P1,2 P2,2 P3,2
像素值 10 10 10 10
预测位置 P0,3 P1,3 P2,3 P3,3
像素值 10 10 10 10
[0131] 针对4×4的预测块对DC预测算法进行VLSI设计,并采用Verilog HDL语言进行描述,通过Synopsys软件进行仿真和综合,在SMIC 0.18um工艺下综合得到该电路最快工作频率为500MHz,电路工作的面积为8762gate,算法周期降低到2个周期。本发明与周巍、黄晓东等人在2013PCS(Picture Coding Symposium)发表“EFFICIENT INTRA PREDICTION VLSI ARCHITECTURE FOR HEVC STANDARD”中所述电路相比,工作频率提高了40%,门控数降低了40%,算法周期降低了33%,工作频率、逻辑门数、算法周期的对比图分别在图6所示,如果扩展到整个视频编解码的平台上,优化效果更明显。