图像编码、解码方法及装置的制造方法

文档序号:8434232阅读:199来源:国知局
图像编码、解码方法及装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,具体而言,涉及一种图像编码、解码方法及装置。
【背景技术】
[0002]图像的数字视频信号的自然形式是图像的序列。一帧图像通常是由若干像素组成的矩形区域,而数字视频信号就是由几十帧至成千上万帧图像组成的视频图像序列,有时也简称为视频序列或序列。对数字视频信号进行编码就是对一帧一帧图像进行编码。
[0003]最新国际视频压缩标准HEVC (High Efficiency Video Coding)中,对一帧图像进行编码时,把一帧图像划分成若干块MxM像素的子图像,称为“编码单元(Coding Unit,简称⑶)”,以⑶为基本编码单位,对子图像一块一块进行编码。常用的M的大小是8,16,32,64。因此,对一个视频图像序列进行编码就是对各个编码单元依次进行编码。同样,解码时也是对各个编码单元依次进行解码,最终重构出整个视频图像序列。
[0004]为适应一帧图像内各部分图像内容与性质的不同,有针对性地进行最有效的编码,一帧图像内各CU的大小可以是不同的,有的是8x8,有的是64x64,等等。为了使不同大小的CU能够无缝拼接起来,一帧图像总是先划分成大小完全相同具有NxN像素的“最大编码单元(Largest Coding Unit简称IXU) ”,然后每个IXU再进一步划分成树状结构的多个大小不一定相同的⑶。因此,IXU也称为“编码树单元(Coding Tree Unit简称CTU) ”。例如,一帧图像先划分成大小完全相同的64x64像素的IXU (N = 64) ?其中某个IXU由3个32x32像素的⑶和4个16x16像素的⑶构成,这样7个成树状结构的⑶构成一个CTU。而另一个IXU由2个32x32像素的⑶、3个16x16像素的⑶和20个8x8像素的⑶构成。这样25个成树状结构的CU构成另一个CTU。对一帧图像进行编码,就是依次对一个一个CTU中的一个一个⑶进行编码。
[0005]一个彩色像素有3个分量(component)组成。最常用的两种像素色彩格式(pixelcolor format)是由绿色分量、蓝色分量、红色分量组成的GBR色彩格式和由一个亮度(Iuma)分量及两个色度(chroma)分量组成的YUV色彩格式也称YCbCr色彩格式。因此,对一个CU进行编码时,可以把一个CU分成3个分量平面(G平面、B平面、R平面或Y平面、U平面、V平面),对3个分量平面分别进行编码;也可以把一个像素的3个分量捆绑组合成一个3元组,对由这些3元组组成的⑶整体进行编码。前一种像素及其分量的排列方式称为图像(及其CU)的平面格式(planar format),而后一种像素及其分量的排列方式称为图像(及其⑶)的叠包格式(packed format)。
[0006]YUV色彩格式又可根据是否对色度分量进行下采样再细分成若干种子格式:1个像素由I个Y分量、I个U分量、I个V分量组成的YUV4:4:4像素色彩格式;左右相邻的2个像素由2个Y分量、I个U分量、I个V分量组成的YUV4:2:2像素色彩格式;左右上下相邻按2x2空间位置排列的4个像素由4个Y分量、I个U分量、I个V分量组成的YUV4:2:0像素色彩格式。一个分量一般用I个8?16比特的数字来表示。YUV4:2:2像素色彩格式和YUV4:2:0像素色彩格式都是对YUV4:4:4像素色彩格式施行色度分量的下采样得到。一个像素分量也称为一个像素样值(pixel sample)或简单地称为一个样值(sample)。
[0007]对一帧图像进行编码时,仅使用同一帧内的像素作为参考像素进行编码的图像称为I图像,使用了其他帧的像素作为参考像素进行编码的图像称为非I图像。
[0008]随着以远程桌面为典型表现形式的新一代云计算与信息处理模式及平台的发展和普及,多台计算机之间、计算机主机与智能电视、智能手机、平板电脑等其他数字设备之间及各种各类数字设备之间的互联已经成为现实并日趋成为一种主流趋势。这使得服务器端(云)到用户端的实时屏幕传输成为当前的迫切需求。由于需要传输的屏幕视频数据量巨大,对计算机屏幕图像必须进行高效高质量的数据压缩。
[0009]充分利用计算机屏幕图像的特点,对计算机屏幕图像进行超高效率的压缩,也是最新国际视频压缩标准HEVC的一个主要目标。
[0010]计算机屏幕图像的一个显著特点是同一帧图像内通常会有两类不同性质的图像内容。一类是连续色调内容,通常是摄像机摄取的内容,如流媒体、数码等,另一类是非连续色调内容,通常是计算机产生的内容,如菜单、图标、文字等。
[0011]对连续色调内容,经有损编码和解码后的复原图像,即使有比较大的失真,仍然是观看者不易觉察或可以容忍的。而对非连续色调内容,经有损编码和解码后的复原图像,即使有微小的失真,也是观看者很易觉察并且不可容忍的。
[0012]传统的图像和视频编码和解码技术中,整帧复原图像都有比较均匀的图像质量和失真度。为了保证非连续色调内容的复原高质量和低失真,就不得不把连续色调内容也保持在复原高质量和低失真的程度,从而消耗许多比特数,导致编码后的视频压缩码流有很高的比特率。而为了降低连续色调内容的视频压缩码流的比特率,就不得不降低复原质量,使非连续色调内容的复原质量也大大降低,这是观看者所不能容忍的。
[0013]因此,必须寻求新的编码和解码工具,能够自适应地对连续色调内容和非连续色调内容进行不同复原质量和失真程度的编码。也就是,对一帧图像中的连续色调内容,可以容许有较大的失真,而对同一帧图像中的非连续色调内容,只容许微小的失真。
[0014]目前常用的图像压缩技术中,编码过程主要包括预测编码、匹配编码、变换编码、量化编码、去除编码负面效应(如块效应和波纹效应)的后处理等步骤。预测编码一般有几十种编码模式和若干个编码参数。匹配编码一般也有十几种编码模式和若干个编码参数。变换编码一般也有多种模式和若干个编码参数。量化编码一般有几十个量化参数(quantizat1n parameter,简称QP)。量化参数QP的大小在很大程度上决定了图像质量。大的QP产生低质量的复原图像而小的QP产生高质量的复原图像。另一方面,大的QP产生低比特率的视频压缩码流而小的QP产生高比特率的视频压缩码流。最优编码就是对于每一个当前编码单元,给定一个目标比特率和一个量化参数(也可能Y、U、V或R、G、B三个分量分别有一个量化参数,共三个量化参数),在所有可能的预测编码模式和参数,匹配编码模式和参数,变换编码模式和参数,以及其他有关的编码模式和参数中,搜索和选择一组预测编码模式和参数(或匹配编码模式和参数),变换编码模式和参数,以及其他有关的编码模式和参数,使得产生的比特率小于给定的目标比特率,同时产生具有最小失真的复原图像。这组编码模式和参数,称为最优编码模式和参数组。在编码过程的最后阶段,把选定的最优编码模式和参数组,给定的量化参数,残差数据经过熵编码后写入当前编码单元的视频压缩码流。为了降低比特率,对量化参数进行差分编码,也就是写入当前编码单元的压缩码流的并不是量化参数本身,而是当前编码单元的量化参数与前一编码单元的量化参数之差。在目前常用的图像压缩技术中,从一个编码单元到下一个编码单元,量化参数的变化很小,在很多场合,甚至没有变化。因此在很多场合,并没有量化参数之差被写入当前编码单
J L.ο
[0015]目前常用的图像压缩技术中,当前编码单元的解码过程就是从视频压缩码流中经熵解码读出选定的编码模式和参数组,给定的量化参数,残差数据,根据这些信息计算出不同程度的部分复原图像(也称重构图像),然后再进行去除编码负面效应(如块效应和波纹效应)的后处理,最后得到完全复原图像。
[0016]针对相关技术中,尚无有效的技术方案能够自适应地对连续色调内容和非连续色调内容进行不同复原质量和失真程度的编码的问题,尚未提出有效的解决方案。

