CN102271256B - 基于模式决策的自适应帧组分布式视频编码和解码方法 - Google Patents

基于模式决策的自适应帧组分布式视频编码和解码方法 Download PDF

Info

Publication number
CN102271256B
CN102271256B CN 201110275465 CN201110275465A CN102271256B CN 102271256 B CN102271256 B CN 102271256B CN 201110275465 CN201110275465 CN 201110275465 CN 201110275465 A CN201110275465 A CN 201110275465A CN 102271256 B CN102271256 B CN 102271256B
Authority
CN
China
Prior art keywords
frame
piece
decoding
mode
key frame
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.)
Expired - Fee Related
Application number
CN 201110275465
Other languages
English (en)
Other versions
CN102271256A (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.)
Changzhou Campus of Hohai University
Original Assignee
Changzhou Campus of Hohai 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 Changzhou Campus of Hohai University filed Critical Changzhou Campus of Hohai University
Priority to CN 201110275465 priority Critical patent/CN102271256B/zh
Publication of CN102271256A publication Critical patent/CN102271256A/zh
Application granted granted Critical
Publication of CN102271256B publication Critical patent/CN102271256B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开了一种能够提高率失真性能的基于模式决策的自适应帧组编解码方法,帧组编码为把帧分为关键帧、准关键帧、WZ帧;对准关键帧的块采用帧间模式、帧内模式或Skip模式进行编码;对WZ帧的块采用WZ模式、帧内/WZ模式或Skip/WZ模式进行编码;帧组解码分为关键帧解码、准关键帧解码和WZ帧解码;对关键帧采用传统的帧内解码方法;对准关键帧分为帧间模式、帧内模式、Skip模式解码;对WZ帧分为WZ块模式、粗糙帧内块模式、Skip块模式解码;存储器内存储一个GOP中的解码后的关键帧和准关键帧。本发明能够提高整个***的编码效率和最终的解码质量,在计算量略微提高的条件下,很大程度地提高了其率失真性能。

Description

基于模式决策的自适应帧组分布式视频编码和解码方法
技术领域
本发明涉及一种基于模式决策的自适应帧组分布式视频编码和解码方法,属于视频编码方法领域。
背景技术
随着无线多媒体通信及无线视频传感网络等新技术的出现和应用,对视频的编解码***提出了新的要求:由于无线视频编码器电池容量、数字处理能力和运算能力有限,要求无线视频编码器低功耗、低复杂度;由于传输速率的限制,要求编码器具有高压缩效率;由于采用无线接入与传输,要求视频信号传输具备强健壮性。当今的视频压缩编码(MPEG-x系列与H.26x系列)因编码器承担了运动估计、变换、量化、熵编码及相应解码等大量高复杂计算,使得编码复杂度是解码的5~10倍以上,所以传统视频编码技术已不再适用于这些应用场合,须寻找新的编码压缩方法。
分布式视频编码DVC理论基础是信息论中的Slepian-Wolf(SF)和Wyner-Ziv(WZ)两定理。虽然在20世纪70年代从理论上证明了多个相关信源独立编码联合解码同样可以达到联合编码联合解码的编码效率,但直至2002年才开始有学者进行分布式视频编码的实现算法研究,且取得了一定成果并逐渐引起关注。基于SF与WZ理论的分布式视频编码,在编码端把各帧图像看成“独立信源”,各帧之间进行独立编码,编码方式类似于传统的帧内编码。在解码端,利用时域相邻帧的高度相关性,通过对已解码重建帧运动估计进行时域内(外)差求取边信息,利用边信息和解码器联合迭代解码以重构当前待解码帧图像。 
目前分布式视频编码的研究已经获得到了很多较有意义的成果,如欧洲DOSCOVER项目组提出的DOSCOVER分布式编码器,然而距离实际应用还有不小的差距, Ramchandran等提出的PRISM(power-efficient robust high- compression syndrome-base multimedia)方案的研究结果显示,将运动估计的复杂度在编码器和解码器之间任意分担,不会造成率失真性能上限的损失;如果将帧间相关估计全部移至解码端,则编码端的码率估计与码率控制必须通过反馈信道即依赖于解码端。
发明内容
本发明所要解决的技术问题是提供一种基于模式决策的自适应帧组分布式视频编码和解码方法,能够提高整个***的编码效率和最终的解码质量,在计算量略微提高的条件下,很大程度地提高了其率失真性能。
为了解决上述技术问题,本发明所采用的技术方案是:一种基于模式决策的自适应帧组分布式视频编码方法,其特征在于:包括如下步骤:
(1)读取一个帧组所包含的最大图像帧的个数L及时间相关性判断准则的门限值T1 和T2,然后以帧为单位读取图像值;
(2)每个图像组的第一帧作为关键帧进行H.264帧内编码,生成H.264帧内码流,并发送到解码端;
(3)对关键帧采用H.264帧内解码,用解码恢复关键帧来生成参考帧                                                
Figure 99890DEST_PATH_IMAGE001
,即 
Figure 111796DEST_PATH_IMAGE002
     (1)
其中
Figure 936795DEST_PATH_IMAGE003
为当前编码帧相邻的前一个已解码的关键帧;
(4)用当前编码帧X与其参考帧
Figure 294089DEST_PATH_IMAGE001
 的差值来生成残差帧D,即残差帧为:
Figure 412087DEST_PATH_IMAGE004
    (2)
其中
Figure 854832DEST_PATH_IMAGE005
为帧像素的坐标;
(5)对步骤(4)中得到的残差帧进行8×8块划分,分别计算各块的绝对残差和SAD,第K块的绝对残差和为
Figure 297837DEST_PATH_IMAGE006
(6)根据步骤(5)中计算得到的
Figure 945856DEST_PATH_IMAGE006
利用公式(4)对当前编码帧中的块进行块模式
Figure 1799DEST_PATH_IMAGE007
判断,块分为三种类型:Skip块、WZ块和
Figure 430375DEST_PATH_IMAGE008
块; 
Figure 393914DEST_PATH_IMAGE009
     (4)
其中T1、T2是通过实验预先设定的门限值;
(7)根据步骤(6)中的块分类,对当期编码帧中的块进行块模式统计,根据块类型的数量来确定当前帧的模式,当Skip块或WZ块数量最多,当前帧的模式设置为WZ帧;当:块数量大于Skip块和WZ块数量之和,设置当前帧为关键帧;
(8)自适应帧组方式编码:在连续WZ帧个数大于L-1的情况下,强制设置第L-1的WZ帧为关键帧,该情况下帧组长度
Figure 123284DEST_PATH_IMAGE010
=L;在连续WZ帧个数不大于L-1的情况下,根据步骤(7)判断的结果,若当前编码帧为关键帧,并且前一帧为WZ帧的情况下,则强制设置前一帧为准关键帧,否则不强制设置准关键帧,并根据帧数设置该情况下GOP长度
Figure 472445DEST_PATH_IMAGE010
;并对关键帧采用帧内编码方式,对准关键帧采用基于块的帧内、帧间混合编码方式;对WZ帧采用基于块的混合分布式编码方式;
(9)对模式信息码流的熵编码:按照帧的次序以头信息方式对每帧进行模式信息编码,对于关键帧,只需设置帧级头信息,对于准关键帧和WZ帧,需设置帧级头信息和块级头信息,对于块头信息采用“从左到右,从上到下”的顺序进行扫描,形成块模式信息码流,模式信息码流包括帧组长度
Figure 738210DEST_PATH_IMAGE010
、帧级头信息和块级头信息,模式码流采用熵编码压缩后发送到解码端。
前述的基于模式决策的自适应帧组分布式视频编码方法,其特征在于:步骤(5)中所述的绝对残差和为
Figure 924603DEST_PATH_IMAGE006
利用公式(3)计算得到,即:
     (3)
