一种视频压缩方法

文档序号:7595129阅读:144来源:国知局
专利名称:一种视频压缩方法
技术领域
本发明涉及视频通信领域,尤其涉及一种会议电视系统和可视电话系统中的视频压缩方法。
背景技术
现有的视频图像压缩标准MPEG-1、MPEG-2、MPEG-4、H.261、H.263、H.264都是基于DCT变换的,其中H.264和MPEG-4AVC采用的是性能逼近于DCT的整数变换方法,基本处理单元都为16×16大小的宏块,其一般处理框架如图1所示。
图中可见,在现有技术中,包括以下步骤发送端输入视频图像,并将其分割为16×16的宏块;发送端对输入视频图像数据进行运动估计和运动补偿;对上述数据进行DCT变换处理;对变换后的数据进行量化处理;对量化处理后的数据进行熵编码,并将编码后的数据发送至接收端。
接收端对接收到的数据进行逆过程的处理,即可解码视频图像数据,还原后的视频图像数据即可应用。
在上述过程中,除了MPEG4包含基于对象的编码方法外,其它的都是把图像看成一个整体,而不区分图像里面的具体内容。这样,显然无法精确地区分图像内容。

发明内容
在会议电视和可视电话等应用中,一般情况下对肤色(特别是人脸)的关注程度要高于图像中的其它内容,因此,在使用视频压缩标准进行视频图像压缩时,特别是在低带宽情形时,如能设法使肤色图像数据的损失尽量小而具有较好的保真度,则能收到更令人满意的视讯交流效果。本发明就是基于H.263等视频压缩标准,提出一种基于肤色检测和运动检测的视频图像数据压缩和编码的方法,以提高图像质量。
为此,本发明采用如下技术方案一种视频压缩方法,在发送端将输入视频数据进行运动估计、运动补偿、DCT变换、量化以及熵编码步骤的处理后,将所述视频数据发送给接收端,并在接收端进行与发送端相反的处理步骤,还原视频图像数据;其特征在于所述的方法还包括在发送端进行检测步骤将图像分为前景图像和背景图像,并标识为前景宏块和背景宏块;QP值调整步骤将前述前景宏块和背景宏块量化级参数QP值进行量化级调整。
所述的检测步骤,包括肤色检测步骤和运动检测步骤。
所述的肤色检测步骤近一步包括肤色图像初检步骤在宏块层次上判定肤色检测内容;背景图像填充处理步骤对初检后的背景图像进行填充处理;前景图像填充处理步骤对初检后的前景图像进行填充处理。
所述的背景图像填充处理步骤进一步包括判断孤立模块;统计落在背景图像模板中的目标宏块数目,根据设定阈值判定背景图像,并对背景图像填充处理。
所述的前景图像填充处理步骤进一步包括统计落在前景图像模板内的目标宏块数目;根据设定阈值判定前景图像,并对前景图像填充处理。
所述的方法,还包括边界填充的步骤。
所述的运动检测步骤,包括根据运动估计中计算得到的当前宏块与前一帧重构图像中对应位置宏块的差值以及运动估计矢量来判断当前宏块的运动特性,并根据设定阈值分别统计当前帧的大运动宏块总数、中运动宏块总数和小运动宏块总数。
所述的宏块量化级调整步骤进一步包括将整帧图像宏块分别标识为肤色宏块标识、运动宏块标识、静止部分标识,并且依据设定的运动矢量阈值将运动宏块分别标识为不同级别的运动宏块类型。
所述的不同级别的运动宏块类型分别为大运动宏块、中运动宏块和小运动宏块,所述的处理方式进一步包括前景大运动情形前景码率比重比计算结果略微减小,相应增加了后景码率比重;前景中运动情形前景码率比重按照计算结果取值;前景小运动情形前景码率比重比计算结果略微增加,相应减小了后景码率比重。
所述的方法,进一步包括以下判断步骤之一或者组合如果肤色MB数与运动MB数之和超过第一阈值,则不进行肤色MB的QP值调整;如果肤色MB数超过第二阈值,则第一个肤色MB之前的MB的QP值要加1;如果运动MB数超过第三阈值,则不进行运动MB的QP值调整;如果大运动MB数超过第四阈值,则第一个大运动MB之前的静止MB的QP值要减1;如果小运动MB数超过第五阈值,则第一个小运动MB之前的静止MB的QP值要加1;
如果静止MB数超过第六阈值,则第一个运动MB之前的所有MB的QP值要减1。
本发明是在H.261、H.263、MPEG1、MPEG2和MPEG4等标准实现中,不依赖对象形状信息,通过增加肤色检测和运动检测等前处理过程,对前景图像和背景图像分别进行考虑和调整QP值,对于视频通信应用,在保持总的编码效率和整体图像质量的情况下,可以得到基于内容编码的好的图像主观效果,增加的计算复杂度也较小。


