一种图像编码方法及装置制造方法及图纸

技术编号:13974150 阅读:51 留言:0更新日期:2016-11-11 03:18
本申请涉及一种图像编码方法及装置。该方法包括:读取当前帧图像的当前宏块,确定该当前帧图像的当前宏块是否属于遮挡区域;如果该当前帧图像的当前宏块属于非遮挡区域,并且该当前帧图像的前一帧图像的相应宏块属于遮挡区域,则使用第一量化参数对该当前帧图像的当前宏块进行编码;否则,使用第二量化参数对该当前帧图像的当前宏块进行编码;其中,该第一量化参数小于该第二量化参数。本申请通过动态分配量化参数,改善了图像质量。

【技术实现步骤摘要】

本申请涉及计算机
,尤其涉及图像编码技术。
技术介绍
视频编码器的压缩性能由视频压缩算法决定。视频压缩即要取得一定的压缩率,又要达到良好的图像质量,这是一对矛盾体。好的视频压缩算法,就是要在同等图像质量的情况下,使用更低的码率。量化参数(quantization parameter,英文简称QP)是视频压缩最重要的参数之一。在视频编码器中,QP定义了残差变换后的量化步长。QP越大,量化步长越大,图像质量越差,但压缩率越高,码率越低;反之,QP越小,量化步长越小,图像质量越好,但压缩率越低,码率越高。如何确定QP的大小,是视频编码器控制码率的重要手段,也是提高图像质量的重要手段。在现有技术中,通常会对I帧(关键帧,属于帧内压缩)使用较小的QP,以保证较好的图像质量,对P帧(差别帧,指示当前帧与前一帧的差别)使用较大的QP,以保证较低的码率。这样,对于静止的区域或者可运动补偿的区域,对P帧使用跳过模式(SKIP MODE),这样I帧的较高图像质量的区域就会延续到P帧,从而使整个序列的平均图像质量得到提高。此种方法的一个负作用是,如果在P帧,局部地方不能做到有效的运动补偿,有残差需要编码时,由于所用了较大的QP,这些地方重构的图像质量会很低,甚至产生运动拖尾等现象的发生。因此,此种方法不适用于包含遮挡区域(uncovering region)的情况。遮挡区域是指在前一帧被遮挡看不到,而在当前帧显露出来的区域。对于uncovering region,由于当前显露出来的区域在前一帧找不到参考,因此若采用上述现有技术,对P帧使用较大QP,那么这个在前一帧被遮挡而在当前帧显露出来的区域的图像质量会很差,很可能会产生运动拖尾现象。
技术实现思路
本申请提供了一种图像编码方法及装置,本申请提高了图像质量,避免了运动拖尾现象的发生。一方面,本申请实施例提供了一种图像编码方法,包括:读取当前帧图像的当前宏块,确定该当前帧图像的当前宏块是否属于遮挡区域;如果该当前帧图像的当前宏块属于非遮挡区域,并且该当前帧图像的前一帧图像的相应宏块属于遮挡区域,则使用第一量化参数对该当前帧图像的当前宏块进行编码;否则,使用第二量化参数对该当前帧图像的当前宏块进行编码;其中,该第一量化参数小于该第二量化参数。本申请实施例通过对在当前帧图像中属于非遮挡区域且在前一帧图像中属于遮挡区域的宏块,使用较小的量化参数,而对其它宏块使用较大的量化参数的方式,提高了图像质量,改善了运动拖尾现象,并且只需要增加少量的码流。在本申请的一个设计中,在该读取当前帧图像的当前宏块之前,包括:读取该当前帧图像的前一帧图像的相应宏块,确定该前一帧图像的相应宏块是否属于遮挡区域;将该前一帧图像的相应宏块的遮挡标识与该相应宏块的宏块标识相对应地存储起来,以便根据该当前帧图像的当前宏块的宏块标识确定该前一帧图像的相应宏块的遮挡标识。在本申请的一个设计中,在该读取当前帧图像的当前宏块之前,包括:顺序读取该当前帧图像的前一帧图像的各宏块,并按照该读取顺序,存储该各宏块的遮挡标识;且该读取当前帧图像的当前宏块,包括:按照读取该前一帧图像各宏块的顺序,读取该当前帧图像的各宏块,以便根据该顺序,确定该当前帧图像的前一帧图像的相应宏块的遮挡标识,从而确定该前一帧图像的相应宏块是否属于遮挡区域。在本申请的一个设计中,该确定该当前帧图像的当前宏块是否属于遮挡区域,包括:通过运动估计搜索算法,得到最小代价值;在该最小代价值小于等于第一阈值情况下,确定该当前宏块属于遮挡区域;在该最小代价值大于等于第二阈值情况下,确定该当前宏块属于非遮挡区域;其中,该第一阈值小于该第二阈值。在本申请的一个设计中,该通过运动估计搜索算法,得到最小代价值,具体为:将该当前帧图像的当前宏块的各像素点的像素值与前一帧图像一个宏块对应像素点的像素值,做绝对误差和运算;遍历前一帧图像的所有宏块,确定最小的该绝对误差和为该最小代价值。在本申请的一个设计中,该当前帧图像为非首帧图像,且在读取该当前帧图像之前包括:读取首帧图像的相应宏块,设置该首帧图像的相应宏块属于遮挡区域或者非遮挡区域,且使用第三量化参数对该首帧图像中的相应宏块进行编码,并且该第三量化参数小于该第一量化参数。另一方面,本申请实施例提供了一种图像编码装置,包括:读取模块,用于读取当前帧图像的当前宏块;遮挡确定模块,用于确定该当前帧图像的当前宏块是否属于遮挡区域;宏块编码模块,用于如果该当前帧图像的当前宏块属于非遮挡区域,并且该当前帧图像的前一帧图像的相应宏块属于遮挡区域,则使用第一量化参数对该当前帧图像的当前宏块进行编码;否则,使用第二量化参数对该当前帧图像的当前宏块进行编码;其中,该第一量化参数小于该第二量化参数。又一方面,本申请实施例提供了一种图像编码方法,包括:读取当前帧图像的当前宏块;确定该当前宏块是否属于遮挡区域;如果该当前宏块属于遮挡区域,则使用第一量化参数对该当前宏块进行编码;如果该当前宏块属于非遮挡区域,则使用第二量化参数对该当前宏块进行编码;其中,该第一量化参数小于该第二量化参数。本申请实施例通过对属于遮挡区域的宏块使用较小的量化参数,对属于非遮挡区域的宏块使用较大的量化参数,解决了运动拖尾的问题,提高了图像质量,只是需要增加较大的码率。在本申请的一个设计中,该确定该当前宏块是否属于遮挡区域,包括:通过运动估计搜索算法,得到最小代价值;在该最小代价值小于等于第一阈值情况下,确定该当前宏块属于遮挡区域;在该最小代价值大于等于第二阈值情况下,确定该当前宏块属于非遮挡区域;其中,该第一阈值小于该第二阈值。在本申请的一个设计中,该通过运动估计搜索算法,得到最小代价值,具体为:将该当前帧图像的当前宏块的各像素点的像素值与前一帧图像一个宏块对应像素点的各像素值,做绝对误差和运算;遍历前一帧图像的所有宏块,确定最小的该绝对误差和为该最小代价值。再一方面,本申请实施例提供了一种图像编码装置,包括:读取模块,用于读取当前帧图像的当前宏块;遮挡确定模块,用于确定该当前宏块是否属于遮挡区域;宏块编码模块,用于如果该当前宏块属于遮挡区域,则使用第一量化参数对该当前宏块进行编码;如果该当前宏块属于非遮挡区域,则使用第二量化参数对该当前宏块进行编码;其中,该第一量化参数小于该第二量化参数。本申请通过确定视频图像的遮挡区域,并根据图像中各宏块是否为遮挡区域,动态地为各宏块分配量化参数,再根据该不同的量化参数对相应宏块进行编码。由于本申请是动态分配量化参数,因此本申请在增加较小码率的基础上,极大地改善了图像质量,解决了视频图像中运动拖尾的问题。附图说明图1为本申请一个实施例提供的图像编码方法流程图;图2为本申请另一个实施例提供的图像编码方法流程图;图3为本申请一个实施例提供的图像编码装置框图;图4为本申请另一个实施例提供的图像编码装置框图。具体实施方式下面通过附图和实施例,对本申请的技术方案做进一步的详细描述。本申请通过确定视频图像中的各宏块是否属于遮挡区域,进而动态地调整各宏块的量化参数值,根据不同的量化参数值对相应宏块进行编码。因此,本申请提高了视频图像质量,解决了运动拖尾的问题,且码流增加幅度很小。本申请适用于所有视频编码协议,例如HEVC(High E本文档来自技高网
...

【技术保护点】
一种图像编码方法,其特征在于,包括:读取当前帧图像的当前宏块,确定所述当前帧图像的当前宏块是否属于遮挡区域;如果所述当前帧图像的当前宏块属于非遮挡区域,并且所述当前帧图像的前一帧图像的相应宏块属于遮挡区域,则使用第一量化参数对所述当前帧图像的当前宏块进行编码;否则,使用第二量化参数对所述当前帧图像的当前宏块进行编码;其中,所述第一量化参数小于所述第二量化参数。

【技术特征摘要】
1.一种图像编码方法,其特征在于,包括:读取当前帧图像的当前宏块,确定所述当前帧图像的当前宏块是否属于遮挡区域;如果所述当前帧图像的当前宏块属于非遮挡区域,并且所述当前帧图像的前一帧图像的相应宏块属于遮挡区域,则使用第一量化参数对所述当前帧图像的当前宏块进行编码;否则,使用第二量化参数对所述当前帧图像的当前宏块进行编码;其中,所述第一量化参数小于所述第二量化参数。2.根据权利要求1所述的方法,其特征在于,在所述读取当前帧图像的当前宏块之前,包括:读取所述当前帧图像的前一帧图像的相应宏块,确定所述前一帧图像的相应宏块是否属于遮挡区域;将所述前一帧图像的相应宏块的遮挡标识与所述相应宏块的宏块标识相对应地存储起来,以便根据所述当前帧图像的当前宏块的宏块标识确定所述前一帧图像的相应宏块的遮挡标识。3.根据权利要求1所述的方法,其特征在于,在所述读取当前帧图像的当前宏块之前,包括:顺序读取所述当前帧图像的前一帧图像的各宏块,并按照所述读取顺序,存储所述各宏块的遮挡标识;且所述读取当前帧图像的当前宏块,包括:按照读取所述前一帧图像各宏块的顺序,读取所述当前帧图像的各宏块,以便根据所述顺序,确定所述当前帧图像的前一帧图像的相应宏块的遮挡标识,从而确定所述前一帧图像的相应宏块是否属于遮挡区域。4.根据权利要求1至3任意一项所述的方法,其特征在于,所述确定所述当前帧图像的当前宏块是否属于遮挡区域,包括:通过运动估计搜索算法,得到最小代价值;在所述最小代价值小于等于第一阈值情况下,确定所述当前宏块属于遮挡区域;在所述最小代价值大于等于第二阈值情况下,确定所述当前宏块属于非遮挡区域;其中,所述第一阈值小于所述第二阈值。5.根据权利要求4所述的方法,其特征在于,所述通过运动估计搜索算法,得到最小代价值,具体为:将所述当前帧图像的当前宏块的各像素点的像素值与前一帧图像一个宏块对应像素点的像素值,做绝对误差和运算;遍历前一帧图像的所有宏块,确定最小的所述绝对误差和为所述最小代价值。6.根据权利要求1至5任意一项所述的方法,其特征在于,所述当前帧图像为非首帧图像,且在读取所述当前帧图像之前包括:读取首帧图像的相应宏块,设置所述首帧图像的相应宏块属于遮挡区域或者非遮挡区域,且使用第三量化参数对所述首帧图像中的相应宏块进行编码,并且所述第三量化参数小于所述第一量化参数。7.一种图像编码方法,其特征在于,包括:读取当前帧图像的当前宏块;确定所述当前宏块是否属于遮挡区域;如果所述当前宏块属于遮挡区域,则使用第一量化参数对所述当前宏块进行编码;如果所述当前宏块属于非遮挡区域,则使用第二量化参数对所述当前宏块进行编码;其中,所述第一量化参数小于所述第二量化参数。8.根据权利要求7所述的方法,其特征在于,所述确定所述当前宏块是否属于遮挡区域,包括:通过运动估计...

【专利技术属性】
技术研发人员:吴东昇陈绍林谭义鑫李明
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1