CN105808567B - 降低png图片大小的方法及装置 - Google Patents

降低png图片大小的方法及装置 Download PDF

Info

Publication number
CN105808567B
CN105808567B CN201410844196.2A CN201410844196A CN105808567B CN 105808567 B CN105808567 B CN 105808567B CN 201410844196 A CN201410844196 A CN 201410844196A CN 105808567 B CN105808567 B CN 105808567B
Authority
CN
China
Prior art keywords
png
picture
data block
values
replacing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410844196.2A
Other languages
English (en)
Other versions
CN105808567A (zh
Inventor
王轶晨
陈懿
冯畅
赵辉
杜丽丽
郝立峰
李开河
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aisino Corp
Original Assignee
Aisino Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aisino Corp filed Critical Aisino Corp
Priority to CN201410844196.2A priority Critical patent/CN105808567B/zh
Publication of CN105808567A publication Critical patent/CN105808567A/zh
Application granted granted Critical
Publication of CN105808567B publication Critical patent/CN105808567B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本发明公开一种降低PNG图片大小的方法及装置。上述方法,包括以下步骤:读取待处理的PNG图片;根据PNG格式标准解析读取的PNG图片以获取所有PNG格式所对应的数据块以及每个数据块中的预设参数的值;遍历所述数据块以及每个数据块中预设字段的值,根据PNG规范中参数之间依赖关系替换所述预设参数的值以获取替换后的PNG图片;以及比较所述替换后的PNG图片以及所述待处理的PNG图片的大小并取尺寸较小的PNG图片作为结果图片输出。本发明通过替换掉PNG图片中对于显示没有影响的字段,可以在不降低图像清晰度的前提下降低PNG格式图片的文件大小,从而加快网络加载速度,提升在移动互联网场景下的用户使用体验。

Description

降低PNG图片大小的方法及装置
技术领域
本发明涉及图像处理技术,尤其涉及一种降低PNG图片大小的方法及装置。
背景技术
移动互联网时代,网络的拥堵给人以十分糟糕的体验。如果能将网络上使用频度最高的PNG格式的图像在不影响图像清晰程度的前提下,降低其本身文件的大小,无疑会减少带宽的占用,同时提高响应速度,提高用户体验的满意程度。
发明内容
本发明是在不影响PNG格式的图像的清晰程度的前提下,就降低其本身的大小提供一种方法。
本发明实施例提供一种降低PNG图片大小的方法,包括以下步骤:
读取步骤:读取待处理的PNG图片;
解析步骤:根据PNG格式标准解析读取的PNG图片以获取所有PNG格式所对应的数据块以及每个数据块中的预设参数的值;
替换步骤:遍历所述数据块以及每个数据块中预设字段的值,根据PNG规范中参数之间依赖关系替换所述预设参数的值以获取替换后的PNG图片;以及
输出步骤:比较所述替换后的PNG图片以及所述待处理的PNG图片的大小并取尺寸较小的PNG图片作为结果图片输出。
在一个实施例中,上述的替换步骤包括:清空文本信息tEXt数据块、压缩文本zTXt数据块和国际化文本iTXt数据块内存储的图片标题、作者、说明、原创时间等字段。
在一个实施例中,上述的替换步骤包括:清空时间戳tTIME数据块内记录的图像的最后一次修改时间字段。
在一个实施例中,上述的替换步骤包括:将文件署名域的Filter字段、Interlace字段、以及Compression字段替换为标准值。
在一个实施例中,上述的替换步骤包括:将文件头数据块中的ColorType域替换为合理值并删除无用信息。
本发明实施例还提供一种降低PNG图片大小的装置,包括以下步骤:
读取模块:用于读取待处理的PNG图片;
解析模块:用于根据PNG格式标准解析读取的PNG图片以获取所有PNG格式所对应的数据块以及每个数据块中的预设参数的值;
替换模块:用于遍历所述数据块以及每个数据块中预设字段的值,根据PNG规范中参数之间依赖关系替换所述预设参数的值以获取替换后的PNG图片;以及
输出模块:用于比较所述替换后的PNG图片以及所述待处理的PNG图片的大小并取尺寸较小的PNG图片作为结果图片输出。
在一个实施例中,上述的替换模块用于:清空文本信息tEXt数据块、压缩文本zTXt数据块和国际化文本iTXt数据块内存储的图片标题、作者、说明、原创时间等字段。
在一个实施例中,上述的替换模块用于:清空时间戳tTIME数据块内记录的图像的最后一次修改时间字段。
在一个实施例中,上述的替换模块用于:将文件署名域的Filter字段、Interlace字段、以及Compression字段替换为标准值。
在一个实施例中,上述的替换模块用于:将文件头数据块中的ColorType域替换为合理值并删除无用信息。
本发明的有益效果是:通过替换掉PNG图片中对于显示没有影响的字段,可以在不降低图像清晰度的前提下降低PNG格式图片的文件大小,从而加快网络加载速度,提升在移动互联网场景下的用户使用体验。
附图说明
图1是本发明实施例的一种降低PNG图片大小的方法的步骤流程示意图。
图2是本发明实施例的一种降低PNG图片大小的装置的功能模块图。
附图中各部件的标记如下:210、读取模块;220、解析模块;230、替换模块;240、输出模块;S110,S120,S130,S140、步骤
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图1,本发明实施例提供的一种降低PNG图片大小的方法,其包括以下步骤:
步骤S110、读取步骤:
读取待处理的PNG图片。所述待处理的PNG图片即可以是预先存储在存储器内的图片,也可以是从网络上下载的图片,还可以是直接采用摄像头实时拍摄的图片。
步骤S120、解析步骤:
根据PNG格式标准解析读取的PNG图片以获取所有PNG格式所对应的数据块以及每个数据块中的预设参数的值。
PNG图像格式由PNG文件署名域、四个关键数据块即文件头数据块IHDR、调色板数据块PLTE、图像数据块IDAT和图像结束数据块IEND,以及14个辅助数据块即tRNS,cHRM,gAMA,iCCP,sBIT,sRGB,iTXt,tEXt,zTXt,bkGD,hIST,pHYs,sPLT,tIME,组成。其中,每个PNG文件都必须包含关键数据块,提倡支持可选数据块。而每个数据块中根据标准又包括不同的预设参数。根据PNG协议可以对PNG图片进行解析从而获取所有数据块以及数据块中预设参数的值。
步骤S130、替换步骤:
遍历所述数据块以及每个数据块中预设字段的值,根据PNG规范中参数之间依赖关系替换所述预设参数的值以获取替换后的PNG图片。
在PNG格式标准中,文件署名域的Filter字段有5种取值,分别对应None,Sub,Up,Average和Paeth5种不同的过滤算法。Interlace字段有2种取值,分别对应方法0和方法1两种扫描方法。Compression字段只有一种取值,对应LZ77派生算法。因此,这些字段可仅为这些值,当PNG图片中这些字段(参数)的值不为标准值时,可以替换为标准值或者直接清空。
在PNG格式标准中,文件头数据块中的ColorType域有5种取值,分别对应灰度、真彩、索引、α通道灰度和α通道真彩五种PNG图像类型。由于某种原因,PNG图像的ColorType取值可能并不合理。比如,由色彩数量较少的JPEG直接转换得到的的图像,附带了许多无用的渐变色信息,或者由小GIF直接转换得到的图像,附带了许多无用的调色板透明数据信息。因此,这些字段可仅为这些值,当PNG图片中这些字段(参数)的值不为标准值时,可以替换为标准值或者直接清空,而且无用的信息(如上述的无用的渐变色信息)也可以一并删除。
根据PNG图像的的不同类型,分别对应附带Alpha通道、附带单值透明数据块、附带透明数据块表等不同的Alpha通道表现形态,也即辅助数据块tRNS可能有也可能没有。
文本信息tEXt、压缩文本zTXt和国际化文本iTXt数据块,记录了图像标题、作者、说明、原创时间等等注释信息,与图像显示无关,可以根据情况清空。
时间戳tTIME数据块记录了图像的最后一次修改时间,与图像显示无关,可以根据情况清空。
在替换的过程中遵守PNG格式标准中对参数之间依赖关系的规定,比如对灰度图像,透明数据块tRNS只有2Bytes的灰度值,对真彩图像,透明数据块rRNS分别包含2Bytes的R/G/B值。
步骤S140、输出步骤:
比较所述替换后的PNG图片以及所述待处理的PNG图片的大小并取尺寸较小的PNG图片作为结果图片输出以在不降低图像清晰度的前提下降低PNG图片大小。
经过替换后的PNG图片的大小可能大于原PNG图片,也可能小于原PNG图片,取最小的记录即可。
在本实施例中,上述的方法是应用在IOS平台中,然而本发明并不限于在IOS系统中应用,任意可以处理PNG格式的平台均可应用。
根据上述实施的方法,通过替换掉PNG图片中对于显示没有影响的字段,可以在不降低图像清晰度的前提下降低PNG格式图片的文件大小,从而加快网络加载速度,提升在移动互联网场景下的用户使用体验。
参阅图2,其为本发明实施例提供的一种降低PNG图片的大小的装置的模块图。本实施例的装置包括:读取模块210、解析模块220、替换模块230、以及输出模块240。
读取模块210用于读取待处理的PNG图片。所述待处理的PNG图片即可以是预先存储在存储器内的图片,也可以是从网络上下载的图片,还可以是直接采用摄像头实时拍摄的图片。
解析模块220用于根据PNG格式标准解析读取的PNG图片以获取所有PNG格式所对应的数据块以及每个数据块中的预设参数的值。
PNG图像格式由PNG文件署名域、四个关键数据块即文件头数据块IHDR、调色板数据块PLTE、图像数据块IDAT和图像结束数据块IEND,以及14个辅助数据块即tRNS,cHRM,gAMA,iCCP,sBIT,sRGB,iTXt,tEXt,zTXt,bkGD,hIST,pHYs,sPLT,tIME,组成。其中,每个PNG文件都必须包含关键数据块,提倡支持可选数据块。而每个数据块中根据标准又包括不同的预设参数。根据PNG协议可以对PNG图片进行解析从而获取所有数据块以及数据块中预设参数的值。
替换模块230用于遍历所述数据块以及每个数据块中预设字段的值,根据PNG规范中参数之间依赖关系替换所述预设参数的值以获取替换后的PNG图片。
在PNG格式标准中,文件署名域的Filter字段有5种取值,分别对应None,Sub,Up,Average和Paeth5种不同的过滤算法。Interlace字段有2种取值,分别对应方法0和方法1两种扫描方法。Compression字段只有一种取值,对应LZ77派生算法。因此,这些字段可仅为这些值,当PNG图片中这些字段(参数)的值不为标准值时,可以替换为标准值或者直接清空。
在PNG格式标准中,文件头数据块中的ColorType域有5种取值,分别对应灰度、真彩、索引、α通道灰度和α通道真彩五种PNG图像类型。由于某种原因,PNG图像的ColorType取值可能并不合理。比如,由色彩数量较少的JPEG直接转换得到的的图像,附带了许多无用的渐变色信息,或者由小GIF直接转换得到的图像,附带了许多无用的调色板透明数据信息。因此,这些字段可仅为这些值,当PNG图片中这些字段(参数)的值不为标准值时,可以替换为标准值或者直接清空,而且无用的信息(如上述的无用的渐变色信息)也可以一并删除。
根据PNG图像的的不同类型,分别对应附带Alpha通道、附带单值透明数据块、附带透明数据块表等不同的Alpha通道表现形态,也即辅助数据块tRNS可能有也可能没有。
文本信息tEXt、压缩文本zTXt和国际化文本iTXt数据块,记录了图像标题、作者、说明、原创时间等等注释信息,与图像显示无关,可以根据情况清空。
时间戳tTIME数据块记录了图像的最后一次修改时间,与图像显示无关,可以根据情况清空。
在替换的过程中遵守PNG格式标准中对参数之间依赖关系的规定,比如对灰度图像,透明数据块tRNS只有2Bytes的灰度值,对真彩图像,透明数据块rRNS分别包含2Bytes的R/G/B值。
输出模块240用于比较所述替换后的PNG图片以及所述待处理的PNG图片的大小并取尺寸较小的PNG图片作为结果图片输出。
经过替换后的PNG图片的大小可能大于原PNG图片,也可能小于原PNG图片,取最小的记录即可。
此外,值得注意的是,图像大小只在移动应用中是敏感因素。所述方法在IOS平台可用。在Android平台上,APK打包工具会将处理后的图像自动解压恢复原始大小,除非针对APK打包工具做额外的处理。也就是说,在针对现有的APK打包工具进行了额外的处理后,本发明实施例的方法也可应用于Android平台。根据上述实施的装置,通过替换掉PNG图片中对于显示没有影响的字段,可以降低PNG格式图片的文件大小,从而加快网络加载速度,提升在移动互联网场景下的用户使用体验。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种降低PNG图片大小的方法,其特征在于,包括以下步骤:
读取步骤:读取待处理的PNG图片;
解析步骤:根据PNG格式标准解析读取的PNG图片以获取所有PNG格式所对应的数据块以及每个数据块中的预设参数的值;
替换步骤:遍历所述数据块以及每个数据块中预设参数的值,根据PNG规范中参数之间依赖关系替换所述预设参数的值以获取替换后的PNG图片,在PNG格式标准中,将文件署名域的Filter字段、Interlace字段、以及Compression字段替换为标准值或者直接清空;以及
输出步骤:比较所述替换后的PNG图片以及所述待处理的PNG图片的大小并取尺寸较小的PNG图片作为结果图片输出以在不降低图像清晰度的前提下降低PNG图片大小。
2.如权利要求1所述的方法,其特征在于,所述替换步骤包括:清空文本信息tEXt数据块、压缩文本zTXt数据块和国际化文本iTXt数据块内存储的图片标题、作者、说明、原创时间字段。
3.如权利要求1所述的方法,其特征在于,所述替换步骤包括:清空时间戳tTIME数据块内记录的图像的最后一次修改时间字段。
4.如权利要求1所述的方法,其特征在于,所述替换步骤包括:将文件头数据块中的ColorType域替换为合理值并删除无用信息。
5.一种降低PNG图片大小的装置,其特征在于,包括以下步骤:
读取模块:读取待处理的PNG图片;
解析模块:根据PNG格式标准解析读取的PNG图片以获取所有PNG格式所对应的数据块以及每个数据块中的预设参数的值;
替换模块:遍历所述数据块以及每个数据块中预设参数的值,根据PNG规范中参数之间依赖关系替换所述预设参数的值以获取替换后的PNG图片,在PNG格式标准中,将文件署名域的Filter字段、Interlace字段、以及Compression字段替换为标准值或者直接清空;以及
输出模块:比较所述替换后的PNG图片以及所述待处理的PNG图片的大小并取尺寸较小的PNG图片作为结果图片输出以在不降低图像清晰度的前提下降低PNG图片大小。
6.如权利要求5所述的装置,其特征在于,所述替换模块用于:清空文本信息tEXt数据块、压缩文本zTXt数据块和国际化文本iTXt数据块内存储的图片标题、作者、说明、原创时间字段。
7.如权利要求5所述的装置,其特征在于,所述替换模块用于:清空时间戳tTIME数据块内记录的图像的最后一次修改时间字段。
8.如权利要求5所述的装置,其特征在于,所述替换模块用于:将文件头数据块中的ColorType域替换为合理值并删除无用信息。
CN201410844196.2A 2014-12-30 2014-12-30 降低png图片大小的方法及装置 Active CN105808567B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410844196.2A CN105808567B (zh) 2014-12-30 2014-12-30 降低png图片大小的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410844196.2A CN105808567B (zh) 2014-12-30 2014-12-30 降低png图片大小的方法及装置

Publications (2)

Publication Number Publication Date
CN105808567A CN105808567A (zh) 2016-07-27
CN105808567B true CN105808567B (zh) 2021-02-05

Family

ID=56419997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410844196.2A Active CN105808567B (zh) 2014-12-30 2014-12-30 降低png图片大小的方法及装置

Country Status (1)

Country Link
CN (1) CN105808567B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108933945B (zh) * 2018-08-17 2020-06-19 腾讯科技(深圳)有限公司 一种gif图片的压缩方法、装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0688133A2 (en) * 1994-06-15 1995-12-20 Eastman Kodak Company Method for controllably deinterlacing sequential lines of video data fields based upon pixel signals associated with three successive interlaced video fiels
CN102855602A (zh) * 2011-06-28 2013-01-02 阿里巴巴集团控股有限公司 一种图片处理方法和装置
CN103002282A (zh) * 2012-11-13 2013-03-27 北京大学 一种颜色数目自适应决策方法和图像压缩方法
CN103678543A (zh) * 2013-12-04 2014-03-26 康佳集团股份有限公司 一种png图片逐行解压的系统及方法
CN104142924A (zh) * 2013-05-06 2014-11-12 中国移动通信集团福建有限公司 一种动画图片格式的压缩方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0688133A2 (en) * 1994-06-15 1995-12-20 Eastman Kodak Company Method for controllably deinterlacing sequential lines of video data fields based upon pixel signals associated with three successive interlaced video fiels
CN102855602A (zh) * 2011-06-28 2013-01-02 阿里巴巴集团控股有限公司 一种图片处理方法和装置
CN103002282A (zh) * 2012-11-13 2013-03-27 北京大学 一种颜色数目自适应决策方法和图像压缩方法
CN104142924A (zh) * 2013-05-06 2014-11-12 中国移动通信集团福建有限公司 一种动画图片格式的压缩方法和装置
CN103678543A (zh) * 2013-12-04 2014-03-26 康佳集团股份有限公司 一种png图片逐行解压的系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于移动设备的PNG图片优化实现;徐逸卿;《电脑知识与技术》;20081208;全文 *

Also Published As

Publication number Publication date
CN105808567A (zh) 2016-07-27

Similar Documents

Publication Publication Date Title
US9324164B2 (en) Image encoding apparatus, image decoding apparatus, image processing apparatus, and control method thereof dealing with high dynamic range image
US20160140415A1 (en) Methods and systems for differentiating synthetic and non-synthetic images
CN103366341B (zh) 一种图像自适应分辨率显示的方法及装置
US20150156557A1 (en) Display apparatus, method of displaying image thereof, and computer-readable recording medium
CN103826028A (zh) 一种无损压缩图片的方法和装置
CN110505497B (zh) 一种云手机运行监测方法、系统、装置和存储介质
US20120002877A1 (en) Non-transitory computer readable storage medium, marker creating apparatus, restoration apparatus, and marker creating method
KR100765761B1 (ko) 화상 형성 시스템 및 화상 형성 방법
CN111918065A (zh) 一种信息压缩/解压缩方法及装置
CN106503169A (zh) 图片处理方法和装置
CN105808567B (zh) 降低png图片大小的方法及装置
JP2004362541A (ja) 画像処理装置、プログラム及び記憶媒体
CN103986979B (zh) 一种版权保护方法及系统
US8812584B2 (en) Moving picture file transmitting server and method of controlling operation of same
US8483288B2 (en) Methods, apparatus and system for film grain cache splitting for film grain simulation
KR101685932B1 (ko) 고기능 이미지 파일 및 이의 편집장치
CN113099270B (zh) 文件存储方法及解码方法、装置、存储介质、电子装置
CN105704215A (zh) 文件共享系统及相应的文件发送、接收方法及装置
CN104219537A (zh) 视频数据处理的方法、装置及系统
KR102067691B1 (ko) 이미지 파일의 처리 시스템 및 방법
CN108933945B (zh) 一种gif图片的压缩方法、装置及存储介质
Calibo et al. Metadata Extraction Analysis: A Review of Video Data in Effect to Social Media Compression
US8369637B2 (en) Image processing apparatus, image processing method, and program
US20230401811A1 (en) Information generation apparatus, information generation method, and storage medium
CN109982017A (zh) 用于智能记录视频数据流的系统和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant