首页 / 专利库 / 视听技术与设备 / 运动补偿时间滤波 / 估计信道引起的失真的方法和装置

估计信道引起的失真的方法和装置

阅读:1027发布:2020-06-18

专利汇可以提供估计信道引起的失真的方法和装置专利检索,专利查询,专利分析的服务。并且提供了用于估计信道引起的失真的方法和装置。用于估计 帧 间编码的图像的失真的方法包括下列步骤:将接收到的、帧间编码的图像中的帧间编码的宏 块 的平均信道失真计算(440)为先前平均信道失真乘以比例因子。,下面是估计信道引起的失真的方法和装置专利的具体信息内容。

1.一种用于估计间编码的图像的平均信道失真的方法,包括下列步骤: 访问为先前编码的图像估计的平均信道失真Dc,n-1;以及
响应于通过比例因子缩放的Dc,n-1,计算帧间编码的图像的平均信道失真 Dc,n,
所述比例因子是(1-P)(a(1-β)+cβ)+hP,其中P表示分组丢失率,β表示帧内率,a,c和h是常数,a<1并且h<1,其中
(1)利用帧间预测和具有非整数运动矢量的时间隐藏、而不利用帧内预测和去滤波来编码帧间编码的图像,
(2)利用帧间预测和具有非整数运动矢量的时间隐藏、并利用帧内预测而不利用去块滤波来编码帧间编码的图像,或者
(3)利用帧间预测和具有非整数运动矢量的时间隐藏、并利用帧内预测和去块滤波来编码帧间编码的图像。
2.如权利要求1所述的方法,其中当不利用帧内预测来编码或者利用受限制的帧内预测来编码所述帧间编码的图像时,常数c被设置为等于零。
3.如权利要求1所述的方法,其中如下计算常数a:
a=wa’,
其中当整数和非整数运动矢量两者都被用于运动补偿的时间预测时,a’被计算如下: 其中al和ar代表当其中使用所述非整数运动矢量时运动补偿的时间预测所使用的内插滤波器系数,Lp,p代表用于内插的邻近样本的数量,ρ代表两个相邻像素中信道引起的差错之间的平均相关系数,以及E{.}代表对{.}内的、帧间编码的像素的值求平均值的求均值运算,以及
其中当不利用去块滤波来编码帧间编码的图像时w=1,当利用去块滤波来编码帧间编码的图像时,如下确定w:
其中wl和wr代表去块滤波器系数,以及Ld代表用于所述去块滤波的邻 近样本的数量。
4.如权利要求3所述的方法,其中如下计算常数c:
1-c
其中如下分别确定CP和CI:
其中cl和cr代表用于帧内预测的加权系数,I-neighbors代表一组使用帧内模式先前被编码的、用于所述帧内预测的所有邻近样本,P-neighbors代表一组使用帧间模式先前被编码的、用于所述帧内预测的所有邻近样本,以及E{.}代表对{.}内的、P帧中的帧内编码的像素的值求平均值的求均值运算。
5.如权利要求1所述的方法,其中如下计算常数h:
h=h’w
其中当整数运动矢量和非整数运动矢量两者都被用于运动补偿的时间差错隐藏方法时,如下计算h’:
其中hl和hr代表当其中使用所述非整数运动矢量时所述运动补偿的时间差错隐藏方法所使用的内插滤波器系数,Lp,p代表用于内插的邻近样本的数量,ρ代表两个相邻像素中的信道引起的差错之间的平均相关系数,以及E{.}代表对{.}内的、隐藏的像素的值求平均值的求均值运算,以及
其中当在运动补偿时间差错隐藏方法之后不应用去块滤波时w=1,当在运动补偿时间差错隐藏方法之后应用去块滤波时,如下计算w:
其中wl和wr为去块滤波器系数,以及Ld代表用于去块滤波的邻近样本的数量。
6.一种用于估计帧间编码的图像的平均信道失真的装置,包括:
用于访问为先前编码的图像估计的平均信道失真Dc,n-1的部件;以及
响应于通过比例因子缩放的Dc,n-1,计算帧间编码的图像的平均信道失真Dc,n的部件, 所述比例因子是(1-P)(a(1-β)+cβ)+hP,其中P表示分组丢失率,β表示 帧内率,a,c和h是常数,a<1并且h<1,其中
(1)利用帧间预测和具有非整数运动矢量的时间隐藏、而不利用帧内预测和去块滤波来编码帧间编码的图像,
(2)利用帧间预测和具有非整数运动矢量的时间隐藏、并利用帧内预测而不利用去块滤波来编码帧间编码的图像,或者
(3)利用帧间预测和具有非整数运动矢量的时间隐藏、并利用帧内预测和去块滤波来编码帧间编码的图像。
7.如权利要求6所述的装置,其中当不利用帧内预测来编码帧间编码的图像或者利用受限制的帧内预测来编码帧间编码的图像时,将常数c设置为等于零。
8.如权利要求6所述的装置,其中如下计算常数a,
a=wa’,
其中当整数和非整数运动矢量两者都被用于所述运动补偿的时间预测时,a’被计算如下,
其中al和ar代表当其中使用非整数运动矢量时所述运动补偿的时间预测所使用的内插滤波器系数,Lp,p代表用于内插的邻近样本的数量,ρ代表两个相邻像素中的信道引起的差错之间的平均相关系数,以及E{.}代表对{.}内的、帧间编码的像素的值求平均值的求均值运算,以及
其中当不利用去块滤波来编码帧间编码的图像时w=1,当利用去块滤波来编码帧间编码的图像时,w如下确定:
其中wl和wr代表去块滤波器系数,以及Ld代表用于所述去块滤波的邻近样本的数量。
9.如权利要求8所述的装置,其中如下计算常数c:
其中分别确定CP和CI如下:
其中cl和cr代表用于帧内预测的加权系数,I-neighbors代表一组使用帧内模式先前被编码的、用于所述帧内预测的所有邻近样本,P-neighbors代表一组使用帧间模式先前被编码的、用于所述帧内预测的所有邻近样本,以及E{.}代表对{.}内的、P帧中的帧内编码的像素的值求平均值的求均值运算。
10.如权利要求6所述的装置,其中如下计算常数h:
h=h’w
其中当整数运动矢量和非整数运动矢量两者都被用于运动补偿的时间差错隐藏方法时,如下计算h’:
其中hl和hr代表当其中使用所述非整数运动矢量时所述运动补偿的时间差错隐藏方法所使用的内插滤波器系数,Lp,p代表用于内插的邻近样本的数量,ρ代表两个相邻像素中的信道引起的差错之间的平均相关系数,以及E{.}代表对{.}内的、隐藏的像素的值求平均值的求均值运算,以及
其中当在运动补偿时间差错隐藏方法之后不应用去块滤波编码帧间编码的图像时w=1,当在运动补偿时间差错隐藏方法之后应用去块滤波来编码帧间图像时,如下计算w: 其中wl和wr为去块滤波器系数,以及Ld代表用于所述去块滤波的邻近样本的数量。

