缩略图生成方法、装置及终端设备与流程

文档序号:11254343
缩略图生成方法、装置及终端设备与流程

本发明实施例涉及图像处理技术,尤其涉及缩略图的生成方法、装置及终端设备。



背景技术:

缩略图服务作为互联网的一项基础服务,在网站中有大量应用,其中以块压缩实现的图像格式的图像作为当前图像工业标准,例如JPEG格式的图像。

现有的缩略图的生成方法中,首先将图像整体解码,得到解码图像,然后再对解码图像按目标缩略图尺寸进行采样,得到缩略图像,最后对缩略图像进行编码生成目标缩略图。对分辨率较高的图像,在经过完全解码之后得到的解码图像,会占用高达GB级别的内存空间,这样会导致内存空间的极大消耗,如果内存不够,还会采用硬盘临时文件缓存,又因为中间文件清理困难,所以容易造成硬盘写满的情况,同时使得缩略图的生成效率降低。



技术实现要素:

本发明实施例提供一种缩略图生成方法、装置及终端设备,避免了因解码图像占用内存过大的问题,并提高了缩略图的生成效率。

第一方面,本发明实施例提供了一种缩略图生成方法,该方法包括:

确定待缩略图像的尺寸和目标缩略图的尺寸,其中所述待缩略图像为分块压缩图像;

根据所述待缩略图像的尺寸和所述目标缩略图的尺寸,确定解码采样参数;

根据所述解码采样参数对所述待缩略图像进行采样解码,生成解码图像;

依据所述解码图像的尺寸和所述目标缩略图的尺寸,生成目标缩略图。

第二方面,本发明实施例还提供了一种缩略图生成装置,该装置包括:

尺寸确定模块,用于确定待缩略图像的尺寸和目标缩略图的尺寸,其中所述待缩略图像为分块压缩图像;

解码采样参数确定模块,用于根据所述待缩略图像的尺寸和所述目标缩略图的尺寸,确定解码采样参数;

解码图像生成模块,用于根据所述解码采样参数对所述待缩略图像进行采样解码,生成解码图像;

目的缩略图生成模块,用于依据所述解码图像的尺寸和所述目标缩略图的尺寸,生成目标缩略图。

第三方面,本发明实施例还提供了一种终端设备,包括本发明任意实施例提供的缩略图生成装置。

本发明实施例提供的技术方案,通过根据待缩略图像和目标缩略图的尺寸,获得解码采样参数,将解码采样参数用于采样解码过程中,降低了解码图像的尺寸,解决了完全解码后解码图像占用内存过大的问题,并提高了缩略图的生成效率。

附图说明

图1是本发明实施例一提供的一种缩略图生成方法的流程图;

图2是本发明实施例二提供的一种缩略图生成方法的流程图;

图3是现有技术中缩略图生成方法的过程示意图;

图4是本发明实施例二提供的一种缩略图生成方法的过程示意图;

图5是本发明实施例三提供的一种缩略图生成装置的结构示意图;

图6是本发明实施例三提供的一种终端设备的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1是本发明实施例一提供的一种缩略图生成方法的流程图。本实施例可适用于生成缩略图的情况。该方法可以由缩略图生成装置来执行,该装置可以由硬件和/或软件的方式实现。参见图1,本实施例提供的缩略图生成方法具体包括如下:

S110、确定待缩略图像的尺寸和目标缩略图的尺寸,其中所述待缩略图像为分块压缩图像。

其中,分块压缩图像指的是对图像中的固定尺寸的各个图像块进行压缩编码得到的图像,待缩略图像的尺寸可以通过从待缩略图像的头文件信息中读取得到,目标缩略图的尺寸可以从用户输入的目标缩略图尺寸参数中获取。

S120、根据所述待缩略图像的尺寸和所述目标缩略图的尺寸,确定解码采样参数。

其中,解码采样参数为待缩略图像在解码过程中使用的采样参数值。为了降低待缩略图像在经过采样解码之后的内存占用量,解码采样参数不小于1。例如,若待缩略图像的尺寸大于目标缩略图的尺寸,可以从预设块数值中选择解码采样参数;若待缩略图像的尺寸小于或等于目标缩略图的尺寸,可以确定采样参数值为1,或不进行采样。

