CN101827270A - 一种帧内预测中获取像素预测值的方法 - Google Patents
一种帧内预测中获取像素预测值的方法 Download PDFInfo
- Publication number
- CN101827270A CN101827270A CN 201010177179 CN201010177179A CN101827270A CN 101827270 A CN101827270 A CN 101827270A CN 201010177179 CN201010177179 CN 201010177179 CN 201010177179 A CN201010177179 A CN 201010177179A CN 101827270 A CN101827270 A CN 101827270A
- Authority
- CN
- China
- Prior art keywords
- pixel
- predictors
- predicted
- current block
- prediction direction
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000006467 substitution reaction Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 4
- 238000012512 characterization method Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 9
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 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
本发明公开了一种帧内预测中获取像素预测值的方法,通过引入沿在0-180°之间的任意方向上直线,结合该直线所确定的相邻像素从而对当前块进行多个任意方向上的帧内预测,最后结合率失真代价选择出最小率失真代价对应的那个方向下的像素预测值作为最后确定的像素预测值。由于预测过程预测方向是0-180°之间任意的方向,通过控制精度,精度越小,选取到的预测方向的数量越大,相应地,包括到帧内预测时最准确的预测方向的概率就大,最后确定到最接近真实块的像素预测值的概率也就大,从而能提高预测的精确性。
Description
技术领域
本发明涉及帧内预测,特别是涉及一种帧内预测中获取像素预测值的方法。
背景技术
现在H.264视频编码标准中,像素值的预测使用当前块的相邻块中的可用像素来进行帧内预测。从这些相邻行和相邻列像素中,可以选择不同方向帧内预测模式或DC预测模式。H.264标准包含了基于规格为4像素×4像素或8像素×8像素的块/子块的9种帧内预测模式,和规格为16像素×16像素的宏块的4种帧内预测模式。
图1a示出了规格为4像素×4像素的子块及其相邻块中可用的像素A-M。相邻块包括左块、上块、右上块和左上块,其中像素A-D位于相邻的上块中,像素E-H位于相邻的右上块中,像素I-L位于相邻的左块中,像素M位于相邻的左上块中。图1b示出了对4像素×4像素子块中a-p16个像素的不同方向帧内预测模式的8个预测模式方向。图1b所示的8个预测模式方向加上一个直流模式组成帧内预测的9种预测模式,图2中依次示出了9种帧内预测模式:垂直(Vertical)预测模式、水平(Horizontal)预测模式、直流(DC)预测模式、对角线左下(Diagonal Down-left)预测模式、对角线右下(Diagonal Down-right)预测模式、垂直右(Vertical-right)预测模式、水平下(Horizontal-down)预测模式、垂直左(Vertical-left)预测模式、水平上(Horizontal-up)预测模式。
帧内预测中,根据上述9种帧内预测模式,得到9种帧内预测模式分别对应的当前块中各像素的像素预测值。根据该像素预测值,则可以重构出当前块在9种帧内预测模式下分别对应的重构块,进而确定9种帧内预测模式分别对应的率失真代价Rdcost的值,选择最小率失真代价Rdcost对应的帧内预测模式为最优的模式,该模式下对应的像素预测值为最终确定的当前块中各像素点的像素预测值。
现有的帧内预测方法中9种帧内预测模式确定当前块中各像素的像素预测值时,如果预测方向正好是-90°、-76.6°、-54.2°、-35.8°、0°、35.8°、54.2°、76.6°、90°这9个角度确定的方向时,预测结果比较精确。但如果预测方向偏离了上述9个角度确定的方向,则会根据与上述9个角度确定的方向的靠近程度选择一个方向进行预测,那么预测结果的精确度就会受到影响。
发明内容
本发明所要解决的技术问题是:弥补上述现有技术的不足,提出一种帧内预测中获取像素预测值的方法,能实现在0-180°之间的任意方向上进行精确的预测。
本发明的技术问题通过以下的技术方案予以解决:
一种帧内预测中获取像素预测值的方法,包括以下步骤:
1)确定要进行帧内预测的当前块;
2)确定所述当前块的相邻块;
3)根据步骤2)中所述相邻块的情况确定所述当前块中各个像素点的像素预测值;
3-1)如果所述相邻块不存在,则确定所述当前块中各个像素点的像素预测值为一固定值;
3-2)如果所述相邻块存在,则按如下步骤确定所述当前块中各个像素点的像素预测值:
3-2-1)确定所述相邻块相邻于所述当前块、宽度为一个像素的部分,称为边界部分;
3-2-2)设定多个预测方向,所述多个预测方向遍布[0°,180°)之间;
3-2-3)沿所述步骤3-2-2)中的各个预测方向分别画一条直线穿过所述当前块中待预测的像素点,所述直线与所述步骤3-2-1)中的边界部分相交的像素点称为相交像素点;
3-2-4)根据步骤3-2-3)中的相交像素点的像素重建值确定所述步骤3-2-2)中的各个预测方向下的所述当前块中待预测的像素点的像素预测值;
3-2-5)从所述各个预测方向下的所述当前块中各个像素点的像素预测值中选择一个预测方向下的所述当前块中各个像素点的像素预测值作为所述当前块中各个像素点的像素预测值;选择方法为:根据各个方向下的像素预测值重构出各个方向对应的当前块的重构块,根据各个重构块和当前块计算各个方向下的率失真代价,所述率失真代价最小的值对应的方向下的像素预测值即为所述当前块中各个像素点的像素预测值。
本发明的技术问题通过以下进一步的技术方案予以解决:
一种帧内预测中获取像素预测值的方法,包括以下步骤:
1)确定要进行帧内预测的当前块;
2)在所述当前块中确定一个边缘穿过区域,所述边缘穿过区域将所述当前块划分为第一区域、第二区域和第三区域,所述第三区域为所述边缘穿过区域,所述第一区域和所述第二区域为所述第三区域的两侧区域;
3)取所述当前块中待预测的像素点,检测所述待预测的像素点位于的区域;
4)根据所述待预测的像素点位于的区域,按照权利要求1所述的获取像素预测值的方法,得到所述当前块中各区域内的各待预测的像素点的像素预测值。
本发明与现有技术对比的有益效果是:
本发明的帧内预测中获取像素预测值的方法,通过引入沿在0-180°之间的任意方向上直线,结合该直线所确定的相邻像素从而对当前块进行多个方向上的帧内预测,将每个待预测的像素点的像素预测值进行任意组合,最后结合率失真代价选择出最小率失真代价对应的那组像素预测值作为最后确定的像素预测值。由于预测过程预测方向是0-180°之间任意的方向,通过控制精度,精度越小,选取到的预测方向的数量越大,相应地,包括到帧内预测时最准确的预测方向的概率就大,最后确定到最接近真实块的像素预测值的概率也就大,从而能提高预测的精确性。进一步地,本发明提出一种帧内预测中获取像素预测值的方法,在前述0-180°之间的任意方向上进行预测的基础上,引入边缘穿过区域,结合率失真代价进行最终选择,可进一步对有物体边缘穿过的当前块进行准确预测,而没有物体边缘穿过的当前块的预测精确度也不会受到影响。
附图说明
图1a是现有技术中4×4像素构成的子块及相邻块中的可用像素分布示意图;
图1b是现有技术中8个预测模式方向示意图;
图2是现有技术中帧内预测模式的9种预测模式示意图;
图3是本发明具体实施方式一中当前块的分布示意图;
图4是本发明具体实施方式一中没有相交像素点的情形示意图;
图5是本发明具体实施方式一中只有一个相交像素点的情形示意图;
图6是本发明具体实施方式一中有两个相交像素点的情形示意图;
图7是本发明具体实施方式一中有两个相交像素点时计算像素预测值的示意图;
图8是本发明具体实施方式二中确定边缘穿过区域的示意图。
具体实施方式
下面结合具体实施方式并对照附图对本发明做进一步详细说明。
具体实施方式一
本具体实施方式中一种帧内预测中获取像素预测值的方法,包括以下步骤:
1)确定要进行帧内预测的当前块,本具体实施方式中选取的当前块的大小为4像素×4像素。
2)确定当前块的相邻块。
3)根据步骤2)中所述相邻块的情况确定当前块中各个像素点的像素预测值。
当前块位置不同时,其相邻块也不同。如图3所示,C表示当前块。第一种情况,当前块C位于第一行第一列相交的位置,则当前块C的相邻块不存在。第二种情况,当前块C只有相邻的左块存在。第三种情况,当前块C只有相邻的上块和右上块存在。第四种情况,当前块C相邻的左块、上块、右上块和左上块都存在。第五种情况,当前块C只有相邻的左块、上块和左上块的存在。
3-1)对于第一种情况,当前块C的相邻块不存在,则确定当前块中各个像素点的像素预测值为一固定值。例如,预测方法中位深bitdepth为8位时,选择固定值为2bitdepth-1=128;
3-2)对于其他四种情况,相邻块存在,则按如下步骤确定当前块中各个像素点的像素预测值。
3-2-1)确定相邻块相邻于当前块、宽度为一个像素的部分,称为边界部分。对于第二种情况,当前块C只有相邻的左块存在,边界部分即为图1a中的像素I-L所在的部分;对于第三种情况,当前块C只有相邻的上块和右上块存在,边界部分即为图1a中的像素A-D和像素E-H所在的部分;对于第四种情况,当前块C相邻的左块、上块、右上块和左上块都存在,边界部分即为像素A-M所在的部分;对于第五种情况,当前块C只有相邻的左块、上块和左上块的存在,边界部分即为像素A-D、像素I-L、像素M所在的部分。
3-2-2)设定多个预测方向,多个预测方向遍布0-180°之间。本具体实施方式中,按照精度为22.5°选取0-360°之间的角度确定的方向,即0°、22.5°、45°、67.5°、90°、112.5°、135°、和157.5°共8个角度确定的方向进行预测。当然,也可以任意选择其它精度,比如10°,即确定0°、10°、20°、……、170°共18个角度确定的方向进行预测;又比如60°,即确定0°、60°、120°共3个角度确定的方向进行预测。这样通过精度的控制可以实现在0-180°之间任意角度方向上进行预测。
3-2-3)沿步骤3-2-2)中的8个角度确定的方向分别画一条直线穿过当前块中待预测的像素点,直线与步骤3-2-1)中的边界部分相交的像素点称为相交像素点。
由于四种情况中边界部分不同,加上8个角度方向,则相交像素点的分布会有多种情形,但总体可以归纳为三种情况:没有相交像素点,只有一个相交像素点,有两个相交像素点。
如图4所示,为没有相交像素点的情形。如图4a所示,当由像素I-L所在的部分构成边界部分时(为方便描述,以下简称左边界),以90°的预测方向预测当前块像素a、e、i、m时,会没有相交像素点。如图4b所示,当由像素A-H所在的部分构成边界部分时(为方便描述,以下简称上-右边界),以0°的预测方向预测当前块内16个像素时,会没有相交像素点。如图4c所示,当由像素A-M所在的部分构成边界部分时(为方便描述,以下简称全边界),以22.5°的预测方向预测当前块像素p时,会没有相交像素点。图4c中,S1表示45°的预测方向,S2表示22.5°的预测方向。如图4d所示,当由像素A-D、I-L、M所在的部分构成边界部分时(为方便描述,以下简称缺右边界),以45°的预测方向预测当前块像素p时,会没有相交像素点。
如图5所示,为只有一个相交像素点的情形。如图5a所示,边界为左边界时,以0°的预测方向预测当前块内16个像素时,只有一个相交像素点。例如,以0°预测方向预测像素a时,相交像素点就是像素I。如图5b所示,边界为上-右边界时,以90°预测方向预测像素a时,相交像素点就是像素A;以45°预测方向预测像素b或e时,相交像素点就是像素C。如图5c所示,边界为全边界时,以45°预测方向预测像素p或d时,相交像素点只有一个,分别为像素H、像素E。如图5d所示,边界为缺右边界时,以135°预测方向预测像素a、f、k、p时,相交像素点均只有一个,为像素M。
如图6所示,为有两个相交像素点的情形。图6a和6b所示,为左边界和上-右边界时,这两种情形下,在8个预测方向下都不会出现有两个相交像素点的情形。如图6c所示,为全边界时,当以45°预测方向预测像素a时,会有两个相交像素点像素B和像素J。如图6d所示,为缺右边界时,当以45°预测方向预测像素a时,会有两个相交像素点像素B和像素J。
3-2-4)根据步骤3-2-3)中的相交像素点的像素重建值确定所述步骤3-2-2)中的8个角度确定的方向下的当前块中待预测的像素点a-p的像素预测值,即得到0°的预测方向下的像素点a-p的像素预测值、22.5°的预测方向下的像素点a-p的像素预测值、45°的预测方向下的像素点a-p的像素预测值、67.5°的预测方向下的像素点a-p的像素预测值、90°的预测方向下的像素点a-p的像素预测值、112.5°的预测方向下的像素点a-p的像素预测值、135°的预测方向下的像素点a-p的像素预测值、和157.5°的预测方向下的像素点a-p的像素预测值共8个方向下的像素预测值。
对于步骤3-2-4)中根据相交像素点确定像素预测值,一种优选的确定方法如下所述:
对于图4所示没有相交像素点的情况,则继续确定边界部分中与待预测像素点最近的像素点,称为近点;如果近点只有一个,则待预测像素点的像素预测值取近点的像素重建值:如果近点有两个,则待预测像素点的像素预测值取两个近点的像素重建值的平均值。例如,图4a中,预测待预测的像素点a,没有相交像素点时,则确定的近点即为像素I。下表给出了图4a、4b、4c和4d中待预测的像素点a-p对应的近点。
从上表可知,图4c和图4d中,待预测的像素点为a、f、k、p时,对应的近点有两个,此时待预测的像素点的像素预测值取两个近点的像素重建值的平均值。图4c、图4d中其余待预测像素点对应的近点均只有一个,图4a和4b中所有16个待预测像素点对应的近点也均只有一个,这些情况下,待预测像素点的像素预测值取近点的像素重建值。
对于图5中,只有一个相交像素点的情况,则待预测像素点的像素预测值取相交像素点的像素重建值。举例说明,图5a中,0°的预测方向预测像素点a时,有一个相交像素点,像素I,则0°的预测方向下像素点a的像素预测值就取像素I的像素重建值。图5b中,45°和90°的预测方向预测像素点e时,均只有一个相交像素点,分别为像素A和像素C,则45°的预测方向下像素点e的像素预测值就取像素A的像素重建值,90°的预测方向下像素点e的像素预测值就取像素C的像素重建值。
对于图6中,有两个相交像素点的情况,则分别称为第一相交像素点和第二相交像素点,则继续确定第一相交像素点与待预测像素点的距离,称为第一间隔距离;继续确定第二相交像素点与待预测像素点的距离,称为第二间隔距离;则待预测像素点的像素预测值根据第一间隔距离、第二间隔距离、第一相交像素点的像素重建值和第二相交像素点的像素重建值确定。一种优选地确定方法为:根据如下公式确定待预测像素点的像素预测值:(r1×Q2+r2×Q1)/(r1+r2),其中r1表示第一间隔距离,r2表示第二间隔距离,Q1表示第一相交像素点的像素重建值,Q2表示第二相交像素点的像素重建值。如图7所示,当边界部分为全边界时,以45°的预测方向预测像素点a时,有两个相交像素点,像素B和像素J。检测得到像素点a与像素B的距离,为第一间隔距离r1,检测得到像素点a与像素J的距离,为第二间隔距离r2,将第一间隔距离r1、第二间隔距离r2、像素B的像素重建值、像素J的像素重建值代入上述公式计算像素点a的像素预测值。
3-2-5)从步骤3-2-4)中得到8个预测方向下的当前块中各个像素点a-p的像素预测值,即0°的预测方向下得到了像素点a-p的16个像素预测值,22.5°的预测方向下也得到16个像素预测值,……157.5°的预测方向下也得到16个像素预测值总计8个方向中的像素预测值选择一个方向下的像素预测值作为当前块中各个像素点a-p的像素预测值;选择方法为:根据8个方向下的像素预测值重构出8个方向对应的当前块的重构块,根据8个重构块和当前块计算对应的8个方向下的率失真代价,率失真代价最小的值对应的方向下的像素预测值即为当前块中各个像素点a-p的像素预测值。
本具体实施方式对于帧内预测的编码,没有很大影响。只是在编码过程中将多个预测方向按照现有技术中编码预测模式的方法进行编码即可。在解码端,根据当前块的块类型、编码模式、多个预测方向,计算得到最终的当前块的像素预测值,将计算得到最终的的像素预测值和残差相加即得到当前块的重构,实现解码。
本具体实施方式中,通过引入沿在0-180°之间的任意方向上的直线,结合该直线所确定的相邻像素从而对当前块进行任意多个方向上的帧内预测,最后结合率失真代价选择出最小率失真代价对应的那个方向下的像素预测值作为最后确定的像素预测值。由于预测过程预测方向是0-180°之间任意的方向,通过控制精度,精度越小,选取到的预测方向的数量越大,相应地,包括到帧内预测时最准确的预测方向的概率就大,最后确定到最接近真实块的像素预测值的概率也就大,从而能提高预测的精确性。
具体实施方式二
本具体实施方式中一种帧内预测中获取像素预测值的方法,包括以下步骤:
1)确定要进行帧内预测的当前块。
2)在当前块中确定一个边缘穿过区域,边缘穿过区域将当前块划分为第一区域、第二区域和第三区域,第三区域对应边缘穿过区域,第一区域和第二区域分别对应第三区域的两侧区域。如图8所示,图中R3表示第三区域,R1表示第一区域,R2表示第二区域。
优选地,参考图8,按照如下方法确定区域R3。以当前块的中心为原点,建立坐标系统;确定一条中心线,中心线用如下两个参数表征:距离参数ρ,表示从原点到中心线的垂直距离;角度参数θ,表示正向水平轴和中心线的夹角。再确定一个阈值参数threshold,根据阈值参数threshold确定两条直线,两条直线分别位于中心线两侧,且与中心线平行,相距阈值threshold,两条直线之间的区域即为边缘穿过区域。距离参数ρ的取值范围为大于等于0,小于所述当前块的对角线的一半;角度参数θ的取值范围为[0,360°),阈值参数threshold可以控制边缘穿过区域的宽度。
3)取当前块中待预测的像素点,检测待预测的像素点位于的区域。
优选地,参考图8,按照如下方法检测待预测的像素点q位于的区域。先确定一个函数f(x,y)=ysinθ+xcosθ-ρ,代入待预测的像素点q的坐标值(x,y),计算f(x,y);
如果f(x,y)<-threshold,则待预测的像素点q位于区域R1;
如果f(x,y)>threshold,则待预测的像素点q位于区域R2;
如果-threshold≤f(x,y)≤threshold,则待预测的像素点q位于区域R3。
4)根据待预测的像素点q位于的区域,确定相应的获取像素预测值的方法,得到当前块中的待预测的像素点的像素预测值。
优选地,可通过如下方法得到当前块中的待预测的像素点的像素预测值:
4-1)如果待预测的像素点位于区域R1,则按照现有技术中的9种预测模式预测得到9种预测模式下的第一区域中待预测的像素点的像素预测值。
4-2)如果待预测的像素点位于区域R2,则按照现有技术中的9种预测模式预测得到9种预测模式下的第二区域中待预测的像素点的像素预测值。
4-3)如果待预测的像素点位于区域R3,则参考图8,按照如下方法得到现有技术中的9种预测模式下的第三区域中待预测的像素点的像素预测值:
4-3-1)检测待预测的像素点q与区域R1的最近距离,称为第一相距距离s1;检测待预测的像素点q与区域R2的最近距离,称为第二相距距离s2;
4-3-2)设待预测的像素点q位于区域R1时,得到对应的9种预测模式下的第一预测值;
4-3-3)设待预测的像素点q位于区域R2时,得到对应的9种预测模式下的第二预测值;
4-3-4)根据第一相距距离s1、第二相距距离s2、9种预测模式下的第一预测值和9种预测模式下的第二预测值确定出81种第三区域中待预测的像素点q的像素预测值。优选地,根据如下公式确定第三区域中待预测的像素点q的像素预测值,其中,s1为第一相距距离,s2为第二相距距离,P1为9种预测模式下各自对应的第一预测值,P2为9种预测模式下各自对应的第二预测值。举例说明,如果第一预测值P1是在0°的预测方向下得到的像素预测值,第二预测值P2是在35.8°的预测方向下得到的像素预测值,则代入公式计算得到的第三区域的像素预测值就是该种区域R1的预测方向和区域R2的预测方向组合下的第三区域的像素预测值。因此,根据区域R1的预测方向和区域R2的预测方向,可计算得到9×9=81种第三区域的像素预测值。
4-4)将步骤4-1)和4-2)中得到的9种预测模式下的区域R1和区域R2的各个像素点的像素预测值按照区域进行组合得到92个组合,相应代入步骤4-3)计算得到的9×9种区域R3中的各个像素点的像素预测值,得到92个当前块的像素预测值的组合,从92个组合中按照率失真代价的选择机制选择一种组合下的当前块中的各个像素点的像素预测值作为当前块中的各个像素点的像素预测值。
预测过程中,距离参数ρ和角度参数θ按照各自的精度在各自的取值范围内选取相应的值,而阈值参数threshold可以通过估计设定一个大概的取值。例如,距离参数ρ的精度选为1,则距离参数ρ的取值0、1、2、……、当前块的对角线的一半。角度参数θ精度选为22.5°,则角度参数θ的取值0°、22.5°、45°、……、337.5°。因此,考虑组合时还可以引入距离参数ρ和角度参数θ的取值可能性,即组合数为:ρ取值的可能数×θ取值的可能数×区域R1的预测方向数×区域R2的预测方向数。举例说明,如果距离参数ρ有8种可能,角度参数有θ16种可能,则上述组合数即为8×16×9×9=10368种组合中选择一个组合下的像素预测值作为最终确定的像素预测值。
本具体实施方式中的获取像素预测值的方法,当前块中各像素点的像素预测值除了受区域R1的9个预测方向、区域R2的9个预测方向的影响而不同外,还会受到距离参数ρ、角度参数θ的影响而不同,所以会得到多组需要计算率失真代价的像素预测值。在预测过程中怎样确定上述四个参数并没有任何规定,而是要遍历四个参数在各自取值范围中所有可能的组合,即不管组合下得到的像素预测值的精确度如何都要遍历到四个参数的所有组合进行预测。然后最终通过率失真代价的选择机制都能选择到一种与真实块最接近的像素预测值。
阈值参数threshold可以大概取一个值外,也可以按照如下方法确定取值:通过相邻块中的相邻边界像素进行推算,计算这些相邻边界像素的像素值的差异(即梯度),如果某两个像素的像素值差异大于预先设定的范围,则可以认为这两个像素之间有边缘穿过,让边缘穿过区域的上下边缘线,即步骤2)中与中心线平行的两条直线,分别穿过上述两个像素,则阈值参数threshold的取值即对应此时边缘穿过区域的宽度。
本具体实施方式中,获取像素预测值的方法会引起帧内预测编码过程的一些改变,除了和现有技术一样需要将当前块的类型(4x4,8x8或16x16)、编码模式、残差送入码流编码外,还需要将区域R1的预测方向、区域R2的预测方向、距离参数ρ、角度参数θ送入码流编码。而对于阈值参数threshold,可以在编码端和解码端固定为同一值,所以不用参与编码增加码流的消耗。对于区域R1的预测方向、区域R2的预测方向可参考现有技术中帧内预测模式的编码;对于距离参数ρ、角度参数θ这两个参数的编码,可以利用现有的比较成熟的编码技术,如零阶哥伦布码编码技术、定长编码技术。具体编码技术在Iain Richardson所著的“H.264and M-PEG-4Video Compression”(Wiley &Sons,2003)以及Alan Bovik所著的“The Essential Guide to Video Processing”(Academic Press2009)中有详细描述,在此不做重复说明。在解码端,根据当前块的块类型、编码模式、区域R1的预测方向、区域R2的预测方向、距离参数ρ、角度参数θ以及设定的阈值参数threshold,可以得到最终的当前块的像素预测值,将计算得到的像素预测值和残差相加即得到当前块的重构,实现解码。
本具体实施方式中,通过引入边缘穿过区域,则如果当前块中有物体边缘穿过时,所有待计算率失真代价的像素预测值的组合包括到最接近真实块的像素预测值的概率就大,则最终通过计算确定的那组像素预测值为最接近的像素预测值的概率也就大,所以此种带边缘的当前块的像素预测值的预测精确度得以提高。而没有物体边缘穿过的当前块的预测精确度也不会受到影响,所以整体而言,当前块的像素预测值的精确度得以提高。
具体实施方式三
本具体实施方式与实施方式二的不同在于:本具体实施方式中对应于三个区域中的像素预测不选用现有技术中的9中预测模式进行预测,而是选用具体实施方式一中的获取像素预测值的方法对三个区域分别进行预测。
本具体实施方式中一种帧内预测中获取像素预测值的方法,包括以下步骤:
1)确定要进行帧内预测的当前块。
2)在当前块中确定一个边缘穿过区域,边缘穿过区域将当前块划分为第一区域、第二区域和第三区域,第三区域对应边缘穿过区域,第一区域和第二区域分别对应第三区域的两侧区域。如图8所示,图中R3表示第三区域,R1表示第一区域,R2表示第二区域。优选地,可按照具体实施方式二的方法确定边缘穿过区域。在此不重复说明。
4)取当前块中待预测的像素点,检测待预测的像素点位于的区域。
优选地,仍然参照具体实施方式二中的检测方法进行检测。在此不重复说明。
4)根据待预测的像素点q位于的区域,确定相应的获取像素预测值的方法,得到当前块中的待预测的像素点的像素预测值。
优选地,可通过如下方法得到当前块中的待预测的像素点的像素预测值:
4-1)如果待预测的像素点位于区域R1,则按照具体实施方式一中获取像素预测值的方法得到各个预测方向下的第一区域中待预测的像素点的像素预测值。设定第一区域预测时选取了N1个预测方向,按照实施方式一进行预测则N1=8。
4-2)如果待预测的像素点位于区域R2,则按照具体实施方式一中获取像素预测值的方法得到各个预测方向下的第二区域中待预测的像素点的像素预测值。设定第二区域预测时选取了N2个预测方向,按照实施方式二进行预测则N2=8。需说明的是,如果第二区域与第一区域的预测方向个数不相同,N2和N1的取值就不相同。此处仅因两者选取的预测方向个数相同才为相同的值。
4-3)如果待预测的像素点位于区域R3,则参考图8,按照如下方法得到各个预测方向下的第三区域中待预测的像素点的像素预测值:
4-3-1)检测待预测的像素点q与区域R1的最近距离,称为第一相距距离s1;检测待预测的像素点q与区域R2的最近距离,称为第二相距距离s2;
4-3-2)设待预测的像素点q位于区域R1时,得到对应的各个预测方向下的第一预测值;
4-3-3)设待预测的像素点q位于区域R2时,得到对应的各个预测方向下的第二预测值;
4-3-4)根据第一相距距离s1、第二相距距离s2、各个预测方向下的第一预测值和各个预测方向下的第二预测值确定N1×N2个第三区域中待预测的像素点q的像素预测值。优选地,根据如下公式确定第三区域中待预测的像素点q的像素预测值,其中,s1为第一相距距离,s2为第二相距距离,P1为各个预测方向下的各自对应的第一预测值,P2为各个预测方向下的各自对应的第二预测值。举例说明,如果第一预测值P1是在0°的预测方向下得到的像素预测值,第二预测值P2是在22.5°的预测方向下得到的像素预测值,则代入公式计算得到的第三区域的像素预测值就是该种区域R1的预测方向和区域R2的预测方向组合下的第三区域的像素预测值。因此,根据区域R1的预测方向和区域R2的预测方向,可计算得到N1×N2种第三区域的像素预测值。
4-4)将步骤4-1)中得到的N1个预测方向下的区域R1的各个像素点的像素预测值和步骤4-2)中得到的N2个预测方向下的区域R2的各个像素点的像素预测值按照区域划分进行组合得到N1×N2个组合,相应代入步骤4-3)中计算得到的N1×N2种第三区域的像素预测值,得到N1×N2个当前块的像素预测值的组合,从N1×N2个组合中按照率失真代价的选择机制选择一种组合下的当前块中的各个像素点的像素预测值作为当前块中的各个像素点的像素预测值。
本具体实施方式,结合具体实施方式一和具体实施方式二的优点,可进一步提高像素预测值的预测精确度。通过引入沿在0-180°之间的任意方向上的直线,结合该直线所确定的相邻像素从而对当前块的三个区域进行任意多个方向上的帧内预测,按照区域的划分,不同区域选择一种预测方向进行预测后按照区域进行组合得到当前块的像素预测值的多种组合,最后结合率失真代价选择出最小率失真代价对应的那组像素预测值作为最后确定的像素预测值,从而提高预测精确度。通过引入边缘穿过区域,带边缘的当前块的各像素点的像素预测值的预测精确度得以提高。而没有物体边缘穿过的当前块的预测精确度也不会受到影响,所以整体而言,当前块的像素预测值的精确度得以提高。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下做出若干替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。
Claims (10)
1.一种帧内预测中获取像素预测值的方法,其特征在于:包括以下步骤:
1)确定要进行帧内预测的当前块;
2)确定所述当前块的相邻块;
3)根据步骤2)中所述相邻块的情况确定所述当前块中各个像素点的像素预测值;
3-1)如果所述相邻块不存在,则确定所述当前块中各个像素点的像素预测值为一固定值;
3-2)如果所述相邻块存在,则按如下步骤确定所述当前块中各个像素点的像素预测值:
3-2-1)确定所述相邻块相邻于所述当前块、宽度为一个像素的部分,称为边界部分;
3-2-2)设定多个预测方向,所述多个预测方向遍布[0°,180°)之间;
3-2-3)沿所述步骤3-2-2)中的各个预测方向分别画一条直线穿过所述当前块中待预测的像素点,所述直线与所述步骤3-2-1)中的边界部分相交的像素点称为相交像素点;
3-2-4)根据步骤3-2-3)中的相交像素点的像素重建值确定所述步骤3-2-2)中的各个预测方向下的所述当前块中待预测的像素点的像素预测值;
3-2-5)从所述各个预测方向下的所述当前块中各个像素点的像素预测值中选择一个预测方向下的所述当前块中各个像素点的像素预测值作为所述当前块中各个像素点的像素预测值;选择方法为:根据各个方向下的像素预测值重构出各个方向对应的当前块的重构块,根据各个重构块和当前块计算各个方向下的率失真代价,所述率失真代价最小的值对应的方向下的像素预测值即为所述当前块中各个像素点的像素预测值。
2.根据权利要求1所述的获取像素预测值的方法,其特征在于:所述步骤3-2-4)中确定各个预测方向下的所述当前块中待预测的像素点的像素预测值的规则为:
如果没有相交像素点,则确定所述边界部分中与所述待预测像素点最近的像素点,称为近点;如果近点只有一个,则所述待预测像素点的像素预测值取所述近点的像素重建值:如果近点有两个,则所述待预测像素点的像素预测值取所述两个近点的像素重建值的平均值;
如果只有一个相交像素点,则所述待预测像素点的像素预测值取所述相交像素点的像素重建值;
如果有两个相交像素点,分别称为第一相交像素点和第二相交像素点,则继续确定所述第一相交像素点与所述待预测像素点的距离,称为第一间隔距离;继续确定所述第二相交像素点与所述待预测像素点的距离,称为第二间隔距离;则所述待预测像素点的像素预测值根据所述第一间隔距离、第二间隔距离、第一相交像素点的像素重建值和第二相交像素点的像素重建值确定。
3.根据权利要求2所述的获取像素预测值的方法,其特征在于:所述有两个相交像素点时,根据如下公式确定所述待预测像素点的像素预测值:(r1×Q2+r2×Q1)/(r1+r2),其中r1表示第一间隔距离,r2表示第二间隔距离,Q1表示第一相交像素点的像素重建值,Q2表示第二相交像素点的像素重建值。
4.根据权利要求1所述的获取像素预测值的方法,其特征在于:所述步骤3-2-2)中多个预测方向为按照22.5°的精度选取的[0°,180°)之间的角度确定的方向。
5.一种帧内预测中获取像素预测值的方法,其特征在于:包括以下步骤:
1)确定要进行帧内预测的当前块;
2)在所述当前块中确定一个边缘穿过区域,所述边缘穿过区域将所述当前块划分为第一区域、第二区域和第三区域,所述第三区域为所述边缘穿过区域,所述第一区域和所述第二区域为所述第三区域的两侧区域;
3)取所述当前块中待预测的像素点,检测所述待预测的像素点位于的区域;
4)根据所述待预测的像素点位于的区域,按照权利要求1所述的获取像素预测值的方法,得到所述当前块中各区域内的各待预测的像素点的像素预测值。
6.根据权利要求5所述的获取像素预测值的方法,其特征在于:所述步骤4)中按照如下方法确定得到所述当前块中的待预测的像素点的像素预测值:
4-1)如果所述待预测的像素点位于所述第一区域,则按照权利要求1所述的获取像素预测值的方法中的步骤1)至步骤3-2-4)得到所述各个预测方向下的所述第一区域中待预测的像素点的像素预测值;设所述第一区域的预测方向个数为N1;
4-2)如果所述待预测的像素点位于所述第二区域,则按照权利要求1所述的获取像素预测值的方法中的步骤1)至步骤3-2-4)得到所述各个预测方向下的所述第二区域中待预测的像素点的像素预测值;设所述第二区域的预测方向个数为N2;
4-3)如果所述待预测的像素点位于所述第三区域,则按照如下方法得到所述N1×N2个所述第三区域中待预测的像素点的像素预测值:
4-3-1)检测所述待预测的像素点与所述第一区域的最近距离,称为第一相距距离;检测所述待预测的像素点与所述第二区域的最近距离,称为第二相距距离;
4-3-2)设所述待预测的像素点位于所述第一区域内,得到对应的所述各个预测方向下的第一预测值;
4-3-3)设所述待预测的像素点位于所述第二区域内,得到对应的所述各个预测方向下的第二预测值;
4-3-4)根据所述第一相距距离、所述第二相距距离、所述各个预测方向下的第一预测值和所述各个预测方向下的第二预测值确定所述N1×N2个所述第三区域中待预测的像素点的像素预测值;
4-4)将步骤4-1)中得到的N1个预测方向下的所述第一区域的各个像素点的像素预测值和步骤4-2)中得到的N2个预测方向下的所述第二区域的各个像素点的像素预测值按照区域的划分进行组合得到N1×N2个组合,相应代入步骤4-3)中N1×N2个所述第三区域中待预测的像素点的像素预测值,得到N1×N2个当前块的像素预测值的组合,从N1×N2个组合中按照率失真代价的选择机制选择一种组合下的当前块中的各个像素点的像素预测值作为当前块中的各个像素点的像素预测值;选择方法为:根据N1×N2个组合的像素预测值重构出N1×N2个重构块,根据N1×N2个重构块和当前块计算各个组合下的率失真代价,所述率失真代价最小的值对应的那组像素预测值即为所述当前块中各个像素点的像素预测值。
7.根据权利要求5所述的获取像素预测值的方法,其特征在于:所述步骤2)中确定边缘穿过区域的方法为:以当前块的中心为原点,建立坐标系统;确定一条中心线,所述中心线用如下两个参数表征:距离参数,表示从原点到中心线的垂直距离;角度参数,表示正向水平轴和所述中心线的夹角;确定一个阈值参数,根据所述阈值参数确定两条直线,所述两条直线分别位于所述中心线两侧,且与所述中心线平行,相距所述阈值,所述两条直线之间的区域即为所述边缘穿过区域。
8.根据权利要求7所述的获取像素预测值的方法,其特征在于:所述距离参数的取值范围为大于等于0,小于所述当前块的对角线的一半;所述角度参数的取值范围为[0,360°)。
9.根据权利要求5所述的获取像素预测值的方法,其特征在于:所述步骤3)中检测所述待预测的像素点位于的区域的方法为:确定函数f(x,y)=ysinθ+xcosθ-ρ,其中,ρ为所述距离参数,θ为所述角度参数;代入所述待预测的像素点的坐标值(x,y),计算f(x,y);
如果f(x,y)<-threshold,则所述待预测的像素点位于第一区域;
如果f(x,y)>threshold,则所述待预测的像素点位于第二区域;
如果-threshold≤f(x,y)≤threshold,则所述待预测的像素点位于第三区域。
10.根据权利要求6所述的获取像素预测值的方法,其特征在于:所述步骤4-3-4)中根据如下公式确定所述第三区域中待预测的像素点的像素预测值,其中,s1为所述第一相距距离,s2为所述第二相距距离,P1为所述各个预测方向下的第一预测值,P2为所述各个预测方向下的第二预测值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US28706009P | 2009-12-16 | 2009-12-16 | |
US61/287,060 | 2009-12-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101827270A true CN101827270A (zh) | 2010-09-08 |
CN101827270B CN101827270B (zh) | 2011-12-14 |
Family
ID=42690933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010177179 Expired - Fee Related CN101827270B (zh) | 2009-12-16 | 2010-05-07 | 一种帧内预测中获取像素预测值的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101827270B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102595120A (zh) * | 2011-01-14 | 2012-07-18 | 华为技术有限公司 | 一种空域预测编码方法、解码方法、装置和系统 |
WO2013067942A1 (zh) * | 2011-11-08 | 2013-05-16 | 华为技术有限公司 | 一种帧内预测方法和装置 |
CN103595991A (zh) * | 2013-11-04 | 2014-02-19 | 天津大学 | 深度视频编码的像素级预测方法 |
CN103621079A (zh) * | 2011-04-25 | 2014-03-05 | Lg电子株式会社 | 帧内预测方法以及使用该方法的编码器和解码器 |
CN104253997A (zh) * | 2013-06-26 | 2014-12-31 | 鸿富锦精密工业(深圳)有限公司 | 框内预测方法及系统 |
CN103096061B (zh) * | 2011-11-08 | 2016-12-14 | 华为技术有限公司 | 一种帧内预测方法和装置 |
CN108337513A (zh) * | 2017-01-20 | 2018-07-27 | 浙江大学 | 一种帧内预测像素生成方法和装置 |
WO2020182125A1 (en) * | 2019-03-12 | 2020-09-17 | FG Innovation Company Limited | Device and method for coding video data |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060126727A1 (en) * | 2004-12-13 | 2006-06-15 | Samsung Electronics Co., Ltd. | Apparatus and method for spatially predicting image data, apparatus and method for encoding image data, apparatus and method for compensating for spatial prediction of image data, and apparatus and method for decoding image data |
JP2007074726A (ja) * | 2005-09-06 | 2007-03-22 | Samsung Electronics Co Ltd | 映像のイントラ予測符号化及び復号化方法、並びに装置 |
CN101141649A (zh) * | 2007-07-31 | 2008-03-12 | 北京大学 | 用于视频编码的帧内预测编码最佳模式的选取方法及装置 |
CN101361370A (zh) * | 2005-11-30 | 2009-02-04 | 株式会社东芝 | 图像编码/图像解码方法以及图像编码/图像解码装置 |
WO2009051419A2 (en) * | 2007-10-16 | 2009-04-23 | Lg Electronics Inc. | A method and an apparatus for processing a video signal |
CN101483780A (zh) * | 2008-01-07 | 2009-07-15 | 华为技术有限公司 | 一种帧内预测的方法及装置 |
-
2010
- 2010-05-07 CN CN 201010177179 patent/CN101827270B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060126727A1 (en) * | 2004-12-13 | 2006-06-15 | Samsung Electronics Co., Ltd. | Apparatus and method for spatially predicting image data, apparatus and method for encoding image data, apparatus and method for compensating for spatial prediction of image data, and apparatus and method for decoding image data |
JP2007074726A (ja) * | 2005-09-06 | 2007-03-22 | Samsung Electronics Co Ltd | 映像のイントラ予測符号化及び復号化方法、並びに装置 |
CN101361370A (zh) * | 2005-11-30 | 2009-02-04 | 株式会社东芝 | 图像编码/图像解码方法以及图像编码/图像解码装置 |
CN101141649A (zh) * | 2007-07-31 | 2008-03-12 | 北京大学 | 用于视频编码的帧内预测编码最佳模式的选取方法及装置 |
WO2009051419A2 (en) * | 2007-10-16 | 2009-04-23 | Lg Electronics Inc. | A method and an apparatus for processing a video signal |
CN101483780A (zh) * | 2008-01-07 | 2009-07-15 | 华为技术有限公司 | 一种帧内预测的方法及装置 |
Non-Patent Citations (1)
Title |
---|
《IEEE International Conference on Image Processing 2007》 20071112 Congxia Dai等 Geometry-adaptive block partitioning for intra prediction in image & video coding , 2 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102595120A (zh) * | 2011-01-14 | 2012-07-18 | 华为技术有限公司 | 一种空域预测编码方法、解码方法、装置和系统 |
WO2012095031A1 (zh) * | 2011-01-14 | 2012-07-19 | 华为技术有限公司 | 一种空域预测编码方法、解码方法、装置和系统 |
CN103621079B (zh) * | 2011-04-25 | 2017-01-18 | Lg电子株式会社 | 帧内预测方法以及使用该方法的编码器和解码器 |
US10368090B2 (en) | 2011-04-25 | 2019-07-30 | Lg Electronics Inc. | Intra-prediction method, and encoder and decoder using same |
CN103621079A (zh) * | 2011-04-25 | 2014-03-05 | Lg电子株式会社 | 帧内预测方法以及使用该方法的编码器和解码器 |
US11910010B2 (en) | 2011-04-25 | 2024-02-20 | Lg Electronics Inc. | Intra-prediction method, and encoder and decoder using same |
US11006146B2 (en) | 2011-04-25 | 2021-05-11 | Lg Electronics Inc. | Intra-prediction method, and encoder and decoder using same |
US10645415B2 (en) | 2011-04-25 | 2020-05-05 | Lg Electronics Inc. | Intra-prediction method, and encoder and decoder using same |
US9686545B2 (en) | 2011-11-08 | 2017-06-20 | Huawei Technologies Co., Ltd. | Method and apparatus for intra-prediction |
WO2013067942A1 (zh) * | 2011-11-08 | 2013-05-16 | 华为技术有限公司 | 一种帧内预测方法和装置 |
CN103096061B (zh) * | 2011-11-08 | 2016-12-14 | 华为技术有限公司 | 一种帧内预测方法和装置 |
CN104253997A (zh) * | 2013-06-26 | 2014-12-31 | 鸿富锦精密工业(深圳)有限公司 | 框内预测方法及系统 |
CN103595991A (zh) * | 2013-11-04 | 2014-02-19 | 天津大学 | 深度视频编码的像素级预测方法 |
CN103595991B (zh) * | 2013-11-04 | 2015-10-28 | 天津大学 | 深度视频编码的像素级预测方法 |
CN108337513A (zh) * | 2017-01-20 | 2018-07-27 | 浙江大学 | 一种帧内预测像素生成方法和装置 |
WO2020182125A1 (en) * | 2019-03-12 | 2020-09-17 | FG Innovation Company Limited | Device and method for coding video data |
US11425374B2 (en) | 2019-03-12 | 2022-08-23 | FG Innovation Company Limited | Device and method for coding video data |
US11943437B2 (en) | 2019-03-12 | 2024-03-26 | FG Innovation Company Limited | Device and method for coding video data |
Also Published As
Publication number | Publication date |
---|---|
CN101827270B (zh) | 2011-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101827270B (zh) | 一种帧内预测中获取像素预测值的方法 | |
CN102724509B (zh) | 视频序列的最优帧内编码模式选择方法及装置 | |
CN104796693B (zh) | 一种hevc快速cu深度划分编码方法 | |
CN102186086B (zh) | 一种基于avs的帧内预测方法 | |
CN106060547B (zh) | 解码高分辨率图像的方法和装置 | |
CN104811717B (zh) | 用于编码/解码高分辨率图像的方法和设备 | |
CN101969561B (zh) | 一种帧内模式选取方法、装置及一种编码器 | |
CN101483780B (zh) | 一种帧内dc预测的方法及装置 | |
CN103748877A (zh) | 使用非方形区块的帧内预测方法和装置 | |
CN101309421B (zh) | 帧内预测模式选择方法 | |
KR20050039249A (ko) | 인트라 예측 방법 및 장치 | |
CN101262603B (zh) | 一种自适应码率控制方法 | |
CN101309408A (zh) | 一种亮度块帧内预测模式选择方法 | |
CN101350927A (zh) | 帧内预测选择最优预测模式的方法及装置 | |
CN103168470A (zh) | 影像编码方法、影像解码方法、影像编码装置、影像解码装置及它们的程序 | |
CN104284186A (zh) | 一种适用于hevc标准帧内预测模式判决过程的快速算法 | |
CN103957414A (zh) | 一种hevc帧内预测编码方法和系统 | |
US8559738B2 (en) | Predictive coding method for coding texture of image | |
CN103686183B (zh) | 一种功耗可控的帧内视频编码方法 | |
KR101246119B1 (ko) | 인트라 예측 모드 결정 방법 및 장치 | |
CN102595113B (zh) | 一种变换系数块的扫描方法、装置和系统 | |
CN107786874A (zh) | 双向的帧内方向性预测方法和装置 | |
JP2012205288A (ja) | 画像復号装置、画像復号方法および画像復号プログラム | |
CN102387364A (zh) | 一种快速帧内模式选择算法 | |
CN102438148A (zh) | 用于h.264帧内预测编码的基于dvs的快速模式选择方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111214 |