CN101217669A - 帧内预测方法及装置 - Google Patents
帧内预测方法及装置 Download PDFInfo
- Publication number
- CN101217669A CN101217669A CN 200810056207 CN200810056207A CN101217669A CN 101217669 A CN101217669 A CN 101217669A CN 200810056207 CN200810056207 CN 200810056207 CN 200810056207 A CN200810056207 A CN 200810056207A CN 101217669 A CN101217669 A CN 101217669A
- Authority
- CN
- China
- Prior art keywords
- pix
- predicted
- piece
- value
- prediction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 239000011159 matrix material Substances 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种帧内预测方法及装置,当待预测块需要进行垂直模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测。当待预测块需要进行水平模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测。因为充分利用了像素之间的距离关系,提高了帧内预测的准确度,进而提高了编码效率。
Description
技术领域
本发明涉及视频处理技术领域,特别涉及帧内预测方法及装置。
背景技术
帧内预测是H.264视频编码中的一个重要环节,H.264标准中的帧内预测采用了16×16和4×4两种块预测模式,16×16块模式使用了4种方向预测模式,4×4块模式中使用了9种方向预测模式。在做帧内预测时,会依次计算所有预测模式下的率失真代价。其中4×4块模式的9种方向预测模式的名称和其对应的模式编号可以参见以下的表1。
模式编号 | 模式名称 |
0 | 垂直预测模式 |
1 | 水平预测模式 |
2 | 直流预测模式 |
3 | 对角线向左预测模式 |
4 | 对角线向右预测模式 |
5 | 垂直向右预测模式 |
6 | 水平向下预测模式 |
7 | 垂直向左预测模式 |
8 | 水平向上预测模式 |
表1,9种方向预测模式名称及对应模式编号
图1为4×4块模式的9种方向预测模式示意图,每个数字代表一种方向预测模式,其中直流预测模式采用均值预测,与方向无关,因此未标出。图2为现有对4×4块中的像素进行预测的参考像素示意图,如图2所示,一个4×4块中的像素为a~p,在与其相邻的左块、上块、上左块和上右块中有A~L、Q共13个像素作为参考像素,P_A,P_B,P_C,P_D,...P_L,P_Q表示这些参考像素经过重构后的值。像素a~p可以利用这些参考像素通过公式预测得到。
比如垂直预测模式下,待预测像素的预测值通过公式Pre_Pix[i][j]=(&P_A)[j];i,j=0,1,2,3;计算得到,其中Pre_Pix[i][j]表示当前的4×4块中待预测像素的预测值,(&P_A)[j]表示按水平方向取参考像素的值,根据j值的不同,取不同的参考像素值,如j为0,则表示取P_A的值,如j为1,则表示取P_B的值,如j为2,则表示取P_C的值,以此类推。另外,其中i根据待预测像素的垂直坐标取值,j根据待预测像素的水平坐标取值;如待预测像素为a,其在4×4块中的位置是(0,0),因此i,j均为0,其预测值Pre_Pix[0][0]=P_A;如待预测像素为b,其在4×4块中的位置是(1,0),因此i=0,j=1,其预测值Pre_Pix[0][1]=P_B;如待预测像素为e,其在4×4块中的位置是(0,1),因此i=1,j=0,其预测值Pre_Pix[1][0]=P_A;以此类推。
又如水平预测模式下,待预测像素的预测值通过公式Pre_Pix[j][i]=(&P_I)[j];i,j=0,1,2,3;计算得到;其中,j根据待预测像素的垂直坐标取值,i根据待预测像素的水平坐标取值。如待预测像素为a,其在4×4块中的位置是(0,0),因此i,j均为0,其预测值Pre_Pix[0][0]=P_I;如待预测像素为b,其在4×4块中的位置是(1,0),因此j=0,i=1,其预测值Pre_Pix[0][1]=P_I;如待预测像素为e,其在4×4块中的位置是(0,1),因此j=1,i=0,其预测值Pre_Pix[1][0]=P_J;以此类推。
从以上所举例子可以看出,在现有垂直模式中,像素a、e、i、m通过预测值计算公式计算出来的值是一样的,都是P_A,像素b、f、j、n通过预测值计算公式计算出来的值也是一样的,都是P_B。同理,在水平模式下,像素a、b、c、d的预测值都是P_I,像素e、f、g、h的预测值都是P_J。相同的情况在对角线向左、垂直向左、水平向上等预测模式下也会出现,有很多像素点的预测值都是相同的。
但是,如果当前块正好处于运动物体的边缘或者两个物体的边界处,这些边界上的像素之间相关性很低,现有标准的帧内预测方法显然不能准确的预测出当前块的像素值,预测值和实际值将会有较大差别,得到的预测残差将会比较大,增加了码率,降低了编码效率。
发明内容
本发明实施例提供一种帧内预测方法,可以提高帧内预测的准确度,提高编码效率。
本发明实施例提供一种帧内预测装置,可以提高帧内预测的准确度,提高编码效率。
为达到上述目的,本发明的技术方案具体是这样实现的:
一种帧内预测方法,该方法包括:
当待预测块需要进行垂直模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测。
较佳地,所述根据左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测,包括:
根据公式Pre_Pix[i][j]=(&P_A)[j]+Weight_v[i][j],i,j=0、1、2、3对待预测块中的每个待预测像素进行垂直模式预测;
其中Pre_Pix[i][j]表示待预测像素的预测值,(&P_A)[j]表示根据j的值,按水平方向取上块中参考像素的值,Weight_v[i][j]表示待预测像素在垂直方向的距离矩阵;其中i根据待预测像素的垂直坐标取值,j根据待预测像素的水平坐标取值;
Weight_v[i][j]由公式Weight_v[i][j]=((&P_I)[i]-P_Q)>>(j+1)计算得到,其中(&P_I)[i]表示根据i的值,按垂直方向取左块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
较佳地,该方法进一步包括:
当待预测块需要进行水平模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测。
较佳地,所述根据左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测,包括:
根据公式Pre_Pix[j][i]=(&P_I)[j]+Weight_h[j][i],i,j=0、1、2、3对待预测块中的每个待预测像素进行垂直模式预测;
其中Pre_Pix[j][i]表示待预测像素的预测值,(&P_I)[j]表示根据j的值,按垂直方向取左块中参考像素的值,Weight_h[j][i]表示待预测像素在水平方向的距离矩阵;其中,j根据待预测像素的垂直坐标取值,i根据待预测像素的水平坐标取值;
Weight_h[j][i]由公式Weight_h[j][i]=((&P_A)[i]-P_Q)>>(j+1)计算得到,其中(&P_A)[i]表示根据i的值,按水平方向取上块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
较佳地,该方法进一步包括:
当待预测块需要进行对角线向左模式预测时,若与待预测块相邻的左块、上块和上右块已经完成重构,则利用如下预测公式对待预测块进行对角线向左模式预测:
Pre_Pix[0][0]=(P_B+P_J+1)/2;
和/或Pre_Pix[0][1]=(4P_C+2P_K+3)/6;
和/或Pre_Pix[1][0]=(2P_C+4P_K+3)/6;
和/或Pre_Pix[0][2]=(3P_D+P_L+2)/4;
和/或Pre_Pix[2][0]=(P_D+3P_L+2)/4;
和/或Pre_Pix[1][1]=(P_D+P_L+1)/2;
和/或Pre_Pix[0][3]=(8P_E+2P_L+5)/10;
和/或Pre_Pix[3][0]=(2P_E+8P_L+5)/10;
和/或Pre_Pix[2][3]=(8P_G+6P_L+7)/14;
和/或Pre_Pix[3][2]=(6P_G+8P_L+7)/14;
和/或Pre_Pix[3][3]=(P_G+P_L+1)/2;
和/或Pre_Pix[2][2]=(P_F+P_L+1)/2;
和/或Pre_Pix[2][1]=(4P_E+6P_L+5)/10;
和/或Pre_Pix[1][2]=(6P_E+4P_L+5)/10;
和/或Pre_Pix[1][3]=(4P_F+2P_L+3)/6;
和/或Pre_Pix[3][1]=(2P_F+4P_L+3)/6;
其中P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G为所述上右块中与待预测块相邻的像素重构后的值;P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值。
较佳地,该方法进一步包括:
当待预测块需要进行垂直向左模式预测时,若与待预测块相邻的上块和上右块已经完成重构,则利用如下预测公式对待预测块进行垂直向左模式预测:
Pre_Pix[0][0]=(P_A+P_B+1)/2;
和/或Pre_Pix[0][1]=(P_B+P_C+1)/2;
和/或Pre_Pix[0][2]=(P_C+P_D+1)/2;
和/或Pre_Pix[0][3]=(P_D+P_E+1)/2;
和/或Pre_Pix[1][0]=(P_A+2P_B+P_C+2)/4;
和/或Pre_Pix[1][1]=(P_B+2P_C+P_D+2)/4;
和/或Pre_Pix[1][2]=(P_C+2P_D+P_E+2)/4;
和/或Pre_Pix[1][3]=(P_D+2P_E+P_F+2)/4;
和/或Pre_Pix[2][0]=(P_A+3P_B+3P_C+P_D+4)/8;
和/或Pre_Pix[2][1]=(P_B+3P_C+3P_D+P_E+4)/8;
和/或Pre_Pix[2][2]=(P_C+3P_D+3P_E+P_F+4)/8;
和/或Pre_Pix[2][3]=(P_D+3P_E+3P_F+P_G+4)/8;
和/或Pre_Pix[3][0]=(P_A+4P_B+6P_C+4P_D+P_E+8)/1 6;
和/或Pre_Pix[3][1]=(P_B+4P_C+6P_D+4P_E+P_F+8)/16;
和/或Pre_Pix[3][2]=(P_C+4P_D+6P_E+4P_F+P_G+8)/16;
和/或Pre_Pix[3][3]=(P_D+4P_E+6P_F+4P_G+P_H+8)/16;
其中P_A、P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G、P_H为所述上右块中与待预测块相邻的像素重构后的值。
较佳地,该方法进一步包括:
当待预测块需要进行水平向上模式预测时,若与待预测块相邻的左块已经完成重构,则利用如下预测公式对待预测块进行水平向上模式预测:
Pre_Pix[0][0]=(P_I+P_J+1)/2;
和/或Pre_Pix[2][0]=(P_K+P_L+1)/2;
和/或Pre_Pix[0][1]=(P_I+2P_J+P_K+2)/4;
和/或Pre_Pix[2][1]=(P_K+2P_L+P_L+2)/4;
和/或Pre_Pix[0][2]=(P_I+3P_J+3P_K+P_L+4)/8;
和/或Pre_Pix[1][2]=(P_J+3P_K+4P_L+4)/8;
和/或Pre_Pix[2][2]=(P_K+7P_L+4)/8;
和/或Pre_Pix[0][3]=(P_I+4P_J+6P_K+5P_L+8)/16;
和/或Pre_Pix[1][3]=(P_J+4P_K+11P_L+8)/16;
和/或Pre_Pix[2][3]=(P_K+15P_L+8)/16;
和/或Pre_Pix[1][0]=(P_J+P_K+1)/2;
和/或Pre_Pix[1][1]=(P_J+2P_K+P_L+2)/4;
和/或Pre_Pix[3][2]=Pre_Pix[3][3]=Pre_Pix[3][0]=Pre_Pix[3][1]=P_L;
其中P_I、P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值。
一种帧内预测装置,该装置包括:
预测模式判决模块,用于判断当待预测块需要进行垂直模式预测,若与待预测块相邻的左块、上块和上左块已经完成重构,则向垂直预测模块发送垂直预测指令;
垂直预测模块,用于接收预测模式判决模块发送的垂直预测指令,根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测。
较佳地,所述垂直预测模块,根据公式Pre_Pix[i][j]=(&P_A)[j]+Weight_v[i][j],i,j=0、1、2、3对待预测块中的待预测像素进行垂直模式预测;
其中Pre_Pix[i][j]表示待预测像素的预测值,(&P_A)[j]表示根据j的值,按水平方向取上块中参考像素的值,Weight_v[i][j]表示待预测像素在垂直方向的距离矩阵;其中i根据待预测像素的垂直坐标取值,j根据待预测像素的水平坐标取值;
Weight_v[i][j]由公式Weigh_v[i][j]=((&P_I)[i]-P_Q)>>(j+1)计算得到,其中(&P_I)[i]表示根据i的值,按垂直方向取左块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
较佳地,该装置还包括:
水平预测模块,用于接收预测模式判决模块发送的水平预测指令,根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测;
所述预测模式判决模块,判断当待预测块需要进行水平模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则向水平预测模块发送水平预测指令。
较佳地,所述水平预测模块,根据公式Pre_Pix[j][i]=(&P_I)[j]+Weight_h[j][i],i,j=0、1、2、3对待预测块中的待预测像素进行垂直模式预测;
其中Pre_Pix[j][i]表示待预测像素的预测值,(&P_I)[j]表示根据j的值,按垂直方向取左块中参考像素的值,Weight_h[j][i]表示待预测像素在水平方向的距离矩阵;其中,j根据待预测像素的垂直坐标取值,i根据待预测像素的水平坐标取值;
Weight_h[j][i]由公式Weight_h[j][i]=((&P_A)[i]-P_Q)>>(j+1)计算得到,其中(&P_A)[i]表示根据i的值,按水平方向取上块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
较佳地,该装置还包括:
对角线向左预测模块,用于接收预测模式判决模块发送的对角线向左预测指令,根据如下预测公式对待预测块进行对角线向左模式预测:
Pre_Pix[0][0]=(P_B+P_J+1)/2;
和/或Pre_Pix[0][1]=(4P_C+2P_K+3)/6;
和/或Pre_Pix[1][0]=(2P_C+4P_K+3)/6;
和/或Pre_Pix[0][2]=(3P_D+P_L+2)/4;
和/或Pre_Pix[2][0]=(P_D+3P_L+2)/4;
和/或Pre_Pix[1][1]=(P_D+P_L+1)/2;
和/或Pre_Pix[0][3]=(8P_E+2P_L+5)/10;
和/或Pre_Pix[3][0]=(2P_E+8P_L+5)/10;
和/或Pre_Pix[2][3]=(8P_G+6P_L+7)/14;
和/或Pre_Pix[3][2]=(6P_G+8P_L+7)/14;
和/或Pre_Pix[3][3]=(P_G+P_L+1)/2;
和/或Pre_Pix[2][2]=(P_F+P_L+1)/2;
和/或Pre_Pix[2][1]=(4P_E+6P_L+5)/10;
和/或Pre_Pix[1][2]=(6P_E+4P_L+5)/10;
和/或Pre_Pix[1][3]=(4P_F+2P_L+3)/6;
和/或Pre_Pix[3][1]=(2P_F+4P_L+3)/6;
其中P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G为所述上右块中与待预测块相邻的像素重构后的值;P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值;
所述预测模式判决模块,判断当待预测块需要进行对角线向左模式预测时,若与待预测块相邻的左块、上块和上右块已经完成重构,则向对角线向左预测模块发送对角线向左预测指令。
较佳地,该装置还包括:
垂直向左预测模块,用于接收预测模式判决模块发送的垂直向左预测指令,根据如下预测公式对待预测块进行垂直向左模式预测:
Pre_Pix[0][0]=(P_A+P_B+1)/2;
和/或Pre_Pix[0][1]=(P_B+P_C+1)/2;
和/或Pre_Pix[0][2]=(P_C+P_D+1)/2;
和/或Pre_Pix[0][3]=(P_D+P_E+1)/2;
和/或Pre_Pix[1][0]=(P_A+2P_B+P_C+2)/4;
和/或Pre_Pix[1][1]=(P_B+2P_C+P_D+2)/4;
和/或Pre_Pix[1][2]=(P_C+2P_D+P_E+2)/4;
和/或Pre_Pix[1][3]=(P_D+2P_E+P_F+2)/4;
和/或Pre_Pix[2][0]=(P_A+3P_B+3P_C+P_D+4)/8;
和/或Pre_Pix[2][1]=(P_B+3P_C+3P_D+P_E+4)/8;
和/或Pre_Pix[2][2]=(P_C+3P_D+3P_E+P_F+4)/8;
和/或Pre_Pix[2][3]=(P_D+3P_E+3P_F+P_G+4)/8;
和/或Pre_Pix[3][0]=(P_A+4P_B+6P_C+4P_D+P_E+8)/16;
和/或Pre_Pix[3][1]=(P_B+4P_C+6P_D+4P_E+P_F+8)/16;
和/或Pre_Pix[3][2]=(P_C+4P_D+6P_E+4P_F+P_G+8)/16;
和/或Pre_Pix[3][3]=(P_D+4P_E+6P_F+4P_G+P_H+8)/16;
其中P_A、P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G、P_H为所述上右块中与待预测块相邻的像素重构后的值;
所述预测模式判决模块,判断当待预测块需要进行垂直向左模式预测时,若与待预测块相邻的上块和上右块已经完成重构,则向垂直向左预测模块发送垂直向左预测指令。
较佳地,该装置还包括:
水平向上预测模块,用于接收预测模式判决模块发送的水平向上预测指令,根据如下预测公式对待预测块进行水平向上模式预测:
Pre_Pix[0][0]=(P_I+P_J+1)/2;
和/或Pre_Pix[2][0]=(P_K+P_L+1)/2;
和/或Pre_ix[0][1]=(P_I+2P_J+P_K+2)/4;
和/或Pre_Pix[2][1]=(P_K+2P_L+P_L+2)/4;
和/或Pre_Pix[0][2]=(P_I+3P_J+3P_K+P_L+4)/8;
和/或Pre_Pix[1][2]=(P_J+3P_K+4P_L+4)/8;
和/或Pre_Pix[2][2]=(P_K+7P_L+4)/8;
和/或Pre_Pix[0][3]=(P_I+4P_J+6P_K+5P_L+8)/16;
和/或Pre_Pix[1][3]=(P_J+4P_K+11P_L+8)/16;
和/或Pre_Pix[2][3]=(P_K+15P_L+8)/16;
和/或Pre_Pix[1][0]=(P_J+P_K+1)/2;
和/或Pre_Pix[1][1]=(P_J+2P_K+P_L+2)/4;
和/或Pre_Pix[3][2]=Pre_Pix[3][3]=Pre_Pix[3][0]=Pre_Pix[3][1]=P_L;
其中P_I、P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值;
所述预测模式判决模块,判断当待预测块需要进行水平向上模式预测时,若与待预测块相邻的左块已经完成重构,则向水平向上预测模块发送水平向上预测指令。
由上述的技术方案可见,本发明的这种判断若待预测块需要进行垂直模式预测,且与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测的方法及装置,因充分利用了像素之间的距离关系,提高了帧内预测的准确度,进而提高了编码效率。
附图说明
图1为图1为4×4块模式的9种方向预测模式示意图;
图2为现有对4×4块中的像素进行预测的参考像素示意图;
图3为本发明实施例的帧内预测方法中垂直预测模式下的预测方法示意图;
图4为本发明实施例的帧内预测方法中水平预测模式下的预测方法示意图;
图5为本发明实施例的帧内预测装置结构图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
本发明实施例主要是当待预测块需要进行不同模式的预测时,若满足预测所需的条件,则利用待预测块中待预测像素之间的空间位置关系,对待预测块中的待预测像素进行预测,从而提高帧内预测的准确度,进而提高编码效率。
下面将以4×4块模式下的帧内预测为例,具体介绍本发明实施例的帧内预测方法。
对于垂直模式(mode 0),如图3所示,当与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测。
具体公式为:Pre_Pix[i][j]=(&P_A)[j]+Weight_v[i][j],i,j=0、1、2、3。
其中Pre_Pix[i][j]表示待预测像素的预测值,(&P_A)[j]表示根据j的值,按水平方向取上块中参考像素的值,Weight_v[i][j]表示待预测像素在垂直方向的距离矩阵;其中i根据待预测像素的垂直坐标取值,j根据待预测像素的水平坐标取值。
Weight_v[i][j]由公式Weight_v[i][j]=((&P_I)[i]-P_Q)>>(j+1)计算得到,其中(&P_I)[i]表示根据i的值,按垂直方向取左块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
例如像素点a的坐标为(0,0),那么其预测值Pre_Pix[0][0]=(&P_A)[0]+Weight_v[0][0],即Pre_Pix[0][0]=P_A+((P_I-P_Q)>>1)。
c点的坐标为(2,0),那么其预测值Pre_Pix[0][2]=(&P_A)[2]+Weight_v[0][2],即Pre_Pix[0][2]=P_C+((P_I-P_Q)>>3)。
e点的坐标为(0,1),那么其预测值Pre_Pix[1][0]=(&P_A)[0]+Weight_v[1][0],即Pre_Pix[1][0]=P_A+((P_J-P_Q)>>1)。
对于水平模式(mode 1),如图4所示,与垂直模式类似,若待预测块需要进行水平模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测。
具体公式为:Pre_Pix[j][i]=(&P_I)[j]+Weight_h[j][i],i,j=0、1、2、3。
其中Pre_Pix[j][i]表示待预测像素的预测值,(&P_I)[j]表示根据j的值,按垂直方向取左块中参考像素的值,Weight_h[j][i]表示待预测像素在水平方向的距离矩阵;其中,j根据待预测像素的垂直坐标取值,i根据待预测像素的水平坐标取值。
Weight_h[j][i]由公式Weight_h[j][i]=((&P_A)[i]-P_Q)>>(j+1)计算得到,其中(&P_A)[i]表示根据i的值,按水平方向取上块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
例如像素点a的坐标为(0,0),那么其预测值Pre_Pix[0][0]=(&P_I)[0]+Weight_h[0][0],即Pre_Pix[0][0]=P_I+((P_A-P_Q)>>1)。
c点的坐标为(2,0),那么其预测值Pre_Pix[0][2]=(&P_I)[0]+Weight_h[0][2],即Pre_Pix[0][2]=P_I+((P_C-P_Q)>>1)。
e点的坐标为(0,1),那么其预测值Pre_Pix[1][0]=(&P_I)[1]+Weight_h[1][0],即Pre_Pix[1][0]=P_J+((P_A-P_Q)>>2)。
对于对角线向左模式,当与待预测块相邻的左块、上块和上右块已经完成重构,则可利用如下预测公式对待预测块进行对角线向左模式预测:
Pre_Pix[0][0]=(P_B+P_J+1)/2;
Pre_Pix[0][1]=(4P_C+2P_K+3)/6;
Pre_Pix[1][0]=(2P_C+4P_K+3)/6;
Pre_Pix[0][2]=(3_P_D+P_L+2)/4;
Pre_Pix[2][0]=(P_D+3P_L+2)/4;
Pre_Pix[1][1]=(P_D+P_L+1)/2;
Pre_Pix[0][3]=(8P_E+2P_L+5)/10;
Pre_Pix[3][0]=(2P_E+8P_L+5)/10;
Pre_Pix[2][3]=(8P_G+6P_L+7)/14;
Pre_Pix[3][2]=(6P_G+8P_L+7)/14;
Pre_Pix[3][3]=(P_G+P_L+1)/2;
Pre_Pix[2][2]=(P_F+P_L+1)/2;
Pre_Pix[2][1]=(4P_E+6P_L+5)/10;
Pre_Pix[1][2]=(6P_E+4P_L+5)/10;
Pre_Pix[1][3]=(4P_F+2P_L+3)/6;
Pre_Pix[3][1]=(2P_F+4P_L+3)/6;
其中P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G为所述上右块中与待预测块相邻的像素重构后的值;P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值。
对于垂直向左模式,当与待预测块相邻的上块和上右块已经完成重构,则利用如下预测公式对待预测块进行垂直向左模式预测:
Pre_Pix[0][0]=(P_A+P_B+1)/2;
Pre_Pix[0][1]=(P_B+P_C+1)/2;
Pre_Pix[0][2]=(P_C+P_D+1)/2;
Pre_Pix[0][3]=(P_D+P_E+1)/2;
Pre_Pix[1][0]=(P_A+2P_B+P_C+2)/4;
Pre_Pix[1][1]=(P_B+2P_C+P_D+2)/4;
Pre_Pix[1][2]=(P_C+2P_D+P_E+2)/4;
Pre_Pix[1][3]=(P_D+2P_E+P_F+2)/4;
Pre_Pix[2][0]=(P_A+3P_B+3P_C+P_D+4)/8;
Pre_Pix[2][1]=(P_B+3P_C+3P_D+P_E+4)/8;
Pre_Pix[2][2]=(P_C+3P_D+3P_E+P_F+4)/8;
Pre_Pix[2][3]=(P_D+3P_E+3P_F+P_G+4)/8;
Pre_Pix[3][0]=(P_A+4P_B+6P_C+4P_D+P_E+8)/16;
Pre_Pix[3][1]=(P_B+4P_C+6P_D+4P_E+P_F+8)/16;
Pre_Pix[3][2]=(P_C+4P_D+6P_E+4P_F+P_G+8)/16;
Pre_Pix[3][3]=(P_D+4P_E+6P_F+4P_G+P_H+8)/16。
其中P_A、P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G、P_H为所述上右块中与待预测块相邻的像素重构后的值。
对于水平向上模式,当与待预测块相邻的左块已经完成重构,则利用如下预测公式对待预测块进行水平向上模式预测:
Pre_Pix[0][0]=(P_I+P_J+1)/2;
Pre_Pix[2][0]=(P_K+P_L+1)/2;
Pre_Pix[0][1]=(P_I+2P_J+P_K+2)/4;
Pre_Pix[2][1]=(P_K+2P_L+P_L+2)/4;
Pre_Pix[0][2]=(P_I+3P_J+3P_K+P_L+4)/8;
Pre_Pix[1][2]=(P_J+3P_K+4P_L+4)/8;
Pre_Pix[2][2]=(P_K+7P_L+4)/8;
Pre_Pix[0][3]=(P_I+4P_J+6P_K+5P_L+8)/16;
Pre_Pix[1][3]=(P_J+4P_K+11P_L+8)/16;
Pre_Pix[2][3]=(P_K+15P_L+8)/16;
Pre_Pix[1][0]=(P_J+P_K+1)/2;
Pre_Pix[1][1]=(P_J+2P_K+P_L+2)/4;
Pre_Pix[3][2]=Pre_Pix[3][3]=Pre_Pix[3][0]=Pre_Pix[3][1]=P_L;
其中P_I、P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值。
当然,在以上所介绍的预测公式中,可以采用其中部分公式也可采用全部公式,可以依照具体需求而定。
上面介绍了本发明实施例的帧内预测方法,下面将详细介绍本发明实施例的帧内预测装置。
图5为本发明实施例的帧内预测装置结构图;如图5所示,该装置包括预测模式判决模块501和垂直预测模块502。
预测模式判决模块501,用于判断当待预测块需要进行垂直模式预测时,若与待预测块相邻的左块和上块已经完成重构,则向垂直预测模块发送垂直预测指令。
垂直预测模块502用于接收预测模式判决模块501发送的垂直预测指令,根据所述左块和上块中与待预测块相邻的像素对待预测块进行垂直模式预测。
具体来说,垂直预测模块502根据公式Pre_Pix[i][j]=(&P_A)[j]+Weight_v[i][j],i,j=0、1、2、3对待预测块中的待预测像素进行垂直模式预测。
其中Pre_Pix[i][j]表示待预测像素的预测值,(&P_A)[j]表示根据j的值,按水平方向取上块中参考像素的值,Weight_v[i][j]表示待预测像素在垂直方向的距离矩阵;其中i根据待预测像素的垂直坐标取值,j根据待预测像素的水平坐标取值。
Weight_v[i][j]由公式Weight_v[i][j]=((&P_I)[i]-P_Q)>>(j+1)计算得到,其中(&P_I)[i]表示根据i的值,按垂直方向取左块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
较佳地,该装置还可以包括水平预测模块503。
水平预测模块503用于接收预测模式判决模块501发送的水平预测指令,根据所述左块和上块中与待预测块相邻的像素对待预测块进行水平模式预测。
相应地,预测模式判决模块501,若判断待预测块需要进行水平模式预测,且与待预测块相邻的左块和上块已经完成重构,则向水平预测模块503发送水平预测指令。
具体来说,水平预测模块503根据公式Pre_Pix[j][i]=(&P_I)[j]+Weight_h[j][i],i,j=0、1、2、3对待预测块中的待预测像素进行垂直模式预测。
其中Pre_Pix[j][i]表示待预测像素的预测值,(&P_I)[j]表示根据j的值,按垂直方向取左块中参考像素的值,Weight_h[j][i]表示待预测像素在水平方向的距离矩阵;其中,j根据待预测像素的垂直坐标取值,i根据待预测像素的水平坐标取值。
Weight_h[j][i]由公式Weight_h[j][i]=((&P_A)[i]-P_Q)>>(j+1)计算得到,其中(&P_A)[i]表示根据i的值,按水平方向取上块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
较佳地,该装置还可以包括对角线向左预测模块504。
对角线向左预测模块504用于接收预测模式判决模块501发送的对角线向左预测指令,根据如下预测公式对待预测块进行对角线向左模式预测:
Pre_Pix[0][0]=(P_B+P_J+1)/2;
Pre_Pix[0][1]=(4P_C+2P_K+3)/6;
Pre_Pix[1][0]=(2P_C+4P_K+3)/6;
Pre_Pix[0][2]=(3P_D+P_L+2)/4;
Pre_Pix[2][0]=(P_D+3P_L+2)/4;
Pre_Pix[1][1]=(P_D+P_L+1)/2;
Pre_Pix[0][3]=(8P_E+2P_L+5)/10;
Pre_Pix[3][0]=(2P_E+8P_L+5)/10;
Pre_Pix[2][3]=(8P_G+6P_L+7)/14;
Pre_Pix[3][2]=(6P_G+8P_L+7)/14;
Pre_Pix[3][3]=(P_G+P_L+1)/2;
Pre_Pix[2][2]=(P_F+P_L+1)/2;
Pre_Pix[2][1]=(4P_E+6P_L+5)/10;
Pre_Pix[1][2]=(6P_E+4P_L+5)/10;
Pre_Pix[1][3]=(4P_F+2P_L+3)/6;
Pre_Pix[3][1]=(2P_F+4P_L+3)/6;
其中P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G为所述上右块中与待预测块相邻的像素重构后的值;P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值。
相应地,预测模式判决模块501,判断当待预测块需要进行对角线向左模式预测时,若与待预测块相邻的左块、上块和上右块已经完成重构,则向对角线向左预测模块504发送对角线向左预测指令。
较佳地,该装置还可以包括垂直向左预测模块505。
垂直向左预测模块505用于接收预测模式判决模块501发送的垂直向左预测指令,根据如下预测公式对待预测块进行垂直向左模式预测:
Pre_Pix[0][0]=(P_A+P_B+1)/2;
Pre_Pix[0][1]=(P_B+P_C+1)/2;
Pre_Pix[0][2]=(P_C+P_D+1)/2;
Pre_Pix[0][3]=(P_D+P_E+1)/2;
Pre_Pix[1][0]=(P_A+2P_B+P_C+2)/4;
Pre_Pix[1][1]=(P_B+2P_C+P_D+2)/4;
Pre_Pix[1][2]=(P_C+2P_D+P_E+2)/4;
Pre_Pix[1][3]=(P_D+2P_E+P_F+2)/4;
Pre_Pix[2][0]=(P_A+3P_B+3P_C+P_D+4)/8;
Pre_Pix[2][1]=(P_B+3P_C+3P_D+P_E+4)/8;
Pre_Pix[2][2]=(P_C+3P_D+3P_E+P_F+4)/8;
Pre_Pix[2][3]=(P_D+3P_E+3P_F+P_G+4)/8;
Pre_Pix[3][0]=(P_A+4P_B+6P_C+4P_D+P_E+8)/16;
Pre_Pix[3][1]=(P_B+4P_C+6P_D+4P_E+P_F+8)/16;
Pre_Pix[3][2]=(P_C+4P_D+6P_E+4P_F+P_G+8)/16;
Pre_Pix[3][3]=(P_D+4P_E+6P_F+4P_G+P_H+8)/16;
其中P_A、P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G、P_H为所述上右块中与待预测块相邻的像素重构后的值。
相应地,预测模式判决模块501,判断当待预测块需要进行垂直向左模式预测时,若与待预测块相邻的上块和上右块已经完成重构,则向垂直向左预测模块505发送垂直向左预测指令。
较佳地,该装置还包括水平向上预测模块506。
水平向上预测模块506,用于接收预测模式判决模块501发送的水平向上预测指令,根据如下预测公式对待预测块进行水平向上模式预测:
Pre_Pix[0][0]=(P_I+P_J+1)/2;
Pre_Pix[2][0]=(P_K+P_L+1)/2;
Pre_Pix[0][1]=(P_I+2P_J+P_K+2)/4;
Pre_Pix[2][1]=(P_K+2P_L+P_L+2)/4;
Pre_Pix[0][2]=(P_I+3P_J+3P_K+P_L+4)/8;
Pre_Pix[1][2]=(P_J+3P_K+4P_L+4)/8;
Pre_Pix[2][2]=(P_K+7P_L+4)/8;
Pre_Pix[0][3]=(P_I+4P_J+6P_K+5P_L+8)/16;
Pre_Pix[1][3]=(P_J+4P_K+11P_L+8)/16;
Pre_Pix[2][3]=(P_K+15P_L+8)/16;
Pre_Pix[1][0]=(P_J+P_K+1)/2;
Pre_Pix[1][1]=(P_J+2P_K+P_L+2)/4;
Pre_Pix[3][2]=Pre_Pix[3][3]=Pre_Pix[3][0]=Pre_Pix[3][1]=P_L;
其中P_I、P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值;
相应地,所述预测模式判决模块501,判断当待预测块需要进行水平向上模式预测时,若与待预测块相邻的左块已经完成重构,则向水平向上预测模块506发送水平向上预测指令。
由上述的实施例可见,本发明的这种判断当待预测块需要进行垂直模式预测时,若与待预测块相邻的左块和上块已经完成重构,则根据所述左块和上块中与待预测块相邻的像素对待预测块进行垂直模式预测;当待预测块需要进行水平模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测的方法及装置,因为充分利用了像素之间的距离关系,提高了帧内预测的准确度,进而提高了编码效率。
所应理解的是,以上所述仅为本发明的较佳实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种帧内预测方法,其特征是,该方法包括:
当待预测块需要进行垂直模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测。
2.如权利要求1所述的帧内预测方法,其特征是,所述根据左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测,包括:
根据公式Pre_Pix[i][j]=(&P_A)[j]+Weight_v[i][j],i,j=0、1、2、3对待预测块中的每个待预测像素进行垂直模式预测;
其中Pre_Pix[i][j]表示待预测像素的预测值,(&P_A)[j]表示根据j的值,按水平方向取上块中参考像素的值,Weight_v[i][j]表示待预测像素在垂直方向的距离矩阵;其中i根据待预测像素的垂直坐标取值,j根据待预测像素的水平坐标取值;
Weight_v[i][j]由公式Weight_v[i][j]=((&P_I)[i]P_Q)>>(j+1)计算得到,其中(&P_I)[i]表示根据i的值,按垂直方向取左块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
3.如权利要求1所述的帧内预测方法,其特征是,该方法进一步包括:
当待预测块需要进行水平模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测。
4.如权利要求3所述的帧内预测方法,其特征是,所述根据左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测,包括:
根据公式Pre_Pix[j][i]=(&P_I)[j]+Weight_h[j][i],i,j=0、1、2、3对待预测块中的每个待预测像素进行垂直模式预测;
其中Pre_Pix[j][i]表示待预测像素的预测值,(&P_I)[j]表示根据j的值,按垂直方向取左块中参考像素的值,Weight_h[j][i]表示待预测像素在水平方向的距离矩阵;其中,j根据待预测像素的垂直坐标取值,i根据待预测像素的水平坐标取值;
Weight_h[j][i]由公式Weight_h[j][i]=((&P_A)[i]-P_Q)>>(j+1)计算得到,其中(&P_A)[i]表示根据i的值,按水平方向取上块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
5.如权利要求1所述的帧内预测方法,其特征是,该方法进一步包括:
当待预测块需要进行对角线向左模式预测时,若与待预测块相邻的左块、上块和上右块已经完成重构,则利用如下预测公式对待预测块进行对角线向左模式预测:
Pre_Pix[0][0]=(P_B+P_J+1)/2;
和/或Pre_Pix[0][1]=(4P_C+2P_K+3)/6;
和/或Pre_Pix[1][0]=(2P_C+4P_K+3)/6;
和/或Pre_Pix[0][2]=(3P_D+P_L+2)/4;
和/或Pre_Pix[2][0]=(P_D+3P_L+2)/4;
和/或Pre_Pix[1][1]=(P_D+P_L+1)/2;
和/或Pre_Pix[0][3]=(8P_E+2P_L+5)/10;
和/或Pre_Pix[3][0]=(2P_E+8P_L+5)/10;
和/或Pre_Pix[2][3]=(8P_G+6P_L+7)/14;
和/或Pre_Pix[3][2]=(6P_G+8P_L+7)/14;
和/或Pre_Pix[3][3]=(P_G+P_L+1)/2;
和/或Pre_Pix[2][2]=(P_F+P_L+1)/2;
和/或Pre_Pix[2][1]=(4P_E+6P_L+5)/10;
和/或Pre_Pix[1][2]=(6P_E+4P_L+5)/10;
和/或Pre_Pix[1][3]=(4P_F+2P_L+3)/6;
和/或Pre_Pix[3][1]=(2P_F+4P_L+3)/6;
其中P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G为所述上右块中与待预测块相邻的像素重构后的值;P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值。
6.如权利要求1所述的帧内预测方法,其特征是,该方法进一步包括:
当待预测块需要进行垂直向左模式预测时,若与待预测块相邻的上块和上右块已经完成重构,则利用如下预测公式对待预测块进行垂直向左模式预测:
Pre_Pix[0][0]=(P_A+P_B+1)/2;
和/或Pre_Pix[0][1]=(P_B+P_C+1)/2;
和/或Pre_Pix[0][2]=(P_C+P_D+1)/2;
和/或Pre_Pix[0][3]=(P_D+P_E+1)/2;
和/或Pre_Pix[1][0]=(P_A+2P_B+P_C+2)/4;
和/或Pre_Pix[1][1]=(P_B+2P_C+P_D+2)/4;
和/或Pre_Pix[1][2]=(P_C+2P_D+P_E+2)/4;
和/或Pre_Pix[1][3]=(P_D+2P_E+P_F+2)/4;
和/或Pre_Pix[2][0]=(P_A+3P_B+3P_C+P_D+4)/8;
和/或Pre_Pix[2][1]=(P_B+3P_C+3P_D+P_E+4)/8;
和/或Pre_Pix[2][2]=(P_C+3P_D+3P_E+P_F+4)/8;
和/或Pre_Pix[2][3]=(P_D+3P_E+3P_F+P_G+4)/8;
和/或Pre_Pix[3][0]=(P_A+4P_B+6P_C+4P_D+P_E+8)/16;
和/或Pre_Pix[3][1]=(P_B+4P_C+6P_D+4P_E+P_F+8)/16;
和/或Pre_Pix[3][2]=(P_C+4P_D+6P_E+4P_F+P_G+8)/16;
和/或Pre_Pix[3][3]=(P_D+4P_E+6P_F+4P_G+P_H+8)/16;
其中P_A、P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G、P_H为所述上右块中与待预测块相邻的像素重构后的值。
7.如权利要求1所述的帧内预测方法,其特征是,该方法进一步包括:
当待预测块需要进行水平向上模式预测时,若与待预测块相邻的左块已经完成重构,则利用如下预测公式对待预测块进行水平向上模式预测:
Pre_Pix[0][0]=(P_I+P_J+1)/2;
和/或Pre_Pix[2][0]=(P_K+P_L+1)/2;
和/或Pre_Pix[0][1]=(P_I+2P_J+P_K+2)/4;
和/或Pre_Pix[2][1]=(P_K+2P_L+P_L+2)/4;
和/或Pre_Pix[0][2]=(P_I+3P_J+3P_K+P_L+4)/8;
和/或Pre_Pix[1][2]=(P_J+3P_K+4P_L+4)/8;
和/或Pre_Pix[2][2]=(P_K+7P_L+4)/8;
和/或Pre_Pix[0][3]=(P_I+4P_J+6P_K+5P_L+8)/16;
和/或Pre_Pix[1][3]=(P_J+4P_K+11P_L+8)/16;
和/或Pre_Pix[2][3]=(P_K+15P_L+8)/16;
和/或Pre_Pix[1][0]=(P_J+P_K+1)/2;
和/或Pre_Pix[1][1]=(P_J+2P_K+P_L+2)/4;
和/或Pre_Pix[3][2]=Pre_Pix[3][3]=Pre_Pix[3][0]=Pre_Pix[3][1]=P_L;
其中P_I、P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值。
8.一种帧内预测装置,其特征是,该装置包括:
预测模式判决模块,用于判断当待预测块需要进行垂直模式预测,若与待预测块相邻的左块、上块和上左块已经完成重构,则向垂直预测模块发送垂直预测指令;
垂直预测模块,用于接收预测模式判决模块发送的垂直预测指令,根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行垂直模式预测。
9.如权利要求8所述的帧内预测装置,其特征是,所述垂直预测模块,根据公式Pre_Pix[i][j]=(&P_A)[j]+Weight_v[i][j],i,j=0、1、2、3对待预测块中的待预测像素进行垂直模式预测;
其中Pre_Pix[i][j]表示待预测像素的预测值,(&P_A)[j]表示根据j的值,按水平方向取上块中参考像素的值,Weight_v[i][j]表示待预测像素在垂直方向的距离矩阵;其中i根据待预测像素的垂直坐标取值,j根据待预测像素的水平坐标取值;
Weight_v[i][j]由公式Weight_v[i][j]=((&P_I)[i]-P_Q)>>(j+1)计算得到,其中(&P_I)[i]表示根据i的值,按垂直方向取左块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
10.如权利要求8所述的帧内预测装置,其特征是,该装置还包括:
水平预测模块,用于接收预测模式判决模块发送的水平预测指令,根据所述左块、上块和上左块中与待预测块相邻的像素对待预测块进行水平模式预测;
所述预测模式判决模块,判断当待预测块需要进行水平模式预测时,若与待预测块相邻的左块、上块和上左块已经完成重构,则向水平预测模块发送水平预测指令。
11.如权利要求10所述的帧内预测装置,其特征是,所述水平预测模块,根据公式Pre_Pix[j][i]=(&P_I)[j]+Weight_h[j][i],i,j=0、1、2、3对待预测块中的待预测像素进行垂直模式预测;
其中Pre_ix[j][i]表示待预测像素的预测值,(&P_I)[j]表示根据j的值,按垂直方向取左块中参考像素的值,Weight_h[j][i]表示待预测像素在水平方向的距离矩阵;其中,j根据待预测像素的垂直坐标取值,i根据待预测像素的水平坐标取值;
Weight_h[j][i]由公式Weight_h[j][i]=((&P_A)[i]-P_Q)>>(j+1)计算得到,其中(&P_A)[i]表示根据i的值,按水平方向取上块中参考像素的值,P_Q为待预测块的上左块中右下角的像素值。
12.如权利要求8所述的帧内预测装置,其特征是,该装置还包括:
对角线向左预测模块,用于接收预测模式判决模块发送的对角线向左预测指令,根据如下预测公式对待预测块进行对角线向左模式预测:
Pre_Pix[0][0]=(P_B+P_J+1)/2;
和/或Pre_Pix[0][1]=(4P_C+2P_K+3)/6;
和/或Pre_Pix[1][0]=(2P_C+4P_K+3)/6;
和/或Pre_Pix[0][2]=(3P_D+P_L+2)/4;
和/或Pre_Pix[2][0]=(P_D+3P_L+2)/4;
和/或Pre_Pix[1][1]=(P_D+P_L+1)/2;
和/或Pre_Pix[0][3]=(8P_E+2P_L+5)/10;
和/或Pre_Pix[3][0]=(2P_E+8P_L+5)/1 0;
和/或Pre_Pix[2][3]=(8P_G+6P_L+7)/14;
和/或Pre_Pix[3][2]=(6P_G+8P_L+7)/14;
和/或Pre_Pix[3][3]=(P_G+P_L+1)/2;
和/或Pre_Pix[2][2]=(P_F+P_L+1)/2;
和/或Pre_Pix[2][1]=(4P_E+6P_L+5)/10;
和/或Pre_Pix[1][2]=(6P_E+4P_L+5)/10;
和/或Pre_Pix[1][3]=(4P_F+2P_L+3)/6;
和/或Pre_Pix[3][1]=(2P_F+4P_L+3)/6;
其中P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G为所述上右块中与待预测块相邻的像素重构后的值;P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值;
所述预测模式判决模块,判断当待预测块需要进行对角线向左模式预测时,若与待预测块相邻的左块、上块和上右块已经完成重构,则向对角线向左预测模块发送对角线向左预测指令。
13.如权利要求8所述的帧内预测装置,其特征是,该装置还包括:
垂直向左预测模块,用于接收预测模式判决模块发送的垂直向左预测指令,根据如下预测公式对待预测块进行垂直向左模式预测:
Pre_Pix[0][0]=(P_A+P_B+1)/2;
和/或Pre_Pix[0][1]=(P_B+P_C+1)/2;
和/或Pre_Pix[0][2]=(P_C+P_D+1)/2;
和/或Pre_Pix[0][3]=(P_D+P_E+1)/2;
和/或Pre_Pix[1][0]=(P_A+2P_B+P_C+2)/4;
和/或Pre_Pix[1][1]=(P_B+2P_C+P_D+2)/4;
和/或Pre_Pix[1][2]=(P_C+2P_D+P_E+2)/4;
和/或Pre_Pix[1][3]=(P_D+2P_E+P_F+2)/4;
和/或Pre_Pix[2][0]=(P_A+3P_B+3P_C+P_D+4)/8;
和/或Pre_Pix[2][1]=(P_B+3P_C+3P_D+P_E+4)/8;
和/或Pre_Pix[2][2]=(P_C+3P_D+3P_E+P_F+4)/8;
和/或Pre_Pix[2][3]=(P_D+3P_E+3P_F+P_G+4)/8;
和/或Pre_Pix[3][0]=(P_A+4P_B+6P_C+4P_D+P_E+8)/16;
和/或Pre_Pix[3][1]=(P_B+4P_C+6P_D+4P_E+P_F+8)/16;
和/或Pre_Pix[3][2]=(P_C+4P_D+6P_E+4P_F+P_G+8)/16;
和/或Pre_Pix[3][3]=(P_D+4P_E+6P_F+4P_G+P_H+8)/16;
其中P_A、P_B、P_C、P_D为所述上块中与待预测块相邻的像素重构后的值;P_E、P_F、P_G、P_H为所述上右块中与待预测块相邻的像素重构后的值;
所述预测模式判决模块,判断当待预测块需要进行垂直向左模式预测时,若与待预测块相邻的上块和上右块已经完成重构,则向垂直向左预测模块发送垂直向左预测指令。
14.如权利要求8所述的帧内预测装置,其特征是,该装置还包括:
水平向上预测模块,用于接收预测模式判决模块发送的水平向上预测指令,根据如下预测公式对待预测块进行水平向上模式预测:
Pre_Pix[0][0]=(P_I+P_J+1)/2;
和/或Pre Pix[2][0]=(P_K+P_L+1)/2;
和/或Pre_Pix[0][1]=(P_I+2P_J+P_K+2)/4;
和/或Pre_Pix[2][1]=(P_K+2P_L+P_L+2)/4;
和/或Pre_Pix[0][2]=(P_I+3P_J+3P_K+P_L+4)/8;
和/或Pre_Pix[1][2]=(P_J+3P_K+4P_L+4)/8;
和/或Pre_Pix[2][2]=(P_K+7P_L+4)/8;
和/或Pre_Pix[0][3]=(P_I+4P_J+6P_K+5P_L+8)/16;
和/或Pre_Pix[1][3]=(P_J+4P_K+11P_L+8)/16;
和/或Pre_Pix[2][3]=(P_K+15P_L+8)/16;
和/或Pre_Pix[1][0]=(P_J+P_K+1)/2;
和/或Pre_Pix[1][1]=(P_J+2P_K+P_L+2)/4;
和/或Pre_Pix[3][2]=Pre_Pix[3][3]=Pre_Pix[3][0]=Pre_Pix[3][1]=P_L;
其中P_I、P_L、P_J、P_K为所述左块中与待预测块相邻的像素重构后的值;
所述预测模式判决模块,判断当待预测块需要进行水平向上模式预测时,若与待预测块相邻的左块已经完成重构,则向水平向上预测模块发送水平向上预测指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810056207 CN101217669A (zh) | 2008-01-15 | 2008-01-15 | 帧内预测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810056207 CN101217669A (zh) | 2008-01-15 | 2008-01-15 | 帧内预测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101217669A true CN101217669A (zh) | 2008-07-09 |
Family
ID=39624022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810056207 Pending CN101217669A (zh) | 2008-01-15 | 2008-01-15 | 帧内预测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101217669A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101867814A (zh) * | 2009-04-14 | 2010-10-20 | 索尼公司 | 图像编码设备、图像编码方法和计算机程序 |
CN101877792A (zh) * | 2010-06-17 | 2010-11-03 | 北京中星微电子有限公司 | 帧内模式预测方法与装置、编码器 |
CN101895751A (zh) * | 2010-07-06 | 2010-11-24 | 北京大学 | 帧内预测的方法及装置、基于帧内预测的编/解码方法及*** |
CN101350927B (zh) * | 2008-07-29 | 2011-07-13 | 北京中星微电子有限公司 | 帧内预测选择最优预测模式的方法及装置 |
CN102186086A (zh) * | 2011-06-22 | 2011-09-14 | 武汉大学 | 一种基于avs的帧内预测方法 |
CN103152577A (zh) * | 2009-08-17 | 2013-06-12 | 三星电子株式会社 | 对视频编码的方法和设备以及对视频解码的方法和设备 |
CN103826134A (zh) * | 2014-03-21 | 2014-05-28 | 华为技术有限公司 | 图像帧内预测方法及装置 |
CN104104959A (zh) * | 2013-04-10 | 2014-10-15 | 乐金电子(中国)研究开发中心有限公司 | 深度图像帧内预测方法及装置 |
CN104954805A (zh) * | 2011-06-28 | 2015-09-30 | 三星电子株式会社 | 用于使用帧内预测进行图像编码和解码的方法和设备 |
CN105430402A (zh) * | 2010-04-12 | 2016-03-23 | 松下电器(美国)知识产权公司 | 图像编码方法以及图像编码装置 |
CN106658013A (zh) * | 2011-06-24 | 2017-05-10 | 三菱电机株式会社 | 图像编码装置和方法、图像解码装置和方法以及记录介质 |
CN110248194A (zh) * | 2019-06-28 | 2019-09-17 | 广东中星微电子有限公司 | 一种帧内角度预测方法及设备 |
-
2008
- 2008-01-15 CN CN 200810056207 patent/CN101217669A/zh active Pending
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101350927B (zh) * | 2008-07-29 | 2011-07-13 | 北京中星微电子有限公司 | 帧内预测选择最优预测模式的方法及装置 |
CN101867814A (zh) * | 2009-04-14 | 2010-10-20 | 索尼公司 | 图像编码设备、图像编码方法和计算机程序 |
CN101867814B (zh) * | 2009-04-14 | 2013-03-27 | 索尼公司 | 图像编码设备和图像编码方法 |
US9313502B2 (en) | 2009-08-17 | 2016-04-12 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video, and method and apparatus for decoding video |
US9313503B2 (en) | 2009-08-17 | 2016-04-12 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video, and method and apparatus for decoding video |
US9392283B2 (en) | 2009-08-17 | 2016-07-12 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video, and method and apparatus for decoding video |
CN103152577A (zh) * | 2009-08-17 | 2013-06-12 | 三星电子株式会社 | 对视频编码的方法和设备以及对视频解码的方法和设备 |
US9369715B2 (en) | 2009-08-17 | 2016-06-14 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video, and method and apparatus for decoding video |
CN103152577B (zh) * | 2009-08-17 | 2016-05-25 | 三星电子株式会社 | 对视频编码的方法和设备以及对视频解码的方法和设备 |
US9319686B2 (en) | 2009-08-17 | 2016-04-19 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video, and method and apparatus for decoding video |
US9277224B2 (en) | 2009-08-17 | 2016-03-01 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding video, and method and apparatus for decoding video |
CN105430402A (zh) * | 2010-04-12 | 2016-03-23 | 松下电器(美国)知识产权公司 | 图像编码方法以及图像编码装置 |
CN105430402B (zh) * | 2010-04-12 | 2018-08-03 | 太阳专利托管公司 | 图像编码方法以及图像编码装置 |
CN101877792A (zh) * | 2010-06-17 | 2010-11-03 | 北京中星微电子有限公司 | 帧内模式预测方法与装置、编码器 |
CN101895751A (zh) * | 2010-07-06 | 2010-11-24 | 北京大学 | 帧内预测的方法及装置、基于帧内预测的编/解码方法及*** |
CN102186086A (zh) * | 2011-06-22 | 2011-09-14 | 武汉大学 | 一种基于avs的帧内预测方法 |
CN106658013A (zh) * | 2011-06-24 | 2017-05-10 | 三菱电机株式会社 | 图像编码装置和方法、图像解码装置和方法以及记录介质 |
CN106658013B (zh) * | 2011-06-24 | 2019-07-19 | 三菱电机株式会社 | 图像编码装置和方法、图像解码装置和方法以及记录介质 |
US10075730B2 (en) | 2011-06-28 | 2018-09-11 | Samsung Electronics Co., Ltd. | Method and apparatus for image encoding and decoding using intra prediction |
US10085037B2 (en) | 2011-06-28 | 2018-09-25 | Samsung Electronics Co., Ltd. | Method and apparatus for image encoding and decoding using intra prediction |
US9813727B2 (en) | 2011-06-28 | 2017-11-07 | Samsung Electronics Co., Ltd. | Method and apparatus for image encoding and decoding using intra prediction |
CN104954805A (zh) * | 2011-06-28 | 2015-09-30 | 三星电子株式会社 | 用于使用帧内预测进行图像编码和解码的方法和设备 |
US10045042B2 (en) | 2011-06-28 | 2018-08-07 | Samsung Electronics Co., Ltd. | Method and apparatus for image encoding and decoding using intra prediction |
US10045043B2 (en) | 2011-06-28 | 2018-08-07 | Samsung Electronics Co., Ltd. | Method and apparatus for image encoding and decoding using intra prediction |
US10506250B2 (en) | 2011-06-28 | 2019-12-10 | Samsung Electronics Co., Ltd. | Method and apparatus for image encoding and decoding using intra prediction |
US9788006B2 (en) | 2011-06-28 | 2017-10-10 | Samsung Electronics Co., Ltd. | Method and apparatus for image encoding and decoding using intra prediction |
CN104954805B (zh) * | 2011-06-28 | 2019-01-04 | 三星电子株式会社 | 用于使用帧内预测进行图像编码和解码的方法和设备 |
CN104104959B (zh) * | 2013-04-10 | 2018-11-20 | 乐金电子(中国)研究开发中心有限公司 | 深度图像帧内预测方法及装置 |
CN104104959A (zh) * | 2013-04-10 | 2014-10-15 | 乐金电子(中国)研究开发中心有限公司 | 深度图像帧内预测方法及装置 |
CN103826134A (zh) * | 2014-03-21 | 2014-05-28 | 华为技术有限公司 | 图像帧内预测方法及装置 |
CN110248194A (zh) * | 2019-06-28 | 2019-09-17 | 广东中星微电子有限公司 | 一种帧内角度预测方法及设备 |
CN110248194B (zh) * | 2019-06-28 | 2022-07-29 | 广东中星微电子有限公司 | 一种帧内角度预测方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101217669A (zh) | 帧内预测方法及装置 | |
CN106851293B (zh) | 用于帧内预测的解码图像的装置 | |
CN103039073B (zh) | 编码/解码高分辨率图像的方法和执行该方法的装置 | |
CN103069802B (zh) | 重构图像的当前块的方法和对应的编码方法、对应的装置 | |
CN103561270B (zh) | 一种用于hevc的编码控制方法及装置 | |
CN103067704B (zh) | 一种基于编码单元层次提前跳过的视频编码方法和*** | |
CN105120290B (zh) | 一种深度视频快速编码方法 | |
CN109146118B (zh) | 一种基于优化算法的预制构件堆场优化***及其优化方法 | |
CN1737295A (zh) | 仿真木纹地板及压贴工艺和设备 | |
CN105898332B (zh) | 针对3d-hevc编码标准的快速深度图帧内模式判决方法 | |
CN105306956B (zh) | 一种提高hevc编码器离散余弦变换处理速度的方法 | |
CN101309408A (zh) | 一种亮度块帧内预测模式选择方法 | |
CN107600314B (zh) | 薄板多层上建整体吊装方法 | |
CN101431675A (zh) | 一种像素运动估计方法和装置 | |
CN104244002A (zh) | 一种视频编/解码中运动信息的获取方法及装置 | |
CN104284186A (zh) | 一种适用于hevc标准帧内预测模式判决过程的快速算法 | |
CN108174204A (zh) | 一种基于决策树的帧间快速模式选择方法 | |
CN103888770B (zh) | 一种基于数据挖掘的高效自适应的视频转码*** | |
CN109510987A (zh) | 编码树节点划分方式的确定方法、装置及编码设备 | |
CN102883164B (zh) | 一种增强层块单元的编解码方法、对应的装置 | |
CN107391619A (zh) | 针对不完整异构数据的自适应哈希方法及装置 | |
CN101895761A (zh) | 一种快速帧内预测算法 | |
CN105712206A (zh) | 集装箱吊具位姿检测***及方法 | |
CN112699452A (zh) | 一种提高大面积地坪平整度的施工方法 | |
CN100565393C (zh) | 一种自动化码头设备的全仿真模拟***及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080709 |