编码器冗余选择系统和方法

申请号 CN02817869.6 申请日 2002-08-21 公开(公告)号 CN100424997C 公开(公告)日 2008-10-08
申请人 皇家飞利浦电子股份有限公司; 发明人 S·克里斯纳马查里;
摘要 一种基于使用预测的错误隐藏策略以便隐藏错误的预计成本来选择 编码器 冗余机制的系统和方法。本 发明 提供一种用于对数据集进行编码的系统,该系统包括:在当由译码器接收到数据集时该数据集包含错误的情况下,预测该译码器将使用的错误隐藏策略的系统(18);预计使用该错误隐藏策略来隐藏错误的成本的分析系统(20);以及基于使用错误隐藏策略以便隐藏错误的预计成本从而来选择用于对数据集进行编码的冗余机制的系统(24)。本发明还提供了一种用于对数据包进行译码的译码器系统,该系统包括:用于隐藏接收到的有错数据包中的错误的至少一种错误隐藏策略;以及提供关于由译码器系统使用以隐藏错误的错误隐藏策略的反馈信息的反馈系统。
权利要求

1. 一种用于对数据集(28)进行编码的系统(12),包括:
一个错误隐藏预测系统(18),当该数据集被译码器(14)接收 到时如果该数据集包含错误,则该错误隐藏预测系统预测该译码器 (14)将使用的错误隐藏策略;
一个隐藏成本分析系统(20),它预计使用错误隐藏策略来隐藏 错误的成本;以及
一个冗余选择系统(24),它基于使用错误隐藏策略来隐藏错误 的预计成本从而来选择用于对数据集(28)进行编码的冗余机制(21);
其中该预计的成本是在隐藏之后的剩余错误以及如该译码器 (14)所要求的用以实现该预测的错误隐藏策略的估计的计算资源的 量度。
2. 如权利要求1所述的系统(12),还包括:
数据分析系统(16),它描述正被编码器(12)编码的该数据集 (28)的特征;以及
其中还基于该数据集的特征来选择该冗余机制(21)。
3. 如权利要求1所述的系统(12),
其中还基于从该译码器(14)中的一个反馈系统(38)接收到的 传输信道条件(44)来选择该冗余机制(21)。
4. 如权利要求1所述的系统(12),其中使用来自接收器的反馈 预测该错误隐藏策略。
5. 如权利要求1所述的系统(12),其中在没有来自接收器的反 馈的情况下预测错误隐藏策略。
6. 如权利要求1所述的系统(12),其中由所选择的冗余机制(21) 提供的冗余量与预计成本成比例。
7. 如权利要求1所述的系统(12),其中冗余机制(21)包括前 向纠错机制。
8. 如权利要求1所述的系统(12),其中冗余机制(21)包括重 传机制。
9. 如权利要求1所述的系统(12),其中错误隐藏策略包括复制 算法
10. 如权利要求1所述的系统(12),其中错误隐藏策略包括取平 均值算法。
11. 如权利要求1所述的系统(12),其中数据集(28)包括视频 数据。
12. 一种用于对数据包(30)进行译码的译码器系统(14),包括:
一个错误隐藏系统(34),该错误隐藏系统(34)具有至少一个 错误隐藏策略(36),用于隐藏在接收到的数据包中的引入的错误; 以及反馈系统(38),它提供关于译码器系统用来隐藏错误的错误隐 藏策略的反馈信息,并且把该反馈信息返回给编码器以供隐藏分析系 统使用。
13. 如权利要求12所述的译码器系统(14),其中反馈信息还包 括实现隐藏策略的成本。
14. 如权利要求12所述的译码器系统(14),其中反馈系统(38) 还提供关于用于接收数据包的传输信道的反馈。
15. 一种对数据集(28)进行编码的方法,包括以下步骤:
当该数据集(30)被译码器(14)接收到时如果该数据集包含错 误,则预测该译码器将使用的错误隐藏策略;
预计使用该错误隐藏策略来隐藏错误的成本;以及
基于使用错误隐藏策略来隐藏错误的预计的成本从而来选择用于 对数据集进行编码的冗余机制(21)。
16. 如权利要求15所述的方法,其中预测错误隐藏策略的步骤包 括从译码器接收反馈的步骤,其中该反馈包括关于译码器(14)先前 处理错误的信息。
17. 如权利要求16所述的方法,其中预计隐藏误差的成本的步骤 包括检查来自译码器(14)的反馈的步骤。

说明书全文

技术领域

发明一般而言涉及编码器冗余系统,更具体而言,涉及基于实 现预测的译码器错误隐藏算法的预计成本来选择编码器冗余机制的系 统和系统。