其中
Figure 459938DEST_PATH_IMAGE012
为残差帧第K个8×8块像素的坐标。
前述的基于模式决策的自适应帧组分布式视频编码方法,其特征在于:步骤(8)中所述的准关键帧的编码方法为在准关键帧中设置与步骤(6)中Skip块、WZ块和
Figure 906225DEST_PATH_IMAGE008
块相对应的Skip块、Inter块和Intra块,对Skip块无需进行编码,只需向解码端发送块的编码模式信息;对WZ块采用传统的帧间编码模式;对
Figure 321026DEST_PATH_IMAGE013
块,采用H.264帧内编码方式。 
前述的基于模式决策的自适应帧组分布式视频编码方法,其特征在于:步骤(8)中所述的WZ帧的编码方法为对Skip块无需进行编码,只需向解码端发送块的编码模式信息;对WZ块采用目前分布式编码中的Wyner-Ziv编码模式;对
Figure 263574DEST_PATH_IMAGE008
块采用编码质量低于关键帧的粗糙帧内编码方式。
前述的基于模式决策的自适应帧组分布式视频编码方法,其特征在于:所述的Wyner-Ziv编码模式为:对WZ块的残差进行8×8 DCT变换,统一量化后提取位平面,输出频域系数
Figure 446381DEST_PATH_IMAGE014
,并送入LDPC编码器编码,采用编码端码率控制器ERC来控制哪些部分校验码需要传输,通过编码端码率控制,得出LDPC编码器产生的校验信息需要传送到解码端的位平面数N和每个位平面需要传输到解码端的码率
Figure 991632DEST_PATH_IMAGE015
一种基于模式决策的自适应帧组分布式视频解码方法,其特征在于:帧解码分为关键帧解码、准关键帧解码和WZ帧解码;对关键帧采用传统的帧内解码方法;对准关键帧根据块信息解码,分为帧间模式、帧内模式、Skip模式解码;对WZ帧根据块信息解码,分为WZ模式、粗糙帧内模式、Skip模式解码;存储器内存储一个GOP中的解码后的关键帧和准关键帧,包括如下步骤:
(1)读取帧组长度
Figure 152617DEST_PATH_IMAGE010
,对关键帧采用用H.264的帧内解码器解码;
(2) 对准关键帧的块模式信息码流采用熵解码,分为Inter块、Intra块和Skip块;根据公式(1)利用解码的关键帧生成参考帧
Figure 892166DEST_PATH_IMAGE001
,Skip块通过参考帧
Figure 4347DEST_PATH_IMAGE001
的相同位置的块来恢复,即
Figure 854753DEST_PATH_IMAGE016
;Intra块通过传统的帧内解码方式恢复;Inter块通过传统的帧间解码方式恢复, 准关键帧解码后保存在存储器中;
(3)产生边信息帧:在解码端,以帧组为单位,一组帧组产生一个边信息帧;对应与编码端,一个帧组有两种情况组成:包含头尾一个关键帧和一个准关键帧;或包含头尾两个关键帧,第一种情况下,边信息帧Y由解码的关键帧
Figure 978567DEST_PATH_IMAGE017
和准关键帧
Figure 945474DEST_PATH_IMAGE018
之间通过基于8×8块的双向运动补偿内插法来产生,前向运动估计和后向运动估计产生的块最小绝对残差和
Figure 46417DEST_PATH_IMAGE019
Figure 261366DEST_PATH_IMAGE020
保存在缓冲器中;
第二种情况下,边信息帧Y由解码的关键帧
Figure 6730DEST_PATH_IMAGE021
Figure 134086DEST_PATH_IMAGE022
之间通过基于8×8块的双向运动补偿内插法来产生,同样,前向运动估计和后向运动估计产生的块最小绝对残差和保存在缓冲器中;
(4)WZ帧中Skip块和块的解码:Skip块通过其相邻关键帧解码后的相同位置的块来恢复,即
Figure 282770DEST_PATH_IMAGE016
块通过帧内解码方式恢复, 解码后保存在存储器中,由
Figure 410662DEST_PATH_IMAGE008
块和Skip块解码部分重构WZ帧
(5)边信息的修正:利用部分重构WZ帧,对边信息进行修正, 用部分重构WZ帧的像素值在帧内块和Skip块的位置上来替代边信息帧Y中的像素值,产生新的边信息帧Y’,即
Figure 33066DEST_PATH_IMAGE024
      (7)
接下来在WZ块的位置,对解码的关键帧
Figure 766536DEST_PATH_IMAGE017
以边信息帧Y’为参考帧基于8×8块进行前向运动估计,产生运动矢量
Figure 690761DEST_PATH_IMAGE025
和块最小绝对残差和
Figure 452174DEST_PATH_IMAGE026
保存在缓冲器中;同样,在WZ块的位置,对解码的关键帧
Figure 853419DEST_PATH_IMAGE027
以边信息帧Y’为参考帧基于8×8块进行后向运动估计,产生运动矢量和块最小绝对残差和
Figure 474204DEST_PATH_IMAGE029
保存在缓冲器中;比较四个绝对残差和
Figure 965491DEST_PATH_IMAGE019
Figure 291299DEST_PATH_IMAGE020
Figure 580720DEST_PATH_IMAGE026
的大小,通过式(8)来修正边信息,即
(8)
其中
Figure 689250DEST_PATH_IMAGE012
为边信息帧中WZ块的坐标,一组帧组产生的修正边信息帧Y’的个数等于该帧组WZ帧的个数;
(6)解码端的残差帧
Figure 819362DEST_PATH_IMAGE032
,在生成残差帧中,仅对与当前解码WZ块相同位置的块进行DCT变换和量化,形成频域系数
Figure 997402DEST_PATH_IMAGE033
(7)WZ块的解码:WZ块解码首先根据接受到的校验位和解码器端的边信息用信道解码方式恢复频域信息,经过Skip块、WZ块和块的解码的过程,可以得到恢复的频域码流,恢复的频域码流含有编码端传送的信息
Figure 252595DEST_PATH_IMAGE014
,通过公式(9),即通过恢复的频域码流来精细重构最终的频域系数
                             (9)
其中
Figure 374080DEST_PATH_IMAGE037
分别为根据恢复的频域信息推断的
Figure 977319DEST_PATH_IMAGE014
的最大值和最小值。此方法用恢复的
Figure 434845DEST_PATH_IMAGE014
的位平面信息限制了单纯由
Figure 45955DEST_PATH_IMAGE038
位平面重构
Figure 822412DEST_PATH_IMAGE014
而产生的失真。对
Figure 777861DEST_PATH_IMAGE034
反量化,逆离散余弦变换(IDCT),恢复残差值D'。原始像素W'由式(10)来获得
Figure 39078DEST_PATH_IMAGE039
        (10)
