解码方法、编码方法、解码设备和编码设备与流程

文档序号:11628833阅读:270来源:国知局
解码方法、编码方法、解码设备和编码设备与流程

本发明实施例涉及视频编解码及压缩领域,更具体地,涉及一种解码方法、编码方法、解码设备和编码设备。



背景技术:

数字视频能力可并入到大范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(pda)、膝上型或桌上型计算机、平板计算机、电子书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频会议装置、视频流装置等等。数字视频装置实施视频压缩技术,例如由mpeg-2、mpeg-4、itu-th.263、itu-th.264/mpeg-4第10部分高级视频编解码(avc)、itu-th.265高效率视频编解码(hevc)标准定义的标准和所述标准的扩展部分中所描述的那些视频压缩技术,从而更高效地发射及接收数字视频信息。视频装置可通过实施这些视频编解码技术来更高效地发射、接收、编码、解码和/或存储数字视频信息。

在视频编解码领域中,帧的概念是指一副完整的图像,由一帧一帧的图像按照一定的次序和帧速率组成视频格式后即可播放。当帧速率达到一定的速度后,两帧之间的间隔时间小于人眼的分辨极限,会出现短暂的视觉停留,方才能看似动态的出现在屏幕上。视频文件能够实现压缩的基础是单帧数字图像的压缩编码,数字化后的图像中存在很多的重复表示信息,称之为冗余信息。一帧图像中往往存有许多空间结构相同或相似的地方,例如同一物体或背景中的采样点颜色之间大都存在着紧密关联性和相似性。在多帧图像组中,一帧图像和其前一帧或后一帧基本上都有巨大的相关性,描述信息的像素值差别很小,这些都是可以被压缩的部分。同样的道理,视频文件中不但存在着空间冗余信息,而且包含大量的时间冗余信息,这是由视频的组成结构导致的。例如,视频采样的帧速率一般为25帧/秒至30帧/秒,特殊情况中会出现60帧/秒的可能。也就是说,相邻两帧间的采样时间间隔至少为1/30秒到1/25秒。在这么短的时间内,采样得到的图像画面中基本上都存在大量的相似信息,画面之间存在巨大关联性。但是在原始的数字视频录入系统中是各自独立的记录,没有考虑和利用到这些连贯相似特性,这就造成了相当巨大的重复多余的数据量。另外,已通过研究表明,从人眼的视觉敏感度这一心理特性的角度出发,视频信息中也是存在可以用来压缩的部分,即视觉冗余。所谓视觉冗余,是指利用人眼对亮度变化比较敏感,而对色度的变化相对不敏感的特性来适当的压缩视频比特流。在高亮度的区域,人眼视觉对亮度变化的敏感度呈现下降趋势,转而对物体的边缘处较为敏感,内部区域相对不敏感;对整体结构较为敏感,对内部细节变换相对不敏感。因为视频图像信息的最终服务对象是我们人类群体,所以可以充分利用人眼的这些特性对原有的视频图像信息进行压缩处理,达到更佳的压缩效果。除了上面提到的空间冗余、时间冗余和视觉冗余外,视频图像信息中还会存在信息熵冗余、结构冗余、知识冗余、重要性冗余等等这一系列的冗余信息。视频压缩编码的目的就是使用各种技术方法将视频序列中的冗余信息去除掉,以达到减小存储空间和节省传输带宽的效果。

就目前的技术发展现状而言,视频压缩处理技术主要包括帧内预测、帧间预测、变换量化、熵编码以及消块滤波处理等。在国际通用范围内,存在的视频压缩编码标准中主流的压缩编码方式主要有四种:色度抽样、预测编码、变换编码和量化编码。

色度抽样:此方式充分利用了人眼的视觉心理特点,从底层的数据表示中就开始设法最大限度的缩减单个元素描述的数据量。在电视系统中多数采用的是亮度-色度-色度(yuv)颜色编码,它是欧洲电视系统广泛采用的标准。yuv颜色空间中包括一个亮度信号y和两个色差信号u和v,三个分量彼此独立。yuv颜色模式彼此分开的表示方式更加灵活,传输占用带宽少,比传统的红绿蓝(rgb)色彩模型更具优势。例如,yuv4:2:0形式表示两色度分量u和v在水平方向和垂直方向上都只有亮度y分量的一半,即4个采样像素点中存在4个亮度分量y,而色度分量u和v则只有一个。这样表示时,数据量进一步缩小,仅为原始的33%左右。利用人眼生理视觉特性,通过这种色度抽样的方式实现视频压缩的目的,是目前广泛采用的视频数据压缩方式之一。

预测编码:即利用之前已编码帧的数据信息来预测当前将要编码的帧。通过预测得到一个预测值,它不完全等同与实际值,之间存在着一定的残差值。如果预测越适合,则预测值就会越接近实际值,残差值就越小,这样对残差值进行编码就能大大减小数据量,在解码端解码时运用残差值加上预测值还原重构出初始图像,这就是预测编码的基本思想方法。在主流编码标准中预测编码分为帧内预测和帧间预测两种基本类型。

变换编码:是不直接对原本的空间域信息进行编码,而是将信息采样值按照某种形式的变换函数,从当前域转换到另外一种人为定义域中(通常称为变换域),再根据信息在变换域的分布特性进行压缩编码。变换编码的原因是:视频图像数据往往在空间域的数据相关性大,导致大量冗余信息的存在,直接编码需要很大的比特量。而在变换域中数据相关性则大大减少,使得编码的冗余信息减少,编码所需的数据量也随之大大减少,这样就能够得到较高的压缩比,而且可以实现较好的压缩效果。典型的变换编码有卡洛(k-l)变换、傅立叶变换等。整数离散余弦变换(dct)是许多国际标准中都普遍采用的变换编码方式。

量化编码:上述提到的变换编码其实本身并不压缩数据,量化过程才是压缩数据的有力手段,也是有损压缩中数据“损失”的主要原因。量化的过程就是将动态范围较大的输入值强行规划成较少的输出值的过程。因为量化输入值范围较大,需要较多的比特数表示,而“强行规划”后的输出值范围较小,从而只需要少量的比特数即可表示。每个量化输入被归一化到一个量化输出,即量化到某个数量级中,这些数量级通常被称之为量化级(通常由编码器规定)。

在基于混合编码架构的编码算法中,上述压缩编码方式被混合使用,编码器控制模块根据视频帧中不同图像块的局部特性,选择该图像块所采用的编码模式。对帧内预测编码的块进行频域或空域预测,对帧间预测编码的块进行运动补偿预测,预测的残差再通过变换和量化处理形成残差系数(也可以称为变换量化系数),最后通过熵编码器生成最终的码流。为避免预测误差的累积,帧内或帧间预测的参考信号是通过编码端的解码模块得到。变换和量化后的残差系数经过逆量化和逆变换重建残差信号,再与预测的参考信号相加得到重建的图像。环路滤波会对重建后的图像进行像素修正,提高重建图像的编码质量。

然而,随着人们对高清视频的要求的提高,对图像的编码效率的要求也越来越高,因此,如何进一步提高编码效率成了亟待解决的问题。



技术实现要素:

本申请提供了一种解码方法、编码方法、解码设备和编码设备,能够提高编码效率。

根据本发明的第一方面,提供了一种解码方法,包括:从码流中获取目标图像块的变换量化系数的ac分量及dc分量残差;对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;根据dc分量的预测值和dc分量残差确定目标图像的原始dc分量;对目标图像的原始dc分量以及ac分量进行逆量化和逆变换,得到目标图像的残差信号,并根据所残差信号对目标图像进行解码。

例如,在解码端,可以从码流中获取重构变换量化系数,其中重构变换量化系数包括目标图像块的第一直流dc分量与dc分量的预测值的差值和目标图像块的交流ac分量;对过渡变换量化系数进行逆量化和逆变换,得到目标图像块的过渡重建图像块,其中过渡变换量化系数包括第二dc分量和ac分量,第二dc分量为预设值;根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定dc分量的预测值;根据dc分量与dc分量的预测值的差值(即dc分量残差)以及dc分量的预测值,确定dc分量(即原始dc分量);对初始变换量化系数进行逆量化和逆变换,得到目标图像块的残差信号,其中初始变换量化系数包括dc分量和ac分量。

根据本发明的第二方面,提供了一种编码方法,包括:对目标图像块的残差信号进行变换和量化,得到目标图像块的变换量化系数的直流dc分量和交流ac分量;对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;根据dc分量的预测值和目标图像块的原始dc分量确定目标图像的dc分量残差;将ac分量和dc分量残差写入码流。

例如,在编码端,可以对目标图像块的残差信号进行变换和量化,得到目标图像块的初始变换量化系数,初始变换量化系数包括第一直流dc分量和交流ac分量;对过渡变换量化系数进行逆量化和逆变换,得到目标图像块的过渡重建图像块,其中过渡变换量化系数包括第二dc分量和交流ac分量,第二dc分量为预设值;根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定dc分量(即原始dc分量)的预测值;将重构变换量化系数写入码流,其中重构变换量化系数包括dc分量与预测值的差值(即dc分量残差)和ac分量。

基于本申请的技术方案,可以在将dc分量设置为预设值的情况下对变换量化系数进行逆量化和逆变换,得到目标图像块的过渡重建图像块,并且根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定dc分量的预测值。在对目标图像块进行编码或解码时,可以使用dc分量残差来替代dc分量。由于dc分量残差的绝对值小于dc分量,因此提高了编码效率。

另外,本申请的技术方案根据dc分量为预设值的过渡重建图像块的像素与参考像素区域中的像素的相似性来确定dc分量的预测值,提高了dc分量预测值的精度,使得dc分量残差更小,因此,与直接使用参考像素区域的dc分量的预测值作为目标图像块的dc分量的预测值的方案相比,编码效率更高。

在某些实现方式中,上述根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值,包括:在目标图像块的预测模式指定的方向上,确定至少一条线以及对应于每条线的第一组像素信号和相邻的第二组像素信号,其中第一组像素信号包括过渡重建图像块的第一像素信号,第二组像素信号包括参考像素区域的第二像素信号,第一像素信号与第二像素信号相邻;求解第一像素信号的偏移量,使得至少一条线中第一像素信号增加偏移量后的重建信号的二阶梯度与第二像素信号的二阶梯度的平方和最小,其中过渡重建图像块中用于表示二阶梯度的像素信号增加偏移量,该偏移量用来表示dc分量的量化前的预测值;将求解得到的偏移量的值进行量化得到dc分量的预测值。由于二阶梯度能够更精确地体现目标图像块的像素与参考图像块之间的相关性或相似性,因此,基于二阶梯度得到的dc分量的预测值的精度更高,使得dc分量残差更小,从而进一步提高了编码效率。

在某些实现方式中,对应于至少一条线中的每条线的第一组像素信号和第二组像素信号满足如下两个公式和公式之一:

