压缩编码方法与流程

文档序号:17376775发布日期:2019-04-12 23:23阅读:481来源:国知局
压缩编码方法与流程

本发明属于视频压缩领域,具体涉及一种压缩编码方法。



背景技术:

大量统计表明,同一副图像的临近像素之间有着相关性,或者说这些像素值相似。而且同帧图像中邻近行之间对应位置的像素之间也有较强的相关性。人们可以利用这些性质进行视频压缩编码。随着通信技术飞速发展,人们对视频质量的清晰度、流畅度、实时度要求越来越高,视频压缩技术已经成为解决该问题的重要环节。数字化的视频信息数据量巨大,且会占用极大的存储空间和信道带宽,制约视频通信行业的扩展。在宽带受限的信道中,采用压缩编码技术减少数据传输量,是提高通信速度的重要手段。

因此,如何提供一种高效率、高性能的压缩编码方法是解决上述问题的关键。



技术实现要素:

为了解决现有技术中存在的上述问题,本发明提供了一种压缩编码方法。本发明要解决的技术问题通过以下技术方案实现:

本发明实施例提供了一种压缩编码方法,包括如下步骤:

(a)获取第一宏块;

(b)获取所述第一宏块的采样点和非采样点;

(c)根据所述采样点和所述非采样点获得第一预测残差;

(d)根据所述第一预测残差获取残差分布类型;

(e)根据所述预测残差分布类型获取量化矩阵;

(f)根据所述量化矩阵和所述第一预测残差获得量化残差。

在本发明的一个实施例中,步骤(b)包括:

(b1)依次获得所述第一宏块的每一位像素值与前一位像素值的差值以形成残差序列;

(b2)获得所述残差序列中连续正值或者连续负值的最后一位的序列索引作为拐点索引;

(b3)将所述拐点索引、所述第一宏块的首位序列索引、所述第一宏块的末位序列索引所对应的像素做为采样点,剩余像素做为非采样点。

在本发明的一个实施例中,步骤(c)包括:

(c1)获取所述第一宏块的正上方位置对应的第二宏块;

(c2)根据所述第二宏块获取所述采样点的第二预测残差;

(c3)根据非采样点公式计算所述非采样点的第三预测残差,其中,所述非采样点公式满足:

其中,s0和s1为依次连续的两个所述采样点的像素值,i为所述s0和所述s1之间的非采样点索引,n为所述s0和所述s1之间非采样点的数量;

(c4)根据所述第二预测残差和所述第三预测残差获得所述第一预测残差。

在本发明的一个实施例中,步骤(c2)包括:

(c21)获取所述第二宏块中与所述采样点呈第n角度的像素值;

(c22)根据所述第n角度像素值计算第n绝对误差和;

(c23)选取所述第n绝对误差和中最小值对应的所述第n角度作为采样点预测方向,并根据所述预测方向获取所述采样点的第二预测残差。

在本发明的一个实施例中,步骤(f)后还包括:将所述采样点位置标识、所述采样点预测方向、所述量化矩阵、所述量化残差写入码流。

在本发明的一个实施例中,步骤(d)包括:

(d1)将所述第一预测残差划分为若干个量化单元;

(d2)根据所量化单元计算残差分布系数;

(d3)根据所述残差分布系数获得所述残差分布类型。

在本发明的一个实施例中,所述量化单元的类型包括:第一量化单元和第二量化单元,其中,第一量化单元为8×1,第二量化单元为16×1。

在本发明的一个实施例中,所述第一量化单元的残差分布系数包括4种。

在本发明的一个实施例中,所述第二量化单元的残差分布系数包括6种。

在本发明的一个实施例中,步骤(e)包括:

(e1)获取所述第一宏块的基准qp;

(e2)根据所述残差分布类型、所述第一宏块的比特深度、所述基准qp获取所述量化矩阵。

与现有技术相比,本发明的有益效果:

本发明对于具有复杂纹理的图像,大大改善对边界处纹理的预测精度,降低理论极限熵,增大带宽压缩率,同时,根据不同纹理复杂度对量化参数自适应设置,进一步节省传输比特数,增大带宽压缩率。

附图说明

图1为本发明实施例提供的一种压缩编码方法的流程示意图;

图2为本发明实施例提供的一种压缩编码方法的预测残差计算原理示意图。

具体实施方式

下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。

实施例一

请参见图1,图1为为本发明实施例提供的一种压缩编码方法的流程示意图;该压缩编码方法包括如下步骤:

(a)获取第一宏块;

(b)获取所述第一宏块的采样点和非采样点;

(c)根据所述采样点和所述非采样点获得第一预测残差;

(d)根据所述第一预测残差获取残差分布类型;

(e)根据所述预测残差分布类型获取量化矩阵;

(f)根据所述量化矩阵和所述第一预测残差获得量化残差。