其中
Figure 504695DEST_PATH_IMAGE012
为WZ块的坐标;
(8)恢复WZ帧,并通过去h.264中方块滤波器滤波后显示。
前述的基于模式决策的自适应帧组分布式视频解码方法,其特征在于:步骤(3)中所述的第一种情况下的边信息帧Y通过公式(5)计算得到:
Figure 825955DEST_PATH_IMAGE040
(5)
其中
Figure 580284DEST_PATH_IMAGE041
为内插帧像素的坐标;
Figure 943394DEST_PATH_IMAGE042
Figure 529097DEST_PATH_IMAGE043
解码的关键帧和准关键帧之间的前向和后向的运动矢量,
Figure 21258DEST_PATH_IMAGE044
Figure 997304DEST_PATH_IMAGE045
与公式(5)相等。
所述的第二种情况下的边信息帧Y通过公式(6)计算得到:
Figure 119367DEST_PATH_IMAGE046
(6)
其中
Figure 825154DEST_PATH_IMAGE047
Figure 222638DEST_PATH_IMAGE043
解码的关键帧之间的前向和后向的运动矢量,
Figure 13876DEST_PATH_IMAGE005
Figure 656472DEST_PATH_IMAGE044
与公式(5)相同。
本发明从权衡编码复杂度和编码压缩性能的角度来设计实用视频编码***,所带来的有益效果是:
(1)提出根据帧模式和最大帧组数进行自适应组合帧组的编码方法,保证同一帧组的图像之间有较强的时间相关性,从而提高编码性能;
(2)提出三种帧模式:关键帧、准关键帧和WZ帧;对准关键帧基于块的帧内、帧间混合编码算法,与关键帧帧内编码相比,该算法提高编码速度并减少码流,提出对WZ帧的基于块的混合分布式编码算法,与现有的算法相比,在码流基本不增加的情况下提高了率失真性能;
(3)在解码端提出利用部分重构WZ帧对边信息进行修正的算法,该算法利用图像的空间相关性,提高了解码性能。
附图说明
图1是本发明的***结构框图;
图2是本发明的编码器结构框图;
图3是本发明的解码器结构框图;
图4是本发明的Foreman序列的帧不同类型块统计图;
图5是本发明的Carphone序列的帧不同类型块统计图;
图6是本发明的Football序列的帧不同类型块统计图;
图7是本发明的自适应帧组示意图;
图8是本发明的基于块的自适应帧组编码算法程序流程图;
图9是本发明的基于块的解码编码算法程序流程图;
图10 DOSCOVER分布式编码器Forman序列测试结果示意图;
图11 DOSCOVER分布式编码器Carphone序列测试结果示意图。
具体实施方式
下面将结合说明书附图,对本发明做进一步的说明。
本发明提出的基于模式决策的自适应帧组DVC***,既可以用软件完成,也可以用嵌入式硬件***来实现。图1给出了本发明提出DVC***的结构框图,其中的摄像头可以是手机摄像头,传感网络摄像头等一些低能量设备的视频输入终端;编码器可以用软件实现,一般情况是DSP或其他嵌入式并行机;解码器一般情况是高性能PC机,可以是DSP或其他嵌入式并行机;网络可以是有线也可以是无线网络。
编码器框图如图2所示,编码器对输入图像进行帧模式判断,把帧分为关键帧、准关键帧、WZ帧进行自适应帧组编码。采用了基于块的4种编码模式:帧内模式、Skip模式、粗糙帧内模式、WZ模式。对关键帧采用帧内模式编码;对准关键帧的块采用帧间模式、帧内模式或Skip模式进行编码。对WZ帧的块采用WZ模式、帧内/WZ模式或SKIP/WZ模式进行编码,其中WZ模式采用编码端码率控制器来控制传送的比特位。存储器内存储一个GOP中的所有帧以及解码后的关键帧和准关键帧。
基于块模式决策的自适应帧组分布式视频编码方法,其特征是包括如下步骤:
本发明中的编码器算法,主要有下列部分组成:一是对图像的块模式及帧模式判断;二是根据帧模式和最大帧组数自适应组合帧组;三是对关键帧的帧内编码;四是对准关键帧基于块的帧内、帧间混合编码;五是对WZ帧的基于块的混合分布式编码。在帧模式判断时取消了运算量巨大的运动估计,所以编码器的复杂度与传统视频编码器相比大大降低,从而保留了“低复杂度编码”的特性。
第一步:读取L, T1、T2:其中L是一个帧组(GOP)所包含的最大图像帧的个数,T1 、T2是时间相关性判断准则的门限值。
第二步:每个图像组的第一帧作为关键帧进行H.264帧内编码,生成H.264帧内码流,然后发送到解码端。
第三步:生成参考帧:对关键帧采用H.264帧内解码,解码后保存在存储器中。用解码恢复关键帧来生成参考帧
Figure 722834DEST_PATH_IMAGE001
,即在编码端使用一个与帧内编码算法对应的帧内解码器来恢复关键帧
Figure 1369DEST_PATH_IMAGE048
,我们在实施中采用了H.264帧内解码算法,
 
Figure 946191DEST_PATH_IMAGE002
      (1)
其中
Figure 862457DEST_PATH_IMAGE003
为当前编码帧相邻的前一个已解码的关键帧。
第四步:生成残差帧:用当前编码帧X与其参考帧
Figure 867322DEST_PATH_IMAGE049
 的差值来生成残差帧D,即残差帧为:
Figure 367574DEST_PATH_IMAGE004
    (2)
其中
Figure 414289DEST_PATH_IMAGE005
为残差帧的坐标。
第五步:对残差帧进行8×8块划分,分别计算各块的绝对残差和SAD,第K块的绝对残差和
Figure 73810DEST_PATH_IMAGE006
的计算如下:
Figure 541919DEST_PATH_IMAGE011
    (3)
其中
Figure 155565DEST_PATH_IMAGE012
为残差帧第K个8×8块像素的坐标。
第六步:根据
Figure 566824DEST_PATH_IMAGE006
对当前编码帧中的块进行块模式
Figure 519999DEST_PATH_IMAGE007
判断
Figure 928983DEST_PATH_IMAGE050
时,把该块设置的模式
Figure 92243DEST_PATH_IMAGE007
为Skip,即Skip块;当
Figure 537218DEST_PATH_IMAGE051
时,把该块设置的模式
Figure 344900DEST_PATH_IMAGE007
为WZ,即WZ块;当时,把该块设置的模式
Figure 575341DEST_PATH_IMAGE007
Figure 829867DEST_PATH_IMAGE008
,即块。模式
Figure 236982DEST_PATH_IMAGE007
用式(4)表示:
         (4)