其中,λ1用于表示第一组像素信号的重建信号存在二阶梯度时的阈值,λ2用于表示第一组像素信号的重建信号不存在二阶梯度时的阈值,为第一组像素信号的二阶梯度,为第二组像素信号的二阶梯度,ik为至少一条线的编号,j为至少一条线中的每条线上的像素信号的编号,

其中,偏移量根据如下公式来计算:

其中,δx为偏移量,为第一像素信号的重建信号的二阶梯度,为第二像素信号的二阶梯度,c表示满足公两个公式之一线的集合,q为至少一条线中的每条线上的像素信号的编号。由于只选取相关性较强的某些线上的像素用于计算dc分量的预测值,因此,dc分量的预测值的精度得到进一步提高,使得dc分量残差更小,从而进一步提高了编码效率。

在某些实现方式中,

在某些实现方式中,

在某些实现方式中,上述根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值,包括:在目标图像块的预测模式指定的方向上,确定多个像素对以及对应于每个像素对的第一像素信号和相邻的第二像素信号,其中第一像素信号为过渡重建图像块的像素信号,第二像素信号为参考像素区域的像素信号;将第一像素信号增加一个偏移量,得到第一像素信号的重建信号,其中该偏移量用来表示dc分量的量化前的预测值;求解偏移量,使得多个像素对的第一像素信号的重建信号与第二像素信号的一阶梯度的平方和最小;将求解得到的偏移量的值进行量化得到dc分量的预测值。

在某些实现方式中,dc分量的预测值根据下列公式来计算:

其中δx为偏移量,n为过渡重建图像块的每一行或列的像素的个数,为第一像素信号,为第二像素信号,在预测模式指定的方向上相邻。由于只选取过渡重建图像块和参考像素区域之间的相邻像素用于计算dc分量的预测值,因此,在保证dc分量预测值的精度的情况下,降低了计算复杂度。

在某些实现中,上述第一组像素信号和第二组信号可以是上述至少一条线穿过的像素本身的信号,也可以是上述至少一条线周围的像素的信号进行插值得到的信号

在某些实现方式中,上述根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值,包括:获取参考像素区域中位于过渡重建图像块上方的第一组像素信号、过渡重建图像块左侧的第二组像素信号、过渡重建图像块内部上侧的第三组像素信号和过渡重建图像块内部左侧的第四组像素信号,第一组像素信号和第三组像素信号分别包括m行像素信号,第二组像素信号和第四组像素信号分别包括h列像素信号,m和h为正整数;计算第一组像素信号的平均值与第三组像素信号的平均值之差,得到第一差值;计算第二组像素信号的平均值与第四组像素信号的平均值之差,得到第二差值;将第一差值与第二差值的平均值进行量化得到dc分量的预测值。由于选取多行或多列过渡重建图像块和参考像素区域的像素用于计算dc分量的预测值,因此,在保证dc分量预测值的精度的情况下,降低了计算复杂度。另外,采用平均值来计算dc分量的预测值,使得编码器或解码器的设计简单。

在某些实现方式中,m为大于或等于2的整数,n为大于或等于2的整数。另外,当m和h为多行或多列时,能够充分利用目标图像块周围更多信号的相关性以及目标图像块与周围信号的关系来预测dc分量的预测值,使得dc分量残差更小,提高了dc分量的预测值的精度,从而进一步提高了编码效率。

在某些实现方式中,目标图像块为变换块。由于变换和量化以及逆变换和逆量化可以以变换块为单位,因此,在确定dc分量的预测值时也以变换块为单位,能够降低计算的复杂单,并使得编码器或解码器的设计简单。

在某些实现方式中,预设的dc分量为零。通过将dc分量的预测值设置为零,与设置为其它数值相比,能够降低计算的复杂度。

在某些实施例中,上述方法还包括:确定dc分量的大小,如果dc分量大于预设阈值,则执行上述方法,如果dc分量小于预设的阈值,则直接根据dc分量和ac分量进行编码。由于可以在dc分量大于预设阈值时才采用根据dc分量,使得编码效率的提高弥补了预测dc残差的算法复杂度带来的性能损失,提高了编码或译码的整体性能。

根据本发明的第三方面,一种解码设备,包括用于执行第一方面的解码方法的模块。解码设备包括:熵解码模块,用于从码流中获取目标图像块的变换量化系数的交流ac分量及直流dc分量残差;第一逆量化和逆变换模块,用于对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并且过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;预测模块,用于根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;第二逆量化和逆变换模块,用于对根据dc分量的预测值和dc分量残差确定目标图像块的原始dc分量,对目标图像块的原始dc分量以及ac分量进行逆量化和逆变换,得到目标图像块的残差信号,并根据所残差信号对目标图像块进行解码。

根据本发明的第四方面,一种编码设备,包括用于执行第二方面的编码方法的模块。编码设备包括:变换和量化模块,用于对目标图像块的残差信号进行变换和量化,得到目标图像块的变换量化系数的直流dc分量和交流ac分量;逆量化和逆变换模块,用于对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;预测模块,用于根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;熵编码模块,用于根据dc分量的预测值和目标图像块的原始dc分量确定目标图像块的dc分量残差。

根据本发明的第五方面,一种解码设备,解码设备包括经配置以进行以下操作的视频解码器:从码流中获取目标图像块的变换量化系数的交流ac分量及直流dc分量残差;对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;根据dc分量的预测值和dc分量残差确定目标图像块的原始dc分量;对目标图像块的原始dc分量以及ac分量进行逆量化和逆变换,得到目标图像块的残差信号,并根据所残差信号对目标图像块进行解码。

根据本发明的第六方面,一种用于编码设备,编码设备包括经配置以进行以下操作的视频解码器:对目标图像块的残差信号进行变换和量化,得到目标图像块的变换量化系数的直流dc分量和交流ac分量;对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;根据dc分量的预测值和目标图像块的原始dc分量确定目标图像块的dc分量残差;将ac分量和dc分量残差写入码流。

根据本发明的第七方面,一种存储有指令的计算机可读存储媒体,指令在被执行时使解码设备的一个或多个处理器进行以下操作:从码流中获取目标图像块的变换量化系数的交流ac分量及直流dc分量残差;对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;根据dc分量的预测值和dc分量残差确定目标图像块的原始dc分量;对目标图像块的原始dc分量以及ac分量进行逆量化和逆变换,得到目标图像块的残差信号,并根据所残差信号对目标图像块进行解码。

根据本发明的第八方面,一种存储有指令的计算机可读存储媒体,指令在被执行时使编码设备的一个或多个处理器进行以下操作:对目标图像块的残差信号进行变换和量化,得到目标图像块的变换量化系数的直流dc分量和交流ac分量;对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块;根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值;根据dc分量的预测值和目标图像块的原始dc分量确定目标图像块的dc分量残差;将ac分量和dc分量残差写入码流。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例的视频编码系统的示意性框图;

图2是根据本发明实施例的用于视频编码的示意性装置图;

图3是根据本发明实施例的另一视频编解码系统的示意性框图;

图4是根据本发明实施例的视频编码器的示意性框图;

图5是根据本发明实施例的视频解码器的示意性框图;

图6是根据本发明实施例的视频编码器的示意性装置图;

图7是根据本发明实施例的视频解码器的示意性装置图;

图8是根据本发明实施例的编码方法的示意性流程图;

图9是根据本发明实施例的解码方法的示意性流程图;

图10示出了hevc的35种预测模式;

图11a和图11b是本发明实施例的基于预测模式选择像素信号的示意图;

图12a-12d是本发明的实施例的基于方向预测模式选取像素信号的示意图;

图13a和图13b为本发明的另一实施例的基于预测模式选取像素信号的示意图;

图14是根据本发明的实施例的确定dc分量的预测值的过程的示意性流程图;

图15是根据本发明的另一实施例的确定dc分量的预测值的过程的示意性流程图;

图16是根据本发明的另一实施例的确定dc分量的预测值的过程的示意性流程图;

图17是本发明实施例适用于电视机应用的示意性结构图;

图18是本发明实施例适用于移动电话应用的示意性结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是视频编解码装置或电子设备50的示意性框图,该装置或者电子设备可以并入根据本发明的实施例的编码解码器。图2是根据本发明实施例的用于视频编码的示意性装置图。下面将说明图1和图2中的单元。

电子设备50可以例如是无线通信系统的移动终端或者用户设备。应理解,可以在可能需要对视频图像进行编码和解码,或者编码,或者解码的任何电子设备或者装置内实施本发明的实施例。

装置50可以包括用于并入和保护设备的壳30。装置50还可以包括形式为液晶显示器的显示器32。在本发明的其它实施例中,显示器可以是适合于显示图像或者视频的任何适当的显示器技术。装置50还可以包括小键盘34。在本发明的其它实施例中,可以运用任何适当的数据或者用户接口机制。例如,可以实施用户接口为虚拟键盘或者数据录入系统作为触敏显示器的一部分。装置可以包括麦克风36或者任何适当的音频输入,该音频输入可以是数字或者模拟信号输入。装置50还可以包括如下音频输出设备,该音频输出设备在本发明的实施例中可以是以下各项中的任何一项:耳机38、扬声器或者模拟音频或者数字音频输出连接。装置50也可以包括电池40,在本发明的其它实施例中,设备可以由任何适当的移动能量设备,比如太阳能电池、燃料电池或者时钟机构生成器供电。装置还可以包括用于与其它设备的近程视线通信的红外线端口42。在其它实施例中,装置50还可以包括任何适当的近程通信解决方案,比如蓝牙无线连接或者usb/火线有线连接。

装置50可以包括用于控制装置50的控制器56或者处理器。控制器56可以连接到存储器58,该存储器在本发明的实施例中可以存储形式为图像的数据和音频的数据,和/或也可以存储用于在控制器56上实施的指令。控制器56还可以连接到适合于实现音频和/或视频数据的编码和解码或者由控制器56实现的辅助编码和解码的编码解码器电路54。

装置50还可以包括用于提供用户信息并且适合于提供用于在网络认证和授权用户的认证信息的读卡器48和智能卡46,例如通用集成电路卡(universalintegratedcircuitcard,uicc)和uicc读取器。

装置50还可以包括无线电接口电路52,该无线电接口电路连接到控制器并且适合于生成例如用于与蜂窝通信网络、无线通信系统或者无线局域网通信的无线通信信号。装置50还可以包括天线44,该天线连接到无线电接口电路52用于向其它(多个)装置发送在无线电接口电路52生成的射频信号并且用于从其它(多个)装置接收射频信号。

在本发明的一些实施例中,装置50包括能够记录或者检测单帧的相机,编码解码器54或者控制器接收到这些单帧并对它们进行处理。在本发明的一些实施例中,装置可以在传输和/或存储之前从另一设备接收待处理的视频图像数据。在本发明的一些实施例中,装置50可以通过无线或者有线连接接收图像用于编码/解码。

