代码转换方法和具有嵌入式滤波器的代码转换装置 【发明领域】
本发明涉及一种将包括图像序列的初级编码信号代码转换成次级编码信号的方法,所述代码转换方法至少包括以下步骤:
对初级编码信号的当前图像进行解码,所述解码步骤包括用于产生第一变换信号的去量化子步骤,
在解码步骤后进行编码以便获得次级编码信号,所述编码步骤包括量化子步骤。
本发明还涉及用于执行这种代码转换方法的相应装置。
本发明尤其与MPEG编码视频信号的代码转换有关。发明背景
比特率代码转换是一种允许将以比特率BR1编码的初级视频流转换为以低于BR1的比特率BR2编码的次级视频流,比特率的降低是为了满足广播过程中传输装置所强加的要求。在欧洲专利申请No.EP0690392(PHF94001)中公开了一种如开篇段落中描述的代码转换装置,如图1所示。用于对作为图像序列的代表的编码数字信号(S1)进行代码转换的所述装置(100)包括解码通道(11,12),随后为编码通道(13,14,15)。在这两种通道之间以级联方式连接了预测通道,所述预测通道包括串联在两个减法器(101,102)之间的反向离散余弦变换电路IDCT(16)、图像存储器MEM(17)、运动补偿电路MC(18)和离散余弦变换电路DCT(19),其中运动补偿电路MC(18)是考虑到代表各图像运动的位移矢量(V)而设置的。发明概要
本发明地一个目的是提供一种代码转换方法和相应的装置,使得在低比特率应用中有更好的图像质量。本发明考虑了下述几个方面。
随着家庭数字视频和MPEG(活动图像专家组)广播记录的出现,可在消费者装置中采用代码转换器来实现慢转模式或者保证记录时间。然而,要进行代码转换的输入信号往往已经被以较低的平均比特率在变化的比特率下编码。这是因为统计复用的普及,允许广播电台将大量视频节目多路复用以便节约带宽。采用现有技术的代码转换方法来进行输入信号的较粗略的再量化很可能导致明显的量化人工痕迹。因此,这种代码转换方法不适合于低比特率的应用。
为了克服这一缺点,根据本发明的代码转换方法的特征在于,它还包括在去量化子步骤和量化子步骤之间的滤波步骤。
根据本发明的代码转换方法使滤波器可以在现有技术的代码转换器中以可忽略的成本实现。这些滤波器可以被调谐,从而控制静态和动态分辨率,而且还实现降噪的目的。对于相同的比特数目而言,滤波后的变换信号可以较小的量化等级进行编码,从而减少了可见的人工痕迹,例如阻塞、振荡和嗡嗡声。
在本发明的第一实施例中,代码转换方法包括根据从编码步骤中得到的变换编码误差、预测变换运动补偿信号的步骤,所述预测步骤在编码和解码步骤之间,其特征在于,所述滤波步骤是一个时间滤波步骤,用于接收变换运动补偿信号和第一变换信号,并将滤波后的变换信号传送到量化子步骤。
这种时间滤波步骤允许采用例如递归滤波器来实现噪声减少。因此,比特只用于包含在图像中的有用信息上,从而提高图像质量。
在本发明的第二实施例中,代码转换方法还包括预测步骤,其特征在于,所述滤波步骤是空间滤波步骤,用于接收第一变换信号和产生滤波后的变换信号,所述滤波后的变换信号和变换运动补偿信号被传送到量化子步骤。
这种空间滤波允许画面清晰度的减小,并且减少振荡和嗡嗡声的可能来源。
本发明还涉及用于执行这种代码转换方法的相应装置。
本发明最后还涉及一种用于接收器、如数字录像机或机顶盒的计算机程序产品,它包括一组指令,当其装入接收器时,使接收器执行所述代码转换方法。
参考下文中描述的实施例可以清楚和说明本发明的这些及其它方面。附图简介
现在参考附图通过举例来更加详细地描述本发明,图中:
图1是对应于根据现有技术的代码转换装置的框图,
图2是对应于根据本发明的代码转换装置的第一实施例的框图,所述装置包括时间滤波电路,
图3是对应于根据本发明的代码转换装置的第二实施例的框图,所述装置包括空间滤波电路,
图4是对应于根据本发明的代码转换装置的第三实施例的框图,所述装置也包括空间滤波电路,以及
图5是对应于根据本发明的代码转换装置的第四实施例的框图,所述装置也包括空间滤波电路,还可以包括时间滤波电路。发明的详细描述
本发明涉及对视频编码信号进行代码转换的改进方法和相应的装置。更具体地说,本发明涉及MPEG-2编码信号,但是,对本领域的技术人员而言,显然,所述代码转换方法也可适用于任何类型的通过基于块的技术、如由MPEG-1、MPEG-4、H-261或H-263标准提供的技术编码的视频信号。
代码转换装置使已用第一量化等级编码并包括图像序列的初级编码信号(S1)转换成用第二量化等级编码的次级编码信号(S2)。
这种代码转换装置至少包括以下元件:
解码单元,它包括变长解码器VLD和第一去量化器IQ,用于对初级编码信号的当前图像进行解码并传送第一变换信号,
编码单元,它包括量化器Q、用于得到次级编码信号的变长编码器VLC以及第二去量化器IQ,
预测单元,它在编码单元和解码单元之间,包括串联的:
·反向离散变换电路IDCT(在MPEG情况下为反向离散余弦变换),
·图像存储器MEM,
·电路MC,用于对代表各图像运动的位移矢量进行运动补偿,
·离散变换电路DCT,用于根据从编码单元中得到的变换编码误差(Re)预测变换运动补偿信号(Rmc),
·加法器,用于确定变换运动补偿信号与变换信号(R1或Rf)之和,
·减法器,用于根据所和与编码单元产生的第二变换信号(R2)之间的差异确定变换编码误差,
滤波电路,它在第一去量化器和量化器之间,用于传递滤波后的变换信号(Rf)。
所述滤波电路可以是时间或空间滤波电路,适合于控制静态和动态分辨率,并减小图像中的噪声。在下面图2到5中描述了这种滤波器的不同实现。
对于本领域的技术人员而言,显然,如果用另一个适合于确定变换信号(R1或Rf)与变换运动补偿信号(Rmc)之间差异的减法器来代替加法器,以及如果首先提到的减法器适合于根据第二变换信号(R2)与其它减法器的输出之间的差异确定变换编码误差(Re),则代码转换装置的结果不会改变。
在本发明的第一实施例中,代码转换器实现运动补偿的时间滤波器。时间滤波可减少从帧到帧不相关的信号。由于运动补偿设法使图像内容从帧到帧地相关联,因此当与运动补偿结合时,可以非常有效地减少噪声。在此实施例中实现递归滤波器,因为它以较低成本提供较好的选择性。
带有运动补偿的递归时间滤波器的自然代码转换链通常包括级联的:
解码器,用于从输入流中产生解码图像的运动补偿块D1,
递归时间滤波器,用于产生解码图像的滤波块Df,以及
编码器,用于在编码后产生局部解码图像的输出流和运动补偿块D2。
为了降低成本,在递归时间滤波器中再次使用编码器中的运动补偿。因此,把信号D2代替Df反馈给所述滤波器。运动补偿块Df(n,m)的滤波公式为:
Df(n,m)=(1-α)·D1(n,m)+α·MC(D2(p(n)),V(n,m)), (1)
其中:
n为当前图像的下标,
m为所述当前图像的块的下标,
V(n,m)为与图像n的块m相关的运动,
p(n)为与图像n相关的固定图像的下标,
MC为运动补偿算子,以及
α为小于调谐滤波器响应的标量的正标量。
可以为双向运动补偿制订出与公式(1)类似的表达式。但是,在不丧失普遍性的前提下,应该将示范限制在单向的情况下。应当指出,由于没有为内编码块形成预测,所以不能对内编码块进行滤波。然而,非帧内图像中的内编码块最经常地对应于无法进行时间滤波的新暴露的区域。
可以利用运动补偿信息不变的假设来简化自然代码转换链。为此,运动补偿块D1(n,m)表示如下:
D1(n,m)=Mt·R1(n,m)·M+MC(D1(p(n)),V(n,m)), (2)
其中,
M是8×8的离散余弦变换矩阵,
Mt是相应的转置矩阵,以及
R1(n,m)是在变长解码VLC和去量化IQ之后从输入比特流中恢复的余项。
M由公式(3)定义,而且MMt=I:
然后,采用相同的运动补偿信息对滤波块进行编码。令Rf(n,m)为相应的余项:
Rf(n,m)=M·Df(n,m)·Mt-M·MC(D2(p(n)),V(n,m))·Mt (4)
然后又对余项进行量化和去量化,从而计算局部解码的图像D2。令R2(n,m)为量化和去量化的余项:
R2(n,m)=M·D2(n,m)·Mt-M·MC(D2(p(n)),V(n,m))·Mt (5)
结合公式(1)和(4),以便从D1和D2中直接导出Rf: Rf(n,m)=(1-α)[M·D1(n,m)·Mt-M·MC(D2(p(n)),V(n,m))·Mt](6)
结合公式(2)和(6),得到:
Rf(n,m)=(1-α)[R1(n,m)+M·MC(D1(p(n)),V(n,m))·Mt
-M·MC(D2(p(n)),V(n,m))·Mt] (7)
由于从D1和从D2中相同地进行运动补偿,运动补偿算子MC可以对图像差异、即由代码转换操作引起的误差信号进行运算。定义δD=D1-D2,将公式(7)重写为如下:
Rf(n,m)=(1-α)[R1(n,m)+M·MC(δD(p(n)),V(n,m))·Mt] (8)
误差信号δD可结合公式(5)和(6)从预测误差中导出:δD(n,m)=Mt[Rf(n,m)1-α-R2(n,m)]·M----(9)]]>
公式(8)和(9)定义了图2所示的代码转换器结构。所述代码转换器(200)包括:
解码通道,包括变长解码器VLD(11)和第一去量化器IQ(12),用于对初级编码信号(S1)的当前图像进行解码并产生第一变换信号(R1),
编码通道,包括量化器Q(13)、用于得到次级编码信号(S2)的变长编码器VLC(14)以及用于传送第二变换信号(R2)的第二去量化器IQ(15),
预测通道,它包括串联的:
·减法器(201),用于确定变换编码误差(Re)和谁的负输入端接收第二变换信号,
·反向离散余弦变换电路IDCT(16),
·图像存储器MEM(17),
·用于运动补偿的电路MC(18),
·离散余弦变换电路DCT(19),用于预测变换运动补偿信号(Rmc),
·加法器(202),用于将变换运动补偿信号与第一变换信号(R1)之和传送给减法器的正输入端,
时间滤波电路Wt(21),用于接收所述和并将滤波后的变换信号(Rf)传送给量化器Q(13)。
在本发明的一种有利变型中,运动补偿的递归时间滤波器的强度是针对各变换系数Rf[i]、即针对各DCT子频带分别调节的。等级i的变换系数被乘以W[i]=1-α[i],这样:
Rf[i]=W[i](R1[i]+Rmc[i]) (10)
因此,噪声减小可被调谐为噪声的频谱形状。也可以决定不对低频进行滤波,以便避免在不良运动补偿的情况下的可见人工痕迹,并且减小噪声。
在本发明的第二和第三实施例中,代码转换器实现空间滤波器。空间滤波不能如运动补偿的时间滤波一样有效地减小噪声。然而,它可以防止低比特率下的阻塞人工痕迹,并消除陡沿,否则这些陡沿会引起振荡效应。它还可以简化复杂图案,否则这些图案会随机地从一个图像到另一图像产生失真并导致所谓的嗡嗡声。
再考虑自然代码转换链。像素域滤波器应该具有与解码器相同的粒度。因此,考虑块式(block-wise)滤波器。令D1(n,m)为图像n的块m。滤波块D1(n,m)可按下式计算:
Df(n,m)=Fv(n)·D1(n,m)·Fht(n) (11)
其中Fv(n)和Fh(n)是分别定义块内垂直滤波和水平滤波的矩阵。
结合公式(11)和公式(2),得到:
Df(n,m)=Fv(n)·Mt·R1(n,m)·M·Fht(n)
+Fv(n)·MC(D1(p(n)),V(n,m))·Fht(n) (12)
如果对于一组图像而言滤波器相同,则Fv(n)=Fv(p(n))而Fh(n)=Fh(p(n))。因此,可以根据块式滤波与运动补偿相交换的假设为公式(12)给出下列估算式:
Df(n,m)=Fv(n)·Mt·R1(n,m)·M·Fht(n)
+MC(Df(p(n)),V(n,m)) (13)
因此,在反向离散余弦变换IDCT之后,可以将块式滤波器应用在余项R1(n,m)上。为了在代码转换器中实现空间滤波器,余项R1(n,m)需要由下式代替:
Rf(n,m)=M·FV(n)·Mt·R1(n,m)·M·Fht(n)·Mt (14)
即使可以预先计算矩阵M·Fv(n)·Mt和M·Fht(n)·Mt,它们的计算也可能涉及许多运算。对于两个矩阵为对角矩阵的块式滤波器来说,所述计算可以简化。这类滤波器是具有偶数个抽头的对称滤波器。在本实施例中,考虑标准化的3-抽头对称滤波器,因为它们更适用于小块。这种滤波器具有由a表示的单一参数。相应的像素域滤波矩阵(Fi,j)0<i,j<8定义为:则,
因此,为了在水平参数ah和垂直参数av下实现滤波,余项R1(n,m)需要被加权(分量式),加权值(Wsi,j)0<i,j<8定义如下:Wsi,j=2cos(iπ/8)+av2+av·2cos(jπ/8)+ah2+ah-----(17)]]>
图3表示根据本发明第二实施例的带有空间预滤波的代码转换器。所述代码转换器(300)包括:
解码通道,包括变长解码器VLD(11)和第一去量化器IQ(12),用于产生第一变换信号(R1),
空间滤波电路Ws(31),用于接收所述第一变换信号和产生滤波的变换信号(Rf),
编码通道,包括量化器Q(13)、变长编码器VLC(14)和用于产生第二变换信号(R2)的第二去量化器IQ(15),
预测通道,它包括串联的:
·减法器(201),用于确定变换编码误差(Re)和谁的负输入端接收第二变换信号,
·反向离散余弦变换电路IDCT(16),
·图像存储器MEM(17),
·用于运动补偿的电路MC(18),
·离散余弦变换电路DCT(19),用于预测变换运动补偿信号(Rmc),以及
·加法器(302),用于将所述变换运动补偿信号与滤波后的变换信号(Rf)之和传送给减法器的正输入端。
图4表示根据本发明的第三实施例的代码转换器,它具有空间后滤波,其加权因子为Wsi,j。所述代码转换器(400)包括:
解码通道,包括变长解码器VLD(11)和第一去量化器IQ(12),用于产生第一变换信号(R1),
编码通道,包括量化器Q(13)、变长编码器VLC(14)和第二去量化器IQ(15),还包括用于产生第二变换信号(R2)的反向滤波电路(42),
预测通道,它包括串联的:
·减法器(201),用于确定变换编码误差(Re)和谁的负输入端接收第二变换信号,
·反向离散余弦变换电路IDCT(16),
·图像存储器MEM(17),
·用于运动补偿的电路MC(18),
·离散余弦变换电路DCT(19),用于预测变换运动补偿信号(Rmc),以及
·加法器(202),用于将所述变换运动补偿信号与第一变换信号(R1)之和传送给减法器的正输入端,以及
空间滤波电路Ws(41),用于接收所述和并将滤波的变换信号(Rf)传送到编码通道。
与预滤波相比,空间滤波在代码转换器的编码部分中进行。
图5表示根据本发明第四实施例的带有空间后滤波的代码转换器。所述代码转换器(500)包括:
解码通道,包括变长解码器VLD(11)和第一去量化器IQ(12),用于传送第一变换信号(R1),
编码通道,包括量化器Q(13)、变长编码器VLC(14)和第二去量化器IQ(15),用于传送第二变换信号(R2),
预测通道,它包括串联的:减法器(201),用于确定变换编码误差(Re)和谁的负输入端接收第二变换信号;反向离散余弦变换电路IDCT(16);图像存储器MEM(17);用于运动补偿的电路MC(18);离散余弦变换电路DCT(19),用于预测变换运动补偿信号(Rmc);以及加法器(202),用于将所述变换运动补偿信号与第一变换信号(R1)之和传送给减法器的正输入端。
所述代码转换器还包括开关(52),该开关具有至少两个位置。在开关的第一位置(a),空间滤波电路Ws(51)适合于接收加法器的输出,并将滤波的变换信号(Rf)传送给量化电路(13)。在该情况下,与图3和4相反,空间滤波电路不用于包含在当前图像中的每一宏块,而仅用于包含在所述图像中的经过内编码的宏块上。在开关的第二位置(b),不运用滤波:这个位置主要对应于未内编码的宏块。
此第二位置的另一选择可以是位置(c),该装置对应于如上所述的时间滤波电路Wt(51),适合于接收加法器的输出并将滤波的变换信号(Rf)传送给量化电路(13)。作为所述选择的结果,照常在未内编码的宏块中使用时间滤波,而在内编码的宏块中使用空间滤波。
这种方法可以提高图像质量,尤其是在噪声电平较高时。
此外,内编码的宏块可以根据基于宏块的测量(BM)、例如噪声测量而在各种滤波电平下滤波,或者甚至完全不滤波。例如,当前内编码的宏块被加上以下标志:
“噪声”宏块,如果基于宏块的测量高于第一阈值,
噪声区域的“边缘”宏块,如果基于宏块的测量高于第二阈值而低于第一阈值,
“无噪声”宏块,如果基于宏块的测量低于第二阈值。
空间滤波电路适合于根据当前内编码的宏块的标志(“无噪声”、“噪声”或“边缘”宏块)来选择要应用到该宏块的适当的滤波器。例如,如果宏块被标为“无噪声”,则不进行滤波;如果宏块被标为“噪声”,则进行中等滤波(例如ah=av=8);如果宏块被标为“边缘”,则进行软滤波(例如ah=av=16)。
在上述代码转换器(200,300,400,500)中,滤波是对去量化的数据进行的,这得到更高的精度。迄今为止,最佳结果是为图像的空间滤波与预测图像的时间滤波的结合而得到的。在不脱离本发明范围的前提下,相继的滤波块Wt或Ws也可以结合成单个块,其加权值为各个加权值的乘积。
上述附图及其描述涉及了代码转换装置和代码转换方法,示意图中的功能框分别对应于所述装置的电路或所述方法的步骤。它们举例说明而不是限定本发明。显然,在所附权利要求书的范围内有多种变化。在这方面做出以下结束评论。
可以通过硬件或软件或者两者以多种方式实现各功能。在此方面,图2至图5是非常概略的,各图只代表本发明的一个可能的实施例。因此,虽然附图以不同的块表示不同的功能,但这决不排斥单项的硬件或软件执行若干功能。也不排斥采用各项硬件或软件或两者的组件来完成一项功能。例如,滤波步骤可与量化步骤结合,因此不修改本发明的代码转换方法而构成单个步骤。
所述代码转换方法可以若干方式在数字录像机或机顶盒中实现,例如通过布线的电子电路或者通过例如存储在编程存储器中的一组指令,所述指令代替至少一部分所述电路,可以在数字处理器的控制下执行,以便实现与所述被替代的电路所执行的功能相同的功能。例如,可以采用适当编程的集成电路来实现所述代码转换方法。包含在编程存储器中的一组指令可以使集成电路执行代码转换方法的不同步骤。可以通过读取数据载体、如盘来将一组指令装入编程存储器中。也可以由服务提供商通过通信网络、如因特网来提供这组指令。
下述权利要求书中的任何参考标号均不应视为限定权利要求。显然,动词“包括”及其动词变化的使用不排除任何权利要求中定义的那些以外的任何其它步骤或元件的出现。在某一元件或步骤之前的词语“一个”并不排除多个这类元件或步骤的出现。