其中T1、T2是通过实验预先设定的门限值。本发明相比现有的DVC技术增加了对块模式的判断,由于采用式(4)作为判断依据而没有采用传统编码器中的运动估计来进行判断,增加运算量不大。 
第七步:对当前编码帧进行帧模式判断
根据当前编码帧中8×8块的模式来判断帧的模式。首先对当前编码帧中的块进行块模式统计,根据块类型的数量来确定当前帧的模式。情况1:Skip块数量最多,表明当前编码帧和相邻关键帧之间的相关性很强,把当前帧的模式设置为WZ帧可以减少编码码流;情况2:WZ块数量最多,表明当前编码帧和相邻关键帧之间的相关性较强,把当前帧的模式设置为WZ帧可以减少编码码流;情况3:
Figure 603690DEST_PATH_IMAGE008
块数量大于Skip块和WZ块数量之和,表明当前编码帧和相邻关键帧之间的相关性很弱,若当前帧的模式设置为WZ帧进行编码码流减少不明显,反而增加编码复杂度,所以设置当前帧为关键帧。在这种情况下,对整帧采用第二步的帧内编码模式,而不再对块进行第六步所述的分类编码处理。
在T1=10*82=640、T2=30*82=1920情况下实验统计,对于运动程度较小的图像序列Foreman,Carphone(见图4、5),Skip块比例平均高达70%,
Figure 385963DEST_PATH_IMAGE008
的比例平均在20%以下。对于运动剧烈,图像复杂的图像序列football(见图6),Skip块比例平均也在40%以上,
Figure 307652DEST_PATH_IMAGE053
的比例平均在40%以下;因此,本发明采用对WZ帧的块分类为Skip块,可以有效降低计算量;分类为
Figure 542586DEST_PATH_IMAGE008
块,可以在增加少量码流的情况下有效提高编码质量。
第八步:自适应帧组方式编码
为了防止误差积累,一般情况设置L=8,情况1:在连续WZ帧个数大于L-1的情况下,则强制设置第L-1的WZ帧为关键帧,该情况下帧组(GOP)长度
Figure 840713DEST_PATH_IMAGE010
=L;情况2:在连续WZ帧个数不大于L-1的情况下,本发明根据第七步自适应设置该图像为WZ帧或关键帧,若当前编码帧为关键帧,并且前一帧为WZ帧的情况下,则强制设置前一帧为准关键帧,否则不强制设置准关键帧,并根据帧数设置当前该情况下GOP长度
Figure 557388DEST_PATH_IMAGE054
。自适应帧组如图7所示,由于强制关键帧和关键帧的编码方式相同,统称关键帧,所以一个帧组有两种情况组成:包含头尾两个关键帧, GOP长度
Figure 587660DEST_PATH_IMAGE055
;或包含头尾一个关键帧和一个准关键帧, GOP长度
Figure 372208DEST_PATH_IMAGE056
。需要说明的是如果前后帧分别为强制关键帧和关键帧情况下,则这两帧不构成独立的GOP,关键帧作为下一个GOP的起始帧。
本发明对关键帧、准关键帧、WZ帧采用不同的编码方式:对关键帧采用第二步所述的帧内编码方式,对准关键帧采用第十步所述的基于块的帧内、帧间混合编码方式;对WZ帧采用第十二步所述的基于块的混合分布式编码方式。
这种编码方式和现有DVC方法不同,现有DVC方法一般采用固定帧组方式编码,本发明采用自适应帧组方式编码,根据帧之间的时间相关性来设置帧组,并和现有的自适应帧组编码方法不同,现有的自适应帧组编码方法仅仅根据相关性确定关键帧,而本发明采用增加设置准关键帧类型的方式,保证每个帧组的帧之间有较强的相关性,这样时间相关性能被更充分的使用,因此取得了较好的效果。
第九步:对模式信息码流的熵编码
按照帧的次序以头信息方式对每帧进行模式信息编码,对于关键帧,只需设置帧级头信息,对于准关键帧和WZ帧,需设置帧级头信息和块级头信息。对于块头信息采用“从左到右,从上到下”的顺序进行扫描,形成模式信息码流(00表示Skip块,01表示WZ块,10表示
Figure 444331DEST_PATH_IMAGE008
块)。模式码流包括帧组长度
Figure 637415DEST_PATH_IMAGE054
、帧级头信息和块级头信息,模式码流采用熵编码压缩后发送到解码端。
第十步:准关键帧的编码
当前编码帧为准关键帧时,按照第六步,块分为三种类型:Skip块、WZ块和
Figure 900906DEST_PATH_IMAGE008
块,为了与WZ帧块编码方式区别,在准关键帧中对应设置为Skip块、Inter块和Intra块, 对不同类型的块采用不同的编码方式。情况1:Skip块,此情况下当前编码帧和参考帧对应位置的像素块的差距很小,相关性很大,因此本发明采用H.264编码中的Skip编码模式,无需进行编码,只需向解码端发送块的编码模式信息,大大减少了运算量;情况2:WZ块,此情况下当前编码帧和参考帧对应位置的像素块的差距较小,相关性较大,采用传统的帧间编码模式,即对块的残差进行DCT、量化、熵编码;情况3:
Figure 48116DEST_PATH_IMAGE013
块,表明当前编码帧和参考帧对应位置的像素块的差距较大,相关性较小,采用H.264帧内编码方式。
第十一步:准关键帧的解码 
对准关键帧中的Skip块,通过其相邻关键帧解码后的相同位置的块来恢复,Inter块通过传统的帧间解码方式恢复、Intra块通过传统的帧内解码方式恢复, 解码后保存在存储器中。
第十二步:WZ帧的编码
当前编码帧为WZ帧时,对不同类型的块采用不同的编码方式。情况1:Skip块,此情况下当前编码帧和参考帧对应位置的像素块的差距很小,相关性很大,因此本发明采用H.264编码中的Skip编码模式,无需进行编码,只需向解码端发送块的编码模式信息,大大减少了运算量;情况2:WZ块,此情况下当前编码帧和参考帧对应位置的像素块的差距较小,相关性较大,采用目前分布式编码中的Wyner-Ziv编码模式(见第十三步);情况3:
Figure 422466DEST_PATH_IMAGE008
块,表明当前编码帧和参考帧对应位置的像素块的差距较大,相关性较小,为提高编码质量,采用类似关键帧的帧内编码模式,为了减少码流,对该模式用较少的码流表示,采用编码质量低于关键帧的粗糙帧内编码方式。
第十三步:WZ块的编码
对WZ块的残差进行8×8 DCT变换,统一量化后提取位平面,输出频域系数,并送入LDPC编码器编码,编码器产生的校验信息只有部分根据编码器的需要进行传输,采用现有的编码端码率控制技术来控制哪些部分需要传输,而不是传统的通过解码器的反馈通道来控制。采用编码端进行码率控制可以解决反馈机制不能实现或者代价过高的场合,为了不增加编码器的复杂度,采用低复杂度的边信息估计和校验码率估计方法。另外由于WZ块比例平均在15%以下,数量较少,采用编码端码率控制器对编码器复杂度增加不大。
编码端码率控制算法:
第1步: 产生边信息估计
Figure 462371DEST_PATH_IMAGE057
情况1:当前WZ帧所在的GOP起始帧为关键帧和准关键帧时,则使用解码的关键帧和准关键帧产生边信息估计
Figure 221511DEST_PATH_IMAGE057
Figure 963333DEST_PATH_IMAGE058
                (5)
其中,
Figure 927747DEST_PATH_IMAGE017
Figure 34505DEST_PATH_IMAGE059
分别为当前WZ帧相邻的前一个已解码的关键帧和下一个已解码的准关键帧;
Figure 513897DEST_PATH_IMAGE060
Figure 991234DEST_PATH_IMAGE061
,其中为当前编码帧与前一个关键帧
Figure 150131DEST_PATH_IMAGE017
之间的距离,即帧数,
Figure 821546DEST_PATH_IMAGE010
便是这个帧组中所有帧的个数。
情况2:当前WZ帧所在的GOP起始帧都为关键帧时,则使用GOP头尾解码的关键帧产生边信息估计
Figure 403706DEST_PATH_IMAGE057
               (6)
其中,
Figure 349195DEST_PATH_IMAGE017
分别为当前WZ帧相邻的前一个已解码的关键帧和下一个已解码的关键帧,其他参数和式(5)相同;
第2步:对
Figure 362599DEST_PATH_IMAGE057
进行8×8DCT变换
第3步:计算需要传输到解码端的位平面数N
估计WZ块每个变换量化后的系数需要传输到解码端的位平面个数,步骤如下:
设X和
Figure 156111DEST_PATH_IMAGE057
为原始WZ块和估计边信息,误差Z=X-作为相关性噪声满足拉普拉斯分布
Figure 592220DEST_PATH_IMAGE065
              (7)
其中
Figure 283227DEST_PATH_IMAGE066
为Z的标准差,
Figure 931246DEST_PATH_IMAGE067
,              (8)
式(8)中
Figure 614004DEST_PATH_IMAGE068
为原始WZ块系数值,
Figure 481729DEST_PATH_IMAGE069
为WZ块估计系数值,n为当前WZ块的像素个数, 8×8块情况下n=64。则失真
Figure 84748DEST_PATH_IMAGE070
用式(9)计算:
Figure 587274DEST_PATH_IMAGE071
            (9)
其中
Figure 876435DEST_PATH_IMAGE072
,M为位平面的总个数,N为传送到解码端的位平面数,在给定失真情况下,可以通过式(9)获得
Figure 310270DEST_PATH_IMAGE073
值,从而由
Figure 870564DEST_PATH_IMAGE074
得出N,即得出需要传送到解码端的位平面数;
第4步:计算位平面的码率
接下来估计在每个位平面需要传输到解码端的码率,计算如下:
以第j个位平面为例说明。按照Slepian-Wolf定理,最小校验码率
Figure 501265DEST_PATH_IMAGE075
等于位平面的条件熵
Figure 400039DEST_PATH_IMAGE076
Figure 908643DEST_PATH_IMAGE077
由式(8)计算:
Figure 448078DEST_PATH_IMAGE078
           (10)
其中
Figure 751145DEST_PATH_IMAGE079
为第j个位平面错误概率,即第j个位平面的估计边信息
Figure 313714DEST_PATH_IMAGE080
和原始值
Figure 688326DEST_PATH_IMAGE081
不相等的概率,由式(11)计算:
Figure 577872DEST_PATH_IMAGE082
           (11)