图3是根据本发明实施例的另一视频编解码系统10的示意性框图。如图3所示,视频编解码系统10包含源装置12及目的地装置14。源装置12产生经编码视频数据。因此,源装置12可被称作视频编码装置或视频编码设备。目的地装置14可解码由源装置12产生的经编码视频数据。因此,目的地装置14可被称作视频解码装置或视频解码设备。源装置12及目的地装置14可为视频编解码装置或视频编解码设备的实例。源装置12及目的地装置14可包括广泛范围的装置,包含台式计算机、移动计算装置、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、智能电话等手持机、电视、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机,或其类似者。

目的地装置14可经由信道16接收来自源装置12的编码后的视频数据。信道16可包括能够将经编码视频数据从源装置12移动到目的地装置14的一个或多个媒体及/或装置。在一个实例中,信道16可包括使源装置12能够实时地将编码后的视频数据直接发射到目的地装置14的一个或多个通信媒体。在此实例中,源装置12可根据通信标准(例如,无线通信协议)来调制编码后的视频数据,且可将调制后的视频数据发射到目的地装置14。一个或多个通信媒体可包含无线及/或有线通信媒体,例如射频(rf)频谱或一根或多根物理传输线。一个或多个通信媒体可形成基于包的网络(例如,局域网、广域网或全球网络(例如,因特网))的部分。一个或多个通信媒体可包含路由器、交换器、基站,或促进从源装置12到目的地装置14的通信的其它设备。

在另一实例中,信道16可包含存储由源装置12产生的编码后的视频数据的存储媒体。在此实例中,目的地装置14可经由磁盘存取或卡存取来存取存储媒体。存储媒体可包含多种本地存取式数据存储媒体,例如蓝光光盘、dvd、cd-rom、快闪存储器,或用于存储经编码视频数据的其它合适数字存储媒体。

在另一实例中,信道16可包含文件服务器或存储由源装置12产生的编码后的视频数据的另一中间存储装置。在此实例中,目的地装置14可经由流式传输或下载来存取存储于文件服务器或其它中间存储装置处的编码后的视频数据。文件服务器可以是能够存储编码后的视频数据且将编码后的视频数据发射到目的地装置14的服务器类型。实例文件服务器包含web服务器(例如,用于网站)、文件传送协议(ftp)服务器、网络附加存储(nas)装置,及本地磁盘驱动器。

目的地装置14可经由标准数据连接(例如,因特网连接)来存取编码后的视频数据。数据连接的实例类型包含适合于存取存储于文件服务器上的编码后的视频数据的无线信道(例如,wi-fi连接)、有线连接(例如,dsl、缆线调制解调器等),或两者的组合。编码后的视频数据从文件服务器的发射可为流式传输、下载传输或两者的组合。

本发明的技术不限于无线应用场景,示例性的,可将技术应用于支持以下应用等多种多媒体应用的视频编解码:空中电视广播、有线电视发射、卫星电视发射、流式传输视频发射(例如,经由因特网)、存储于数据存储媒体上的视频数据的编码、存储于数据存储媒体上的视频数据的解码,或其它应用。在一些实例中,视频编解码系统10可经配置以支持单向或双向视频发射,以支持例如视频流式传输、视频播放、视频广播及/或视频电话等应用。

在图3的实例中,源装置12包含视频源18、视频编码器20及输出接口22。在一些实例中,输出接口22可包含调制器/解调器(调制解调器)及/或发射器。视频源18可包含视频俘获装置(例如,视频相机)、含有先前俘获的视频数据的视频存档、用以从视频内容提供者接收视频数据的视频输入接口,及/或用于产生视频数据的计算机图形系统,或上述视频数据源的组合。

视频编码器20可编码来自视频源18的视频数据。在一些实例中,源装置12经由输出接口22将编码后的视频数据直接发射到目的地装置14。编码后的视频数据还可存储于存储媒体或文件服务器上以供目的地装置14稍后存取以用于解码及/或播放。

在图3的实例中,目的地装置14包含输入接口28、视频解码器30及显示装置32。在一些实例中,输入接口28包含接收器及/或调制解调器。输入接口28可经由信道16接收编码后的视频数据。显示装置32可与目的地装置14整合或可在目的地装置14外部。一般来说,显示装置32显示解码后的视频数据。显示装置32可包括多种显示装置,例如液晶显示器(lcd)、等离子体显示器、有机发光二极管(oled)显示器或其它类型的显示装置。

视频编码器20及视频解码器30可根据视频压缩标准(例如,高效率视频编解码h.265标准)而操作,且可遵照hevc测试模型(hm)。h.265标准的文本描述itu-th.265(v3)(04/2015)于2015年4月29号发布,可从http://handle.itu.int/11.1002/1000/12455下载,文件的全部内容以引用的方式并入本文中。

或者,视频编码器20及视频解码器30可根据其它专属或行业标准而操作,标准包含itu-th.261、iso/iecmpeg-1visual、itu-th.262或iso/iecmpeg-2visual、itu-th.263、iso/iecmpeg-4visual,itu-th.264(还称为iso/iecmpeg-4avc),包含可分级视频编解码(svc)及多视图视频编解码(mvc)扩展。应理解,本发明的技术不限于任何特定编解码标准或技术。

此外,图3仅为实例且本发明的技术可应用于未必包含编码装置与解码装置之间的任何数据通信的视频编解码应用(例如,单侧的视频编码或视频解码)。在其它实例中,从本地存储器检索数据,经由网络流式传输数据,或以类似方式操作数据。编码装置可编码数据且将数据存储到存储器,及/或解码装置可从存储器检索数据且解码数据。在许多实例中,通过彼此不进行通信而仅编码数据到存储器及/或从存储器检索数据及解码数据的多个装置执行编码及解码。

视频编码器20及视频解码器30各自可实施为多种合适电路中的任一者,例如一个或多个微处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、离散逻辑、硬件或其任何组合。如果技术部分地或者全部以软件实施,则装置可将软件的指令存储于合适的非瞬时计算机可读存储媒体中,且可使用一个或多个处理器执行硬件中的指令以执行本发明的技术。可将前述各者中的任一者(包含硬件、软件、硬件与软件的组合等)视为一个或多个处理器。视频编码器20及视频解码器30中的每一者可包含于一个或多个编码器或解码器中,其中的任一者可整合为其它装置中的组合式编码器/解码器(编解码器(codec))的部分。

本发明大体上可指代视频编码器20将某一信息“用信号发送”到另一装置(例如,视频解码器30)。术语“用信号发送”大体上可指代语法元素及/或表示编码后的视频数据的传达。此传达可实时或近实时地发生。或者,此通信可在一时间跨度上发生,例如可在编码时以编码后得到的二进制数据将语法元素存储到计算机可读存储媒体时发生,语法元素在存储到此媒体之后接着可由解码装置在任何时间检索。

视频编码器20编码视频数据。视频数据可包括一个或多个图片。视频编码器20可产生码流,码流以比特流的形式包含了视频数据的编码信息。编码信息可以包含编码图片数据及相关联数据。相关联数据可包含序列参数集(sps)、图片参数集(pps)及其它语法结构。sps可含有应用于零个或多个序列的参数。pps可含有应用于零个或多个图片的参数。语法结构是指码流中以指定次序排列的零个或多个语法元素的集合。

产生图片的编码信息,视频编码器20可将图片分割成编码树型块(ctb)的栅格。在一些例子中,ctb可被称作“树型块”、“最大编码单元”(lcu)或“编码树型单元”。ctb不限于特定大小且可包含一个或多个编码单元(cu)。每一个ctb可以与图片内的具有相等大小的像素块相关联。每一像素可对应一个亮度(luminance或luma)采样及两个色度(chrominance或chroma)采样。因此,每一个ctb可与一个亮度采样块及两个色度采样块相关联。图片的ctb可分成一个或多个条带。在一些实例中,每一个条带包含整数个数的ctb。作为编码图片的一部分,视频编码器20可产生图片的每一条带的编码信息,即编码条带内的ctb。为了编码ctb,视频编码器20可对与ctb相关联的像素块递归地执行四叉树分割,以将像素块分割成递减的像素块。较小的像素块可以和cu相关联。

图4是根据本发明实施例的视频编码器20的示意性框图,包括编码端预测模块201、变换量化模块202、熵编码模块203、编码重建模块204、编码端滤波模块205,图5是根据本发明实施例的视频解码器30的示意性框图,包括解码端预测模块206、逆变换逆量化模块207、熵解码模块208、解码重建模块209、解码滤波模块210。具体的:

编码端预测模块201和解码端预测模块206用于产生预测数据。视频编码器20可产生每一不再分割cu(即,最小尺寸的cu)的一个或多个预测单元(pu)。cu的每一个pu可与cu的像素块内的不同像素块相关联。视频编码器20可针对cu的每一个pu产生预测性像素块。视频编码器20可使用帧内预测或帧间预测来产生pu的预测性像素块。如果视频编码器20使用帧内预测来产生pu的预测性像素块,则视频编码器20可基于与pu相关联且位于同一视频帧内的图片(或称为图像)的解码后的像素来产生pu的预测性像素块。如果视频编码器20使用帧间预测来产生pu的预测性像素块,则视频编码器20可基于不同于与pu相关联的图片,即不同于所述pu所在的视频帧,的一个或多个图片的解码后的像素来产生pu的预测性像素块。视频编码器20可基于cu的pu的预测性像素块来产生cu的残余像素块。cu的残余像素块可指示cu的pu的预测性像素块中的采样值与cu的初始像素块中的对应采样值之间的差(或称为残差信号或残差数据)。

变换量化模块202用于对经过预测的残差信号或残差数据进行处理。视频编码器20可对cu的残余像素块执行递归四叉树分割以将cu的残余像素块分割成与cu的变换单元(tu)相关联的一个或多个较小残余像素块。因为与tu相关联的像素块中的像素各自对应一个亮度采样及两个色度采样,所以每一个tu可与一个亮度的残余采样块及两个色度的残余采样块相关联。视频编码器20可将一个或多个变换应用于与tu相关联的残余采样块以产生系数块(即,系数的块)。变换可以是离散余弦变换,即dct变换,或者它的变体,如离散正弦变换,即dst变换。采用dct的变换矩阵,通过在水平和竖直方向应用一维变换计算二维变换,获得系数块(也称为变换系数)。视频编码器20可对系数块中的每一个变换系数执行量化程序。量化一般指变换系数经量化以减少用以表示系数的数据量,可以理解为将无限个数据映射成有限个数据,从而提供进一步压缩的过程。经过变换和量化后得到变换量化系数,该变换量化系数包括dc分量和ac分量,dc分量及ac分量的求取过程非本发明的重点,在此不做展开说明,具体的求解过程可以参照itu-th.265(v3)(04/2015)。逆变换逆量化模块207执行的过程包括变换量化模块202的逆过程。

