法律状态公告日
法律状态信息
法律状态
2020-03-31
授权
授权
2018-11-02
实质审查的生效 IPC(主分类):H04N19/91 申请日:20180528
实质审查的生效
2018-10-09
公开
公开
技术领域
本发明涉及图像编码和信息处理领域,尤其涉及一种结合位运算和概率预测的二值图像编码方法。
背景技术
随着手持设备的普及和摄像头分辨率的增大,互联网上的图像数据在快速增长着。为了能高效地传输和存储图像,图像编码一直是一个热门的研究领域。传统的图像编码包括预测、变换、量化和熵编码,其中第一步预测能大大降低表示图像内容需要的数据量。预测利用了图像的空间相关性,将当前像素表示成它领域内已编码像素的函数,例如简单的线性插值。之后,真实值与预测值相减得到残差,残差被变换到频域的一组系数。这些系数被量化、离散后,由一种熵编码算法编码成比特流。
在传统编码框架中,编码器考虑到复杂度,不能缓存太多的已编码像素用于预测,所以预测的能力受到限制。随着深度学习在计算机视觉方面取得瞩目的成就,目前已经有很多工作用神经网络代替传统编码框架中的预测模块。其中,循环神经网络能实现用所有已编码像素预测当前像素的值,大大加强了预测的能力和灵活性。
基于上下文的二进制算术编码(CABAC)是目前最好的二值编码算法之一,包含预测和算术编码两个部分。在CABAC中,编码器在编码每个像素前会根据上下文概率模型给出预测值,然后预测值和真实值一同被用来更新算术编码的编码区间,每个像素在被编码后还会被用来更新编码器的上下文概率模型。然而,传统CABAC算法的编码复杂度较高。
发明内容
本发明的目的是提供一种结合位运算和概率预测的二值图像编码方法,极大的降低了编码流程的复杂度。
本发明的目的是通过以下技术方案实现的:
一种结合位运算和概率预测的二值图像编码方法,其特征在于,包括:
编码过程:基于二值图像中已编码像素预测当前像素的值;将当前像素的预测值与真实值进行位运算获得残差,并得到预测准确率;利用熵编码算法将残差编码成比特流,若采用熵编码算法中的二进制算术编码算法,则将预测准确率作为二进制算术编码算法的全局上下文概率模型,使用固定的编码区间;
解码过程即为编码过程的逆过程。
由上述本发明提供的技术方案可以看出,通过使用简单的位运算(同或或异或运算)以及将预测准确率作为全局上下文概率模型,避免算术编码过程中编码区间的频繁更新,与传统CABAC算法相比,极大的降低了编码流程的复杂度。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的编码过程的示意图;
图2为本发明实施例提供的解码过程的示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
本发明实施例提供一种结合位运算和概率预测的二值图像编码方法,主要包括编码与解码两个过程。
如图1所示,编码过程步骤如下:
1、基于二值图像中已编码像素预测当前像素的值。
本发明实施例中,所述二值图像由灰度图像阈值化生成,或是比特平面分解后的某一位比特图,或者其他方法生成的二值特征图。
本步骤中,基于已编码的历史像素预测当前像素的值,即获得当前像素的预测值。传统图像编码框架中对当前像素的预测使用了领域内已编码像素的线性或非线性组合;神经网络实现的预测器能利用更多的已编码像素,自适应学习像素间的依赖关系。
2、将当前像素的预测值与真实值进行位运算获得残差,并得到预测准确率。
本步骤中,所述位运算包括:同或运算,或者异或运算;将预测值与真实值做简单的同或运算,或者异或运算,得到残差图,同时得到预测准确率。图1所示的示例中使用了同或运算。
3、利用熵编码算法将残差编码成比特流,若采用熵编码算法中的二进制算术编码算法,则将预测准确率作为二进制算术编码算法的全局上下文概率模型,使用固定的编码区间。
由于像素间的主要依赖关系由第1步的预测捕获,所以若希望降低复杂度,则用上下文无关的熵编码算法对残差图编码;若希望提高压缩率,则用上下文相关的熵编码算法对残差图编码。其中,若采用熵编码算法中的二进制算术编码算法,由于预测准确率能体现残差图中0和1的分布,所以将预测准确率作为二进制算术编码算法的全局上下文概率模型,因而采用二进制算术编码算法中的上下文无关二进制算术编码算法,而且使用固定的编码区间。与CABAC相比,本发明提出的方案极大降低编码流程的复杂度。
本领域技术人员可以理解,算术编码算法是熵编码算法的一种,包括上下文相关的算术编码算法和上下文无关的算术编码算法。上下文相关的算术编码算法动态更新上下文概率模型,是上下文相关的熵编码算法的一种,CABAC中使用的就是上下文相关的算术编码算法。上下文无关的算术编码算法使用固定的编码区间和全局上下文概率模型,是上下文无关的熵编码算法的一种。
如图2所示,为解码过程的示意图。解码过程也即编码过程的逆过程,具体流程为:通过熵编码算法对编码过程输出的比特流进行解码,获得相应的残差,再结合基于已编码像素的预测值确定当前像素的真实值。同样的,图2所示的示例中使用了同或运算。
本发明实施例上述方案与传统CABAC算法相比,将预测值与真实值进行同或或异或运算获得残差;将预测准确率作为二进制算术编码算法的全局上下文概率模型,从而使用固定的编码区间,避免了算术编码过程中编码区间的频繁更新,极大的降低了编码流程的复杂度。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
机译: 结合图像的帧间预测视频编码的方法和装置,结合图像的视频层间预测的编码方法,装置
机译: 结合图像的帧间预测视频编码的方法和装置,结合图像的视频层间预测的编码方法,装置
机译: 结合图像的帧间预测视频编码的方法和装置,结合图像的视频层间预测的编码方法,装置