一种图像压缩与解压缩的方法及装置制造方法及图纸

技术编号:21839218 阅读:25 留言:0更新日期:2019-08-10 20:37
本发明专利技术实施例公开了一种图像压缩与解压缩方法及装置,该方法包括:获取目标图像中的至少一个图像对,每个图像对均包含所述目标图像中任意相邻的两帧图像;确定所述至少一个图像对中的两帧图像间的像素差异数据,对该像素差异数据进行排序,将排序后的像素差异数据确定为所述目标图像中的压缩帧图像对应的压缩数据;所述压缩帧图像为所述目标图像中除了首帧图像之外的帧图像;将所述多帧图像中首帧图像和所述压缩数据合成为所述目标图像对应的压缩图像。该方法还包括对生成的压缩图像通过获取像素差异数据进行解压。采用本发明专利技术,可以减少图像大小的同时保证图像本身的展示效果,有效实现了图像的无损压缩,并减少图像在应用中的网络传输消耗。

A Method and Device for Image Compression and Decompression

【技术实现步骤摘要】
一种图像压缩与解压缩的方法及装置
本专利技术涉及计算机
,尤其涉及一种图像压缩与解压缩的方法及装置。
技术介绍
随着互联网的急速发展,人们的娱乐、学习、工作等都离不开互联网,因此出现了越来越多的网站或应用等,以满足人们各方面的需求。正因为网站或应用等的增多,在同一领域一般都不止一个互联网产品,而使用该领域的互联网产品的人数一般不会变化特别大,对于这些互联网产品就需要从功能及视觉等方面进行优化以增强用户粘性,从而提高流量。从研究表明,人们一般对图像、视频等的记忆或印象更为深刻,也就使得更多的互联网产品会更加注重自己的页面展示效果,但是由于图像或视频等的显示效果越好,自身的存储体积就越大,所需要的传输耗时就越长,尤其是拥有多帧图像的动态图,因此如何实现在尽可能小的影响图像的显示效果的同时减小图像的存储体积成为一个极其重要的问题。如今,大多数的图像都是通过减少图像的帧数,去除图像中的不必要特征点,以达到减小图像的存储体积,或者使用有损压缩算法对图像进行压缩,采用有损压缩的方式存储图片,如webp格式,以达到减少图像的存储体积,虽然去除的是不必要的特征点,但还是在一定程度上破坏了原始图像的数据,从而可能会导致图像在展示时出现动画不流畅或者图像锯齿化等问题。
技术实现思路
基于此,本申请提供了一种图像压缩与解压缩的方法及装置,以期提高对动态图像无损压缩的效果。本专利技术实施例第一方面提供了一种图像压缩方法,其特征在于,包括:获取目标图像中的至少一个图像对,所述目标图像包括多个帧图像,每个图像对均包含所述目标图像中任意相邻的两帧图像;确定所述至少一个图像对中的两帧图像间的像素差异数据,将所述像素差异数据确定为所述目标图像中的压缩帧图像对应的压缩数据;所述压缩帧图像为所述目标图像中除了首帧图像之外的帧图像;将所述多帧图像中首帧图像和所述压缩数据合成为所述目标图像对应的压缩图像。其中,所述确定所述至少一个图像对中的两帧图像间的像素差异数据,将所述像素差异数据确定为所述目标图像中的压缩帧图像对应的压缩数据,包括:获取所述至少一个图像对中的图像对Ti,所述图像对Ti包括帧图像Si和帧图像Si+1;i为正整数,且i小于或等于m-1,所述m为所述目标图像中的帧图像的数量;确定所述帧图像Si和帧图像Si+1每个像素点间的像素差异数据,所述像素差异数据为帧图像Si+1中不同于所述帧图像Si的像素点的色值信息;所述帧图像Si+1属于所述压缩帧图像;将所述像素差异数据确定为所述帧图像Si+1对应的压缩数据,直至确定出图像对Tm-1中的帧图像Sm对应的压缩数据。其中,确定所述帧图像Si和帧图像Si+1每个像素点间的像素差异数据,包括:对比所述帧图像Si和帧图像Si+1中相同位置信息下的像素点的色值信息;当存在像素点的色值信息不同时,将所述色值信息不同的像素点确定为差异像素点,根据帧图像Si+1中所述差异像素点的色值信息确定所述帧图像Si和帧图像Si+1间的像素差异数据。其中,帧图像Si和帧图像Si+1间的差异像素点的数量与帧图像Si和帧图像Si+1间的像素差异数据的数量相同,可以认为每个差异像素点对应一个像素差异数据。其中,所述根据帧图像Si+1中所述差异像素点的色值信息确定所述帧图像Si和帧图像Si+1间的像素差异数据,包括:获取所述帧图像Si+1中所述差异像素点的色值信息及位置信息;将所述位置信息的数据格式转换成所述色值信息的数据格式,将格式转换后的位置信息和所述色值信息确定为所述帧图像Si和帧图像Si+1间的像素差异数据。其中,所述将所述像素差异数据确定为所述帧图像Si+1对应的压缩数据,包括:基于像素差异数据间的差异值,对所述帧图像Si和帧图像Si+1间的多个像素差异数据进行排序;将排序后的像素差异数据确定为所述帧图像Si+1对应的压缩数据。其中,所述基于像素差异数据间的差异值,对所述帧图像Si和帧图像Si+1间的多个像素差异数据进行排序,包括:获取所述图像对Ti对应的像素差异数据排序队列;获取所述像素差异数据排序队列中第j个像素差异数据与未排序的像素差异数据间的差异值,将与所述第j个像素差异数据的差异值小于第一差异阈值的p个像素差异数据,依次沿所述第j个像素差异数据进行排序,将已排序的像素差异数据和更新后未排序的像素差异数据进行拼接,得到更新后的像素差异数据排序队列;p为0或正整数,且p小于所述像素差异数据的数量;在所述更新后的像素差异数据排序队列中获取第p+j个像素差异数据;将所述更新后未排序的像素差异数据中与所述第p+j个像素差异数据的差异值小于所述第一差异阈值的k个像素差异数据,依次沿所述第p+j个像素差异数据进行排序,直至所述帧图像Si和帧图像Si+1间不存在未排序的像素差异数据。其中,所述将所述像素差异数据确定为所述帧图像Si+1对应的压缩数据,包括:确定第一遍历窗口的长度与第二遍历窗口的长度,所述第一遍历窗口与所述第二遍历窗口间存在分隔符,所述第一遍历窗口与所述第二遍历窗口相邻;将所述分隔符置于所述像素差异数据的首位字符,确定所述像素差异数据中所述第一遍历窗口与所述第二遍历窗口中相同字符的最大匹配长度,根据所述最大匹配长度的相同字符生成第一个压缩节点;移动所述分隔符L位字符,生成下一个压缩节点,直至所述第一遍历窗口与所述第二遍历窗口间的所述分隔符位于所述像素差异数据的末尾字符,其中L是基于所述最大匹配长度所确定的;根据所述压缩节点以及所述像素差异数据中不属于所述压缩节点的字符,生成所述帧图像Si+1对应的压缩数据。本专利技术实施例第二方面提供了一种图像解压缩方法,其特征在于,包括:获取压缩图像中的首帧图像和压缩数据,所述首帧图像为目标图像中的首帧图像,所述压缩数据为所述目标图像中的压缩帧图像对应的压缩数据,所述压缩帧图像为所述目标图像中除了首帧图像之外的帧图像;根据所述压缩数据确定像素差异数据,所述目标图像包括至少一个图像对,所述图像对包括目标图像中任意相邻的两帧图像,所述像素差异数据为所述相邻的两帧图像间的差异;根据所述像素差异数据及所述首帧图像绘制目标图像。其中,所述根据所述压缩数据确定像素差异数据,包括:获取第一遍历窗口的长度与第二遍历窗口的长度,所述第一遍历窗口与所述第二遍历窗口间存在分隔符,所述第一遍历窗口与所述第二遍历窗口相邻;将所述分隔符处于所述压缩数据的首位字符,滑动所述第一遍历窗口与所述第二遍历窗口,遍历所述压缩数据中的每一个字符;若所述字符为压缩节点,则将所述压缩节点还原为数据还原节点;根据所述数据还原节点及所述压缩数据中不属于所述压缩节点的字符,确定所述像素差异数据。其中,所述根据所述像素差异数据及所述首帧图像绘制目标图像,包括:绘制所述首帧图像;根据图像对Ti中帧图像Si和帧图像Si+1间的像素差异数据及所述帧图像Si绘制所述帧图像Si+1,直至确定帧图像Sm;m为所述目标图像包括的多个帧图像的数量,i为正整数,且i小于m;根据绘制后的所有帧图像,生成所述目标图像。其中,所述根据图像对Ti中帧图像Si和帧图像Si+1间的像素差异数据及所述帧图像Si绘制所述帧图像Si+1,包括:获取所述图像对Ti中像素差异数据的位置信息及色值信息,确定所述帧图像Si+1中的差异像素点,所述差异像素点为所本文档来自技高网...