视频编码器20可产生表示量化后系数块中的系数的语法元素的集合。视频编码器20通过熵编码模块203可将熵编码操作(例如,上下文自适应二进制算术译码(cabac)操作)应用于上述语法元素中的部分或者全部。为将cabac编码应用于语法元素,视频编码器20可将语法元素二进制化以形成包括一个或多个位(称作“二进位”)的二进制序列。视频编码器20可使用规则(regular)编码来编码二进位中的一部分,且可使用旁通(bypass)编码来编码二进位中的其它部分。

除熵编码系数块的语法元素外,视频编码器20通过编码重建模块204,可将逆量化及逆变换应用于变换后的系数块,以从变换后的系数块重建残余采样块。视频编码器20可将重建后的残余采样块加到一个或多个预测性采样块的对应采样块,以产生重建后的采样块。通过重建每一色彩分量的采样块,视频编码器20可重建与tu相关联的像素块。以此方式重建cu的每一tu的像素块,直到cu的整个像素块重建完成。

根据本发明的实施例,视频编码器20还可以进一步包括dc分量预测模块206,用于确定dc分量的预测值,具体而言,dc分量预测模块206可以根据变换量化模块202输出的变换量化系数构建一组新的变换量化系数,该构建的新的变换量化系数中的dc分量被强制为0,ac分量为变换量化模块202输出的ac分量,通过逆变换及逆量化模块207对该新的变换量化系数进行逆量化及逆变处理,通过逆变换和逆量化过程得到的重建后的残余采样块,并且可将重建后的残余采样块加到一个或多个预测性采样块的对应采样块,以产生重建后的采样块(下文中也称为过渡重建图像块)。最后,根据过渡重建图像块的像素与参考像素区域的像素的相似性或相关性,确定dc分量的预测值。最后根据dc分量的预测值和变换量化模块202输出的dc分量得到dc分量的残差信号。dc分量的残差信号和ac分量由熵编码模块203写入码流。

在视频编码器20重建构cu的像素块之后,视频编码器20通过编码端滤波模块205,执行消块滤波操作以减少与cu相关联的像素块的块效应。在视频编码器20执行消块滤波操作之后,视频编码器20可使用采样自适应偏移(sao)来修改图片的ctb的重建后的像素块。在执行这些操作之后,视频编码器20可将cu的重建后的像素块存储于解码图片缓冲器中以用于产生其它cu的预测性像素块。

视频解码器30可接收码流。码流以比特流的形式包含了由视频编码器20编码的视频数据的编码信息。视频解码器30通过熵解码模块208,解析码流以从码流提取语法元素。当视频解码器30执行cabac解码时,视频解码器30可对部分二进位执行规则解码且可对其它部分的二进位执行旁通解码,码流中的二进位与语法元素具有映射关系,通过解析二进位获得语法元素。

视频解码器30通过解码重建模块209,可基于从码流提取的语法元素来重建视频数据的图片。基于语法元素来重建视频数据的过程大体上与由视频编码器20执行以产生语法元素的过程互逆。举例来说,视频解码器30可基于与cu相关联的语法元素来产生cu的pu的预测性像素块。另外,视频解码器30可逆量化与cu的tu相关联的系数块。视频解码器30可对逆量化后的系数块执行逆变换以重建与cu的tu相关联的残余像素块。视频解码器30可基于预测性像素块及残余像素块来重建cu的像素块。

根据本发明的实施例,视频解码器30还可以进一步包括dc分量预测模块211,用于确定dc分量的预测值,具体而言,dc分量预测模块211可根据从码流中获取的变换系数的来重构另一变换量化系数,该重构的另一换量化系数中的dc分量被强制为0,ac分量为熵解码模块208输出的ac分量,并通过逆量化及逆变换模块对该重构的另一变换模块执行逆量化和逆变换过程,通过逆变换和逆量化过程得到的重建残余采样块,并且可将重建后的残余采样块加到一个或多个预测性采样块的对应采样块,以产生重建后的采样块(下文中也称为过渡重建图像块)。最后,根据过渡重建图像块的像素与参考像素区域的像素的相似性或相关性,确定dc分量的预测值。最后根据dc分量的预测值和熵解码模块208输出的dc分量的残差信号得到重建后的dc分量。

在视频解码器30重建cu的像素块之后,视频解码器30通过解码滤波模块210,执行消块滤波操作以减少与cu相关联的像素块的块效应。另外,基于一个或多个sao语法元素,视频解码器30可执行与视频编码器20相同的sao操作。在视频解码器30执行这些操作之后,视频解码器30可将cu的像素块存储于解码图片缓冲器中。解码图片缓冲器可提供用于后续运动补偿、帧内预测及显示装置呈现的参考图片。

图6为说明经配置以实施本发明的技术的实例视频编码器20的框图。应理解,图6是示例性的而不应视为限制如本发明广泛例证并描述的技术。如图6所示,视频编码器20包含预测处理单元100、残余产生单元102、变换处理单元104、量化处理单元106、逆量化处理单元108、逆变换处理单元110、重建单元112、滤波器单元113、解码图片缓冲器114、dc预测模块130内的逆量化处理单元131、逆变换处理单元132、重建单元133、dc分量预测处理单元134、残差产生单元135及熵编码单元116。熵编码单元116包含规则cabac编解码引擎及旁通编解码引擎。预测处理单元100包含帧间预测处理单元121及帧内预测处理单元126。帧间预测处理单元121包含运动估计单元及运动补偿单元。在其它实例中,视频编码器20可包含更多、更少或不同的功能组件。

视频编码器20接收视频数据。为编码视频数据,视频编码器20可编码视频数据的每一图片的每一条带。作为编码条带的一部分,视频编码器20可编码条带中的每一ctb。作为编码ctb的一部分,预测处理单元100可对与ctb相关联的像素块执行四叉树分割,以将像素块分成递减的像素块。举例来说,预测处理单元100可将ctb的像素块分割成四个相等大小的子块,将子块中的一个或多个分割成四个相等大小的子子块,等等。

视频编码器20可编码图片中的ctb的cu以产生cu的编码信息。视频编码器20可根据折形扫描次序来编码ctb的cu。换句话说,视频编码器20可按左上cu、右上cu、左下cu及接着右下cu来编码cu。当视频编码器20编码分割后的cu时,视频编码器20可根据折形扫描次序来编码与分割后的cu的像素块的子块相关联的cu。

此外,预测处理单元100可在cu的一个或多个pu中分割cu的像素块。视频编码器20及视频解码器30可支持各种pu大小。假定特定cu的大小为2n×2n,视频编码器20及视频解码器30可支持2n×2n或n×n的pu大小以用于帧内预测,且支持2n×2n、2n×n、n×2n、n×n或类似大小的对称pu以用于帧间预测。视频编码器20及视频解码器30还可支持2n×nu、2n×nd、nl×2n及nr×2n的不对称pu以用于帧间预测。

帧间预测处理单元121可通过对cu的每一pu执行帧间预测而产生pu的预测性数据。pu的预测性数据可包含对应于pu的预测性像素块及pu的运动信息。条带可为i条带、p条带或b条带。帧间预测单元121可根据pu是在i条带、p条带还是b条带中而对cu的pu执行不同操作。在i条带中,所有pu执行帧内预测。

如果pu在p条带中,则运动估计单元122可搜索参考图片的列表(例如,“列表0”)中的参考图片以查找pu的参考块。pu的参考块可为最紧密地对应于pu的像素块的像素块。运动估计单元122可产生指示列表0中的含有pu的参考块的参考图片的参考图片索引,及指示pu的像素块与参考块之间的空间位移的运动向量。运动估计单元122可将参考图片索引及运动向量作为pu的运动信息而输出。运动补偿单元124可基于由pu的运动信息指示的参考块来产生pu的预测性像素块。

如果pu在b条带中,则运动估计单元122可对pu执行单向帧间预测或双向帧间预测。为对pu执行单向帧间预测,运动估计单元122可搜索第一参考图片列表(“列表0”)或第二参考图片列表(“列表1”)的参考图片以查找pu的参考块。运动估计单元122可将以下各者作为pu的运动信息而输出:指示含有参考块的参考图片的列表0或列表1中的位置的参考图片索引、指示pu的像素块与参考块之间的空间位移的运动向量,及指示参考图片是在列表0中还是在列表1中的预测方向指示符。为对pu执行双向帧间预测,运动估计单元122可搜索列表0中的参考图片以查找pu的参考块,且还可搜索列表1中的参考图片以查找pu的另一参考块。运动估计单元122可产生指示含有参考块的参考图片的列表0及列表1中的位置的参考图片索引。另外,运动估计单元122可产生指示参考块与pu的像素块之间的空间位移的运动向量。pu的运动信息可包含pu的参考图片索引及运动向量。运动补偿单元124可基于由pu的运动信息指示的参考块来产生pu的预测性像素块。

帧内预测处理单元126可通过对pu执行帧内预测而产生pu的预测性数据。pu的预测性数据可包含pu的预测性像素块及各种语法元素。帧内预测处理单元126可对i条带、p条带及b条带内的pu执行帧内预测。

为对pu执行帧内预测,帧内预测处理单元126可使用多个帧内预测模式来产生pu的预测性数据的多个集合。为使用帧内预测模式来产生pu的预测性数据的集合,帧内预测处理单元126可在与帧内预测模式相关联的方向上跨越pu的采样块扩展来自相邻pu的采样块的采样。假定从左向右、从上而下的编码次序用于pu、cu及ctb,相邻pu可在pu的上方,在pu的右上方,在pu的左上方或在pu的左方。帧内预测处理单元126可使用包含不同数目的帧内预测模式,例如,33个方向性帧内预测模式。在一些实例中,帧内预测模式的数目可取决于pu的像素块的大小。

预测处理单元100可从通过帧间预测处理单元121针对pu而产生的预测性数据或通过帧内预测处理单元126针对pu而产生的预测性数据当中选择cu的pu的预测性数据。在一些实例中,预测处理单元100基于预测性数据的集合的速率/失真量度来选择cu的pu的预测性数据。例如,使用拉格朗日代价函数来在编码模式及其参数值(比如运动矢量、参考索引和帧内预测方向)之间进行选择。这一种类的代价函数使用加权因子lambda将由于有损编码方法所致的实际的或者估计的图像失真与为了表示在图像区域中的像素值而需要的实际的或估计的信息量联系在一起:c=d+lambda×r,其中c是待最小化的拉格朗日代价,d是具有模式及其参数的图像失真(例如均方误差),r是为了在解码器中重构图像块而需要的比特数(例如包括用于表示候选运动矢量的数据量)。一般的,代价最小的编码模式被选定作为实际编码模式。选定预测性数据的预测性像素块在本文中可被称作选定预测性像素块。