得出第j个位平面的码率
Figure 815956DEST_PATH_IMAGE083
通过编码端码率控制,得出LDPC编码器产生的校验信息需要传送到解码端的位平面数N和每个位平面需要传输到解码端的码率
Figure 429602DEST_PATH_IMAGE015
基于块模式决策的自适应帧组分布式视频解码方法,其特征是包括如下步骤:
解码器框图如图3所示,解码器根据对模式信息码流解码,读出GOP长度
Figure 280008DEST_PATH_IMAGE010
,帧解码分为关键帧解码、准关键帧解码和WZ帧解码;对关键帧采用传统的帧内解码方法;对准关键帧根据块信息解码,分为帧间模式、帧内模式、Skip模式解码;对WZ帧根据块信息解码,分为WZ模式、粗糙帧内模式、Skip模式解码;存储器内存储一个GOP中的解码后的关键帧和准关键帧。
解码算法由LDPC迭代解码、四次运动估计补偿、去方块滤波等环节来实现,因此具有较高的解码复杂度。具体包括如下步骤:
第一步:从传输信道接收码流,对模式码流进行熵解码,帧分为关键帧、关键帧和WZ帧;读出帧组GOP的长度信息
Figure 731718DEST_PATH_IMAGE010
;对关键帧采用用H.264的帧内解码器解码;
第二步:生成参考帧
解码端的参考帧
Figure 704485DEST_PATH_IMAGE001
运用和编码端相同的方法来产生,即用解码的关键帧根据公式(1)生成参考帧
Figure 533988DEST_PATH_IMAGE001
,并保存在存储器中;
第三步:准关键帧的解码
    对准关键帧的块模式信息码流采用熵解码,分为Inter块、Intra块和Skip块。Skip块通过参考帧
Figure 686621DEST_PATH_IMAGE001
的相同位置的块来恢复,即
Figure 494302DEST_PATH_IMAGE016
;Intra块通过传统的帧内解码方式恢复, 解码后保存在存储器中;Inter块通过传统的帧间解码方式恢复,即对码流熵解码、反量化、反变换得到残差
Figure 136505DEST_PATH_IMAGE084
,则Inter块的值
Figure 600110DEST_PATH_IMAGE085
为残差加上参考帧
Figure 326943DEST_PATH_IMAGE001
相同位置的块的像素值,即
Figure 15413DEST_PATH_IMAGE086
              (12)
其中
Figure 700735DEST_PATH_IMAGE005
为Intra块像素的坐标。准关键帧解码后一方面通过h.264去方块滤波器滤波后显示,另一方面保存在存储器中;
第四步:产生边信息帧
在解码端,根据GOP长度
Figure 132853DEST_PATH_IMAGE010
,以GOP为单位,一组帧组产生一个边信息帧。对应与编码端,一个帧组有两种情况组成:包含头尾一个关键帧和一个准关键帧;或包含头尾两个关键帧。第一种情况下,边信息帧Y由解码的关键帧和准关键帧
Figure 210717DEST_PATH_IMAGE018
之间通过基于8×8块的双向运动补偿内插法来产生,即
Figure 400912DEST_PATH_IMAGE087
  (13)
其中
Figure 433459DEST_PATH_IMAGE041
为内插帧像素的坐标;
Figure 506458DEST_PATH_IMAGE042
解码的关键帧和准关键帧之间的前向和后向的运动矢量,
Figure 196644DEST_PATH_IMAGE044
Figure 970565DEST_PATH_IMAGE045
与公式(5)相等;
第二种情况下,边信息帧Y由解码的关键帧
Figure 163649DEST_PATH_IMAGE021
Figure 866288DEST_PATH_IMAGE088
之间通过基于8×8块的双向运动补偿内插法来产生,即
Figure 246454DEST_PATH_IMAGE089
  (14)
其中
Figure 886383DEST_PATH_IMAGE047
Figure 435438DEST_PATH_IMAGE043
解码的关键帧之间的前向和后向的运动矢量,
Figure 674975DEST_PATH_IMAGE044
Figure 790699DEST_PATH_IMAGE045
与公式(5)相等;
第五步:WZ帧中Skip块和
Figure 188401DEST_PATH_IMAGE008
块的解码
对WZ帧的块模式码流采用熵解码:分为Skip块、WZ块和
Figure 731378DEST_PATH_IMAGE008
块。Skip块通过其相邻关键帧解码后的相同位置的块来恢复,即
Figure 351715DEST_PATH_IMAGE090
Figure 5550DEST_PATH_IMAGE008
块通过帧内解码方式恢复, 解码后保存在存储器中。由帧内块和Skip块解码部分重构WZ帧
Figure 591515DEST_PATH_IMAGE023
第六步:边信息的修正
针对当前解码WZ帧,利用部分重构WZ帧,对边信息进行修正,这个边信息对后续的WZ块重构产生好的效果。具体的边信息进行修正步骤为:
用部分重构WZ帧的像素值在帧内块和Skip块的位置上来替代边信息帧Y中的像素值,产生新的边信息帧Y’,即
Figure 305393DEST_PATH_IMAGE024
       (15)
接下来在WZ块的位置,对解码的关键帧
Figure 147447DEST_PATH_IMAGE017
以边信息帧Y’为参考帧基于8×8块进行前向运动估计,产生运动矢量
Figure 106438DEST_PATH_IMAGE025
和块最小绝对残差和
Figure 983127DEST_PATH_IMAGE026
保存在缓冲器中。同样,在WZ块的位置,对解码的关键帧
Figure 867906DEST_PATH_IMAGE027
以边信息帧Y’为参考帧基于8×8块进行后向运动估计,产生运动矢量
Figure 197257DEST_PATH_IMAGE028
和块最小绝对残差和
Figure 959939DEST_PATH_IMAGE030
,比较四个绝对残差和
Figure 691134DEST_PATH_IMAGE019
Figure 563461DEST_PATH_IMAGE026
的大小,通过式(16)来修正边信息。即
Figure 709677DEST_PATH_IMAGE091
Figure 936259DEST_PATH_IMAGE092
 (16)
其中为边信息帧中WZ块的坐标,本专利采用部分重构WZ帧来修正边信息,充分利用了WZ帧中已解码帧内块和Skip块的信息,如果部分重构WZ帧与关键帧或准关键帧之间的相关性比关键帧之间或关键帧与准关键帧之间的相关性强,则选择用部分重构WZ帧来修正边信息。可以看出,Y’由当前解码WZ帧产生,不同的WZ帧产生不同的Y’,一组帧组产生的修正边信息帧Y’的个数和该帧组WZ帧的个数相等;
第七步:生成残差帧
与编码端残差帧相对应,解码端的残差帧为:
Figure 344686DEST_PATH_IMAGE032
第八步:在生成残差帧中,仅对与当前解码WZ块相同位置的块进行DCT变换和量化,形成频域系数
Figure 847211DEST_PATH_IMAGE033
第九步:WZ块的解码
WZ块解码根据接受到的校验位和解码器端的边信息用信道解码方式恢复频域信息,边信息指
Figure 510274DEST_PATH_IMAGE038
中与当前WZ块相同位置的系数块。接下来对WZ块频域系数进行精细重构:经过Skip块、WZ块和
Figure 537398DEST_PATH_IMAGE008
块的解码的过程,可以得到恢复的频域码流,假设此恢复是无差错的。由于恢复的频域码流含有编码端传送的信息
Figure 944108DEST_PATH_IMAGE014
,并且
Figure 72787DEST_PATH_IMAGE038
有很强的相关性,本专利通过采用公式(17),即通过恢复的频域码流来精细重构最终的频域系数
Figure 587207DEST_PATH_IMAGE034
Figure 532030DEST_PATH_IMAGE035
           (17)
