会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 电脑图像 / 运动矢量 / 基于时空域相关性运动矢量预测的视频编码方法

基于时空域相关性运动矢量预测的视频编码方法

阅读:475发布:2021-03-01

IPRDB可以提供基于时空域相关性运动矢量预测的视频编码方法专利检索,专利查询,专利分析的服务。并且基于时空域相关性运动矢量预测的视频编码方法,属于计算机数字视频编码技术领域。本发明特征在于,提出一种结合运动矢量在时间域和空间域上相关性的运动矢量预测方法,及相邻宏块间运动相关性的描述方法。方法步骤依次为摄像机将目标物状态转换成视频信号,视频信号通过采集卡转换成数字视频序列,并存放在视频缓存中,作为系统输入用于压缩;计算机进入完成对原始视频帧进行基于运动补偿/DCT的混合编码子程序,进行视频压缩并生成码流文件。本发明重点在于运动矢量预测子程序,其预测方法主要为:首先进行相邻宏块间运动相关性的判断,再根据这一判断结果,开始执行宏块运动矢量预测程序。该系统有效地提高了运动矢量的预测的精度及视频编码效率。,下面是基于时空域相关性运动矢量预测的视频编码方法专利的具体信息内容。

1.基于时空域相关性运动矢量预测的视频编码方法,是由摄像机,将目标物状态转换成视频信号置于采集卡中;采集卡将视频信号转换成数字视频序列,并存放在视频缓存中,这些数字视频序列或是以视频序列文件形式存放在计算机硬盘中的视频数据,作为该系统的输入用于压缩;计算机存放原始视频序列和执行视频编码程序,并生成压缩后的码流文件,本发明的特征在于:计算机首先从采集卡的视频存储器或存放在计算机硬盘上的视频序列文件中读一帧视频数据到计算机的缓冲区中,通过执行视频编码子程序对该帧进行编码;视频编码子程序在视频编码时,一个输入的视频序列帧被分为16×16的宏块,编码过程是以宏块为单位进行的;计算机开始执行视频编码子程序后,首先对编码进行初始化;然后计算机按照从上到下、从左到右的次序先对第一个宏块做运动估计与补偿;运动估计与补偿之后得到该宏块的运动矢量和残差图像,对其中的运动矢量,首先执行运动矢量子程序进行预测,然后对预测差值进行上下文自适应的变长编码(CAVLC);而对残差图像则首先进行DCT变换,然后对DCT系数进行量化和CAVLC编码;之后输出该宏块的压缩码流放入计算机的缓冲区中;最后进行解码、生成相应参考宏块;该宏块编码结束后,对当前编码帧的所有宏块循环执行上述编码过程,完成对一个视频序列帧的编码;一帧编码结束后循环编码下一帧,至到视频序列的最后一帧编码结束,并生成压缩后的码流文件,系统执行程序结束;在上述的视频编码子程序中,运动矢量预测子程序采用了一种基于时空域相关性的运动矢量预测方法。该方法综合利用了运动矢量在时间域和空间域上的相关性,并根据相邻宏块间运动相关性的不同而采用不同的预测方法。

2.根据权利要求1所述的基于时空域相关性运动矢量预测的视频编码方法,其特征在于,视频编码子程序采用了基于运动补偿/DCT的混合编码方法,除运动矢量预测子程序这一部分外,采用了国际视频编码标准H.264 JM6.0的编码框架。

3.根据权利要求1所述的基于时空域相关性运动矢量预测的视频编码方法,其特征在于所述的运动矢量预测子程序中所采用的根据相邻宏块间运动相关性的不同,综合利用运动矢量在时间域和空间域上相关性的运动矢量预测方法,其预测方法如下:(1)首先进行相邻宏块间运动相关性的判断;对当前任一编码宏块,其相邻宏块间运动相关性的描述方法为:设Ei是当前帧i的编码宏块,Ai、Bi、Ci、Di、Gi、Hi分别为其左侧、上侧、右上侧、左上侧、右侧和下侧的相邻宏块,在前一帧i-1对应位置上的宏块分别表示为Ei-1、Ai-1、Bi-1、Ci-1、Di-1、gi-1和Hi-1;这里设B={C1C2C3C4C5}为Ei相邻宏块Ai、Bi、Ei-1、Gi-1和Hi-1的运动矢量组成的集合;(a)如果对于i,i∈[1,5],都满足|Ci-C3|≤TH则Ei相邻宏块间的运动相关性为高;(b)如果对于i,i∈[1,5],都满足|Ci-C3|>TH则Ei相邻宏块间的运动相关性为低;(2)根据(1)的判断结果,当前编码宏块的运动矢量的预测方法如下:为了利用时间、空间域上的相关性,本发明选取Ai、Bi和Ci的运动矢量作为空间域上的侯选预测因子,Ei-1、Gi-1和Hi-1的运动矢量作为时间域上的侯选预测因子,运动矢量预测的具体算法如下:(a)当Ei-1、Gi-1和Hi-1都不存在时,则以Ai、Bi、Ci作为侯选预测因子;(b)当相邻宏块间的运动相关性为高时,则选取Ai、Bi和Ei-1为侯选预测因子;(c)当相邻宏块间的运动相关性为低时,则选取Ai、Bi、Gi-1和Hi-1为侯选预测因子;(d)当任意一个Ai、Bi、Ci和Di采用帧内编码时,如果在i-1帧与其对应位置宏块的运动矢量存在,则该宏块的运动矢量选取在i-1帧与其对应位置块相同的运动矢量和参考帧,否则该块的运动矢量置为(0,0);(e)如果在Ai、Bi、Ci、Ei-1、Gi-1和Hi-1中存在与Ei具有相同参考帧的宏块,则预测因子选取该宏块相同的运动矢量,否则预测因子选取侯选预测因子的中值;预测因子即为当前编码宏块的运动矢量的预测值;运动矢量在水平和垂直方向上的分量都采用上述预测方法;计算机需要对运动矢量在水平和垂直方向上的分量单独执行上述程序,完成运动矢量的预测。