残余产生单元102可基于cu的像素块及cu的pu的选定预测性像素块来产生cu的残余像素块。举例来说,残余产生单元102可产生cu的残余像素块,使得残余像素块中的每一采样具有等于以下两者之间的差的值:cu的像素块中的采样,及cu的pu的选定预测性像素块中的对应采样。

预测处理单元100可执行四叉树分割以将cu的残余像素块分割成子块。每一不再划分的残余像素块可与cu的不同tu相关联。与cu的tu相关联的残余像素块的大小及位置与基于cu的pu的像素块的大小及位置没有必然联系。

因为tu的残余像素块的像素可对应一个亮度采样及两个色度采样,所以每一个tu可与一个亮度采样块及两个色度采样块相关联。变换处理单元104可通过将一个或多个变换应用于与tu相关联的残余采样块而产生cu的每一个tu的系数块。举例来说,变换处理单元104可将离散余弦变换(dct)、方向性变换或概念上类似的变换应用于残余采样块。

量化单元106可量化系数块中的系数。举例来说,n位系数可在量化期间舍位到m位系数,其中n大于m。量化单元106可基于与cu相关联的量化参数(qp)值来量化与cu的tu相关联的系数块。视频编码器20可通过调整与cu相关联的qp值来调整应用于与cu相关联的系数块的量化程度。

逆量化单元108及逆变换处理单元110可分别将逆量化及逆变换应用于变换后的系数块以从系数块重建残余采样块。重建单元112可将重建后的残余采样块的采样加到预测处理单元100产生的一个或多个预测性采样块的对应采样,以产生与tu相关联的重建后的采样块。通过此方式重建cu的每一个tu的采样块,视频编码器20可重建cu的像素块。

逆量化处理单元131及逆变换处理单元132可分别将逆量化及逆变换应用于变换后的系数块且该系数块中的dc分量被设置为0,以从该系数块重建残余采样块。重建单元133可将重建后的残余采样块的采样加到预测处理单元100产生的一个或多个预测性采样块的对应采样(也称为预测值),以产生与tu相关联的重建后的采样块(下文中也称为过渡重建图像块)。该过渡重建图像块不同于重建单元112产生的重建后的采样块。dc分量预测处理单元134可根据重建单元133得到的过渡重建图像块与参数像素区域的像素的相似性或相关性,确定dc分量的预测值。dc残差产生单元135可基于dc分量预测处理单元134输出的dc分量预测值与量化处理单元106产生的原始dc分量产生dc残差(残余)。举例来说,可以将dc分量预测值与原始dc分量相减得到dc残差。

应理解,逆量化处理单元131和逆变换处理单元132也可以分别复用逆量化处理单元108和逆变换处理单元110的功能,在这种情况下,可以另外设置系数重构单元,用于从量化处理单元106获取变换量化系数的dc分量,将dc分量强制为零,并将强制为零的dc分量输入到逆量化处理单元108进行逆量化。逆量化处理单元108用于进一步将ac分量和强制为零的dc分量进行逆量化,并由逆变换处理单元110进行逆变换,以从该系数块重建残余采样块。同样,重建单元133可将重建后的残余采样块的采样加到预测处理单元100产生的一个或多个预测性采样块的对应采样(也称为预测值),以产生与tu相关联的重建后的采样块(下文中也称为过渡重建图像块)。

滤波器单元113可执行消块滤波操作以减少与cu相关联的像素块的块效应。此外,滤波器单元113可将由预测处理单元100确定的sao偏移应用于重建后的采样块以恢复像素块。滤波器单元113可产生ctb的sao语法元素的编码信息。

解码图片缓冲器114可存储重建后的像素块。帧间预测单元121可使用含有重建后的像素块的参考图片来对其它图片的pu执行帧间预测。另外,帧内预测处理单元126可使用解码图片缓冲器114中的重建后的像素块来对在与cu相同的图片中的其它pu执行帧内预测。

熵编码单元116可接收来自视频编码器20的其它功能组件的数据。举例来说,熵编码单元116可接收来自dc残差产生单元135的dc分量的残差以及ac分量且可接收来自预测处理单元100的语法元素。熵编码单元116可对数据执行一个或多个熵编码操作以产生熵编码后的数据。举例来说,熵编码单元116可对数据执行上下文自适应可变长度编解码(cavlc)操作、cabac操作、可变到可变(v2v)长度编解码操作、基于语法的上下文自适应二进制算术编解码(sbac)操作、机率区间分割熵(pipe)编解码操作,或其它类型的熵编码操作。在一特定实例中,熵编码单元116可使用规则cabac引擎118来编码语法元素的经规则cabac编解码二进位,且可使用旁通编解码引擎120来编码经旁通编解码二进位。

图7为说明经配置以实施本发明的技术的实例视频解码器30的框图。应理解,图7是示例性的而不应视为限制如本发明广泛例证并描述的技术。如图7所示,视频解码器30包含熵解码单元150、预测处理单元152、逆量化单元154、逆变换处理单元156、重建单元158、滤波器单元159、dc预测模块170内的逆量化处理单元171、逆变换处理单元172、重建单元173、dc分量预测处理单元174、dc分量产生单元175以及解码图片缓冲器160。预测处理单元152包含帧间预测处理单元162以及帧内预测处理单元164。熵解码单元150包含规则cabac编解码引擎及旁通编解码引擎。在其它实例中,视频解码器30可包含更多、更少或不同的功能组件。

视频解码器30可接收码流。熵解码单元150可解析码流以从码流提取语法元素。作为解析码流的一部分,熵解码单元150可解析码流中的经熵编码后的语法元素。另外,熵解码单元150还可以从码流中提取变化量化系数,包括:dc分量的残差和ac分量。

逆量化处理单元171及逆变换处理单元172可分别将逆量化及逆变换应用于变换后的系数块且该系数块中的dc分量被设置为0,以从该系数块重建残余采样块。重建单元173可将重建后的残余采样块的采样加到预测处理单元152产生的一个或多个预测性采样块的对应采样(也称为预测值),以产生与tu相关联的重建后的采样块(也称为过渡重建图像块)。该过渡重建图像块不同于重建单元158产生的重建后的采样块,即该过渡重建图像块为获取dc分量所使用的重建图像块,不能直接用来重建解码图像。dc分量预测处理单元174可根据重建单元173得到的过渡重建图像块与参数像素区域的像素的相似性或相关性,确定dc分量的预测值。dc残差产生单元175可基于dc分量预测处理单元174输出的dc分量预测值与熵解码单元150产生的dc残差(残余)产生dc分量。举例来说,可以将dc分量预测值与在dc残差相加得到dc分量。

应理解,逆量化处理单元171和逆变换处理单元172也可以分别复用逆量化处理单元154和逆变换处理单元156的功能,在这种情况下,可以设置另一系数重构单元,用于将变换量化系数的dc分量强制为零,并将强制为零的dc分量输入到逆量化处理单元154进行逆量化。逆量化处理单元156用于进一步将ac分量和强制为零的dc分量进行逆量化,并由逆变换处理单元156进行逆变换,以从该系数块重建残余采样块。同样,重建单元173可将重建后的残余采样块的采样加到预测处理单元152产生的一个或多个预测性采样块的对应采样(也称为预测值),以产生与tu相关联的重建后的采样块(下文中也称为过渡重建图像块)。

预测处理单元152、逆量化单元154、逆变换处理单元156、重建单元158及滤波器单元159可根据根据dc分量和ac分量等语法元素来解码视频数据,即产生解码后的视频数据。

语法元素可包含经规则cabac编解码二进位及经旁通编解码二进位。熵解码单元150可使用规则cabac编解码引擎166来解码经规则cabac编解码二进位,且可使用旁通编解码引擎168来解码经旁通编解码二进位。

如果pu使用帧内预测编码,则帧内预测处理单元164可执行帧内预测以产生pu的预测性采样块。帧内预测处理单元164可使用帧内预测模式以基于空间相邻pu的像素块来产生pu的预测性像素块。帧内预测处理单元164可根据从码流解析的一个或多个语法元素来确定pu的帧内预测模式。

帧间预测处理单元162可以包括运动补偿单元,运动补偿单元可根据从码流解析的语法元素来构造第一参考图片列表及第二参考图片列表。此外,如果pu使用帧间预测编码,则熵解码单元150可解析pu的运动信息。运动补偿单元162可根据pu的运动信息来确定pu的一个或多个参考块。运动补偿单元162可根据pu的一个或多个参考块来产生pu的预测性像素块。

另外,视频解码器30可对不再分割的cu执行重建操作。为对不再分割的cu执行重建操作,视频解码器30可对cu的每一tu执行重建操作。通过对cu的每一tu执行重建操作,视频解码器30可重建与cu相关联的残余像素块。

作为对cu的tu执行重建操作的一部分,逆量化单元154可逆量化(即,解量化)与tu相关联的系数块。逆量化单元154可使用与tu的cu相关联的qp值来确定量化程度,且与确定逆量化单元154将应用的逆量化程度相同。

在逆量化单元154逆量化系数块中的dc分量和ac分量之后,逆变换处理单元156可将一个或多个逆变换应用于系数块,以便产生与tu相关联的残余采样块。举例来说,逆变换处理单元156可将逆dct、逆整数变换、逆卡忽南-拉维(karhunen-loeve)变换(klt)、逆旋转变换、逆方向性变换或其它与编码端的变换对应的逆变换应用于系数块。

重建单元158可在适用时使用与cu的tu相关联的残余像素块及cu的pu的预测性像素块(即,帧内预测数据或帧间预测数据)以重建cu的像素块。特定来说,重建单元158可将残余像素块的采样加到预测性像素块的对应采样以重建cu的像素块。

滤波器单元159可执行消块滤波操作以减少与ctb的cu相关联的像素块的块效应。另外,滤波器单元159可根据从码流解析的sao语法元素来修改ctb的像素值。举例来说,滤波器单元159可根据ctb的sao语法元素来确定修正值,且将所确定的修正值加到ctb的重建后的像素块中的采样值。通过修改图片的ctb的部分或全部像素值,滤波器单元159可根据sao语法元素来修正视频数据的重建图片。

视频解码器30可将cu的像素块存储于解码图片缓冲器160中。解码图片缓冲器160可提供参考图片以用于后续运动补偿、帧内预测及显示装置(例如,图3的显示装置32)呈现。举例来说,视频解码器30可根据解码图片缓冲器160中的像素块来对其它cu的pu执行帧内预测操作或帧间预测操作。

下面结合图8和图9,以hevc为例详细说明本发明实施例的编码过程和解码过程。应理解,在诸如h.264之类的视频编码技术中,也可以采用类似的方法。