【发明内容】

[0017]为了解决上述技术问题,本发明提供了一种图像编码、解码方法及装置。
[0018]根据本发明的一个方面,提供了一种图像编码方法,包括以下步骤:步骤I)对一帧图像的一个编码块按照以下规则进行最优编码:在最优编码过程中,把所有编码模式和参数组分成两类:第I类编码模式和参数组以及第2类编码模式和参数组,同时给定一个目标比特率,以及两个量化参数:量化参数I和量化参数2,在搜索和选择最优的一组编码模式和参数时,所述第I类编码模式和参数组与所述量化参数I配套使用,所述第2类编码模式和参数组与所述量化参数2配套使用;步骤2)计算所述量化参数I与所述量化参数2两者之差,得到量化参数差,所述量化参数差在连续两个编码块或连续两个以上编码块是常数;步骤3)去除有损编码中产生的负面效应,产生完全重构像素;步骤4)把所述量化参数差、选定的最优编码模式和参数组、所述量化参数1、残差数据经过熵编码后写入所述一帧图像中部分编码块的视频压缩码流。
[0019]优选地,所述所有编码方式包括以下至少之一:预测编码模式、匹配编码模式、变换编码模式,所述参数组包括:所述预测编码模式对应的参数、所述匹配编码模式对应的参数、所述变换编码模式对应的参数。
[0020]优选地,执行步骤I)之后,输出以下至少之一信息:选定的最优编码模式和参数组、量化参数1、量化参数2、预测残差或匹配残差。
[0021]优选地,所述负面效应包括以下至少之一:块效应和波纹效应。
[0022]优选地,把编码模式和参数组分成两类包括:针对I图像,所述第I类编码模式和参数组包括:采用帧内编码模式的编码模式和参数组,所述第2类编码模式和参数组包括:未采用帧内编码模式的编码模式和参数组;针对非I图像,所述第I类编码模式和参数组包括:采用帧内或帧间编码模式的编码模式和参数组,所述第2类编码模式和参数组包括:既未采用帧内也未采用帧间编码模式的编码模式和参数组。
[0023]优选地,把编码模式和参数组分成两类包括:对I图像和非I图像,所述第I类编码模式和参数组均包括:采用帧内编码模式的编码模式和参数组,所述第2类编码模式和参数组均包括:未采用帧内编码模式的编码模式和参数组。
[0024]优选地,把编码模式和参数组分成两类包括:对I图像和非I图像,所述第I类编码模式和参数组均包括:采用非水平预测或非垂直预测帧内编码模式的编码模式和参数组,所述第2类编码模式和参数组均包括:不采用非水平预测或不采用非垂直预测帧内编码模式的编码模式和参数组。
[0025]优选地,在编码块的压缩码流中设置一个标记位,所述标记位等于I或O分别表示所述量化参数差的数值在当前编码块中有或没有变更,其中,所述标记位不可在相邻连续两个或连续两个以上编码块的压缩码流中都等于I。
[0026]优选地,所述量化参数差在包含至少4个编码块的一个编码树单元范围内是常数;或所述量化参数差在若干个编码树单元范围内是常数;或所述量化参数差在一个条带Slice范围内是常数;或所述量化参数差在一个覆盖片Tile范围内是常数;或所述量化参数差在一帧图像范围内是常数;或所述量化参数差在一个视频序列范围内是常数。
[0027]优选地,在压缩码流的编码树单元CTU头信息中一个标记位表示所述量化参数差的数值在当前CTU中保持恒定;或在压缩码流中,每隔若干个CTU有一个标记位表示所述量化参数差的数值在随后接着的多个CTU中保持恒定;或在压缩码流的Slice头信息中有一个标记位表示所述量化参数差的数值在当前Slice中保持恒定;或在压缩码流的Tile头信息中有一个标记位表示所述量化参数差的数值在当前Tile中保持恒定;或在压缩码流的一帧图像头信息中有一个标记位表示所述量化参数差的数值在当前一帧图像中保持恒定;或在序列头信息中有一个标记位表示所述量化参数差的数值在当前序列中保持恒定。
[0028]优选地,在压缩码流中的多个编码块共享一个常数量化参数差的压缩码流数据段至少由载入了下列信息的依次排列的语法元素构成:量化参数差,第η个编码块的编码模式和参数组、量化参数I以及残差数据;其中,量化参数差在依次排列的语法元素中间隔或连续出现,η为正整数。
[0029]优选地,在压缩码流中的多个CTU共享一个常数量化参数差的压缩码流数据段由载入了下列信息的依次排列的语法元素构成:量化参数差,第η个CTU的编码模式和参数组、量化参数I以及残差数据;其中,量化参数差在依次排列的语法元素中间隔或连续出现,η为正整数。
[0030]优选地,所述量化参数差是一个非负整数,用于图像的Y、U、V或G、B、R三个分量。
[0031]优选地,所述量化参数差是三个非负整数,用于图像的Y、U、V或G、B、R三个分量。
[0032]根据本发明的另一个方面,还提供了一种图像解码方法,包括以下步骤:步骤I)对压缩码流进行解析和熵解码,输出解析和熵解码得到以下信息:量化参数差,当前解码单元解码块的量化参数I,解码块所采用的编码模式和参数组,解码块的预测残差或匹配残差数据,其中,所述量化参数差的在连续两个或连续两个以上解码块的压缩码流中为常数;步骤2)如果所述解码块的编码模式和参数组属于第I类编码模式和参数组,则所述解码块的量化参数被设为所述量化参数1,否则,所述解码块的量化参数被设为量化参数2等于所述量化参数I与所述量化参数差两者的差值;步骤3)使用步骤I)产生的所述解码块的编码模式和参数组和所述解码块的预测残差或匹配残差数据以及步骤2)产生的所述解码块的量化参数,完成常用解码和重构步骤。
[0033]优选地,在执行步骤3)之后,还包括:输出重构像素,其中,所述重构像素放入已重构参考像素样值暂
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1