视频数据处理方法和系统转让专利

申请号 : CN200810174353.8

文献号 : CN101437161B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 谢孟·陈布赖恩·赫格

申请人 : 美国博通公司

摘要 :

本发明涉及一种利用从压缩视频流中提取的信息进行运动补偿图像率提升的方法和系统。所述方法包括在压缩视频流正由视频解压引擎进行解压操作时从该压缩视频数据流中提取出PRUC数据。所述PRUC数据包括,例如,局部块运动矢量、块编码模式、量化等级、量化残留数据以及解码图像。多个插补图像可基于所述提取出来的PRUC数据生成。

权利要求 :

1.一种视频数据处理方法,其特征在于,所述方法包括:从接收到的压缩视频数据中提取出图像率提升数据;

基于所述提取出的图像率提升数据生成多个插补图像;所述提取出的图像率提升数据包括块运动矢量和量化残留数据;

基于所述块运动矢量生成一个或多个运动矢量;

基于所述量化残留数据生成以下两者:所述生成的一个或多个运动矢量的置信度值和一致性值;

对所述生成的多个插补图像进行运动补偿;

对所述运动补偿过的多个插补图像进行非线性过滤。

2.根据权利要求1所述的方法,其特征在于,所述从接收到的压缩视频数据中提取图像率提升数据发生在所述接收到的压缩视频数据进行解压缩时。

3.根据权利要求2所述的方法,其特征在于,所述方法包括:基于对所述接收到的压缩数据进行的解压缩来生成解码图像。

4.根据权利要求2所述的方法,其特征在于,所述方法包括:对解码图像进行滤波以减小噪声。

5.根据权利要求2所述的方法,其特征在于,所述方法包括:对所述生成的一个或多个运动矢量进行比例调整。

6.根据权利要求5所述的方法,其特征在于,所述生成的一个或多个运动矢量包括下面两者中至少一者:一个或多个局部运动矢量和/或一全局运动矢量。

7.一种视频数据处理系统,其特征在于,所述系统包括:第一装置,用于从接收到的压缩视频数据中提取出图像率提升数据;

第二装置,用于基于所述提取出的图像率提升数据生成多个插补图像;所述提取出的图像率提升数据包括块运动矢量和量化残留数据;

第三装置,用于基于所述块运动矢量生成一个或多个运动矢量;

第四装置,用于基于所述量化残留数据生成以下两者:所述生成的一个或多个运动矢量的置信度值和一致性值;

第五装置,用于对所述生成的多个插补图像进行运动补偿并对所述运动补偿过的多个插补图像进行非线性过滤。

8.根据权利要求7所述的系统,其特征在于,所述从接收到的压缩视频数据中提取图像率提升数据发生在所述接收到的压缩视频数据进行解压缩时。

9.根据权利要求8所述的系统,其特征在于,还包括:第六装置,用于基于对所述接收到的压缩数据进行的解压缩来生成解码图像。

10.根据权利要求8所述的系统,其特征在于,还包括:第七装置,用于对解码图像进行滤波以减小噪声。

说明书 :

视频数据处理方法和系统

技术领域

[0001] 本发明涉及数字视频处理,更具体地说,涉及一种利用从压缩视频流中提取的信息进行运动补偿图像率提升(picture rate up-conversion,缩写为PRUC)的方法和系统。

背景技术

[0002] 视频显示技术正在经历变革,基于液晶显示器(LCD)或者等离子显示平板(PDP)的平面屏幕显示器正在取代统治显示领域大半个世纪的阴极射线管(CRT)技术。现有新技术的显著特点是图像以较高的图像率通过逐行扫描(progressive scanning)显示在平板显示屏上。 此项新的显示技术还可促进从标清电视(SDTV)向高清电视(HDTV)的快速转换。 然而,传统的老式视频压缩系统仍然使用低图像率的格式,并不能在现代的新显示屏上最优地显示老式视频。
[0003] 信道容量的限制可能会对低图像率的图像的显示造成影响。例如,一个30Hz的视频序列通过移动网络进行广播,那么移动终端例如移动电话就会从服务器接收到一个编码后的视频序列。 然而,基于带宽的限制,只能传送低比特流的视频序列。 因此,解码器将会移除待传送的每三个图像中的两个图像,从而最后的视频序列的图像率仅为10Hz。 终端虽然能够显示30Hz的视频,但由于其接收到的视频仅为10Hz,因此该终端在显示过程中需要进行图像率转换。
[0004] 比较本发明后续将要结合附图介绍的系统,现有技术的其它局限性和弊端对于本领域的普通技术人员来说是显而易见的。