如前所述,本发明的实施例与常规视频编码技术的主要不同之外在于,写入码流的变换量化系数为dc分量的残差和ac分量,而非像常规视频编码技术那样,写入码流的变换量化系数为dc分量和ac分量。由于dc分量的残差的绝对值通常小于dc分量,而值越小编码效率越高,因此提高了编码效率。

图8是根据本发明的一个实施例的编码过程的示意图。

在编码器进行编码时,待编码图像首先被划分为互不重叠的图像块。每个图像块被称为一个编码树单元ctu(codingtreeunit)。ctu可被进一步划分为多个子块,每个子块即是一个可独立确定其编码参数的编码块(codingunit,cu)。ctu的划分采用四叉树的结构。在压缩编码过程中,每个cu将独立地选择其最佳的编码参数,例如,预测模式选择、预测块(predictionunit,pu)的划分等。当一个ctu中的所有cu被按次序编码压缩结束后,才能继续编码后续ctu。

810,在编码器进行预测得到预测块的预测值,并将预测块的预测值与原始值相减,得到预测块的残差信号。例如,该预测可以是帧内预测。其中,所述的原始值指的是待编码图像块,包括目标图像块,的原始的像素值。

820,对目标图像块的残差信号进行变换和量化,得到目标图像块的变换量化系数的直流dc分量和交流ac分量。

例如,对目标图像块的残差信号进行变换和量化,得到目标图像块的初始变换量化系数,初始变换量化系数包括dc分量和ac分量。

本实施例的目标图像块可以为变换块或对应于变换块。一个预测块可以划分为多个变换块,属于同一个预测块的变换块采用相同的预测模式。本发明的实施例可以以变换块为单位对残差信号进行变换和量化。每个变换块的残差信号可以从预测块的残差信号中获得。

830,对初始变换量化系数进行逆量化和逆变换得到目标图像块的重建残差信号,然后将图标图像块的重建残差与目标像块的预测值相加得到重建值,从而得到目标图像块的重建图像块,以供后续预测编码作为参考信息。

应理解,810至830与常规视频编码类似,在此不再赘述。

840,对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块。

例如,对过渡变换量化系数进行逆量化和逆变换,得到过渡残差,过渡残差与预测值相加得到目标图像块的过渡重建图像块,其中过渡变换量化系数包括第二dc分量和820得到的ac分量,第二dc分量为预设值(例如,预设值为0)。采用第二dc分量设置为0的方案的好处在于能够降低计算的复杂度。

针对每个目标图像块,将过渡变换量化系数的dc分量设置为零,即该变换量化系数包括从码流中解析出的ac分量和取值为0的dc分量,并对过渡变换量化系数进行逆量化和逆变换,得到dc分量为零时目标图像块的重建残差,并将该重建残差与目标像块的预测值相加得到重建值,从而得到目标图像块在dc分量为零时的过渡重建图像块,记为bdc=0。应理解,840得到的过渡重建图像块不同于830得到的重建图像块。

850,根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值。

例如,根据重过渡建图像块的像素与参考像素区域中的像素的相似性,确定dc分量的预测值。计算目标图像块的dc分量的预测值dcpred的具体方法参见图14的实施例中的描述,在此不再赘述。

860,根据dc分量的预测值和目标图像块的原始dc分量确定目标图像块的dc分量残差。

例如,将目标图像块的dc分量与dc分量的预测值相减得到dc分量的残差δdc。

870,将ac分量和dc分量残差写入码流。

例如,将重构变换量化系数写入码流,其中重构变换量化系数包括dc分量与预测值的差值和820得到的ac分量。可以对重构变换量化系数进行熵编码,并将编码后的重构变换量化系数写入码流。另外,ctu中cu的划分方式、cu的编码模式、cu中pu的划分模式、预测模式选择等信息也经过熵编码写入码流。

基于本申请的技术方案,可以在将dc分量设置为预设值的情况下对变换量化系数进行逆量化和逆变换,得到目标图像块的过渡重建图像块,并且根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定dc分量的预测值。在对目标图像块进行编码或解码时,可以使用dc分量残差来替代dc分量。由于dc分量残差的绝对值小于dc分量,因此提高了编码效率。

另外,虽然也可以直接采用参考像素区域的dc分量作为dc分量的预测值,但本发明实施例根据dc分量为预设值的过渡重建图像块的像素与参考像素区域中的像素的相似性来确定dc分量的预测值,提高了dc分量预测值的精度,使得dc分量残差更小,因此,编码效率更高。

图9是根据本发明的另一实施例的解码过程的示意图。

解码端的处理方法与编码端相对应,解码端得到一个ctu的码流后,熵解码得到该ctu中cu的划分方式和其中各个cu中pu的划分模式,预测模式以及变换量化系数等信息,然后按照顺序依次解码。当ctu中所有cu均解码完后,才能继续解码后续的ctu。

910,从码流中获取目标图像块的变换量化系数的交流ac分量及直流dc分量残差。

例如,从码流中获取重构变换量化系数,其中重构变换量化系数包括目标图像块的第一直流dc分量与dc分量的预测值的差值和目标图像块的交流ac分量。解码端可以接收编码端发送的码流,并对码流进行熵解码得到目标图像块的预测模式信息和变换量化系数。预测模式信息可以包括每个预测块的预测模式,例如,在hevc中,预测模式可以是dc预测模式、平面预测模式和33种角度(或方向)预测模式中的一种。变换量化系数包括δdc和ac分量。对应于每个预测块,可以相应地划分多个变换块,属于同一个预测块的变换块采用相同的预测模式。本实施例的目标图像块可以为变换块或对应于变换块。

920,对ac分量以及预设的dc分量进行逆量化和逆变换,得到过渡残差,并将过渡残差与目标图像块的预测值相加得到目标图像块的过渡重建图像块。

例如,对过渡变换量化系数进行逆量化和逆变换,得到目标图像块的过渡重建图像块,其中过渡变换量化系数包括第二dc分量和ac分量,第二dc分量为预设值。针对每个目标图像块,将变换量化系数的dc分量设置为零,即变换量化系数包括从码流中解析出的ac分量和取值为0的dc分量,并对该变换量化系数进行逆量化和逆变换,得到dc分量为零时的目标像块的重建残差,并将该重建残差与目标像块的预测值相加获得目标图像块在dc分量为零时的过渡重建图像块,记为bdc=0。

930,根据过渡重建图像块与目标图像块的参考像素区域中的像素的相似性,确定目标图像块的变换量化系数的dc分量的预测值。

例如,根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定dc分量的预测值。计算目标图像块的dc分量的预测值dcpred的具体方法参见下面图14的实施例的描述。

940,根据dc分量的预测值和dc分量残差确定目标图像块的原始dc分量。

例如,根据dc分量与dc分量的预测值的差值以及dc分量的预测值,确定dc分量。可以将上述步骤中获得的dc分量的预测值dcpred和从码流中解析出来的δdc相加,得到目标图像块的量化后的dc分量值。

950,对目标图像块的原始dc分量以及ac分量进行逆量化和逆变换,得到目标图像块的残差信号。

例如,对初始变换量化系数进行逆量化和逆变换,得到目标图像块的残差信号,其中初始变换量化系数包括dc分量和ac分量。将上述步骤中获得的目标图像块的dc分量值,与从码流中解析出来的目标图像块的ac分量值,进行逆量化和逆变换,从而得到目标图像块的重建残差信号。

960,根据所残差信号对目标图像块进行解码。

例如,根据预测值和重建残差信号生成重建图像块。

应理解,根据预测值和重建残差信号生成重建图像块的过程与常规视频编码类似,在此不再赘述。

基于本申请的技术方案,可以在将dc分量设置为预设值的情况下对变换量化系数进行逆量化和逆变换,得到目标图像块的过渡重建图像块,并且根据过渡重建图像块的像素与目标图像块的参考像素区域中的像素的相似性,确定dc分量的预测值。在对目标图像块进行编码或解码时,可以使用dc分量残差来替代dc分量。由于dc分量残差的绝对值小于dc分量,因此提高了编码效率。

另外,虽然也可以直接采用参考像素区域的dc分量作为dc分量的预测值,但本发明实施例根据dc分量为预设值的过渡重建图像块的像素与参考像素区域中的像素的相似性来确定dc分量的预测值,提高了dc分量预测值的精度,使得dc分量残差更小,因此,编码效率更高。

下面结合图10至图13b详细描述确定目标图像块的dc分量的预测值的方法。

图10示出了hevc的35种预测模式。参见图10,hevc中的帧内预测模式包括直流(dc)预测模式(索引为1),平面(planar)预测模式(索引为0)和角度预测模式(索引为2至34)。在进行帧内预测时,可以从上述35种预测模式中选择一种。当前图像块使用其左边和上边参考像素区域的已重建块的信息进行预测。采用dc预测模式时,当前图像块中所有像素使用参考像素的平均值作为预测值。采用平面预测模式时,使用参考像素进行双线性插值得到当前图像块中所有像素的预测值。采用角度预测式时,利用当前图像块所包含的纹理与邻近已重建块的纹理高度相关这一特性,当前图像块中的像素预测将沿一特定角度投射到参考像素区域,参考像素区域内对应的1/32精度的像素值作为当前图像块中的像素的预测值。参考像素区域1/32精度的像素值可以使用临近的两个参考像素进行内插。若投射对应的参考像素恰好是参考区域的整像素,则可以直接复制对应的参考像素值。

本发明实施例在确定dc分量的预测值时,可以根据预测模式指定的方向选择像素信号,并且根据像素信号的纹理相关性来确定dc分量的预测值。下面详细说明三种确定dc分量的预测值的方法。

图14是根据本发明的实施例的确定dc分量的预测值的过程的示意性流程图。

具体来说,图8的850和图9的步骤930可以包括如下步骤:

1410,根据预测模式指示的方向,在过渡重建图像块和参数像素区中沿第k条线选取多个相邻的像素信号;

例如,从码流中获取目标图像块的帧内预测模式predmode,沿着该帧内预测模式所指定的方向,分别在过渡重建图像块和过渡重建图像块周围的参考像素区域取四个相邻的像素信号。其中,所述的第k条线并非真实存在的线,而是便于描述假想的穿过上述的四个相邻的像素且与所述帧内预测模式所指的方向一致的射线,与所述帧内预测模式所指的方向一致是指的方向大致平行或者平行。应理解,本发明的实施例在提到线穿过的像素时可以指线穿过实际像素,也可以指线穿过实际像素经插值得到的虚拟像素。