图1是基于DCT的视频压缩的一般处理框架图;图2是本发明的一个流程图;图3是本发明边界填充的示意图。
具体实施例方式
下面结合说明书附图来说明本发明的具体实施方式

对于会议电视和可视电话等视频通信应用来说,可以将视频图像分割成前景和背景,这样有助于提高主观视觉质量,符合人眼的注意力集中机制,并使得在低带宽下仍能保证图像的主观质量。前景区主要是指感兴趣的目标(包括肤色等)、运动的物体以及靠近摄像头的物体。背景区主要是指非感兴趣的目标、静止的物体以及远离摄像头的物体。在会议电视和可视电话等应用中,一般情况下对前景图像(特别是人脸图像)的关注程度要高于图像中的其它内容,对参会者特别是发言者本人图像及一些动作也比较关注,因此,在使用视频压缩标准进行视频图像压缩时,特别是在低带宽情形时,如能设法使肤色图像数据的损失尽量小而具有较好的保真度,并且尽量提高前景图像的清晰度,则能收到更令人满意的视讯交流效果。
本发明通过肤色检测和运动检测,将图像分割为前景图像和背景图像,分别标识前景宏块和背景宏块,然后对码率控制计算所得的宏块量化级参数QP(Quantization Prediction,用于将图象象素值或者预测差值缩小的量化因子)值进行前景和背景量化级调整,以达到在保证整体图像质量较好的情况下提高前景图像质量的效果,从而得到较好的主观图像质量。其处理流程示意图如图2所示。
本发明在发送端将输入视频数据进行运动估计、运动补偿、DCT变换、量化以及熵编码等步骤的处理后,将所述视频数据发送给接收端,并在接收端进行与发送端相反的处理步骤,还原视频图像数据;另外,还包括检测步骤将图像分为前景图像和背景图像,并标识为前景宏块和背景宏块;QP值调整步骤将前述前景宏块和背景宏块量化级参数QP值进行量化级调整。
下面具体阐述本发明详细的技术方案,其主要包括以下三个过程一、肤色检测处理,包括1、肤色图像粗检利用肤色分割人脸由于不受空间几何信息影响因而具有较强的鲁棒性,且算法简单效率较高。大多数人脸的肤色总是分布在某一范围之内。经过统计分析,可以得到人脸的肤色分布范围Y(TY1~TY2)、Cb(TCB1~TCB2)、Cr(TCR1~TCR2)。判定人脸图像是在宏块层次上按如下算法进行对第(i,j)位置上的宏块遍历宏块内所有(m,n)位置上的象素点,并累计下属于肤色的象素点个数(skin_num)。
if TY1<Y(m,n)<TY2&&TCB1<Cb(m,n)<TCB2&&TCR1<Cr(m,n)<TCR2then skin_num=skin_num+1;如果skin_num>T时,则认为该宏块为肤色宏块,并对其作标记,统计肤色宏块总数。
例如,作为一种实现方式,可以取TY1=50,TY2=200,TCB1=80,TCB2=140,TCR1=130,TCR2=170,T=10。
2、前景和背景图像填充处理经过肤色图像粗检步骤后,前景(肤色)图像或背景图像内部可能会出现许多“空洞”,此时就要进行填充处理,滤除这些“空洞”。用1标志前景宏块,0标志背景宏块。填充的扫描次序是从左至右,从上至下逐行扫描。包括以下三种背景区填充背景区填充第一步判别孤立宏块,例如

如果出现图示情况,则判断该宏块为孤立宏块,将前景宏块标记置为0。
第二步紧接第一步,当前扫描宏块的位置记为(j,i),可向右下作2×2模板,

统计落在模板中目标宏块的个数,记为SUM。
①如果SUM=0,则继续扫描下一个宏块。
②如果SUM≠0,则将模板扩展为4×4,如下表所示

统计落在4×4模板中目标宏块的个数,记为Count。
如果SUM>=3并且Count=SUM,则将模板内的所有宏块标记置0;如果0<SUM<3并且Count-SUM≤1,则将模板内的所有宏块标记置0。
前景区填充。
在背景区填充完成之后,即可进行前景区填充。
第一步当前扫描宏块的位置记为(j,i),可作5×5模板,