说明书全文

估计信道引起的失真的方法和装置

[0001] 相关申请的交叉引用
[0002] 本申请要求2005年1月18日提交的、标题为“METHOD ANDAPPARATUS FOR ESTIMATING CHANNEL INDUCED DISTORTION”的美国临时申请序列号60/644787(代理案号PU0500011)的利益,通过引用而将其全部内容合并于此。
[0003] 技术领域
[0004] 本发明一般地涉及数据通信,更具体地涉及用于估计信道引起的失真的方法和装置。
[0005] 背景技术
[0006] 用户在网络的视频应用(例如,视频流或视频电话)中接收到的视频与原始视频不同。差异或失真是例如由在视频编码器上应用的量化和在传输期间的比特差错和分组丢失引发的。后者,被称为“信道引起的失真”(或简称“信道失真”),依赖于许多因素,包括,例如,信道差错的特征、在编码器上应用的差错复原(error resilience)特性、在解码器上使用的差错隐藏(errorconcealment)技术、以及基础序列(underlying sequence)的运动和结构内容(texture content)。信道引起的失真的精确估计使视频服务提供者能够最佳地选择源编码器、信道编码器、以及其它传输差错控制机制的操作参数,以使给定信道带宽的、接收到的视频质量最大化。
[0007] 在现有技术中,通过将空间-时间差错传播行为建模为泄漏滤波器(leaking filter),而发展了将平均信道引起的失真与分组丢失率和内率(intra-rate)相关的分析模型。然而,对于该模型参数的物理意义的附连不是没有困难的。
[0008] 同样在现有技术中,已知所谓的ROPE(递归最佳每像素估计)方法,其递归地计算每像素的原始值和已解码的值之间的预期差值。可以使用ROPE 方法来计算使用不同的编码模式(帧间(inter)及帧内)的新的宏的预期失真,使得编码器能选择导致最小失真的模式。然而,ROPE方法不适用于在给定信道丢失率的实际编码之前确定平均帧内率。此外,ROPE方法也是计算量密集的。另外,ROPE方法只适用于以下:在编码器只使用整数运动矢量用于时间预测时、以及在解码器使用简单差错隐藏方法时,其中简单差错隐藏方法将在先前重建的帧中的位于同一位置的(co-located)块复制用于当前帧中的任何丢失的块。
[0009] 此外在现有技术中,建立了帧级别的递归方程(以下称为“传统帧级别递归方程”),其将当前帧中的信道引起的失真与先前帧中的信道引起的失真相关。然而,此模型只适用于简单差错隐藏方法,其中简单差错隐藏方法将在先前重建的帧中的位于同一位置的块复制用于当前帧中的任何丢失的块。
[0010] 以上所述的所有现有技术考虑了只由于时间帧间预测引起的差错传播。此外,大多数现有技术方法没有考虑时间预测和隐藏的非整数运动补偿,也没有考虑去块滤波(deblocking filtering)的影响。
[0011] 空间帧内预测和去块滤波是最新的H.264视频编码标准的两种新特性,其相对于先前的标准显著地改善了编码效率。
[0012] 因此,具有克服现有技术的上述局限的、用于估计信道引起的失真的方法和装置是期望的和非常有利的。
[0013] 发明内容
[0014] 本发明解决现有技术的这些和其它缺点和劣势,其针对用于估计信道引起的失真的方法和装置。
[0015] 根据本发明的一方面,提供了用于估计帧间编码的图像的失真的方法。此方法包括以下步骤:将接收到的帧间编码的宏块的平均信道失真计算为先前平均信道失真乘以比例因子,其中所述比例因子是基于以下情况取值的:是否不利用去块滤波以及利用使用整数运动矢量的运动补偿对所述帧间编码的宏块编码;是否不利用去块滤波以及利用运动补偿的时间预测对所述帧间编码的宏块编码;是否利用去块滤波以及利用运动补偿的时间预测对所述帧间编码的宏块编码。
[0016] 根据本发明的另一方面,提供了用于估计P帧的失真的方法。该方法包括以下步骤:当使用无限制的帧内预测将帧内编码的宏块编码时,将接收到 的、P帧中的帧内编码的宏块的平均信道失真计算为先前帧平均信道失真乘以比例因子,其中所述比例因子是基于以下情况取值的:是否不利用去块滤波以及利用使用整数运动矢量或使用整数运动矢量和非整数运动矢量的运动补偿时间预测对所述帧间编码的宏块编码。
[0017] 根据本发明的另一方面,提供了用于估计当前视频图像的失真的方法。该方法包括以下步骤:将丢失的且使用运动补偿的时间差错隐藏方法隐藏的当前视频图像的宏块的平均信道失真计算为平均隐藏失真和来自先前的视频图像的传播失真的和。所述传播的失真被计算为先前的视频图像中的平均信道失真乘以比例因子,其中所述比例因子是基于以下情况取值的:是否不利用去块滤波对所述当前视频图像解码,并且所述运动补偿的时间差错隐藏方法使用整数运动矢量;是否不利用去块滤波对所述当前视频图像解码;以及是否利用去块滤波对所述当前视频图像解码。
[0018] 根据本发明的另一方面,提供了用于确定帧间编码的图像的平均隐藏失真的方法。该方法包括以下步骤:当在帧间编码的图像中的其它帧和其它宏块中没有传输丢失时,将帧间编码的图像中的给定宏块的隐藏失真定义为给定宏块的信道失真。该方法还包括以下步骤:通过将所选择的宏块设置为丢失以及使用解码器差错隐藏方法隐藏所选择的宏块,来估计帧间编码的图像中的所选择的宏块的隐藏失真。该方法还包括对于帧间编码的图像中的其它所选择的宏块重复所述估计步骤的步骤。此外,该方法包括基于帧间编码的图像中的所选择的宏块的所估计的隐藏失真,计算帧间编码的图像中的宏块的平均隐藏失真的步骤。
[0019] 根据本发明的另一方面,提供了用于确定画面组(GOP)的平均隐藏失真的方法。该方法包括以下步骤:通过将所选择的宏块设置为丢失以及使用解码器差错隐藏方法隐藏所选择的宏块,来估计GOP中的所选择的帧间编码的图像中的所选择的宏块的隐藏失真。
该方法还包括对于GOP中的所选择的帧间编码的图像和其它所选择的帧间编码的图像中的其它所选择的宏块重复所述估计步骤的步骤。该方法还包括基于GOP中的所选择的帧间编码的图像中的所选择的宏块的所估计的隐藏失真,计算GOP的平均隐藏失真的步骤。 [0020] 根据本发明的另一方面,提供了确定画面序列的平均隐藏失真的方法。该方法包括以下步骤:通过将所选择的宏块设置为丢失以及使用解码器差错隐藏方法隐藏所选择的宏块,来估计画面序列中的所选择的帧间编码的图像 中的所选择的宏块的隐藏失真。该方法还包括对于画面序列中的所选择的帧间编码的图像和其它所选择的帧间编码的图像中的其它所选择的宏块重复所述估计步骤的步骤。该方法还包括基于画面序列中的所选择的帧间编码的图像中的所选择的宏块的所估计的隐藏失真,计算画面序列中的帧间编码的图像的平均隐藏失真的步骤。
[0021] 结合附图阅读下面的示例实施例的详细描述,本发明的这些和其它方面、特性和优点将变得显而易见。
[0022] 附图说明
[0023] 根据下面的示例附图,本发明可被更好地理解,附图中:
[0024] 图1示出了根据本发明原理的、用于确定视频解码器的总的预期失真的装置的框图
[0025] 图2示出了根据本发明原理的、用于计算信道引起的失真的装置的框图; [0026] 图3示出了根据本发明原理的、用于估计信道失真模型中的参数的装置的框图; [0027] 图4示出了根据本发明原理的、用于基于每帧的帧内率和隐藏失真来估计信道失真的方法的流程图
[0028] 图5示出了根据本发明原理的、用于基于视频序列中的每个画面组中的平均帧内率和隐藏失真来估计信道失真的方法的流程图;以及
[0029] 图6示出了根据本发明原理的、用于基于视频序列的I帧的预估计的隐藏失真与P帧的平均帧内率和隐藏失真来估计信道失真的方法的流程图。

