专利名称:使用多个滤波程序对视频数据进行滤波的制作方法
技术领域:
本发明大体上是针对于用以使用多个滤波程序对视频数据进行滤波的系统及方法。
背景技术:
技术的进步已导致更小且更强大的计算装置。举例来说,当前存在多种便携式个 人计算装置,包括无线计算装置,例如便携式无线电话、个人数字助理(PDA)及寻呼装置, 其为小型、轻质且易于由用户携带的。更具体地说,例如蜂窝式电话及因特网协议(IP)电 话等便携式无线电话可经由无线网络传送语音及数据包。另外,许多此类无线电话包括并 入其中的其它类型的装置。举例来说,无线电话还可包括数字静态相机、数字视频相机、数 字录音机及音频文件播放机。并且,所述无线电话可处理包括可用以接入因特网的软件应 用程序(例如网页浏览器应用程序)在内的可执行指令。因而,这些无线电话可包括显著 计算能力。数字信号处理器(DSP)、图像处理器及其它处理装置频繁地用于包括数码相机或 显示由数码相机捕获的图像或视频数据的便携式个人计算装置中。可利用所述处理装置以 提供视频及音频功能、处理例如图像数据等所接收数据或执行其它功能。一种类型的视频处理涉及滤波,其可经应用以增强经解码的视频信号的质量。可 将滤波程序应用为后置滤波程序(其中经滤波的帧不用于未来帧的预测)或应用为循环内 滤波程序(其中经滤波的帧用以预测未来帧)。可通过减少原始信号与经解码的经滤波信 号之间的误差来设计滤波程序。类似地,为了变换系数,所得滤波程序的系数可经量化、经 编码且被发送到视频解码器。较精确的经量化滤波系数可实现较佳性能。然而,随着经量化 滤波系数的精度增加,发射所述系数所需的位的数目可能也会增加,从而造成对网络资源、 数据传送速率或两者的对应影响。
发明内容
可在视频编码器处确定多个滤波程序且经由视频数据流将其提供到接收器。所述 接收器可从所述数据流提取信息以识别将所述多个滤波程序中的哪一者应用于特定帧、特 定宏块、特定像素或其任何组合。所述多个滤波程序可用于处理后滤波或用于在解码器处 的处理循环内的滤波。在特定实施例中,揭示一种方法,其包括在视频解码器处接收并解码嵌入于视频 数据位流中的多个滤波程序。所述方法包括基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波程序。所述方法进一步包括将所述特定滤波程序应用于所 述视频数据位流的经解码视频数据的至少一部分以产生经滤波的经解码视频数据。在另一实施例中,揭示一种设备,其包括视频解码器,所述视频解码器经配置以接 收并解码嵌入于视频数据位流中的多个滤波程序。所述设备还包括处理器,所述处理器经 配置以基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波程 序且将所述特定滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分以产 生经滤波的经解码视频数据。在另一实施例中,揭示一种集成电路,其包括视频解码电路,所述视频解码电路经 配置以接收并解码包括嵌入于视频数据位流中的多个滤波程序的信号。所述集成电路还包 括处理电路,所述处理电路经配置以处理所述经解码的信号以便基于包括于所述视频数据 位流中的信息而选择所述多个滤波程序中的特定滤波程序且将所述特定滤波程序应用于 所述视频数据位流的经解码视频数据的至少一部分以产生经滤波的经解码视频数据。在另一实施例中,揭示一种设备,其包括用于解码嵌入于视频数据位流中的多个 滤波程序的装置。所述设备包括用于基于包括于所述视频数据位流中的信息而选择所述多 个滤波程序中的特定滤波程序的装置。所述设备进一步包括用于将所述特定滤波程序应用 于所述视频数据位流的经解码视频数据的至少一部分以产生经滤波的经解码视频数据的
直O在另一实施例中,揭示一种存储计算机可执行代码的计算机可读媒体。所述计算 机可读媒体包括用于在视频解码器处接收并解码嵌入于视频数据位流中的多个滤波程序 的代码。所述计算机可读媒体包括用于基于包括于所述视频数据位流中的信息而选择所述 多个滤波程序中的特定滤波程序的代码。所述计算机可读媒体进一步包括用于将所述特定 滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分以产生经滤波的经解 码视频数据的代码。由所揭示的实施例提供的一个特定优点为滤波性能的改进,尤其是后置滤波性能 的改进,以便增强经解码的视频信号的质量。由所揭示的实施例提供的另一特定优点为发 射多个滤波程序的滤波系数所需的位的数目减少。在审阅整个申请案之后,本发明的其它方面、优点及特征将变得显而易见,整个申 请案包括以下部分
具体实施方式
及权利要求书。
图1为包括视频数据位流及多媒体接收器的视频数据处理系统的特定说明性实 施例的框图;图2为包括视频解码器及处理器的视频数据处理设备的特定说明性实施例的框 图;图3为包括视频解码电路及处理电路的集成电路的特定说明性实施例的框图;图4为用以使用多个滤波程序对视频数据进行滤波的方法的特定说明性实施例 的流程图;及图5为包括使用多个滤波程序的解码及滤波模块的便携式通信装置的特定实施 例的框图。
具体实施例方式参看图1,说明视频数据处理系统100的特定实施例。所述视频数据处理系统100 包括由多媒体接收器108所接收的视频数据位流102。所述视频数据位流102包括经编码 的视频数据106、多个滤波程序104及滤波程序选择信息122。所述多媒体接收器108包括 视频数据解码器110、滤波模块112、滤波程序选择器118及显示器116。系统100使得多媒 体接收器108能够基于滤波程序选择信息122从视频数据位流102选择滤波程序。视频数据解码器110经配置以对经编码的视频数据106进行解码。举例来说,视频 数据解码器110可经配置以对经熵编码数据进行解码且对所得数据执行反向离散余弦变 换(DCT)。在特定实施例中,视频数据解码器110包括H. 264或运动图片专家小组(MPEG) 兼容解码器。滤波模块112经配置以从滤波程序选择器118接收滤波程序,例如第二经解码滤 波程序120。滤波模块112经配置以将所接收的滤波程序120应用于从视频数据解码器110 接收的经解码视频数据。滤波模块112可经配置以基于帧、宏块或像素粒度将所述滤波程 序应用于经解码视频数据,以便产生被提供到显示器116的经滤波的经解码视频数据114。 滤波模块112可实施于解码循环(未图示)内或经实施用于处理后滤波,或其任何组合。滤波程序选择器118经配置以接收滤波程序选择信息122且从多个滤波程序104 选择适当的滤波程序。在特定实施例中,滤波程序选择器118适于解码多个滤波程序104 且将例如第二经解码滤波程序120等选定的经解码滤波程序提供到滤波模块112。滤波程 序选择器118可基于滤波程序选择信息122选择经解码的滤波程序来提供到滤波模块112。 在特定实施例中,滤波程序选择器118将由视频数据解码器110产生的经解码视频数据的 一个或一个以上特性与滤波程序选择信息122进行比较以选择用于被提供到滤波模块112 的特定视频数据的适当滤波程序。在操作期间,由多媒体接收器108的视频数据解码器110接收并解码经编码的视 频数据106。在多媒体接收器108的滤波程序选择器118处接收并解码多个滤波程序104 及滤波程序选择信息122。滤波程序选择器118基于包括于视频数据位流102中的滤波程 序选择信息122而选择多个滤波程序104中的特定经解码滤波程序120。在多媒体接收器 108的滤波模块112处将特定经解码滤波程序120应用于经解码视频数据的至少一部分,从 而产生经滤波的经解码视频数据114。在多媒体接收器108的显示器116处显示所述经滤 波的经解码视频数据114。通过接收多个滤波程序连同经编码的视频数据106,多媒体接收器108可选择导 致每一单位的经解码视频数据的最低误差的特定滤波程序。举例来说,可在逐帧的基础上 选择提供视频数据的特定帧的最低均方误差的滤波程序。作为另一实例,可在逐宏块的基 础上或在逐像素的基础上选择提供特定宏块的最低误差的滤波程序。视频数据处理系统 100可因此提供滤波性能的改进,尤其是后置滤波性能的改进,以便增强经解码的视频信号 的质量。另外,通过对滤波系数进行编码及在一些实施例中使用一些滤波程序的系数以预 测稍后滤波程序的系数,视频数据处理系统100进一步提供发射多个滤波程序104中的每 一滤波程序的滤波系数所需的位数目的减少。参看图2,说明视频数据处理设备200的特定实施例。所述视频数据处理设备200包括视频解码器202及处理器206。所述视频解码器202经配置以接收并解码嵌入于视频 数据位流中的多个滤波程序204。在特定实施例中,使用MPEG编码来对视频数据位流中的 视频数据的至少一部分进行编码。所述处理器206包括帧确定模块208、宏块确定模块210、 像素确定模块212、滤波程序选择模块230及滤波程序应用模块232。在说明性实施例中, 视频解码器202为图2的视频数据解码器102,且多个滤波程序204以与图1的嵌入于视频 数据位流102中的多个滤波程序104类似的方式嵌入于视频数据位流中。在特定实施例中,滤波程序选择模块230可由处理器206执行以基于包括于视频 数据位流中的信息而选择多个滤波程序204中的特定滤波程序。在特定实施例中,包括于 视频数据位流中的所述信息类似于图1的包括于视频数据位流102中的滤波程序选择信息 122。在特定实施例中,滤波程序应用模块232可由处理器206执行以将由滤波程序选 择模块230选择的特定滤波程序应用于视频数据位流的经解码视频数据的至少一部分以 产生经滤波的经解码视频数据。在特定实施例中,所产生的经滤波的经解码视频数据类似 于图1的经滤波的经解码视频数据114。在特定实施例中,帧确定模块208可由处理器206执行以确定多个滤波程序204 中的每一滤波程序待应用于的视频数据的帧,其中包括于视频数据位流中的信息通过帧编 号或帧类型中的至少一者来识别对应于每一滤波程序的帧。在特定实施例中,帧类型可包 括经帧内编码图片帧(I帧)类型、预测图片帧(P帧)类型或双向预测图片帧(B帧)类 型。举例来说,帧确定模块208可确定每一帧的帧编号且将所述所确定的帧编号提供到滤 波程序选择模块230。为了说明,帧确定模块208可确定正被处理的特定帧222具有帧编号 “5”,响应于所述情形,滤波程序选择模块230选择第一经解码滤波程序216来应用于具有 编号“5”的经解码帧222。可使用不同方式以指示待使用哪些滤波程序及待组合哪些滤波 程序。举例来说,可向解码器发信号通知对于B帧类型来说应使用滤波程序f\、f2及f3。在特定实施例中,宏块确定模块210可由处理器206执行以确定多个滤波程序204 中的每一滤波程序待应用于的宏块。作为说明性、非限制性实例,包括于视频数据位流中的 信息可通过宏块类型列表(例如,帧内、帧间、双向帧间)或用以重构所述宏块的量化参数 值范围中的至少一者来识别对应于每一滤波程序的宏块。举例来说,宏块确定模块210可 确定每一宏块的类型且将所述所确定的宏块类型提供到滤波程序选择模块230。为了说明, 宏块确定模块210可确定正被处理的特定宏块2M具有类型“A” (例如,帧内类型),响应 于所述情形,滤波程序选择模块230选择第二经解码滤波程序218来应用于所述特定宏块 224。在特定实施例中,像素确定模块212可由处理器206执行以基于图像的局部特性 的预定测量214而确定多个滤波程序204中的每一滤波程序待应用于的像素。像素确定模 块212可产生正在所述经解码视频信号的宏块或帧的行i及列j处被处理的特定像素(i, j) 226的预定测量214的值,响应于所述情形,滤波程序选择模块230选择第三经解码滤波 程序220来应用于像素(i, j)2260在特定实施例中,图像的局部特性的预定测量214包括经重构图像的方差值, 其得自经重构图像的平均值。举例来说,对于经重构图像R(i,j)(其中i = 0,...,Y y R(i + k,j + l)
M且 j = 0,...,N)来说,可定义平均值 <R(i,j)> 使得_ ^kiT1l V,。
(2^ + l)(2L + l)
可定义经重构图像R(i,j)的得自平均值<R(i,j)>的方差值var(i,j)使得
(冲+“+ζ)-〈冲,·ζ·)〉)2
var {i, j) = k-Kl-L , w---。在特定实施例中,图像的局部特性的预定测量214包括经重构图像内的绝对差 值。举例来说,对于经重构图像R(i,j)(其中i = 0,. . .,M且j = 0,. . .,N)来说,可定义
K L
y y I/ ( ■+it,j+/)-/ ( ·, η
绝对差值 abs(i,j)使得Μ^,· λK} K \在特定实施例中,图像的局部特性的预定测量214包括经重构图像内的梯度值。 举例来说,可将所关注像素处的图像值的梯度确定为图像的局部特性的预定测量214。在另 一实施例中,图像的局部特性的预定测量214包括经重构图像内的清晰度测量。在特定实施例中,将多个滤波程序204中的第一滤波程序应用于第一像素(其具 有图像的局部特性的预定测量214的在第一值范围中的第一值),且将多个滤波程序204 中的第二滤波程序应用于第二像素(其具有图像的局部特性的预定测量214的在第二值 范围中的第二值)。举例来说,可应用滤波程序fm(其中m = 0,. . .,n+1)使得将滤波程序 f0应用于具有处于范围0彡var (i,j) < var。中的方差值var (i,j)的像素(i,j),将滤 波程序应用于具有处于范围var (i,j) < Var1中的方差值var (i,j)的像素(i, j),且,大体来说,将滤波程序f;(其中r = 1,. . .,n)应用于具有处于范围Varrt ^ var(i, j) < vaiv中的方差值var(i,j)的像素(i,j),其中将滤波程序fn+1应用于具有处于范围 varn ( var (i,j)中的方差值var (i,j)的像素(i,j)。在替代实施例中,可应用滤波程序 fi及f2使得将滤波程序应用于具有处于范围0 ( var (i,j) < var0中的方差值var (i, j)的像素(i,j),将滤波程序应用于具有处于范围VartlS var(i,j) <Vari中的方差值 var(i, j)的像素(i,j),且将滤波程序f2应用于其它情形。在特定实施例中,将多个滤波程序204中的滤波程序中的每一者的经量化滤波系 数限于约0到约2自乘η次幂的范围内。可将所述约0到约2自乘η次幂的范围划分为 一定数目m个区间。至少部分地基于多个滤波程序204中的滤波程序中的每一者的经量 化滤波系数的索引而确定区间数目m。举例来说,可将经量化滤波系数fjk,1)(其中r = 0,. . .,s+l、k = -K,. . .,K 且 1 = -L,. . .,L)限于范围 0 彡 fr(k, 1)彡 2n 内。可将范围 0 ( fr(k,l) ( 2"划分为一定数目m个区间,其中至少部分地基于经量化滤波系数f;(k,l) (其中r = 0,...,s+l、k = -K,...,K且1 = -L,...,L)的索引(k,1)而确定区间数目 m。在特定实施例中,通过解码可变长度码字(其指示所述一定数目m个区间中的对应于特 定的经量化滤波系数的值的特定区间)且通过解码固定长度码字(其指定所述特定区间内 的所述特定的经量化滤波系数的值)而确定特定的经量化滤波系数。在特定实施例中,多个滤波程序204中的第一滤波程序的第一滤波系数用以预测 多个滤波程序204中的第二滤波程序的第二滤波系数。举例来说,如以上所描述,如果滤波 程序fm (其中m = 0,. . .,n+1)对应于不同方差值(其中r = 0,. . .,η),则可从滤波程序fo预测滤波程序f\,可从滤波程序预测滤波程序f2,且,大体来说,可从滤波程序fs (其 中s = 0,...,η)预测滤波程序fs+1。模块208、210、212、230及232中的一者或一者以上可实施为包括在处理器206处 执行的程序指令的计算机可执行代码、实施为专用硬件电路、实施为状态机、实施为现场可 编程门阵列(FPGA)或其任何组合。处理器206可执行帧确定模块208、宏块确定模块210及 像素确定模块212中的一者或一者以上,以确定待应用于经解码的视频数据的滤波程序。 在特定实施例中,视频数据处理设备200可包括未图示的其它组件,例如类似于展示于图1 中的显示器116的显示装置,其经配置以显示经滤波的经解码视频数据。参看图3,说明视频数据处理集成电路300。所述视频数据处理集成电路300包括 视频解码电路302及处理电路306。所述视频解码电路302经配置以接收并解码包括嵌入 于视频数据位流中的多个滤波程序304的信号328。在特定实施例中,所述多个滤波程序 304以与图1的嵌入于视频数据位流102中的多个滤波程序104类似的方式嵌入于视频数 据位流中。所述处理电路306经配置以处理所述经解码的信号3 以便基于包括于所述视频 数据位流中的信息而选择多个滤波程序304中的特定滤波程序。在特定实施例中,包括于 视频数据位流中的信息类似于图1的包括于视频数据位流102中的滤波程序选择信息122。 处理电路306包括帧确定电路308、宏块确定电路310、像素确定电路312、滤波程序选择电 路330及滤波程序应用电路332。处理电路306经配置以处理来自视频解码电路302的经 解码信号以便将例如第二经解码滤波程序316、第三经解码滤波程序318或第四经解码滤 波程序320等特定滤波程序应用于视频数据位流的经解码视频数据的至少一部分以产生 经滤波的经解码视频数据。在特定实施例中,所产生的经滤波的经解码视频数据类似于图 1的经滤波的经解码视频数据114。在特定实施例中,所述帧确定电路308经配置以确定多个滤波程序304中的每一 滤波程序待应用于的帧,其中包括于视频数据位流中的信息通过帧编号或帧类型中的至少 一者来识别对应于每一滤波程序的帧。举例来说,帧确定电路308可确定特定帧322具有 帧编号“6”且可将所述帧编号提供到滤波程序选择电路330。滤波程序选择电路330可基 于所述帧编号且根据经由视频数据位流接收的信息而针对帧322选择第二经解码滤波程 序316。滤波程序应用电路332可将所述第二经解码滤波程序316应用于具有帧编号“6” 的帧322。在特定实施例中,所述宏块确定电路310经配置以确定多个滤波程序304中的每 一滤波程序待应用于的宏块,其中包括于视频数据位流中的信息通过宏块类型列表或用以 重构所述宏块的量化参数值范围中的至少一者来识别对应于每一滤波程序的宏块。举例来 说,宏块确定电路310可确定特定宏块3M具有类型“B”(例如,双向帧间类型)且可将所述 宏块类型提供到滤波程序选择电路330。滤波程序选择电路330可基于所述宏块类型且根 据经由视频数据位流接收的信息而针对所述特定宏块3M选择第三经解码滤波程序318。 滤波程序应用电路332可将所述第三经解码滤波程序318应用于具有类型“B”的特定宏块 324。在特定实施例中,像素确定电路312经配置以处理经解码的信号以便基于图像的 局部特性的预定测量314而确定多个滤波程序304中的每一滤波程序待应用于的像素。举例来说,像素确定电路312可确定对应于行m及列η处的特定像素(m,n)3^的图像的局部 特性的预定测量314的值,且可将图像的局部特性的预定测量314的所述值提供到滤波程 序选择电路330。滤波程序选择电路330可基于图像的局部特性的预定测量314的值且根 据经由视频数据位流接收的信息而针对像素(m,11)3 选择第四经解码滤波程序320。滤 波程序应用电路332可将第四经解码滤波程序320应用于像素(m,η) 326。在特定实施例 中,作为说明性、非限制性实例,以与图2的图像的局部特性的预定测量214大体类似的方 式(例如使用方差或梯度)确定图像的局部特性的预定测量314。在特定实施例中,设备包括用于解码嵌入于视频数据位流中的多个滤波程序的装 置。所述用于解码嵌入于视频数据位流中的多个滤波程序的装置可包括例如展示于图2中 的视频解码器202等视频解码器、例如展示于图3中的视频解码电路302等视频解码电路、 对应硬件、软件、固件或其任何组合。所述设备包括用于基于包括于所述视频数据位流中的 信息而选择所述多个滤波程序中的特定滤波程序的装置。所述用于选择所述多个滤波程序 中的特定滤波程序的装置可包括例如展示于图2中的处理器206等处理器、例如展示于图3 中的处理电路306等处理电路、对应硬件、软件、固件或其任何组合。所述设备进一步包括 用于将所述特定滤波程序应用于视频数据位流的经解码视频数据的至少一部分以产生经 滤波的经解码视频数据的装置。所述用于应用所述特定滤波程序的装置可包括例如展示于 图2中的处理器206等处理器、例如展示于图3中的处理电路306等处理电路、对应硬件、 软件、固件或其任何组合。在特定实施例中,所述设备包括用于确定多个滤波程序中的每一滤波程序待应用 于的帧的装置,其中包括于视频数据位流中的信息通过帧编号或帧类型中的至少一者来识 别对应于每一滤波程序的帧。所述用于确定帧的装置可包括例如展示于图2中的处理器 206等处理器、例如展示于图3中的处理电路306等处理电路、对应硬件、软件、固件或其任 何组合。在特定实施例中,所述设备包括用于确定多个滤波程序中的每一滤波程序待应用 于的宏块的装置,其中包括于视频数据位流中的信息通过宏块类型列表或用以重构所述宏 块的量化参数值范围中的至少一者来识别对应于每一滤波程序的宏块。所述用于确定宏块 的装置可包括例如展示于图2中的处理器206等处理器、例如展示于图3中的处理电路306 等处理电路、对应硬件、软件、固件或其任何组合。在特定实施例中,所述设备包括用于基于图像的局部特性的预定测量而确定多个 滤波程序中的每一滤波程序待应用于的像素的装置。所述用于确定像素的装置可包括例如 展示于图2中的处理器206等处理器、例如展示于图3中的处理电路306等处理电路、对应 硬件、软件、固件或其任何组合。在特定实施例中,所述设备包括用于经由无线发射来接收视频数据位流的装置。 所述用于经由无线发射来接收视频数据位流的装置可包括无线接收器、无线接收电路、无 线收发器、例如展示于图5中且在下文更充分描述的便携式通信装置、对应硬件、软件、固 件或其任何组合。参看图4,说明用以使用多个滤波程序对视频数据进行滤波的方法400。所述方法 400包括在402处在视频解码器处接收并解码嵌入于视频数据位流中的多个滤波程序。举 例来说,图2的多个滤波程序204可嵌入于例如图1的视频数据位流102等视频数据位流中。可在图2的视频解码器202处接收并解码多个滤波程序204。方法400包括在404处基于包括于所述视频数据位流中的信息而选择所述多个滤 波程序中的特定滤波程序。举例来说,图2的处理器206可基于包括于视频数据位流中的 信息(例如图1的包括于视频数据位流102中的滤波程序选择信息122)而选择多个滤波 程序204中的特定滤波程序(例如第一经解码滤波程序216)。方法400进一步包括在406处将所述特定滤波程序应用于视频数据位流的经解码 视频数据的至少一部分以产生经滤波的经解码视频数据。举例来说,图2的处理器206可 将经解码滤波程序216应用于视频数据位流的经解码视频数据的至少一部分(例如特定帧 222)以产生经滤波的经解码视频数据(例如图1的经滤波的经解码视频数据114)。图5为包括使用多个滤波程序的解码及滤波模块的系统的特定实施例的框图。系 统500可实施于便携式电子装置中且包括耦合到存储器532的处理器510(例如数字信号 处理器(DSP))。系统500包括使用多个滤波程序的解码及滤波模块564。在说明性实例中, 所述使用多个滤波程序的解码及滤波模块564包括图1到图3的系统中的任一者,根据图4 的方法来操作,或其任何组合。所述使用多个滤波程序的解码及滤波模块564可处于处理 器510中,或可为沿硬件图像处理管线(未图示)的单独装置或电路,或其组合。相机接口 568耦合到处理器510且还耦合到例如视频相机570等相机。所述相机 接口 568可响应于处理器510,例如用于自动调焦及自动曝光控制。显示控制器5 耦合到 处理器510且耦合到显示装置528。编码器/解码器(编解码器)534也可耦合到处理器 510。扬声器536及麦克风538可耦合到编解码器534。无线接口 540可耦合到处理器510 且耦合到无线天线M2。处理器510还可适于产生经处理的图像数据。显示控制器5 经配置以接收所述 经处理的图像数据且将所述经处理的图像数据提供到显示装置528。另外,存储器532可经 配置以接收且存储经处理的图像数据,且无线接口 540可经配置以接收经处理的图像数据 用于经由天线542发射。在特定实施例中,将使用多个滤波程序的解码及滤波模块564实施为正在处理器 510处运行的计算机代码,例如存储于计算机可读媒体处的计算机可执行指令,将其说明为 存储于存储器532处的计算机代码590。举例来说,计算机代码590可包括用于在视频解 码器处接收并解码嵌入于视频数据位流中的多个滤波程序的代码;用于基于包括于所述视 频数据位流中的信息而选择所述多个滤波程序中的特定滤波程序的代码;及用于将所述特 定滤波程序应用于视频数据位流的经解码视频数据的至少一部分以产生经滤波的经解码 视频数据的代码。举例来说,计算机代码590还可包括用于确定多个滤波程序中的每一滤波程序待 应用于的帧的代码,其中包括于视频数据位流中的信息通过帧编号或帧类型中的至少一者 来识别对应于每一滤波程序的帧。作为另一实例,计算机代码590还可包括用于确定多个 滤波程序中的每一滤波程序待应用于的宏块的代码,其中包括于视频数据位流中的信息通 过宏块类型列表或用以重构所述宏块的量化参数值范围中的至少一者来识别对应于每一 滤波程序的宏块。或者或另外,计算机代码590可包括用于基于图像的局部特性的预定测 量而确定多个滤波程序中的每一滤波程序待应用于的像素的代码。在特定实施例中,可将 多个滤波程序中的第一滤波程序应用于第一像素(其具有图像的局部特性的预定测量的在第一值范围中的第一值),且将多个滤波程序中的第二滤波程序应用于第二像素(其具 有图像的局部特性的预定测量的在第二值范围中的第二值)。在特定实施例中,处理器510、显示控制器526、存储器532、编解码器534、无线接 口 540及相机接口 568被包括于系统级封装或芯片上系统装置522中。在特定实施例中, 输入装置530及电源544耦合到芯片上系统装置522。此外,如图5中所说明,在特定实施 例中,显示装置528、输入装置530、扬声器536、麦克风538、无线天线M2、视频相机570及 电源544处于芯片上系统装置522的外部。然而,显示装置528、输入装置530、扬声器536、 麦克风538、无线天线M2、视频相机570及电源M4中的每一者可耦合到芯片上系统装置 522的组件,例如接口或控制器。技术人员将进一步了解,结合本文中所揭示的实施例而描述的各种说明性逻辑 块、配置、模块、电路及算法步骤可实施为电子硬件、计算机软件或两者的组合。为了清楚地 说明硬件与软件的此可互换性,已在上文大体按照其功能性描述了各种说明性组件、块、配 置、模块、电路及步骤。将此功能性实施为硬件还是软件取决于特定应用及强加于整个系统 的设计约束。对于每一特定应用,熟练的技术人员可以变化的方式实施所描述的功能性,但 不应将此类实施决策解释为导致脱离本发明的范围。结合本文中所揭示的实施例而描述的方法或算法的步骤可直接以硬件、以由处 理器执行的软件模块或以所述两者的组合来体现。软件模块可驻留于随机存取存储器 (RAM)、快闪存储器、只读存储器(ROM)、可编程只读存储器(PR0M)、可擦除可编程只读存储 器(EPROM)、电可擦除可编程只读存储器(EEPROM)、寄存器、硬盘、可装卸式盘、压缩光盘只 读存储器(CD-ROM)或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦 合到处理器,使得处理器可从存储媒体读取信息及将信息写入到存储媒体。在替代方案中, 存储媒体可与处理器成一体式。处理器及存储媒体可驻留于专用集成电路(ASIC)中。所 述ASIC可驻留于计算装置或用户终端中。在替代方案中,处理器及存储媒体可作为离散组 件而驻留于计算装置或用户终端中。提供对所揭示实施例的前述描述以使所属领域的任何技术人员能够制作或使用 所揭示的实施例。所属领域的技术人员将容易明了对这些实施例的各种修改,且本文中所 定义的一般原理可在不脱离本发明的精神或范围的情况下应用于其它实施例。因此,本发 明不希望限于本文中所展示的实施例,而是应被赋予与由所附权利要求书所界定的原理及 新颖特征相一致的最广泛的可能范围。
权利要求
1.一种方法,其包含在视频解码器处接收并解码嵌入于视频数据位流中的多个滤波程序;基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波程序;及将所述特定滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分以产 生经滤波的经解码视频数据。
2.根据权利要求1所述的方法,其进一步包含确定所述多个滤波程序中的每一滤波程序待应用于的帧,其中包括于所述视频数据位 流中的所述信息通过帧编号及帧类型中的至少一者来识别对应于每一滤波程序的帧。
3.根据权利要求1所述的方法,其进一步包含确定所述多个滤波程序中的每一滤波程序待应用于的宏块,其中包括于所述视频数据 位流中的所述信息通过宏块类型列表及用以重构所述宏块的量化参数值范围中的至少一 者来识别对应于每一滤波程序的宏块。
4.根据权利要求1所述的方法,其进一步包含基于图像的局部特性的预定测量而确定所述多个滤波程序中的每一滤波程序待应用 于的像素。
5.根据权利要求4所述的方法,其中所述图像的局部特性的所述预定测量包括经重构 图像的方差值,其得自所述经重构图像的平均值。
6.根据权利要求4所述的方法,其中所述图像的局部特性的所述预定测量包括经重构 图像内的绝对差值。
7.根据权利要求4所述的方法,其中所述图像的局部特性的所述预定测量包括经重构 图像内的梯度值。
8.根据权利要求4所述的方法,其中所述图像的局部特性的所述预定测量包括经重构 图像内的清晰度测量。
9.根据权利要求4所述的方法,其中将所述多个滤波程序中的第一滤波程序应用于第 一像素,所述第一像素具有所述图像的局部特性的所述预定测量的在第一值范围中的第一 值,且将所述多个滤波程序中的第二滤波程序应用于第二像素,所述第二像素具有所述图 像的局部特性的所述预定测量的在第二值范围中的第二值。
10.根据权利要求1所述的方法,其中将所述多个滤波程序中的所述滤波程序中的每 一者的经量化滤波系数限于约0到约2自乘η次幂的范围内,其中将所述约0到约2自乘η 次幂的范围划分为一定数目m个区间,且其中至少部分地基于所述多个滤波程序中的所述 滤波程序中的每一者的所述经量化滤波系数的索引而确定所述一定数目m个区间。
11.根据权利要求10所述的方法,其中通过解码可变长度码字且通过解码固定长度码 字来确定特定的经量化滤波系数,所述可变长度码字指示所述一定数目m个区间中对应于 所述特定经量化滤波系数的值的特定区间,所述固定长度码字指定所述特定区间内的所述 特定经量化滤波系数的所述值。
12.根据权利要求1所述的方法,其中使用所述多个滤波程序中的第一滤波程序的第 一滤波系数来预测所述多个滤波程序中的第二滤波程序的第二滤波系数。
13.根据权利要求1所述的方法,其中使用MPEG编码来编码所述视频数据位流中的视频数据的至少一部分。
14.一种设备,其包含视频解码器,其经配置以接收并解码嵌入于视频数据位流中的多个滤波程序;及 处理器,其经配置以基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波程序;且将所述特定滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分以产 生经滤波的经解码视频数据。
15.根据权利要求14所述的设备,其中所述处理器进一步经配置以确定所述多个滤波程序中的每一滤波程序待应用于的帧,其中包括于所述视频数据位 流中的所述信息通过帧编号及帧类型中的至少一者来识别对应于每一滤波程序的帧;确定所述多个滤波程序中的每一滤波程序待应用于的宏块,其中包括于所述视频数据 位流中的所述信息通过宏块类型列表及用以重构所述宏块的量化参数值范围中的至少一 者来识别对应于每一滤波程序的宏块;且基于图像的局部特性的预定测量而确定所述多个滤波程序中的每一滤波程序待应用 于的像素。
16.根据权利要求14所述的设备,其进一步包含显示装置,所述显示装置经配置以显 示所述经滤波的经解码视频数据。
17.一种集成电路,其包含视频解码电路,其经配置以解码包括嵌入于视频数据位流中的多个滤波程序的信号;及处理电路,其经配置以处理所述经解码的信号以基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波程序;且将所述特定滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分以产 生经滤波的经解码视频数据。
18.根据权利要求17所述的集成电路,其中所述处理电路进一步经配置以处理所述经 解码的信号以确定所述多个滤波程序中的每一滤波程序待应用于的帧,其中包括于所述视频数据位 流中的所述信息通过帧编号及帧类型中的至少一者来识别对应于每一滤波程序的帧;确定所述多个滤波程序中的每一滤波程序待应用于的宏块,其中包括于所述视频数据 位流中的所述信息通过宏块类型列表及用以重构所述宏块的量化参数值范围中的至少一 者来识别对应于每一滤波程序的宏块;且基于图像的局部特性的预定测量而确定所述多个滤波程序中的每一滤波程序待应用 于的像素。
19.根据权利要求17所述的集成电路,其中所述多个滤波程序中的第一滤波程序被 应用于第一像素,所述第一像素具有图像的局部特性的预定测量的在第一值范围中的第一 值,且所述多个滤波程序中的第二滤波程序被应用于第二像素,所述第二像素具有所述图 像的局部特性的所述预定测量的在第二值范围中的第二值。
20.一种设备,其包含用于解码嵌入于视频数据位流中的多个滤波程序的装置;用于基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波 程序的装置;及用于将所述特定滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分 以产生经滤波的经解码视频数据的装置。
21.根据权利要求20所述的设备,其进一步包含以下各项中的至少一者用于确定所述多个滤波程序中的每一滤波程序待应用于的帧的装置,其中包括于所述 视频数据位流中的所述信息通过帧编号及帧类型中的至少一者来识别对应于每一滤波程 序的帧;用于确定所述多个滤波程序中的每一滤波程序待应用于的宏块的装置,其中包括于所 述视频数据位流中的所述信息通过宏块类型列表及用以重构所述宏块的量化参数值范围 中的至少一者来识别对应于每一滤波程序的宏块;及用于基于图像的局部特性的预定测量而确定所述多个滤波程序中的每一滤波程序待 应用于的像素的装置。
22.根据权利要求20所述的设备,其进一步包含用于经由无线发射来接收所述视频数 据位流的装置。
23.一种存储计算机可执行代码的计算机可读媒体,其包含用于在视频解码器处解码嵌入于视频数据位流中的多个滤波程序的代码;用于基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波 程序的代码;及用于将所述特定滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分 以产生经滤波的经解码视频数据的代码。
24.根据权利要求23所述的计算机可读媒体,其进一步包含用于确定所述多个滤波程序中的每一滤波程序待应用于的帧的代码,其中包括于所述 视频数据位流中的所述信息通过帧编号及帧类型中的至少一者来识别对应于每一滤波程 序的帧;用于确定所述多个滤波程序中的每一滤波程序待应用于的宏块的代码,其中包括于所 述视频数据位流中的所述信息通过宏块类型列表及用以重构所述宏块的量化参数值范围 中的至少一者来识别对应于每一滤波程序的宏块;及用于基于图像的局部特性的预定测量而确定所述多个滤波程序中的每一滤波程序待 应用于的像素的代码。
25.根据权利要求23所述的计算机可读媒体,其中所述多个滤波程序中的第一滤波程 序被应用于第一像素,所述第一像素具有图像的局部特性的预定测量的在第一值范围中的 第一值,且所述多个滤波程序中的第二滤波程序被应用于第二像素,所述第二像素具有所 述图像的局部特性的所述预定测量的在第二值范围中的第二值。
全文摘要
本发明揭示使用多个滤波程序对视频数据进行滤波的系统及方法。在一实施例中,一种方法包括在视频解码器处接收并解码嵌入于视频数据位流中的多个滤波程序。所述方法包括基于包括于所述视频数据位流中的信息而选择所述多个滤波程序中的特定滤波程序。所述方法进一步包括将所述特定滤波程序应用于所述视频数据位流的经解码视频数据的至少一部分以产生经滤波的经解码视频数据。
文档编号H04N7/26GK102084656SQ200980126313
公开日2011年6月1日 申请日期2009年7月10日 优先权日2008年7月11日
发明者钱威俊, 马尔塔·卡切维奇 申请人:高通股份有限公司