说明书全文

基于时空域相关性运动矢量预测的视频编码方法

技术领域

:本发明涉及计算机数字视频编码技术领域,针对的是视频编码系统,如HDTV、HD-DVD、流媒体服务器等应用。

背景技术

:视频信息的数据量大,为了有效利用带宽,视频信息在存储或传输之前,必须经过高效压缩。编码效率是表征编码系统的重要指标之一,在率失真的意义下,编码效率是指在一定重建视频质量的情况下,编码系统输出的比特率;或在一定输出的比特率的情况下,获得的重建视频的质量。
在基于运动补偿/DCT的混合编码方法中,运动估计得到运动矢量需要编码,并同纹理信息一起形成压缩码流,以便在解码时能正确重建视频图像。据统计,在整个输出码流中运动矢量输出的码流通常可以占到10~40%左右。运动矢量编码通常包括运动矢量的预测和熵编码两部分。运动矢量通过一定方法预测后,可以有效降低熵,从而提高其编码效率。另外,在采用基于H.264的编码框架时,运动矢量的预测还会影响到运动矢量和参考帧的最终选择。因此运动矢量预测对提高视频编码效率具有重要意义。
在现有的视频编码方法中,如H.264、H.263和MPEG-4等,运动矢量编码都采用了中值预测的方法。即如图1所示,E表示当前编码宏块,A、B、C和D分别表示其在空间域上左侧、上侧、右上侧和左上侧相邻宏块,宏块E运动矢量的预测因子取A、B、C三个宏块运动矢量的中值。应该说,中值预测方法是一种简单、高效运动矢量预测方法,其主要缺点在于:(1)没有利用运动矢量在时间域上的相关性。(2)对于运动复杂的视频序列其编码效率通常会大为降低。

发明内容