背景技术

冗余策略用于纠正引入电子数据和信息中的错误。可以被保护的 数据类型包括,例如,简单的数据文件、多媒体数据(例如,视频和 音频)或者网页。错误主要发生在传输期间,并且也可以由其他活动 例如向存储器写入数据或是从存储器读出数据引起。错误保护机制通 过向数据增加冗余来起作用,它可以由译码器或者接收器使用,以便 检测和纠正错误。然而,由于在任何通信系统中,带宽通常都是非常 宝贵的,而冗余机制会消耗带宽,所以必须最优化地实现冗余。
当将例如压缩视频的数据包在易于出错的网络(例如,互联网或 无线网络)上传输时,可以由编码器增加冗余来抵消传输错误。已知 的冗余策略包括前向纠错编码机制、重传机制和/或使用错误恢复编码 机制。当前,经常基于以下内容决定冗余:(1)正被编码的数据的特 性;以及(2)传输信道条件。在数据特性方面,冗余量可以与正被编 码的数据的特定部分的相对重要性成比例。例如,在例如MPEG-2的 压缩视频系统中,I被认为比P帧和B帧更重要,并且认为基层比增 强层更重要。因此,I帧或者基层通常接收更多的冗余。
当发生传输错误(即,数据丢失或损坏)时,译码器可以执行错 误隐藏来隐藏这些错误。已知的错误隐藏技术包括复制算法(例如, 用邻近帧中的相似代替帧中的损坏块)、取平均值(例如,用相似 的邻近帧中的多个块的平均值代替视频帧中损坏的视频块)、空间内 插等。实现错误隐藏策略的预计成本可以是例如隐藏之后的剩余错 误、估计的计算资源等的量度。然而,实现错误隐藏的预计成本可以 根据译码器的情况而变化。例如,在慢速移动的视频序列中,视频数 据从帧到帧改变得不多,因此可以容易地用简单的隐藏技术来隐藏传 输错误。相反地,在快速移动的序列中,译码器可以要求更复杂的隐 藏技术,并因此消耗相当大的计算费用以用于隐藏错误。在这种情况 下,对于快速移动的序列来说,在发生错误的情况下具有更多的冗余 将是有利的。
不幸的是直到目前为止,现有系统在确定由编码器实现的冗余机 制时,都未能考虑在译码器处实现错误隐藏的预计成本。因此,存在 这样一种需要,即:当系统确定编码器冗余机制时,要利用实现错误 隐藏的预计成本。

发明内容

本发明通过提供一种系统和方法来解决上述以及其他的问题,该 系统和方法基于使用预测的错误隐藏策略以便隐藏错误的预计成本来 选择编码器冗余机制。在第一个方面,本发明提供用于对数据集进行 编码的系统,包括:如果当数据集被接收器接收到时该数据集包含错 误就预测该接收器将使用的错误隐藏策略的系统;预计使用错误隐藏 策略来隐藏错误的成本的分析系统;以及基于使用错误隐藏策略以便 隐藏错误的预计成本从而来选择用于对数据集进行编码的冗余机制的 系统。
在第二个方面,本发明提供存储在可记录的介质上的程序产品, 当执行该程序产品时,对数据集进行编码,该程序产品包括:一个程 序代码,它被配置成当数据集被接收器接收到时如果该数据集包含错 误,则预测该接收器将使用的错误隐藏策略;一个程序代码,它被配 置成预计使用错误隐藏策略来隐藏错误的成本;以及一个程序代码, 它被配置成基于使用错误隐藏策略以便隐藏错误的预计成本从而来选 择用于对数据集进行编码的冗余机制。
在第三个方面,本发明提供用于对数据包进行译码的译码器系 统,包括:至少一个错误隐藏策略,用于隐藏在接收到的数据包中的 引入的错误;以及反馈系统,它提供关于被译码器系统用来隐藏错误 的错误隐藏策略的反馈信息。
在第四个方面,本发明提供一种对数据集进行编码的方法,包括 以下步骤:当数据集被译码器接收到时如果该数据集包含错误,则预 测该译码器将使用的错误隐藏策略;预计使用错误隐藏策略来隐藏错 误的成本;以及基于使用错误隐藏策略以便隐藏错误的预计成本从而 来选择用于对数据集进行编码的冗余机制。
本发明的技术方案包括:
(一)一种用于对数据集进行编码的系统,包括:
一个错误隐藏预测系统,当该数据集被译码器接收到时如果该数 据集包含错误,则该错误隐藏预测系统预测该译码器将使用的错误隐 藏策略;
一个隐藏成本分析系统,它预计使用错误隐藏策略来隐藏错误的 成本;以及
一个冗余选择系统,它基于使用错误隐藏策略来隐藏错误的预计 成本从而来选择用于对数据集进行编码的冗余机制;
其中该预计的成本是在隐藏之后的剩余错误以及如该译码器所要 求的用以实现该预测的错误隐藏策略的估计的计算资源的量度。
(二)一种用于对数据包进行译码的译码器系统,包括:
一个错误隐藏系统,该错误隐藏系统具有至少一个错误隐藏策 略,用于隐藏在接收到的数据包中的引入的错误;以及
反馈系统,它提供关于译码器系统用来隐藏错误的错误隐藏策略 的反馈信息,并且把该反馈信息返回给编码器以供隐藏分析系统使 用。
(三)一种对数据集进行编码的方法,包括以下步骤:
当该数据集被译码器接收到时如果该数据集包含错误,则预测该 译码器将使用的错误隐藏策略;
预计使用该错误隐藏策略来隐藏错误的成本;以及
基于使用错误隐藏策略来隐藏错误的预计的成本从而来选择用于 对数据集进行编码的冗余机制。
附图说明
在下文中将结合附图描述本发明的优选的示例性实施例,其中相 同的标记表示相同的元件,以及:
图1描述了一个编码/译码系统的框图,该编码/译码系统包括依照 本发明的优选实施例的冗余选择系统。