图11a是本发明实施例的基于方向预测模式选择像素信号的示意图。图11b是基于dc预测模式和平面预测模式选择像素信号的示意图。如图11a所示,在第k条线上在参考像素区域选取一组像素信号,包括:四个信号,在过渡重建图像块中选取一组像素信号,包括:四个信号。其中下标ik表示沿着预测方向的第k条线,j表示该线上的第j像素信号。相邻,其它几个信号按编号的顺序依次排列。对于方向预测模式,按照预测方向选取像素信号;而对于dc预测模式和平面预测模式,可以只考虑水平方向和垂直方向的相邻像素的相关性,因此在水平方向和垂直方向上选择像素信号。在本发明的实施例中,方向预测模式指定的方向可以指预测方向,而dc预测模式和平面预测模式指定的方向可以指水平方向和垂直方向,k为1与2n-1之间的整数。

应理解,为了描述方便,本发明的实施例以在参考像素区和过渡重建图像块各选取四个信号为例进行说明,本发明的实施例并不限于此,所选取的信号的个数可以是其它值,例如,大于4或等于3的值。

1420,计算第k条线上选取的两组像素信号的二阶梯度,根据两组像素的二阶度确定具有纹理方向性的线的集合。

每条线上的选择的两组像素信号的二阶度的计算方法如下:

可以根据二阶梯度的大小判断第ik条线在预测方向上是否具有较强的纹理特性,当二阶梯度值较小(例如,小于某个预设值)时,表明信号在该方向上是一致的,也即具有较强的纹理特性。本实施例是以上述求二阶梯度的方法为例进行描述,但本发明的实施例并不限于此,其它任何求二阶梯度的方法均可以用于本发明的实施例。

在具体实现中,使用下列公式(2)来判断第ik条线在预测方向上是否具有较强的纹理特性。特别地,当过渡重建图像块中找不到用于计算二阶梯度的信号,并且在参考区域能够找到用于计算二阶梯度的信号时,例如,使用下列公式(3)。

其中λ1和λ2的取值,可以根据实验经验使用λ1=40,λ2=20。若第ik条线满足公式(2)或者(3),则将该条线加入到集合c中,集合c表示具有纹理方向性的线的集合。

应理解,本发明的实施例是以二阶梯度来判断纹理特性,本发明的实施例并不限于此,也可以采用其它方法来判断每条线上的选取的信号是否具有较强的纹理特性,例如,一阶梯度等。当然,判断纹理特性的方式也可以是多种方式的结合,例如,对于有些线上选取的信号采用二阶梯度,对于另一些上选择的信号采用一阶梯度。

参见图10,除方向2、10、18、26和34之外,其他方向上的预测模式均用邻近的两个像素做加权平均来获得上述像素信号换句话说,上述两组像素信号可以是上述线穿过的像素本身的信号,也可以是上述线两侧的像素的信号进行插值得到的信号。

下面详细描述不同预测模式下获得上述信号的方法。为了描述方便,以下图中的角标表示的是信号的水平和竖直方向的索引,与上述角标有所不同。图12a-12d是本发明的实施例的基于方向预测模式选取像素信号的示意图。

参见图12a,对于预测模式3-9的插值,可以使用过渡重建图像块左边和左下角的块作为参考,以xi,1为起点沿着预测方向(图10中指示预测方向)作一条射线,插值像素点y′i,j由相邻的两个原始像素点加权平均得到。预测模式4-9与之类似,在此不再赘述。

其中为插值点距离上侧像素点的距离,为插值点距离下侧像素点的距离。其余的插值点以此类推。

参见图12b,对于预测模式11-17的插值,使用过渡重建图像块左边和左上角的块作为参考,以为起点沿着预测方向(图10中指示的预测方向)作一条射线,插值像素点y′i,j由相邻的两个原始像素点加权平均得到。预测模式12-17与之类似,在此不再赘述。

其中为插值点距离上侧像素点的

距离,为插值点距离下侧像素点的距离。其余点的插值以此类推。

参见图12c,对于预测模式19-25的插值,使用过渡重建图像块上边和左上角的块作为参考,以x1,i为起点沿着预测方向作一条射线,插值像素点y′i,j由相邻的两个原始像素点加权平均得到。模式20-25与之类似,在此不再赘述。

其中为插值点距离左侧像素点的距离,为插值点距离右侧像素点的距离。其余的插值点以此类推。

参见图12d,对于方向预测模式27-33的插值,可以使用过渡重建图像块上边和右上角的块作为参考,以x1,i为起点沿着预测方向作一条射线,插值像素点y′i,j由相邻的两个原始像素点加权平均得到。模式28-33与之类似,在此不再赘述。

其中为插值点距离左侧像素点的距离,为插值点距离右侧像素点的距离。其余的插值点以此类推。

应理解,插值点的选择并不限于该射线上位于上侧像素点与下侧像素点之间的点,也可以选择位于该射线上位于左侧像素点与右侧像素点之间的点,相应地,可以根据左侧的像素点和右侧的像素点进行插值得到y′i,j。

对于过渡重建图像块内部的像素点,在图12a至图12d中的射线反向延长线上如果能找到4个相邻像素点或通过插值得到的像素点,则选取过渡重建图像块内部的4个相邻像素点;如果不能找到4个相邻像素点,则只选取参考块或参考像素区域的像素点。

1430,求解第一像素信号的偏移量,使得集合c中的线上的第一像素信号增加偏移量后的重建信号的二阶梯度与第二像素信号的二阶梯度的平方和最小,将过渡重建图像块内部的信号增加偏移量δx,得到具有dc分量的重建信号。该偏移量表示过渡重建图像块的量化前的dc预测值。当偏移量δx是实际的量化前的dc分量时,即为实际的重建信号。

根据图像信号在局部区域具有较强相关性或相似性的特性,即具有较强的相关性,来计算过渡重建图像块的dc预测值。相关性或相似性使用二阶梯度来衡量,具体见下例公式(11),该问题转化为求δx,使得该方向上的信号的二阶梯度的平方和最小。该凸优化(convexoptimization)问题是一个二次函数,通过计算公式(12)即可求得δx的值。

其中q={1,2},k∈c。q为上述集合c中的每条线上的像素信号的编号。

由于二阶梯度能够更精确地体现目标图像块的像素与参考图像块之间的相关性或相似性,因此,基于二阶梯度得到的dc分量的预测值的精度更高,使得dc分量残差更小,从而进一步提高了编码效率。

1440,对求解得到的偏移量的值进行量化,得到量化后的dc分量的预测值。

例如,量化后的dc分量的预测值为dcpred=q(m·δx),其中,q(·)是量化操作,m为目标图像块中像素的个数。

应理解,作为图14的实施例的替代实施例,也可以直接按照预测模式指定的方向选取过渡重建图像块和参考区域相邻的两个像素信号组成多个像素对,并根据公式(13)和公式(14)来确定dc分量预测值。具体过程参见方法一中的描述,在此不赘述。

由于二阶梯度能够更精确地体现目标图像块的像素与参考图像块之间的相关性或相似性,因此,基于二阶梯度得到的dc分量的预测值的精度更高,使得dc分量残差更小,从而进一步提高了编码效率。另外,由于只选取相关性较强的某些线上的像素用于计算dc分量的预测值,因此,dc分量的预测值的精度得到进一步提高,使得dc分量残差更小,从而进一步提高了编码效率。

图15是根据本发明的另一实施例的确定dc分量的预测值的过程的示意性流程图。

具体来说,图8的步骤850和图9的步骤930可以包括如下步骤:

1510,根据预测模式指示的方向,在过渡重建图像块和参数像素区中确定多个像素对以及对应于每个像素对的第一像素信号和相邻的第二像素信号,第一像素信号为过渡重建图像块的像素信号,第二像素信号为参考像素区域的像素信号。

图13a和图13b为根据本发明的另一实施例的选取像素信号的示意图。如图13a和图13b所示,过渡重建图像块取信号参考区域取信号对于方向预测模式,可以按照预测方向选取像素信号;而对于dc预测平面预测模式,可以只考虑垂直和水平方向的像素的相关性,即按照水平方向和垂直方向选取像素信号。

1520,求解第一像素信号的偏移量,使得多个像素对的第一像素信号增加偏移后的重建信号与第二像素信号的一阶梯度的平方和最小,其中其中该偏移量用来表示dc分量的量化前的预测值。

对于方向预测模式,可以按照预测方向选取像素信号;而对于dc预测平面预测模式,可以只考虑垂直和水平方向的像素的相关性,即按照水平方向和垂直方向选取像素信号。同上述集合c不为空时的过程类似,对于过渡重建图像块内的信号现将其加上一个偏移量δx。

根据图像信号在局部区域具有较强相关性的特性,即具有较强的相关性,来计算目标图像块的dc分量的预测值。相关性可以使用一阶梯度来衡量,具体见公式(13),该问题转化为求δx,使得该方向上的信号的一阶梯度平方和最小。该凸优化问题是一个二次函数,仅需要计算公式(14)即可求得δx的值。

1530,将求解得到的偏移量的值进行量化得到dc分量的预测值。

应理解,可以将图14的实施例与图15的实施例相结合。例如,如果通过图14的1420没有找到具有纹理方向特性的线,即集合c为空,则按照图15的方案选取过渡重建图像块与参考区域相邻的两个像素来确定dc分量的预测值。

由于只选取过渡重建图像块和参考像素区域之间的相邻像素用于计算dc分量的预测值,因此,在保证dc分量预测值的精度的情况下,降低了计算复杂度。

图16是根据本发明的另一实施例的确定dc分量的预测值的过程的示意性流程图。

具体来说,图8的步骤850和图9的步骤930可以包括如下步骤:

1610,选取过渡重建图像块的上方参考像素区域中的m行像素,和过渡重建图像块的左侧的参考像素区域中的h列像素,分别计算m行像素和h列像素的平均值ave(upm)和ave(lefth)。

1620,选取过渡重建图像块内部上侧的m行像素和过渡重建图像块内部左侧的h列像素,分别计算两部分像素的平均值ave(curm)和ave(curh)。

其中m和h可以大于或等于2,且小于过渡重建图像块的大小n。m和h可以相等,也可以不等。

1630,计算过渡重建图像块上方的参考像素区域中的m行像素的均值与过渡重建图像块内部上侧的m行像素的均值的差,得到第一差值其中

1640,计算过渡重建图像块左侧的参考像素区域中的h列像素的均值与过渡重建图像块内部左侧的h列像素的均值的差,得到第二差值其中

1650,将的均值作为目标图像块的dc分量量化前的预测值,则目标图像块量化后的dc分量的预测值为m为目标图像块的个数。

本发明实施例可以应用于各种电子装置中,示例性的,下面给出本发明实施例应用于电视设备和移动电话设备的例子。

由于选取多行或多列过渡重建图像块和参考像素区域的像素用于计算dc分量的预测值,因此,在保证dc分量预测值的精度的情况下,降低了计算复杂度。采用平均值来计算dc分量的预测值,使得编码器或解码器的设计简单。另外,当m和h为多行或多列时,能够充分利用目标图像块周围更多信号的相关性以及目标图像块与周围信号的关系来预测dc分量的预测值,使得dc分量残差更小,提高了dc分量的预测值的精度,从而进一步提高了编码效率。

