用于变换域中残差符号预测的方法及装置与流程

文档序号:22627498发布日期:2020-10-23 19:36阅读:151来源:国知局
本发明实施例涉及如静止图像和/或视频图像编码和解码等图像处理领域。
背景技术
::视频编码(视频编码和解码)广泛用于数字视频应用,例如广播数字tv、经由互联网和移动网络的视频传输、视频聊天和视频会议等实时会话应用、dvd和蓝光光盘、视频内容采集和编辑系统以及安全应用的可携式摄像机。自从1990年开发h.261标准中的基于块的混合视频编码方法以来,已经开发了新的视频编码技术和工具,而这些新的视频编码技术和方法成为新的视频编码标准的基础。大多数视频编码标准的目标之一是在不牺牲图像质量的情况下,实现相比前一个标准更低的码率。其他视频编码标准包括mpeg-1视频、mpeg-2视频、itu-th.262/mpeg-2、itu-th.263、itu-th.264/mpeg-4第10部分、高级视频编码(advancedvideocoding,avc)、itu-th.265、高效视频编码(highefficiencyvideocoding,hevc)以及这些标准的扩展版(例如,可扩展性和/或三维(three-dimensional,3d)扩展版)。技术实现要素:本发明的实施例由独立权利要求的特征定义,并且由从属权利要求的特征定义实施例的其他有利实现方式。根据一个实施例,提供了一种图像块解码装置,包括处理电路,其中,所述处理电路用于:基于成本函数预测变换图像块的多个系数的符号,其中,所述成本函数包括邻近所述变换图像块的相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的变换差值;根据所述预测符号重建所述多个系数的所述符号。在一种示例性实现方式中,所述处理电路还用于:从编码流中解析符号预测误差;重建所述符号,包括向所述预测符号添加所述解析的符号预测误差。例如,所述成本函数包括邻近所述变换图像块的所述相邻像素与基于所述图像块的预测信号计算的所述相邻像素的所述预测之间的平方变换差值的总和。此外,在一种实现方式中,所述处理电路还用于预测变换图像块的所述多个系数的所述符号,包括:计算邻近所述变换图像块的所述相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的所述变换差值;计算成本函数,其中,所述成本函数包括所述变换差值与所述变换图像块之间的平方变换差值的总和,其中,所述变换图像块是根据假设集合中所述符号的每一个假设重建的;选择将所述成本函数给出的成本降到最低的所述符号的假设作为所述预测符号。例如,通过将所述符号的所述假设添加到从编码流中解析的系数来重建所述变换图像块。特别地,所述成本函数f可以通过以下给出:其中,tn=trans1d(tn),qn=trans1d(qn),vn=trans1d(vn),on=trans1d(on);其中,trans1d()为一维正交变换,tn=[2xn,–1–xn,–2–pn,0],vm=[2z–1,m–z–2,m–p0,m],qn=rn,0,om=r0,m;其中,p为预测信号,x和y为相邻像素,n和m分别为预测所述符号所在块的高度和宽度。在一种示例性实现方式中,所述相邻像素位于所述图像块的水平边界和垂直边界。在一些实施例中,所述处理电路还用于使用上下文自适应二进制算术编码(cabac)对所述符号预测误差进行解码。根据一个实施例,提供了一种图像块编码装置,包括处理电路,其中,所述处理电路用于:基于成本函数预测变换图像块的多个系数的符号,其中,所述成本函数包括邻近所述变换图像块的相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的变换差值;根据所述预测符号重建所述多个系数的所述符号。根据一个实施例,根据权利要求9所述的图像块编码装置,其中,所述处理电路还用于对所述多个系数的所述符号进行编码,包括:将符号预测误差确定为所述多个系数的所述符号与所述多个系数的所述预测符号之间的差值;将所述确定的符号预测误差插入包括所述编码图像块的编码流中。例如,所述成本函数包括邻近所述变换图像块的所述相邻像素与基于所述图像块的预测信号计算的所述相邻像素的所述预测之间的平方变换差值的总和。在一种示例性实现方式中,根据权利要求9至11中任一项所述的图像块解码装置,其中,所述处理电路还用于预测变换图像块的所述多个系数的所述符号,包括:计算邻近所述变换图像块的所述相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的所述变换差值;计算成本函数,其中,所述成本函数包括所述变换差值与所述变换图像块之间的平方变换差值的总和,其中,所述变换图像块是根据假设集合中所述符号的每一个假设重建的;选择将所述成本函数给出的成本降到最低的所述符号的假设作为所述预测符号。例如,所述成本函数f通过以下给出:其中,tn=trans1d(tn),qn=trans1d(qn),vn=trans1d(vn),on=trans1d(on);其中,trans1d()为一维正交变换,tn=[2xn,–1–xn,–2–pn,0],vm=[2z–1,m–z–2,m–p0,m],qn=rn,0,om=r0,m;其中,p为预测信号,x和y为相邻像素,n和m分别为预测所述符号所在块的高度和宽度。此外,所述相邻像素可以位于所述图像块的水平边界和垂直边界。所述解码装置的所述处理电路还用于:使用上下文自适应二进制算术编码(cabac)对所述符号预测误差进行编码。根据一个实施例,提供了一种图像块解码方法,包括以下步骤:基于成本函数预测变换图像块的多个系数的符号,其中,所述成本函数包括邻近所述变换图像块的相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的变换差值;根据所述预测符号重建所述多个系数的所述符号。根据一个实施例,提供了一种图像块编码方法,包括以下步骤:基于成本函数预测变换图像块的多个系数的符号,其中,所述成本函数包括邻近所述变换图像块的相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的变换差值;根据所述预测符号重建所述多个系数的所述符号。应注意,结合编码或解码装置中的处理电路描述的上述实施例、实现方式和示例也适用于上述编码和解码方法,可对应于由相应处理电路执行的步骤。根据一个实施例,提供了一种计算机可读介质,存储了包括指令的程序,其中,所述指令在处理器上执行时,执行上述方法的所有步骤。附图和以下描述对一个或多个实施例的细节进行了阐述。其他特征、目的和优点在说明、附图以及权利要求中是显而易见的。附图说明下面结合附图和图式对本发明实施例进行详细描述。在附图中:图1为示出用于实现本发明实施例的视频编码器示例的框图;图2为示出用于实现本发明实施例的视频解码器的示例性结构的框图;图3为示出用于实现本发明实施例的视频编码系统的示例的框图;图4为符号预测的示意图;图5为比较h.264/avc中的符号编码和符号预测的示意图;图6为示出当前块和周围相邻像素的示意图;图7为比较在像素域中使用成本函数计算的已知符号预测与在变换域中使用成本函数计算的实施例的示意图;图8为示出与符号预测和编码相关的变换系数的处理的流程图;图9为示出根据图1的编码器的示例性修正以在变换域中包括符号预测的框图;图10为示出根据图2的解码器的示例性修正以在变换域中包括符号预测的框图。具体实施方式以下描述中,参考组成本发明一部分并以说明的方式示出本发明实施例的具体方面或可使用本发明实施例的具体方面的附图。应理解,本发明实施例可在其他方面中使用,并可包括附图中未描述的结构变化或逻辑变化。因此,以下详细的描述并不当作限定,本发明的范围由所附权利要求书界定。例如,应理解,结合所描述方法的公开内容对于用于执行所述方法的对应设备或系统也同样适用,反之亦然。例如,如果描述一个或多个具体方法步骤,则对应的设备可以包括一个或多个单元(例如,功能单元)来执行所描述的一个或多个方法步骤(例如,一个单元执行一个或多个步骤,或多个单元中分别执行多个步骤中的一个或多个),即使附图中未明确描述或说明该一个或多个单元。另一方面,例如,如果基于一个或多个单元(例如,功能单元)来描述具体装置,则对应的方法可以包括一个步骤来实现一个或多个单元的功能(例如,一个步骤实现一个或多个单元的功能,或多个步骤中分别实现多个单元中一个或多个单元的功能),即使附图中未明确描述或说明该一个或多个步骤。此外,应理解,除非另有说明,否则本文描述的各种示例性实施例和/或方面的特征可彼此组合。视频编码通常是指对构成视频或视频序列的图像序列进行处理。在视频编码领域,术语“帧(frame)”与“图像(picture/image)”可以用作同义词。视频编码(coding)包括两部分:视频编码和视频解码。视频编码在源侧执行,通常包括处理(例如,压缩)原始视频图像,以减少表示视频图像所需的数据量(从而实现更高效的存储和/或传输)。视频解码在目的侧执行,通常包括相对于编码器作逆处理,以重建视频图像。关于视频图像(或一般为图像,将在下文解释)的“编码(coding)”的实施例应理解为同时涉及视频图像的“编码”和“解码”。编码部分和解码部分的组合也称为编解码(codec)(编码和解码)。在无损视频编码情况下,可以重建原始视频图像,即重建的视频图像与原始视频图像具有相同的质量(假设在存储或传输期间没有传输损耗或其他数据丢失)。在有损视频编码情况下,通过量化等进行进一步压缩,来减少表示视频图像所需的数据量,而解码器侧无法完全重建视频图像,即重建的视频图像的质量相比原始视频图像的质量较低或较差。自h.261以来的几个视频编码标准属于“有损混合视频编解码器”组(即,将像素点域中的空间预测和时间预测与变换域中用于应用量化的2d变换编码结合)。视频序列中的每个图像通常分割成不重叠块的集合,通常在块级进行编码。换句话说,在编码器侧,通常在块(视频块)级对视频进行处理(即编码),例如,通过空间(帧内)预测和时间(帧间)预测来生成预测块;从当前块(当前处理的块/待处理的块)中减去预测块,得到残差块;在变换域中对残差块进行变换和量化,以减少待传输(压缩)的数据量,而在解码器侧,将相对于编码器的逆处理应用于经编码或压缩的块,以重建当前块以进行表示。此外,编码器和解码器的处理步骤相同,使得编码器和解码器生成相同的预测(例如,帧内预测和帧间预测)和/或重建,用于对后续块进行处理(即编码)。由于视频图像处理(也称为移动图像处理)和静止图像处理(术语“处理”包括编码)共享许多概念和技术或工具,所以在下文中,术语“图像”用于指代视频序列中的视频图像(如上文所解释)和/或静止图像,以避免在不需要时对视频图像与静止图像之间进行不必要的重复和区分。如果上述描述仅仅是指静止图像,应使用术语“静止图像”。在以下实施例中,基于图1至图3描述了编码器100、解码器200和编码系统300,然后基于图4至图9更详细地描述本发明的实施例。图3是示出了编码系统300(例如,图像编码系统300)的实施例的概念性或示意性框图。编码系统300包括源设备310,用于将编码数据330(例如,编码图像330)提供给目的设备320等,以对编码数据330进行解码。源设备310包括编码器100或编码单元100,并且还(即可选地)可以包括图像源312、预处理单元314(例如,图像预处理单元314)以及通信接口或通信单元318。图像源312可以包括或可以是任何类型的图像捕获设备,用于捕获真实世界图像等;和/或任何类型的图像生成设备,例如,用于生成计算机动画图像的计算机图形处理器;或任何类型的设备,用于获取和/或提供真实世界图像、计算机动画图像(例如,屏幕内容、虚拟现实(virtualreality,vr)图像)和/或其任何组合(例如,增强现实(augmentedreality,ar)图像)。在下文中,除非另有特别说明,否则所有这些类型的图像和任何其他类型的图像将称为“图像”,而之前关于术语“图像”(涵盖“视频图像”和“静止图像”)的解释仍然适用,除非有明确的不同规定。(数字)图像为或可以看作具有强度值的像素点的二维阵列或矩阵。阵列中的像素点也可以称为像素(pixel/pel)(图像元素的简称)。阵列或图像在水平方向和垂直方向(或轴)上的像素点的数量限定了图像的大小和/或分辨率。为了表示颜色,通常采用三种颜色分量,即图像可以表示为或包括三个像素点阵列。在rgb格式或颜色空间中,图像包括对应的红色、绿色和蓝色像素点阵列。然而,在视频编码中,每个像素通常由亮度/色度格式或在颜色空间中表示,例如,ycbcr,包括通过y指示的亮度分量(有时也用l指示)和通过cb和cr指示的两个色度分量。亮度(luminance,简称luma)分量y表示亮度或灰度级强度(例如,类似在灰度图像中),而两个色度(chrominance,简称chroma)分量cb和cr表示色度或颜色信息分量。因此,ycbcr格式的图像包括亮度像素点值的亮度像素点阵列(y)和色度值的两个色度像素点阵列(cb和cr)。rgb格式的图像可以转换或变换成ycbcr格式,反之亦然。该过程也称为颜色转换或颜色变换。如果图像是单色的,则该图像可以仅包括亮度像素点阵列。图像源312可以是用于捕获图像的摄像机、包括或存储先前捕获或生成的图像的存储器(例如,图像存储器),和/或任何类型的用于获取或接收图像的(内部或外部)接口等。例如,所述摄像机可以是集成在源设备中的本地或集成摄像机,所述存储器可以是集成在源设备等中的本地或集成存储器。例如,所述接口可以是从外部视频源接收图像的外部接口,其中,所述外部视频源为诸如摄像机等的外部图像捕获设备、外部存储器,或诸如外部计算机图形处理器、计算机或服务器等的外部图像生成设备。所述接口可以是任何类型的根据任何专有或标准化接口协议的接口,例如,有线或无线接口、光接口。用于获取图像数据312的接口可以是与通信接口318相同的接口,或作为通信接口318的一部分。所述通信接口可以是诸如以太网、wlan、蓝牙、lte等的任何接口,也可以是诸如卫星或光接口等的任何有线或无线接口。传输可以是点对点传输或广播传输或组播传输。为了区分预处理单元314和预处理单元314执行的处理,图像或图像数据313也可以称为原始图像或原始图像数据313。预处理单元314用于接收(原始)图像数据313并对图像数据313进行预处理,以获得经预处理的图像315或经预处理的图像数据315。预处理单元314执行的预处理可以包括调整、颜色格式转换(例如,从rgb到ycbcr)、颜色校正,或去噪等。编码器100用于接收经预处理的图像数据315并提供经编码的图像数据171(将基于图1等进一步描述细节)。源设备310的通信接口318可以用于接收经编码的图像数据171,并将其直接传输到其他设备(例如,目的设备320或任何其他用于存储或直接重建的设备);或用于分别在存储编码数据330和/或将编码数据330传输到其他设备(例如,目的设备320,或任何其他用于解码或存储的设备)之前,处理经编码的图像数据171。目的设备320包括解码器200或解码单元200,并且还(即可选地)可以包括通信接口或通信单元322、后处理单元326和显示设备328。目的设备320的通信接口322用于直接从源设备310或从存储器等任何其它源接收经编码的图像数据171或编码数据330,其中,所述存储器为编码图像数据存储器等。通信接口318和通信接口322可以用于经由源设备310与目的设备320之间的直接通信链路(例如,直接有线或无线连接),或经由任何类型的网络(例如,有线网络(如光缆、电力线、铜缆、同轴电缆,或基于任何其他介质)、无线网络或其任意组合),或任何类型的私网和公网或其任意组合,传输或接收经编码的图像数据171或编码数据330。例如,通信接口318可以用于将经编码的图像数据171封装成合适的格式(例如,数据包),以便经由通信链路或通信网络进行传输,并且还可以用于执行数据丢失保护和数据丢失恢复。例如,与通信接口318对应的通信接口322可以用于对编码数据330进行解封装,以获取经编码的图像数据171,并且还可以用于执行数据丢失保护和数据丢失恢复(例如,包括差错隐藏)。通信接口318和通信接口322均可配置为单向通信接口(如图3中从源设备310指向目的设备320的经编码的图像数据330的箭头所指示),或双向通信接口,并且可以用于发送和接收消息等,以建立连接,确认和/或重新发送丢失或延迟的数据(包括图像数据),并交换与通信链路和/或数据传输(例如,经编码的图像数据传输)相关的任何其他信息等。解码器200用于接收经编码的图像数据171并提供经解码的图像数据231或解码图像231(将基于图2等进一步描述细节)。目的设备320的后处理器326用于对经解码的图像数据231(例如,解码图像231)进行后处理,以获得经后处理的图像数据327(例如,后处理图像327)。例如,后处理单元326执行的后处理可以包括颜色格式转换(例如,从ycbcr到rgb)、颜色校正、调整或重采样,或任何其他处理,以便准备经解码的图像数据231供显示设备328等显示。目的设备320的显示设备328用于接收经后处理的图像数据327,以向用户或观看者等显示图像。显示设备328可以是或可以包括任何类型的用于表示重建图像的显示器,例如,集成或外部的显示器或监视器。例如,显示器可以包括阴极射线管(cathoderaytube,crt)、液晶显示器(liquidcrystaldisplay,lcd)、等离子显示器、有机发光二极管(organiclightemittingdiode,oled)显示器或包括射束器、全息图或3d/vr眼镜的任何其他类型的显示器。尽管图3将源设备310和目的设备320作为单独的设备进行描述,但是设备实施例还可以包括两种设备或两种功能,即源设备310或对应功能以及目的设备320或对应功能。在这类实施例中,源设备310或对应功能以及目的设备320或对应功能可以使用相同的硬件和/或软件或通过单独的硬件和/或软件或其任意组合来实现。基于描述,图3所示的源设备310和/或目的设备320中的不同单元或功能的存在和(精确)划分可以根据实际设备和应用而变化,这对技术人员来说显而易见的。因此,图3所示的源设备310和目的设备320仅仅是本发明的示例性实施例,且本发明实施例不限于图3所示的实施例。源设备310和目的设备320可以包括多种设备中的任一种,包括任何类型的手持或固定设备,例如,笔记本(notebook/laptop)电脑、手机、智能手机、平板电脑(tablet/tabletcomputer)、摄像机、台式计算机、机顶盒、电视机、显示设备、数字媒体播放器、视频游戏机、视频流设备、广播接收器设备等,并且可以不使用或使用任何类型的操作系统。编码器和编码方法图1示出了编码器100(例如,图像编码器100)的实施例的示意性/概念性框图。编码器100包括输入端102、残差计算单元104、变换单元106、量化单元108、反量化单元110和逆变换单元112、重建单元114、缓冲器118、环路滤波器120、解码图像缓冲器(decodedpicturebuffer,dpb)130、预测单元160(包括帧间估计单元142、帧间预测单元144、帧内估计单元152、帧内预测单元154、模式选择单元162)、熵编码单元170和输出端172。图1所示的视频编码器100也可以称为混合视频编码器或根据混合视频编解码器的视频编码器。残差计算单元104、变换单元106、量化单元108和熵编码单元170等形成编码器100的正向信号路径,而反量化单元110、逆变换单元112、重建单元114、缓冲器118、环路滤波器120、解码图像缓冲器(dpb)130、帧间预测单元144和帧内预测单元154等形成编码器的反向信号路径。编码器的反向信号路径与解码器(参见图2中的解码器200)的信号路径对应。编码器用于通过输入端102等接收图像101或图像101中的图像块103,其中,图像101是形成视频或视频序列的图像序列中的图像等。图像块103也可以称为当前图像块或待编码图像块,图像101也可以称为当前图像或待编码图像(特别是在视频编码中,以便将当前图像与其他图像(例如,同一视频序列(即,也包括当前图像的视频序列)中的先前编码和/或解码的图像))区分开。编码器100的实施例可以包括分割单元(图1中未描述),例如,分割单元也可以称为图像分割单元,用于将图像103分割成多个块(如块103等块),通常分割成多个不重叠块。分割单元可用于对视频序列的所有图像使用相同的块大小和限定块大小的对应网格,或者用于改变图像或图像子集或组之间的块大小,并将每个图像按层次分割成对应块。术语“块”是指图像的矩形(不一定是正方形,但可能是正方形)部分。与图像101一样,块103同样是或可以看作是具有强度值(像素点值)的像素点的二维阵列或矩阵,但是块103的尺寸比图像101小。换句话说,例如,根据所应用的颜色格式,块103可以包括一个像素点阵列(例如,单色图像101情况下的亮度阵列)或三个像素点阵列(例如,彩色图像101情况下的一个亮度阵列和两个色度阵列)或任何其他数量和/或类型的阵列。块103的水平方向和垂直方向(或轴线)上的像素点数量限定了块103的大小。图1所示的编码器100用于逐块对图像101进行编码。例如,按块103进行编码和预测。残差计算单元104用于通过如下等方式基于图像块103和预测块165(下文详细介绍预测块165)来计算残差块105:逐个像素点(逐个像素)从图像块103的像素点值中减去预测块165的像素点值,以获得像素点域中的残差块105。变换单元106用于对残差块105的像素点值进行空间频率变换或线性空间(频率)变换等变换(例如,离散余弦变换(discretecosinetransform,dct)或离散正弦变换(discretesinetransform,dst)),以获得变换域中的变换系数107。变换系数107也可以称为变换残差系数,表示变换域中的残差块105。变换单元106可用于进行dct/dst的整数近似法,如针对h.265/hevc指定的核变换。与正交dct变换相比,这类整数近似法通常通过某一因子按比例缩放。为了维持经过正变换和逆变换处理的残差块的范数,应用附加缩放因子作为变换过程的一部分。缩放因子通常是基于某些约束来选择的,例如,缩放因子是用于移位运算的2的幂、变换系数的比特深度、准确性与实施成本之间的权衡等。例如,在解码器200侧,通过逆变换单元212等为逆变换(以及在编码器100侧,通过逆变换单元112等为对应的逆变换)指定具体的缩放因子;相应地,可以在编码器100侧,通过变换单元106等为正变换指定对应的缩放因子。量化单元108用于通过应用标量量化或矢量量化等对变换系数107进行量化,以获得量化系数109。量化系数109也可以称为经量化的残差系数109。例如,对于标量量化,可以应用不同程度的缩放来实现较细或较粗的量化。较小量化步长对应较细量化,而较大量化步长对应较粗量化。可以通过量化参数(quantizationparameter,qp)指示合适的量化步长。例如,量化参数可以是合适的量化步长的预定义集合的索引。例如,较小的量化参数可对应精细量化(较小量化步长),较大的量化参数可对应粗糙量化(较大量化步长),反之亦然。量化可以包括除以量化步长,而反量化单元110等执行的对应或反解量化可包括乘以量化步长。根据hevc的实施例可用于使用量化参数来确定量化步长。通常,可以基于量化参数使用包括除法的等式的定点近似来计算量化步长。量化和解量化可以引入附加缩放因子以恢复残差块的范数,由于在量化步长和量化参数的等式的定点近似中使用的缩放,可能会修改残差块的范数。在一种示例性实现方式中,可以合并逆变换和解量化的缩放。或者,可以使用自定义量化表并在码流中等将其从编码器信号发送到解码器。量化是有损操作,其中量化步长越大,损耗越大。编码器100的实施例(或分别量化单元108的实施例)可用于通过对应的量化参数等输出量化方案和量化步长,使得解码器200可以接收和应用对应的反量化。编码器100(或量化单元108)的实施例可用于输出量化方案和量化步长,例如直接输出或经由熵编码单元170或任何其他熵编码单元编码的熵输出。反量化单元110用于通过基于或使用与量化单元108相同的量化步长应用量化单元108所应用的量化方案的逆过程等,对量化系数应用量化单元108的反量化,以获得解量化系数111。解量化系数111也可以称为解量化残差系数111,对应于变换系数108,但是由于量化造成的损耗,解量化系数111通常与变换系数不同。逆变换单元112用于应用变换单元106所应用的变换的逆变换,例如逆离散余弦变换(dct)或逆离散正弦变换(dst),以获得像素点域中的逆变换块113。逆变换块113也可以称为经逆变换的解量化块113或经逆变换的残差块113。重建单元114用于通过逐个像素点添加经解码残差块113的像素点值和预测块165的像素点值等,合并(例如,添加)逆变换块113和预测块165以获得像素点域中的重建块115。缓冲单元116(或简称“缓冲器”116)(例如线缓冲器116)用于缓冲或存储重建块和相应的像素点值,以进行帧内估计和/或帧内预测等。在其他实施例中,编码器可用于使用存储在缓冲单元116中的未滤波的重建块和/或相应的像素点值进行任何类型的估计和/或预测。环路滤波器单元120(或简称“环路滤波器”120)用于通过应用去块像素点自适应偏移(sample-adaptiveoffset,sao)滤波器或其他滤波器(例如,锐化或平滑滤波器或协同滤波器)等,对重建块115进行滤波以获得滤波块121。滤波块121也可以称为经滤波重建块121。可以在环路中应用其他或额外滤波器。环路滤波器单元120的实施例可以包括(图1中未示出)滤波器分析单元和实际滤波器单元,其中,所述滤波器分析单元用于为所述实际滤波器确定环路滤波器参数。滤波器分析单元可用于将固定的预定滤波器参数应用于实际环路滤波器,从预定滤波器参数集合中自适应地选择滤波器参数,或自适应地为实际环路滤波器计算滤波器参数。环路滤波器单元120的实施例可以包括(图1中未示出)一个或多个滤波器(环路滤波器组件/子滤波器),例如,一个或多个不同种类或类型的滤波器,这些滤波器例如串联连接或并联连接或以其任何组合连接,其中,滤波器都可以单独或与所述多个滤波器中的其他滤波器联合包括滤波器分析单元,以确定相应的环路滤波器参数,例如,如前一段落所述。编码器100(分别地环路滤波器单元120)的实施例可用于输出环路滤波器参数,例如直接输出或通过熵编码单元170或任何其他熵编码单元所编码的熵输出,使得例如解码器200可以接收和应用相同环路滤波器参数进行解码。解码图像缓冲器(dpb)130用于接收和存储滤波块121。解码图像缓冲器130还可用于存储同一当前图像或不同图像(例如,先前重建的图像)的其他先前滤波块(例如,先前重建和滤波块121),并且可提供完整的先前重建(即解码)的图像(和对应的参考块和像素点)和/或部分重建的当前图像(和对应的参考块和像素点),用于帧间估计和/或帧间预测等。本发明的其他实施例还可以用于将解码图像缓冲器130的先前滤波块和对应的滤波像素点值用于任何类型的估计或预测,例如,帧内估计和帧内预测以及帧间估计和帧间预测。预测单元160(也称为块预测单元160)用于接收或获取图像块103(当前图像101的当前图像块103)和经解码或至少重建的图像数据,例如,来自缓冲器116的同一(当前)图像的参考像素点和/或来自解码图像缓冲器130的一个或多个先前解码图像的经解码的图像数据231,以及用于处理此类数据进行预测,即提供预测块165。预测块165可以是帧间预测块145或帧内预测块155。模式选择单元162可用于选择预测模式(例如,帧内预测或帧间预测模式)和/或对应的预测块145或155,以用作预测块165来计算残差块105和重建重建块115。模式选择单元162的实施例可用于(例如,从预测单元160支持的预测模式中选择)选择预测模式,所述预测模式提供最佳匹配或者说最小残差(最小残差意指为了传输或存储进行更好的压缩),或提供最小信令开销(最小信令开销意指为了传输或存储进行更好的压缩),或者同时考虑或平衡以上两者。模式选择单元162可用于基于率失真优化(ratedistortionoptimization,rdo)确定预测模式,即选择提供最小率失真优化的预测模式,或者选择至少满足预测模式选择标准的关联率失真的预测模式。下文将更详细地解释由示例性编码器100执行的预测处理(例如,通过预测单元160)和模式选择(例如,通过模式选择单元162)。如上所述,编码器100用于从(预定的)预测模式集合中确定或选择最佳或最优的预测模式。预测模式集合可以包括帧内预测模式和/或帧间预测模式等。帧内预测模式集合可以包括32种不同的帧内预测模式,例如,如dc(或均值)模式和平面模式等非方向性模式或者如h.264等定义的方向性模式,或者可以包括65种不同的帧内预测模式,例如,如dc(或均值)模式和平面模式的非方向性模式或者如h.265等定义的方向性模式。(或可能的)帧间预测模式集合取决于可用参考图像(即,例如存储在dpb230中的先前至少部分解码的图像)和其他帧间预测参数,例如,取决于是否使用整个参考图像或只使用参考图像的一部分(例如,当前块的区域附近的搜索窗口区域)来搜索最佳匹配参考块,和/或取决于是否应用像素内插(例如,二分之一/半像素内插和/或四分之一像素内插)。除上述预测模式外,还可以应用跳过模式和/或直接模式。预测单元160还可以用于将块103分割成更小的块分割或子块,例如,迭代使用四叉树(quad-tree,qt)分割、二叉树(binary-tree,bt)分割或三叉树(triple-tree,tt)分割或其任何组合,以及用于对每个块分割或子块进行预测等,其中,所述模式选择包括选择分割块103的树形结构以及应用于每个块分割或子块的预测模式。帧间估计单元142用于接收或获取图像块103(当前图像101的当前图像块103)和解码图像231,或至少一个或多个先前重建块(例如,一个或多个其他/不同的先前解码图像231的重建块),以进行帧间估计(interestimation/interpictureestimation)。例如,视频序列可以包括当前图像和先前解码图像231,或换句话说,当前图像和先前解码图像231可以为构成视频序列的一系列图像的一部分或构成该图像序列。例如,编码器100可用于从多个其他图像中的同一或不同图像的多个参考块中选择参考块,并将参考图像(或参考图像索引)和/或参考块的位置(x坐标、y坐标)与当前块的位置之间的偏移(空间偏移)作为帧间估计参数143提供给帧间预测单元144。该偏移也称为运动矢量(motionvector,mv)。帧间估计也称为运动估计(motionestimation,me),帧间预测也称为运动预测(motionprediction,mp)。帧间预测单元144用于获取(例如,接收)帧间预测参数143,并基于或使用帧间预测参数143进行帧间预测,以获得帧间预测块145。尽管图1示出了两个不同的用于帧间编码的单元(或步骤),即帧间估计142和帧间预测152,但是这两种功能可以作为一个整体来执行(帧间估计需要/包括计算帧间预测块,即,该帧间预测154或“一种”帧间预测154),例如,通过迭代测试可能的帧间预测模式的所有可能的或预定的子集,同时存储当前最佳的帧间预测模式和相应的帧间预测块,并将当前最佳的帧间预测模式和相应的帧间预测块作为(最终的)帧间预测参数143和帧间预测块145,而不用再执行一次帧间预测144。帧内估计单元152用于获取(例如,接收)图像块103(当前图像块)和同一图像的一个或多个先前重建块(例如,重建相邻块),以进行帧内估计。例如,编码器100可用于从多个(预定的)帧内预测模式中选择帧内预测模式并将其作为帧内估计参数153提供给帧内预测单元154。编码器100的实施例可用于基于优化标准(例如,最小残差(例如,提供与当前图像块103最相似的预测块155的帧内预测模式)或最小率失真)选择帧内预测模式。帧内预测单元154用于基于帧内预测参数153(例如,所选帧内预测模式153)确定帧内预测块155。尽管图1示出了两个不同的用于帧内编码的单元(或步骤),即帧内估计152和帧内预测154,但是这两种功能可以作为一个整体来执行(帧内估计需要/包括计算帧内预测块,即,该帧内预测154或“一种”帧内预测154),例如,通过迭代测试可能的帧内预测模式的所有可能的或预定的子集,同时存储当前最佳的帧内预测模式和相应的帧内预测块,并将当前最佳的帧内预测模式和相应的帧内预测块作为(最终的)帧内预测参数153和帧内预测块155,而不用再执行一次帧内预测154。熵编码单元170用于单独或联合(或完全不联合)对经量化的残差系数109、帧间预测参数143、帧内预测参数153和/或环路滤波器参数应用熵编码算法或方案(例如,可变长度编码(variablelengthcoding,vlc)方案、上下文自适应vlc(contextadaptivevlc,calvc)方案、算术编码方案、上下文自适应二进制算术编码(contextadaptivebinaryarithmeticcoding,cabac),以获得经编码的图像数据171。输出端172可以使用编码码流171的形式等输出编码图像数据171。图2示出了示例性视频解码器200,用于接收例如由编码器100编码的经编码的图像数据(例如,经编码码流)171,以获得解码图像231。解码器200包括输入端202、熵解码单元204、反量化单元210、逆变换单元212、重建单元214、缓冲器216、环路滤波器220、解码图像缓冲器230、预测单元260、帧间预测单元244、帧内预测单元254、模式选择单元260和输出端232。熵解码单元204用于对经编码的图像数据171执行熵解码,以获得量化系数209和/或经解码的编码参数(图2中未示出)等,例如,帧间预测参数143、帧内预测参数153和/或环路滤波器参数中的(解码的)任一者或全部。在解码器200,反量化单元210、逆变换单元212、重建单元214、缓冲器216、环路滤波器220、解码图像缓冲器230的实施例中,预测单元260和模式选择单元260用于执行编码器100(及相应功能单元)的逆处理,以对经编码的图像数据171进行解码。特别地,反量化单元210的功能可以与反量化单元110相同;逆变换单元212的功能可以与逆变换单元112相同;重建单元214的功能可以与重建单元114相同;缓冲器216的功能可以与缓冲器116相同;环路滤波器220的功能可以与环路滤波器120相同(关于实际环路滤波器,因为环路滤波器220通常不包括滤波器分析单元来基于原始图像101或块103确定滤波器参数,而是从熵解码单元204等接收(显式或隐式)或获取用于编码的滤波器参数;解码图像缓冲器230的功能可以与解码图像缓冲器130相同。预测单元260可以包括帧间预测单元244和帧内预测单元254,其中,帧间预测单元244的功能可以与帧间预测单元144相同;帧内预测单元254的功能可以与帧内预测单元154相同。预测单元260和模式选择单元262通常用于执行块预测和/或仅从编码数据171获取预测块265(无需原始图像101的任何其他信息)以及用于从熵解码单元204等接收或获取(显式或隐式地)预测参数143或153和/或关于所选预测模式的信息。解码器200用于经由输出232等输出解码图像230,用于向用户呈现或供用户观看。如上所述,一些图像和视频编解码器对量化变换系数进行编码。非零变换系数有符号,即由绝对值和正负号组成。对一个系数的符号进行编码需要一个比特来指示是正号还是负号。换句话说,符号比特值0可以指示正号,而符号比特值1可以指示负号,反之亦然。最先进的视频编码标准不使用量化变换系数符号的熵编码。在h.264/avc和h.265/hevc中,符号数据被认为是等概率的(正负号等概率出现),因此在cabac旁路模式下对其进行编码。然而,可以通过分析重建块之间的不连续性来预测符号数据。提供较小不连续性的量化变换系数的符号出现的概率比提高不连续性的量化变换系数的符号出现的概念更高。几种方法都基于这种统计属性,如k.kazui等人“富士通的视频编码技术提案(videocodingtechnologyproposalbyfujitsu)”,jctvc-a115对第一届jct-vc会议的贡献,德国,德累斯顿,2010年4月(下文称为jctvc-a115)和us2017/0142444a1(下文称为us’444),其均以引用的方式并入本文中。jctvc-a115的技术如图4所示。它从相邻块(先前处理(即,编码或解码)的相邻块,在该示例块中,当前块410的顶部、左上角和左侧的相邻块)中的像素估计当前块410的变换系数的符号,并通过cabac对估计符号与原始符号的差值进行编码(0:相同;1:不同)。如果符号得以很好地估计(预测),那么差值趋于零,cabac可以提高编码效率。通常,当前块410的边界处的像素a与相邻块一侧同一边界处的像素之间存在高相关性。此属性用于预测当前块410中变换系数的符号。假设存在m个非零系数(c(1)、c(2)、……、c(m)),将在当前块410中预测这些系数的符号,这些符号的可能组合k(sk(1)、sk(2)、……、sk(m))的数量为2m。组合范围为(+、+、……、+)到(–、–、……、–)。在该示例中,变换系数是离散余弦变换(dct)系数。确定系数,这些系数包括其水平绝对值(无符号值,即量值)和符号组合k,将这些系数逆变换到像素域并进行解量化(即,缩放和舍入),产生残差440(预测误差)的量化块。将像素域中的预测误差440添加到预测块430以获得残差块420。将当前块410的上边界和左边界处的重建边界像素b与从相邻块外推的像素a(由图4中的箭头指示)进行比较。对k的所有组合都执行该操作。将像素a与像素b之间的平方误差降到最低的符号组合k定义为估计符号。也可以应用绝对差和最小化。图5示出了jctvc-a115中提出的方法与传统h.264/avc符号编码的比较,下表1总结了jctvc-a115的方法执行的特定步骤。表1:用于系数符号预测和编码的方法步骤从图5的顶部部分可以看出,传统的h.264/avc方法通过cabac旁路编码对所有符号进行编码。图6示出了当前块610和当前块610顶部上的像素630以及当前块610左侧的像素620的详细视图。像素630和620属于相邻块。在空间(像素)域中,成本函数f定义如下:其中,n和m分别是块的高度和宽度。从等式1可以看出,如果像素值yi,0和y0,j(i=0……n且j=0……m)的值与最接近于相应相邻块的边界的相邻块中的两行(z1,j和z2,j)和两列(xi,–2和xi,–1)中的像素值相似,则成本函数f的值较低。上述摘要文档中提出的技术涉及进行符号估计的逆变换,因为使用像素值的差值计算给定符号集合的成本函数值f,其中,所述给定符号集合通过所检查的假设(该假设对应特定组合k)确定。尽管存在快速估计方法,但向空域转换的计算成本仍然很高,被认为是这些方法的一个主要缺点。有鉴于此,本发明提供了一些实施例,这些实施例可以减少执行符号预测所需的运算数量。这可以通过在变换域中计算成本估计而不是在空间域中计算成本估计来实现。特别地,根据一个实施例,提供了一种图像块解码装置,包括处理电路,其中,所述处理电路用于:基于成本函数预测变换图像块的多个系数的符号,其中,所述成本函数包括邻近所述变换图像块的相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的变换差值;根据所述预测符号重建所述多个系数的所述符号。应注意,所述多个系数可以是有限m个非零系数。如上所述,m个系数可以是当前块的系数中量值最大的m个系数。然而,本发明并不限于此,m个系数可以仅仅是按照预定顺序的当前块中前m个非零系数。所述预定顺序可以是扫描顺序,其中,所述扫描顺序可以通过在标准中定义该扫描顺序或在标准中定义一组扫描顺序来预先确定,所述一组扫描顺序可通过在码流内信号发送或从码流中的一些不同参数(如预测模式等)隐式导出等来配置。或者,扫描顺序可以在码流中完整地信号发送。在对系数应用量化的情况下,系数通常是已经量化的系数。因此,与上文讨论的图4相反,不将预测信号430添加到重建残差440,而是从相邻像素值中减去预测信号430。这是因为没有执行逆变换,所以未使用重建残差信号440。具体地,不对残差信号进行逆变换以获得重建边界像素,而是对与当前块相邻的像素与外推到相邻像素的区域的当前块的预测信号的像素之间的差值进行正变换。此外,根据一种示例性实现方式,所述成本函数包括邻近变换图像块的相邻像素与基于图像块的预测信号计算的相邻像素的预测之间的平方变换差值的总和。采用平方范数具有帕塞瓦尔恒等式所带来的优势。根据帕塞瓦尔恒等式,在正交变换(例如,离散余弦变换(dct)和离散正弦变换(dst))的变换域中计算的平方差值总和(sumofsquareddifference,ssd)应该给出与在空间(像素)域中所计算的ssd相同的结果。因此,所提出技术的编码效率不应低于上文结合jctvc-a113和us’444所述技术的效率。当符号预测在变换域中进行时,由于无需对执行逆变换进行计算,因此上述实施例的计算复杂度可以大大降低。因此,本实施例的实施可以是对硬件友好的,并且不需要额外的ram和rom内存缓冲区。此外,可以重用用于执行变换的正变换模块106。只需要从线缓冲器中取一次边界像素。根据一个实施例,也使用cabac上下文模型,而不是采用等概率符号值编码(旁路)对符号预测误差进行编码。然而,在编码端和解码端以类似方式执行的符号估计流程的执行方式与上文结合图4和图5描述的流程的执行方式不同。从图7可以看到上文提到的实施例的示例性实现方式的示意图。下面是这种实现方式的特殊性:-在变换域中进行符号预测;-将预测信号传播到相邻块区域,而不是重建当前块并从相邻块的对应像素减去其边界像素。为了简单起见,图7中仅考虑相邻块的列。根据应用本实施例的框架,还可以使用上排、右列甚至下排。换句话说,符号预测可以使用任何可用的边界像素。在上述示例中,假设可用块为顶部块、左侧块和左上角块。这对应于如下假设:块的处理顺序从左到右,从上到下,这在当前编解码器中是常见的。通常,在解码器侧,可以使用任何先前解码的相邻块(按照解码的顺序)。相应地,在编码器侧,可以使用任何先前编码的相邻块。在实施例的一种实现方式中,重新定义成本函数f以使用像素差的平方而不是模(绝对差和):其中,n和m是块的高度和宽度;x、y和z的定义仍然与结合图6所述的相同。重建块710由预测720部分和残差730部分组成:yi,j=pi,j+ri,j,其中,pi,j是位置i,j上的预测,ri,j是位置i,j上的预测误差像素(残差)。在这种情况下,可以将等式1a中的分量重新布置如下:其中:tn=[2xn,–1–xn,–2–pn,0],vm=[2z–1,m–z–2,m–p0,m],qn=rn,0且om=r0,m。根据帕塞瓦尔恒等式,等式1a的函数f可以在变换域中重写为以下等式2:在上文等式2中:tn=trans1d(tn),qn=trans1d(qn),vn=trans1d(vn),on=trans1d(on),其中,trans1d()是一维正交变换。因此,可以计算成本函数,从而可以在变换域中预测量化变换系数的符号。为了确定qn、on与残差的二维变换rn,m=trans2d(rn,m)之间的关系,按一般形式写出rn,m与rn,m之间的关系:其中,是变换核心(基函数)。例如,二维dct(dct2)的基函数如下:此外,以下等式3分别定义在像素域(qn)和变换域(qk)中与相邻块的边界处当前块的列的残差:上文第一个等式是rk,l的逆变换,其恢复qn个像素(通过qn的定义)。变换核心w在这里是正交的,即正变换(第二等式)和逆变换(第一等式)重合。不需要对qn进行1d变换(第一个等号):实际上,qk是rk,l的逆1d变换(第二个等号)。就on(列)和rn,m而言,有类似的关系。特别地,qk(行系数)对应w0,lrk,l,on(列系数)对应wm,0rk,l。相应地,与qk相比,零索引只是改变o的位置。因此,等式2中的上述成本函数f可以在频域中完全计算。在此基础上,计算多个系数的符号的预测。在图像块解码装置中,处理电路还可以用于:从编码流中解析符号预测误差;重建所述符号,包括向预测符号添加解析的符号预测误差。图7示出了上文结合图4描述的方法的比较。特别地,参考符号710、720和730分别对应相应符号420、430和440,并且表示重建块、预测块和残差块。也如图1中所示,通过如下方式获得残差块:对块a的变换系数采用m个符号的第k个假设(符号组合),然后对具有符号的系数进行逆变换和解量化(块iq+idct)。为了避免对每个检验假设进行这种逆变换和反量化,图7示出了本发明实施例的方法。特别地,将块a的系数(对应块a与相邻块740的边界处的列qn)与变换差值列bcol进行了比较。通过如下方式获得变换差值列bcol(对应tn):从相邻块列770中减去传播预测信号760,从而获得像素域中的差值信号750,将差值信号750变换为变换差值。所述变换是任何正交变换,如变换到频谱域中,例如,dft、fft、dct或dst或其整数版本。差值信号750对应tn=[2xn,–1–xn,–2–pn,0],其中,来自相邻块的传播预测信号770为(2xn,–1–xn,–2),块790的预测信号760为pn,0。获取通过xn,–2与xn,–1(即,相邻块边界处的两列)之间的斜率确定的外推部分作为传播预测770。然后,在变换域中通过以下成本函数进行图7中a与b之间的比较:从上文成本函数中可以看出,它对应上文等式2中的成本函数f,但是受限于其基于左侧相邻块的列部分,省略了基于顶部相邻块的行部分。这仅仅是用于简单解释的一个示例。如本领域技术人员所清楚的,任何相邻块都可用于以类似方式进行比较。通常,根据该实施例,所述处理电路还用于预测变换图像块的多个系数的符号,包括:-计算邻近变换图像块的相邻像素770与基于图像块790的预测信号p计算的相邻像素的预测760之间的变换差值b;-计算成本函数f,其中,所述成本函数包括所述变换差值b与变换图像块a之间的平方变换差值的总和,其中,根据假设集合k=1……2^m中符号sk(i),i=0……m–1的每一个假设k确定变换图像块a;-选择将成本函数f给出的成本降到最低的符号的假设k作为预测符号(对应预测符号=argminkf)。例如,通过将符号sk(i)的假设添加到从经编码码流中解析的系数c(i)来重建变换图像块a。将这种方法用于检验k假设,找出使成本函数最小化的最佳假设。该假设成为块a的预测符号。此外,为了获得块a的符号,然后将预测符号添加到符号预测误差,其中,所述符号预测误差可以使用上下文自适应二进制算术编码(cabac)从码流中解码。如上文所解释,在一种特别的示例性实现方式中,所述成本函数f通过以下提供:其中,tn=trans1d(tn),qn=trans1d(qn),vn=trans1d(vn),on=trans1d(on);其中,trans1d()为一维正交变换,tn=[2xn,–1–xn,–2–pn,0],vm=[2z–1,m–z–2,m–p0,m],qn=rn,0,om=r0,m;其中,p为预测信号,x和y为相邻像素,n和m分别为预测符号所在块的高度和宽度。应注意,相邻像素可以位于图像块的水平边界和垂直边界。垂直边界可以是左边界或右边界,水平边界可以是顶边界。如果在对当前块进行处理(解码)时已经对顶部和左侧(和/或右侧)的相邻块进行了解码,那么这是有益的。然而,本发明不限于这类实施例。通常,在对当前块进行解码时已经解码(因此可用)的一个或多个相邻块可以用于预测符号。然后,成本函数f包括当前块像素相对于相应可用相邻块的那些边界像素的对应平滑度检查。图8示出了根据一个实施例的编码流程图。上下文确定过程802使用了与变换和量化残差对应的量化变换系数801,其中,所述上下文确定过程802操作与us’444中所述的类似。us’444提供了有关符号估计的进一步细节。例如,它示出了与上文表1的步骤3不同的预测符号编码方法。该修改通过引入两个预测符号列表来实现(表1步骤1的修改)。属于这两个列表的预测符号使用不同的cabac上下文进行编码。指定以下规则来填充这些列表:-第一列表用量值大于预定义阈值t1的系数符号填充。第一列表中的符号总数受预定义值m的约束;-如果第一列表中的符号数量n小于m,则填充第二列表。第二列表中的符号总数受(m–n)约束,使得两个列表中的符号总数不超过m。填充第二列表的系数按它们在光栅顺序中的位置排序,其量值不应大于t1。基于符号属于第一列表还是第二列表确定对该符号进行编码的上下文(表1中步骤3的差异)。该过程802获得系数的候选位置集合以及与这些系数位置相关联的上下文cxj。之后,如us’444中的机制等特殊机制选择属于集合符号预测的位置中的哪个位置被执行(即,选择符号预测的m个系数)。对于那些未被选择的位置,执行传统的符号编码过程809。在其他情况下(对于所选择的m个系数),根据上文描述的图7和等式2和等式3执行符号预测806。特别地,为了预测符号806,需要相邻块的重建像素。从相邻像素获取过程803提供的相邻像素中减去当前重建块的预测信号的像素804。1d变换805提供在等式2中使用的tn和vm。预测变换残差符号806包括:根据等式3计算qn和on,根据等式2获得成本函数值。在变换域中进行的计算在计算上比较容易,因为并非tn和vm的所有可用系数都用于计算成本函数。相反,该方法仅使用属于特定行和/或特定列的若干系数。该行和列是系数位置的对应索引,所述系数的符号正在被预测。成本计算块807生成使等式2的成本函数最小化的符号集合。然后计算符号预测误差,所述符号预测误差与m个系数的实际符号与系数的预测符号之间的差值对应。在处理块208中利用上下文cxj对符号预测误差进行熵编码。所得比特与传统符号编码809的结果相结合,并在过程811中嵌入码流中。换句话说,除了解码器之外,提供了一种图像块编码装置,包括处理电路,其中,所述处理电路用于:基于成本函数预测变换图像块的多个系数的符号,其中,所述成本函数包括邻近变换图像块的相邻像素与基于图像块的预测信号计算的相邻像素的预测之间的变换差值;根据预测符号重建多个系数的符号。所述多个系数可以对应上文提到的m个系数。m值可以是固定的,也可以是由量值超过某个阈值的系数的数量给出。还应注意,多个m小于上文示例中的所有非零系数。然而,原则上,符号预测也可以应用于所有非零符号。根据一种有利的实现方式,用于符号预测的m个系数是当前块的非零系数中量值最大的m个系数。上文提到的系数编码可以通过如下方式执行:确定多个系数的符号与多个系数的预测符号之间的差值作为符号预测误差;然后将所确定的符号预测误差插入包括编码图像块的编码流中。编码流可以是码流,也包括当前块的图像数据以及关于对当前块,和/或静止图像或视频图像的其他块进行编码的模式的其他信令信息。也如结合符号解码所述,实施例的成本函数包括邻近变换图像块的相邻像素与基于图像块的预测信号计算的相邻像素的预测之间的平方变换差值的总和。特别地,在该实施例中,所述编码装置的处理电路可以用于预测变换图像块的多个系数的符号,包括:计算邻近所述变换图像块的相邻像素与基于图像块的预测信号计算的相邻像素的预测之间的变换差值;计算成本函数,其中,所述成本函数包括所述变换差值与所述变换图像块之间的平方变换差值的总和,其中,根据假设集合中符号的每一个假设重建所述变换图像块;选择将所述成本函数给出的成本降到最低的符号的假设作为预测符号。所述假设集合由m个符号的组合k形成,可以包括所有可能的组合(即,m个组合的2的幂)。编码器还可以包括处理电路,所述处理电路用于通过二进制编码对除m个符号之外的其余变换系数符号进行编码-用1对正号进行编码,用0对负号进行编码,反之亦然。成本函数f也可以以与解码器处的成本函数相同的方式给出,即:其中,tn=trans1d(tn),qn=trans1d(qn),vn=trans1d(vn),on=trans1d(on);其中,trans1d()为一维正交变换,tn=[2xn,–1–xn,–2–pn,0|,vm=[2z–1,m–z–2,m–p0,m],qn=rn,0,om=r0,m;其中,p为预测信号,x和y为相邻像素,n和m分别为预测符号所在块的高度和宽度。编码器的处理电路还可以用于:使用上下文自适应二进制算术编码(cabac)对符号预测误差进行编码。然而,本发明不限于采用cabac。相反,采用使码字的长度适应于用相应的码字(如cavlc或任何vlc编码),对对应符号进行编码的概率的任何熵编码。图9示出了如图1等编码器中上述实施例的示例性实现方式。特别地,新引入的模块122执行符号预测,修改的模块970执行熵编码。基于量化系数的量值定义使用cabac上下文进行编码的符号的位置,因此,符号预测122使用量化过程108的结果。熵编码模块970包括两个修改:-对符号预测误差123而不是量化变换系数块109内的m个给定位置的集合的符号值进行编码。-引入新的上下文,应用这些新的上下文在熵编码器970中对符号预测误差123进行编码,从而产生输出971。图10示出了如图2等解码器中上述实施例的示例性实现方式。图10中的解码器具有对应的新符号预测模块122和修改的熵解码模块1004。符号预测模块122至少在符号预测计算方面与在编码端使用的符号预测模块基本相同(参考图9),但使用从码流971中解析的预测误差信号123。符号预测123恢复量化变换系数209的一些(m个)符号,所述量化变换系数209位于量化变换系数209的块内量值分布所定义的(m)个位置处。在解析过程(熵解码1004)中,仅恢复符号预测误差信号123,而不恢复符号本身。本发明实施例不引入解析依赖性,因为在完成解析过程1004之后,具体地,可以与反量化过程210并行地从预测误差信号123中恢复实际符号值和位置。将解析的符号预测误差123添加到块122中的预测符号中,从而产生解码(重建)符号209。预测符号的获得方式与编码器侧相同,仅使用已解码的相邻块并测试m个符号的k个假设。应注意,本说明书提供了图像(帧)的解释,但在隔行图像信号的情况下,用字段替代图像。尽管本发明实施例主要基于视频编码进行了描述,但应注意的是,编码器100和解码器200(相应地,系统300)的实施例也可以用于静止图像处理或编码,即,对视频编码中独立于任何先前或连续图像的单个图像进行处理或编码。通常,在图像处理编码限于单个图像101的情况下,仅帧间估计142、帧间预测144、242不可用。视频编码器100和视频解码器200的大部分(如果不是全部的话)其他功能(也称为工具或技术)可以同样用于静止图像,例如分割、变换(缩放)106、量化108、反量化110、逆变换112、帧内估计142、帧内预测154、254和/或环路滤波120、220以及熵编码170和熵解码204。本领域技术人员将理解,各种图式(方法和装置)的“块”(“单元”)表示或描述本发明实施例的功能(而不必是在硬件或软件中的单独“单元”),因此同等描述装置实施例以及方法实施例的功能或特征(单元=步骤)。术语“单元”仅仅是用于说明编码器/解码器的实施例的功能,并非旨在限制本发明。在本申请中提供的若干实施例中,应理解,所公开的系统、装置和方法可通过其他方式实现。例如,所描述的装置实施例仅仅是示例性的。例如,单元分割仅仅是逻辑功能分割且在实际实现中可以是其他分割。例如,可以将多个单元或组件合并或集成到另一系统中,或者可以忽略或不执行一些特征。另外,所显示或讨论的相互耦合或直接耦合或通信连接可以通过一些接口来实现。装置或单元之间的直接耦合或通信连接可通过电子、机械或其他形式实现。作为单独部分描述的单元可以是,也可以不是物理分离的,作为单元显示的部分可以是,也可以不是物理单元、可以位于同一位置,也可以在多个网络单元上分布。可以根据实际需要选择一些或全部单元来实现实施例解决方案的目的。另外,本发明实施例中的功能单元可集成到一个处理单元中,或每个单元可物理上单独存在,或两个或更多单元可集成到一个单元中。本发明实施例还可以包括编码器和/或解码器等装置,所述装置包括用于执行本文描述的任何方法和/或过程的处理电路。编码器100和/或解码器200的实施例以及其他实施例可以实现为硬件、固件、软件或其任何组合。例如,编码器/编码或解码器/解码的功能可以由具有或不具有固件或软件的处理电路执行,例如处理器、微控制器、数字信号处理器(digitalsignalprocessor,dsp)、现场可编程门阵列(fieldprogrammablegatearray,fpga)、专用集成电路(application-specificintegratedcircuit,asic)等。编码器100(和对应的编码方法100)和/或解码器200(和对应的解码方法200)的功能可以通过存储在计算机可读介质上的程序指令来实现。程序指令在执行时使处理电路、计算机、处理器等执行编码和/或解码方法的步骤。计算机可读介质可以是存储程序的任何介质,包括非瞬时性存储介质,如蓝光磁盘、dvd、cd、usb(闪存)驱动器、硬盘、经由网络可用的服务器存储等。本发明实施例包括或是一种计算机程序,包括用于在计算机上执行时执行本文描述的任何方法的程序代码。本发明实施例包括或是一种计算机可读非瞬时性介质,包括程序代码,当由处理器执行时,所述程序代码使计算机系统执行本文描述的任何方法。总之,本发明提供了适用于图像和/或视频编码和解码等的变换系数的编码和解码符号的实施例。特别地,预测多个所述符号,并且仅将预测误差信号嵌入码流中。所述预测误差信号可以具有可以用cabac或其他可变长度(熵)编码进行有效编码的分布。为了对所述符号进行有效预测,基于成本函数预测变换图像块的多个系数的所述符号,其中,所述成本函数包括邻近所述变换图像块的相邻像素与基于所述图像块的预测信号计算的所述相邻像素的预测之间的变换差值。参考符号列表图1100编码器103图像块102输入端(例如,输入端口、输入接口)104残差计算[单元或步骤]105残差块106变换(例如,另外包括缩放)[单元或步骤]107变换系数108量化[单元或步骤]109量化系数110反量化[单元或步骤]111解量化系数112逆变换(例如,另外包括缩放)[单元或步骤]113逆变换块114重建[单元或步骤]115重建块116(线)缓冲器[单元或步骤]117参考像素点120环路滤波器[单元或步骤]121滤波块130解码图像缓冲器(dpb)[单元或步骤]142帧间估计(interestimation/interpictureestimation)[单元或步骤]143帧间估计参数(例如,参考图像/参考图像索引,运动矢量/偏移)144帧间预测(interprediction/interpictureprediction)[单元或步骤]145帧间预测块152帧内估计(intraestimation/intrapictureestimation)[单元或步骤]153帧内预测参数(例如,帧内预测模式)154帧内预测(intraprediction/intraframe/pictureprediction)[单元或步骤]155帧内预测块162模式选择[单元或步骤]165预测块(帧间预测块145或帧内预测块155)170熵编码[单元或步骤]171经编码的图像数据(例如,码流)172输出端(输出端口、输出接口)231解码图像图2200解码器171经编码的图像数据(例如,码流)202输入端(端口/接口)204熵解码209量化系数210反量化211解量化系数212逆变换(缩放)213逆变换块214重建(单位)215重建块216(线)缓冲器217参考像素点220环路滤波器(环内滤波器)221滤波块230解码图像缓冲器(dpb)231解码图像232输出端(端口/接口)244帧间预测(interprediction/interpictureprediction)245帧间预测块254帧内预测(intraprediction/intraframe/pictureprediction)255帧内预测块260模式选择265预测块(帧间预测块245或帧内预测块255)图3300编码系统310源设备312图像源313(原始)图像数据314预处理器/预处理单元315经预处理的图像数据318通信单元/接口320目的设备322通信单元/接口326后处理器/后处理单元327经后处理的图像数据328显示设备/单元330发送/接收/通信(编码)图像数据图4410当前块420重建块430预测块440预测误差块图5:510根据系数的绝对水平对系数符号进行排序520符号估计530cabac编码540旁路编码图6:610当前块620相邻像素列630相邻像素行图7:710重建块720像素域中的预测块730像素域中的残差块740当前块左侧的相邻块750差值信号760传播预测信号770相邻块列790当前块图8:801残差802上下文确定803获取一个或多个相邻块的一行或多行804像素域中的预测805变换806符号预测807成本函数评估808符号预测误差编码809没有预测的符号编码811将编码符号和符号预测误差嵌入码流中图9:122符号预测123符号预测误差970熵编码971经编码的图像数据图10:1004熵解码209重建符号当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1