S130、根据所述解码采样参数对所述待缩略图像进行采样解码,生成解码图像。

其中,采样解码为在对缩略图像按照编码规则的逆操作过程中,加入采样操作的过程。解码图像为缩略图像经过采样解码后得到的图像。

采样解码的过程可以是:对所述待缩略图像中的多个颜色分量单元进行熵解码,得到第一解码图像;对所述第一解码图像进行反量化,得到第二解码图像;对所述第二解码图像进行离散余弦逆变换,得到第三解码图像;依据所述解码采样参数对所述第三解码图像进行采样,生成第一采样矩阵;若将待缩略图像中的全部颜色分量单元进行采样解码,则根据全部颜色分量单元经过采样解码得到的第一采样矩阵,生成完整的解码图像。

其中,第一解码图像是将待缩略图像中的颜色分量单元经过熵解码得到的图像;第二解码图像是第一解码图像经过反量化得到的图像;第三解码图像是第二解码图像经过离散余弦逆变换得到的图像;第一采样矩阵为第三解码图像经过采样算法的计算得到的图像;解码图像指的是,将待缩略图像中全部颜色分量单元经过采样解码得到的第一采样矩阵,整合生成的图像。采样算法可以是任意实现采样的方法,例如可以是取多个像素的均值代替多个像素,以实现采样。

采样解码的过程也可以是:对所述待缩略图像中的多个颜色分量单元进行熵解码,得到第四解码图像;对所述第四解码图像进行反量化,得到第五解码图像;依据所述解码采样参数对所述第五解码图像进行采样,得到第二采样矩阵;对所述第二采样矩阵进行离散余弦逆变换,生成第六解码矩阵;若将待缩略图像中的全部颜色分量单元进行解码和采样,则根据全部颜色分量单元经过解码和采样得到的第六解码矩阵,生成完整的解码图像。

其中,第四解码图像为待缩略图像中的颜色分量单元经过熵解码得到的图像;第五解码图像是第四解码图像经过反量化得到的图像;第二采样矩阵是第五解码图像经过采样算法的计算得到的图像;第六解码图像是第二采样矩阵经过离散余弦逆变换得到的图像。在离散余弦逆变换之前对第五解码图象进行采样,使得需要进行离散余弦逆变换的第六解码图像的像素点数降低,提高了图像的离散余弦逆变换的效率,因而提高了缩略图的生成效率。

S140、依据所述解码图像的尺寸和所述目标缩略图的尺寸,生成目标缩略图。

为了依据解码图像生成目标缩略图像,依据所述解码图像的尺寸和所述目标缩略图的尺寸,生成目标缩略图,具体可以包括:若所述解码图像的尺寸和所述目标缩略图的尺寸相等,则对所述解码图像进行编码以生成目标缩略图;否则,依据所述解码图像的尺寸和所述目标缩略的尺寸,得到缩略参数,并依据所述缩略参数对所述解码图像进行采样和编码以生成目标缩略图。

其中,生成目标缩略图时的采样过程与上述生成解码图像时的采用过程类似,也可以通过采样算法实现采样过程,编码指的是依据解码图像生成分块压缩图像的过程。

本实施例通过利用待缩略图像和目标缩略图的尺寸,获得解码采样参数,将解码采样参数用于采样解码过程中,降低了解码图像的尺寸,解决了完全解码后解码图像占用内存过大的问题,并提高了缩略图的生成效率。

实施例二

本实施例在上述实施例一的基础上具体提供了一种缩略图生成方法。图2是本发明实施例二提供的一种缩略图生成方法的流程图。参见图2,本实施例提供的缩略图生成方法具体包括如下:

S210、确定待缩略图像的尺寸和目标缩略图的尺寸。

在本实施例中,以待缩略图像为JPEG编码格式图像为例。图3是本发明实施例二提供的一种缩略图生成方法的过程示意图。参见图3,获取目标缩略图的尺寸160*90像素,并通过读取待缩略图像的文件头信息获取待缩略图像的尺寸3840*2160像素。