发明内容

[0005] 本发明提供了利用从压缩视频流中提取的信息进行运动补偿图像率提升(PRUC)的系统和/或方法,结合至少一幅附图进行了充分的展现和描述,并在权利要求中得到了更完整的阐述。
[0006] 根据本发明的一个方面,本发明提供了一种视频数据处理方法,所述方法包括:
[0007] 从接收到的压缩视频数据中提取出图像率提升(PRUC)数据;
[0008] 基于所述提取出的PRUC数据生成多个插补图像。
[0009] 优选地,所述提取出的PRUC数据包括块运动矢量、块编码模式、量化等级、量化残留数据和/或解码图像中的一项或多项。
[0010] 优选地,所述方法包括:基于对所述接收到的压缩数据进行的解压缩来生成所述解码图像。
[0011] 优选地,所述方法包括:对所述解码图像进行滤波以减小噪声。
[0012] 优选地,所述方法包括:基于所述块运动矢量生成一个或多个运动矢量。
[0013] 优选地,所述生成的一个或多个运动矢量包括下面两者中至少一者:一个或多个局部运动矢量和/或一全局运动矢量。
[0014] 优选地,所述方法包括:对多个所述块运动矢量进行累加以生成所述全局运动矢量。
[0015] 优选地,所述方法包括:对所述生成的一个或多个运动矢量进行比例调整。
[0016] 优选地,所述方法包括基于所述量化残留数据生成以下两者中至少一者:所述生成的一个或多个运动矢量的置信度值和/或一致度值。
[0017] 优选地,所述方法包括:对所述生成的多个插补图像进行运动补偿。
[0018] 优选地,所述方法包括:对所述运动补偿过的多个插补图像进行非线性过滤。
[0019] 优选地,所述从接收到的压缩视频数据中提取图像率提升(PRUC)数据发生在所述接收到的压缩视频数据进行解压缩时。
[0020] 根据本发明的一个方面,本发明提供了一种视频数据处理系统,所述系统包括:
[0021] 一个或多个用于从接收到的压缩视频数据中提取出图像率提升(PRUC)数据的电路;
[0022] 所述一个或多个电路基于所述提取出的PRUC数据生成多个插补图像。
[0023] 优选地,所述提取出的PRUC数据包括块运动矢量、块编码模式、量化等级、量化残留数据和/或解码图像中的一项或多项。
[0024] 优选地,所述一个或多个电路基于对所述接收到的压缩数据进行的解压缩来生成所述解码图像。
[0025] 优选地,所述一个或多个电路对所述解码图像进行滤波以减小噪声。
[0026] 优选地,所述一个或多个电路基于所述块运动矢量生成一个或多个运动矢量。
[0027] 优选地,所述生成的一个或多个运动矢量包括下面两者中至少一者:一个或多个局部运动矢量和/或一全局运动矢量。
[0028] 优选地,所述一个或多个电路对多个所述块运动矢量进行累加以生成所述全局运动矢量。
[0029] 优选地,所述一个或多个电路基于对所述生成的一个或多个运动矢量进行比例调整来生成一个或多个像素运动矢量。
[0030] 优选地,所述一个或多个电路基于所述量化残留数据生成以下两者中至少一者:所述生成的一个或多个运动矢量的置信度值和/或一致度值。
[0031] 优选地,所述一个或多个电路对所述生成的多个插补影响进行运动补偿。
[0032] 优选地,所述一个或多个电路对所述运动补偿过的多个插补图像进行非线性过滤。
[0033] 优选地,所述从接收到的压缩视频数据中提取图像率提升(PRUC)数据发生在所述接收到的压缩视频数据进行解压缩时。
[0034] 本发明的各种优点、各个方面和创新特征,以及其中所示例的实施例的细节,将在以下的描述和附图中进行详细介绍。