统计落在模板内的宏块个数记为Count,前景宏块个数为SUM。
如果SUM大于某一阈值,例如SUM≥Count×0.4,则将模板的所有宏块标记置1;否则,进入第二步。
第二步仍以当前宏块为中心作3×3模板,

统计落在3×3模板内的宏块个数记为Count,目标宏块个数为SUM。
如果SUM大于某一阈值,例如SUM≥Count×0.4,则将3×3模板的所有宏块标记置1;边界填充边界填充算法比较简单,采用如图3所示的填充方法
图中目标为检测的前景宏块,填充的位置为被误检为背景的宏块。
2、运动检测为了减少计算复杂度,直接根据运动估计中计算得到的当前宏块与前一帧重构图像中对应位置宏块的差值SAD0以及运动估计矢量MVX、MVY来判断当前宏块的运动特性,并分别统计当前帧的运动宏块总数、中运动宏块总数和小运动宏块总数。
3、宏块量化级调整经过前面几个步骤处理后,可将整帧图像宏块分别进行标识肤色宏块标识、运动宏块标识、静止部分标识,并且依据运动矢量的大小将运动宏块分为“大运动”、“中运动”和“小运动”三种类型,并分别标识。
(1)侧重点分析前景大运动情形前景码率比重比计算结果略微减小,相应增加了后景码率比重;前景中运动情形前景码率比重按照计算结果取值;前景小运动情形前景码率比重比计算结果略微增加,相应减小了后景码率比重。
几种特殊情况下的处理方法如果肤色MB数与运动MB数之和超过某一阈值,例如50%,则不进行肤色MB的QP值调整;(MB;Macroblock,宏块,16×16大小的图象象素块)如果肤色MB数超过某一阈值,例如20%,则第一个肤色MB之前的MB的QP值要加1;如果运动MB数超过某一阈值,例如50%,则不进行运动MB的QP值调整;如果大运动MB数超过某一阈值,例如20%,则第一个大运动MB之前的静止MB的QP值要减1;如果小运动MB数超过某一阈值,例如20%,则第一个小运动MB之前的静止MB的QP值要加1;如果静止MB数超过某一阈值,例如80%,则第一个运动MB之前的所有MB的QP值要减1。
(2)方法的主要框架描述,可以采用如下伪程序语言if(该MB属于肤色部分){该MB的QP值比计算值减小1或2。}else{if(该MB属于运动部分){if(该MB属于大运动情形){该MB的QP值比计算值增大1或2或者适当削去DCT部分高频分量。
}else if(该MB属于中运动情形){该MB的QP值取为计算值。
}else if(该MB属于小运动情形){该MB的QP值比计算值减小1或2。
}}else(该MB属于静止部分){对该MB的QP值进行限制
(a)与前一帧静止部分的同一位置处MB的QP值相差限制-1~1或-2~2。
(b)同帧静止部分各MB的QP值相差限制-1~1或-2~2。}}(3)平滑背景宏块的量化系数此处理的主要目的是使所有背景宏块的量化系数趋于一致,从而减小图像中背景部分的抖动。具体处理过程描述如下对任何一个背景宏块,设由计算得到的其量化系数为QP_new,本帧中所有已编码背景宏块的量化系数平均值为partMean,当前宏块的相邻的前一个宏块的量化系数为QP_prev,则①如果partMean>QP_prev并且QP_new<QP_prevQP_new QP_prev partMean---------------|---------------------|------------------------------|----------------->QP增加则令QP_new=QP_prev②如果partMean<QP_prev并且QP_new>QP_prevpartMean QP_prevQP_new-----------|---------------------|------------------------------|----------------->QP增加则令QP_new=QP_prev③如果partMean-QP_prev>=2并且QP_new>QP_prev且QP_new-QP_prev<=2QP_prevQP_new QP_prev+2 partMean-------------------|-----------------|---------------------|---------------------|-------->QP增加则令QP_new=QP_prev+2④如果partMean-QP_prev<=-2并且QP_new<QP_prev且QP_new-QP_prev>=-2
partMean QP_prev-2 QP_newQP_prev-------------------|-----------------|---------------------|---------------------|-------->QP增加则令QP_new=QP_prev-2。
本发明所述方法的突出优点是(1)本发明所述的基于肤色检测和运动检测的视频压缩方法能比较好地将前景和后景图像进行分割,在保持总的编码效率和整体图像质量的情况下,能提高前景图像的质量和清晰度,从而能得到较好的主观图像质量效果。
(2)本发明所述的基于肤色检测和运动检测的视频压缩方法所增加的计算量很小,计算复杂度较低,便于实时应用。
本发明针对一些测试序列和摄像机实时采集图像,对本发明所给出的基于肤色检测和运动检测的视频压缩方法进行了对比测试,结果显示,能比较好地将前景和后景图像进行分割,在保持总的编码效率和整体图像质量的情况下,能提高前景图像的质量清晰度,从而能得到较好的主观图像质量效果。
权利要求
1.一种视频压缩方法,在发送端将输入视频数据进行运动估计、运动补偿、DCT变换、量化以及熵编码步骤的处理后,将所述视频数据发送给接收端,并在接收端进行与发送端相反的处理步骤,还原视频图像数据;其特征在于所述的方法还包括在发送端进行检测步骤将图像分为前景图像和背景图像,并标识为前景宏块和背景宏块;QP值调整步骤将前述前景宏块和背景宏块量化级参数QP值进行量化级调整。
2.如权利要求1所述的方法,其特征在于所述的检测步骤,包括肤色检测步骤和运动检测步骤。
3.如权利要求2所述的方法,其特征在于所述的肤色检测步骤进一步包括肤色图像初检步骤在宏块层次上判定肤色检测内容;背景图像填充处理步骤对初检后的背景图像进行填充处理;前景图像填充处理步骤对初检后的前景图像进行填充处理。
4.如权利要求3所述的方法,其特征在于所述的背景图像填充处理步骤进一步包括判断孤立模块;统计落在背景图像模板中的目标宏块数目,根据设定阈值判定背景图像,并对背景图像填充处理。
5.如权利要求3所述的方法,其特征在于所述的前景图像填充处理步骤进一步包括统计落在前景图像模板内的目标宏块数目;根据设定阈值判定前景图像,并对前景图像填充处理。
6.如权利要求3所述的方法,其特征在于还包括边界填充的步骤。
7.如权利要求2所述的方法,其特征在于所述的运动检测步骤,包括根据运动估计中计算得到的当前宏块与前一帧重构图像中对应位置宏块的差值以及运动估计矢量来判断当前宏块的运动特性,并根据设定阈值分别统计当前帧的大运动宏块总数、中运动宏块总数和小运动宏块总数。
8.如权利要求7所述的方法,其特征在于所述的宏块量化级调整步骤进一步包括将整帧图像宏块分别标识为肤色宏块标识、运动宏块标识、静止部分标识,并且依据设定的运动矢量阈值将运动宏块分别标识为不同级别的运动宏块类型。
9.如权利要求8所述的方法,其特征在于所述的不同级别的运动宏块类型分别为大运动宏块、中运动宏块和小运动宏块,所述的处理方式进一步包括前景大运动情形前景码率比重比计算结果略微减小,相应增加了后景码率比重;前景中运动情形前景码率比重按照计算结果取值;前景小运动情形前景码率比重比计算结果略微增加,相应减小了后景码率比重。
10.如权利要求9所述的方法,其特征在于进一步包括以下判断步骤之一或者组合如果肤色MB数与运动MB数之和超过第一阈值,则不进行肤色MB的QP值调整;如果肤色MB数超过第二阈值,则第一个肤色MB之前的MB的QP值要加1;如果运动MB数超过第三阈值,则不进行运动MB的QP值调整;如果大运动MB数超过第四阈值,则第一个大运动MB之前的静止MB的QP值要减1;如果小运动MB数超过第五阈值,则第一个小运动MB之前的静止MB的QP值要加1;如果静止MB数超过第六阈值,则第一个运动MB之前的所有MB的QP值要减1。
全文摘要
本发明涉及一种视频压缩方法,包括在发送端将输入视频数据进行运动估计、运动补偿、DCT变换、量化以及熵编码等步骤的处理后,将所述视频数据发送给接收端,并在接收端进行与发送端相反的处理步骤,还原视频图像数据;该方法还包括在发送端进行检测步骤将图像分为前景图像和背景图像,并标识为前景宏块和背景宏块;QP值调整步骤将前述前景宏块和背景宏块量化级参数QP值进行量化级调整。本发明不依赖对象形状信息,通过增加肤色检测和运动检测等前处理过程,对前景图像和背景图像分别进行考虑和调整QP值,对于视频通信应用,在保持总的编码效率和整体图像质量的情况下,可以得到基于内容编码的好的图像主观效果,增加的计算复杂度也较小。
文档编号H04N7/26GK1713729SQ20041006010
公开日2005年12月28日 申请日期2004年6月24日 优先权日2004年6月24日
发明者熊联欢 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1