本发明实施例对于具有复杂纹理的图像,大大改善对边界处纹理的预测精度,降低理论极限熵,增大带宽压缩率,同时,根据不同纹理复杂度对量化参数自适应设置,进一步节省传输比特数,增大带宽压缩率。

实施例二

请再次参见图1,本实施例在上述实施例的基础上,重点对压缩编码方法进行详细描述。具体地,该方法中,步骤(b)还包括:

(a)获取第一宏块;

(b)获取所述第一宏块的采样点和非采样点;

(c)根据所述采样点和所述非采样点获得第一预测残差;

(d)根据所述第一预测残差获取残差分布类型;

(e)根据所述预测残差分布类型获取量化矩阵;

(f)根据所述量化矩阵和所述第一预测残差获得量化残差。

其中,步骤(b)包括:

(b1)依次获得所述第一宏块的每一位像素值与前一位像素值的差值以形成残差序列;

(b2)获得所述残差序列中连续正值或者连续负值的最后一位的序列索引作为拐点索引;

(b3)将所述拐点索引、所述第一宏块的首位序列索引、所述第一宏块的末位序列索引所对应的像素做为采样点,剩余像素做为非采样点。

其中,步骤(c)包括:

(c1)获取所述第一宏块的正上方位置对应的第二宏块;

(c2)根据所述第二宏块获取所述采样点的第二预测残差;

(c3)根据非采样点公式计算所述非采样点的第三预测残差,其中,所述非采样点公式满足:

其中,s0和s1为依次连续的两个所述采样点的像素值,i为所述s0和所述s1之间的非采样点索引,n为所述s0和所述s1之间非采样点的数量;

(c4)根据所述第二预测残差和所述第三预测残差获得所述第一预测残差。

其中,步骤(c2)包括:

(c21)获取所述第二宏块中与所述采样点呈第n角度的像素值;

(c22)根据所述第n角度像素值计算第n绝对误差和;

(c23)选取所述第n绝对误差和中最小值对应的所述第n角度作为采样点预测方向,并根据所述预测方向获取所述采样点的第二预测残差。

其中,步骤(f)后还包括:将所述采样点位置标识、所述采样点预测方向、所述量化矩阵、所述量化残差写入码流。

其中,步骤(d)包括:

(d1)将所述第一预测残差划分为若干个量化单元;

(d2)根据所量化单元计算残差分布系数;

(d3)根据所述残差分布系数获得所述残差分布类型。

其中,所述量化单元的类型包括:第一量化单元和第二量化单元,其中,第一量化单元为8×1,第二量化单元为16×1。

其中,所述第一量化单元的残差分布系数包括4种。

其中,所述第二量化单元的残差分布系数包括6种。

其中,步骤(e)包括:

(e1)获取所述第一宏块的基准qp;

(e2)根据所述残差分布类型、所述第一宏块的比特深度、所述基准qp获取所述量化矩阵。

本发明对于具有复杂纹理的图像,通过定义宏块中采样点和非采样点的预测方式,根据纹理渐变原理,对纹理变化较大区域不依赖当前宏块的周围宏块进行预测,而是通过自身的纹理特性获得预测残差,大大改善对边界处纹理的预测精度,降低理论极限熵,增大带宽压缩率,同时,根据不同纹理复杂度对量化参数自适应设置,纹理复杂的区域人眼感知不明显,量化参数设置较大,纹理简单区域人眼感知较明显,量化参数设置较小,进一步节省传输比特数,增大带宽压缩率。

实施例三

请再次参见图1和图2,图2为本发明实施例提供的一种压缩编码方法的预测残差计算原理示意图。本实施例在上述实施例的基础上,重点举例对压缩编码方法进行详细描述,具体地,设待处理的第一宏块mb1大小为m×n个像素,其中,m和n均为大于0的整数。以下实施例以m=16,n=1为例进行说明,待处理第一宏块mb1={12,14,15,18,20,23,15,10,4,0,2,2,4,5,5,6}具体包括如下步骤:

s10:将所述第一宏块mb1的每一位像素值与前一位像素值的差值以形成残差序列。即满足,

得到restem={12、2、1、3、2、3、-8、-5、-6、-4、2、0、2、1、0、1};

其中,本发明实施例中的任一像素值可以为像素值,也可以为像素分量值,也可以为重建后的像素分量值,此处不做具体限制,即第一宏块mb1和第二宏块mb2中每一位可以代表一个像素、一个像素分量、或者一个重建后的像素分量。

s11:获得所述残差序列restem中连续正值或者连续负值的最后一位且残差值不为0的位置对应的待处理第一宏块mb1的相同位置的像素作为拐点,将拐点对应的序列索引作为拐点索引;

其中,所述拐点是根据第一宏块mb1中存在的纹理相关性确定的第一宏块mb1的纹理渐变点,将第一宏块mb1的纹理渐变点设定为像素值拐点。

则残差序列restem的拐点从左到右分别为mb15=23和mb19=0。

s12:将所述拐点索引、第一宏块mb1的首位序列索引、第一宏块mb1的末位序列索引所对应的像素做为采样点,剩余像素为非采样点。