其中
Figure 946830DEST_PATH_IMAGE036
Figure 951696DEST_PATH_IMAGE037
分别为根据恢复的频域信息推断的
Figure 947553DEST_PATH_IMAGE014
的最大值和最小值。次方法用恢复的
Figure 696066DEST_PATH_IMAGE014
的位平面信息限制了单纯由
Figure 965373DEST_PATH_IMAGE038
位平面重构
Figure 141139DEST_PATH_IMAGE014
而产生的失真;对
Figure 630152DEST_PATH_IMAGE034
反量化,逆离散余弦变换(IDCT),恢复残差值D'。 
最后,参考帧被用于恢复WZ块原始像素W',即
Figure 916777DEST_PATH_IMAGE039
       (18)
其中
Figure 368487DEST_PATH_IMAGE012
为WZ块的坐标;
第十步:恢复WZ帧,并通过h.264去方块滤波器滤波后显示。
图8为本发明的编码算法的程序实现流程图,下面对其编码算法的实施步骤进行详细说明:
步骤1:由摄像头从传输信道接收码流,设定帧组(GOP)的最大帧数L, 设定门限值T1、T2;
步骤2:每个图像组的第一帧作为关键帧进行H.264帧内编码,生成关键帧码流通过传输网络发送到解码端;
步骤3:对关键帧采用H.264帧内解码,解码后保存在存储器中;
步骤4:用解码恢复关键帧来生成参考帧; 
步骤5:用当前编码帧与其参考帧
Figure 425884DEST_PATH_IMAGE049
 的差值来生成残差帧D,对残差帧进行8×8块划分,用公式(3)分别计算各块的绝对残差和
步骤6:根据
Figure 760099DEST_PATH_IMAGE006
,利用公式(3)对当前编码帧中的块进行块模式
Figure 779133DEST_PATH_IMAGE007
判断,块分为三种类型:Skip块、WZ块和块;
步骤7:根据帧中的块模式统计结果来确定当前帧的模式: Skip块或WZ块数量最多情况下帧的模式设置为WZ帧,
Figure 104121DEST_PATH_IMAGE008
块数量最多,则当前帧的模式为帧内帧;
步骤8:自适应帧组方式:根据步骤(7)自适应设置图像为WZ帧或关键帧,并强制设置关键帧前WZ帧为准关键帧,结合相同设定的最大(GOP)长度L来设计帧组。自适应帧组有两种情况组成:包含头尾两个关键帧,组(GOP)长度
Figure 468106DEST_PATH_IMAGE055
;或包含头尾一个关键帧和一个准关键帧,帧组(GOP)长度
Figure 675619DEST_PATH_IMAGE056
步骤9:模式码流采用熵编码压缩后发送到解码端;
步骤10:对准关键帧采用基于块的帧内、帧间混合编码方式编码,形成帧间、帧内码流发送到解码端; 
步骤11:对准关键帧采用基于块的帧内、帧间混合解码方式解码,解码后保存在存储器中;
步骤12:对WZ帧采用基于块的混合分布式编码方式编码,首先形成Intra/WZ 码流发送到解码端;
步骤13:WZ块采用基于编码端码率控制算法的Wyner-Ziv编码,形成WZ码流发送到解码端;
图9为本发明的解码算法的程序实现流程图,下面对其解码算法的实施步骤进行详细说明:
步骤1:从传输信道接收码流,对模式码流进行熵解码;
步骤2:读出帧组GOP的长度信息
Figure 859476DEST_PATH_IMAGE010
步骤3:读取帧模式信息,分为关键帧、关键帧和WZ帧;
步骤4:对关键帧采用用H.264的帧内解码器解码;
步骤5:用解码的关键帧根据公式(1)生成参考帧
Figure 291594DEST_PATH_IMAGE001
,并保存在存储器中;
步骤6:准关键帧的解码:读取准关键帧的块模式信息,分为Inter块、Intra块和Skip块,Skip块通过参考帧
Figure 510086DEST_PATH_IMAGE001
的相同位置块来恢复,Intra块通过传统的帧内解码方式恢复,Inter块通过传统的帧间解码方式恢复,准关键帧解码重构后保存在存储器中;
步骤7:产生边信息帧: GOP为单位产生一个边信息帧。帧组有两种情况组成:包含头尾两个关键帧,该情况下通过公式(13)产生边信息帧Y;或包含头尾一个关键帧和一个准关键帧,该情况下通过公式(14)产生边信息帧Y; 
步骤8:WZ帧中Skip块和
Figure 870922DEST_PATH_IMAGE008
块的解码:读取WZ帧的块模式信息,分为Skip块、WZ块和
Figure 542075DEST_PATH_IMAGE008
块。Skip块通过参考帧
Figure 512305DEST_PATH_IMAGE001
的相同位置块来恢复,
Figure 149085DEST_PATH_IMAGE008
块通过粗糙帧内解码方式恢复,由帧内块和Skip块解码部分重构WZ帧
Figure 179358DEST_PATH_IMAGE023
步骤9:利用部分重构WZ帧和边信息帧Y,利用公式(15)和公式(16),生成修正的边信息帧Y’;
步骤10:生成残差帧,并离散余弦变换(DCT)、量化,形成频域系数
Figure 111728DEST_PATH_IMAGE033
步骤11:WZ块解码根据接收到的校验位和边信息解码恢复频域信息,并利用公式(17)对WZ块频域系数进行精细重构,并反量化、反变换,重构出WZ块数据;
步骤12:按块位置对WZ帧的Skip块、WZ块和块数据进行复接、恢复出WZ帧。
对本发明提出的DVC方案在假设无损传输信道下做了初步测试实验,采用标准测试序列:Forman和Carphone做输入视频,以QCIF分辨率和15帧/秒进行测试。一些相关对比实验包括:
(1)PDDVC-ERC:像素域编码器端码率控制的DVC
(2)h.264 的帧间编码(I-B-B-B)
(3)h.263+的帧内编码(I-I-I-I)
(4)欧洲DOSCOVER项目组提出的DOSCOVER分布式编码器
Forman序列和Carphone序列测试结果如图10和11所示。
第一,与DOSCOVER相比,本发明算法在对Forman序列实验中可获得2.5分贝的改善和对Carphone序列实验中可获得3分贝的改善。本专利在编码过程中利用了序列的时间相关性,Carphone序列的时间相关性比Forman序列强,所以改善效果更明显。
第二,与PDDVC-ERC相比,本发明算法在对Forman序列实验中可获得1.8分贝的改善和Carphone序列实验中可获得1.5分贝的改善。像素域编码器端码率控制的DVC(PDDVC-ERC)已经考虑了序列的时间相关性,本发明利用空间相关性对边信息进行修正,使PSNR进一步提高。同时实验发现,本专利的编码时间与PDDVC-ERC编码时间大致相同,体现了“低复杂度编码”的特点。
综上所述,本发明从权衡编码复杂度和编码压缩性能的角度来设计实用视频编码***:提出在基本不增加运算量的情况下,编码端进行部分帧间相关估计的方法,另外,通过设置关键帧和WZ帧之间的数量来获得各种要求的编码效果,并考虑K帧数量和辅助信息质量之间的权衡,提高整个***的编码效率和最终的解码质量。与现有的一些DVC***相比,在计算量略微提高的条件下,很大程度地提高了其率失真性能。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界。

Claims (5)

1.一种基于模式决策的自适应帧组分布式视频编码方法,其特征在于:包括如下步骤:
(1)读取一个帧组所包含的最大图像帧的个数L及时间相关性判断准则的门限值T1 和T2,然后以帧为单位读取图像值;
(2)每个图像组的第一帧作为关键帧进行H.264帧内编码,生成H.264帧内码流,并发送到解码端;
(3)对关键帧采用H.264帧内解码,用解码恢复关键帧来生成参考帧 ,即 
Figure 691025DEST_PATH_IMAGE004
     (1)
其中
Figure 51600DEST_PATH_IMAGE006
为当前编码帧相邻的前一个已解码的关键帧;
(4)用当前编码帧X与其参考帧
Figure 750303DEST_PATH_IMAGE002
 的差值来生成残差帧D,即残差帧为:
Figure 120105DEST_PATH_IMAGE008
    (2)