具体实施方式

[0030] 本发明针对用于估计信道引起的失真的方法和装置。有利地,本发明可被配置为考虑使用帧间预测和帧内预测以及使用去块滤波。此外,本发明可被配置为考虑使用非整数运动矢量的编码器运动补偿和运动补偿的时间隐藏的影响。
[0031] 本说明例示本发明原理。因此将理解本领域技术人员将能够发展出尽管这里没有明确描述或示出的、但是应用本发明原理并包括在本发明的精神和范围内的各种布置。 [0032] 这里所述的所有例子和条件语句意在教学目的,以帮助读者理解由发明人贡献以促进本领域的本发明的原理和构思,并被解释为不限制为这样具体叙述的例子和条件。 [0033] 此外,这里叙述本发明原理、方面、以及实施例的所有陈述、以及本发明的具体例子意在包含本发明的结构的和功能的等价物。另外,其意在这样的等价物包括当前已知的等价物以及将来发展的等价物,即,无论结构如何、执行相同功能的发展的任何元件。 [0034] 因此,例如,本领域技术人员将了解这里呈现的框图代表应用本发明的原理的示例性电路的构思视图。相似地,将了解:任何流程图、图示、状态转换图、伪代码等等代表各种处理,所述各种处理可基本上在计算机可读介 质中表现,并被计算机或处理器执行,无论这样的计算机或处理器是否被明确示出。
[0035] 附图中所示的各种元件的功能可通过使用专用硬件以及能够与适合的软件相结合而执行软件的硬件来提供。当由处理器提供时,所述功能可由单个专用处理器、单个共享处理器、或其中一些可被共享的多个独立处理器提供。此外,术语“处理器”或“控制器”的明确使用不应被解释为排外性地只代表能够执行软件的硬件,其也可以隐含地、不受限制地包括数字信号处理器(“DSP”)硬件、用于存储软件的只读存储器(“ROM”)、随机存取存储器(“RAM”)、以及非易失性存储。
[0036] 也可包括其它的传统的和/或常规的硬件。类似地,图中所示的任何开关只是概念性的。其功能可通过程序逻辑、专用逻辑电路、程序逻辑和专用逻辑电路间的交互作用、或甚至手动地执行,具体技术可由实施者选择,其可从上下文中被具体地理解。 [0037] 在其权利要求书中,表示为执行特定功能的部件的任何元件意在包含执行以下功能的任何手段,包括:例如,a)执行该功能的电路元件的组合或者b)任何形式的软件,因此包括与用于执行该软件的适合的电路结合以实施该功能的固件微码等等。由这样的权利要求书限定的本发明归于这样的事实:由各种所述部件提供的功能以权利要求书要求的方式组合并集合。因此应认为:可提供那些功能的任何部件等价于这里所示的那些部件。 [0038] 根据本发明原理,公开了用于估计由分组丢失导致的失真的装置和方法。更具体地,使用数学分析,导出了用于任何固定的差错隐藏技术的、使信道引起的失真与分组丢失率以及编码器帧内率(帧内编码的块和帧的频率)相关的新的数学递归公式。每个公式用于一种编码器和解码器配置。基于不同视频编码器/解码器配置的递归公式,这里提供了用于估计信道引起的失真的实际方法。根据本发明的原理,也发展了这样的方法,其用于:基于训练序列估计递归公式中的参数,估计给定视频序列的隐藏失真,该失真为在假定除了丢失的编码的切片之外的其它的切片(slice)都被接收时、丢失的编码的切片的平均每像素信道失真。所估计的隐藏失真和模型参数被用于给定视频序列的信道失真估计。 [0039] 本发明的实施例的一种可能的应用是设计并操作视频流服务器。该服务器包括视频编码器和将交叉分组信道编码应用到编码的比特流的信道编码 器。视频编码器可改变量化参数(QP)、帧内率β(P帧中的宏块(MB)以帧内模式被编码的频率)、周期性的I帧之间的间隔、N、以及切片结构。后者(即,切片结构)指一种样式(pattern),通过该样式一个视频帧的数据可能被分为多个编码的切片。例如,一帧的所有数据可被置于一个切片中,或者帧的间隔(alternating)的MB或间隔的行可被置于两个单独的切片中。信道编码器可改变信道编码速率r。假设提供了被分配用来流过一个视频文件的总带宽(用Rt表示),而平均信道分组丢失率用 表示。设计问题是确定关于QP、β、N、切片结构、以及r的最佳操作参数,使得在总发送比特率Re/r≤Rt的限制下,所接收到的视频失真最小化。根据本发明的原理,可使用信道失真估计器以及编码器失真率估计器和信道编码/解码模拟器一起来解决此问题。
[0040] 转到图1,通常用附图标记100来表示用于确定使所接收到的视频失真最小化的最佳操作参数的装置。装置100包括信道编码/解码模拟器110、信道失真估计器120、以及编码器速率和失真估计器130。信道编码/解码模拟器110的第一输出与信道失真估计器120的第一输入信号通信地连接,所述输出为P帧P和I帧PI的残留分组丢失率。信道失真估计器120的第一输出(估计的平均信道失真Dc)和编码器速率和失真估计器130的第一输出(估计的编码器失真De)分别与加法器140(或其它混和和/或组合设备)的第一和第二输入信号通信地连接。信道编码/解码模拟器110还包括用于接收信道编码速率r和其它参数的第一输入、以及用于接收未处理的(raw)信道分组丢失率 的第二输入。信道失真估计器120与编码器速率和失真估计器130每个分别包括用于接收编码器参数(QP、β、N、以及切片结构)的第二输入,并且每个还分别包括用于接收原始视频的第三输入。加法器140还包括用于输出下面所述的Dt的第一输出。
[0041] 对于每个可能的信道码率r,使用信道编码/解码模拟器110,可确定残留分组丢失率P(r)。对于每组可能的QP、β、N、以及切片结构,使用编码器速率和失真估计器130,可估计编码器引起的失真De和相应的源速率Re。这将产生所有可行的、满足Re/r≤Rt的r、QP、β、N、以及切片结构的组。对于每组可行的r、QP、β、N、以及切片结构和相应的残留丢失率P,使用新颖的信道失真估计器120,可计算每组N帧的平均的信道引起的失真Dc,从而可计算总失真Dt=De+Dc。通过将获得的Dt与不同可行的参数组相比较,可发 现将在每组帧(GoF)上导致最小Dt的最佳参数。
[0042] 现在将给出关于这里使用的符号和假设的描述。
[0043] 令 表示帧n和像素i中的原始像素值,表示在编码器处重建的信号, 表示在解码器处重建的信号。差值 为信道引起的差错。将帧n的平均信道引起的失真定义为 和 之间的均方差(MSE),即:
[0044] (1)
[0045] 这里,算子E{}代表一帧中的所有像素位置上的平均值。
[0046] 假设一帧中的宏块(MB)被分组为切片,使得单独的切片中的编码的数据之间无依赖,每个切片具有其自身的头部(header),并在单独的分组中被携带。进一步假设分组中的任何比特的丢失将使相应的视频切片不能被解码。还假设利用适当的分组插入(interleaving),分组(因而切片)丢失事件可被描述为丢失率P的i.i.d.随机过程。此外,假设每个切片包括相同数目的宏块,使得宏块丢失率等于切片丢失率。
[0047] 本发明要解决的一个关注点是连续的P帧中的信道失真的级数(progression),可以帧间模式或帧内模式来编码每个宏块。使用帧内模式是由于其需要较少的比特,或出于差错复原的目的。在帧n中以帧内模式被编码的宏块的百分比用βn表示。
[0048] 假设如果在帧n中宏块丢失,将利用平均失真DL,n,使用运动补偿的时间隐藏来隐藏宏块。如果接收了宏块,则依赖其编码模式,由于先前帧或像素中的差错,该宏块仍然具有信道失真,相应的失真分别用DIR,n和DPR,n表示。帧n的平均信道失真为
[0049] Dc,n=(1-P)(βnDIR,n+(1-βn)DPR,n)+PDL,n (2)
[0050] 本发明基于使P帧的Dc,n与Dc,n-1相关的递归方程来估计Dc,n。以下将描述对于使用不同选项的视频编码器和解码器而导出的递归方程,之后是怎样基于导出的递归模型执行估计以及怎样估计模型参数的描述。
[0051] 现在将给出关于应用本发明原理的第一示例情况的描述。第一情况包含利用使用非整数运动矢量的帧间预测和时间隐藏,而不利用帧内预测和去块滤波。
[0052] 在此第一情况中,对于接收到的帧内模式MB(I-MB),将没有信道失真,即,DIR,n=0。对于帧间模式MB(P-MB),即使其被接收,由于先前帧中的差错,其重建可能具有信道失真。为考虑在使用非整数运动矢量进行运动补偿 时通常应用的内插(interpolation)运算,假定由帧n-1中的几个相邻像素的加权和来预测像素 该加权和表示为:
[0053] (3)
[0054] 其中jl(i)指用于预测 的帧n-1的第l个像素的空间指数(spatial index)。注意此方程也适用于在H.263编码解码器中使用的重叠块运动补偿(OBMC)。内插系数al满足 Lp,p和al的值依赖MB的运动矢量(MV)、和用于部分像素(pel)的运动补偿的内插滤波器。例如,利用双线性内插滤波器,如果MV是平和垂直双方向的半像素,则Lp,p=4,al=1/4。另一方面,如果MV在一个方向是半像素、而在另一方向是整数,则Lp,p=
2,al=1/2。此外,如果MV在双方向都是整数,则Lp,p=1,al=1。
[0055] 在接收机中,基于下面的公式预测:
[0056]
[0057] 由于正确地接收了预测差错,信道引起的失真依赖预测的值中的差值。使用上面的关系,可如下计算地导出所有接收到的P-MB的平均信道失真:
[0058]
[0059] 其中
[0060]
[0061] 其中al为用于运动补偿的时间预测的内插滤波器系数,其依赖所使用的实际的运动矢量,ρ为两个相邻像素的信道引起的差错之间的平均相关系数,E{.}代表求均值运算,其对于{.}内的、特定视频类(category)中典型视频序列的以及在考虑之中的丢失样式的范围的所有像素和所有P帧的值求平均值。
[0062] 得到上述结果时,假设每两个邻近的像素中的差错之间的相关系数相等(用ρ.ρ代表),其可被视作平均相关系数。参数a是在所有P帧中的所有P-MB上使用的因子 的平均值。
[0063] 如果MB丢失,无论其编码模式如何,将利用估计的MV,使用时间隐藏来隐藏MB。通常,估计的MV也可以是非整数矢量,隐藏的值可被如下表示:
[0064]
[0065] 其中一般Lc,p和kl(i)与Lp,p和jl(i)不同。系数hl满足 平均信道失真为:
[0066]
[0067] 其中
[0068]
[0069]
[0070] 项DECP,n代表在没有来自先前帧的差错传播的情况下、与特定时间隐藏算法相关联的平均失真。在得到上述结果时,假设帧n处的隐藏差错与帧n-1中的信道引起的差错不相关。如前,也假设帧n-1中邻近像素中的信道引起的差错具有相同的成对(pair wise)相关系数ρ。
[0071] 将公式(5)、(8)和DIR,n=0代入公式(2),产生下面的公式:
[0072] Dc,n=PDECP,n+(a(1-P)(1-βn)+Ph)Dc,n-1(11)
[0073] 通常,ρ<1从而a<1且h<1。因此,对部分像素运动补偿预测和隐藏进行的空间滤波具有削弱时间差错传播的作用。
[0074] 与传统递归公式相关的失真模型具有与这里的公式(11)相同的形式,但h=1,这是因为该模型假定隐藏的帧复制。允许h变化的意义和新颖性将在下面描述。同样,相对于传统的帧级别的递归方程,用常数b代替a,该常数具有相对于本发明定义的物理意义不同的物理意义。关于传统的帧级别的递归方程,假定运动补偿的时间预测使用先前帧中的单个像素,使得指数 Lp,p=1,且jl(i)可以指向非整数像素。假设 其中b用于表示所谓的运动随机性。根据本发明的原理,
各项具有严格的、新颖的、以及有意义的区别,并明确地与用于使用非整数运动矢量的运动补偿的内插系数相关,所述运动补偿在现有技术、特别是与传统帧级别的递归方程相关的现有技术中没有被考虑和提出。另外,相对于传统帧级别的递归方程提出的模型也假定隐藏失真与帧差值的平方成比例, 此假设只对于从先前帧复制的差
错隐藏方法有效。应注意:可通过在所选择的样本MB上运行与解码器相同的差错隐藏方法,而在编码器处测量DECP,n。
[0075] 现在将给出关于应用本发明的原理的第二示例情况的描述。第二情况包含使用帧内预测。
[0076] 利用帧内预测,与接收到的P-MB和使用时间隐藏而隐藏的MB相关联的失真与上述第一情况保持相同。然而,对于接收到的I-MB,失真不再为0,这是因为可从以帧间模式编码的邻近像素预测(直接地或间接地)I-MB。为了分析此第二情况,假设通过帧n中的几个先前编码的邻近像素的加权和来预测像素 其表示为:
[0077]
[0078] 其中ml(i)指用于预测 的帧n中第l个先前编码的像素的空间指数。例如,在H.264标准中,有许多不同的帧内预测模式,其中每个导致Lp,l、ml(i)以及cl的不同组的值。在每种情况中,系数cl满足 利用H.264标准中受限制的帧内预测选项,只允许以帧内模式先前被编码的像素用于帧内预测。
[0079] 如果接收了I-MB,则解码器处的帧内预测的值为:
[0080]
[0081] 其中一般 注意:也接收用于帧内预测的所有邻近像素。用DR,n表示接收到的MB(帧间或帧内模式)的平均失真,则下面的公式适用:
[0082]
[0083] 或
[0084]
[0085] 其中
[0086]
[0087]
[0088]
[0089] 将公式(15)、(5)、以及(8)代入公式(2),得到如下的、用于第二情况的递归模型:
[0090] Dc,n=PDECP,n+((1-P)(a(1-βn)+cβn)+Ph)Dc,n-1(19)
[0091] 与公式(11)相比较,可以看到:利用帧内预测,接收到的I-MB不再停止差错传播。与I-MB相关联的差错传播因子是c,依赖cP对cl的相对幅度,c可大于或小于a。因而,帧内预测降低了帧内模式停止差错传播的有效性。
[0092] 下面的分析假设无限制的帧内预测。利用H.264中受限制的帧内预测,相同切片中只有帧内编码的邻近像素可被用于帧内预测。因此,cP=0,从而c=0。总失真与公式(11)描述的第一情况保持相同。
[0093] 现在将给出关于应用本发明原理的第三示例情况的描述。第三情况包含使用去块滤波和帧内预测。
[0094] 数学上可如下描述去块运算从而修改像素 的编码值:
[0095]
[0096] 其中 代表滤波前像素 的重建值,而 代表滤波后的重建值。指数ql(i)代表用于对像素i进行滤波的第l个邻近像素。典型地,滤波长度Ld和滤波器系数wl依赖位置和内容,其中系数满足
[0097] 在编码器中,如果接收了MB,则在MB被解码后,将对重建值 应用相同的滤波,其中滤波后的值如下:
[0098]
[0099] 对于接收到的P-MB,失真是由于在去块滤波后预测的值之间的差值产生的,即 [0100]
[0101] 其中
[0102] a'=wa (23)
[0103] 对于接收到的I-MB,遵循相同的理由,
[0104]
[0105] 其中
[0106] c'=wc (25) [0107] 对于丢失的MB,如果在隐藏之后不应用去块,则其失真保持为公式(8)中的情况,从而平均失真为
[0108] Dc,n=PDECP,n+((1-P)(α'(1-βn)+c'βn)+hP)Dc,n-1(26)
[0109] 其中
[0110] a'=wa,c'=wc (27) [0111] 如果在隐藏之后应用去块,则DL,n=DECP,n+whDc,n-1,从而Dc,n=PDECP,n+((1-P)(a'(1-βn)+c'βn)+h'P)Dc,n-1 (28)
[0112] 其中
[0113] h'=wh (29) [0114] 递归公式(26)和(28)具有与第二情况、公式(19)相同的形式。因此,可使用公式(19)描述所有这些情况,但其中常数a、c、和h具有稍微不同的物理意义。
[0115] 现在将给出关于根据本发明的原理的简化模型的描述。
[0116] 公式(11)和(19)中的递归模型假设可测量每帧的βn和DECP,n。在简化版本中,只需要帧DECP上的平均隐藏失真和平均帧内率β,公式(11)和(19)分别变为:
[0117] 第一情况:Dc,n=PDECP+(a(1-P)(1-β)+Ph)Dc,n-1 (30) [0118] 第二和第三情况:Dc,n=PDECP+((1-P)(a(1-β)+cβ)+hP)Dc,n-1 (31) [0119] 现在将给出关于基于这里提供的递归公式的失真计算的描述。
[0120] 转到图2,通常用附图标记200来表示用于计算信道引起的失真的装置。 [0121] 装置200包括帧内率估计器210、隐藏失真估计器220、以及信道失真计算器230。隐藏失真估计器220的第一和第二输出分别与信道失真计算器230的第一和第二输入信号通信地连接。帧内率估计器210的第一输出与信道失真计算器230的第三输入信号通信地连接。帧内率估计器210、隐藏失真估计器220、以及信道失真计算器230分别包括用于接收编码器参数(QP、β、N、和切片结构)的第一输入、第三输入、以及第三输入。隐藏失真估计器220还包括用于接收原始视频序列的第四输入和用于接收分组丢失样式的第五输入。
信道失真计算器230还包括用于接收模型参数(a、c、h)的第四输入和用于接收分组丢失率(P,pl)的第五输入。信道失真计算器230还包括用于分别输出Dc,n和Dc的第一和第二输出。
[0122] 假定给出模型参数,装置200可被用于使用这里提供的递归公式来计算失真Dc,n。现在将描述上面的第一情况的方法。这里假设视频编码器使用运动补偿的时间预测和隐藏、以及可能受限制的帧内预测。然而,该视频编码器不使用无限制的帧内预测和环内(in-loop)去块滤波。图2假设将视频分为多组帧(GOF),每个GoF被独立编码,并且第一帧被编码为I帧,而随后的N-1帧被编码为P帧,其中N是选定的数目。
[0123] 给出关于给定视频序列的每个GoF的QP、目标帧内率β、以及切片结构的编码参数,在没有差错传播的情况下,隐藏失真估计器220确定期望的隐藏失真DECP,n。此处理将完成如下:使用特定的编码参数运行视频编码器,以生成没有发送差错的解码序列。接着对于帧n,根据特定的可能丢失样式(突发的及随机分布的)将一个切片随机地设置为丢失,并对此切片中的所有MB应用选定的差错隐藏算法,并假定所有其它的切片都被正确地接收。对于此切片中的MB确定平均信道失真。对于此帧中的其它随机选定的切片重复此 确定。
在极端情况下,可对帧中的所有切片重复此处理。对所得的失真求平均值将产生DECP,n。注意:在最常见的情况下,帧中的所有MB都包含在一个切片中,隐藏试验每帧只能运行一次,其可作为视频编码器的部分而进行。使用相似的例程,隐藏失真估计器220也估计I帧中MB的平均隐藏失真,该失真用DECI表示。在此情况下,只将空间差错隐藏用于丢失的切片。 [0124] 帧内率估计器220简单地记录每帧的实际帧内率βn并计算给定的目标帧内率β的平均帧内率β。
[0125] 利用测量的DECI、DECP,n、以及βn、给定的模型参数a和h、以及给定的I帧和P帧的预期分组丢失率pl和P,信道失真计算器230通过以n=1开始、并通过假定I帧的Dc,0=PIDECI而递归地应用公式(11)来确定每帧的信道失真Dc,n。一旦确定了所有帧的失真,信道失真计算器230还能使用以下公式确定此GoF上的平均信道失真:
[0126]
[0127] 如果编码器使用利用或不利用去块滤波的无限制的帧内预测,则信道失真计算器230将需要模型参数a、c和h,并使用公式(19)来递归地计算Dc,n。
[0128] 图2假设在每N帧后调用周期性的I帧。在视频电话和电话会议应用中,不使用周期性的I帧以满足低延迟的限制。在该情况下,只有视频的第一帧被编码为I帧,而剩下的所有帧被编码为P帧,并且每个P帧中有加强的(enforced)帧内MB。在此情况下,可假设:第一个I帧将通过传输级上的保护而被无差错地传递。然后,此帧的失真为0,即,Dc,0=0。可依赖编码器和解码器结构而使用递归模型(11)或(19)估计所有随后的帧的失真。 [0129] 在简化版本中,隐藏失真估计器220将不估计DECP,n而估计每个GoF上的DECP。这将通过随机性地将GoF中的一些切片设置为丢失,在这些切片上执行差错隐藏,计算这些切片的隐藏失真,并对失真求平均值来完成。可替代地,可基于从原始或编码的序列计算的一些统计量来估计每个GoF的平均DECP。类似地,帧内率估计器210可以通过在整个GoF上运行视频编码器而不确定每帧的实际帧内率βn。帧内率估计器210可替代地为基于从原始序列计算的一些统计量来确定给定目标帧内率β的平均帧内率β。给出DECP和β,信道失真计算器230将使用简化模型(30)或(31)以及(32)来确定Dc,n和Dc。
[0130] 现在将给出关于模型参数的估计的描述。
[0131] 对于上述不同情况导出的模型具有必须要估计的参数。首先,将描述估计第一情况的参数a和h的方法。
[0132] 转到图3,通常用附图标记300来表示用于信道失真模型参数估计的装置。装置300包括视频编码器310、信道模拟器330、视频解码器350、视频解码器320、信道失真数据收集器340、隐藏失真估计器360、以及模型参数计算器370。视频编码器310和隐藏失真估计器360每个包括用于接收训练视频序列的第一输入。视频编码器310还包括与信道模拟器330的第一输入信号通信地连接的第一输出、以及与视频解码器320的第一输入信号通信地连接的第二输出。信道模拟器330还包括与视频解码器350的第一输入信号通信地连接的第一输出。视频解码器350还包括与信道失真数据收集器340的第一输入信号通信地连接的第一输出。信道失真数据收集器340还包括与视频解码器320的第一输出信号通信地连接的第二输入、以及与模型参数计算器370的第一输入信号通信地连接的第一输出。
模型参数计算器370还包括与视频编码器310的第三输出信号通信地连接的第二输入、以及与隐藏失真估计器360的第一输出信号通信地连接的第三输入、以及可作为装置300的输出的第一输出。
[0133] 首先,收集训练视频序列。这里,假设将选择不同的训练组,每个用于在运动可预测性方面具有比较相似的特性的特定种类的视频。将为不同的训练组导出不同的参数。对于从给定训练组选择的视频、给定目标帧内率β'、给定GoF长度N、给定QP、以及给定切片结构,视频编码器310将生成连续GoF的比特流。对于每个P帧,视频编码器310将随机地选择β'百分比的MB,并将它们以帧内模式编码。对于剩下的MB,可依赖帧间模式或帧内模式的哪个模式给出较低率来使用帧间模式或帧内模式。每个编码的视频帧的实际帧内率βn将被记录,并且βn≥β'。
[0134] 将使用固定的分组化(packetization)方法将编码的比特流转换为连续的分组。在一个可能的实现中,每个分组包括来自一个切片的数据。假设分组化器(packetizer)是视频编码器310的一部分。视频解码器320将首先将原始分组流转换为解分组化的(depacketized)比特流,从解分组化的比特流生成不具有信道差错的解码的帧 假设解分组化器是视频解码器的一部分。
[0135] 对于给定的分组丢失率P,信道模拟器320将破坏分组化的流,使得将 随机地丢掉平均P百分比的分组。视频解码器350将对被破坏的分组流解分组化,并通过使用实施利用或不利用运动补偿的时间差错隐藏的选定的差错隐藏方法,从被破坏的比特流生成解码的视频帧 通过比较来自视频解码器320和视频解码器350的解码的帧,信道失真数据收集器340使用公式(1)计算每个特定的信道模拟的每个帧中的平均信道失真。通过运行信道模拟器330和解码器350许多次,并对相同的帧n的测量的信道失真求平均值,信道失真数据收集器340确定Dc,n,n=1,2,...,N-1。
[0136] 对于给定的序列和编码参数,隐藏失真估计器360计算隐藏失真DECI和DECP,n。进一步描述上文中的隐藏失真估计器360的运算。
[0137] 利用收集的Dc,n、DECI、DECP,n和βn的数据,模型参数计算器370使用最小二乘拟合(least square fitting)方法来获得参数a和h以符合递归公式(11)。具体地,
[0138]
[0139] 或者T -1 T
[0140] x=(AA) Ay (34)
[0141] 其中
[0142] ( 3 5 )
[0143] 对于上述第二情况和第三情况,模型参数计算器370确定a、c和h以符合递归公式(19)。具体地,
[0144]
[0145] 或者
[0146] x=(ATA)-1ATy (37) [0147] 其中
[0148] (38)
[0149] 注意:利用由公式(30)和(31)表示的简化模型,项DECP,n和βn将分别被DECP和β替代。
[0150] 上述方法导出用于给定视频中的给定GoF的、对于给定丢失率和从编码的数据确定的平均帧内率(稍微高于预设目标帧内率)的参数。
[0151] 为了获得较大范围的P和β的参数,可首先使用上述例程获得几对P和β的参数组。根据所得的参数,可执行内插以获得P和β的其它值的参数。可替代地,也可使用从不同的P和β导出的参数的平均值。可替代地,可合并矢量y和A中不同的P和β的训练数据,以确定参数。
[0152] 前面的方法生成对于特定的P和β对或特定范围的P和β的给定视频序列的模型参数。为了获得具有相似运动特性的某个视频类的参数,可对于给定视频类中的几个选定的视频序列重复前述的数据收集处理,并通过在y和A中包括不同序列和不同对的P和β的测量数据,来使用公式(36)或(38)确定参数。
[0153] 转到图4,通常用附图标记400来表示用于基于每帧的帧内率和隐藏失真来估计信道失真的方法。
[0154] 输入块405接收输入视频序列、视频序列中每个GOP中第一个I帧的分组丢失率(PI)、视频序列中每个GOP中P帧的分组丢失率(P)、模型参数a、c、和h,从视频序列获取下一个N个帧的GOP,并将控制传到功能块410。功能块410设置n=0,并将控制传到功能块415。功能块415估计帧0的隐藏失真,并将控制传到功能块420。功能块420使用Dc,0=PDECI确定帧0的信道失真,并将控制传到功能块425。功能块425将n加1(n=n+1),并将控制传到功能块430。功能块430设置Dc,n-1=Dc,n,并将控制传到功能块435。功能块435估计帧n的帧内率和隐藏失真,并将控制传到功能块440。功能块440使用公式11或
19确定帧n的信道失真。如果其中使用方法400的编码器不使用帧内预测,或只使用受限制的帧内预测,则使用公式11。如果其中使用方法400的编码器使用无限制的帧内预测,则使用公式19。功能块440接着将控制传到判定块445。判定块445确定是否n≥N-1,如果n
[0155] 转到图5,通常用附图标记500来表示用于基于视频序列中每个画面组中的平均帧内率和隐藏失真来估计信道失真的方法。
[0156] 输入块505接收输入视频序列、视频序列中每个GOP中第一个I帧的分组丢失率(PI)、视频序列中每个GOP中P帧的分组丢失率(P)、模型参数a、c、和h,从视频序列获取下一个N个帧的GOP,并将控制传到功能块510。功能块510估计帧0的隐藏失真,并将控制传到功能块515。功能块515估计GOP中所有P帧的平均帧内率和隐藏失真,并将控制传到功能块520。功能块520设置n=0,并将控制传到功能块525。功能块525使用Dc,0=PIDECI确定帧0的信道失真,并将控制传到功能块530。功能块530将n加1(n=n+1),并将控制传到功能块535。功能块535设置Dc,n-1=Dc,n,并将控制传到功能块540。功能块540使用公式30或公式31确定帧n的信道失真。如果其中使用方法500的编码器不使用帧内预测,或只使用受限制的帧内预测,则使用公式30。如果其中使用方法500的编码器使用无限制的帧内预测,则使用公式31。功能块540接着将控制传到功能块547和判定块
545。功能块547输出每帧的估计的信道失真Dc,n。
[0157] 判定块545确定是否n≥N-1,如果n
[0158] 转到图6,通常用附图标记600来表示用于基于视频序列的I帧的预估计的隐藏失真和P帧的平均帧内率和隐藏失真来估计信道失真的方法。
[0159] 输入块605接收输入视频序列、视频序列中每个GOP中第一个I帧的分组丢失率(PI)、视频序列中每个GOP中P帧的分组丢失率(P)、模型参数a、c、和h,从视频序列获取下一个N个帧的GOP,并将控制传到功能块610。功能块610设置n=0,并将控制传到功能块615。功能块615使用Dc,0=pIDECI来确定帧0的信道失真,并将控制传到功能块620。功能块620将n加1(n=n+1),并将控制传到功能块625。功能块625设置Dc,n-1=Dc,n,并将控制传到功能块630。功能块630使用公式30或公式31确定帧n的信道失真。如果其中使用方法600的编码器不使用帧内预测,或只使用受限制的帧内预测,则使用公式30。如果其中使用方法600的编码器使用无限制的帧内预测,则使用公式31。功能块630接着将控制传到判定块635。判定块635确定是 否n≥N-1,如果n否则,如果n≥N-1,则将控制传给功能块640。功能块640使用公式32确定所有帧的平均信道失真,并将控制传到输出块655,并且也返回功能块605以获取下一个N个帧的GOP。输出块655输出该GOP的估计的平均信道失真Dc。
[0160] 本发明的这些或其它特性和优点可被本技术领域普通技术人员基于这里的教学容易地确定。应理解:本发明的教学可由各种形式的硬件、软件、固件、专用处理器或其组合来实施。
[0161] 最优选地,将本发明的教学实施为硬件和软件的组合。此外,所述软件优选地实施为确实包含在程序存储单元上的应用程序。所述应用程序可被上载到包括任何合适结构的机器,并由其执行。优选地,所述机器在具有诸如一个或多个中央处理单元(“CPU”)、随机存取存储器(“RAM”)、以及输入/输出(“I/O”)接口的硬件的计算机平台上被实施。所述计算机平台也可包括操作系统和微指令代码。这里所述的各种处理和功能可以是可由CPU执行的微指令代码的部分、或应用程序的部分、或其任何组合。另外,诸如附加数据存储单元和打印单元的各种其它的外部单元可与计算机平台相连接。
[0162] 还应理解:由于在附图中描述的一些组成系统组件和方法优选地以软件实现,所以依赖本发明被编程的方式,系统组件或进程功能块之间的实际连接可能不同。给出这里的教学,本领域普通技术人员将能够预期本发明的这些和相似的实施或配置。
[0163] 虽然这里参考附图描述了示例实施例,但是应理解本发明不限于那些确切的实施例,在不偏离本发明的范围或精神的情况下,本领域普通技术人员可在其中做出各种改变和修改。意在将所有这样的改变和修改包括在如由所附权利要求书中提出的本发明的范围内。
高效检索全球专利

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

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

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