则采样点为mb10=12,mb15=23,mb19=0,mb115=6。记录采样点的位置,作为采样点位置标识。

s13:获取第一宏块mb1的正上方相邻位置对应的第二宏块mb2;

设mb2={16,25,10,5,21,25,12,5,4,1,3,20,4,7,6,6}。

s14:根据所述第二宏块mb2获取所述采样点的第二预测残差;

首先,获取所述第二宏块mb2中与所述采样点呈第n角度的第n方向像素值;第n角度可以为135度、45度、90度。

以mb15为例,获取所述第一宏块mb1中的采样点mb15对应的第二宏块mb2中与mb15分别呈135度、45度、90度的像素mb24,mb25,mb26,mb15分别与mb24,mb25,mb26做差后求绝对值求出对应的第二预测残差和绝对误差和(sumofabsolutedifferences,简称sad),选取sad最小的预测方式作为mb15的预测方向,获得对应的第二预测残差。

同理,分别可以得出mb15,mb19,mb115的预测方向和对应的第二预测残差。

s15:根据非采样点公式计算所述非采样点的第三预测残差,其中,所述非采样点公式满足:

其中,s0和s1为依次连续的两个所述采样点的像素值,i为所述s0和所述s1之间的非采样点索引,n为所述s0和所述s1之间非采样点的数量;

例如,取s0=mb10,s1=mb15,n=4,则有:

同理,可以得出所有非采样点的第三预测残差。

s16:根据上述第二预测残差和所述第三预测残差获得所有像素的第一预测残差。

s17:根据所述第一预测残差计算残差分布类型;

其中,将所述第一预测残差按续依次拆分成量化单元;其中,所述量化单元的类型包括:第一量化单元和第二量化单元,其中,第一量化单元为8×1,第二量化单元为16×1。

其中,第一量化单元为:m=8,n=1;对应的残差分布系数为4种,分别为gradj,其中,j为1到4的整数,残差分布系数gradj满足:

其中,第二量化单元为m=16,n=1,所以对应残差分布系数为6种,分别为gradj,其中,j为1到6的整数,残差分布系数gradj满足:

其中,ri为第一预测残差的像素值的绝对值,i为0到15的整数。

其中,每个残差分布系数对应一种残差分布类型同时对应一种量化矩阵,即第j残差分布系数对应第j残差分布类型同时对应第j量化矩阵。

s18:根据所述残差分布系数计算所述残差分布类型。

其中,每个所述残差分布系数gradj可以对应设置一个对应的残差分布阈值thj,其中,thj可根据实际情况设置,优选地,设置第一量化单元thj=1.5,1≤j≤4;设置第二量化单元thj=1.5,1≤j≤6;

首先,获得残差分布系数最大值gradmax=max{gradj},其中,max为gradj最大值对应的索引;比较gradmax与对应的残差分布阈值thj的大小,若gradmax大于对应的thj,则第一预测残差的残差分布类型为gradmax对应的第j残差分布类型;否则,残差分布类型为普通型。

s19:根据码率控制给出基准qp,并确定基准qp的最大值qpmax、最小值qpmin、差异值difqp。

根据码率控制获取第一预测残差的基准量化参数qp,确定基准qp的最大值qpmax、最小值qpmin、差异值difqp=qpmax-qpmin,满足如下:

qpmax=min(2×qp,bitdepth)

qpmin=qp-(qpmax-qp)

其中,bitdepth为图像块mb的像素的比特深度。

s20:根据最大值qpmax、最小值qpmin、差异值difqp构建量化矩阵。

其中,若为第一量化单元,具有4种残差分布类型,其中,1≤j≤4,

第1残差分布类型对应的量化矩阵为:

第2残差分布类型对应的量化矩阵为:

第3残差分布类型对应的量化矩阵为:

第4残差分布类型对应的量化矩阵为:

若为普通型对应的量化矩阵为:

qpi=qp,0≤i≤15

其中,若为第二量化单元,具有6中残差分布类型,其中,1≤j≤6,

第1残差分布类型对应的量化矩阵为:

第2残差分布类型对应的量化矩阵为:

第3残差分布类型对应的量化矩阵为:

第4残差分布类型对应的量化矩阵为:

第5残差分布类型对应的量化矩阵为:

第6残差分布类型对应的量化矩阵为:

若为普通型对应的量化矩阵为:

qpi=qp,0≤i≤15

最终求得量化矩阵为:qpmatrix=pi,0≤i≤15。

其中,weighti为第i位量化参数的权重因子,根据主观图像质量最优、客观图像质量进行人工根据经验设定,其中一种实施方式为,weighti=0,0≤i≤15。

s21:采用步骤s20计算的量化矩阵计算获得第一预测残差的量化残差。

resqpi=res>>qpi

s22:将采样点位置标识、采样点预测方向、量化单元类型、残差分布类型标识号、量化残差写入码流。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

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