频域视频转码方法及实现其的转码器的制作方法

文档序号:7651871阅读:166来源:国知局

专利名称::频域视频转码方法及实现其的转码器的制作方法
技术领域
:本发明涉及视频图像处理领域,更具体地,涉及一种频域降采样视频转码方法及实现其的转码器。
背景技术
:随着计算机、网络技术对媒体技术的发展,数字视频压縮技术得到了广泛地应用。通常视频信号按照不同的标准和压缩编码后,在不同的环境介质中传播,在不同的终端上显示播放,就需要对这些压縮视频流进行转码处理。转码应用涉及视频服务器、通用多媒体访问设备、监控系统、机顶盒等诸多多媒体设备和系统。视频转码技术是将一种标准和格式的压縮视频流处理成更适应于某种特定应用的另一种标准和格式的压縮视频流。为了加快视频转码的速度,频域上的视频转码成为技术的主流,这些技术都依靠频域的运动补偿。目前的视频转码器,多是基于解码器编码器串连的结构在空间域进行转码。就是说,待解码的码流先经过相应的解码器完全解码得到视频帧,然后在空间域上处理解码帧,最后将处理后的视频帧再经过相应的编码器完全编码得到转码后的文件。为了加快转码速度,频域的视频转码引入了一种频域的运动补偿方法。这种方法依赖于矩阵乘法运算,运算量比较大。现有技术的一种运动补偿方法如图1所示。现有的视频转码器结构需要完全解码出视频帧,然后再次编码。这样码流中的部分有用的信息如运动矢量,编码模式在转码过程中不能得到再次应用。将导致转码需要消耗很大的计算量,在实时应用中面临很多问题。基于频域视频转码结构,其涉及到的传统运动补偿方法需要大量的矩阵乘法运算,这样使得频域的转码结构运算速度慢,耗费大量计算。
发明内容为了解决上述技术问题,本发明提出了一种频域频转码方法,包括步骤对输入视频流进行部分解码;对解码的结果进行运动补偿,得到解码帧的DCT系数块;对得到的DCT系数块进行DCT域降采样;对经过降采样的DCT系数块进行运动补偿和部分编码,得到转码的视频流;其中,在运动补偿处理中,根据运动矢量的精度来进行运动补偿。此外,本发明还提供了一种频域视频转码器,包括一种频域视频转码器,包括解码模块,对输入视频流进行部分解码;第一运动补偿模块,对解码模块的输出结果进行运动补偿,得到解码帧的DCT系数块;降采样模块,对运动补偿模块输出的DCT系数块进行DCT域降采样处理;第二运动补偿模块,对降采样模块的输出进行运动补偿;以及编码模块,对第二运动补偿模块的输出进行部分编码,以得到转码的视频流;其中,在所述第一和第二运动补偿模块中,根据运动矢量的精度来进行运动补偿。'利用根据本发明的频域视频转码方法,可以处理包含有半像素精度运动矢量的运动补偿,并且整像素运动补偿和半像素运动补偿有着相同的实现形式,便于编程实现。根据本发明的运动补偿方法将传统方法的四项矩阵相乘的和形式简化为一项矩阵相乘的形式,在保证与传统方法在数学上严格等价条件下,比传统的运动补偿方法节省了大约1/4的计算量,大大加快了转码速度。图1为示出了现有技术DCT域运动补偿方法的示意图。图2为示出了根据本发明的频域视频转码器的系统结构方框图。图3示出了图1中110部分的局部放大。图4为示出了根据本发明的DCT域运动补偿方法的流程图。具体实施例方式输入的视频码流首先经过210变长解码模块、220逆量化模块得到了运动矢量和帧DCT参差系数。DCT参差系数与利用DCT域运动补偿模块230获得的DCT系数相加,得到解码帧的DCT系数。通过DCT域处理模块240,对解码帧的DCT系数进行降采样,并发送到250量化模块进行量化,然后经过变长编码模块260输出转码后的视频码流。同时,通过270逆量化模块和DCT域运动补偿模块280,输出编码的重构帧。在运动补偿模块280中,利用210模块输出的运动矢量,并利用运动矢量复用模块290得到编码的运动矢量。其中,在模块230、280中使用了本发明的DCT域运动补偿方法,包括整像素精度和半像素精度运动补偿,现分别说明1)整像素精度DCT域运动补偿方法如图1所示,整像素精度的DCT域传统运动补偿方法为,补偿宏块的DCT系数由下式得到(1)其中B,、B7、B;和B4分别为要补偿的DCT块在参考帧上重叠的四水DCT块系数,S为运动补偿得到的DCT系数块。Hi和Wi为平移矩阵的DCT形式,平移矩阵为除了矩阵左下角或者右上角为单位阵外其他元素都为零的矩阵。H=DCT(0Ih00w=DCT(00uoB、H和W均为8X8大小的矩阵。因此,运动补偿表现为四项和的形式,计算量大。本发明的方法如图3的示意图所示,图3为图1中110的局部放大,针对我们的算法对其进行了重绘。假设要补偿的DCT块根据运动矢量与参考帧中的四个DCT块重叠,这四个块构成块b。块b沿运动矢量方向运动(h,w),到达与补偿块6左上角对齐的位置后形成块b'。b,由图3所示的虚线框表示。在空间域上b,用截断矩阵m和11取其左上角的8*8子块得到要补偿的块"其为图3中的斜线部分。上述过程可以用公式表达为G=m*h(h)*b'*w(w)*n(2)这里h(h)和w(w)为平移矩阵,其形式为除了矩阵左下角或右上角为单位矩阵外其他元素都为零的矩阵W(W):0Ih0000Io下标"w代表运动的偏移量。m和n为截断矩阵,其形式为m-[180ki6'n:16x8is为大小为8的单位矩阵。式(2)两端分别做离散余弦变换DCT(G)=DCT[迈*h(h)*b'*w(w)*n]等效变换为6=M*Hh*B'*Ww*N(3)其中6、B'、M、N、Hh、W沐分别为S、b'、m、n、h(h)和w(w)的DCT形式。其中B'为b,的16点DCT变换形式,而在参考帧中为8X8块的8点变换形式。利用变换矩阵T可以完成四个8X8变换到一个16X16的变换的转换<formula>formulaseeoriginaldocumentpage8</formula>根据式(4),频域的运动补偿可以得到如下形式<formula>formulaseeoriginaldocumentpage8</formula>这里L为8X16的矩阵,R为16X8的矩阵,B为重:小为16X16,其中<formula>formulaseeoriginaldocumentpage8</formula>(5)的四个块;2)半像素精度运动补偿方法空间域中,半像素插值为其临近位置整像素的平均值。从空间域推导到频域,半像素位置的运动补偿有着与整像素相同的形式。对于水平半像素补偿有B=L*B*R'V(6)这里,RH与上述R推导方式类似可表示为Rw=T'*WW*NWw为Ww的半像素表述形式,是Ww与其相邻矩阵Ww-,的平均对于垂直半像素补偿有<formula>formulaseeoriginaldocumentpage8</formula>(7)其中,与ww类似,Ha为<formula>formulaseeoriginaldocumentpage8</formula>对于对角半像素补偿有"LH*B*Rw(8)这里,^为8X16矩阵,^为16X8矩阵。对于具有半像素运动精度的码流,利用本方法同样可以进行快速的运动补偿。根据本发明的DCT域的运动补偿的方法的流程图如图4所示。图4中,在步骤402,获得当前块的运动矢量402。然后,在步骤403,根据运动矢量分别计算出整像素和半像素运动矢量,并且计算出偏移量(w,h)(步骤404),从而得到了重叠区域B。根据解码得出的水平和竖直方向的运动矢量,决定当前运动矢量的精度。针对不同的运动矢量的精度,分别采用整像素、水平方向半像素、垂直方向半像素以及对角半像素,即,分别使用409、410、411和412模块来进行补偿。最后把计算后的当前块的DCT系数存入重构帧缓存。在步骤414,判断是否进行下一个块的运动补偿,如果需要则继续,否则退出。本文提出的频域转码器及频域运动补偿方法,从计算复杂度上优于传统的运动补偿方法。该方法适用于整像素和半像素精度的运动补偿,整像素和半像素补偿有着统一的计算形式,易于程序实现。针对一个8X8子块的运动补偿,分别分析式(1)和式(5),统计其相应的乘法运算量和加法运算量,其结果如表1所示。从表1知,本发明的方法其乘法运算量为传统方法的70%,加法运算量为传统方法的80%。考虑到CPU运算时,乘法比加法耗费更多的时间,且其中乘法所占的比重大,所以整体上本发明方法计算量为传统方法的3/4左右。表l运动补偿一个块所需的计算量比较<table>tableseeoriginaldocumentpage9</column></row><table>权利要求1.一种频域视频转码方法,包括步骤对输入视频流进行部分解码;对解码的结果进行运动补偿,得到解码帧的DCT系数块;对得到的DCT系数块进行DCT域降采样;对经过降采样的DCT系数块进行运动补偿和部分编码,得到转码的视频流;其中,在运动补偿处理中,根据运动矢量的精度来进行运动补偿。2.如权利要求1所述的方法,其中,在进行运动补偿时,根据运动矢量的精度,采用矩阵联乘的方式得到运动补偿后的系数块。3.如权利要求1或2所述的方法,其中,当运动矢量的精度为整像素精度运动补偿时,采用以下方程得到经运动补偿的图像块6=丄*B*其中,3为运动补偿得到的DCT系数矩阵,B为原始图像的DCT系数矩阵,l^m.i^.t,r=t「ww.n,M和N是截断矩阵的DCT变换形式,!^和Ww分别是平移矩阵的DCT变换形式,T为变换矩阵。4.如权利要求1或2所述的方法,其中,当运动矢量的精度为水平半整像素运动补偿时,采用以下方程得到经运动补偿的图像块其中,S为运动补偿得到的DCT系数矩阵,B为原始图像的DCT系数矩阵,l-m.Ha.t,rw=t*ww*n,M和N是截断矩阵的DCT变换形式,ww=(ww+ww—1)/2,Ww分别是平移矩阵的DCT变换形式,T为变换矩阵。5.如权利要求1或2所述的方法,其中,当运动矢量的精度为垂直半整像素运动补偿时,采用以下方程得到经运动补偿的图像块其中,3为运动补偿得到的DCT系数矩阵,B为原始图像的DCT系数矩阵,<formula>formulaseeoriginaldocumentpage3</formula>M和N是截断矩阵的DCT变换形式,H,和Ww分别是平移矩阵的DCT变换形式,T为变换矩阵。6.如权利要求1或2所述的方法,其中,当运动矢量的精度为对角半整像素运动补偿时,采用以下方程得到经运动补偿的图像块其中,S为运动补偿得到的DCT系数矩阵,B为原始图像的DCT系数矩阵,<formula>formulaseeoriginaldocumentpage3</formula>ww=(ww+ww—,)/2,M和N是截断矩阵的DCT变换形式,Ha和Ww分别是平移矩阵的DCT变换形式,T为变换矩阵。7.—种频域视频转码器,包括解码模块,对输入视频流进行部分解码;第一运动补偿模块,对解码模块的输出结果进行运动补偿,得到解码帧的DCT系数块;降采样模块,对运动补偿模块输出的DCT系数块进行DCT域降采样处理;第二运动补偿模块,对降采样模块的输出进行运动补偿;以及编码模块,对第二运动补偿模块的输出进行部分编码,以得到转码的视频流;其中,在所述第一和第二运动补偿模块中,根据运动矢量的精度来进行运动补偿。全文摘要一种频域视频转码方法,包括步骤对输入视频流进行部分解码;对解码的结果进行运动补偿,得到解码帧的DCT系数块;对得到的DCT系数块进行DCT域降采样;对经过降采样的DCT系数块进行运动补偿和部分编码,得到转码的视频流;其中,在运动补偿处理中,根据运动矢量的精度来进行运动补偿。利用根据本发明的频域视频转码方法,便于编程实现,并且在保证与传统方法在数学上严格等价条件下,比传统的运动补偿方法节省了大约1/4的计算量,大大加快了转码速度。文档编号H04N7/26GK101309403SQ200710097398公开日2008年11月19日申请日期2007年5月15日优先权日2007年5月15日发明者昀刘,伟文,胡洪涛申请人:北京三星通信技术研究有限公司;三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1