用于视频的数据压缩.pdf

上传人:32 文档编号:4329284 上传时间:2018-09-13 格式:PDF 页数:68 大小:1.98MB
返回 下载 相关 举报
摘要
申请专利号:

CN201180010048.5

申请日:

2011.02.18

公开号:

CN102792687A

公开日:

2012.11.21

当前法律状态:

授权

有效性:

有权

法律详情:

IPC分类号:

H04N7/26; H04N7/50; H04N7/30

主分类号:

H04N7/26

申请人:

斯凯普公司

发明人:

L.比沃拉斯基; R.瓦芬; M.尼尔松; S.V.安德森

地址:

爱尔兰都柏林

优先权:

2010.02.19 US 61/306385; 2010.07.16 US 61/365242

专利代理机构:

中国专利代理(香港)有限公司 72001

代理人:

董宁;汪扬

PDF下载: PDF下载
内容摘要

本发明提供一种用于依据考虑人类对视频信号中的数据的敏感度的感知模型执行诸如量化、帧内预测编码或帧间预测编码之类的视频编码的一个或多个方面的技术。该感知模型可以涉及空间频率、时间频率、对比敏感度、颜色敏感度、结构度量和/或一个或多个影响感知的参数,比如视频中的运动、接收方用户离屏幕的距离、接收方终端的屏幕的大小、宽高比或分辨率。

权利要求书

1.一种编码视频信号以用于传输到接收终端的解码器的方法,该方法包括:接收包括多个帧的视频信号,每个帧包括视频数据的一个或多个部分;量化每个部分的视频数据;以及编码每个部分的视频数据;其中该量化根据量化箱大小分布来执行,该量化箱大小分布针对不同的视频数据使用不同的量化箱大小,其中该量化箱大小分布与人类对视频数据的敏感度的测量相关。2.如权利要求1的方法,其中:该方法包括将所述部分的每一个变换到变换域中,以便针对每个部分生成包括一组系数的变换的视频数据,每个系数表示在不同的空间和/或时间频率处对所述部分的属性的贡献;所述量化包括量化每个部分的系数;以及所述量化箱大小分布针对不同的变换的视频数据使用不同的量化箱大小。3.如权利要求2的方法,其中所述量化箱大小分布与人类在不同的空间和/或时间频率处对所述属性的敏感度的测量相关。4.如权利要求2或3的方法,其中所述量化箱大小分布针对所述系数中不同的系数使用不同的量化箱大小。5.如权利要求2、3或4的方法,其中所述属性包括亮度和颜色属性之一。6.如权利要求5的方法,其中所述系数中的一些表示亮度且所述系数中的一些表示至少一个颜色属性,并且该方法包括使用不同的量化箱大小分布来量化亮度和颜色。7.如权利要求5或6的方法,其中所述系数中的一些表示第一颜色通道且所述系数中的一些表示第二颜色通道,并且该方法包括用于第一和第二颜色通道的不同的量化箱大小分布。8.如任一前述权利要求的方法,其中所述量化箱大小分布与人类对视频数据的视觉结构的敏感度的测量相关。9.如任一前述权利要求的方法,其中使量化箱大小分布可依据影响人类感知的参数而变化。10.如权利要求9的方法,其中所述量化箱大小分布在进行编码期间依据影响人类感知的参数而动态地变化,以便针对所述帧中不同的帧或这些帧的不同部分应用不同的量化箱大小分布。11.如权利要求10的方法,其中所述量化箱大小分布依据视频信号中运动而动态地变化,该运动是影响人类感知的参数。12.如权利要求11的方法,其中所述运动通过应用到视频信号的帧的运动估计算法来确定。13.如权利要求11或12的方法,其中所述运动由封装有生成所述视频信号的相机的移动终端中的物理传感器来检测。14.如权利要求9-13中任一项的方法,其中所述量化箱大小分布依据接收终端的用户离接收终端的屏幕的距离来控制,所述距离是影响人类感知的参数。15.如权利要求14的方法,包括从接收终端接收所述距离的指示,以用于控制量化箱大小分布。16.如权利要求14或15的方法,其中所述距离通过所述接收终端的相机的自动对焦来确定。17.如权利要求14、15或16的方法,其中所述距离通过用户设置来确定。18.如权利要求9-17中任一项的方法,其中所述箱大小分布依据所述接收方终端的屏幕的宽高比、大小和分辨率中的至少一个来控制,该宽高比、大小和/或分辨率是影响人类感知的参数。19.如权利要求18的方法,包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的指示,以用于控制量化箱大小分布。20.如权利要求9-19中任一项的方法,包括将箱大小分布的指示传输到解码器,以用于解码视频信号。21.如任一前述权利要求的方法,其中所述视频数据在帧间或帧内编码之前被输入到量化器,使得该视频数据表示绝对值。22.一种压缩视频信号以用于传输到接收终端的解码器的方法,该方法包括:接收包括多个帧的视频信号,每个帧包括视频数据的多个部分;对于所述部分中的多个目标部分中的每一个,生成表示目标图像部分与相应参考部分之间的差异的差数据;以及在编码的比特流中输出差数据;其中该方法包括,在生成差数据之前,基于人类对视频数据的敏感度的测量修改所述目标和参考部分中的至少一个,以便降低编码差数据所需的比特数。23.如权利要求22的方法,其中所述修改降低差数据的量级并且从而降低编码差数据所需的比特数。24.如权利要求22或23方法,其中所述方法包括通过熵编码器输出差数据,并且所述修改降低所述差数据中的变化以便降低熵且从而将编码差数据所需的比特数。25.如权利要求22-24的任一项的方法,其中:所述方法包括将所述部分中的每一个变换到变换域中,以便针对每个部分生成包括一组变换域系数的变换的视频数据,每个系数表示在不同空间和/或时间频率处对该部分的属性的贡献;并且对于所述部分的多个目标部分中的每一个,差数据表示目标图像部分的系数与相应参考部分的变换域系数之间的差。26.如权利要求25的方法,其中所述修改包括基于人类对变换域系数的敏感度的测量修改所述目标和参考部分中至少一个的变换域系数的一个或多个,从而减少编码差数据所需的比特数。27.如权利要求22-26中任一项的方法,其中所述属性包括亮度和颜色属性之一。28.如权利要求22-27中任一项的方法,其中所述修改基于人类对视频数据的视觉结构的敏感度的测量。29.如权利要求22-28中任一项的方法,其中使修改的程度可依据影响人类感知的参数而变化。30.如权利要求29的方法,其中修改的程度在进行编码期间依据影响人类感知的参数而动态地变化。31.如权利要求30的方法,其中修改的程度依据视频信号中的运动而动态地变化,该运动是影响人类感知的参数。32.如权利要求31的方法,其中所述运动通过应用到视频信号的帧的运动估计算法来确定。33.如权利要求31或32的方法,其中所述运动由封装有生成所述视频信号的相机的移动终端中的物理传感器来检测。34.如权利要求29-33中任一项的方法,其中修改的程度依据接收终端的用户离接收终端的屏幕的距离来控制,所述距离是影响人类感知的参数。35.如权利要求34的方法,包括从接收终端接收所述距离的指示,以用于控制修改的程度。36.如权利要求34或35的方法,其中所述距离通过所述接收终端的相机的自动对焦来确定。37.如权利要求34、35或36的方法,其中所述距离通过用户设置来确定。38.如权利要求29-37中任一项的方法,其中修改的程度依据所述接收方终端的屏幕的宽高比、大小和分辨率中的至少一个来控制,该宽高比、大小和/或分辨率是影响人类感知的参数。39.如权利要求38的方法,包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的指示,以用于控制修改的程度。40.如任一前述权利要求的方法,其中:对于每一个目标部分,从多个潜在的参考部分之中选择相应的参考部分。41.如权利要求40的方法,其中所述多个潜在的参考部分包括一个或多个来自与目标部分相同帧的部分,该方法因此可用于帧内编码。42.如权利要求40或41的方法,其中所述多个潜在的参考部分包括一个或多个来自与目标部分不同帧的部分,该方法因此可用于帧内编码。43.如权利要求20、41或42的方法,其中所述相应参考部分基于编码差数据所需的比特数来选择。44.如权利要求40-43中任一项的方法,包括确定目标部分和参考部分的每一个的总能量,并且确定候选部分的子集,每个候选部分具有在目标部分的阈值范围内的块能量,其中相应参考部分从候选部分之中选择。45.一种传输编码的比特流的方法,包括:根据权利要求1-44中任一项编码视频信号,以及将编码的比特流传输到在接收终端处的解码器。46.一种压缩视频数据的方法,包括:接收限定视频图像的视频数据的流;对于由时间和/或空间数据限定的多个图像部分的每一个,将时间和/或空间数据变换到频域中以针对每个图像部分生成多个组的频域系数;基于用于每个组的客观和感知度量确定该组的索引值;使用索引值选择频域系数的至少两个匹配组;以及基于匹配组中一组与另一组的比较生成匹配组中该一组的残差。47.一种压缩视频数据的方法,包括:提供限定图像部分的图像数据的图像部分系数;将系数布置成组并且基于每个组的客观的和感知的度量确定该组的索引值;基于索引值对这些组排序以生成排序的列表;基于在列表中的接近性和感知度量选择至少两个匹配组;以及基于对匹配组中的一组与另一组的系数的比较生成所述匹配组中的该一组的残差。48.根据权利要求46或47的方法,其中所述图像数据是色度和亮度数据。49.根据权利要求46-48中任一项的方法,其中每个组表示块或对象。50.根据权利要求46-49中任一项的方法,其中所述图像部分包括具有像素的二维阵列的宏块。51.根据权利要求46-50中任一项的方法,其中所述图像部分包括视频流的单个帧,其中该方法用于在内帧中压缩视频数据。52.根据权利要求46-51中任一项的方法,其中所述图像部分包括多个帧,其中该方法用于帧间预测。53.根据权利要求46-52中任一项的方法,其中每个组包括系数的阵列。54.根据权利要求46-53中任一项的方法,其中所述索引值表示每个组的能量。55.根据权利要求54的方法,其中所述索引值基于具有零值的系数的数量。56.根据权利要求54的方法,其中所述索引值是系数的聚合组合。57.根据权利要求54的方法,其中所述索引值是组中系数的模量的平均值。58.根据权利要求46-57中任一项的方法,其中选择匹配组的步骤包括基于列表中的接近性确定候选群组,并且通过比较比特率贡献和感知质量从候选中选择最佳匹配。59.一种将视频数据从传输终端传输到接收方终端的方法,该方法包括:生成表示移动图像的视频数据的流;根据权利要求46-58中任一项的方法压缩视频数据;以及传输来自未被预测的组的视频流的系数和被预测的至少一个组的残差以作为编码的视频流的一部分。60.一种包括被配置成根据权利要求1-59中任一项操作的信号处理装置的编码器。61.一种计算机程序产品,其包括包含在计算机可读介质上的软件且该软件被配置成使得当其在处理器上被执行时执行根据权利要求1-59中任一项的操作。62.一种根据权利要求1-59中任一项编码的比特流。63.一种包括携带根据权利要求1-59中任一项编码的比特流的传输介质的网络设备。64.一种将根据权利要求1-59中任一项编码的视频信号解码的方法。65.一种将根据权利要求1-21中任一项编码的比特流解码的方法,包括基于在编码的比特流中接收的量化箱大小分布的指示解码该编码的比特流。66.一种被配置成根据权利要求64或65操作的信号处理装置的解码器。67.一种解码器程序产品,其包括包含在计算机可读介质上的软件并且该软件被配置成使得当其被执行时执行根据权利要求64或65的操作。

说明书

用于视频的数据压缩

技术领域

本发明涉及视频流的编码和传输。

背景技术

在视频流的传输中,正不断地努力来减少需要被传输的数据的量,同时仍然允许移动的图像在传输的接收端处适当地被重新创建。视频编码器接收包括要被编码的“原始”视频帧序列的输入视频流,每个视频帧表示在各自时刻的图像。该编码器随后将每个输入帧编码成两种类型编码的帧之一:内帧(intra frame)(也被称为关键帧)或间帧(inter frame)。编码的目的是压缩视频数据,以便当视频数据通过传输介质传输或存储在存储介质上时招致(incur)更少的比特。

使用仅来自正被编码的当前视频帧的数据来压缩内帧、典型地使用帧内预测编码,从而该帧内的一个图像部分相对于同一帧内的另一个图像部分被编码并被发信号传递(signal)。这类似于静态图像编码。另一方面,使用先前帧(参考帧)的知识来压缩间帧,并且该间帧仅允许参考帧与在时间上紧随它的当前帧之间的差的传输。这允许更加高效的压缩,特别是当场景具有相对较少的变化时。帧间预测典型地使用运动估计依据(in terms of)描述帧之间的图像部分的移动的运动向量来编码并发信号传递该视频,并且随后使用运动补偿来基于用信号传递的向量在接收器处预测该运动。用于视频通信的各种国际标准,比如MPEG 1、2 & 4和H.261、H.263 & H.264,采用基于在规则的块的基础上的源帧的划分的运动估计和补偿。根据分辨率、帧速率、比特率和场景,内帧可以达到间帧的20到100倍大。另一方面,间帧将依赖关系施加到高达最近的内帧的先前的间帧。如果任意一个帧遗漏,则解码当前间帧可能导致错误和伪影。

这些技术例如被用在H.264/AVC标准中(参见T.Wiegand,G.J.Sullivan,G.Bjontegaard,A.Luthra:“Overview of the H.264/AVC video coding standard,” in IEEE Transactions on Circuits and Systems for Video Technology,Volume:13,Issue:7,page(s):560-576,July 2003)。

图7图示用于例如根据H.264/AVC的基本编码结构将视频流编码成间帧和交错的内帧的流的已知的视频编码器。编码器接收包括要被编码的帧序列的输入视频流(每个帧被分成组成的宏块并被细分成块),并且输出随后可以被传输到解码器的量化的变换系数和运动数据。该编码器包括用于接收视频图像的输入宏块的输入端70、减法级(stage)72、正变换级74、正量化级76、逆量化级78、逆变换级80、帧内预测编码级82、运动估计&补偿级84和熵编码器86。

减法级72被设置成接收包括一系列输入宏块的输入信号,每个输入宏块对应于帧的一部分。减法级72从每一个宏块减去该宏块的预测,以便生成残差(residual)信号(有时也被称为预测误差)。在帧内预测的情况下,基于相同帧的一个或多个相邻区域从帧内预测级82提供块的预测(在经由逆量化级78和逆变换级80反馈之后)。在帧间预测的情况下,从运动估计&补偿级84基于先前帧的所选区域提供块的预测(再次在经由逆量化级78和逆变换级80反馈之后)。对于运动估计,借助描述先前帧中的所选区域的位置与在当前帧中正被编码的宏块之间的偏移的运动向量来识别所选区域。

随后,正变换级74例如借助离散余弦变换(DCT)将块的残差从空间域表示变换为变换域表示。也就是说,它将每个残差块从在不同的笛卡尔x和y坐标处的一组像素值变换为表示具有不同波数kx和ky(具有1/波长的大小)的不同的空间频率项的一组系数。随后,正量化级76量化变换系数,并且输出要经由熵编码器86被编码成视频流的残差信号的量化且变换的系数,从而形成用于传输到一个或多个接受者终端的编码的视频信号的一部分。

而且,正量化级76的输出也经由逆量化级78和逆变换级80反馈。逆变换级80将残差系数从频域变换回空间域值,其中它们被提供给帧内预测级82(用于内帧)或运动估计&补偿级84(用于间帧)。这些级使用逆变换的和逆量化的残差信号连同输入视频流的知识,以便产生内帧和间帧的局部预测(包括如在解码器处看到的已被正和逆变换和量化的扭曲效应)。该局部预测被反馈到减法级72,其产生表示输入信号与局部帧内预测级82或局部运动估计&补偿级84的输出之间的差的残差信号。在变换之后,正量化级76量化该残差信号,从而生成量化的、变换的残差系数以用于输出到熵编码器86。运动估计级84还经由熵编码器86输出运动向量以包括在编码的比特流中。

当执行帧内编码时,思想是仅编码并传输关于帧内的图像数据部分如何不同于同一帧内的另一个部分的测量(measure)。该部分随后可以在解码器处预测(给定一些用于开始的绝对数据),并且因此,仅需要传输预测数据与实际数据之间的差而非实际数据自身。该差信号典型地在量级方面更小,所以采用更少的比特来编码。

在帧间编码的情况下,代替帧内预测级82,运动补偿级84被切换到反馈路径中,并且反馈回路因此被创建在一个帧与另一个帧的块之间,以便相对于先前帧的块来编码该间帧。与内帧相比,这典型地采用甚至更少比特来编码。

图8图示了相应的解码器,其包括用于接收进入接受者终端的编码的视频流的熵解码器90、逆量化级92、逆变换级94、帧内预测级96和运动补偿级98。帧内预测级和运动补偿级的输出在求和级100处被求和。

存在许多已知的运动估计技术。一般地,它们依靠对块与来自先前帧(参考帧)的一个或多个其他图像部分的比较。从与块相同大小和形状的、但在水平和竖直方向上偏移任意数量的像素或者甚至分数数量的像素的区域预测每个块。所使用的区域的身份以运动向量的形式作为开销(“边信息”)被发信号传递。良好的运动估计技术必须平衡低复杂度与高质量视频图像的需求。还期望它不需要太多开销信息。

在上文所述的标准系统中,将注意的是,帧内预测编码和帧间预测编码(运动估计)在非量化的空间域中被执行。

最近,在变换域中操作的运动估计技术已经引起注意。然而,现有技术都不能够以低复杂度执行(从而减少计算开销),同时还实现(deliver)高质量。因此,当前实践中,对于运动估计不使用频域技术。

VC-1视频编码解码器具有在频域中操作的帧内预测模式,其中DCT(离散傅立叶变换)域中AC系数的第一列和/或第一行是根据紧接地位于所处理的块左边或上面的DCT块的第一列(或第一行)预测的。也就是说,位于一个块边缘的系数是根据邻近块中的直接空间邻居预测的。为了参考,参见“The VC-1 and H.264 Video Compression Standards for Broadband Video Services”,AvHari Kalva,Jae-Beom Lee,pp.251。

