CN1476252A - 一种视频信号中基于宏块组结构的分阶段预测编码方法 - Google Patents

一种视频信号中基于宏块组结构的分阶段预测编码方法 Download PDF

Info

Publication number
CN1476252A
CN1476252A CNA031481558A CN03148155A CN1476252A CN 1476252 A CN1476252 A CN 1476252A CN A031481558 A CNA031481558 A CN A031481558A CN 03148155 A CN03148155 A CN 03148155A CN 1476252 A CN1476252 A CN 1476252A
Authority
CN
China
Prior art keywords
macro block
coding
block group
macro
group
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
Application number
CNA031481558A
Other languages
English (en)
Other versions
CN1209927C (zh
Inventor
芸 何
何芸
李国平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CENTRAL ACADEMY GUANGDIAN (GROUP) Co Ltd SHANGHAI
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN 03148155 priority Critical patent/CN1209927C/zh
Publication of CN1476252A publication Critical patent/CN1476252A/zh
Application granted granted Critical
Publication of CN1209927C publication Critical patent/CN1209927C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明属于信号处理中的视频编解码技术领域,涉及一种视频信号中基于宏块组结构的分阶段预测编码方法。本发明的预测基本单位为32象素x32象素的方块构成的宏块组,包括原始宏块组和派生宏块组;其中,原始宏块组为连续的32象素x32象素的方块;派生宏块组为对原始宏块组进行水平或垂直1/2抽样并重新排列得到的32象素x32象素的方块。本发明的编码方法分为两个阶段进行。本发明的预测编码结构能够结合其他各种编码技术,有效的提高视频信号的压缩效率。针对最新的JVT参考软件JM61e,在相同的试验条件下,所做试验表明本方案的编码效率明显高于JVT结果。

Description

一种视频信号中基于宏块组结构的分阶段预测编码方法
技术领域  本发明属于信号处理中的视频编解码技术领域。
背景技术  传统的视频编码标准如ITU制定的H.261,H.263,H.263+,H.264标准以及ISO的MPEG组织制定的MPEG-1,MPEG-2,MPEG-4等都是建立在混合编码,即Hybrid Coding框架之上的。所谓混合编码框架是一种混合时间空间视频图象编码方法,这种方法包括:先进行帧内、帧间的预测,以消除时间域的相关性;然后对原始图象与预测结果的残差进行二维变换(采用离散余弦变换或其它线性变换),消除空间相关性;然后进行熵编码,去除统计上的冗余度。
为了提高视频信号的压缩效率,预测是视频编码标准中最重要的核心技术,预测方法一般分为帧内预测和帧间预测。
在上述视频编码标准中,宏块(16×16的图象象素块)是预测及编解码的基本单位。宏块可以分解为16×16,或两个8×16,或两个16×8,或四个8×8,或多个8×4,4×8,4×4等一些小的矩形块。帧间预测方法是用这些矩形块大小的原始图象(原始输入的图象),即原始图象块,在参考图象(在以前编码的重建帧中用作为参考的图象)中进行运动估计,就得到原始图象块的最佳匹配图象块作为预测结果。帧内预测方法是在当前编码帧中利用需要编码的矩形块周围已经编码的矩形块,对需要编码的矩形块进行预测得到的预测矩形块作为预测结果。
目前在视频编码标准中,主要存在四种预测编码方法。因为视频信号的输入可以分为逐行扫描的和隔行扫描的。逐行扫描的视频信号叫作帧图象,隔行扫描的视频信号叫作场图象。帧图象中的宏块叫帧宏块,场图象中的宏块叫场宏块。以帧宏块为单位的预测编码方法叫帧预测编码方法(简称帧编码),以场宏块为单位的预测编码方法叫场预测编码方法(简称场编码)。在H.261,H.263,H.263+,H.264标准以及ISO的MPEG组织制定的MPEG-1,MPEG-2,MPEG-4标准等都包含的帧编码,MPEG-2,MPEG-4,H.264还包括场编码。在H.264又提出了根据编码代价进行自适应选择帧编码或场编码的自适应帧场预测编码方法,以及基于宏块对的自适应帧场预测编码方法。
帧编码对于帧图象来说效果较好,但不适应于场图象。
场编码对于场图象来说效果较好,但不适应于帧图象。
帧场自适应预测编码方法为:对视频信号首先分别进行帧编码和场编码,然后根据两者的编码代价,决定采用帧编码的编码结果还是场编码的编码结果。这种预测编码方法能够适应帧图象和场图象,但是这种方法是以整帧的编码代价为单位进行比较选择,因此编码效率不高。
基于宏块对的帧场自适应预测编码方法为:先进行基于宏块对的帧编码和场编码,然后根据两者的编码代价,决定采用基于宏块对的帧编码的编码结果还是场编码的编码结果。这种预测编码方法也能够适应帧图象和场图象,但复杂度很大。
发明内容  本发明的目的是为克服已有技术的不足之处,提出一种视频信号中基于宏块组(Macroblock Group)结构的分阶段预测编码方法。本发明利用宏块组数据结构的特点,采用两阶段进行预测编码。本发明重点定义预测编码结构,这种预测编码结构能够结合其他各种编码技术,有效的提高视频信号的压缩效率。
本发明提出一种视频信号编码中预测基本单位,其特征在于,所说的预测基本单位为32象素×32象素的方块构成的宏块组,包括原始宏块组和派生宏块组;其中,原始宏块组为连续的32象素×32象素的方块;派生宏块组为对原始宏块组进行水平或垂直1/2抽样并重新排列得到的32象素×32象素的方块。
本发明还提出一种视频信号中基于宏块组结构的分阶段预测编码方法,其特征在于,包括编码过程和解码过程;
所说的编码过程,具体包括以下步骤:
1)将32象素×32象素的方块构成的宏块组作为预测基本单位,该宏块组包括原始宏块组和NS、HS、VS和VHS四种派生宏块组;将所述四种派生宏块组进行两两组合编码构成六种编码宏块组类型:NS-HS宏块组编码类型、VS-VHS宏块组编码类型、NS-VS宏块组编码类型、HS-VHS宏块组编码类型、NS-VHS宏块组编码类型和HS-VS宏块组编码类型;由上述六种编码类型按第一种宏块组编码类型和第二种宏块组编码类型的结构形式组成三种编码结构:NS-HS-VS-VHS、NS-VS-HS-VHS和NS-VHS-HS-VS编码结构,采用上述三种编码结构中任意一种进行编解码;根据派生宏块组特征确定其宏块组中宏块的编码阶段属性;
2)进行第一阶段编码,包括下列步骤:
(1)从原始图象中获得一个原始宏块组,作为当前编码宏块组,根据原始宏块组进行抽样处理得到四种类型的派生宏块组;
(2)对被选定的编码结构的第一种宏块组编码类型进行编码:
首先考虑第一种宏块组编码类型中的第一种派生宏块组的上层/下层两个宏块,根据其宏块的编码阶段属性,如果是在第一阶段编码,则对该宏块编码并计算其编码代价,如果是在第二阶段编码,则估计该宏块编码代价;然后再考虑第一种宏块组编码类型中的另一种派生宏块组的上层/下层两个宏块,根据其宏块的编码阶段属性,如果是在第一阶段编码,则对该宏块编码并计算其编码代价,如果是在第二阶段编码,则估计该宏块编码代价;最后根据这两种派生宏块组上层/下层两个宏块的代价值之和,选择代价值小的派生宏块组类型的上层/下层两个宏块的编码结果作为第一种宏块组编码类型上层/下层宏块的编码结果,其代价值作为第一种宏块组编码类型上层/下层宏块的代价值;
同样进行第一种宏块组编码类型中下层/上层两个宏块的编码,并获得第一种编码宏块组类型下层/上层宏块的编码结果和下层/上层宏块的代价值;
将上、下层宏块的代价值之和作为第一种宏块组编码类型的代价值;
(3)按照第(2)步相同的处理过程对被选定的编码结构的第二种宏块组编码类型进行编码,得到第二种宏块组编码类型的代价值;
(4)当前编码宏块组的编码码流输出:
比较第(2)步中第一种宏块组编码类型与第(3)步中第二种宏块组编码类型的代价值,决定当前编码宏块组采用哪种编码类型:如果第一种宏块组编码类型的代价值小,当前编码宏块组的编码类型就为第一种宏块组编码类型,再根据第(2)步的结果,决定当前编码宏块组的上、下层采用哪种派生宏块组类型,根据派生宏块组中宏块的编码阶段属性,输出已经编码宏块的码流;如果第二种宏块组编码类型的代价值小,当前编码宏块组的编码类型就为第二种宏块组编码类型,再根据第(3)步的结果,决定当前编码宏块组的上、下层采用哪种派生宏块组类型,根据派生宏块组中宏块的编码阶段属性,输出已经编码宏块的码流;
(5)对当前编码宏块组中没有编码的宏块进行插值获得重建宏块,并与由编码获得的重建宏块构成了当前编码宏块组的重建宏块组;
(6)重复(1)到(5)步骤,直到原始图象中所有的原始宏块组完成编码,则第一阶段编码完成;在第一阶段编码中所有的重建宏块组构成了重建帧图象,作为第二阶段编码时的参考帧;
3)进行第二阶段编码,包括下列步骤:
(1)从原始图象中获得一个与第一阶段(1)步相同的原始宏块组,即当前编码宏块组,根据原始宏块组进行抽样处理得到四种类型的宏块组,即NS、HS、VS、VHS宏块组;
(2)对当前编码宏块组中第一阶段没有编码的宏块进行编码,以第一阶段编码中所得到的重建帧图象作为第二阶段编码时的参考帧,对需要编码的宏块进行编码,并得到其重建宏块;
(3)用编码得到的重建宏块替代第一阶段编码时通过插值得到的重建宏块,并且输出编码码流;
(4)重复(1)到(3)步骤,直到原始图象中所有的原始宏块组完成第二阶段编码,则第二阶段编码完成;
所说的解码过程,具体包括以下步骤:
1)第一阶段解码
(1)首先根据编码码流判断要解码的宏块组编码类型;
(2)根据宏块组编码类型解码:根据编码码流判断上层和下层两个宏块类型,同时根据该宏块的编码阶段属性,决定是否解码:如果该宏块在第一阶段编码,则该宏块直接解码并得到解码重建宏块;如果该宏块在第二阶段编码,则该宏块留在第二阶段解码;
(3)根据已经解码的宏块对第(2)步宏块组中没有解码的宏块进行插值获得重建宏块,并与第(2)步中解码得到的重建宏块构成一个完整的重建宏块组;
(4)重复第(1)到第(3)的步骤,直到所有宏块组都被解码,则第一阶段解码完成。在第一阶段解码中所有的重建宏块组构成了重建帧图象,作为第二阶段解码的参考帧图象;
2)第二阶段解码:
(1)对解码的宏块组中第一阶段没有解码的宏块进行解码,以第一阶段得到的解码重建帧图象作为解码参考帧,对这些未解码的宏块进行解码,并得到解码宏块的重建宏块;
(2)用第(1)步的解码重建宏块替代第一阶段通过插值得到的重建宏块,这样得到最终的解码重建帧,并以此作为解码下一帧的解码参考帧。
本发明的原理:
在视频编码时,预测的好坏决定编码效率的高低,因此对于一幅图象,如果考虑先编码其中一部分,但这部分能够比较满意的重建整幅图象,然后将这个重建图象作为这幅图象中剩余部分编码时预测的参考图象,这样能有效的提高那些剩余部分图象的编码效率,这就是本发明的分阶段预测编码思想。本发明提出的宏块组结构中,有些宏块在第一阶段编码,有些留在第二阶段编码,这样就很好的实现了分阶段预测编码思想。
本发明的效果:
本发明主要特点是定义了预测编码结构,这种预测编码结构能够结合其他各种编码技术,有效的提高视频信号的压缩效率。针对最新的JVT参考软件JM61e,在相同的试验条件下,所做试验表明本方案的编码效率明显高于JVT结果。
附图说明
图1为本发明采用的宏块组结构示意图。
图2为本发明的四种类型的派生宏块组结构示意图。
图3为本发明的三种类型派生宏块组的插值结构示意图。
具体实施方式  本发明提出的一种视频信号中基于宏块组结构的分阶段预测编码方法,结合附图及实施例详细说明如下:
本发明定义32象素×32象素的方块为宏块组(Macroblock Group),定义连续的32象素×32象素的方块为原始宏块组。
本发明的原始宏块组产生方法为:对于逐行扫描的原始图象,一个连续的32象素×32象素的方块就构成一个原始宏块组;对于隔行扫描的原始图象,先先将时间上相邻的奇场和偶场,或偶场和奇场图象按自然空间位置拼成帧图象,然后在拼成的帧图象中一个连续的32象素×32象素的方块就构成一个原始宏块组,如图1所示。
对原始宏块组进行水平或垂直1/2抽样,就得到四种类型的派生宏块组,如图2所示。
图2中A为连续宏块组(Non-sampling Macroblock Group-NS):对原始宏块组不进行任何抽样就得到这种类型宏块组,该派生宏块组由NS1、NS2、NS3和NS4组成,其中NS1和NS2是上层两个宏块,NS3和NS4是下层两个宏块。具体定义为:
NS1(x,y)=MBG(x,y),
NS2(x,y)=MBG(x+16,y),
NS3(x,y)=MBG(x,y+16),
NS4(x,y)=MBG(x+16,y+16),x,y=1,…,16,
其中,MBG(x,y)是原始宏块组中在(x,y)点的象素值,这里x,y=1,…,32。
图2中B为水平抽样宏块组(Horiztonal-sampling Macroblock Group-HS):对原始宏块组进行水平1/2抽样就得到这种类型宏块组,该派生宏块组由HS1、HS2、HS3和HS4组成,其中HS1和HS2是上层两个宏块,HS3和HS4是下层两个宏块。具体定义为:
HS1(x,y)=MBG(2x,y),
HS2(x,y)=MBG(2x+1,y),
HS3(x,y)=MBG(2x,y+16),
HS4(x,y)=MBG(2x+1,y+16),x,y=1,…,16,
其中,MBG(x,y)是原始宏块组中在(x,y)点的象素值这里x,y=1,…,32。
图2中C为垂直抽样宏块组(Vertical-sampling Macroblock Group-VS):对原始宏块组进行垂直1/2抽样就得到这种类型宏块组,该派生宏块组由VS1、VS2、VS3和VS4组成,其中VS1和VS2是上层两个宏块,VS3和VS4是下层两个宏块。具体定义为:
VS1(x,y)=MBG(x,2y),
VS2(x,y)=MBG(x+16,2y),
VS3(x,y)=MBG(x,2y+1),
VS4(x,y)=MBG(x+16,2y+1),x,y=1,…,16,
其中,MBG(x,y)是原始宏块组中在(x,y)点的象素值这里x,y=1,…,32。
图2中D为垂直水平抽样宏块组(Vertical-Horiztonal-sampling Macroblock Group-VHS):对原始宏块组进行垂直1/2抽样再水平1/2抽样就得到这种类型宏块组,该派生宏块组由VHS1、VHS2、VHS3和VHS4组成,其中VHS1和VHS2是上层两个宏块,VHS3和VHS4是下层两个宏块。具体定义为:
VHS1(x,y)=MBG(2x,2y),
VHS2(x,y)=MBG(2x+1,2y),
VHS3(x,y)=MBG(2x,2y+1),
VHS4(x,y)=MBG(2x+1,2y+1),x,y=1,…,16,
其中,MBG(x,y)是原始宏块组中在(x,y)点的象素值,这里x,y=1,…,32。
本发明将上述四种派生宏块组进行两两组合进行编码构成六种宏块组编码类型:
1.对NS宏块组和HS宏块组进行编码定义为NS-HS宏块组编码;
2.对VS宏块组和VHS宏块组进行编码定义为VS-VHS宏块组编码;
3.对NS宏块组和VS宏块组进行编码定义为NS-VS宏块组编码;
4.对HS宏块组和VHS宏块组进行编码定义为HS-VHS宏块组编码;
5.对NS宏块组和VHS宏块组进行编码定义为NS-VHS宏块组编码;
6.对HS宏块组和VS宏块组进行编码定义为HS-VS宏块组编码。
再将上述六种宏块组编码类型按第一种宏块组编码类型和第二种宏块组编码类型的结构形式组成以下三种编码结构:
将第1种宏块组编码类型(NS-HS宏块组编码类型)和第2种宏块组编码类型(VS-VHS宏块组编码类型)结合构成NS-HS-VS-VHS编码结构;
将第3种宏块组编码类型(NS-VS宏块组编码类型)和第4种宏块组编码类型(HS-VHS宏块组编码类型)结合构成NS-VS-HS-VHS编码结构;
将第5种编码类型(NS-VHS宏块组编码类型)和第6种宏块组编码类型(HS-VS宏块组编码类型)结合构成NS-VHS-HS-VS编码结构。
本发明可以采用上述三种编码结构中任意一种进行编解码(在本实施例中采用NS-HS-VS-VHS编码结构)。
本发明将根据派生宏块组特征确定其中宏块的编码阶段属性(即将有些宏块确定在第一阶段编码,有些宏块在第二阶段编码):
在不同类型的派生宏块组中有些宏块在第一阶段编码,有些在第二阶段编码。区分宏块编码阶段属性的原则是:在派生宏块组中,如果这个宏块被其他的已编码宏块通过插值能够获得比较满意的重建宏块,则这个宏块留在第二阶段编码,否则在第一阶段编码。
例如:对于NS宏块组,每个宏块必须编码才能获得比较满意的重建宏块,所以在这种宏块组中每个宏块都必须在第一阶段编码。
对于HS宏块组,HS2可以由HS1插值得到其比较满意的重建宏块;同样HS4可以由HS3插值得到其比较满意的重建宏块。因此在这种类型宏块组中,HS1和HS3在第一阶段编码,HS2和HS4在第二阶段编码。
对于VS宏块组,VS3可以由VS1插值得到其比较满意的重建宏块,VS4可以由VS2插值得到其比较满意的重建宏块。因此在这种类型宏块组中,VS1和VS2在第一阶段编码,VS3和VS4在第二阶段编码。
对于VHS宏块组,VHS2可以由VHS1插值得到其比较满意的重建宏块;同样VHS3可以由VHS1插值得到其比较满意的重建宏块,VHS4可以由VHS2和VHS3插值得到其比较满意的重建宏块。  因此在这种类型宏块组中,VHS1放在第一阶段编码,VHS2,VHS3和VHS4放在第二阶段编码。
上述对宏块的编码阶段的划分只是一个例子(被用于本实施例中),本发明还可以采用其它划分形式,例如:
对于HS宏块组,可以将HS2和HS4放在第一阶段编码,HS1和HS3在第二阶段编码;也可以将HS2和HS3放在第一阶段编码,HS1和HS4放在第二阶段编码;还可以将HS1和HS4放在第一阶段编码,HS2和HS3放在第二阶段编码;还可以将HS1、HS2、HS3和HS4四个宏块中任意三个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码。
对于VS宏块组,可以将VS3和VS4放在第一阶段编码,VS1和VS2放在第二阶段编码;还可以将VS1、VS2、VS3和VS4四个宏块中任意三个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码。
对于VHS宏块组,可以将VHS1和VHS3放在第一阶段编码,VHS2和VHS4放在第二阶段编码;也可以将VHS2和VHS4放在第一阶段编码,VHS1和VHS3放在第二阶段编码;也可以将VHS1和VHS4放在第一阶段编码,VHS2和VHS3放在第二阶段编码;也可以将VHS2和VHS3放在第一阶段编码,VHS1和VHS4放在第二阶段编码;还可以将VHS1、VHS2、VHS3和VHS4四个宏块中任意一个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码;还可以将VHS1、VHS2、VHS3和VHS4四个宏块中任意三个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码。
本发明提出的一种视频信号中基于宏块组结构的分阶段预测编码方法的实施例,包括编码过程和解码过程;
所说的编码过程,具体包括以下步骤:
第一阶段编码
1)从原始图象中获得一个原始宏块组,即为当前编码宏块组,根据原始宏块组进行抽样处理得到四种类型的派生宏块组,即NS、HS、VS、VHS宏块组。
2)对NS宏块组和HS宏块组进行编码(NS-HS宏块组编码):
首先对NS宏块组的上层两个宏块NS1和NS2进行编码并计算其编码代价,然后对HS的上层左边宏块HS1进行编码并计算其编码代价,再估计上层右边宏块HS2的编码代价,最后根据NS和HS宏块组上层两个宏块的代价值之和,选择代价值小的宏块组类型的上层两个宏块(NS1和NS2或HS1和HS2)的编码结果作为NS-HS宏块组上层宏块的编码结果,其代价值作为NS-HS宏块组上层宏块的代价值。
同样,对NS宏块组的下层两个宏块(NS3和NS4)进行编码并计算其编码代价,然后对HS的下层左边宏块HS3进行编码并计算其编码代价,再估计下层右边宏块HS4的编码代价,最后根据NS和HS宏块组下层两个宏块的代价值之和,选择代价值小的宏块组类型的下层两个宏块(NS3和NS4或HS3和HS4)的编码结果作为NS-HS宏块组下层宏块的编码结果,其代价值作为NS-HS宏块组下层宏块的代价值。
将上、下层宏块的代价值之和作为NS-HS宏块组的代价值。
上述步骤中,上层和下层的先后编码顺序可以颠倒,上层和下层两个宏块的左右编码顺序可以颠倒。
3)对VS宏块组和VHS宏块组进行编码(VS-VHS宏块组编码):
首先对VS宏块组的上层两个宏块(VS1和VS2)进行编码并计算其编码代价,然后对VHS的上层左边宏块VHS1进行编码并计算其编码代价,再估计上层右宏块VHS2的编码代价,最后根据VS和VHS宏块组上层两个宏块的代价值之和,选择代价值小的宏块组类型的上层两个宏块(VS1和VS2或VHS1和VHS2)的编码结果作为VS-VHS宏块组上层宏块的编码结果,其代价值作为VS-VHS宏块组上层宏块的代价值。
估计VS宏块组和VHS的下层两个宏块的编码代价,比较这两种类型宏块组下层宏块的代价值之和,选择代价值小的宏块组类型的下层两个宏块(VS3和VS4或VHS3和VHS4)的的编码结果作为VS-VHS宏块组下层宏块的编码结果,其代价值作为VS-VHS宏块组下层宏块的代价值。
将上、下层宏块的代价值之和作为VS-VHS宏块组的代价值。
上述步骤中,上层和下层的先后编码顺序可以颠倒,上层和下层两个宏块的左右编码顺序可以颠倒。
4)当前编码宏块组的编码码流输出:
比较步骤2)中NS-HS宏块组与步骤3)中VS-VHS宏块组的代价值,决定当前编码宏块组采用哪种编码类型:如果NS-HS宏块组的代价值小,当前编码宏块组的编码类型就为NS-HS宏块组类型;再根据第2)步的结果,决定当前编码宏块组的上、下层的派生宏块组类型:如果NS-HS宏块组的上层两个宏块是NS宏块组,则输出NS1和NS2宏块的编码码流;如果NS-HS宏块组的上层两个宏块是HS宏块组,则只输出HS1宏块的编码码流;如果NS-HS宏块组的下层两个宏块是NS宏块组,则输出NS3和NS4宏块的编码码流;如果NS-HS宏块组的下层两个宏块是HS宏块组,则只输出HS3宏块的编码码流;相反,如果VS-VHS宏块组的代价值小,当前编码宏块组的编码类型就为VS-VHS宏块组类型。同时根据第3)步的结果,也决定了当前编码宏块组的上、下层的派生宏块组类型:如果VS-VHS宏块组的上层两个宏块是VS宏块组,则输出VS1和VS2宏块的编码码流;如果VS-VHS宏块组的上层两个宏块是VHS宏块组,则只输出VHS1宏块的编码码流。
5)对当前编码宏块组中没有编码的宏块进行插值获得重建宏块:
经过第4)步,在当前编码宏块组中可能有些宏块已经编码输出,有些宏块没有编码;因为已经编码的宏块能够得到重建的宏块,而没有编码的宏块不能得到重建的宏块,只能通过插值得到这些没有编码宏块的重建宏块;这样就得到了当前编码宏块组的整个重建宏块组;根据第4)步,需要插值的宏块为:如果当前编码宏块组的编码类型为NS-HS宏块组类型,当其上层两个宏块是HS宏块组时,则HS2宏块需要插值;当其下层两个宏块是HS宏块组时,则HS4宏块需要插值;如果当前编码宏块组的编码类型为VS-VHS宏块组类型,当其上层两个宏块是VHS宏块组,则VHS2宏块需要插值;其下层两个宏块不管属于什么类型的派生宏块组,两个宏块都需要插值;宏块的插值可以采用各种已有的插值技术实现。
6)重复1)到5)步骤,直到原始图象中所有的原始宏块组完成编码,则第一阶段编码完成。在第一阶段编码中所有的重建宏块组构成了重建帧图象,作为第二阶段编码时的参考帧。
第二阶段编码:
1)从原始图象中获得一个与第一阶段1)步相同的原始宏块组,即当前编码宏块组,根据原始宏块组进行抽样处理得到四种类型的宏块组,即NS、HS、VS、VHS宏块组。
2)对当前编码宏块组中第一阶段没有编码的宏块进行编码:
第一阶段编码已经决定了当前编码宏块组的编码类型以及已经编码的宏块和没有编码的宏块,因此这一步需要编码的宏块就是第一阶段没有编码的宏块。具体判断过程如下:如果当前编码宏块组的编码类型是NS-HS宏块组类型,而且NS-HS宏块组的上层两个宏块是HS宏块组,则HS2宏块需要编码;如果NS-HS宏块组的下层两个宏块是HS宏块组,则HS4宏块需要编码;如果当前编码宏块组的编码类型是VS-VHS宏块组类型,而且VS-VHS宏块组的上层两个宏块是VHS宏块组,则VHS2宏块需要编码;如果VS-VHS宏块组的下层两个宏块是VS宏块组,则VS3和VS4宏块需要编码,如果VS-VHS宏块组的下层两个宏块是VHS宏块组,则VHS3和VHS4宏块需要编码。以第一阶段编码中所得到的重建帧图象和第一阶段宏块编码时使用的参考帧一起作为第二阶段编码时的参考帧,也可以只使用第一阶段编码中所得到的重建帧图象作为第二阶段编码时的参考帧,对需要编码的宏块进行编码,并得到重建宏块。
3)编码宏块的码流输出和更新重建宏块:
输出编码宏块的码流,用第2)步得到的编码重建宏块替代第一阶段编码时通过插值得到的重建宏块。
4)重复1)到3)步骤,直到原始图象中所有的原始宏块组完成第二阶段编码,则第二阶段编码完成。
在上述的编码过程中,宏块编码可以采用已有的各种编码技术实现。宏块编码后,计算宏块的编码代价也是采用已有的编码代价值计算技术。估计宏块的编码代价是指不进行该宏块编码,而只是根据其周围已经编码的宏块,估计出该宏块的编码代价,例如一个宏块的编码代价可以估计为其周围已经编码的宏块中与其最相似宏块的编码代价值。
在第二阶段编码过程的宏块编码预测中,当以第一阶段编码得到的重建图象为参考图象时,经过编码运动估计后,得到的最相似匹配块可以再经过一个滤波处理后成为编码块的预测块。滤波处理可以采用常规的多种滤波手段,如采用去块效应滤波器,使预测到达更好的精度,从而提高编码效率;也可以采用简单的滤波处理,例如把块中奇数变成偶数或把偶数变成奇数使数据奇偶化,以达到其它编码目的。
所说的解码过程,具体包括以下步骤:
第一阶段解码
1)判断解码的宏块组类型:
首先根据编码码流判断要解码的宏块组类型。如果是NS-HS宏块组类型,则执行第2步,如果是VS-VHS宏块组类型,则执行第3步。
2)NS-HS宏块组解码:
根据编码码流判断上层两个宏块的类型,如果上层两个宏块是NS类型,直接解码这两个宏块NS1和NS2;如果上层两个宏块是HS类型,直接解码这两个宏块中左边的宏块HS1,右边的宏块HS2留在第二阶段解码。
然后,根据码流判断下层两个宏块的类型,如果下层两个宏块是NS类型,直接解码这两个宏块NS3和NS4;如果下层两个宏块是HS类型,直接解码这两个宏块中左边的宏块HS3,右边的宏块HS4留在第二阶段解码。
3)VS-VHS宏块组解码:
根据码流判断上层两个宏块类型,如果上层两个宏块是VS类型,直接解码这两个宏块VS1和VS2;如果上层两个宏块是VHS类型,直接解码这两个宏块中左边的宏块VHS1,右边的宏块VHS2留在第二阶段解码。
然后,下层两个宏块留在第二阶段解码。
4)对第2)步或第3)步的宏块组中没有解码的宏块进行插值获得重建宏块:
根据已经解码的宏块对没有解码的宏块进行插值,这样就得到了一个完整的重建宏块组。图3表示了3种类型的派生宏块组的插值情况,其中,a是HS宏块组,b是VS宏块组,c是VHS宏块组。每种宏块组中白色表示已解码宏块,灰色表示需要插值的宏块。这里宏块的插值采用与编码过程中宏块插值时相同的插值技术。
5)重复第1)到第4)的步骤,直到所有宏块组都被解码,则第一阶段解码完成。在第一阶段解码中所有的重建宏块组构成了重建帧图象,作为第二阶段解码的参考图象。
第二阶段解码:
1)对解码的宏块组中第一阶段没有解码的宏块进行解码:
经过第一阶段解码,在宏块组中可能还有一些宏块没有解码。以第一阶段得到的解码重建帧图象和第一阶段使用的解码参考帧作为第二阶段解码时的参考帧,也可以只使用第一阶段解码中所得到的重建帧图象作为第二阶段解码时的参考帧,再对这些未解码的宏块进行解码,得到其重建宏块。
2)更新解码重建帧:
用第1)步的解码重建宏块替代第一阶段通过插值得到重建宏块,这样得到最终的解码重建帧,并以此作为解码下一帧的解码参考帧。
在上述的解码过程中,宏块解码可以采用与编码相对应的已有各种解码技术实现。但是在第二阶段解码过程的宏块解码运动补偿中,当以第一阶段解码得到的重建图象为参考图象时,经过解码运动补偿后,得到的最相似匹配块可以再经过一个与在编码方法步骤中相同的滤波处理后成为解码补偿块。