:本发明的目的在于克服目前编码系统中运动矢量预测方法的不足,有效地提高运动矢量的编码效率,设计了一种结合运动矢量在时间域和空间域上相关性的运动矢量预测方法。其技术思路特征在于:1.综合利用了运动矢量在时间域和空间域上的相关性,并根据宏块间运动相关性的不同而采用不同的预测方法,提高了运动矢量的预测精度;2.提出了一种适合于视频序列在时空域上相邻宏块间运动相关性的描述方法。该方法是通过时空域相邻宏块运动矢量的绝对差值来描述其运动相关性的。
本发明的技术方案参见图3-图6。这种基于时空域相关性运动矢量预测的视频编码方法,是由摄像机(1),将目标物状态转换成视频信号置于采集卡(2)中;采集卡将视频信号转换成数字视频序列,并存放在视频缓存中,这些数字视频序列或是以视频序列文件形式存放在计算机硬盘中的视频数据,都被称为原始视频序列,作为该系统的输入用于压缩;计算机(3)存放原始视频序列和执行视频编码子程序,并生成压缩后的码流文件,本发明的特征在于:计算机首先从采集卡的视频存储器或存放在计算机硬盘上的视频序列文件中读一帧视频数据到计算机的缓冲区中,通过执行视频编码子程序对该帧进行编码;计算机读取视频数据的时间间隔通常为1/30秒。
视频编码子程序采用了基于运动补偿/DCT的混合编码方法,除运动矢量预测子程序这一部分外,采用了国际视频编码标准H.264 JM6.0的编码框架。
视频编码子程序在视频编码时,一个输入的视频序列帧被分为16×16的宏块,编码过程是以宏块为单位进行的;计算机开始执行视频编码子程序后,首先对编码进行初始化,这些初始化工作主要包括对编码参数和缓冲区的设置。
然后计算机按照从上到下、从左到右的次序先对第一个宏块做运动估计与补偿;运动估计与补偿之后得到该宏块的运动矢量和残差图像,对其中的运动矢量,首先执行运动矢量子程序进行预测,然后对预测差值进行上下文自适应的变长编码(CAVLC);而对残差图像则首先进行DCT变换,然后对DCT系数进行量化和CAVLC编码;之后输出该宏块的压缩码流放入计算机的缓冲区中;最后进行解码、生成相应参考宏块;该宏块编码结束后,对当前编码帧的所有宏块循环执行上述编码过程,完成对一个视频序列帧的编码;一帧编码结束后循环编码下一帧,至到视频序列的最后一帧编码结束,并生成压缩后的码流文件,系统执行程序结束。
在上述的视频编码子程序中,运动矢量预测子程序中所采用的预测方法,是根据相邻宏块间运动相关性的不同,综合利用了时间和空间域上的相关性对其进行预测编码的。
其所述的运动矢量预测子程序中,其预测方法如下:(1)首先进行相邻宏块间运动相关性的判断;对于图2所示的宏块在时间域和空间域上的相邻关系,设Ei是当前帧i的编码宏块,Ai、Bi、Ci、Di、Gi、Hi分别为其左侧、上侧、右上侧、左上侧、右侧和下侧的相邻宏块,在前一帧(i-1)对应位置上的宏块分别表示为Ei-1、Ai-1、Bi-1、Ci-1、Di-1、Gi-1和Hi-1。
这里设B={C1C2C3C4C5}为Ei相邻宏块Ai、Bi、Ei-1、Gi-1和Hi-1的运动矢量组成的集合。
(a)如果对于i,i∈[1,5],都满足|Ci-C3|≤TH则Ei相邻宏块间的运动相关性为高。
(b)如果对于i,i∈[1,5],都满足|Ci-C3|>TH则Ei相邻宏块间的运动相关性为低。
(2)根据(1)的判断结果,当前编码宏块的运动矢量的预测方法如下:为了利用时间、空间域上的相关性,本发明选取Ai、Bi和Ci的运动矢量作为空间域上的侯选预测因子,Ei-1、Gi-1和Hi-1的运动矢量作为时间域上的侯选预测因子,运动矢量预测的具体算法如下:(1)当Ei-1、Gi-1和Hi-1都不存在时,则以Ai、Bi、Ci作为侯选预测因子;(2)当相邻宏块间的运动相关性为高时,则选取Ai、Bi和Ei-1为侯选预测因子;(3)当相邻宏块间的运动相关性为低时,则选取Ai、Bi、Gi-1和Hi-1为侯选预测因子;(4)当任意一个Ai、Bi、Ci和Di采用帧内编码时,如果在(i-1)帧与其对应位置宏块的运动矢量存在,则该宏块的运动矢量选取在(i-1)帧与其对应位置块相同的运动矢量和参考帧,否则该块的运动矢量置为(0,0);(5)如果在Ai、Bi、Ci、Ei-1、Gi-1和Hi-1中存在与Ei具有相同参考帧的宏块,则预测因子选取该宏块相同的运动矢量,否则预测因子选取侯选预测因子的中值;预测因子即为当前编码宏块的运动矢量的预测值;运动矢量在水平和垂直方向上的分量都采用上述预测方法。
依据大量实验测试结果,我们选取TH=8。
本发明的视频编码系统设计了一种结合运动矢量在时间域和空间域上相关性的运动矢量预测方法。这种预测方法根据宏块间运动相关性的不同,综合利用了时间和空间域上的相关性,有效地提高了运动矢量的预测的精度,最终提高了系统的编码效率。
下面将结合附图对具体实施方式进行详细说明。

附图说明

:图1是宏块在空间域上的相邻关系;
图2是宏块在时间域和空间域上的相邻关系;图3是视频编码系统框图;图4是视频编码系统主程序框图;图5是视频编码子程序框图;图6是运动矢量预测方法的子程序框图。

具体实施方式