发明内容

本发明提供一种用于依据考虑人类对视频信号中的数据的敏感度的感知模型执行诸如量化、帧内预测编码或帧间预测编码之类的视频编码的一个或多个方面的技术。该感知模型可能涉及空间频率、时间频率、对比敏感度、颜色敏感度、结构度量和/或一个或多个影响感知的参数,比如视频中的运动、接收方用户离屏幕的距离以及接收方终端的屏幕的大小、宽高比或分辨率。

根据本发明的一个方面,可以提供一种编码视频信号以用于传输到接收终端的解码器的方法,该方法包括:接收包括多个帧的视频信号,每个帧包括视频数据的一个或多个部分;量化每个部分的视频数据;以及编码每个部分的视频数据;其中该量化根据量化箱(bin)大小分布来执行,该量化箱大小分布针对不同的视频数据使用不同的量化箱大小,其中该量化箱大小分布与人类对视频数据的敏感度的测量相关。

在实施例中,该方法可以包括将所述部分的每一个变换到变换域中,以便针对每个部分生成包括一组系数的变换的视频数据,每个系数表示在不同的空间和/或时间频率处对所述部分的属性的贡献;所述量化可以包括量化每个部分的系数;以及该量化箱大小分布可以针对不同的变换的视频数据使用不同的量化箱大小。

该量化箱大小分布可以与人类对在不同的空间和/或时间频率处的所述属性的敏感度的测量相关。

该量化箱大小分布可以针对所述系数中不同的系数使用不同的量化箱大小。

该属性可以包括亮度和颜色属性之一。

所述系数中的一些可以表示亮度且所述系数中的一些可以表示至少一个颜色属性,并且该方法可以包括使用不同的量化箱大小分布来量化亮度和颜色。

所述系数中的一些可以表示第一颜色通道且所述系数中的一些表示第二颜色通道,并且该方法可以包括用于第一和第二颜色通道的不同的量化箱大小分布。

该量化箱大小分布可以与人类对视频数据的视觉结构的敏感度的测量相关。

可以使量化箱大小分布可依据影响人类感知的参数而变化。

该量化箱大小分布可以在进行编码期间依据影响人类感知的参数而动态地改变,以便针对所述帧中不同的帧或这些帧的不同部分应用不同的量化箱大小分布。

该量化箱大小分布可以依据视频信号中的运动而动态地改变,该运动是影响人类感知的参数。

该运动可以通过应用于视频信号的帧的运动估计算法来确定。

该运动可以由封装有生成所述视频信号的相机的移动终端中的物理传感器来检测。

该量化箱大小分布可以依据接收终端的用户离接收终端的屏幕的距离来控制,所述距离是影响人类感知的参数。

该方法可以包括从接收终端接收所述距离的指示,以用于在控制量化箱大小分布时使用。

所述距离可以通过所述接收终端的相机的自动对焦来确定。

所述距离可以通过用户设置来确定。

所述箱大小分布可以依据所述接收方终端的屏幕的宽高比、大小和分辨率中的至少一个来控制,该宽高比、大小和/或分辨率是影响人类感知的参数。

该方法可以包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的指示,以用于在控制量化箱大小分布时使用。

该方法可以包括将箱大小分布的指示传输到解码器,以用于解码视频信号。

该视频数据可以在帧间或帧内编码之前被输入到量化器,使得该视频数据表示绝对值。

根据本发明的另一个方面,可以提供一种压缩视频信号以用于传输到接收终端的解码器的方法,该方法包括:接收包括多个帧的视频信号,每个帧包括视频数据的多个部分;对于所述部分中的多个目标部分中的每一个,生成表示目标图像部分与相应参考部分之间的差异的差数据;以及在编码的比特流中输出差数据;其中该方法包括在生成差数据之前基于人类对视频数据的敏感度的测量修改所述目标和参考部分中的至少一个,以便降低编码差数据所需的比特数。

在实施例中,所述修改可以减少差数据的量级并且从而降低编码差数据所需的比特数。

该方法包括通过熵编码器输出差数据,并且所述修改可以降低所述差数据中的变化以便降低熵并从而降低编码差数据所需的比特数。

该方法可以包括将所述部分中的每一个转换到变换域中,以便针对每个部分生成包括一组变换域系数的变换的视频数据,每个系数表示在不同空间和/或时间频率处对该部分的属性的贡献;并且对于所述部分的多个目标部分中的每一个,差数据可以表示目标图像部分的系数与相应参考部分的变换域系数之间的差。

所述修改可以包括基于人类对变换域系数的敏感度的测量修改所述目标和参考部分中至少一个的变换域系数的一个或多个,从而降低编码差数据所需的比特数。

该属性可以包括亮度和颜色属性之一。

所述修改可以基于人类对视频数据的视觉结构的敏感度的测量。

可以使修改的程度可依据影响人类感知的参数而变化。

修改的程度可以在进行编码期间依据影响人类感知的参数而动态地变化。

修改的程度可以依据视频信号中的运动而动态地变化,该运动是影响人类感知的参数。

该运动可以通过应用到视频信号的帧的运动估计算法来确定。

该运动可以由封装有生成所述视频信号的相机的移动终端中的物理传感器来检测。

修改的程度可以依据接收终端的用户离接收终端的屏幕的距离来控制,所述距离是影响人类感知的参数。

该方法可以包括从接收终端接收所述距离的指示,以用于在控制修改的程度时使用。

所述距离可以通过所述接收终端的相机的自动对焦来确定。

所述距离可以通过用户设置来确定。

修改的程度可以依据所述接收方终端的屏幕的宽高比、大小和分辨率中的至少一个来控制,该宽高比、大小和/或分辨率是影响人类感知的参数。

该方法可以包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的指示,以用于在控制修改的程度时使用。

对于每一个目标部分,该方法可以包括从多个潜在的参考部分之中选择相应的参考部分。

所述多个潜在的参考部分可以包括一个或多个来自于与目标部分相同帧的部分,该方法因此可用于帧内编码。

所述多个潜在的参考部分可以包括一个或多个来自于与目标部分不同帧的部分,该方法因此可用于帧内编码。

相应参考部分可以基于编码差数据所需的比特的数目来选择。

该方法可以包括确定目标部分和参考部分的每一个的总能量,并且确定候选部分的子组,每个候选部分具有在目标部分的阈值范围内的块能量,其中相应参考部分可以从候选部分之中选择。

根据本发明的另一个方面,可以提供一种传输编码的比特流的方法,包括:根据任意上述方法特征编码视频信号,以及将编码的比特流传输到在接收终端处的解码器。

根据本发明的另一个方面,提供一种压缩视频数据的方法,包括:为图像部分提供限定该图像部分的图像数据的系数;将系数布置成组并且基于每个组的客观的和感知的度量确定该组的索引值;基于索引值对这些组排序以生成排序的列表;基于在列表中的接近性和感知度量选择至少两个匹配组;以及基于对匹配组中的一组与另一组的系数的比较生成所述匹配组中的该一组的残差。

进一步的方面提供一种如上所限定的方法,其中选择匹配组的步骤包括基于列表中的接近性确定候选群组,并且从候选中选择最佳匹配,其中该最佳匹配基于比特率贡献和感知质量。

根据本发明的另一个方面,提供一种压缩视频数据的方法,包括:接收限定视频图像的视频数据的流;对于由时间和/或空间数据限定的多个图像部分的每一个,将时间和/或空间数据变换到频域中以针对每个图像部分生成多个组的频域系数;基于用于每个组的客观的和感知度量确定该组的索引值;使用索引值选择频域系数的至少两个匹配组;以及基于匹配组中一组与另一组的比较生成匹配组中这一组的残差。

在实施例中,图像数据可以是色度和亮度数据。每个组可以表示块或对象。图像部分可以包括具有二维阵列的像素的宏块。图像部分可以包括视频流的单个帧,其中该方法可以用于在内帧中压缩视频数据。图像部分可以包括多个帧,其中该方法可以用于帧间预测。每个组可以包括系数的阵列。

索引值可以表示每个组的能量。索引值可以基于具有零值的系数的数量。索引值可以是系数的聚合组合。索引值可以是组中系数的模量的平均值。

选择匹配组的步骤可以包括基于列表中的接近性确定候选群组,并且通过比较比特率贡献和感知质量从候选中选择最佳匹配。

根据本发明的另一个方面,可以提供一种将视频数据从传输终端传输到接收方终端的方法,该方法包括:生成表示移动图像的视频数据的流;根据任意上述方法特征的方法压缩视频数据;以及传输来自未被预测的组的视频流的系数和被预测的至少一个组的残差以作为编码的视频流的一部分。

根据本发明的另一个方面,可以提供一种包括被配置成根据任意上述方法特征操作的信号处理装置的编码器。

根据本发明的另一个方面,可以提供一种计算机程序产品,其包括包含在计算机可读介质上的软件且该软件被配置成使得当其在处理器上被执行时执行根据任意上述方法特征的操作。

根据本发明的另一个方面,可以提供一种根据任意上述方法特征编码的比特流。根据另一个方面,可以提供一种包括承载比特流的传输介质的网络设备。

根据本发明的另一个方面,可以提供一种解码根据任意上述方法特征编码的视频信号的方法。该方法可以包括基于在编码的比特流中接收的量化箱大小分布的指示解码编码的比特流。

根据本发明的另一个方面,可以提供一种包括被配置成根据解码的方法操作的信号处理装置的对应的解码器。

根据本发明的另一个方面,可以提供一种解码器程序产品,其包括包含在计算机可读介质上的软件并且该软件被配置成使得当其被执行时执行根据解码方法的操作。

附图说明

为了更好地理解本发明并且示出本发明可以如何实施,现在将以示例的方式参考附图,在附图中:

图1是视频流的两个帧的示意性图示,

图1a示出空间域中表示的块的像素值,

图1b示出在频域中表示的块的系数,

图2是示出编码方法的流程图,

图3是示出排序的块列表的曲线图,

图3a图示了块排序的示例,

图3b图示了块匹配预测的示例,

图4是编码器的示意性框图,

图5A是帧内预测的示意性示例,

图5B是帧间预测的示意性示例,

图6是解码器的示意图,

图7是编码器的示意性框图,

图8是解码器的示意性框图,

图9是对用于块匹配的候选的选择的示意性图示;

图10是编码方法的流程图,

图11是解码方法的流程图,

图12是传输的比特流的示意性表示,

图13a是块缩放的示意性图示,

图13b是块旋转的示意性图示,

图13c是块旋转的另一个示意性图示,

图13d是块旋转的另一个示意性图示,

图13e是示出在块旋转中使用的计算的图,

图14a示意性图示了两个帧之间的运动移位,

图14b是运动移位的另一个示意性图示,

图14c示意性示出使用运动移位来减少数据传输,

图15a-15h示意性表示感知模型的各方面。

具体实施方式

在下文中,描述一种用于在视频传输系统中数据压缩的方法和系统。首先,描述在频域中执行的块匹配的示例性技术,其用于选择要在目标块的预测编码(coding)中使用的参考块。接下来,描述用于用信号传递在视频预测编码中使用的参考块的身份的一些示例性技术,以及用于进一步降低传输的视频流的比特率的方案。而后,描述在频域中可以被有利地执行的一些示例性图像处理技术,用于进一步降低传输的视频流的比特率的方案,以及用于压缩视频数据的感知模型。在特别优选的实施例中,这些技术可以组合,但是可替代地它们可以独立使用。

块匹配

图1示意性图示了在两个相应的时刻t和t+1处视频图像的两个连续帧ft和ft+1。为了帧间预测的目的,第一帧ft可以被认为是参考帧,即在编码器处刚好已经根据移动序列被编码的帧,或者在解码器处刚好已经被解码的帧。第二帧ft+1可以被认为是目标帧,即为了编码或解码的目的其运动被设法估计的当前帧。为了说明的目的,示出了具有两个移动对象的示例。

运动估计本身在本领域中是已知的,并且因此在本文中仅在为本发明提供合适背景所必需的程度上被描述。根据用于视频通信的国际标准(比如MPEG-1、2 & 4和H.261、H.263 & H.264),运动估计基于对源帧的基于块的划分。例如,每个块可以包括4×4像素的阵列,或者在各种其他标准中的4×8、8×4、8×8、16×8、8×16或16×16像素的阵列。在图1中,用Bi表示示例性块。每块的像素数可以根据所需的精度和解码速率来选择。每个像素可以通过多种不同的方式来表示,这取决于根据标准采用的协议。在本文的示例中,每个像素由色度(U和V)和亮度(Y)值来表示(但是其他可能的颜色空间表示在本领域中也是已知的)。在该特定示例中,色度值由块中的四个像素共享。宏块MBi典型地包括四个块,例如对于4×4块而言的8×8像素的阵列,或者对于8×8块而言的16×16像素的阵列。每个像素具有相关联的比特率,该比特率是传输关于该像素的信息所需要的数据的量。

图2是根据本发明的优选实施例的数据压缩方法的示意性流程图。该方法优选地使用基于客观度量(objective metrics)的块匹配。即,将要被编码的当前目标块的一个或多个度量与多个其他块的对应度量进行比较,并且基于那些度量的相似性的测量来选择参考块。随后,该参考块形成用于借助预测编码(coding)来编码当前块的基础,该预测编码为在参考块来自相同帧ft+1的情况下的帧内编码或者在参考块来自先前帧ft(或甚至ft-1或ft-2等)的帧间编码。块匹配背后的思想是当当前块相对于参考块而被编码时选择将导致小残差信号的参考块(即,使得实际的当前块与预测之间的差在根据所选的参考块预测时将是小的),从而仅需要较小数量的比特来编码。

该技术的特别优选的方面是,在频域中实施块匹配,即基于块的变换的表示的一个或多个度量的比较来实施。

因此,在步骤S1处,在多个帧的每一个的图像的每一个部分上(例如在每个块上)执行频域变换。每个块最初被表达为空间域表示,从而该块的色度和亮度被表示为空间x和y坐标的函数,U(x,y)、V(x,y)和Y(x,y)(或其他合适的颜色空间表示)。即,每个块由在不同的空间x和y坐标处的一组像素值表示。随后将数学变换应用于每个块以变换成变换域表示,从而该块的色度和亮度(或类似)被表示为诸如具有1/波长的大小的波数kx和ky之类变量的函数,即U(kx,ky)、V(kx,ky)和Y(kx,ky)。即,该块被变换为表示可以被认为构成了该块的不同空间频率项的幅度的一组系数。这样的变换的可能性包括离散余弦变换(DCT)、卡-洛变换(KLT)或其他变换。例如,对于在块内离散的x和y坐标处N×M像素的块,DCT将会将亮度Y(x,y)变换成一组频域系数Y(kx,ky):

相反地,x和y表示Y(x,y)可以根据在kx和ky上求和的频域项的和来确定。因此,每个块可以被表示为具有相应幅度系数Y(kx,ky)的一个或多个不同的空间频率项的和(且对于U和V类似)。变换域可以被称为频域(在该情况下是指空间频率)。

在本发明的一些实施例中,可以在三维中应用所述变换。短的帧序列有效地形成三维立方体或长方体U(x,y,t)、V(x,y,t)和Y(x,y,t)。在三维变换的情况下,这些将变换成U(kx,ky,f)、V(kx,ky,f)和Y(kx,ky,f)。本文中使用的术语“频域”可以用于指依据从空间域变换的空间频率(1/波长的域)和/或从时间域变换的时间频率(1/时间周期的域)的任何变换域表示。

一旦块被变换成频域,通过比较当前块的变换的频域系数与多个其他块的变换的频域系数来执行块匹配。随后,用于当前块的预测编码的参考块(帧内或帧间)可以基于根据频域系数确定的块相似性的测量来选择。

在频域中块匹配的优点在于,该变换倾向于将块的能量压(compact)成仅一些非零(或不可忽略的)系数,并且因此现在可以仅基于仅一些频率系数而非块中的所有系数进行比较。即,由于频率变换将能量浓缩成仅一些重要系数,随后可以仅通过考虑那些少量的重要系数来执行高效的块匹配(或甚至其他处理)。该技术因此提供了针对在视频传输中数据压缩问题的独特方法。尽管在比较模式(pattern)时不是每一个像素都需要被直接比较,但是可以实现完全搜索。

例如,考虑如图1a和1b中所示的说明性情况。这里,块在频域中的表示是通过一种变换实现的,该变换将空间域像素值转换成空间频率。图1a示出空间域中四个8×8块的一些示例像素值,例如其可以包括在块内不同的像素位置x和y处各个像素的亮度值Y(x,y)。图1b是在变换和量化之后在频域中的等价物。例如,在图1b中,这样的系数可以表示可以以和的形式出现的不同的可能频域项的幅度Y(kx,ky)。空间域和频域中块的大小是相同的,即在该情况下为8×8值或系数。然而,由于这些变换的属性的缘故,于是块的能量被压成频域中的仅少量系数,因此整个块可以仅通过处理仅这些少量系数来考虑。

如从该示例可以看出,仅需要处理四个值以在频域中找到这四个块的匹配,而在空间域中,存在需要被处理的256个值。因此,不同于现有技术,本发明可以允许执行完整真实的搜索,而无需“触动”块中的每个像素,即无需处理每个单独的像素。

应当领会,尽管本文中提及了块和宏块,但是这些技术可以类似地用在图像中可定义的其他部分上。块和/或部分中频域分离可能取决于变换的选择。例如,在块变换的情况下,如离散余弦变换(DCT)和卡-洛变换(KLT)及其他变换,目标块或部分变成固定或可变大小的阵列。每个阵列包括一组变换的量化的系数。例如,在图5A的更详细的示例中,16×16像素的每个宏块MB可以在频域中用16个亮度块和8个色度块表示;每个块b0…b23具有量化的系数的4×4阵列。