此外,本法明还包括在实施dc预测之前,首先对待编码图像的dc值的大小进行判断,如果dc值大于预设阈值,则执行本发明上述的方法,如果dc值小于预设的阈值,则采用常规的方法进行处理,即不采用上述的dc预测方法,而是直接对目标图像块的dc分量及ac分量进行编码。而对应于解码端,本发明可以通过在sliceheader,pps,sps,等参数中增加语法元素,比如一个flag来指示解码端采用何种方式来获取目标图像块的dc分量及ac分量,比如dc_pred_presentflag,当其为1时表示,dc采用预测的方式获取,当其为零时表示dc采用直接解析码流的方式获取,或者也可以相反。

图17是本发明实施例适用于电视机应用的示意性结构图。电视设备1700包括天线1701、调谐器1702、多路解复用器1703、解码器1704、视频信号处理器1705、显示单元1706、音频信号处理器1707、扬声器1708、外部接口1709、控制器1710、用户接口1711和总线1712。

调谐器1702从经天线1701接收到的广播信号提取期望频道的信号,并且解调提取的信号。调谐器1702随后将通过解调获得的编码比特流输出到多路解复用器1703。也就是说,调谐器1702在接收编码图像的编码流的电视设备1700中用作发送装置。

多路解复用器1703从编码比特流分离将要观看的节目的视频流和音频流,并且将分离的流输出到解码器1704。多路解复用器1703还从编码比特流提取辅助数据,例如,电子节目指南,并且将提取的数据提供给控制器1710。如果编码比特流被加扰,则多路解复用器703可对编码比特流进行解扰。

解码器1704对从多路解复用器1703输入的视频流和音频流进行解码。解码器1704随后将通过解码产生的视频数据输出到视频信号处理器1705。解码器1704还将通过解码产生的音频数据输出到音频信号处理器1707。

视频信号处理器1705再现从解码器1704输入的视频数据,并且在显示单元1706上显示视频数据。视频信号处理器1705还可在显示单元1706上显示经网络提供的应用画面。另外,视频信号处理器1705可根据设置对视频数据执行额外的处理,例如,噪声去除。视频信号处理器1705还可产生gui(图形用户界面)的图像并且将产生的图像叠加在输出图像上。

显示单元1706由从视频信号处理器1705提供的驱动信号驱动,并且在显示装置,例如,液晶显示器、等离子体显示器或oeld(有机场致发光显示器)的视频屏幕上显示视频或图像。

音频信号处理器1707对从解码器1704输入的音频数据执行再现处理,例如,数模转换和放大,并且通过扬声器1708输出音频。另外,音频信号处理器1707可对音频数据执行额外的处理,例如,噪声去除。

外部接口1709是用于连接电视设备1700与外部装置或网络的接口。例如,经外部接口1709接收的视频流或音频流可由解码器1704解码。也就是说,外部接口1709也在接收编码图像的编码流的电视设备1700中用作发送装置。

控制器1710包括处理器和存储器。存储器存储将要由处理器执行的程序、节目数据、辅助数据、经网络获取的数据等。例如,当电视设备900启动时,存储在存储器中的程序由处理器读取并且执行。处理器根据从用户接口1711输入的控制信号控制电视设备1700的操作。

用户接口1711连接到控制器1710。例如,用户接口1711包括用于使用户操作电视设备1700的按钮和开关以及用于接收遥控信号的接收单元。用户接口1711检测由用户经这些部件执行的操作,产生控制信号,并且将产生的控制信号输出到控制器1710。

总线1712将调谐器1702、多路解复用器1703、解码器1704、视频信号处理器1705、音频信号处理器1707、外部接口1709和控制器1710彼此连接。

在具有这种结构的电视设备1700中,解码器1704具有根据上述实施例的视频解码装置的功能。

图18是本发明实施例适用于移动电话应用的示意性结构图。移动电话装置1720包括天线1721、通信单元1722、音频编解码器1723、扬声器1724、麦克风1725、相机单元1726、图像处理器1727、多路解复用器1728、记录/再现单元1729、显示单元1730、控制器1731、操作单元1732和总线1733。

天线1721连接到通信单元1722。扬声器1724和麦克风1725连接到音频编码解码器1723。操作单元932连接到控制器1731。总线1733将通信单元1722、音频编解码器1723、相机单元1726、图像处理器1727、多路解复用器1728、记录/再现单元1729、显示单元1730和控制器1731彼此连接。

移动电话装置1720在各种操作模式下执行操作,例如,音频信号的发送/接收、电子邮件和图像数据的发送/接收、图像的拍摄、数据的记录等,所述各种操作模式包括语音呼叫模式、数据通信模式、成像模式和视频电话模式。

在语音呼叫模式下,由麦克风1725产生的模拟音频信号被提供给音频编解码器1723。音频编解码器1723将模拟音频信号转换成音频数据,对转换的音频数据执行模数转换,并且压缩音频数据。音频编码解码器1723随后将作为压缩结果得到的音频数据输出到通信单元1722。通信单元1722对音频数据进行编码和调制以产生待发送的信号。通信单元1722随后经天线1721将产生的待发送的信号发送给基站。通信单元1722还放大经天线1721接收到的无线电信号并且对经天线1721接收到的无线电信号执行频率转换以获得接收到的信号。通信单元1722随后对接收到的信号进行解调和解码以产生音频数据,并且将产生的音频数据输出到音频编解码器1723。音频编解码器1723解压缩音频数据并且对音频数据执行数模转换以产生模拟音频信号。音频编码解码器1723随后将产生的音频信号提供给扬声器1724以从扬声器1724输出音频。

在数据通信模式下,例如,控制器1731根据由用户经操作单元1732的操作产生将要被包括在电子邮件中的文本数据。控制器1731还在显示单元1730上显示文本。控制器1731还响应于经操作单元1732来自用户的用于发送的指令产生电子邮件数据,并且将产生的电子邮件数据输出到通信单元1722。通信单元17922对电子邮件数据进行编码和调制以产生待发送的信号。通信单元1722随后经天线1721将产生的待发送的信号发送给基站。通信单元1722还放大经天线1721接收到的无线电信号并且对经天线1721接收到的无线电信号执行频率转换以获得接收到的信号。通信单元1722随后对接收到的信号进行解调和解码以恢复电子邮件数据,并且将恢复的电子邮件数据输出到控制器1731。控制器1731在显示单元1730上显示电子邮件的内容,并且将电子邮件数据存储在记录/再现单元1729的存储介质中。

记录/再现单元1729包括可读/可写存储介质。例如,存储介质可以是内部存储介质,或者可以是在外部安装的存储介质,例如,硬盘、磁盘、磁光盘、usb(通用串行总线)存储器或存储卡。

在成像模式下,相机单元1726对对象成像以产生图像数据,并且将产生的图像数据输出到图像处理器1727。图像处理器1727对从相机单元1726输入的图像数据进行编码,并且将编码流存储在存储/再现单元1729的存储介质中。

在视频电话模式下,多路解复用器1728多路复用由图像处理器1727编码的视频流和从音频编码解码器1723输入的音频流,并且将多路复用流输出到通信单元1722。通信单元1722对多路复用流进行编码和调制以产生待发送的信号。通信单元1722随后经天线1721将产生的待发送的信号发送给基站。通信单元1722还放大经天线1721接收到的无线电信号并且对经天线1721接收到的无线电信号执行频率转换以获得接收到的信号。待发送的信号和接收到的信号可包括编码比特流。通信单元1722随后对接收到的信号进行解调和解码以恢复流,并且将恢复的流输出到多路解复用器1728。多路解复用器1728从输入流分离视频流和音频流,将视频流输出到图像处理器1727并且将音频流输出到音频编解码器1723。图像处理器1727对视频流进行解码以产生视频数据。视频数据被提供给显示单元1730,并且一系列图像由显示单元1730显示。音频编解码器1723解压缩音频流并且对音频流执行数模转换以产生模拟音频信号。音频编解码器1723随后将产生的音频信号提供给扬声器1724以从扬声器1724输出音频。

在具有这种结构的移动电话装置1720中,图像处理器1727具有根据上述实施例的视频编码装置和视频解码装置的功能。

在一个或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件实施,则功能可作为一个或多个指令或代码而存储于计算机可读媒体上或经由计算机可读媒体而发送,且通过基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体(其对应于例如数据存储媒体等有形媒体)或通信媒体,通信媒体包含(例如)根据通信协议促进计算机程序从一处传送到另一处的任何媒体。以此方式,计算机可读媒体大体上可对应于(1)非瞬时的有形计算机可读存储媒体,或(2)例如信号或载波等通信媒体。数据存储媒体可为可由一个或多个计算机或一个或多个处理器存取以检索指令、代码及/或数据结构以用于实施本发明中所描述的技术的任何可用媒体。计算机程序产品可包含计算机可读媒体。

通过实例而非限制,某些计算机可读存储媒体可包括ram、rom、eeprom、cd-rom或其它光盘存储器、磁盘存储器或其它磁性存储装置、快闪存储器,或可用以存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。而且,任何连接可适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光缆、双绞线、数字用户线(dsl)或无线技术(例如,红外线、无线电及微波)而从网站、服务器或其它远程源发送指令,则同轴电缆、光缆、双绞线、dsl或无线技术(例如,红外线、无线电及微波)包含于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它瞬时媒体,而是有关非瞬时有形存储媒体。如本文中所使用,磁盘及光盘包含压缩光盘(cd)、激光光盘、光学光盘、数字影音光盘(dvd)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式复制数据,而光盘通过激光以光学方式复制数据。以上各物的组合还应包含于计算机可读媒体的范围内。

可由例如一个或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、现场可编程逻辑阵列(fpga)或其它等效集成或离散逻辑电路等一个或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指代前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,可将本文中所描述的功能性提供于经配置以用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编解码器中。而且,所述技术可完全实施于一个或多个电路或逻辑元件中。

本发明的技术可以广泛地由多种装置或设备来实施,所述装置或设备包含无线手持机、集成电路(ic)或ic集合(例如,芯片组)。在本发明中描述各种组件、模块或单元以强调经配置以执行所揭示技术的装置的功能方面,但未必要求通过不同硬件单元来实现。确切地说,如上文所描述,各种单元可组合于编解码器硬件单元中,或通过交互操作性硬件单元(包含如上文所描述的一个或多个处理器)的集合结合合适软件及/或固件来提供。

应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。

在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

另外,本文中术语“系统”和“网络”在本文中常可互换使用。应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

在本申请所提供的实施例中,应理解,“与a相应的b”表示b与a相关联,根据a可以确定b。但还应理解,根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其它信息确定b。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1