具体实施方式

现在参看图1,示出的错误保护系统10包括:(1)用于接收数据 28并生成编码数据30的编码器12;(2)用于传输编码数据30的传输 信道50;以及(3)用于接收编码数据30并生成译码数据32的译码器 14。正如将在下文中所详细描述的,编码器12包括在传输之前向数据 28增加错误保护(即,冗余)的能,而译码器14包括在接收到数据 之后隐藏错误的能力。虽然在优选的实施例中,数据28包括视频数据, 但是可以理解的是:数据28可以包括能够从编码器12传输到译码器 14的任何类型的数据。
编码器12可以包括处理数据28以用于在传输信道50上传输的任 何类型的系统,包括利用MPEG-2、MPEG-4等技术的数据压缩系统。 相反地,编码器12可以包括仅用冗余信息打包数据28的发送器。传 输信道50可以包括任何类型的传输信道,例如,因特网、无线系统、 LAN、以太网电缆等。与编码器12类似,译码器14可以包括用于处 理编码数据30的任何类型的系统,包括对压缩数据进行译码的任何类 型的系统。此外,译码器14可以仅包括能够接收编码数据30的接收 器。
编码器12包括向数据28增加冗余的冗余选择系统24,在当将编 码数据30在传输信道50上传输时发生错误的情况下,译码器14可以 使用该冗余选择系统。冗余选择系统24可以包括任何类型的已知冗余 算法26,例如前向纠错机制、重传机制、错误恢复编码机制等。冗余 选择系统24确定(或者选择)用于每个输入的数据集的冗余机制(例 如,多少冗余和/或什么类型的冗余)。所选择的冗余机制是基于一个 或多个输入而确定的。这些输入可以包括来自数据分析系统16的信 息、关于传输信道条件44的信息和由隐藏分析系统19确定的信息。
数据分析系统16提供关于正被编码的数据28的特性的信息。例 如,在视频编码中,认为I帧比P帧或B帧更重要,并且认为基层比 增强层更重要。因此,I帧和基层数据可以用更多的冗余进行编码,以 便防止在传输期间可能发生的潜在的丢失。这样,可以识别出更重要 的数据,并且更容易恢复这些数据。可以理解的是:可以以任何已知 的方式描述数据28的特性。
信道条件44提供关于传输信道50的质量例如误码率的信息。信 道条件44可以从存在于译码器系统14中的反馈系统38获得,根据预 测的特性,或是从任何其他已知的方法确定。
隐藏分析系统19提供关于预测的译码器14将使用的错误隐藏策 略的类型和成本的信息。由隐藏分析系统19提供的信息可以从译码器 14的反馈系统38明确地得到,或是在没有来自译码器14的反馈的情 况下隐含地得到。由隐藏分析系统19提供的输入使得冗余选择系统24 能够更加最优地决定编码器将需要使用的冗余量。例如,假设两个数 据片(例如,宏块)的相对重要性(即特性)是相等的,但是根据预 测的由译码器实现的错误隐藏策略,第一数据片将比第二数据片容易 恢复。隐藏分析系统19将向冗余选择系统24报告该信息,使得可以 用相对较小的冗余量来保护该第一数据片。因为冗余选择系统24知道 在发生传输错误的情况下,译码器14将能够更有效地恢复第一数据 片,所以可以利用较小的冗余量,以便节省带宽。类似地,比较难恢 复的第二数据片可以用相对较大的冗余量进行保护。
隐藏分析系统19包括错误隐藏预测系统18和隐藏成本分析系统 20。错误隐藏预测系统18确定在传输期间发生错误的情况下译码器14 将使用的错误隐藏策略的类型。预测将被使用的错误隐藏策略36的类 型的一个方法是利用从译码器14反馈的隐藏信息46。在这种情况下, 隐藏信息46可以包括一个反馈信号,该信号在开始传输编码数据30 之前和/或在传输编码数据30期间,告知编码器将被实现的错误隐藏 策略36是什么类型。可替换地,在没有反馈的隐含情况下,错误隐藏 预测系统18可以是具有预期策略的硬编码,或是例如根据输入数据28 或一些其他的标准用预测例程进行编程,用以预测可能的错误隐藏策 略。
一旦确定了预测的隐藏策略,隐藏成本分析系统20能够确定实现 该隐藏策略的预计成本。预计成本可以是例如在隐藏之后的剩余错误 的量度,以及由译码器14所要求的、用以实现预测的错误隐藏策略36 的估计的计算资源的量度。用以隐藏错误的预计成本可以基于:(1) 预测的隐藏策略,(2)实际的输入数据28,和/或(3)一些其他标准。 隐藏成本分析系统20可以以例如容易、中等或困难的方式向冗余选择 系统24报告数据28的预计隐藏成本。
在一个可替换的实施例中,隐藏成本还可以直接从译码器14反馈 的隐藏信息46确定。在这种情况下,隐藏成本分析系统20只是收集 信息,如果必要的话再加上格式化,并将信息传到冗余选择系统24。
一旦冗余选择系统24已经得到上述输入,就可以实现冗余机制21 以用于对数据28进行编码,然后,编码器12可以在传输信道50上输 出/传输编码数据30。然后,编码数据30可以由译码器14输入/接收, 在译码器14处该编码数据30将会被检查错误并被译码。
译码器系统14包括错误隐藏系统34,并且还可以包括反馈系统 38(用于编码器12使用明确的隐藏信息的情况)。错误隐藏系统34 包括一个或多个隐藏策略36,用于隐藏可能已经被引入编码数据30 的错误。可以利用任何已知的策略36,包括从邻近视频帧复制数据、 取平均值、空间内插等。注意,根据实现的策略36和正被处理的数据 类型,实现错误隐藏的成本可以变化(即,隐藏可能相对容易或者相 对困难)。
反馈系统38收集并将这样的隐藏信息46返回报告给编码器以供 隐藏分析系统19使用。由隐藏信息收集系统40收集关于隐藏错误的 成本和/或用于隐藏错误的特定策略的信息。这样的信息可以包括原始 或统计信息(例如,数据类别、所使用的隐藏策略的类型、在隐藏之 后的剩余错误、计算需要),这些信息在每次编码数据30要求纠错或 者隐藏时都被保存。反馈系统38还可以包括信道条件分析系统42,用 于反馈信道条件44,该信道条件44以上述方式被使用。
可以理解的是:这里所述的系统、功能、方法和模块可以以硬件软件或是硬件和软件结合的方式实现。它们可以通过适用于实现这里 所述的方法的任何类型的计算机系统或者其他设备来实现。典型的硬 件和软件的结合可能是具有计算机程序的通用计算机,当加载和执行 该计算机程序时可以控制该计算机系统,使得它实现这里所述的方 法。可替换地,可以利用包含有用于实现本发明的一个或多个功能任 务的专用硬件的专用计算机。本发明还可以嵌入到计算机程序产品 中,该程序产品包括使得这里所述的方法和功能能够实现的所有特 征,并且当在计算机系统中加载该程序产品时,它能够实现这些方法 和功能。计算机程序、软件程序、程序、程序产品或软件在本上下文 中是指指令集以任何语言、代码或符号表示的任何表达式,该指令集 是用来使得具有信息处理能力的系统直接地或是在下述内容中的单独 一个或者两个都完成之后执行特定功能:(a)转换到另一种语言、代 码或符号;和/或(b)以不同的物质形式再现。
已经给出的上述关于本发明的优选实施例的描述是用于说明和描 述的目的。它们并不是穷尽的,或是用来将本发明限制在所公开的明 确形式上,并且很明显地,按照上述教导很多修改和变化都是可能的。 这些对于本领域的技术人员来说是显而易见的修改和变化是包括在由 所附权利要求书所规定的本发明的范围之内的。
QQ群二维码
意见反馈