根据本发明的另一个优选方面,块匹配可以基于反映块的相对重要性的索引值而在排序的列表内执行。在此情况下,匹配块的选择可以基于用于重要性索引的值的聚合来执行。现在将参考图2的步骤S2到S6和图5A的示例块来描述优选示例。

在步骤S2处,频域中的每个块b0…b23被分配索引值,该索引值是从其频域系数中的一个或多个得出的。例如,索引值可以表示块的能量。例如,这可以包括在块的系数上的聚合(例如零系数的数量、非零系数的数量或每个块中系数的模的平均值或总和)。

在步骤S3处,来自至少一个帧的块随后基于索引值而被排序。这可能涉及生成排序的列表,其中条目表示根据它们的索引值排序的块,例如它们的块能量。

在步骤S4处,通过基于索引值确定搜索范围或阈值Δ来从排序的阵列识别候选块的子集。候选块将是潜在的匹配,其作为用在对要被编码的当前块的预测编码(coding)中的参考块。在图3中图示了这一点。例如,这可以通过根据要被编码的当前块确定能量范围+/-Δ并且确定当前块的该范围内的所有块是用于作为参考块的潜在选择的候选(即,为了预测编码的目的用于“匹配”当前块的候选)来实现。

在步骤S5处,随后针对相似性评估候选块。例如,优选地基于比特率确定块相似性,其中比特率是需要传输的比特数的测量以便限定在根据每个候选块预测的情况下用于当前块的残差。这方面的示例不久将更详细地讨论。

在步骤S6处,最佳匹配候选基于其相似性来确定,并且当前目标块相对于该匹配候选而被编码。该编码包括从当前块的频域系数减去参考块的频域系数以便生成残差信号,以及随后将当前块的残差连同相应的所选参考块的身份编码成编码的比特流(而不是编码目标块的实际的绝对系数)。该参考块因此被用作当前块的预测。该残差是当前块的频域系数与参考块的频域系数之间的差,这需要编码更少的比特并且因此该编码导致压缩的视频信号。与对其他这样的候选而言所需的比特率相比,用作参考块的最佳候选优选地通过基于候选加上识别候选块的开销信息计算传输当前块的残差所需的比特率来选择。应当容易领会,匹配并不意味着相同的块,而是足够相似的块,使得残差可以以较低比特率传输。

图3是图示排序的阵列的布置的曲线图。在水平轴上示出排序的块的列表,而在竖直轴上示出块能量索引值。该块能量索引值是从块的系数得出的客观度量的示例。

如上所述,选择具有在某搜索范围或阈值Δ内的索引的最佳匹配参考块。因此,根据一个优选方面,本发明提供一种在多个块中基于它们索引的相似性搜索匹配的方法。通过利用它们的能量索引或类似物搜索匹配,这有利地将匹配的潜能扩展到该帧或另一个帧内的任何地方。因此,该匹配不需要被限制于目标块的邻近区域。例如,具有相似能量的块即使在位于帧的相对侧上的情况下也可以实现良好的匹配,例如在该帧中不同位置处出现的相似背景区域的块。

根据本发明的另一个优选方面,通过首先基于第一度量(例如索引值)选择候选块的子集,接着基于第二度量(例如比特率成本)从该子集内选择匹配候选块,来执行块匹配。随后该匹配块在对要被编码的当前块的预测编码中被用作参考块。基于第一度量、特别是基于诸如块能量之类的聚合度量使可能的匹配缩减到候选的初步(preliminary)子集的一个优点在于,不太可能的候选可以在早期被排除,而不引起显著的处理负担。即,该排序可以用于丢弃不太可能的候选。因此,基于第二度量的更处理器密集的比较,比如比特率比较,仅需要针对相对较少数量的预审查(pre-vetted)的候选来执行,从而减少了由块匹配算法引起的处理负担。例如,具有非常不同的块能量的块不太可能是良好的匹配并因此它不太可能值得比较它们的潜在比特率贡献的处理成本。为了最小化处理,在步骤S6中对匹配块的选择优选地在列表内的小邻域内执行(搜索范围+/-Δ)。

不过,注意到,该排序仅给出了匹配的某种可能性并且也可以依据性能考虑来选择。选择较小的Δ导致更低的处理成本,但导致更少的候选,从而冒着找不到最佳的可能匹配的风险。另一方面,选择较大的Δ引起更高的处理成本,但是将包括更多的候选,并且因此具有找到最佳匹配的更好机会。在实施例中,Δ甚至可以基于一个或多个性能因素(比如可用的上行或下行链路带宽或可用的处理资源)而被动态地适配。还注意到,不一定需要在+Δ方向上使用与-Δ方向上相同的Δ值。

应当领会,在步骤S3处,可以针对宏块(如图5A的示例中所示)、针对单个帧(用于帧内数据压缩)或针对当前目标帧和一个或多个参考帧(用于帧间运动估计)来生成排序的阵列。

在一个特别有利的实施例中,相同的排序的列表用于(通过确定该相同列表内候选的相应子集)匹配多个目标块。而且,如果该列表包含来自当前帧和一个或多个先前帧的块,则该相同列表甚至可以用于在相同的排序列表内的帧间和帧内匹配。例如,当处理特定的目标帧时,也许在该帧内找不到良好的匹配,在此情况下,该方法可以指望其他帧,因为复杂度低且匹配方法相同。根据本发明的优选实施例,与用于帧内的帧内匹配相比,不需要使用不同的方法用于找到帧之间的帧间匹配。

通过用针对整个帧或甚至多个帧执行一次的单个排序取代针对每个块执行的穷尽的、重复的搜索,匹配块的选择可以使用排序的列表在小邻域中执行。优选地,该排序针对多个帧被执行一次,使得帧间匹配和帧内匹配两者可以通过相同的排序的列表在相同的级处被处理。例如,这可能涉及在当前帧的排序的列表内寻找匹配,并且如果没有找到满意的匹配,检查一个或多个其他帧的排序的列表以找到更好的匹配。

因此,本发明的上述方面提供压缩视频数据的方法,其可以适用于帧内压缩和帧间运动估计。在过去,对于帧间数据压缩对帧内数据压缩,算法采用不同的方式。另一方面,本发明可以有利地提供用于帧内和帧间预测两者的统一技术。

该方法的另一个益处是,由于其低复杂度的缘故,与现有算法相比,所使用的参考帧的数量可能明显更高。

而且,注意到,常规运动估计预测来自在水平或竖直方向上偏移任意数量的像素或甚至分数个像素的区域的每个块,而本发明所使用的方式不同在于通过将预测限制于仅执行块到块匹配。即,在逐块的基础上的匹配,从而块被匹配到另一个整块(而非需要指定任意数量像素或分数个像素的运动向量的任意偏移区域)。在特征的特别有利的组合中,块到块匹配可以在频域中执行,其中可以通过仅预测两个或更多块之间的频域系数的子集得出效率。

一旦在步骤S6处选择了匹配块并且已经相对于该匹配块编码了当前目标块,频域系数的残差经由熵编码器而被输出以用于包括在编码的比特流中。此外,边信息包括在比特流中,以便识别参考块,每个编码的块将在解码器处根据该参考块被预测。每个块可以通过其位置来识别,即通过其地址或在特定帧内的位置。每个帧可以通过帧号来识别。由于上述差别,注意到,识别所选的参考块的边信息可以依据整体数量的块以识别参考块的位置的块地址的形式在比特流中被发信号传递。这可以采取绝对块地址的形式,即相对于帧中固定点的位置。可替代地,它可以采取相对地址的形式。如果候选可以从多个不同的潜在帧中选择,则该边信息还可以识别所选的参考块的帧。

这不同于常规的运动向量,其以相对于当前块的小向量的形式被发信号传递,该向量是任意数量的像素或分数个像素。

如上所述,VC-1视频编码解码器具有帧内预测模式,其中DCT域中AC系数的第一列和/或第一行是根据紧接地位于被处理的块的左边或上面的DCT块的第一列(或第一行)预测的。然而,这不同于本发明的各方面中使用的方式,其不同之处在于它被限于仅使用用于帧内预测的预定的空间邻近的系数。VC-1不允许针对所选的参考块的帧内匹配,例如基于块能量和/或比特率贡献选择的参考块(并且因此VC-1还涉及向解码器发信号传递所选的参考块的身份)。

图4是示出根据本发明的一个实施例的编码技术的架构的示意性框图。原始输入视频流由正变换级2接收。该级的输出被提供给正量化级4。正变换级2将空间或空间-时间变换应用到频域中作为第一编码步骤。正量化级2应用量化并且为每个块生成频域中的一组量化系数。在输入视频流的时间域中每个内帧的来自正量化级2的变换系数被提供给帧内预测级6。

该帧内预测级6操作来使用上述方法定位在每个帧内用于预测的候选块。从正量化级4向帧间预测级8提供间帧的变换系数,如上所述,这分离了用于预测目标帧的候选块。帧内预测级和帧间预测级8的输出被提供给熵编码器10,其编码数据以提供用于传输的编码流。该编码流包含信息序列,对于每个块而言,该信息序列包括一组系数(实际的或残差的)、限定该块是否要被预测的数据,以及如果是则包括要根据其预测该块的参考块的指示。参考块的身份可以在编码的比特流中被表示为帧内的绝对块位置,即通过引用固定点,而非相对于当前块的位置。可替代地,该位置可以在编码的比特流中被表示为当前块与被根据来预测该当前块的块之间的位置差异。不管怎样,块位置依据整体块的多个间隔来表达,即表达为块地址,并且因此获得了益处,因为与以像素或甚至分数像素表达偏移的常规运动向量相比,这需要少得多的编码开销。

注意到,该布置不涉及如在图7的标准编码器中的回到空间域的回路。因此,在变换的频域中基于频域系数执行块匹配。

还注意到,在优选实施例中,对参考块的选择在量化的域中执行,即非扭曲、无损的环境。因此,在执行选择之前,没有附加的扭曲被应用于候选块或当前块。

图5A示意性图示了预测示例,图5A中图示的情况是:其中该技术用于在一个帧中的相同宏块的不同块之间的帧内预测。图5A在左侧图示了被变换成宏块(16×16像素)的频域的亮度和色度数据。频率变换的系数被组织成块b0、b1等,每个块包括4×4系数的阵列。块b0到b15表示宏块的亮度数据(y),并且块b16到b23表示宏块的色度数据(u,v)。

存在用于处理色度和亮度通道的不同方案。普通的方式是4:2:0格式,这暗示色度通道在水平和竖直方向上被降低采样1/2。

在所示的示例中,块b0包含16个系数:一个DC(在坐标0,0处的第一个)和15个AC系数(该块其余的)。该DC表示亮度(对于“Y”块)和色度(对于“U”和“V”块)的所谓“恒定”值,并且这些AC形成可变部分,其意指对每个像素它们的贡献是不同的。DC和所有AC的组合被用于表示在基于所使用的变换进行解码之后每个像素的值。该16×16亮度频域系数“Y”被完全用于表示16×16空间域像素。在上述解释中,色度“U”被二次采样。该格式已知为YUV 4:2:0,其意指Y像素的每个2×2正方形的四个亮度像素分别共享一个“U”和一个“V”像素。

还存在已知为YUV 4:2:2或YUV 4:4:4的其他格式,其中在YUV 4:4:4中色度根本未被二次采样,或者其中色度具有是4:2:2中数据的两倍。本发明可以针对这些格式的任意一个工作。

在所述示例中,宏块的块b0到b23基于块能量或活力的测量(索引值)而被排序。图3a图示了块排序的示例。用于排序块的块能量可以以多种不同方式测量。根据一种技术,该排序基于块中零值系数的数量。在另一种技术中,使用非零系数的模数的平均值来实施该排序。使用块能量的测量Δ,在如图3中所示的排序的列表内建立搜索范围以识别候选块(图2的步骤S4)。随后如上所述基于比特率评估建立用于预测的最佳候选(图2的步骤S6)。

在图5A中的右首图图示了这些预测的效应。块b12被标记P1以将其表示为第一预测块。取代传输块b12中的实际系数,表示块b12与b10之间的差异的系数(残差)连同在传输的数据块12中已被根据参考块10预测的信息一起被传输。参考块10的指示也被传输,例如由其帧号和帧中的位置来识别。这在图5A的右首侧上的列表中示意性示出,其中P1表示预测1,在亮度块中块12减去块b10。下一个要选择的候选是标记为P2的块20,其根据块b21预测。该过程继续,并且在此情况下导致7个预测块。这导致要被传输的系数的数量减少了9(从132到123)。在特定示例中,当视频数据被编码以用于在箱(bin)中传输时,这具有如下效应:箱122和1008被移除,同时箱224和288的内容增加。在图5A中,箭头表示预测块与被根据来预测该预测块的块之间的关系。

图5B示出用于两个帧的不同宏块的不同块之间的运动预测的预测示例。

图6是用于解码已经经受上述技术的块预测的视频流的解码器的示意性框图。除了编码的系数之外,该视频流包括限定预测块的数据、已经被根据来预测这些预测块的块的身份、以及预测这些预测块的顺序。编码流被提供给熵解码器12,其针对输入数据确定要被解码的块是用于重构内帧还是重构间帧。用于重构内帧的块被传递到帧内重构级14,而用于重构间帧的块被传递到帧间重构级16。预测的块通过将残差添加到预测它所根据的块中的相应定位的系数来重构。重构级14和16的输出被提供给逆量化级18并且随后被提供给逆变换级20,其中量化系数被作为解码流而从频域变换成时域。

现在更详细地讨论用于基于比特率贡献匹配块的优选技术的细节。该技术借助量化的域中的块预测降低了视频压缩中的比特率。该方法的输入是例如一片(slice)变换的且量化的系数(例如,来自H.264的残差)的块或其一组这样的片。片意指一群宏块,所以每帧一片意指该帧中的所有宏块属于该片。对于当前片中的每个变换且量化的块,来自先前编码的片的块和当前片中的块(随后必须注意确保可解码流)是要被用于预测的潜在候选,以便减小比特率(与块自身的直接熵编码相比)。下文描述预测器的示例实施例和要被用于预测并需要边信息以识别该块的块的“最优”选择(需要用于解码器中重构的描述)。该边信息连同残差被熵编码器10熵编码成编码的比特流。

在优选实施例中,本发明使用两类度量执行块匹配:一类基于块的聚合或模式(例如能量、结构等),而第二类基于比特率。这两个度量被用在两个不同的级:用于排序的第一级和用于RD回路的第二级。在特别优选的实施例中,该RD回路速率目标不仅是找到可以根据速率接近地预测彼此的两个块,而且是同时针对块群解决该问题。一个简单示例可以是下面的模式--(a)1,2,1,2,1,2,1,2和(b)46,47,46,47,46,47,46,47,其将导致(a)1,2,1,2,1,2,1,2和(b)45,45,45,45,45,45,45,45。即,多个块可以根据相同的候选块的排序列表来匹配,潜在地包括帧间和帧内预测都基于相同的排序列表来执行。

由于在熵编码器10中算术或霍夫曼(Huffman)编码器(coder)之前改进的冗余移除的缘故,这些优点是改进的熵编码。与VC-1[1,pp.251]相比,存在多个潜在优点:(i)块中的所有系数被用在预测中并且不仅仅是第一行和/或列;(ii)帧/片中的所有块作为用于预测的候选块而非仅仅左边或顶部的块;(iii)广义预测结构,例如加权的预测或来自多个块的预测;以及(iv)显示速率估计以用于找到用于预测的最佳块(考虑用于边信息的成本)。

让X(m,n)表示在时间-实例n处量化的系数(例如量化的DCT系数)的块,m∈M(总共M个块构成一个帧/片)。这些块通常被馈送到熵编码器10(在H.264中更具体地为上下文自适应可变长编码器或上下文自适应二进制算术编码器)。即,从具有X(m,n)这一点,执行无损压缩,即扭曲是固定的。该方法借助预测器设法在算术编码器之前移除剩余的冗余(且从而减少速率)。在一个实施例中,该预测被形成为当前块与参考块之间的减法。用于预测当前块X(m,n)的最优索引(oopt, popt)基于速率计算/估计来选择,即:

其中R(X(m,n)-X(o,p))表示预测残差的比特率,且R(o,p)表示边信息的比特率(即,用于传输帧p的预测块索引o的比特率)。该速率估计可以例如从算术编码例程部件提供,其中符号概率取log2的和可以用于估计该速率。从例如计算方面来看,它可能还有利于通过使用与该速率良好关联的另一个测量来近似在公式[1]中的标准。一般地,可以使用以某种方式相关于在编码的比特流中编码残差块和识别相应参考块的边信息所需的(即对于在候选被选择为参考块的情况下对每个候选而言所需的)多个比特的任何度量,而不论该度量是直接测量的比特数或比特速率还是与数量/速率相关联的度量。

可以通过预先排序候选以使得潜在的良好候选位于排序的阵列中特定位置附近来使得对最优预测器的搜索在计算上更高效。现在,让Y(k,n)表示根据某测量的帧n的块系数m∈M的M维排序的阵列中的元素k。例如,块X(m,n)m∈M可以根据它们的上升的能量(或一些其他信号相关属性)来排序。

为了找到预测器,我们例如从光栅扫描顺序(或者从速率或计算复杂度角度上有利的一些其他顺序)中的当前帧/片中第一块开始,并且在当前帧的排序的阵列Y(n)和先前处理的帧的(重新)排序的阵列Y(n-NumRef),…,Y(n-1)中找到它的位置。NumRef是参考帧的数量,即这里为已被处理并可以用于帧间预测的先前量化的帧的数量。作为来自当前帧/片的预测候选,我们选择位于排序的阵列中当前索引周围+/-W范围内的候选,即插入表达式(1)中的“帧内”预测候选是对应于排序的索引Y(q(n)-W,n),…,Y(q(n)-1,n)和Y(q(n)+1,n),…,Y(q(n)+W,n)的块;其中,q表示排序的阵列中当前块的位置。注意到,必须特别小心以避免循环预测,即避免在块n已根据块m被预测的情况下根据块n预测块m,从而使得解码不可行。还应当提及,残差的直接编码(即,没有预测)也被作为用于速率估计的候选包括在内。