S220、将所述待缩略图像的尺寸除以预设块数值,得到当前采样参数。

S230、若所述当前采样参数大于或等于目标缩略图的尺寸,则将所述预设块数值作为解码采样参数;否则,对所述预设块数值进行降值处理,并利用经过降值处理后的预设块数值执行所述将所述待缩略图像的尺寸除以预设块数值的操作,直至确定出解码采用参数。

其中,第一次除操作所采用的预设块数值的初始值可以为待缩略图像中的颜色分量单元的尺寸,颜色分量单元是图像中表示颜色分量的数据单元,例如图像为YUV格式,颜色分量单元可以是图像中表示Y分量的数据单元。如果Y分量的数据单元为8*8的矩阵,则第一除操作所采用的预设块数值为8。

进一步的,各次除操作所采用的预设块数值可以为2的幂次方,具体的,预设块数值可以是8、4或2。

例如,当第一次除操作所采用的预设块数值为8,待缩略图像的宽或高除以8,若得到的商大于或等于目标缩略图的宽或高,则将8作为解码采样参数;若得到的商小于目标缩略图的宽或高,则将4作为预设块数值,待缩略图像的宽或高除以预设块数值,若得到的商大于或等于目标缩略图的宽或高,则将4作为解码采样参数;若得到的商小于目标缩略图的宽或高,则将2作为预设块数值,待缩略图像的宽或高除以预设块数值,若得到的商大于或等于目标缩略图的宽或高,则将2作为解码采样参数;若得到的商小于目标缩略图的宽或高,则将1作为解码采样参数,或不进行采样操作。

参考图3,将所述待缩略图像的尺寸宽3840像素除以预设块数值8,得到当前采样参数为480;所述当前采样参数480大于目标缩略图的宽160像素,则将所述预设块数值8作为解码采样参数。

S240、根据所述解码采样参数对所述待缩略图像进行采样解码,生成解码图像。

优选的,对所述待缩略图像中的多个颜色分量单元进行熵解码、反量化,然后,对得到图像利用解码采样参数进行采样,得到第二采样矩阵;对所述第二采样矩阵进行离散余弦逆变换,生成第六解码矩阵;根据全部颜色分量单元经过解码和采样得到的第六解码矩阵,生成完整的解码图像,其中解码图像的尺寸为480*270像素。通过对反量化后得到的图像先进行采样,再进行离散余弦逆变换,以提高图像离散余弦逆变换的效率,从而提高缩略图的生成效率。

S250、依据所述解码图像的尺寸和所述目标缩略图的尺寸,生成目标缩略图。

为生成目标缩略图像,首先比较所述解码图像的尺寸和所述目标缩略图的尺寸,其中,目标缩略图的尺寸为160*90像素。因为所述解码图像的尺寸大于所述目标缩略图的尺寸,所以对所述解码图像再次进行采样,采样参数为解码图像与目标缩略图的尺寸中宽度的比值,经计算解码图像与目标缩略图的尺寸中宽度的比值为3。利用采样参数对解码图像进行采样,最后将采样后的解码图像编码生成JPEG编码格式的目标缩略图。

图4是现有技术中缩略图生成方法的过程示意图。参见图4,尺寸为3840*2160像素的JPEG编码格式的待缩略图像经过解码之后生成3840*2160像素的解码图像,其中每个颜色分量单元为8*8的矩阵,每个8*8的矩阵所占用内存的比特数为64*8。参见图3,本实施例的解码图像中每个颜色分量单元为1*1的矩阵,每个1*1的矩阵所占用的内存的比特数为1*8。通过比较可知,本实施例的解码图像的内存占用量远远小于现有技术中的解码图像的内存占用量。

本实施例通过根据编码格式为JPEG格式的待缩略图像和目标缩略图的尺寸,获得解码采样参数,将解码采样参数用于采样解码过程中,降低了解码图像的内存占用量,并提高了缩略图的生成效率。