附图说明

[0035] 下面将结合附图及实施例对本发明作进一步说明,附图中:
[0036] 图1是本发明一实施例中视频处理系统的结构示意图;
[0037] 图2是本发明一实施例中图像率提升系统的结构示意图;
[0038] 图3a是本发明一实施例中在两个图像之间进行图像插补的示意图;
[0039] 图3b是本发明一实施例中一个插补图像的运动矢量示意图;
[0040] 图4是本发明一实施例中利用从压缩视频流中提取出的信息进行运动补偿图像率提升的步骤流程图。

具体实施方式

[0041] 本发明的一些实施例涉及利用从压缩视频流中提取出的信息进行运动补偿图像率提升(PRUC)的系统和/或方法。 该方法包括从在压缩视频数据流正在由视频解压引擎进行解压缩时从该压缩视频数据流中提取出PRUC数据。 所述PRUC数据包括例如块运动矢量、块编码模式、量化等级、量化残留数据和/或解码图像。 尽管如此,所述提取出的PRUC数据并不仅限于上述内容。 此外,所述方法还包括基于提取出的PRUC数据生成多个插补图像。
[0042] 图1是本发明一实施例中视频处理系统的结构示意图。 如图1所示,所述系统包括视频处理单元102、处理器104、存储器106、编码器118以及数据/控制总线108。视频处理单元102包括寄存器110以及滤波器116。在某些情况下,视频处理单元102还可包括输入缓存112和/或输出缓存114。视频处理单元102可包含适当的逻辑器件、电路和/或代码,用于对视频图像或者来自视频输入流的视频图像的像素进行滤波处理以减小噪声。 例如,视频帧图像可用使用逐行视频信号的视频系统,而视频场图像(video field picture)用于使用隔行视频信号的视频系统。视频场会在顶场与底场之间进行奇偶变换。 隔行系统中的顶场与底场可通过去交错以及组合来生成视频帧。
[0043] 视频处理单元102可用于接收视频输入流,并且,在某些情况下可在输入缓存112中对至少接收到的视频输入中的一部分进行缓冲。因此,输入缓存112可包括适当的逻辑器件、电路和/或代码以用于对接收到的视频输入流的至少一部分进行存储。 类似地,视频处理单元102可生成经滤波的视频输出流给视频解码器,并且在某些情况下,视频处理单元102会在输出缓存114中对所述经滤波的视频输出流的至少一部分进行缓冲。 因此,输出缓存114可包括适当的逻辑器件、电路和/或代码以用于将所述经滤波的视频输出流的至少一部分进行存储。
[0044] 视频处理单元102中的滤波器116包括适当的逻辑器件、电路和/或代码,用于对当前像素进行滤波操作以减小噪声。 因此,滤波器116可具有多种滤波模式,每种滤波模式对应一种支持的滤波操作。 滤波器116可利用视频内容、滤波系数、阈值电平、和/或常数来根据选择的滤波模式生成相应的经滤波的视频输出流。 因此,视频处理单元102可根据选择的适当滤波模式生成相应的均化系数(blending factor)。 视频处理单元102中的寄存器110可包括适当的逻辑器件、电路和/或代码以用于将与滤波系数、阈值电平、和/或常数相对应的信息进行存储。 此外,寄存器110还可存储与所选滤波模式相关的信息。
[0045] 处理器104可包括适当的逻辑器件、电路和/或代码,用于处理数据和/或执行系统控制操作。 处理器104可用于对视频处理单元102中的至少一部分操作进行控制。例如,处理器104可生成至少一个信号来控制视频处理单元102中滤波模式的选择。 此外,处理器104可对寄存器110中至少一部分的滤波系数、阈值电平、和/或常数进行编程、更新和/或修改。 例如,处理器104可生成至少一个信号以获取存储于存储器106中的滤波系数、阈值电平和/或常数,并且通过数据/控制总线108将获取的信息传送到寄存器110中。
[0046] 存储器106可包括适当的逻辑器件、电路和/或代码,用于存储视频处理单元102在对视频输入流进行噪声滤波时所利用到的信息。存储器106可用于存储视频处理单元102利用到的滤波系数、阈值电平和/或常数。
[0047] 编码器118可用于对来自处理器104和视频处理单元102的多个统计输入进行接收及处理。 编码器118还可通过对经滤波的视频输出流进行编码来生成编码压缩视频流。
[0048] 在运行中,处理器104可选择一种滤波模式并且可将所选滤波模式编程入视频处理单元102中的寄存器110内。 此外,处理器104还可根据所选择滤波模式将适当的滤波系数、阈值电平和/或常数写入寄存器110内。 视频处理单元102接收输入视频流并且根据所选滤波模式对视频图像中的像素进行滤波处理。 在一些情况下,视频输入流在被处理之前通常会被存储在输入缓存112中。 视频处理单元102会生成合适的均化系数用来执行处理器104所选择的减噪滤波操作。 视频处理单元102在执行完减噪滤波操作之后会生成经滤波的视频输出流。 在某些情况下,所述经滤波的视频输出流在从视频处理单元102内传输出去之前将会被存储在输出缓存114中。
[0049] 处理器104决定视频处理单元102各部分的运行模式。例如,处理器104会对视频处理单元102中的数据寄存器进行配置以便将视频数据通过DMA传送至存储器106。处理器104还会传送指令给图像传感器以启动图像捕捉。 存储器106可用于存储通过处理器104进行处理以及传送的图像数据。 存储器106还可用于存储处理器104使用的代码和/或数据。 存储器106同样还可对视频处理单元102的其他功能性数据进行存储。
例如,存储器106可存储语音通讯相关的数据。 处理器104可包括一状态机用于判断视频数据类型是隔行型还是逐行型。
[0050] 图2是本发明一实施例中图像率提升系统的结构示意图。 图2所示的视频解码系统200包括解压引擎202以及图像率提升(PRUC)引擎204。 解压引擎202包括熵解码器206、逆量化模块208、逆变换模块210、累加器212以及运动补偿预测模块214。
[0051] PRUC引擎204进一步包括:像素运动矢量生成模块216、运动矢量置信度及一致性量度(MVCCM)模块222、运动补偿插补模块224、减噪滤波器226以及非线性滤波模块228。 其中像素运动矢量生成模块216包括块运动矢量细化模块218以及缩放模块220。
[0052] 解压引擎202可以是与特定视频标准相关的视频解码器,比如,MPEG-2、H.264/MPEG-4AVC、VC1以及VP6。 熵解码器206可包括适当的逻辑器件、电路和/或代码,用于接收来自视频编码器例如编码器118的压缩视频流。 熵解码器206可根据特定的视频标准,比如,MPEG-2、H.264/MPEG-4AVC、VC1以及VP6,对接收到的压缩视频流进行解码操作。 熵解码器206还可基于对接收到的压缩视频流进行解码,生成块运动矢量。
[0053] 逆量化模块208可包括适当的逻辑器件、电路和/或代码,用于生成量化残留数据。 逆变换模块210包括适当的逻辑器件、电路和/或代码,用于生成重组残留像素并将所生成的重组残留像素传送至累加器212。
[0054] 运动补偿预测模块214包括适当的逻辑器件、电路和/或代码,用于接收来自熵解码器206的一个或多个运动矢量以生成运动补偿像素块。累加器212可用于将所述运动补偿像素块叠加到所述重组残留像素上以生成一个或多个解码图像。 所述一个或多个解码图像被反馈给运动补偿预测模块214。该运动补偿预测模块214可用于依据参照图像或前一输出图像生成运动补偿像素块,该操作是基于接收到的一个或多个来自熵解码器206的运动矢量来完成的。
[0055] PRUC引擎204可用于从视频解压引擎202中提取出运动矢量、图像、宏块编码类型以及量化残留数据等信息。
[0056] 减噪滤波器226可包括适当的逻辑器件、电路和/或代码,用于接收来自解压引擎202的多个解码图像。 该噪声滤波器226可对所述接收到的解码图像进行解块(de-blocking)、解环(de-ringing)或者其他减噪滤波操作。减噪滤波器226可生成经滤波的输出给像素运动矢量生成模块216、运动补偿插补模块224以及非线性滤波模块228。
[0057] 由量化器带来的块变换域的分布或频谱的变形会导致拼接伪像(blockiness artifact)的产生。 所述拼接伪像通常与量化产生的低频谱系数或者频率失真相关。 拼接伪像在块边界上是可见的,例如,对于MEPG1、2以及4,拼接伪像为8x8像素,对于MPEG4part10AVC,拼接伪像既可为4x4像素也可为8x8像素。 所述拼接伪像可在给定图像或视频中的平面结构区域内被观察到。
[0058] 同样,由量化器带来的块变换域的分布或频谱的变形会导致环状编码伪像,也称作蚊音伪像。所述环状编码伪像通常与量化产生的高频谱系数或者频率失真相关。 所述环状编码伪像可在平面结构区域的边沿或者文本边界上被观察到。
[0059] 像素运动矢量生成模块216可包括适当的逻辑器件、电路和/或代码,用于接收来自熵解码器206的提取出来的块运动矢量以及编码模式。 像素运动矢量生成模块216用于确定局部块运动矢量以及全局块运动矢量并且对插补以及滤波模式进行确定。 像素运动矢量生成模块216还可通过对多个块运动矢量进行累计以估算出一个全局运动矢量(GMV)。 像素运动矢量生成模块216可将运动矢量通过直方图进行分类并生成全局运动矢量(GMV)。
[0060] 块运动矢量细化模块218可包括适当的逻辑器件、电路和/或代码,用于对从压缩视频流中提取出的运动矢量进行细化并且将块运动矢量分解为像素运动矢量。 块运动矢量细化模块218可进行局部细化搜索并且所述运动矢量能够被细化成亚像素精度。
[0061] 缩放模块220可包括适当的逻辑器件、电路和/或代码,用于调整生成的运动矢量以用于插补的或插入的图像。 像素运动矢量生成模块216可利用局部自适应非线性滤波生成像素运动矢量。 此外,像素运动矢量生成模块216还可测量局部运动矢量的一致性。
[0062] 运动矢量置信度及一致性量度(MVCCM)模块222可包括适当的逻辑器件、电路和/或代码,用于对提取出来的量化残留数据以及量化等级进行衡量。 MVCCM模块222还可通过比较相邻块运动矢量以及运动补偿块边界像素差值来生成运动矢量一致性值。 例如,较低量化等级以及较少的残留数据会导致较高的运动矢量置信度,而较高量化等级以及较多的残留数据则会导致较低的运动矢量置信度。 MVCCM模块222将会把生成的运动矢量置信度值以及运动矢量一致性值传送至非线性滤波模块228。
[0063] 运动补偿插补模块224可包括适当的逻辑器件、电路和/或代码,通过利用经缩放的本地及全局运动矢量连同减噪后的解码图像来生成插补或插入图像。 运动补偿插补模块224将生成的插补图像传送到非线性滤波模块228。
[0064] 非线性滤波模块228包括适当的逻辑器件、电路和/或代码,对接收到的插补图像进行滤波处理以减小最后输出插补图像中的伪像。 非线性滤波模块228可利用运动矢量置信度以及一致性衡量值来判断运动补偿插补是否会失败。 如果非线性滤波模块228判断结果显示运动补偿插补会失败,那么PRUC引擎204会在场景变换的过程中关闭图像插补操作并且重复前面的图像。
[0065] 在运行中,解压引擎202可接收包含低图像率的压缩视频流并对所述接收到的压缩视频流进行解压操作。 PRUC引擎204利用从所述压缩视频流中提取出来的运动矢量以及其他编码信息进行图像率提升(PRUC)操作。 PRUC引擎204能够在逐行扫描中生成高图像率的插补图像并在现代视频显示器上进行显示,例如,LCD屏或PDP屏。
[0066] 数字视频压缩算法,例如,MPEG-2、MPEG-4、VC1以及VP6,可进行前向预测、后向预测以及双向预测编码,从而分别生成P图和B图。 运动补偿预测编码可发掘出连续图像之间的即时联系。 视频压缩编码器118可在允许的瞬时窗口内生成图像之间的运动矢量(MV)。 这些运动矢量将会被用于视频压缩编码及解码操作中的运动补偿。在所述压缩视频流中,运动补偿信息,例如宏块,可包括编码的运动矢量数据以及转换的残留数据。
[0067] 当视频流的图像率较低时便会出现一种被称为运动震颤(motion judder)的伪像。出现这种运动震颤的原因在于即时采样率低于场景中的实际运动速度。 运动补偿插补模块224可用来减小该运动震颤。 运动补偿插补模块224可改变图像率转换器的处理操作以使得所述转换器能够在对运动物体的捕捉上与人眼保持一致。 因此,消除了运动震颤的图像会变得清晰以及轮廓分明。 PRUC引擎204可对输入图像流进行辨别以判断场景中的每个物体是如何运动的。 PRUC引擎204还可在不同时间点对多个物体的位置进行插补以生成输出图像。
[0068] PRUC引擎204还可在编码图像之间插补附加的中间图像以替代原先采用的重复早前编码图像。 运动补偿插补类似于预测图像例如视频压缩过程中的P图以及B图的生成。 根据本发明的一实施例,PRUC引擎204在生成一个或多个插补图像的过程中并不需要对运动矢量以及残留数据进行传输。 一个或多个显示设备可在接收到解码图像时根据压缩视频流执行他们自己的PRUC,不需要其他额外信息。
[0069] 对于没有运动矢量的相互独立的宏块,例如,内宏块,可采用多个插补运动矢量。 根据本发明一实施例,PRUC引擎204可在场景变化过程中关闭帧插补并重复之前的帧。 非线性滤波模块228可采用运动自适应加权中值滤波,以在I图与前一个P图之间生成插补图像。
[0070] 图3a是本发明一实施例中在两个图像之间进行图像插补的示意图。 如图3a所示,图中示出了多个编码图像,例如,P1302、P2304以及插补图像304的位置。 例如,插补图像304插入到距离编码图像P1302k个时间单位的地方。
[0071] 图3b是本发明一实施例中一个插补图像的运动矢量示意图。 如图3b所示,图中示出了多个编码图像,例如,P1352、P2354以及插补图像356。 例如,插补图像356被插入到距离编码图像P1352k个时间单位的地方。
[0072] 运动矢量358从前一图像P1352中的某个区域指向下一图像P2354中的某一区域,从而运动矢量358能够捕捉两个原始图像P1352以及P2354之间发生的运动。 运动矢量360是运动矢量358的一种移位形式。运动矢量360被移位以与插补图像356对齐。
[0073] 运动矢量360可分成两个运动矢量,例如,MV1362以及MV2364。 每个估算出的运动矢量,例如,运动矢量360,可进行拆分和缩放以用于运动补偿插补。两个缩放后的运动矢量例如MV1362以及MV2364的方向是相反的。 缩放后的运动矢量的长度,例如,MV1362的长度,与插补图像356和原始图像P1352之间的时间差呈正比。 缩放后的运动矢量的长度,例如,MV2364的长度,与插补图像356和原始图像P2354之间的时间差呈正比。
[0074] 图4是本发明一实施例中利用从压缩视频流中提取的信息进行运动补偿图像率提升(PRUC)的步骤流程图。 如图4所示,流程开始于步骤402。 在步骤404中,解压引擎202接收来自编码器118的压缩视频数据。 在步骤406中,PRUC引擎204在所述压缩视频数据正在由解压引擎202进行解压的同时将PRUC数据从所述压缩视频数据中提取出来。 所述PRUC数据包括局部块运动矢量、块编码模式、量化等级、量化残留数据以及解码图像,尽管如此,所述提取出来的PRUC数据并不仅限于此。 在步骤408中,减噪滤波器226对所述提取的解码图像进行数字化减噪滤波操作。
[0075] 在步骤410中,像素运动矢量生成模块216从视频解压引擎202处接收到多个块运动矢量,并且基于对所接收到的多个块运动矢量进行的细化和缩放来生成像素运动矢量。 在步骤412中,MVCCM模块222生成运动矢量置信度以及一致性衡量值。 在步骤414中,运动补偿插补模块224通过执行运动补偿插补操作来生成插补图像。 在步骤416中,非线性滤波模块228对场景的变化进行检测并对所述插补图像进行滤波操作以减小最后输出插补图像中的伪像。 流程在步骤418中结束。
[0076] 本发明的各实施例包括一种利用从压缩视频流中提取的信息进行运动补偿图像率提升(PRUC)的方法和系统,所述系统包括用于在压缩视频流正由视频解压引擎202进行解压操作时从该压缩视频数据流中提取出PRUC数据的PRUC引擎204。 所述PRUC数据包括,例如,局部块运动矢量、块编码模式、量化等级、量化残留数据以及解码图像。所述提取出来的PRUC数据并不仅限于此。PRUC引擎可基于所述提取出来的PRUC数据生成多个插补图像。
[0077] 解压引擎202可基于对所述压缩视频数据流进行的解压操作生成解码图像。PRUC引擎204可包括像素运动矢量生成模块216、运动矢量置信度及一致性衡量(MVCCM)模块222、运动补偿插补模块224、减噪滤波器226以及非线性滤波模块228。
其中像素运动矢量生成模块216包括块运动矢量细化模块218以及缩放模块220。
[0078] 减噪滤波器226可对所述提取出来的解码图像进行数字减噪滤波操作以减小噪声。 像素运动矢量生成模块216可基于接收到的块运动矢量生成一个或多个运动矢量。所述生成的运动矢量可包括一个或多个局部运动矢量以及全局运动矢量。 像素运动矢量生成模块216可通过对多个块运动矢量进行累加来生成全局运动矢量。
[0079] 缩放模块220用于对所述生成的运动矢量进行缩放调整。 像素运动矢量生成模块216可基于对所述运动矢量进行的缩放调整来生成像素运送矢量。 MVCCM模块222基于所述从视频解压引擎202中提取出来的量化残留数据生成所述运动矢量的置信度值以及一致性值中的至少一个衡量值。
[0080] 运动补偿插补模块224用于生成运动补偿插补图像。 非线性滤波模块228对所述生成的插补图像进行滤波操作以减小输出插补图像中的伪像。
[0081] 本发明的另一实施例包括了一种机器可读存储器,其上存储有计算机程序。 该程序至少包含一段利用从压缩视频流中提取的信息进行运动补偿图像率提升的代码,所述至少一段代码由机器执行使得该机器能够执行本申请中所述的方法步骤。
[0082] 因此,本发明可应用于硬件、软件、固件或其各种组合。 本发明可以在至少一个计算机系统的集中模式下实现,或者在分布式模式下实现,在所述分布式模式下,不同组件分布在几个互联的计算机系统中。 采用任何适用于执行本发明介绍的方法的计算机系统或者其他设备都是合适的。 一种硬件、软件和固件的典型组合是具有计算机程序的通用计算机系统,当程序被加载和执行时,控制所述计算机系统以使其执行本申请描述的方法。
[0083] 本发明还可以嵌入到计算机程序产品内,所述计算机程序包含能够实现本发明方法的全部特征,当其安装到计算机系统中时,通过运行,可以实现本发明的方法。 本文件中的计算机程序所指的是:可以采用任何程序语言、代码或符号编写的一组指令的任何表达式,该指令组使系统具有信息处理能力,以直接实现特定功能,或在进行下述一个或两个步骤之后实现特定功能:a)转换成其它语言、编码或符号;b)以不同的格式再现。 然而,本领域技术人员能够理解的计算机程序的其它含义也被本发明所包含。
[0084] 虽然本发明是通过几个具体实施例进行说明的,本领域技术人员应当明白,在不脱离本发明范围的情况下,还可以对本发明进行各种变换及等同替代。 另外,针对特定情形或具体情况,可以对本发明做各种修改,而不脱离本发明的范围。 因此,本发明不局限于所公开的具体实施例,而应当包括落入本发明权利要求范围内的全部实施方式。