其中
Figure 10700DEST_PATH_IMAGE010
为帧像素的坐标;
(5)对步骤(4)中得到的残差帧进行8×8块划分,分别计算各块的绝对残差和SAD,第K块的绝对残差和为
Figure 870072DEST_PATH_IMAGE012
(6)根据步骤(5)中计算得到的
Figure 478908DEST_PATH_IMAGE012
利用公式(4)对当前编码帧中的块进行块模式
Figure 652400DEST_PATH_IMAGE014
判断,块分为三种类型:Skip块、WZ块和
Figure 476131DEST_PATH_IMAGE016
块; 
Figure 444087DEST_PATH_IMAGE018
     (4)
其中T1、T2是通过实验预先设定的门限值;
(7)根据步骤(6)中的块分类,对当前编码帧中的块进行块模式统计,根据块类型的数量来确定当前帧的模式,当Skip块或WZ块数量最多,当前帧的模式设置为WZ帧;当:
Figure 540219DEST_PATH_IMAGE016
块数量大于Skip块和WZ块数量之和,设置当前帧为关键帧;
(8)自适应帧组方式编码:在连续WZ帧个数大于L-1的情况下,强制设置第L-1的WZ帧为关键帧,该情况下帧组长度=L;在连续WZ帧个数不大于L-1的情况下,根据步骤(7)判断的结果,若当前编码帧为关键帧,并且前一帧为WZ帧的情况下,则强制设置前一帧为准关键帧,否则不强制设置准关键帧,并根据帧数设置该情况下GOP长度
Figure 179327DEST_PATH_IMAGE020
;并对关键帧采用帧内编码方式,对准关键帧采用基于块的帧内、帧间混合编码方式;对WZ帧采用基于块的混合分布式编码方式;其中,准关键帧的编码方法为在准关键帧中设置与步骤(6)中Skip块、WZ块和块相对应的Skip块、Inter块和Intra块,对Skip块无需进行编码,只需向解码端发送块的编码模式信息;对WZ块采用传统的帧间编码模式,即对块的残差进行DCT、量化、熵编码;对块,采用H.264帧内编码方式;所述的WZ帧的编码方法为对Skip块无需进行编码,只需向解码端发送块的编码模式信息;对WZ块采用目前分布式编码中的Wyner-Ziv编码模式;对
Figure 462913DEST_PATH_IMAGE016
块采用编码质量低于关键帧的粗糙帧内编码方式;
(9)对模式信息码流的熵编码:按照帧的次序以头信息方式对每帧进行模式信息编码,对于关键帧,只需设置帧级头信息,对于准关键帧和WZ帧,需设置帧级头信息和块级头信息,对于块头信息采用“从左到右,从上到下”的顺序进行扫描,形成块模式信息码流,模式信息码流包括帧组长度
Figure 510503DEST_PATH_IMAGE020
、帧级头信息和块级头信息,模式码流采用熵编码压缩后发送到解码端。
2.根据权利要求1所述的基于模式决策的自适应帧组分布式视频编码方法,其特征在于:步骤(5)中所述的绝对残差和为
Figure 820262DEST_PATH_IMAGE012
利用公式(3)计算得到,即:
Figure 890986DEST_PATH_IMAGE024
     (3)
其中
Figure 757442DEST_PATH_IMAGE026
为残差帧第K个8×8块像素的坐标。
3.根据权利要求2所述的基于模式决策的自适应帧组分布式视频编码方法,其特征在于:所述的Wyner-Ziv编码模式为:对WZ块的残差进行8×8 DCT变换,统一量化后提取位平面,输出频域系数
Figure 597222DEST_PATH_IMAGE028
,并送入LDPC编码器编码,采用编码端码率控制器ERC来控制哪些部分校验码需要传输,通过编码端码率控制,得出LDPC编码器产生的校验信息需要传送到解码端的位平面数N和每个位平面需要传输到解码端的码率
Figure 77882DEST_PATH_IMAGE030
4.一种基于模式决策的自适应帧组分布式视频解码方法,其特征在于:帧解码分为关键帧解码、准关键帧解码和WZ帧解码;对关键帧采用帧内解码方法;对准关键帧根据块信息解码,分为帧间模式、帧内模式、Skip模式解码;对WZ帧根据块信息解码,分为WZ模式、
Figure 432640DEST_PATH_IMAGE016
模式、Skip模式解码;存储器内存储一个GOP中的解码后的关键帧和准关键帧,包括如下步骤:
(1)读取帧组长度
Figure 289738DEST_PATH_IMAGE020
,对关键帧采用H.264的帧内解码器解码;
(2) 对准关键帧的块模式信息码流采用熵解码,分为Inter块、Intra块和Skip块;根据公式
Figure 295609DEST_PATH_IMAGE004
,其中
Figure 947170DEST_PATH_IMAGE006
为当前编码帧相邻的前一个已解码的关键帧,利用解码的关键帧生成参考帧
Figure 992486DEST_PATH_IMAGE002
,Skip块通过参考帧
Figure 450012DEST_PATH_IMAGE002
的相同位置的块来恢复,即
Figure 998805DEST_PATH_IMAGE032
;Intra块通过采用H.264的帧内解码方式恢复;Inter块通过传统的帧间解码方式恢复,即对码流熵解码、反量化、反变换得到残差
Figure 86847DEST_PATH_IMAGE034
,则Inter块的值
Figure 166930DEST_PATH_IMAGE036
为残差
Figure 365830DEST_PATH_IMAGE034
加上参考帧
Figure 769129DEST_PATH_IMAGE002
相同位置的块的像素值, 准关键帧解码后保存在存储器中;
(3)产生边信息帧:在解码端,以帧组为单位,一组帧组产生一个边信息帧;对应与编码端,一个帧组有两种情况组成:包含头尾一个关键帧和一个准关键帧;或包含头尾两个关键帧,第一种情况下,边信息帧Y由解码的关键帧和准关键帧
Figure 844719DEST_PATH_IMAGE040
之间通过基于8×8块的双向运动补偿内插法来产生,前向运动估计和后向运动估计产生的块最小绝对残差和
Figure 916753DEST_PATH_IMAGE042
Figure 502455DEST_PATH_IMAGE044
保存在缓冲器中;
第二种情况下,边信息帧Y由解码的关键帧
Figure 932299DEST_PATH_IMAGE046
Figure 908345DEST_PATH_IMAGE048
之间通过基于8×8块的双向运动补偿内插法来产生,同样,前向运动估计和后向运动估计产生的块最小绝对残差和
Figure 449048DEST_PATH_IMAGE042
Figure 905568DEST_PATH_IMAGE044
保存在缓冲器中;
(4)WZ帧中Skip块和块的解码:Skip块通过其相邻关键帧解码后的相同位置的块来恢复,即
Figure 110788DEST_PATH_IMAGE016
块通过帧内解码方式恢复, 解码后保存在存储器中,由
Figure 920350DEST_PATH_IMAGE016
块和Skip块解码部分重构WZ帧
Figure 426417DEST_PATH_IMAGE050
(5)边信息的修正:利用部分重构WZ帧,对边信息进行修正, 用部分重构WZ帧的像素值在帧内块和Skip块的位置上来替代边信息帧Y中的像素值,产生新的边信息帧Y’,即
Figure 704952DEST_PATH_IMAGE052
        (7)