实施例三

图5是本发明实施例三提供的一种缩略图生成装置的结构示意图。该所述装置可以适用于生成缩略图像的情况。参见图5,本实施例提供的缩略图生成 装置01具体包括尺寸确定模块10、解码采样参数确定模块20、解码图像生成模块30和目的缩略图生成模块40。

其中,尺寸确定模块10可以用于确定待缩略图像的尺寸和目标缩略图的尺寸,其中所述待缩略图像为分块压缩图像;解码采样参数确定模块20可以用于根据所述待缩略图像的尺寸和所述目标缩略图的尺寸,确定解码采样参数;解码图像生成模块30可以用于根据所述解码采样参数对所述待缩略图像进行采样解码,生成解码图像;目的缩略图生成模块40可以用于依据所述解码图像的尺寸和所述目标缩略图的尺寸,生成目标缩略图。

进一步的,所述解码采样参数确定模块20,可以包括:采样参数计算单元、采样参数确定单元和预设块数据确定单元。其中,采样参数计算单元可以用于将所述待缩略图像的尺寸除以预设块数值,得到当前采样参数;采样参数确定单元可以用于若所述当前采样参数大于或等于目标缩略图的尺寸,则将所述预设块数值作为解码采样参数;预设块数据确定单元可以用于在所述当前采样参数小于目标缩略图的尺寸时,对所述预设块数值进行降值处理,以及在所述当前采样参数小于目标缩略图的尺寸时,所述采样参数计算单元利用所述预设块数据确定单元所确定的预设块数值计算当前采用参数,直至所述采样参数确定单元确定出解码采样参数。具体的,所述预设块数值的初始值可以为待缩略图像中的颜色分量单元的尺寸。

可选的,所述解码图像生成模块30,可以包括:第一解码单元、第二解码单元、第三解码单元、第一采样单元和第一解码图像单元。

其中,第一解码单元可以用于对所述待缩略图像中的多个颜色分量单元进行熵解码,得到第一解码图像;第二解码单元可以用于对所述第一解码图像进 行反量化,得到第二解码图像;第三解码单元可以用于对所述第二解码图像进行离散余弦逆变换,得到第三解码图像;第一采样单元可以用于依据所述解码采样参数对所述第三解码图像进行采样,生成第一采样矩阵;第一解码图像单元可以用于若将待缩略图像中的全部颜色分量单元进行采样解码,则根据全部颜色分量单元经过采样解码得到的第一采样矩阵,生成完整的解码图像。

优选的,所述解码图像生成模块30,可以包括:第四解码单元、第五解码单元、第二采样单元、第六解码单元和第二解码图像单元。

其中,第四解码单元,用于对所述待缩略图像中的多个颜色分量单元进行熵解码得到第四解码图像;第五解码单元,用于对所述第四解码图像进行反量化得到第五解码图像;第二采样单元,用于依据所述解码采样参数对所述第五解码图像进行采样得到第二采样矩阵;第六解码单元,用于对所述第二采样矩阵进行离散余弦逆变换生成第六解码矩阵;第二解码图像单元,用于若将待缩略图像中的全部颜色分量单元进行解码和采样,则根据全部颜色分量单元经过解码和采样得到的第六解码矩阵,生成完整的解码图像。

进一步的,所述目的缩略图生成模块40可以用于:若所述解码图像的尺寸和所述目标缩略图的尺寸相等,则对所述解码图像进行编码以生成目标缩略图;否则,依据所述解码图像的尺寸和所述目标缩略的尺寸,得到缩略参数,并依据所述缩略参数对所述解码图像进行采样和编码以生成目标缩略图。

本实施例提供的缩略图生成装置,与本发明任意实施例所提供的缩略图的生成方法属于同一发明构思,可执行本发明任意实施例所提供的缩略图的生成方法,具备执行缩略图的生成方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的缩略图的生成方法。

图6是本发明实施例三提供的一种终端设备的结构示意图,如图6所示,本实施例还提供了一种终端设备100,包括上述任意实施例提供的缩略图生成装置01。

上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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