与选择帧内预测的候选相似,帧间预测候选被选择为Y(q(n-i)-W,n-i),…,Y(q(n-i)+W,n-i)i=1;NumRef。

根据公式(1)评估所有帧内和帧间候选,并且选择最优索引对。针对帧/片中的所有块重复该过程。所得的预测残差(变量/索引差)连同所需的用于解码的边信息例如被算术地编码并被发送到解码器。

参考图10,由解码器执行的方法的一个实施例如下:

步骤T1:根据某个测量对帧中的所有块排序。

步骤T2:设置块索引为m=0。

步骤T3:在排序的列表中找到块索引m的等效位置q(当前的和先前的量化的帧,即找到q(n),…,q(n-NumRef))。

步骤T4:帧内和帧间预测候选分别选择为:

Y(q(n)-W,n),…,Y(q(n)-1,n);

Y(q(n)+1,n),…,Y(q(n)+W,n);以及

Y(q(n-i)-W,n-i),…,Y(q(n-i)+W,n-i)i=1;NumRef。

搜索范围W的大小是性能与计算复杂度之间的权衡。

步骤T5:根据表达式[1]找到最佳候选或其某个近似。

步骤T6:向算术编码器发送最优预测残差连同边信息(例如帧内残差块的位置和被用于预测的块的位置(例如空间和时间))。

步骤T7:增加块索引m=m+1并且转到步骤T3,直到m=M,此时该方法移到下一个帧n=n+1。

参考图11,由解码器执行的方法的一个实施例如下:

步骤U1:解码所有预测残差和边信息(这给出了预测残差的帧连同对每一个块而言如何撤销预测的描述)。

步骤U2:重构所有不依赖未重构的块的所有块(即撤销预测)。

步骤U3:重复步骤U2,直到所有块被重构。

上述示例实施例可以以若干方式被扩展。例如,它可能有利于使用加权预测或根据多个块的预测。附加的边信息将需要被传输,该边信息对于加权预测和使用多个块的预测而言将是预测权重和块位置/地址。

图9中示出编码器中预测的图示。这给出了编码器中块预测的高阶图示。预测残差连同边信息被发送到熵编码器。在解码器中,执行逆过程,即首先重构残差帧,随后重构给定边信息的帧。

本发明的上述实施例可以提供若干优点。匹配块是通过检查块之间的差异来定位以确定最后传输的视频流的比特率相对于用于发送这些块的系数的比特率将被减少。而且,该预排序已经识别了发生该比较所在的候选块。这些块不必是图像帧中的物理邻居,而是,它们是基于与块关联的索引值排序的,比如表示能量的索引值。这允许从帧的任意部分(或者甚至不同帧)选择最佳匹配块。当选择最佳候选时,比特率的比较可以考虑需要被传输以识别该块是预测块并识别被根据来预测该块的块的开销信息。被根据来预测该块的块的身份可以以被表达为整体块的多个间隔的帧内的位置(即块地址)的形式而非以被表达为根据多个像素或者甚至分数像素的偏移的运动向量的形式而被提供给解码器。

上述方法在借助块预测在压缩的数字视频流中量化之前和/或之后移除了时间域和频域中的冗余。该方法的输入是输入视频流的时间域中一组帧的一组变换的和/或量化的变换系数。该输入视频流帧可以被分离成块和块群。块的群不受参加该群的各个块的位置的限制。该预测在当前帧(帧内)的块之间执行并且不受块的位置的限制而是受到块相似性因素的限制。相同的技术可以用于帧间预测。帧间块匹配也不受位置的约束。块相似性根据比特率减少的观点来确定。

而且,如所解释的,在优选的实施例中,在频域中实施处理,其中所述变换已经压缩目标对象的能量以使得现在可以使用一些频域系数而不是整个图像实施比较。在这些实施例中,该方法的两个组件,即频域中的处理以及排序与搜索,降低了复杂度,同时保持了非常高的质量。该方法的另一个益处在于,由于所涉及的计算的低复杂度的缘故,所使用的用于帧间运动补偿的参考帧的数量与现有算法相比可能明显更高。另一个主要益处在于,由于低复杂度的缘故,可以在若干级别的子块分割上进行匹配。即,图像部分可以是宏块、块或甚至比块更小数量的像素。这是因为所述方法实现了低复杂度并且因此引起更少的时钟循环,如果需要,其意指所节省的复杂度中的一些随后可以耗费用于搜索子块(诸如4×4或2×2子块)而非仅仅搜索块。可替代地,该搜索可以在例如16×16、32×32和64×64聚合块的更高级别处执行,这将节省在编码流中发信号传递它们所必需的边信息。

特定的优点产生于频域中的处理。尽管存在频域处理模型,但是不存在如在下面的实施例中所述的方法中的探测冗余减少的处理模型;特别地其提供一组独特的益处,包括复杂度减少、维持并改进视频质量以及同时降低编码的视频流的比特率。

该方法不需要回路滤波器或回到空间域的回路用于运动估计,这是因为以下事实引起的:所有处理现在集中在频域中。这是相对于现有编码方法和复杂度的显著降低这一点的主要优点。

另一个优点在于,对所有颜色分量的处理可以同时进行。即,在亮度通道中进行的处理可以影响在色度通道中进行的处理。

在频域中处理的另一个优点涉及位于帧或子帧的片的边缘上的块。即,位于帧的边缘上的块(或者如果使用多个片中子帧分离,则为在片的边缘上的块)可以被有效地预测。当根据相似性对块分组时,该方法允许块或片以任何顺序分组,并且因此在预测位于片或帧的边缘上的块的过程中不存在惩罚(penalty)。与在如MPEG-4 AVC/H.264的当前标准中当前的FMO(灵活的宏块排序)相比,这是重要的改进。

本文所描述的本发明的所述实施例的另一个优点在于,深子块子分割可以被利用,而无需过多的处理器负载。

注意到,上文所讨论的不同的优选技术不一定需要相互结合地被使用。例如,可以在频域中执行块匹配,而不使用基于块能量或其他这样的索引的排序列表的附加技术。对于帧内和/或帧间块匹配,还可以使用可替代的块匹配技术,例如通过基于关联的测量或最小误差的测量来匹配。相反地,可以使用用于块匹配的排序技术,而无需频域变换,例如通过基于空间域系数确定块能量的测量(尽管这是较不优选的,因为它将倾向于在计算上更密集)。

而且,在排序被作为一种确定搜索范围Δ内的候选的子集的方法时,注意到不一定需要重新布置存储器中的列表条目。更一般地,针对候选的搜索可以通过识别具有在期望范围内的能量或其他索引的块的任意方法来执行。

而且,排序索引不一定需要是块能量的测量。另一个可能性将是涉及块的结构的度量,比如结构相似性索引(SSIM)。在其他实施例中,多个度量可以被组合,以便确定用于排序的索引。而且,一旦该列表被排序,则本发明的各方面不一定需要被限于基于比特率贡献从候选中找到最佳匹配。其他第二度量可以用于此目的,例如在H.264中使用的基于更常规的运动的匹配。

通过地址发信号传递块

上文描述了从帧选择参考块的特别有利的方法;但是不管如何从帧选择块,本发明提供了编码参考块的身份以用于传输到解码器的改进的方法。现在更详细地讨论发信号传递用于在频域中预测的帧内和帧间预测信息的方法的示例性细节。

如所提及的,根据本发明的一个方面,块仅被匹配到另一个整块,而非如在更传统的块匹配技术中那样匹配到偏移任意数量的像素的块大小的区域。因此,本发明的用信号传递的算法发送块地址而不是运动向量,即用整数块而非像素偏移来表示。然而,注意到,尽管在本文中可以使用术语“块”,但是在其最一般的意义下,这并不旨在暗示特定大小、形状或级别细分。应当领会,在不同的方案中,各种不同的分割和细分可以通过诸如宏块、块和子块等之类的术语指代,但是如本文最一般地使用的术语“块”可以对应于这些中任意一种或者甚至对应于作为对应于多个像素的视频帧的分割的任何其他组成图像部分。无论使用什么分割方式,根据本发明,用于预测的参考部分的地址作为整体数量的多像素部分而非像素偏移而被发信号传递。

在实施例中,比特流还可以包含一个或多个预测方法标志,其指示要被解码器使用的预测方法(对应于被编码器使用的预测方法)。

而且,比特流可以包含参考块的帧号,因为用于预测的参考块可以从多个不同的帧的任何一个中选择。

在一个特别优选的实施例中,在比特流中被向解码器发信号传递的边信息包括:帧号、加法或减法标志、绝对值标志、宏块地址、宏块内的块地址以及块内的子块地址。该边信息的信令结构在下表中示出。

对于每个分辨率,预测索引可被编码如下。这示出信令结构大小和针对多个不同分辨率的编码。

该改进的预测方案比当前预测方案更有效,当前预测方案使用更高比特率发信号传递该改进方案可以传输的信息的仅仅一部分。流线型的帧间和帧内预测允许简化的发信号传递的方法。图3b示出实现比特节省的块匹配预测示例。下面的表示出有效的边信息和用于多个分辨率的编码。

借助“全局块列表”用信号传递块

下文描述了编码参考块的身份以用于传输到解码器的第二改进方法。不管如何从帧选择块,这再次可以被使用。而且,在实施例中,该方法可以扩展可用的候选以包括某些“概念性的(notional)”或“仿真的(artificial)”块(而非仅仅包括在实际帧中出现的实际块)。

如参考图12所讨论的,根据本发明的这个方面,编码器生成具有最有规律地(经常)使用的块特性的预测块(即在预测中使用的参考块)的表格。表格中的块随后可以在编码的信号中被参考,来取代帧中的块。在编码期间,确定最常见的块的列表,并且该列表将被动态地更新以用于传输到解码器。因此,编码器生成临时(ad hoc)码本以用于将参考块用信号传递到解码器。

例如,诸如图1b、5A或5B中所示的某些块可以在要被编码的某个帧、帧序列或帧的一部分内更有规律地出现(即更多数量的情况)。如果某些块(即块系数的某些组或近似组)足够频繁地出现,则可能变得更有效地动态地维持并向解码器传输这些有规律地遇到的块的查找表并且随后通过参考查找表中的条目发信号传递在预测编码中使用的参考块的身份,而非通过某些其他手段(比如运动向量或块位置地址)来识别块。

表条目#    块定义

0          Ba(…)

1          Bb(…)

2          Bc(…)

3          Bd(…)

4          Be(…)

等…。

每个块定义指示块系数的某个相应的有规律地遇到的组(或近似组)。

优选地,表格被周期性地更新和传输,并每个更新的表格可以被交织在编码的数据流中(但是不排除单独传输的其他方法),如图12所示。因此,在某个表Ln-在比特流中被传输到解码器之后,随后一个或多个后续的编码块(n,1)、(n,2)等(其中每一个编码块基于另一个参考块通过预测编码而被编码)中的每一个连同指示查找表中的相应条目的边信息Sn,1、Sn,2被传输。当查找表被更新且被重传(Ln+1)时,随后后续的边信息Sn+1,1于是可以通过指示更新的表中的条目将在预测中使用的参考块用信号传递。解码器将接收到的最新的查找表L的副本存储在比特流中并且将它与边信息S结合使用来识别在预测要被解码的当前块中使用的参考块(并且将预测的块与相应的残差数据组合)。

当在频域中执行块匹配时,该技术特别有用,因为每个块的能量压成仅少量的非零系数,例如参见图1b。在此情况下,在块匹配过程中某些块有可能被经常地选择来足以使动态查找表的维持和传输成为高效的技术选择。尽管如此,所描述的技术不限于频域处理,也不限于基于块排序的选择,并且还可以用于对其他块匹配技术的结果编码。

注意到,在最实用的实施例中,查找表将不是穷尽的,即一些参考块将不通过块匹配过程而被非常有规律地选择,并且这些块将不包括在查找表中。这样的参考块可以通过不同的方法在编码的比特流中被用信号传递,例如优选地以标识帧中的绝对块位置的块地址或当前块与相应参考块之间的相对块地址的形式。即,依据整数个多像素块来表达块位置(而不是如在传统的运动向量中那样的任意数量的像素或分数个像素)。