Claims (9)

1、一种视频信号编码中预测结构,其特征在于,所说的预测结构为32象素×32象素的方块构成的宏块组,包括原始宏块组和派生宏块组;其中,原始宏块组为连续的32象素×32象素的方块;派生宏块组为对原始宏块组进行水平或垂直1/2抽样并重新排列得到的32象素×32象素的方块。
2、如权利要求1所述的视频信号编码中预测结构,其特征在于,所说的原始宏块组产生方法为:对于逐行扫描的原始图象,一个连续的32象素×32象素的方块就构成一个原始宏块组;对于隔行扫描的原始图象,先将时间上相邻的奇场和偶场,或偶场和奇场图象按自然空间位置拼成帧图象,然后在拼成的帧图象中一个连续的32象素×32象素的方块就构成一个原始宏块组。
3、如权利要求1所述的视频信号编码中预测结构,其特征在于,所说的派生宏块组包括:对原始宏块组不进行任何抽样得到的连续宏块组,该宏块组由NS1、NS2、NS3和NS4组成;对原始宏块组进行水平1/2抽样就得到的水平抽样宏块组,该宏块组由HS1、HS2、HS3和HS4组成;对原始宏块组进行垂直1/2抽样就得到的垂直抽样宏块组,该宏块组由VS1、VS2、VS3和VS4组成;以及对原始宏块组进行垂直1/2抽样再水平1/2抽样得到的垂直水平抽样宏块组,该宏块组由VHS1、VHS2、VHS3和VHS4组成。
4、一种视频信号中基于宏块组预测结构的分阶段预测编码方法,其特征在于,包括编码过程和解码过程;
所说的编码过程,具体包括以下步骤:
1)将32象素×32象素的方块构成的宏块组作为预测基本单位,该宏块组包括原始宏块组和NS、HS、VS和VHS四种派生宏块组;将所述四种派生宏块组进行两两组合编码构成六种编码宏块组类型:NS-HS宏块组编码类型、VS-VHS宏块组编码类型、NS-VS宏块组编码类型、HS-VHS宏块组编码类型、NS-VHS宏块组编码类型和HS-VS宏块组编码类型;由上述六种编码类型按第一种宏块组编码类型和第二种宏块组编码类型的结构形式组成三种编码结构:NS-HS-VS-VHS、NS-VS-HS-VHS和NS-VHS-VS编码结构,采用上述三种编码结构中任意一种进行编解码;根据派生宏块组特征确定其宏块组中宏块的编码阶段属性;
2)进行第一阶段编码,包括下列步骤:
(1)从原始图象中获得一个原始宏块组,作为当前编码宏块组,根据原始宏块组进行抽样处理得到四种类型的派生宏块组;
(2)对被选定的编码结构的第一种宏块组编码类型进行编码:
首先考虑第一种宏块组编码类型中的第一种派生宏块组的上层/下层两个宏块,根据其宏块的编码阶段属性,如果是在第一阶段编码,则对该宏块编码并计算其编码代价,如果是在第二阶段编码,则估计该宏块编码代价;然后再考虑第一种宏块组编码类型中的另一种派生宏块组的上层/下层两个宏块,根据其宏块的编码阶段属性,如果是在第一阶段编码,则对该宏块编码并计算其编码代价,如果是在第二阶段编码,则估计该宏块编码代价;最后根据这两种派生宏块组上层/下层两个宏块的代价值之和,选择代价值小的派生宏块组类型的上层/下层两个宏块的编码结果作为第一种宏块组编码类型上层/下层宏块的编码结果,其代价值作为第一种宏块组编码类型上层/下层宏块的代价值;
同样进行第一种宏块组编码类型中下层/上层两个宏块的编码,并获得第一种编码宏块组类型下层/上层宏块的编码结果和下层/上层宏块的代价值;
将上、下层宏块的代价值之和作为第一种宏块组编码类型的代价值;
(3)按照第(2)步相同的处理过程对被选定的编码结构的第二种宏块组编码类型进行编码,得到第二种宏块组编码类型的代价值;
(4)当前编码宏块组的编码码流输出:
比较第(2)步中第一种宏块组编码类型与第(3)步中第二种宏块组编码类型的代价值,决定当前编码宏块组采用哪种编码类型:如果第一种宏块组编码类型的代价值小,当前编码宏块组的编码类型就为第一种宏块组编码类型,再根据第(2)步的结果,决定当前编码宏块组的上、下层采用哪种派生宏块组类型,根据派生宏块组中宏块的编码阶段属性,输出已经编码宏块的码流;如果第二种宏块组编码类型的代价值小,当前编码宏块组的编码类型就为第二种宏块组编码类型,再根据第(3)步的结果,决定当前编码宏块组的上、下层采用哪种派生宏块组类型,根据派生宏块组中宏块的编码阶段属性,输出已经编码宏块的码流;
(5)对当前编码宏块组中没有编码的宏块进行插值获得重建宏块,并与由编码获得的重建宏块构成了当前编码宏块组的重建宏块组;
(6)重复(1)到(5)步骤,直到原始图象中所有的原始宏块组完成编码,则第一阶段编码完成;在第一阶段编码中所有的重建宏块组构成了重建帧图象,作为第二阶段编码时的参考帧;
3)进行第二阶段编码,包括下列步骤:
(1)从原始图象中获得一个与第一阶段(1)步相同的原始宏块组,即当前编码宏块组,根据原始宏块组进行抽样处理得到四种类型的宏块组,即NS、HS、VS、VHS宏块组;
(2)对当前编码宏块组中第一阶段没有编码的宏块进行编码,以第一阶段编码中所得到的重建帧图象作为第二阶段编码时的参考帧,对需要编码的宏块进行编码,并得到其重建宏块;
(3)用编码得到的重建宏块替代第一阶段编码时通过插值得到的重建宏块,并且输出编码码流;
(4)重复(1)到(3)步骤,直到原始图象中所有的原始宏块组完成第二阶段编码,则第二阶段编码完成;
所说的解码过程,具体包括以下步骤:
1)第一阶段解码
(1)首先根据编码码流判断要解码的宏块组编码类型;
(2)根据宏块组编码类型解码:根据编码码流判断上层和下层两个宏块类型,同时根据该宏块的编码阶段属性,决定是否解码:如果该宏块在第一阶段编码,则该宏块直接解码并得到解码重建宏块;如果该宏块在第二阶段编码,则该宏块留在第二阶段解码;
(3)根据已经解码的宏块对第(2)步宏块组中没有解码的宏块进行插值获得重建宏块,并与第(2)步中解码得到的重建宏块构成一个完整的重建宏块组;
(4)重复第(1)到第(3)的步骤,直到所有宏块组都被解码,则第一阶段解码完成。在第一阶段解码中所有的重建宏块组构成了重建帧图象,作为第二阶段解码的参考帧图象;
2)第二阶段解码:
(1)对解码的宏块组中第一阶段没有解码的宏块进行解码,以第一阶段得到的解码重建帧图象作为解码参考帧,对这些未解码的宏块进行解码,并得到解码宏块的重建宏块;
(2)用第(1)步的解码重建宏块替代第一阶段通过插值得到的重建宏块,这样得到最终的解码重建帧,并以此作为解码下一帧的解码参考帧。
5、如权利要求4所述的视频信号中基于宏块组预测结构的分阶段预测编码方法,其特征在于,
在所说的第二阶段编码过程的宏块编码的预测过程中,当以第一阶段编码得到的重建图象为参考图象时,经过编码运动估计后,得到的最相似匹配块再经过一个滤波处理后成为编码块的预测块;
在所说的第二阶段解码过程的宏块解码运动补偿中,当以第一阶段解码得到的重建图象为参考图象时,经过解码运动补偿后,得到的最相似匹配块再经过一个与在编码方法步骤中相同的滤波处理后成为解码补偿块。
6、如权利要求4所述的视频信号中基于宏块组预测结构的分阶段预测编码方法,其特征在于,所说的第二阶段编码时的参考帧还包括第一阶段宏块编码时使用的参考帧,所说的第二阶段解码时的参考帧还包括第一阶段宏块解码时使用的参考帧。
7、如权利要求4所述的视频信号中基于宏块组预测结构的分阶段预测编码方法,其特征在于,所说的四种派生宏块组包括:对原始宏块组不进行任何抽样得到的连续宏块组,该宏块组由NS1、NS2、NS3和NS4组成;对原始宏块组进行水平1/2抽样就得到的水平抽样宏块组,该宏块组由HS1、HS2、HS3和HS4组成;对原始宏块组进行垂直1/2抽样就得到的垂直抽样宏块组,该宏块组由VS1、VS2、VS3和VS4组成;以及对原始宏块组进行垂直1/2抽样再水平1/2抽样得到的垂直水平抽样宏块组,该宏块组由VHS1、VHS2、VHS3和VHS4组成。
8、如权利要求7所述的视频信号中基于宏块组预测结构的分阶段预测编码方法,其特征在于,所说的派生宏块组中宏块的编码阶段属性为:
对于NS宏块组,每个宏块都在第一阶段编码;
对于HS宏块组,HS1和HS3在第一阶段编码,HS2和HS4在第二阶段编码;
对于VS宏块组,VS1和VS2在第一阶段编码,VS3和VS4在第二阶段编码;
对于VHS宏块组,VHS1放在第一阶段编码,VHS2,VHS3和VHS4放在第二阶段编码。
9、如权利要求7所述的视频信号中基于宏块组预测结构的分阶段预测编码方法,其特征在于,所说的派生宏块组中宏块的编码阶段属性还可以为:
对于HS宏块组,可以将HS2和HS4放在第一阶段编码,HS1和HS3在第二阶段编码;也可以将HS2和HS3放在第一阶段编码,HS1和HS4放在第二阶段编码;还可以将HS1和HS4放在第一阶段编码,HS2和HS3放在第二阶段编码;还可以将HS1、HS2、HS3和HS4四个宏块中任意三个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码;
对于VS宏块组,可以将VS3和VS4放在第一阶段编码,VS1和VS2放在第二阶段编码;还可以将VS1、VS2、VS3和VS4四个宏块中任意三个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码;
对于VHS宏块组,可以将VHS1和VHS3放在第一阶段编码,VHS2和VHS4放在第二阶段编码;也可以将VHS2和VHS4放在第一阶段编码,VHS1和VHS3放在第二阶段编码;也可以将VHS1和VHS4放在第一阶段编码,VHS2和VHS3放在第二阶段编码;也可以将VHS2和VHS3放在第一阶段编码,VHS1和VHS4放在第二阶段编码;还可以将VHS1、VHS2、VHS3和VHS4四个宏块中任意一个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码;还可以将VHS1、VHS2、VHS3和VHS4四个宏块中任意三个宏块放在第一阶段编码,剩下的宏块放在第二阶段编码。
CN 03148155 2003-07-04 2003-07-04 一种视频信号中基于宏块组结构的分阶段预测编码方法 Expired - Fee Related CN1209927C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 03148155 CN1209927C (zh) 2003-07-04 2003-07-04 一种视频信号中基于宏块组结构的分阶段预测编码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 03148155 CN1209927C (zh) 2003-07-04 2003-07-04 一种视频信号中基于宏块组结构的分阶段预测编码方法