:本发明的视频编码系统的目的在于:在获得一定视频重建质量的前提下,尽可能地压缩视频序列的数据量,以便于视频信息的存储或传输。在图3所示的视频编码系统框图中,摄像机和采集卡是市售的,用于将目标对象转换成计算机可以处理的数字视频序列。图中的视频序列文件表示该系统输入的也可以是通过其他设备获得的、并事先存放在计算机硬盘上中数字视频序列。这些数字视频序列就是原始视频序列,作为该系统的输入用于压缩。在计算机上执行视频编码子程序,对原始视频序进行压缩,压缩的结果是以生成码流文件的形式存放在计算机硬盘上。与输入的原始视频序列相比,生成的码流文件的数据量非常小,因而该系统达到了对视频信息压缩的目的。
图4所示是该系统执行程序的总体框图。在图4中,视频编码子程序采用了基于运动补偿/DCT的混合编码方法。除运动矢量预测子程序这一部分外,本发明采用了国际视频编码标准H.264 JM6.0的基本编码框架,其程序流程如图5所示。应该指出,在视频编码时,一个输入的视频序列帧被分为16×16的宏块,编码过程是以宏块为单位进行的。计算机开始执行视频编码子程序后,首先对编码进行初始化,这些初始化工作包括对视频序列格式、帧率、量化参数、运动矢量的搜索范围、参考帧的数目、各缓冲区以及输出码流文件名等的设置。然后计算机按照从上到下、从左到右的次序先将第一个宏块的数据读入缓冲区,对该宏块做运动估计与补偿,运动估计与补偿之后得到该宏块的运动矢量和残差图像,对其中的运动矢量,首先执行如图6所示的运动矢量子程序进行预测,然后对预测差值进行上下文自适应的变长编码(CAVLC);而对残差图像则首先进行DCT变换,然后对DCT系数进行量化和CAVLC编码,之后输出该宏块的压缩码流并存放在缓冲区中。为了下一帧编码的需要,最后进行解码、生成相应参考宏块,存放在计算机内存中。该宏块编码结束后,对当前编码帧的所有宏块循环执行上述编码过程,完成对一个视频序列帧的编码。
对于图5所示的视频编码子程序,其中的运动矢量预测子程序部分其程序框图如图6所示,该运动矢量预测方法是本发明的核心,与目前国际视频编码标准中运动矢量预测方法不同。该预测方法根据相邻宏块间运动相关程度的不同,综合利用了时间和空间域上的相关性进行运动矢量的预测。其具体执行过程如下所述。在图5所示的初始过程中,设置两个长度都为:L=W×H8]]>的缓冲区,其中W为图像帧的宽度,H图像帧的高度,用于存放前一帧和当前帧所有4×4子块的运动矢量。
在计算机进入图6的运动矢量预测子程序后,首先对当前编码宏块Ei进行相邻宏块间运动相关性的判断,执行的算法程序如前所述。在执行完Ei相邻宏块间运动相关性的判断之后,根据这一判断结果,开始执行宏块Ei运动矢量预测程序,执行的程序步骤也如前所述。
最后,当前编码宏块的运动矢量与预测因相减,得到预测差值。
应该说明的是,计算机需要对运动矢量在水平和垂直方向上的分量单独执行上述程序,完成运动矢量的预测。
为了验证本发明的实际编码效率,进行了如下的对比实验。对相同的视频序列,这里以Bus(352×288,150帧,30fps)序列为例,在本发明的编码系统上执行(1)本发明的编码程序;(2)国际编码标准H.264 JM6.0的基本编码程序,表2是本发明与H.264编码效率的比较。本发明的编码方法与H.264的唯一不同之处是选用的运动矢量预测方法的不同,其中本发明采用了基于时空域相关性的运动矢量预测方法。编码参数两者都按如表1所示的编码配置文件设置,量化参数QP都分别取20,28,34和40四个值进行实验。
表1是编码系统的配置文件。配置文件用于设置系统的编码参数,其中主要包括:运动估计的精度为1/4像素,搜索范围为±32像素;参考帧的数目为2帧;熵编码采用上下文自适应的变长编码(CAVLC);禁止块大小自适应变换(ABT);必须执行Hadamard变换和R-D优化;图像组的结构是第一帧为I帧,以后都为P帧;表2中PSNR表示重建视频图像的峰值信噪比。比特率是指每秒输出的比特数。节约码率定义为在量化参数一定时,执行H.264与本发明编码输出码率的差值与执行H.264编码输出码率的百分比。平均节约码率定义为在不同量化参数条件下节约码率的均值。
表2编码效率结果的比较,是两者在采用同一量化参数时,在重建视频质量(PSNR)相同的条件下,输出比特率结果的比较。输出比特率越小说明编码效率越高。可以看出本发明优于采用H.264编码系统的编码效率。
表1是编码系统的配置文件:
表2是编码结果示例:
高效检索全球专利

IPRDB是专利检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,专利查询、专利分析

电话:13651749426

侵权分析

IPRDB的侵权分析产品是IPRDB结合多位一线专利维权律师和专利侵权分析师的智慧,开发出来的一款特色产品,也是市面上唯一一款帮助企业研发人员、科研工作者、专利律师、专利分析师快速定位侵权分析的产品,极大的减少了用户重复工作量,提升工作效率,降低无效或侵权分析的准入门槛。

立即试用