接下来在WZ块的位置,对解码的关键帧以边信息帧Y’为参考帧基于8×8块进行前向运动估计,产生运动矢量
Figure 939941DEST_PATH_IMAGE054
和块最小绝对残差和
Figure 695539DEST_PATH_IMAGE056
保存在缓冲器中;同样,在WZ块的位置,对解码的关键帧
Figure 133473DEST_PATH_IMAGE058
以边信息帧Y’为参考帧基于8×8块进行后向运动估计,产生运动矢量
Figure 554090DEST_PATH_IMAGE060
和块最小绝对残差和
Figure 26660DEST_PATH_IMAGE062
保存在缓冲器中;比较四个绝对残差和
Figure 936847DEST_PATH_IMAGE042
Figure 862078DEST_PATH_IMAGE044
的大小,通过式(8)来修正边信息,即
Figure 9397DEST_PATH_IMAGE066
(8)
其中
Figure 421924DEST_PATH_IMAGE026
为边信息帧中WZ块的坐标,一组帧组产生的修正边信息帧Y’的个数等于该帧组WZ帧的个数;
(6)解码端的残差帧
Figure 184344DEST_PATH_IMAGE068
,在生成残差帧中,仅对与当前解码WZ块相同位置的块进行DCT变换和量化,形成频域系数
Figure 365926DEST_PATH_IMAGE070
(7)WZ块的解码:WZ块解码首先根据接受到的校验位和解码器端的边信息用信道解码方式恢复频域信息,经过Skip块、WZ块和
Figure 883495DEST_PATH_IMAGE016
块的解码的过程,可以得到恢复的频域码流,恢复的频域码流含有编码端传送的信息
Figure 783318DEST_PATH_IMAGE028
,通过公式(9),即通过恢复的频域码流来精细重构最终的频域系数
Figure 349429DEST_PATH_IMAGE072
Figure 385518DEST_PATH_IMAGE074
                             (9)
其中
Figure 824721DEST_PATH_IMAGE076
Figure 211839DEST_PATH_IMAGE078
分别为根据恢复的频域信息推断的
Figure 316062DEST_PATH_IMAGE028
的最大值和最小值,此方法用恢复的
Figure 472237DEST_PATH_IMAGE028
的位平面信息限制了单纯由
Figure 331608DEST_PATH_IMAGE080
位平面重构
Figure 940444DEST_PATH_IMAGE028
而产生的失真,对反量化,逆离散余弦变换(IDCT),恢复残差值D',原始像素W'由式(10)来获得
Figure 124618DEST_PATH_IMAGE082
                             (10)
其中
Figure 404158DEST_PATH_IMAGE026
为WZ块的坐标;
(8)恢复WZ帧,并通过去h.264中方块滤波器滤波后显示。
5.根据权利要求4所述的基于模式决策的自适应帧组分布式视频解码方法,其特征在于:步骤(3)中所述的第一种情况下的边信息帧Y通过公式(5)计算得到:
Figure 500290DEST_PATH_IMAGE084
(5);
其中
Figure 946315DEST_PATH_IMAGE086
为内插帧像素的坐标;
Figure 77082DEST_PATH_IMAGE088
Figure 278256DEST_PATH_IMAGE090
解码的关键帧和准关键帧之间的前向和后向的运动矢量;
Figure 861684DEST_PATH_IMAGE092
Figure 111400DEST_PATH_IMAGE094
,其中为当前编码帧与前一个关键帧
Figure 219482DEST_PATH_IMAGE038
之间的距离,即帧数,
Figure 290206DEST_PATH_IMAGE020
是这个帧组长度,
所述的第二种情况下的边信息帧Y通过公式(6)计算得到:
Figure 343612DEST_PATH_IMAGE098
(6)
其中
Figure 183392DEST_PATH_IMAGE088
Figure 726369DEST_PATH_IMAGE090
解码的关键帧之间的前向和后向的运动矢量,
Figure 18810DEST_PATH_IMAGE010
与公式(5)相同。
CN 201110275465 2011-09-16 2011-09-16 基于模式决策的自适应帧组分布式视频编码和解码方法 Expired - Fee Related CN102271256B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110275465 CN102271256B (zh) 2011-09-16 2011-09-16 基于模式决策的自适应帧组分布式视频编码和解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110275465 CN102271256B (zh) 2011-09-16 2011-09-16 基于模式决策的自适应帧组分布式视频编码和解码方法

Publications (2)

Publication Number Publication Date
CN102271256A CN102271256A (zh) 2011-12-07
CN102271256B true CN102271256B (zh) 2013-08-07

Family

ID=45053398

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110275465 Expired - Fee Related CN102271256B (zh) 2011-09-16 2011-09-16 基于模式决策的自适应帧组分布式视频编码和解码方法

Country Status (1)

Country Link
CN (1) CN102271256B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102740081B (zh) * 2012-06-21 2015-03-25 西南交通大学 一种基于分布式编码技术的多视点视频传输差错控制方法
CN103002283A (zh) * 2012-11-20 2013-03-27 南京邮电大学 多视角分布式视频压缩的边信息生成方法
CN104301729B (zh) * 2014-09-07 2018-04-10 南京邮电大学 一种无反馈分布式视频编码的码率控制方法
CN105338357B (zh) * 2015-09-29 2018-08-24 湖北工业大学 一种分布式视频压缩感知编解码方法
CN106210744B (zh) * 2016-07-19 2019-01-08 华南农业大学 基于宏块分类的分布式残差视频编译码方法
CN106534873B (zh) * 2016-11-29 2019-05-03 四川大学 基于小波域的分布式视频编码关键帧丢失错误保护方法
CN111372081B (zh) * 2020-03-17 2022-06-17 四川大学 基于丢失块修复的分布式多视点视频解码的方法和装置
CN112437300B (zh) * 2020-11-23 2022-04-15 武汉理工大学 一种基于自适应区间重叠因子的分布式视频编码方法
CN117939134B (zh) * 2024-03-22 2024-05-31 鹰驾科技(深圳)有限公司 一种无线视频通信方法及***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101835044B (zh) * 2010-04-23 2012-04-11 南京邮电大学 一种频率域分布式视频编码中的分类组合方法
CN102088612B (zh) * 2011-03-11 2012-07-25 西安电子科技大学 具有鲁棒性的无反馈Wyner-Ziv视频解码器

Also Published As

Publication number Publication date
CN102271256A (zh) 2011-12-07

Similar Documents

Publication Publication Date Title
CN102271256B (zh) 基于模式决策的自适应帧组分布式视频编码和解码方法
CN101854548B (zh) 一种面向无线多媒体传感器网络的视频压缩方法
JP4755095B2 (ja) 映像符号化の符号化側/復号化側に使用される双方向予測方法
US8582904B2 (en) Method of second order prediction and video encoder and decoder using the same
CN101835042B (zh) 基于无反馈速率控制的Wyner-Ziv视频编码***及方法
Guo et al. Wyner–Ziv-based multiview video coding
CN101247525B (zh) 一种提高图像帧内编码速率的方法
CN107027029A (zh) 基于帧率变换的高性能视频编码改进方法
WO2006073116A1 (ja) 映像符号化方法及び装置、映像復号方法及び装置、それらのプログラムおよびそれらプログラムを記録した記録媒体
CN103002283A (zh) 多视角分布式视频压缩的边信息生成方法
CN102256133B (zh) 一种基于边信息精化的分布式视频编码及解码方法
CN101335892A (zh) 基于帧内模式决策的混合分布式视频编码方法
CN101860748A (zh) 基于分布式视频编码的边信息生成***及方法
CN102630012B (zh) 基于多描述视频编码、解码方法、装置及***
CN102572428B (zh) 面向多媒体传感网分布式编解码的边信息估计方法
CN110493603B (zh) 一种基于联合信源信道的率失真优化的多视点视频传输差错控制方法
CN102026001B (zh) 基于运动信息的视频帧重要性评估方法
CN105611301B (zh) 基于小波域残差的分布式视频编解码方法
CN102595132A (zh) 一种应用于无线传感器网络的分布式视频编解码方法
CN102833536A (zh) 一种面向无线传感器网络的分布式视频编解码方法
CN102740081B (zh) 一种基于分布式编码技术的多视点视频传输差错控制方法
Maugey et al. Fusion schemes for multiview distributed video coding
CN101557519B (zh) 一种多视点视频编码方法
CN115002482B (zh) 使用结构性保持运动估计的端到端视频压缩方法及***
Benierbah et al. Hybrid Wyner-Ziv and intra video coding with partial matching motion estimation at the decoder

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

Granted publication date: 20130807