Publications (2)

Publication Number Publication Date
CN1476252A true CN1476252A (zh) 2004-02-18
CN1209927C CN1209927C (zh) 2005-07-06

Family

ID=34156205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 03148155 Expired - Fee Related CN1209927C (zh) 2003-07-04 2003-07-04 一种视频信号中基于宏块组结构的分阶段预测编码方法

Country Status (1)

Country Link
CN (1) CN1209927C (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102291581A (zh) * 2011-09-09 2011-12-21 西安电子科技大学 支持帧场自适应运动估计的实现方法
CN102611880A (zh) * 2011-01-19 2012-07-25 华为技术有限公司 标识图像块几何划分模式的编解码方法和设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611880A (zh) * 2011-01-19 2012-07-25 华为技术有限公司 标识图像块几何划分模式的编解码方法和设备
WO2012097740A1 (zh) * 2011-01-19 2012-07-26 华为技术有限公司 标识图像块几何划分模式的编解码方法和设备
CN102611880B (zh) * 2011-01-19 2015-02-04 华为技术有限公司 标识图像块几何划分模式的编解码方法和设备
CN102291581A (zh) * 2011-09-09 2011-12-21 西安电子科技大学 支持帧场自适应运动估计的实现方法
CN102291581B (zh) * 2011-09-09 2013-09-25 西安电子科技大学 支持帧场自适应运动估计的实现方法

Also Published As

Publication number Publication date
CN1209927C (zh) 2005-07-06

Similar Documents

Publication Publication Date Title
CN100345450C (zh) 视频或图像去块滤波的方法和装置
CN1929611A (zh) 用于视频帧内预测编码和解码的方法和装置
CN1285216C (zh) 图像编码方法和装置、图像译码方法和装置
CN1921630A (zh) 视频编码/解码的装置和方法及其记录介质
CN1633811A (zh) 图像编码方法、图像译码方法、图像编码装置、图像译码装置、程序、计算机数据信号,以及图像传送***
CN1874521A (zh) 用于图像编码和解码的设备和方法
CN1820512A (zh) 消除块效应的方法、介质和滤波器
CN1874519A (zh) 使用视频对称的帧内预测方法和设备及编解码方法及设备
CN1925619A (zh) 视频编码和解码的装置和方法及其记录介质
CN101039432A (zh) 在编码过程中实现自适应量化的方法及装置
CN1497981A (zh) 用于编码和解码运动矢量的方法和装置
CN1829328A (zh) 预测图像产生方法及设备和图像视频编/解码方法及设备
CN1777283A (zh) 一种基于微块的视频信号编/解码方法
CN1638486A (zh) 预测编码设备、预测编码方法、及其计算机可读记录介质
CN1324904C (zh) 运动图像编码设备和运动图像编码方法
CN1608372A (zh) 在视频编码器中选择宏块量化参数的方法和装置
CN1640149A (zh) 影像数据转换装置以及影像数据转换方法
CN101057506A (zh) 使用色度分量间相关性的彩色图像编码和解码方法和设备
CN1929613A (zh) 用于图像编码和解码的装置及方法、记录介质
CN1767653A (zh) 一种码率控制方法
CN1245028C (zh) 非均匀多层次六边形格点整象素运动搜索方法
CN1224270C (zh) 用于宏块组结构的两阶段预测编码的帧内编码帧编码方法
CN1708135A (zh) 用于预测视频数据单元的直流系数的方法和设备
CN1476253A (zh) 一种基于预测块组的采用帧内预测的帧内编码帧编码方法
CN1268136C (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
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: QINGHUA UNIVERSITY; SHANGHAI TELCOM ( GROUP ) CO.

Free format text: FORMER OWNER: QINGHUA UNIVERSITY

Effective date: 20070824

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20070824

Address after: 100084 Tsinghua University, Beijing, Haidian District

Co-patentee after: Central Academy Guangdian (Group) Co., Ltd., Shanghai

Patentee after: Tsinghua University

Address before: 100084 Tsinghua University, Beijing, Haidian District

Patentee before: Tsinghua University

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050706

Termination date: 20120704