在实施例中,最有规律的参考块的实际系数可以在查找表L中被用信号传递到解码器(但是对于编码器和解码器而言可替代的方案是具有可以潜在地在任一端处预先存储的表格中被用信号传递的所有可能的块定义。

因此,根据上述技术,频繁地出现在匹配块的多个帧中的块的子集将在群组中单独地被传输到解码器。在特别优选的实施例中,该群组可以不仅包括现有块,而且可以包括具有帮助预测过程并根据输入流中的块计算的系数的组的“仿真”块。即,该群组中的一些或所有块不需要是帧的实际块,但取而代之可以是概念性块,其包括可以由系统设计者设置或由编码器计算(例如通过从在视频中有规律地找到的其他实际块取平均、内插或外插)的预定义的“仿真”块。在优选实施例中,这些仿真块将包括在排序的列表中或者在块匹配过程中作为候选。

例如,假设具有规律地处于例如200到210的某个范围内的特定频域系数的多个块有规律地出现。在这种情况下,编码器可以利用在例如205的那个范围内的平均值或内插量级创建具有相应系数的仿真块。这样,相对于该仿真块编码的有规律相似的块将仅导致小残差,例如典型地大小不超过大约5,从而降低了编码该残差所需的比特率。特定系数的这个示例是为了说明起见而被考虑的,但是注意到,该方案的最大益处将在块以多个系数的相似模式有规律地出现时实现,在此情况下,可以生成具有接近多个这些块的近似模式的仿真参考块(单个系数的情况无论如何可能在熵编码器中被很好地处理)。这些多系数块倾向于引起编码的信号中的大多数比特率。

填入查找表的块的群组在本文中可以被称为“全局群组”,其可以包括仿真块和/或从视频的一个或多个实际帧中提取的实际块。如上所述,全局群组基于在预测编码中使用的规律性被动态地更新。

最佳候选优选地被选择为最低比特率贡献者,其选自全局群组中的块组和任何组合的帧中的实际块。

该算法的一个独特方面在于应用块的全局群组来辅助预测过程的方法。现有块提取到全局群组将进一步降低比特率。

该群组的成员将在编码过程期间被定义并且将基于速率计算(即在编码的比特流中将需要多少比特),从而创建作为针对帧的一个或多个片中的一组块的最佳预测者的一组系数,且不必是现有块。

由于该过程的速率预测性质,于是不必寻求完美匹配,而要寻求允许找到取代精确模式的最接近的匹配的速率降低。

帧中的所有块或仅作为全局列表提交的块可以以此方式被移位,创造比特率降低的另一个机会。而且,帧的片可以与全局群组的部分一样被移位。

查找表将通过允许解码器从表格中除去(drop)将不再需要的块,并且利用来自输入流的新的块更新它们。

在实践中,查找表可能不总是用信号传递参考块的有用方式,例如如果编码器确定很少或没有块比任何其他块更大量地被选择。在这种情况下,查找表实际上可能不节省比特流中的比特,因为它将很少被参考,同时它自身引起在开销方面的多个比特。因此,在特别有利的实施例中,编码器可以被配置成检测某个比特节省阈值,并且如果该节省是小的或者甚至是负的,则它将停止使用查找表方法(并且停止发送更新),并且取而代之将通过诸如利用它们在流内的地址识别参考块的位置的另一手段来用信号传递参考块。为了通知解码器使用哪一种编码方法,编码器也将指示查找表方法当前是否正被使用的标志包括在比特流中。该标志也可以被周期性地发送,或者当编码器决定改变模式时基于自组织(ad-hoc)地发送。

这里描述的算法是无损的。可以使该编码和解码过程成为非常低复杂度的算法,因为该过程在频域中对非常小的系数组操作(与复杂度按指数方式更高的空间域过程相比)。

缩放和旋转

在空间域中执行运动估计的常规编码解码器的一个缺点是它们需要高的计算的复杂度以便基于非横向(非平移)运动(即缩放或旋转)处理预测。缩放发生在相机镜头拉近或拉远时,或物体更靠近或更远离相机移动时,或者甚至在该物体膨胀或收缩的情况下时。旋转发生在相机和物体或背景相对于彼此旋转时。

在频域中执行运动估计的优点是大大降低了处理缩放和旋转类型预测的复杂度。

例如,考虑图13a的说明性示例。在左首侧上表示某时间点处的块B,包括频域系数C。即,该块可以被认为包括频域项,比如振幅为C的正弦曲线,该振幅随跨越块的某个波长而变化,例如表示跨越块的色度或亮度的变化。在图13a的左上示出色度或亮度的正弦变化的示例,并且用于表示块的对应的系数阵列在左下示出。当然,其他频域项也可以存在,但是为了说明的目的,这里仅示出了一个。

现在,当相机缩小所讨论的物体或场景(或者该物体已经向远处移动或收缩)时,考虑在稍后的时间点处的对应的块B’。如在图13a的右上所示,这意味着频域项的波长减少。为了说明性的示例,假设变焦导致波长减半:块的频域表示中的效果是系数C从一个位置移动另一个位置,如图13b的右下所示。即,块的能量从块的一个频域系数被重新分配到另一个频域系数。实际上,不太可能存在突然缩小到确切地一半波长,但是变焦仍然可能导致块能量从一些系数到其他系数的逐渐“消退”的转变(transition),即表示较低频域项的振幅的系数将逐渐减小,而表示较高频率项的系数逐渐增大。例如,在图13a中的第二(右首)位置处的系数将逐渐增大,其以第一(左首)位置处的系数为代价。相似的效果将发生在放大的相反方向(或物体移动地更近或扩大)。

给定这种情境,一个块的缩放运动可以根据另一个块来预测,并且可以仅使用很少的比特相对于该块而被编码。块的变换的表示允许该预测和编码以低比特率和低计算负担实现,因为在频域中,该缩放将典型地仅涉及频域项的非常低的复杂度转变。

在一个情境中,该缩放可以仅按照一个块与另一个块的频域系数之间的差来编码,其依据是:随着块的能量从一个频域系数逐渐消退到另一个频域系数,一个块到下一个块之间的残差将是小的。然而,根据本发明的另一方面,该编码器可以估计缩放的某个参数并且将该参数作为编码的比特流中的边信息用信号传递到解码器。例如,该参数可以包括缩放因子的指示,该缩放因子指示目标块可以通过将所选的参考块缩放某因子+/-S(例如某百分比的放大或缩小)来预测。该缩放可以在解码器中通过合适的图像分析算法来估计或通过相机的自动对焦特征来估计。

在缩放因子的估计被用于编码的情况下,残差将表示缩放的预测与实际的目标块之间的差,并且将甚至更小,因此需要甚至更少的比特来编码。即,编码器估计要被用于所选的参考块的缩放的局部预测,从目标块的频域系数减去缩放后的参考块的频域系数,以便生成残差(在实践中,这仅涉及比较该块内来自各移位的位置的系数),并且随后以残差、缩放参数的指示和参考块的指示的形式编码目标块。用信号传递的缩放参数使得解码器能够确定移位或转变应用到参考块的频域参数,以便重新创建预测的版本。随后,在解码器处添加频域残差重新创建目标块。可替代地,在非无损的情况下,该残差可以从编码和解码中完全省略。

可以通过在频域中预测旋转实现相似的低复杂度比特率节省。在图13b中示出说明性示例。

在该示例中,左首侧再次表示在某个时间点处的块B,具有频域系数C,其表示频域项,比如振幅为C的正弦曲线,该振幅跨越块在水平或竖直方向上随某个波长而变化(例如表示色度或亮度的变化)。在图13b的左上示出色度或亮度的正弦变化的示例,并且用于表示块的对应的系数阵列在左下示出。在此情况下,第一块B中的系数C表示跨越块在水平方向上的某个变化。再次注意到,其他频域项也可以存在,但是为了说明的目的,这里仅示出了一个。

现在,当相机或物体旋转了900时,考虑在稍后的时间点处的对应的块B’。如在图13b的右上所示,这意味着频域项从水平向竖直取向(orientation)被翻转(flip)。块的频域表示中的效果是系数C绕着从一个位置到另一个位置的对角线轴被翻转,如图13b的右下所示。即,块的能量从块的一个频域系数被重新分配到另一个对应的系数,其表示相同的频率项但在跨越块的横向方向上。

实际上,不太可能存在突然的直角旋转。然而,该效果可以被推广到其他角度的旋转。这利用以下事实:块或宏块被旋转时倾向于近似地具有相同的总能量或平均能量,即所讨论的物体没有发射更多的光,仅改变相对于相机的取向。如图13c所示,在推广的旋转中,某个稍后帧F’的目标块(中心)可以基于来自较早帧F的参考块来预测,并且对来自邻居的块能量的贡献可以被近似为小(贡献在图13c中用阴影黑色示出)和/或类似于来自其他区域的邻居的能量损失。

因此,当图像旋转时,块的能量将逐渐在系数之间消退。即,来自在一个位置处系数的能量逐渐被重新分配给它的对角对应物(counterpart)。例如,在下面的旋转中,因子“a”和“b”通过图13e所示的计算给出。

即,a=sin(α)且b=cos(α),其中α是旋转的角度。优选地,编码器将使用一组在计算上相对低复杂度的旋转(比如300、450、600和900)之一作为最佳近似来估计旋转。

对于300,a=1/2,b=(√3)/2

对于450,a=1/(√2)且b=1/(√2)

对于600,a=(√3)/2,b=1/2。

随后,残差可以编码近似的预测旋转与实际块之间的差。

在一个情境中,该旋转可以仅依据一个块与另一个块的频域系数之间的差来编码,其基础是:随着块的能量从一个频域系数逐渐消退到另一个频域系数,则一个块与下一个块之间的残差将是小的。然而,在本发明的另一个方面,编码器可以估计旋转的某个参数并且将该参数作为编码的比特流中的边信息用信号传递到解码器。例如,该参数可以包括旋转角度,其指示目标块可以通过将所选的参考块旋转指定角度来预测。该旋转可以在解码器中通过图像分析算法来确定或通过其中封装相机的移动终端的陀螺仪传感器来确定。

在旋转角度的估计被用在编码中的情况下,残差将仅表示旋转的预测与实际的目标块之间的差,并且将甚至更小,因此需要甚至更少的比特来编码。即,编码器生成要被应用于所选的参考块的旋转的局部预测,从目标块的频域系数减去旋转后的参考块的频域系数,以便生成残差(在实践中,这仅涉及比较系数的行与列,且反之亦然),并且随后以残差、旋转角度的指示和参考块的指示的形式编码目标块。用信号传递的旋转参数使得解码器能够确定翻转或转变以应用到参考块的频域系数,以便重新创建预测的版本。随后,在解码器处添加频域残差重新创建目标块。可替代地,在非无损的情况下,该残差可以从编码和解码中全部省略。

在实施例中,编码器将具有使用横向、缩放和旋转类型的运动预测的选项以用于编码任意给定的目标块。在这种情况下,提供用于选择针对每个目标块要使用的预测类型的机制是有用的。对于潜在的参考块群组,一个这样的机制是编码器根据类型层级轮流尝试每种类型的预测。优选地,编码器首先基于每一个候选尝试横向(即平移)类型预测(这典型地是最小计算复杂度类型的运动预测)。如果找到了将导致在最大阈值内的比特率贡献的匹配,则基于该匹配使用横向类型的预测,并且匹配过程在这里停止,使得对于该目标块而言甚至不考虑缩放和旋转类型预测。即,如果使用横向类型预测发现基于最佳匹配参考块来编码目标块的边信息加上残差所需的比特数处于某个阈值内,则使用横向预测且忽略其他类型,以便尝试避免浪费不必要的机器循环。然而,如果使用横向类型预测没有找到将提供在阈值内的比特率贡献的匹配,则可以尝试缩放或旋转类型预测之一。例如,层级中的下一个可以是缩放。因此,编码器基于列表中的每一个候选尝试缩放类型预测,并且测试如果使用缩放替代横向预测,最佳匹配候选是否落入最大比特率贡献阈值内。如果是,则它使用缩放类型运动预测基于最佳匹配参考块编码目标块,并且停止针对该目标块的块匹配过程。然而,如果不是,则编码器随后针对列表中的每一个候选尝试旋转类型预测,并且测试使用旋转类型预测最佳匹配是否落入比特率贡献阈值内。如果是,它相应地编码目标块。如果没有找到在最大比特率贡献阈值内的匹配候选,则编码器可以接受糟粕中的精华,或者可以扩展候选的列表,或者可以通过传统的帧内编码或绝对值的编码来进行编码。

在其他实施例中,所述层级可以是不同的,例如横向、旋转、缩放。可替代方案将是一起比较所有类型的预测而没有层级。然而,这将引起高处理负担并且不太可能是直播视频流所期望的。

编码器可以用信号发送编码的比特流中预测类型的指示,因此解码器知道应用什么类型的预测。如所提及的,编码器也可以用信号传递运动的参数。在旋转的情况下,用信号传递的信息可以指示缩放程度。在缩放的情况下,用信号传递的信息可以指示缩放因子。该信息允许解码器基于用信号传递的旋转重构目标块的预测。

参照图13d,如上所讨论的,频域中的旋转的预测可能在与从排序的列表中选择参考块选择的特征组合时是特别有利的。图13d示出屏幕或视频窗口50。如图所示,如果大区域(area)被旋转,则实际上可以在屏幕或观察窗口50内大距离之外发现针对目标块B’的旋转类型预测的紧密匹配候选B。仅基于图像的空间邻近区域来预测块的传统的编码解码器将遗漏这种情形。然而,根据本发明的某些方面使用排序的列表,来自屏幕的任何部分的块都可以变成用于预测的候选。特别地,当该列表根据块能量排序时,则相互的旋转非常相似的各个块将在排序的列表中变得非常接近(不管相互间的距离),因为旋转典型地涉及总块能量的少许变化。因此,基于块能量的相似性识别候选的排序的列表特别可能找到用于旋转类型预测的良好候选。

缩放和旋转类型的预测也可以使用根据上文所讨论的种类的全局块列表用信号传递参考块的特征来有利地实现。在这种实现方式中,全局块列表中的参考块可以包括缩放的和旋转的模式的表示。例如,可以生成适合根据多个不同类型的预测对多个目标块的预测编码的仿真参考块。

例如,考虑具有被浓缩到下述两个非零系数中的能量的仿真参考块:

这可以用于根据具有降低的比特率的下述预测的任何一个将4×4目标块编码。

900旋转

450旋转

缩小

缩放将适用于其中的空间相关性的示例是4:2:0和4:2:2格式的颜色表示,其中缩放通过颜色采样来定义。

该方法允许预测由于每个块正在覆盖的模式的相似性引起的缩放或旋转的块。该旋转或缩放在相同的块中将被表达为系数的重排序。由于该过程的速率预测性质,则不必寻求完美的匹配,而是寻求允许找到最接近的匹配而非准确的模式的速率减少。

超分辨率

如图14a和14b所示,当在接收器处重构图像时,有可能叠加相互偏移像素的小部分的帧以便实现更高分辨率。该思想可以被称为“超分辨率”。

图14a图示了具有由相机的像素大小限定的某特定分辨率的像素网格(光栅)。当帧被捕获时,图像具有网格的每个单元一个像素值的分辨率,即每个像素一个值(限定单个像素所需的每统计,例如在YUV颜色空间中每像素Y的一个值、U的一个值和V的一个值)。现在假设像素网格向右偏移大约半个像素并且向下偏移大约半个像素,要么因为相机稍稍移动,要么因为正被捕获的场景或物体相对于相机移动。如果该移动是已知的或者可以被估计,则有可能通过叠加从两个偏移网格捕获的值重构更高分辨率的图像。在图14a的示例中,这导致针对相机的传感器阵列的每个实际物理像素的四个“超分辨率”像素A、B、C和D。每个超分辨率像素值可以例如通过对该超分辨率像素值有贡献的两个重叠的真实像素值之间的内插来确定。

图14b更详细地图示了所述思想。为了说明,假设存在具有仅2×2传感器阵列的四个像素的相机,并且在某时刻处的第一帧中,仅捕获在顶部的两个像素中出现而没有在底部的两个像素中出现的物体。因此,在第一帧中,该物体仅贡献于顶部两个像素而非底部两个像素。随后,假设到在稍后的时刻处的第二帧,物体已向下移动半个像素,或者相机已向上移动半个像素。现在当物体在第二帧中被捕获时,该物体的不同区域在所有四个像素中出现,并且因此它贡献于所有四个像素值。

在像素网格中叠加小部分移位的思想在过去已经被用于增加例如卫星图像的分辨率。如所提及的,该思想可以被称为“超分辨率”,或者有时在卫星图像的背景下被称为“遥感”。然而,该技术在过去仅被用于增加分辨率以超越所讨论的相机或检测器的固有的物理分辨率。例如,一些卫星检测器仅具有阶(order)为1km的分辨率的一个“像素”,并且依靠该技术来大大地改进卫星检测器的分辨率。

然而,先前没有人考虑过一下这样的可能性:故意传输具有比相机的固有分辨率更低的分辨率的视频图像,随后使用超分辨率方案来在接收器处重构具有更接近相机的固有分辨率的分辨率的图像。该思想是本发明的另一个方面的主题。优点在于所传输的视频帧每单位时间需要更少的比特。即,取代使用真实大小的像素的小部分移位来提升分辨率以超越相机的自然分辨率,本发明的一个方面取而代之地使用超分辨率技术来传输更大图像单元的平均值,其每个单元对应于多个真实像素,(因此该平均单元具有比真实相机分辨率更低的分辨率)并且随后在接收器处重构真实相机分辨率(或者至少比平均单元更高的分辨率)。

联系图14c讨论了一个示例。这里,捕获了具有更高分辨率值A到P的图像的区域:

在一些实施例中,这些更高分辨率值可以对应于从相机的传感器阵列的各个像素中捕获的值。然而,在其他实施例中,这些更高分辨率值不一定需要对应于相机的像素的实际物理大小,而是可以表示将被所讨论的编码器以某特定操作模式使用的最小大小单元。这一点是:下面的编码器将编码具有甚至更低分辨率的帧,即通过对更高分辨率值的群组取平均或以另外方式组合来创建由相应的更低分辨率值表示的更大的、更低分辨率的单元。在图14c的示例中,更低分辨率单元是更高分辨率值的2×2群组,但是应当领会,其他方案同样可以被很好地使用。

在序列中的初始帧帧0处,编码器对较高分辨率值F、G、J和K取平均(或者以其他方式组合它们,例如合计)。该平均值为覆盖四个较小的较高分辨率单元的相应群组的区域的单个、较大、较低分辨率单元提供了单个整体上较低的分辨率值。对邻近的群组执行类似的取平均,从而生成由相应较低分辨率值表示的较大大小单元的较低分辨率网格。编码器随后仅基于平均值的较低分辨率网格编码并传输该帧。

注意到,在实施例中,图像仍然可以被分成块和/或宏块,其中每个块或宏块包括多个较低分辨率单元(但是少于以较高分辨率表示的情况)。在这种情况下,作为编码过程的一部分,多个较低分辨率单元的块仍然可以被变换到频域中,但是根据本发明的特定方面该变换可以被认为是可选的。无论哪种方式,超分辨率算法在空间域中操作(即,如果存在频域变换,则该超分辨率算法发生在编码器处的变换之前和在解码器处的逆变换之后)。

在序列的第一后续帧帧1处,编码器将较低分辨率网格向上和向左移位一个较高分辨率单元。该编码器随后对较高分辨率值A、B、E和F取平均以针对单个、较大、较低分辨率单元创建单个整体较低分辨率值,该单个、较大、较低分辨率单元覆盖四个较小的较高分辨率单元的相应群组的区域,因此现在在水平和竖直方向中每一个上偏移一个较高分辨率单元,这意指较低分辨率网格的分数的偏移。再次对邻近群组执行类似的取平均,从而生成每个均由相应较低分辨率值表示的较大大小的单元的较低分辨率网格,但是这次包括所描述的偏移。该编码器随后仅使用平均值的偏移较低分辨率网格来编码并传输该帧(再次在适合所讨论的实施例的情况下将多个这样的单元的块变换到频域中)。

注意到,接收器现在借助于帧0与1的较低分辨率单元之间的小部分重叠已经被提供有覆盖较高分辨率单元F的两个较低分辨率单元,从而允许接收器生成用于F的单个较高分辨率值。然而,为了重新创建完整的较高分辨率网格,将需要进一步的后续帧2-5。

在第二后续帧帧2处,相对于初始帧0的较低分辨率网格,编码器将较低分辨率网格向上和向右移位一个较高分辨率单元。该编码器随后对较高分辨率值C、D、G和H的群组取平均以获得用于相应的较低分辨率单元且类似地用于周围单元的相应较低分辨率值,从而生成较低分辨率值的另一个偏移网格,其被编码并传输到接收器。现在,接收器具有足够的信息来借助帧0与2的较低分辨率单元之间的小部分重叠重新创建较高分辨率单元G。

在序列的第三后续帧帧3处,相对于初始帧0的较低分辨率网格,编码器将较低分辨率网格向下和向右移位一个较高分辨率单元,并且随后对较高分辨率值K、L、O和P取平均以获得另一个较低分辨率单元的相应较低分辨率值。作为类似地偏移较低分辨率单元的网格的一部分,这被编码并传输到接收器,现在允许接收器借助帧0与3的较低分辨率单元之间的分数的重叠重新创建较高分辨率单元K。

该序列随后继续到第四后续帧帧4,其中对较高分辨率单元I、J、M和N取平均并在较低分辨率网格中将其编码并传输,从而允许接收器借助帧0与4的较低分辨率单元之间的小部分重叠重新创建较高分辨率单元J。

一旦完成了在帧0到5的序列上应用的小部分移位的模式,可以在接收器处重构完整的较高分辨率的网格。

然而,应当领会,上文仅仅是一个可能的示例。在其他实现方式中,可以使用较高与较低分辨率单元大小的不同比率,并且/或者可以使用其他移位模式。例如,仅需要四帧循环的另一个可能的移位模式将传输:

Av(B,C,F,G)

Av(E,F,I,J)

Av(J,K,N,O)

Av(G,H,K,L)。

在一个实施例中,不一定存在相机或物体的实际移动。取而代之,编码器可以生成要在解码器处应用以重新创建较高分辨率的仿真移位或有移位模式的指示。也就是说,为了减少传输的比特率的该唯一目的,所述“移动”仅可以仿真地生成。

可替代地,该移位可以基于实际移动。在这种情况下,该移动可以通过使用相机被封装在其中的移动终端的陀螺仪传感器以便检测相机的移动来检测,或者通过使用运动估计技术检测正被捕获的场景或物体的移动来检测。

与帧0到5的编码的较低分辨率单元一起,编码器还在编码的数据流中传输指示作为该方案的一部分应用的移位或移位模式的一些边信息。该指示可以采取用于序列中每个帧的单独移位指示的形式;或更优选地,在仿真生成的移位的情况下,该指示可以采取用于整个序列的单个指示符的形式,其是指用于该序列的预定移位模式。在后者的情况下,预定的模式可以被预先存储在传输器侧和接收器侧的编码器处。例如,编码解码器可以以由不同的相应移位模式和/或分辨率比率限定的一个或多个不同的超分辨率模式来操作(并且优选地,该编码解码器还将具有不使用超分辨率的更传统的模式)。不同模式的性质将被传输器侧的编码器和接收器侧的解码器二者理解,并且从传输器用信号传递的边信息可以指示已在传输侧由编码器使用的模式。

因此,本发明独特地使用超分辨率方案来故意降级正在视频流中传输的分辨率,以便降低比特率,并且随后在接收器处再次重构较高分辨率图像。当然,不可能得到“免费数据”,但是该思想是以比特率换取重构时间,因为该方案将需要多个帧以便在接收器处重构较高分辨率的图像,从而花费更长时间获得比数据在每个帧中以较高分辨率简单传输的情况更高的分辨率。

为此原因,上述特征可能不适合非常快的运动,但是它对编码较慢但更详细的运动可能是有用的。在特别有利的实施例中,因为在逐块的基础上编码块,所以有可能以不同方式编码同一视频的不同区域。例如,基于对视频图像的运动估计分析,可以使用较低分辨率单元编码慢移动背景,同时可以使用较高分辨率编码在相同图像中的较快移动前景;或者甚至反之亦然。在这种情况下,可以在逐块的基础上用信号传递移位信息,其中每个块包括多个较低分辨率单元(或者在逐宏块的基础上等)。

特别优选的是,与上面所述的全局块列表结合来使用该思想。即,一些帧或帧内的一些块或区域可以使用上述全局块列表特征来编码,同时其他帧或者相同帧内的其他块或区域可以使用在本节中描述的超分辨率特征来编码。例如,全局块列表可以用于编码相对静止的区域中的块,同时超分辨率可以用于编码正发生更精细的运动的其他区域中的块(以便减小这种运动可能另外导致的比特率的峰值);或者该全局块列表可以用于编码大物体的较快运动,同时超分辨率特征可以用于编码正发生较少运动的区域(因为它较不适合快速运动,这是由于重构较高分辨率的图像所需的时间所引起的)。

在其他实施例中,全局块列表可以可替代地用于用信号传递参考块以用于使用更传统的超分辨率方法编码并解码视频,以便增加分辨率而超过相机固有的分辨率。

除了缩放和旋转,上文允许实现遵守频域和空间域算法的超分辨率方法。在该方法中,每隔一个帧在可以以被传送到解码器的特定模式移动1/2或1/4像素。尽管以此方式编码,但是有可能通过简单地在否则会被漏掉的运动的方向上找到匹配来得到像素或单元的下列1/2或1/4的较小运动移位的好处。此外,该重构可以在空间域中经由像素重新采样来完成。图14a示出两个帧之间的1/2像素移位允许从原始帧中的一个像素创建四个新像素(A、B、C和D)。

移位方向可以来自采集系统以作为编码输入或被创建以减少比特率以作为逆可缩放性,例如发送CIF分辨率而不是VGA。

感知模型

本发明提供一种用于依据考虑人类对视频信号中的数据的敏感度的感知模型执行诸如量化、帧内预测编码或帧间预测编码之类的视频编码的一个或多个方面的技术。

如图15a、15b和15c的示意图中所示,人类视觉上在不同空间和时间频率处体验变化的敏感度。也就是说,人眼可以检测在中等范围空间和时间频率处对光强度(亮度)和颜色(例如色度U和V)的更精细的对比,而在更高空间和时间频率处仅可以区分色度或颜色方面的粗略得多的差(并且在某种程度上还可以在更低频率处体验更小的敏感度)。

图15a示出考虑空间频率和时间频率二者的三维曲线(或表面)。图15b示出在某个给定的时间频率处穿过图15a的横截面,且图15c示出在某个给定的空间频率处穿过图15a的横截面。

亮度对比可以被定义为ΔL/L,其中ΔL是在某个亮度L处亮度的某个变化。颜色对比可以被定义为ΔE/E,其中ΔE是在某个颜色值E处颜色的某个变化。色度和颜色对比敏感度是可以被人分别在L和E处被人检测到的最小ΔL和ΔE的测量,即因此更小的最小ΔL意味着更高的对比敏感度,并且对于ΔE情况相似。

对比敏感度曲线和用于测量人类敏感度的度量的示例可以在“DCT-based Video Quality Evaluation”,Feng Xiao,Winter 2000,http://compression.ru/video/quality_measure/vqm.pdf中找到。

在"Design Considerations for Computationally Constrained Two-Way Real-Time Video Communication", Bivolarski et al, Applications of Digital Image Processing XXXII, edited by Andrew G. Tesher, Proc. Of SPIE Vol. 7443, 2009 中讨论了用于测量人类感知敏感度的度量的其他示例。

在任何给定的应用中使用的实际的对比敏感度响应曲线在经验上可以通过调查大样本的人类个体、根据该样本确定每个个体可以响应于被示出各种测试图像而检测到的亮度和颜色中的最小变化来找到。该敏感度响应曲线对于任意给定的个体而言是主观的,并且结果可以针对不同的样本群组而变化。

根据进一步特别优选的方面,本发明使用关于人类敏感度的信息来创建量化器4中的不规则的量化水平。即,本发明可以根据从关于人类感知敏感度的经验信息确定的量化箱大小分布而使用不同大小的量化箱,使得使用更小的箱来量化人类观看者更敏感的视频数据(更精确,因而较少失真);而使用更大的箱来量化人类观看者较不敏感的视频数据(较不精确,因而更多失真)。例如,在每个块的变换的频域表示中,量化器4可以量化对应于具有更精细的箱大小的更敏感的频率的块的频域系数,并且量化对应于具有更粗糙的箱大小的较不敏感的频率的块的频域系数。优点在于,编码的比特流的“比特预算”可以被花费在编码人类感知上最敏感的那些系数上,同时避免在人类较不敏感的系数上耗费比特。箱大小随着空间和/或时间频率的变化与如图15a-15c中示意性描绘的人类感知敏感度的在经验上确定的曲线相关。

在进一步的实施例中,量化器4可以依据正被量化的亮度的量级和颜色而被配置有不规则量化箱大小。例如,如果人眼对中间范围亮度更敏感且对更高或更低亮度不这么敏感,则该中间范围可以利用比亮度的极端值更精细的量化水平来量化。类似地,如果人眼对某些颜色比其他颜色更敏感,则与其他颜色相比,量化器4可以利用更精细的量化水平量化这些颜色。

在一个特定示例中,如图15d所示,人眼可以对不同的颜色范围具有不同的敏感度,并且因此量化器还可以针对不同的颜色通道使用不同的量化箱大小分布(和/或优选地针对亮度和色度通道使用不同的分布)。

参考图15e,该图示出8×8频域表示中的可能的DCT项的表示,其具有水平波数kx和竖直波数ky。任何给定的块可以被表示为这64个可能的DCT项中的一个或多个的和。然而人眼对在右下具有相对较高的kx和/或ky值的那些项较不敏感,在图15e中标记为(*)。

注意,如图15g所示,使得量化器4的该行为成为可能是因为在优选实施例中,到量化器4的输入数据是不可预测的频域系数,即该量化器在帧内和帧间预测编码之前被放置在编码器链中。因此,该量化器可以访问表示将被接收方看到的实际的绝对系数,并且因此量化器4能够适应关于接收方的估计的感知。这不同于如图7中所示的标准布置,其中到量化器4的输入是变换的残差数据,其中感知相关信息已经丢失。由于所述绝对值不能从残差数据获知,因此量化器76可能没有正被量化的数据的实际颜色或亮度的知识。

可替代的布置将是图15h中示出的布置,其中量化器4在预测6、8之后放置,但是具有关于正从变换级2的输出经由单独的控制输入而被输送到量化器4的绝对值的信息。

在其他实施例中,可以使量化器4的量化箱大小分布取决于正被编码的一个或多个块的结构度量。这种度量的示例将是结构相似性索引度量(SSIM)。

根据本发明的进一步可能的方面,感知模型可以可替代地或另外在帧内和/或帧间预测编码期间用在块匹配过程中。在此情况下,预测编码模块6、8被配置有关于人类感知敏感度的信息,它可以使用该信息修改目标块和/或参考块以便降低残差数据所招致的比特率,但是同时所述修改在不会显著地被观看者感知的限度内。例如,预测模块6、8可以修改目标块的亮度和/或色度系数,以便使之更紧密地匹配参考模块,只要所述修改在取决于感知模型的某种程度内。这不同于基本上为色盲的常规预测。

存在两种降低最终编码的流中的比特率的可能的修改。一种是减少目标块的系数与参考块的系数之间的差的量级,因为较小的残差将需要更少的比特来编码。另一种是降低这些系数之间的差的变化,因为具有较少变化的残差将具有更小的熵并且因此在被熵编码器编码时需要更少的比特。

在图15h中示意性示出一个特定示例。这示出了在不同的空间频率kx处若干亮度系数的绝对量级。如果预测模块6、8具有关于可以应用于每个系数的可感知地显著的或可容忍的修改的信息(图15h中由误差条所示),则它可以选择修改亮度值以更相似,或者在该特定示例中所有四个系数可以被修改为相同的。类似的过程可以应用于色度通道。最大的可容忍修改取决于如图15a-15d所示的空间和/或时间频率,并且因此最大修改对于不同的系数而言是不同的。

在进一步的实施例中,由预测模块6、8应用的修改可以取决于正被编码的系数的亮度的量级或颜色。例如,人眼可能对中间范围的亮度更敏感,而对更高或更低亮度没有那么敏感,或者对某些颜色比其他颜色更敏感。

在其他实施例中,可以使得所述修改取决于正被编码的一个或多个块的结构度量,例如结构相似性索引度量(SSIM)。

在特别优选的实施例中,可以取决于影响人类感知的参数来进行量化器4和/或预测编码模块6、8的操作。

这种参数的一个示例是视频中发生的运动,或者因为相机移动了或者因为正被拍摄的对象移动了。该运动可以通过运动估计算法或由其中安装了相机的移动终端中的传感器来检测,例如陀螺仪传感器或加速计。人类典型地对正在较快移动的对象中的较高空间频率较不敏感,所以该信息可以用于调适量化器4的量化箱大小分布,或者用于改变允许被预测模块6、8应用的修改的程度。

影响人类感知的参数的其他非限制性示例包括接收方用户的屏幕的宽高比、接收方用户的屏幕的大小以及接收方屏幕的分辨率。因此,该信息可以用于调适量化器4的量化箱大小分布,或者用于改变允许被预测模块6、8应用的修改的程度。为此,在接收方终端处的解码器可被布置成向在传输终端处的编码器反馈关于参数的信息以用于动态地调适编码器的量化和/或预测行为(尽管在其他实施例中,该信息可以由传送用户基于他或她自己的关于接收方用户的终端的知识手动插入)。在一个特定实施例中,接收方用户离他或她的屏幕的距离可以通过接收方的网络摄像头的自动对焦特征来自动测量,并且随后被反馈到传输器以用于调适量化和/或预测。

对于这些参数中的任意一个或多个,优选地,该参数可以在对给定视频信号编码期间被动态地确定和更新,并且可以在适当情况下被动态地反馈。这意味着量化器4和/或预测模块6、8将从一个帧到下一个帧或甚至对于相同帧内的不同块在不同的感知模型之间“忙碌(on the fly)”切换。

例如,可以针对屏幕上的运动的不同量或接收方离屏幕的不同距离存储不同的感知敏感度曲线或箱大小分布。

在优选实施例中,感知算法使用基于感知模型的块匹配预测来建立块和块匹配对最终速率的贡献的感知重要性。块选择在基于重要性索引的排序阵列内执行。匹配的选择基于来自索引的聚合完成。在选择中候选块的群组随后针对感知质量和速率贡献而被评估。从匹配的最低速率贡献者或超过质量目标块的最高速率贡献者中选择最佳候选。速率调节基于根据频域中的感知模型估计的自由度来完成。

如上文所讨论,感知模型的使用给出了改变每个块的系数的可能性,这些系数可被更改以降低比特率,同时保持感知质量完好无损。该算法的另一个益处是,它可以被用作当前编码方案的附加物,以作为如频域中该算法的无损分量那样降低比特率的附加途径,然而在此情况下性能将会降低。

块相似性根据比特率减少的观点和人类感知来确定。

这两种相似性可以组合使用。这样的相似性可以探测视频感知和感测的冗余和亮度、颜色、空间、时间和结构属性。

在变换是编码解码算法的第一步骤的情况下,基于感知的量化器可以在时间预测的若干步骤之前和之后应用。在使用其中分量之一是时间部分的多维变换的情况下,时间量化可以刚好在变换之后被使用。

优选地在感知模型中存在三个基本步骤:在所有颜色通道上同时应用的亮度和色度相互依赖的敏感度;相互依赖且同时应用的空间和时间敏感度;以及反映空间频率之间的相互依赖性的结构敏感度。

感知编码方法的附加方面是人类视觉系统基于其空间角限制或离物理显示器表面的距离和显示器的大小和宽高比区分空间频率的能力。这些因素将确定关于显示器产生正被发送的信息的能力或关于检测在编码的比特流中发送的信息中的一些的人类视觉系统的附加限制。附加的呈现条件将通过在视频会议对等端的两侧上从流编码器接收附加信息来调节,如离远端观看者的屏幕的距离以及如色温和场景总体亮度之类的光条件。

频域中的块预测将保存感知方法所必需的信息。

这里呈现的方法基于频域中独有的块预测而是唯一的,其允许人类视觉系统的各方面适当集成到编码过程中。

因此,敏感度度量将通过未从人类视觉系统中感知到的流移除所有信息来辅助编码过程。

此外,设备相关调节将提供额外的的速率节省,其中该设备不能够显示。

当对象正在移动以及考虑到帧速率贡献,运动相关量化将基于时间对比敏感度降低比特量。人类视觉系统具有降低的针对移动对象的对比敏感度。

亮度和色度相互依赖的敏感度是非线性的,并且能够检测明显更低数量的当前通过以24比特编码使用的16.7百万的颜色。通过实现非线性颜色表示,我们将有利于(benefit of)表示更低数量的颜色。

量化索引之间的距离可以根据多维量化模型来设置并且一般地将遵循韦伯费希纳(Weber-Fechner)定律。模型参数可以用于从量化查找表或树查找量化值。

该预测是在块的排序列表中完成的。预测器块的列表内的搜索区域将基于与感知敏感度模型和上文列出的观看特性相关的敏感度测量来增加或减少。

匹配块的系数可以基于感知模型被修改以降低残差。

下列参数可以在感知模型中用作变量

- 正被编码的每个块的分量的颜色

- 正被编码的块的分量的亮度

- 周围块的分量的颜色

- 周围块的分量的亮度

- 视频对象移动的速度

- 用户离屏幕的距离

- 观看者的环境中的背景光

- 显示器特性,如颜色、分辨率和宽高比。

这些模型可以单独或组合使用或作为多维感知模型的一部分。

压缩的程度可以在量化步骤中以及在匹配和排序期间调节。算法的复杂度通过使用排序而被显著降低,因为它是每帧或片通过一个(one pass)并且基于块特性创建本地化搜索。

再次参考图2,在实施例中,该方法可以在频域中使用基于感知和客观度量的块匹配来确定哪些块可被预测。根据S2,频域中的每个块b0…b23可以基于客观和/或感知度量组而被分配索引值。在步骤S5中,候选块于是可以针对基于所述指标的密切性(匹配)根据用于排除不产生匹配的明显差异的聚合测量而被评估感知阈值。残差块和/或对象的速率被估计,因为感知模型的使用在此情况下创建用于进一步降低比特率而不损失感知质量的机会。

再次参考图4,变换的空间部分可以适于每一个颜色平面并且与其余变化组合应用。正量化级2基于视频呈现和感测属性应用量化。该方法允许进一步基于感知模型允许的自由度操控每个块的数据。前两个级取出与可以实时地且以交互方式确定的呈现和感测不相关的流信息。以此方式,信号的不相关分量未被进一步传输到处理的链中,从而降低了复杂度。

该方法可以使用感知模型进一步降低量化之上的速率。量化的系数可以基于针对帧内每一个特定点的感知容忍区间而被更改,在该感知容忍区间中该感知保持不变并且块值可以被改变以降低比特率。这样,与其他编码算法相比,所提出的方法可以实现更好的比特率,而不影响人类感知。

实现方式

编码器元件2、4、6、8和10;以及解码器元件12、14、16、18和20中的每一个优选地以存储在存储介质上并被设置用于在处理器上执行的软件模块来实现,该存储介质比如硬盘驱动器或闪存。然而,在其他实施例中,这些元件中的一些或所有可以至少部分地在专用硬布线电路中实现。

在一个可能的实施例中,本发明可以被实现为诸如ISO标准H.264之类的现有编码器的附加组件。即,到图4中的量化器4的输入将是来自诸如H.264编码器之类的标准编码器的输出。

应当领会,仅以示例的方式描述了上述实施例。

例如,注意到,尽管在本文中使用了术语“块”,但是在其最一般的意义下,这不旨在暗示任何特定大小、形状或级别细分。应当领会,在不同的方案中,各种不同的分割和细分可以通过诸如宏块、块和子块等之类的术语指代,但是如本文最一般地使用的术语“块”可以对应于这些中任意一种或者甚至对应于作为视频帧的划分的任何其他组成图像部分。

而且,尽管参考到频域的离散余弦变换的示例描述了上文,但是应当领会,可以使用诸如KLT或其他之类的其他变换(其中一些可以不表示依据空间频率系数的变换,而是表示依据一些其他变换域系数的变换)。

而且,尽管依据表示目标块的系数与参考块的系数之间相减的差的残差描述了上文,但是这不是用于相对于参考块的系数或值编码目标块的系数或值的唯一可能性。例如,在其他可能的实施例中,例如,所述差可以依据目标块与参考块之间的关联的参数来表示和用信号传递以使得该目标可以根据该关联预测,或者依据可以应用于参考块以预测目标块的滤波器的系数而被表示和发信号传递。在这些情况下,该预测可以不必像减法差情况那样是无损的,而是可以是有损的,使得所述差不表示精确差。如本文所使用的术语“差”不限于减法差,也不限于精确差。

而且,本发明不限于以任何特定标准实现,也不限于作为任何特定标准的附加组件而实现,或者可以被实现为新的独立的编码解码器、现有编码解码器的附加组件或实现为对现有编码解码器的修改。

对本领域技术人员而言,给定本文的公开,其他变体可能是显而易见的。本发明不受所描述的实施例的限制,而是仅由所附权利要求限定。

用于视频的数据压缩.pdf_第1页
第1页 / 共68页
用于视频的数据压缩.pdf_第2页
第2页 / 共68页
用于视频的数据压缩.pdf_第3页
第3页 / 共68页
点击查看更多>>
资源描述

《用于视频的数据压缩.pdf》由会员分享,可在线阅读,更多相关《用于视频的数据压缩.pdf(68页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102792687 A (43)申请公布日 2012.11.21 C N 1 0 2 7 9 2 6 8 7 A *CN102792687A* (21)申请号 201180010048.5 (22)申请日 2011.02.18 61/306385 2010.02.19 US 61/365242 2010.07.16 US H04N 7/26(2006.01) H04N 7/50(2006.01) H04N 7/30(2006.01) (71)申请人斯凯普公司 地址爱尔兰都柏林 (72)发明人 L.比沃拉斯基 R.瓦芬 M.尼尔松 S.V.安德森 (74)专利代理机构中。

2、国专利代理(香港)有限公 司 72001 代理人董宁 汪扬 (54) 发明名称 用于视频的数据压缩 (57) 摘要 本发明提供一种用于依据考虑人类对视频信 号中的数据的敏感度的感知模型执行诸如量化、 帧内预测编码或帧间预测编码之类的视频编码的 一个或多个方面的技术。该感知模型可以涉及空 间频率、时间频率、对比敏感度、颜色敏感度、结构 度量和/或一个或多个影响感知的参数,比如视 频中的运动、接收方用户离屏幕的距离、接收方终 端的屏幕的大小、宽高比或分辨率。 (30)优先权数据 (85)PCT申请进入国家阶段日 2012.08.17 (86)PCT申请的申请数据 PCT/EP2011/052458。

3、 2011.02.18 (87)PCT申请的公布数据 WO2011/101448 EN 2011.08.25 (51)Int.Cl. 权利要求书4页 说明书32页 附图31页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 4 页 说明书 32 页 附图 31 页 1/4页 2 1.一种编码视频信号以用于传输到接收终端的解码器的方法,该方法包括: 接收包括多个帧的视频信号,每个帧包括视频数据的一个或多个部分; 量化每个部分的视频数据;以及 编码每个部分的视频数据; 其中该量化根据量化箱大小分布来执行,该量化箱大小分布针对不同的视频数据使用 不同的量化箱大小,其中该量化箱。

4、大小分布与人类对视频数据的敏感度的测量相关。 2.如权利要求1的方法,其中: 该方法包括将所述部分的每一个变换到变换域中,以便针对每个部分生成包括一组系 数的变换的视频数据,每个系数表示在不同的空间和/或时间频率处对所述部分的属性的 贡献; 所述量化包括量化每个部分的系数;以及 所述量化箱大小分布针对不同的变换的视频数据使用不同的量化箱大小。 3.如权利要求2的方法,其中所述量化箱大小分布与人类在不同的空间和/或时间频 率处对所述属性的敏感度的测量相关。 4.如权利要求2或3的方法,其中所述量化箱大小分布针对所述系数中不同的系数使 用不同的量化箱大小。 5.如权利要求2、3或4的方法,其中所述。

5、属性包括亮度和颜色属性之一。 6.如权利要求5的方法,其中所述系数中的一些表示亮度且所述系数中的一些表示至 少一个颜色属性,并且该方法包括使用不同的量化箱大小分布来量化亮度和颜色。 7.如权利要求5或6的方法,其中所述系数中的一些表示第一颜色通道且所述系数中 的一些表示第二颜色通道,并且该方法包括用于第一和第二颜色通道的不同的量化箱大小 分布。 8.如任一前述权利要求的方法,其中所述量化箱大小分布与人类对视频数据的视觉结 构的敏感度的测量相关。 9.如任一前述权利要求的方法,其中使量化箱大小分布可依据影响人类感知的参数而 变化。 10.如权利要求9的方法,其中所述量化箱大小分布在进行编码期间依。

6、据影响人类感 知的参数而动态地变化,以便针对所述帧中不同的帧或这些帧的不同部分应用不同的量化 箱大小分布。 11.如权利要求10的方法,其中所述量化箱大小分布依据视频信号中运动而动态地变 化,该运动是影响人类感知的参数。 12.如权利要求11的方法,其中所述运动通过应用到视频信号的帧的运动估计算法来 确定。 13.如权利要求11或12的方法,其中所述运动由封装有生成所述视频信号的相机的移 动终端中的物理传感器来检测。 14.如权利要求9-13中任一项的方法,其中所述量化箱大小分布依据接收终端的用户 离接收终端的屏幕的距离来控制,所述距离是影响人类感知的参数。 15.如权利要求14的方法,包括从。

7、接收终端接收所述距离的指示,以用于控制量化箱 大小分布。 权 利 要 求 书CN 102792687 A 2/4页 3 16.如权利要求14或15的方法,其中所述距离通过所述接收终端的相机的自动对焦来 确定。 17.如权利要求14、15或16的方法,其中所述距离通过用户设置来确定。 18.如权利要求9-17中任一项的方法,其中所述箱大小分布依据所述接收方终端的屏 幕的宽高比、大小和分辨率中的至少一个来控制,该宽高比、大小和/或分辨率是影响人类 感知的参数。 19.如权利要求18的方法,包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的 指示,以用于控制量化箱大小分布。 20.如权利要求9-1。

8、9中任一项的方法,包括将箱大小分布的指示传输到解码器,以用 于解码视频信号。 21.如任一前述权利要求的方法,其中所述视频数据在帧间或帧内编码之前被输入到 量化器,使得该视频数据表示绝对值。 22.一种压缩视频信号以用于传输到接收终端的解码器的方法,该方法包括: 接收包括多个帧的视频信号,每个帧包括视频数据的多个部分; 对于所述部分中的多个目标部分中的每一个,生成表示目标图像部分与相应参考部分 之间的差异的差数据;以及 在编码的比特流中输出差数据; 其中该方法包括,在生成差数据之前,基于人类对视频数据的敏感度的测量修改所述 目标和参考部分中的至少一个,以便降低编码差数据所需的比特数。 23.如。

9、权利要求22的方法,其中所述修改降低差数据的量级并且从而降低编码差数据 所需的比特数。 24.如权利要求22或23方法,其中所述方法包括通过熵编码器输出差数据,并且所述 修改降低所述差数据中的变化以便降低熵且从而将编码差数据所需的比特数。 25.如权利要求22-24的任一项的方法,其中: 所述方法包括将所述部分中的每一个变换到变换域中,以便针对每个部分生成包括一 组变换域系数的变换的视频数据,每个系数表示在不同空间和/或时间频率处对该部分的 属性的贡献;并且 对于所述部分的多个目标部分中的每一个,差数据表示目标图像部分的系数与相应参 考部分的变换域系数之间的差。 26.如权利要求25的方法,其。

10、中所述修改包括基于人类对变换域系数的敏感度的测量 修改所述目标和参考部分中至少一个的变换域系数的一个或多个,从而减少编码差数据所 需的比特数。 27.如权利要求22-26中任一项的方法,其中所述属性包括亮度和颜色属性之一。 28.如权利要求22-27中任一项的方法,其中所述修改基于人类对视频数据的视觉结 构的敏感度的测量。 29.如权利要求22-28中任一项的方法,其中使修改的程度可依据影响人类感知的参 数而变化。 30.如权利要求29的方法,其中修改的程度在进行编码期间依据影响人类感知的参数 而动态地变化。 权 利 要 求 书CN 102792687 A 3/4页 4 31.如权利要求30的。

11、方法,其中修改的程度依据视频信号中的运动而动态地变化,该 运动是影响人类感知的参数。 32.如权利要求31的方法,其中所述运动通过应用到视频信号的帧的运动估计算法来 确定。 33.如权利要求31或32的方法,其中所述运动由封装有生成所述视频信号的相机的移 动终端中的物理传感器来检测。 34.如权利要求29-33中任一项的方法,其中修改的程度依据接收终端的用户离接收 终端的屏幕的距离来控制,所述距离是影响人类感知的参数。 35.如权利要求34的方法,包括从接收终端接收所述距离的指示,以用于控制修改的 程度。 36.如权利要求34或35的方法,其中所述距离通过所述接收终端的相机的自动对焦来 确定。。

12、 37.如权利要求34、35或36的方法,其中所述距离通过用户设置来确定。 38.如权利要求29-37中任一项的方法,其中修改的程度依据所述接收方终端的屏幕 的宽高比、大小和分辨率中的至少一个来控制,该宽高比、大小和/或分辨率是影响人类感 知的参数。 39.如权利要求38的方法,包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的 指示,以用于控制修改的程度。 40.如任一前述权利要求的方法,其中:对于每一个目标部分,从多个潜在的参考部分 之中选择相应的参考部分。 41.如权利要求40的方法,其中所述多个潜在的参考部分包括一个或多个来自与目标 部分相同帧的部分,该方法因此可用于帧内编码。 42。

13、.如权利要求40或41的方法,其中所述多个潜在的参考部分包括一个或多个来自与 目标部分不同帧的部分,该方法因此可用于帧内编码。 43.如权利要求20、41或42的方法,其中所述相应参考部分基于编码差数据所需的比 特数来选择。 44.如权利要求40-43中任一项的方法,包括确定目标部分和参考部分的每一个的总 能量,并且确定候选部分的子集,每个候选部分具有在目标部分的阈值范围内的块能量,其 中相应参考部分从候选部分之中选择。 45.一种传输编码的比特流的方法,包括: 根据权利要求1-44中任一项编码视频信号,以及 将编码的比特流传输到在接收终端处的解码器。 46.一种压缩视频数据的方法,包括: 接。

14、收限定视频图像的视频数据的流; 对于由时间和/或空间数据限定的多个图像部分的每一个,将时间和/或空间数据变 换到频域中以针对每个图像部分生成多个组的频域系数; 基于用于每个组的客观和感知度量确定该组的索引值; 使用索引值选择频域系数的至少两个匹配组;以及 基于匹配组中一组与另一组的比较生成匹配组中该一组的残差。 权 利 要 求 书CN 102792687 A 4/4页 5 47.一种压缩视频数据的方法,包括: 提供限定图像部分的图像数据的图像部分系数; 将系数布置成组并且基于每个组的客观的和感知的度量确定该组的索引值; 基于索引值对这些组排序以生成排序的列表; 基于在列表中的接近性和感知度量选。

15、择至少两个匹配组;以及 基于对匹配组中的一组与另一组的系数的比较生成所述匹配组中的该一组的残差。 48.根据权利要求46或47的方法,其中所述图像数据是色度和亮度数据。 49.根据权利要求46-48中任一项的方法,其中每个组表示块或对象。 50.根据权利要求46-49中任一项的方法,其中所述图像部分包括具有像素的二维阵 列的宏块。 51.根据权利要求46-50中任一项的方法,其中所述图像部分包括视频流的单个帧,其 中该方法用于在内帧中压缩视频数据。 52.根据权利要求46-51中任一项的方法,其中所述图像部分包括多个帧,其中该方法 用于帧间预测。 53.根据权利要求46-52中任一项的方法,其。

16、中每个组包括系数的阵列。 54.根据权利要求46-53中任一项的方法,其中所述索引值表示每个组的能量。 55.根据权利要求54的方法,其中所述索引值基于具有零值的系数的数量。 56.根据权利要求54的方法,其中所述索引值是系数的聚合组合。 57.根据权利要求54的方法,其中所述索引值是组中系数的模量的平均值。 58.根据权利要求46-57中任一项的方法,其中选择匹配组的步骤包括基于列表中的 接近性确定候选群组,并且通过比较比特率贡献和感知质量从候选中选择最佳匹配。 59.一种将视频数据从传输终端传输到接收方终端的方法,该方法包括: 生成表示移动图像的视频数据的流; 根据权利要求46-58中任一。

17、项的方法压缩视频数据;以及 传输来自未被预测的组的视频流的系数和被预测的至少一个组的残差以作为编码的 视频流的一部分。 60.一种包括被配置成根据权利要求1-59中任一项操作的信号处理装置的编码器。 61.一种计算机程序产品,其包括包含在计算机可读介质上的软件且该软件被配置成 使得当其在处理器上被执行时执行根据权利要求1-59中任一项的操作。 62.一种根据权利要求1-59中任一项编码的比特流。 63.一种包括携带根据权利要求1-59中任一项编码的比特流的传输介质的网络设备。 64.一种将根据权利要求1-59中任一项编码的视频信号解码的方法。 65.一种将根据权利要求1-21中任一项编码的比特。

18、流解码的方法,包括基于在编码的 比特流中接收的量化箱大小分布的指示解码该编码的比特流。 66.一种被配置成根据权利要求64或65操作的信号处理装置的解码器。 67.一种解码器程序产品,其包括包含在计算机可读介质上的软件并且该软件被配置 成使得当其被执行时执行根据权利要求64或65的操作。 权 利 要 求 书CN 102792687 A 1/32页 6 用于视频的数据压缩 技术领域 0001 本发明涉及视频流的编码和传输。 背景技术 0002 在视频流的传输中,正不断地努力来减少需要被传输的数据的量,同时仍然允许 移动的图像在传输的接收端处适当地被重新创建。视频编码器接收包括要被编码的“原始” 。

19、视频帧序列的输入视频流,每个视频帧表示在各自时刻的图像。该编码器随后将每个输入 帧编码成两种类型编码的帧之一:内帧(intra frame)(也被称为关键帧)或间帧(inter frame)。编码的目的是压缩视频数据,以便当视频数据通过传输介质传输或存储在存储介 质上时招致(incur)更少的比特。 0003 使用仅来自正被编码的当前视频帧的数据来压缩内帧、典型地使用帧内预测编 码,从而该帧内的一个图像部分相对于同一帧内的另一个图像部分被编码并被发信号传递 (signal)。这类似于静态图像编码。另一方面,使用先前帧(参考帧)的知识来压缩间帧, 并且该间帧仅允许参考帧与在时间上紧随它的当前帧之。

20、间的差的传输。这允许更加高效的 压缩,特别是当场景具有相对较少的变化时。帧间预测典型地使用运动估计依据(in terms of)描述帧之间的图像部分的移动的运动向量来编码并发信号传递该视频,并且随后使用 运动补偿来基于用信号传递的向量在接收器处预测该运动。用于视频通信的各种国际标 准,比如MPEG 1、2 & 4和H.261、H.263 & H.264,采用基于在规则的块的基础上的源帧的划 分的运动估计和补偿。根据分辨率、帧速率、比特率和场景,内帧可以达到间帧的20到100 倍大。另一方面,间帧将依赖关系施加到高达最近的内帧的先前的间帧。如果任意一个帧 遗漏,则解码当前间帧可能导致错误和伪影。。

21、 0004 这些技术例如被用在H.264/AVC标准中(参见T.Wiegand,G.J.Sullivan,G. Bjontegaard,A.Luthra:“Overview of the H.264/AVC video coding standard,” in IEEE Transactions on Circuits and Systems for Video Technology,Volume:13,Issue:7,pa ge(s):560-576,July 2003)。 0005 图7图示用于例如根据H.264/AVC的基本编码结构将视频流编码成间帧和交错的 内帧的流的已知的视频编码器。。

22、编码器接收包括要被编码的帧序列的输入视频流(每个帧 被分成组成的宏块并被细分成块),并且输出随后可以被传输到解码器的量化的变换系数 和运动数据。该编码器包括用于接收视频图像的输入宏块的输入端70、减法级(stage)72、 正变换级74、正量化级76、逆量化级78、逆变换级80、帧内预测编码级82、运动估计&补偿 级84和熵编码器86。 0006 减法级72被设置成接收包括一系列输入宏块的输入信号,每个输入宏块对应于 帧的一部分。减法级72从每一个宏块减去该宏块的预测,以便生成残差(residual)信号 (有时也被称为预测误差)。在帧内预测的情况下,基于相同帧的一个或多个相邻区域从帧 内预测。

23、级82提供块的预测(在经由逆量化级78和逆变换级80反馈之后)。在帧间预测的 情况下,从运动估计&补偿级84基于先前帧的所选区域提供块的预测(再次在经由逆量化 说 明 书CN 102792687 A 2/32页 7 级78和逆变换级80反馈之后)。对于运动估计,借助描述先前帧中的所选区域的位置与在 当前帧中正被编码的宏块之间的偏移的运动向量来识别所选区域。 0007 随后,正变换级74例如借助离散余弦变换(DCT)将块的残差从空间域表示变换为 变换域表示。也就是说,它将每个残差块从在不同的笛卡尔x和y坐标处的一组像素值变 换为表示具有不同波数k x 和k y (具有1/波长的大小)的不同的空间。

24、频率项的一组系数。随 后,正量化级76量化变换系数,并且输出要经由熵编码器86被编码成视频流的残差信号的 量化且变换的系数,从而形成用于传输到一个或多个接受者终端的编码的视频信号的一部 分。 0008 而且,正量化级76的输出也经由逆量化级78和逆变换级80反馈。逆变换级80 将残差系数从频域变换回空间域值,其中它们被提供给帧内预测级82(用于内帧)或运动估 计&补偿级84(用于间帧)。这些级使用逆变换的和逆量化的残差信号连同输入视频流的 知识,以便产生内帧和间帧的局部预测(包括如在解码器处看到的已被正和逆变换和量化 的扭曲效应)。该局部预测被反馈到减法级72,其产生表示输入信号与局部帧内预测。

25、级82 或局部运动估计&补偿级84的输出之间的差的残差信号。在变换之后,正量化级76量化 该残差信号,从而生成量化的、变换的残差系数以用于输出到熵编码器86。运动估计级84 还经由熵编码器86输出运动向量以包括在编码的比特流中。 0009 当执行帧内编码时,思想是仅编码并传输关于帧内的图像数据部分如何不同于同 一帧内的另一个部分的测量(measure)。该部分随后可以在解码器处预测(给定一些用于开 始的绝对数据),并且因此,仅需要传输预测数据与实际数据之间的差而非实际数据自身。 该差信号典型地在量级方面更小,所以采用更少的比特来编码。 0010 在帧间编码的情况下,代替帧内预测级82,运动补偿。

26、级84被切换到反馈路径中, 并且反馈回路因此被创建在一个帧与另一个帧的块之间,以便相对于先前帧的块来编码该 间帧。与内帧相比,这典型地采用甚至更少比特来编码。 0011 图8图示了相应的解码器,其包括用于接收进入接受者终端的编码的视频流的熵 解码器90、逆量化级92、逆变换级94、帧内预测级96和运动补偿级98。帧内预测级和运动 补偿级的输出在求和级100处被求和。 0012 存在许多已知的运动估计技术。一般地,它们依靠对块与来自先前帧(参考帧)的 一个或多个其他图像部分的比较。从与块相同大小和形状的、但在水平和竖直方向上偏移 任意数量的像素或者甚至分数数量的像素的区域预测每个块。所使用的区域。

27、的身份以运动 向量的形式作为开销(“边信息”)被发信号传递。良好的运动估计技术必须平衡低复杂度与 高质量视频图像的需求。还期望它不需要太多开销信息。 0013 在上文所述的标准系统中,将注意的是,帧内预测编码和帧间预测编码(运动估 计)在非量化的空间域中被执行。 0014 最近,在变换域中操作的运动估计技术已经引起注意。然而,现有技术都不能够以 低复杂度执行(从而减少计算开销),同时还实现(deliver)高质量。因此,当前实践中,对 于运动估计不使用频域技术。 0015 VC-1视频编码解码器具有在频域中操作的帧内预测模式,其中DCT(离散傅立叶 变换)域中AC系数的第一列和/或第一行是根据。

28、紧接地位于所处理的块左边或上面的DCT 块的第一列(或第一行)预测的。也就是说,位于一个块边缘的系数是根据邻近块中的直接 说 明 书CN 102792687 A 3/32页 8 空间邻居预测的。为了参考,参见“The VC-1 and H.264 Video Compression Standards for Broadband Video Services”,AvHari Kalva,Jae-Beom Lee,pp.251。 发明内容 0016 本发明提供一种用于依据考虑人类对视频信号中的数据的敏感度的感知模型执 行诸如量化、帧内预测编码或帧间预测编码之类的视频编码的一个或多个方面的技术。该。

29、 感知模型可能涉及空间频率、时间频率、对比敏感度、颜色敏感度、结构度量和/或一个或 多个影响感知的参数,比如视频中的运动、接收方用户离屏幕的距离以及接收方终端的屏 幕的大小、宽高比或分辨率。 0017 根据本发明的一个方面,可以提供一种编码视频信号以用于传输到接收终端的解 码器的方法,该方法包括:接收包括多个帧的视频信号,每个帧包括视频数据的一个或多个 部分;量化每个部分的视频数据;以及编码每个部分的视频数据;其中该量化根据量化箱 (bin)大小分布来执行,该量化箱大小分布针对不同的视频数据使用不同的量化箱大小,其 中该量化箱大小分布与人类对视频数据的敏感度的测量相关。 0018 在实施例中,。

30、该方法可以包括将所述部分的每一个变换到变换域中,以便针对每 个部分生成包括一组系数的变换的视频数据,每个系数表示在不同的空间和/或时间频率 处对所述部分的属性的贡献;所述量化可以包括量化每个部分的系数;以及该量化箱大小 分布可以针对不同的变换的视频数据使用不同的量化箱大小。 0019 该量化箱大小分布可以与人类对在不同的空间和/或时间频率处的所述属性的 敏感度的测量相关。 0020 该量化箱大小分布可以针对所述系数中不同的系数使用不同的量化箱大小。 0021 该属性可以包括亮度和颜色属性之一。 0022 所述系数中的一些可以表示亮度且所述系数中的一些可以表示至少一个颜色属 性,并且该方法可以包。

31、括使用不同的量化箱大小分布来量化亮度和颜色。 0023 所述系数中的一些可以表示第一颜色通道且所述系数中的一些表示第二颜色通 道,并且该方法可以包括用于第一和第二颜色通道的不同的量化箱大小分布。 0024 该量化箱大小分布可以与人类对视频数据的视觉结构的敏感度的测量相关。 0025 可以使量化箱大小分布可依据影响人类感知的参数而变化。 0026 该量化箱大小分布可以在进行编码期间依据影响人类感知的参数而动态地改变, 以便针对所述帧中不同的帧或这些帧的不同部分应用不同的量化箱大小分布。 0027 该量化箱大小分布可以依据视频信号中的运动而动态地改变,该运动是影响人类 感知的参数。 0028 该运。

32、动可以通过应用于视频信号的帧的运动估计算法来确定。 0029 该运动可以由封装有生成所述视频信号的相机的移动终端中的物理传感器来检 测。 0030 该量化箱大小分布可以依据接收终端的用户离接收终端的屏幕的距离来控制,所 述距离是影响人类感知的参数。 0031 该方法可以包括从接收终端接收所述距离的指示,以用于在控制量化箱大小分布 时使用。 说 明 书CN 102792687 A 4/32页 9 0032 所述距离可以通过所述接收终端的相机的自动对焦来确定。 0033 所述距离可以通过用户设置来确定。 0034 所述箱大小分布可以依据所述接收方终端的屏幕的宽高比、大小和分辨率中的至 少一个来控制。

33、,该宽高比、大小和/或分辨率是影响人类感知的参数。 0035 该方法可以包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的指示,以 用于在控制量化箱大小分布时使用。 0036 该方法可以包括将箱大小分布的指示传输到解码器,以用于解码视频信号。 0037 该视频数据可以在帧间或帧内编码之前被输入到量化器,使得该视频数据表示绝 对值。 0038 根据本发明的另一个方面,可以提供一种压缩视频信号以用于传输到接收终端的 解码器的方法,该方法包括:接收包括多个帧的视频信号,每个帧包括视频数据的多个部 分;对于所述部分中的多个目标部分中的每一个,生成表示目标图像部分与相应参考部分 之间的差异的差数据;以。

34、及在编码的比特流中输出差数据;其中该方法包括在生成差数据 之前基于人类对视频数据的敏感度的测量修改所述目标和参考部分中的至少一个,以便降 低编码差数据所需的比特数。 0039 在实施例中,所述修改可以减少差数据的量级并且从而降低编码差数据所需的比 特数。 0040 该方法包括通过熵编码器输出差数据,并且所述修改可以降低所述差数据中的变 化以便降低熵并从而降低编码差数据所需的比特数。 0041 该方法可以包括将所述部分中的每一个转换到变换域中,以便针对每个部分生成 包括一组变换域系数的变换的视频数据,每个系数表示在不同空间和/或时间频率处对该 部分的属性的贡献;并且对于所述部分的多个目标部分中的。

35、每一个,差数据可以表示目标 图像部分的系数与相应参考部分的变换域系数之间的差。 0042 所述修改可以包括基于人类对变换域系数的敏感度的测量修改所述目标和参考 部分中至少一个的变换域系数的一个或多个,从而降低编码差数据所需的比特数。 0043 该属性可以包括亮度和颜色属性之一。 0044 所述修改可以基于人类对视频数据的视觉结构的敏感度的测量。 0045 可以使修改的程度可依据影响人类感知的参数而变化。 0046 修改的程度可以在进行编码期间依据影响人类感知的参数而动态地变化。 0047 修改的程度可以依据视频信号中的运动而动态地变化,该运动是影响人类感知的 参数。 0048 该运动可以通过应。

36、用到视频信号的帧的运动估计算法来确定。 0049 该运动可以由封装有生成所述视频信号的相机的移动终端中的物理传感器来检 测。 0050 修改的程度可以依据接收终端的用户离接收终端的屏幕的距离来控制,所述距离 是影响人类感知的参数。 0051 该方法可以包括从接收终端接收所述距离的指示,以用于在控制修改的程度时使 用。 0052 所述距离可以通过所述接收终端的相机的自动对焦来确定。 说 明 书CN 102792687 A 5/32页 10 0053 所述距离可以通过用户设置来确定。 0054 修改的程度可以依据所述接收方终端的屏幕的宽高比、大小和分辨率中的至少一 个来控制,该宽高比、大小和/或分。

37、辨率是影响人类感知的参数。 0055 该方法可以包括从接收终端接收所述宽高比、屏幕大小和/或分辨率的指示,以 用于在控制修改的程度时使用。 0056 对于每一个目标部分,该方法可以包括从多个潜在的参考部分之中选择相应的参 考部分。 0057 所述多个潜在的参考部分可以包括一个或多个来自于与目标部分相同帧的部分, 该方法因此可用于帧内编码。 0058 所述多个潜在的参考部分可以包括一个或多个来自于与目标部分不同帧的部分, 该方法因此可用于帧内编码。 0059 相应参考部分可以基于编码差数据所需的比特的数目来选择。 0060 该方法可以包括确定目标部分和参考部分的每一个的总能量,并且确定候选部分 。

38、的子组,每个候选部分具有在目标部分的阈值范围内的块能量,其中相应参考部分可以从 候选部分之中选择。 0061 根据本发明的另一个方面,可以提供一种传输编码的比特流的方法,包括:根据任 意上述方法特征编码视频信号,以及将编码的比特流传输到在接收终端处的解码器。 0062 根据本发明的另一个方面,提供一种压缩视频数据的方法,包括:为图像部分提供 限定该图像部分的图像数据的系数;将系数布置成组并且基于每个组的客观的和感知的度 量确定该组的索引值;基于索引值对这些组排序以生成排序的列表;基于在列表中的接近 性和感知度量选择至少两个匹配组;以及基于对匹配组中的一组与另一组的系数的比较生 成所述匹配组中的。

39、该一组的残差。 0063 进一步的方面提供一种如上所限定的方法,其中选择匹配组的步骤包括基于列表 中的接近性确定候选群组,并且从候选中选择最佳匹配,其中该最佳匹配基于比特率贡献 和感知质量。 0064 根据本发明的另一个方面,提供一种压缩视频数据的方法,包括:接收限定视频图 像的视频数据的流;对于由时间和/或空间数据限定的多个图像部分的每一个,将时间和/ 或空间数据变换到频域中以针对每个图像部分生成多个组的频域系数;基于用于每个组的 客观的和感知度量确定该组的索引值;使用索引值选择频域系数的至少两个匹配组;以及 基于匹配组中一组与另一组的比较生成匹配组中这一组的残差。 0065 在实施例中,图。

40、像数据可以是色度和亮度数据。每个组可以表示块或对象。图像 部分可以包括具有二维阵列的像素的宏块。图像部分可以包括视频流的单个帧,其中该方 法可以用于在内帧中压缩视频数据。图像部分可以包括多个帧,其中该方法可以用于帧间 预测。每个组可以包括系数的阵列。 0066 索引值可以表示每个组的能量。索引值可以基于具有零值的系数的数量。索引值 可以是系数的聚合组合。索引值可以是组中系数的模量的平均值。 0067 选择匹配组的步骤可以包括基于列表中的接近性确定候选群组,并且通过比较比 特率贡献和感知质量从候选中选择最佳匹配。 0068 根据本发明的另一个方面,可以提供一种将视频数据从传输终端传输到接收方终 。

41、说 明 书CN 102792687 A 10 6/32页 11 端的方法,该方法包括:生成表示移动图像的视频数据的流;根据任意上述方法特征的方 法压缩视频数据;以及传输来自未被预测的组的视频流的系数和被预测的至少一个组的残 差以作为编码的视频流的一部分。 0069 根据本发明的另一个方面,可以提供一种包括被配置成根据任意上述方法特征操 作的信号处理装置的编码器。 0070 根据本发明的另一个方面,可以提供一种计算机程序产品,其包括包含在计算机 可读介质上的软件且该软件被配置成使得当其在处理器上被执行时执行根据任意上述方 法特征的操作。 0071 根据本发明的另一个方面,可以提供一种根据任意上述。

42、方法特征编码的比特流。 根据另一个方面,可以提供一种包括承载比特流的传输介质的网络设备。 0072 根据本发明的另一个方面,可以提供一种解码根据任意上述方法特征编码的视频 信号的方法。该方法可以包括基于在编码的比特流中接收的量化箱大小分布的指示解码编 码的比特流。 0073 根据本发明的另一个方面,可以提供一种包括被配置成根据解码的方法操作的信 号处理装置的对应的解码器。 0074 根据本发明的另一个方面,可以提供一种解码器程序产品,其包括包含在计算机 可读介质上的软件并且该软件被配置成使得当其被执行时执行根据解码方法的操作。 附图说明 0075 为了更好地理解本发明并且示出本发明可以如何实施。

43、,现在将以示例的方式参考 附图,在附图中: 图1是视频流的两个帧的示意性图示, 图1a示出空间域中表示的块的像素值, 图1b示出在频域中表示的块的系数, 图2是示出编码方法的流程图, 图3是示出排序的块列表的曲线图, 图3a图示了块排序的示例, 图3b图示了块匹配预测的示例, 图4是编码器的示意性框图, 图5A是帧内预测的示意性示例, 图5B是帧间预测的示意性示例, 图6是解码器的示意图, 图7是编码器的示意性框图, 图8是解码器的示意性框图, 图9是对用于块匹配的候选的选择的示意性图示; 图10是编码方法的流程图, 图11是解码方法的流程图, 图12是传输的比特流的示意性表示, 图13a是块。

44、缩放的示意性图示, 说 明 书CN 102792687 A 11 7/32页 12 图13b是块旋转的示意性图示, 图13c是块旋转的另一个示意性图示, 图13d是块旋转的另一个示意性图示, 图13e是示出在块旋转中使用的计算的图, 图14a示意性图示了两个帧之间的运动移位, 图14b是运动移位的另一个示意性图示, 图14c示意性示出使用运动移位来减少数据传输, 图15a-15h示意性表示感知模型的各方面。 具体实施方式 0076 在下文中,描述一种用于在视频传输系统中数据压缩的方法和系统。首先,描述在 频域中执行的块匹配的示例性技术,其用于选择要在目标块的预测编码(coding)中使用的 参。

45、考块。接下来,描述用于用信号传递在视频预测编码中使用的参考块的身份的一些示例 性技术,以及用于进一步降低传输的视频流的比特率的方案。而后,描述在频域中可以被有 利地执行的一些示例性图像处理技术,用于进一步降低传输的视频流的比特率的方案,以 及用于压缩视频数据的感知模型。在特别优选的实施例中,这些技术可以组合,但是可替代 地它们可以独立使用。 0077 块匹配 图1示意性图示了在两个相应的时刻t和t+1处视频图像的两个连续帧ft和ft+1。 为了帧间预测的目的,第一帧ft可以被认为是参考帧,即在编码器处刚好已经根据移动序 列被编码的帧,或者在解码器处刚好已经被解码的帧。第二帧ft+1可以被认为是。

46、目标帧, 即为了编码或解码的目的其运动被设法估计的当前帧。为了说明的目的,示出了具有两个 移动对象的示例。 0078 运动估计本身在本领域中是已知的,并且因此在本文中仅在为本发明提供合适背 景所必需的程度上被描述。根据用于视频通信的国际标准(比如MPEG-1、2 & 4和H.261、 H.263 & H.264),运动估计基于对源帧的基于块的划分。例如,每个块可以包括44像素的 阵列,或者在各种其他标准中的48、84、88、168、816或1616像素的阵列。在 图1中,用Bi表示示例性块。每块的像素数可以根据所需的精度和解码速率来选择。每个 像素可以通过多种不同的方式来表示,这取决于根据标准。

47、采用的协议。在本文的示例中,每 个像素由色度(U和V)和亮度(Y)值来表示(但是其他可能的颜色空间表示在本领域中也是 已知的)。在该特定示例中,色度值由块中的四个像素共享。宏块MBi典型地包括四个块,例 如对于44块而言的88像素的阵列,或者对于88块而言的1616像素的阵列。每 个像素具有相关联的比特率,该比特率是传输关于该像素的信息所需要的数据的量。 0079 图2是根据本发明的优选实施例的数据压缩方法的示意性流程图。该方法优选地 使用基于客观度量(objective metrics)的块匹配。即,将要被编码的当前目标块的一个或 多个度量与多个其他块的对应度量进行比较,并且基于那些度量的相。

48、似性的测量来选择参 考块。随后,该参考块形成用于借助预测编码(coding)来编码当前块的基础,该预测编码 为在参考块来自相同帧f t+1 的情况下的帧内编码或者在参考块来自先前帧f t (或甚至f t-1 或f t-2 等)的帧间编码。块匹配背后的思想是当当前块相对于参考块而被编码时选择将导 说 明 书CN 102792687 A 12 8/32页 13 致小残差信号的参考块(即,使得实际的当前块与预测之间的差在根据所选的参考块预测 时将是小的),从而仅需要较小数量的比特来编码。 0080 该技术的特别优选的方面是,在频域中实施块匹配,即基于块的变换的表示的一 个或多个度量的比较来实施。 0。

49、081 因此,在步骤S1处,在多个帧的每一个的图像的每一个部分上(例如在每个块上) 执行频域变换。每个块最初被表达为空间域表示,从而该块的色度和亮度被表示为空间x 和y坐标的函数,U(x,y)、V(x,y)和Y(x,y)(或其他合适的颜色空间表示)。即,每个块由 在不同的空间x和y坐标处的一组像素值表示。随后将数学变换应用于每个块以变换成变 换域表示,从而该块的色度和亮度(或类似)被表示为诸如具有1/波长的大小的波数kx和 ky之类变量的函数,即U(k x ,k y )、V(k x ,k y )和Y(k x ,k y )。即,该块被变换为表示可以被认为 构成了该块的不同空间频率项的幅度的一组系数。这样的变换的可能性包括离散余弦变换 (DCT)、卡-洛变换(KLT)或其他变换。例如,对于在块内离散的x和y坐标处NM像素的 块,DCT将会将亮度Y(x,y)变换成一组频域系数Y(k x ,k y ): 相反地,x和y表示Y(x,y)可以根据在k 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1