【技术保护点】
1.一种图像压缩方法,其特征在于,包括:获取目标图像中的至少一个图像对,所述目标图像包括多个帧图像,每个图像对均包含所述目标图像中任意相邻的两帧图像;确定所述至少一个图像对中的两帧图像间的像素差异数据;基于像素差异数据间的差异值,对所述两帧图像间的多个像素差异数据进行排序;将排序后的像素差异数据确定为所述目标图像中的压缩帧图像对应的压缩数据;所述压缩帧图像为所述目标图像中除了首帧图像之外的帧图像;将所述目标图像中首帧图像和所述压缩数据合成为所述目标图像对应的压缩图像。

【技术特征摘要】
1.一种图像压缩方法,其特征在于,包括:获取目标图像中的至少一个图像对,所述目标图像包括多个帧图像,每个图像对均包含所述目标图像中任意相邻的两帧图像;确定所述至少一个图像对中的两帧图像间的像素差异数据;基于像素差异数据间的差异值,对所述两帧图像间的多个像素差异数据进行排序;将排序后的像素差异数据确定为所述目标图像中的压缩帧图像对应的压缩数据;所述压缩帧图像为所述目标图像中除了首帧图像之外的帧图像;将所述目标图像中首帧图像和所述压缩数据合成为所述目标图像对应的压缩图像。2.如权利要求1所述的方法,其特征在于,所述确定所述至少一个图像对中的两帧图像间的像素差异数据,将所述像素差异数据确定为所述目标图像中的压缩帧图像对应的压缩数据,包括:获取所述至少一个图像对中的图像对Ti,所述图像对Ti包括帧图像Si和帧图像Si+1;i为正整数,且i小于或等于m-1,所述m为所述目标图像中的帧图像的数量;确定所述帧图像Si和帧图像Si+1每个像素点间的像素差异数据,所述像素差异数据为帧图像Si+1中不同于所述帧图像Si的像素点的色值信息;所述帧图像Si+1属于所述压缩帧图像;基于像素差异数据间的差异值,对所述帧图像Si和帧图像Si+1间的多个像素差异数据进行排序;将排序后的像素差异数据确定为所述帧图像Si+1对应的压缩数据,直至确定出图像对Tm-1中的帧图像Sm对应的压缩数据。3.如权利要求2所述的方法,其特征在于,所述确定所述帧图像Si和帧图像Si+1每个像素点间的像素差异数据,包括:对比所述帧图像Si和帧图像Si+1中相同位置信息下的像素点的色值信息;当存在像素点的色值信息不同时,将所述色值信息不同的像素点确定为差异像素点,根据帧图像Si+1中所述差异像素点的色值信息确定所述帧图像Si和帧图像Si+1间的像素差异数据。4.如权利要求3所述的方法,其特征在于,所述根据帧图像Si+1中所述差异像素点的色值信息确定所述帧图像Si和帧图像Si+1间的像素差异数据,包括:获取所述帧图像Si+1中所述差异像素点的色值信息及位置信息;将所述位置信息的数据格式转换成所述色值信息的数据格式,将格式转换后的位置信息和所述色值信息确定为所述帧图像Si和帧图像Si+1间的像素差异数据。5.如权利要求2所述的方法,其特征在于,所述基于像素差异数据间的差异值,对所述帧图像Si和帧图像Si+1间的多个像素差异数据进行排序,包括:获取所述图像对Ti对应的像素差异数据排序队列;获取所述像素差异数据排序队列中第j个像素差异数据与未排序的像素差异数据间的差异值,将与所述第j个像素差异数据的差异值小于第一差异阈值的p个像素差异数据,依次沿所述第j个像素差异数据进行排序,将已排序的像素差异数据和更新后未排序的像素差异数据进行拼接,得到更新后的像素差异数据排序队列;p为0或正整数,且p小于所述像素差异数据的数量;在所述更新后的像素差异数据排序队列中获取第p+j个像素差异数据;将所述更新后未排序的像素差异数据中与所述第p+j个像素差异数据的差异值小于所述第一差异阈值的k个像素差异数据,依次沿所述第p+j个像素差异数据进行排序,直至所述帧图像Si和帧图像Si+1间不存在未排序的像素差异数据。6.如权利要求2所述的方法,其特征在于,所述将排序后的像素差异数据确定为所述帧图像Si+1对应的压缩数据,包括:确定第一遍历窗口的长度与第二遍历窗口的长度,所述第一遍历窗口与所述第二遍历窗口间存在分隔符,所述第一遍历窗口与所述第二遍历窗口相邻;将所述分隔符置于所述像素差异数据的首位字符,确定所述像素差异数据中所述第一遍历窗口与所述第二遍历窗口中相同字符的最大匹配长度,根据所述最大匹配长度的相同字符生成第一个压缩节点;移动所述分隔符L位字符,生成下一个压缩节点,直至所述第一遍历窗口与所述第二遍历窗口间的所述分隔符位于所述像素差异数据的末尾字符,其中L是基于所述最大匹配长度所确定的;根据所述压缩节点以及所述像素差异数据中不...

【专利技术属性】
技术研发人员:康铭海
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1