CN104851119B - 一种动画可移植网络图形图片的生成方法和装置 - Google Patents
一种动画可移植网络图形图片的生成方法和装置 Download PDFInfo
- Publication number
- CN104851119B CN104851119B CN201410049619.1A CN201410049619A CN104851119B CN 104851119 B CN104851119 B CN 104851119B CN 201410049619 A CN201410049619 A CN 201410049619A CN 104851119 B CN104851119 B CN 104851119B
- Authority
- CN
- China
- Prior art keywords
- picture
- png
- apng
- change area
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000007906 compression Methods 0.000 claims abstract description 40
- 230000006835 compression Effects 0.000 claims abstract description 39
- HWWIYXKSCZCMFV-ZETCQYMHSA-N 2-[[(2s)-1-acetylpyrrolidine-2-carbonyl]-nitrosoamino]acetic acid Chemical compound CC(=O)N1CCC[C@H]1C(=O)N(CC(O)=O)N=O HWWIYXKSCZCMFV-ZETCQYMHSA-N 0.000 claims abstract 18
- 101150075622 UL80 gene Proteins 0.000 claims abstract 18
- 238000012163 sequencing technique Methods 0.000 claims description 17
- 230000000694 effects Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 241000282414 Homo sapiens Species 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种APNG图片的生成方法和装置:当需要生成一张APNG图片时,按照由先到后的展示顺序对生成该APNG图片所需的M张PNG图片进行排序,M为正整数;针对排序后处于第i位的PNG图片i,1<i≤M,分别确定相比于进行有损压缩之前的PNG图片j,j=i‑1,PNG图片i中存在的变化区域,并记录变化区域的位置信息;对PNG图片i进行有损压缩,根据所记录的PNG图片i中的变化区域的位置信息,从进行有损压缩后的PNG图片i中裁剪出变化区域,并记录裁剪出的变化区域的图片数据;根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片。应用本发明所述方案,能够提升压缩效果。
Description
技术领域
本发明涉及图像处理技术,特别涉及一种动画可移植网络图形(APNG,AnimatedPortable Network Graphics)图片的生成方法和装置。
背景技术
APNG是一种基于可移植网络图形(PNG,Portable Network Graphics)的位图动画格式,扩展方法类似于图形交换格式(GIF,Graphics Interchange Format)-89a,仍保留对传统PNG的向下兼容。
现有APNG图片的生成方式类似于GIF,即将一组大小相同的PNG图片合并为一张APNG图片,原来的每一张PNG图片均变为APNG图片的一帧。
图1为现有APNG图片的生成方式示意图。
如图1所示,假设利用3张PNG图片来生成一张APNG图片,为便于表述,按照由先到后的展示顺序,将3张PNG图片分别称为frame1、frame2和frame3;
首先,可确定出相比于frame1,frame2中存在的变化区域,并记录变化区域的图片数据和位置信息;
之后,可确定出相比于frame2,frame3中存在的变化区域,并记录变化区域的图片数据和位置信息;
最后,可根据frame1的图片数据的和图片信息、frame2中的变化区域的图片数据和位置信息,以及frame3中的变化区域的图片数据和位置信息,生成该APNG图片;其中,图片信息可包括图片大小等。
具体地,可生成该APNG图片的数据文件,其中按照预定格式保存有frame1的图片数据和图片信息、frame2中的变化区域的图片数据和位置信息,以及frame3中的变化区域的图片数据和位置信息;当解析时,针对除frame1以外的每张PNG图片,可根据每张PNG图片中的变化区域的位置信息,用变化区域的图片数据来替换与其相邻的前一张PNG图片中的对应位置的图片数据,从而依次还原出各张PNG图片,并呈现出该APNG图片的动画效果。
可以看出,采用上述方式后,可以复用相邻的前一张PNG图片中的相同区域的图片数据,从而达到了数据压缩的效果,进而减少了所保存的数据量,节省了存储空间。
但是,上述压缩效果有限,为了进一步节省存储空间,还需要通过其它方式来进一步提升压缩效果。
发明内容
有鉴于此,本发明提供了一种APNG图片的生成方法和装置,能够提升压缩效果。
为了达到上述目的,本发明的技术方案是这样实现的:
一种APNG图片的生成方法,包括:
当需要生成一张APNG图片时,按照由先到后的展示顺序对生成该APNG图片所需的M张可移植网络图形PNG图片进行排序,M为正整数;
针对排序后处于第i位的PNG图片i,1<i≤M,分别确定相比于进行有损压缩之前的PNG图片j,j=i-1,PNG图片i中存在的变化区域,并记录变化区域的位置信息;对PNG图片i进行有损压缩,根据所记录的PNG图片i中的变化区域的位置信息,从进行有损压缩后的PNG图片i中裁剪出变化区域,并记录裁剪出的变化区域的图片数据;
根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片。
一种APNG图片的生成装置,包括:
第一处理模块,用于当需要生成一张APNG图片时,按照由先到后的展示顺序对生成该APNG图片所需的M张可移植网络图形PNG图片进行排序,M为正整数,并将排序结果通知给第二处理模块;
所述第二处理模块,用于针对排序后处于第i位的PNG图片i,1<i≤M,分别确定相比于进行有损压缩之前的PNG图片j,j=i-1,PNG图片i中存在的变化区域,并记录变化区域的位置信息;对PNG图片i进行有损压缩,根据所记录的PNG图片i中的变化区域的位置信息,从进行有损压缩后的PNG图片i中裁剪出变化区域,并记录裁剪出的变化区域的图片数据;根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片。
可见,采用本发明所述方案,在生成APNG图片时,不但可以复用相邻的前一张PNG图片中的相同区域的图片数据,而且可以对PNG图片进行有损压缩,从而进一步提升了压缩效果,进而进一步节省了存储空间等。
附图说明
图1为现有APNG图片的生成方式示意图。
图2为本发明APNG图片的生成方法实施例的流程图。
图3为本发明APNG图片的生成方式示意图。
图4为本发明APNG图片的生成装置实施例的组成结构示意图。
具体实施方式
针对现有技术中存在的问题,本发明中提出一种改进后的APNG图片的生成方案,不但可以复用相邻的前一张PNG图片中的相同区域的图片数据,而且可以对PNG图片进行有损压缩。
有损压缩是利用了人类对于图片中的某些色彩不敏感的特性,允许压缩过程中损失一定的信息,虽然后续不能完全恢复原始数据,但是所损失的部分对于理解原图片并不会造成实质影响。
在实际应用中,对PNG图片进行有损压缩的时机选择非常重要,比如,如果先对各PNG图片进行有损压缩,然后再按照图1所示方式生成APNG图片,则会出现问题。
因为对于任意一张PNG图片来说,当对其进行有损压缩后,会对其中的图片数据进行重组,从而导致该PNG图片与相邻的前一张PNG图片中的相同区域发生变化,进而导致不能复用相邻的前一张PNG图片中的相同区域的图片数据。
基于上述介绍,图2为本发明APNG图片的生成方法实施例的流程图。如图2所示,包括以下步骤21~23。
步骤21:当需要生成一张APNG图片时,按照由先到后的展示顺序对生成该APNG图片所需的M张PNG图片进行排序,M为正整数。
如前所述,一张APNG图片是由一组大小相同的PNG图片合并而成的,其中,各张PNG图片的展示顺序是有预定要求的。
本步骤中,当需要生成一张APNG图片时,即可按照由先到后的展示顺序,对生成该APNG图片所需的各张PNG图片进行排序。
步骤22:针对排序后处于第i位的PNG图片i,1<i≤M,分别确定相比于进行有损压缩之前的PNG图片j,j=i-1,PNG图片i中存在的变化区域,并记录变化区域的位置信息;对PNG图片i进行有损压缩,根据所记录的PNG图片i中的变化区域的位置信息,从进行有损压缩后的PNG图片i中裁剪出变化区域,并记录裁剪出的变化区域的图片数据。
变化区域即指不同区域,所述不同可包括任意不同,如图片内容不同或图片亮度不同等。
所述变化区域的位置信息可包括:变化区域的左上角坐标以及变化区域的长和宽,或者,变化区域的左上角坐标和右下角坐标,或者,变化区域的右上角坐标和左下角坐标,或者,变化区域的中心点坐标以及长和宽等;只要能够定义出变化区域在PNG图片的具***置即可。
为便于表述,本实施例中,用PNG图片i来表示排序后处于第2~M位的任意一张PNG图片,用PNG图片j来表示与PNG图片i相邻的前一张PNG图片。
针对排序后处于第2~M位的各张PNG图片,可在分别确定出其变化区域并记录变化区域的位置信息之后,再分别对各张PNG图片进行有损压缩和裁剪等处理,如何确定变化区域和现有技术中相同。
可以看出,本发明所述方案中是在确定出变化区域之后,才对PNG图片进行有损压缩,从而避免了先进行有损压缩所导致的不能复用相邻的前一张PNG图片中的相同区域的图片数据的问题。
另外,具体采用何种有损压缩算法来对各张PNG图片进行有损压缩不作限制。
步骤23:根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片。
本步骤中,可采用以下两种实现方式:
1)方式一
根据排序后处于第一位的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片;
2)方式二
对排序后处于第一位的PNG图片进行有损压缩;根据排序后处于第一位且进行有损压缩后的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片。
也就是说,对于排序后处于第一位的PNG图片,可以对其进行有损压缩,也可以不对其进行有损压缩,具体采用上述哪种方式可根据实际需要而定。
所述图片信息可包括图片大小等。
另外,理论上来说,每张PNG图片中的变化区域的个数可能是一个,也可能是多个,但在实际应用中,通常只会涉及到一个的情况,无论是一个还是多个,本发明所述方案均适用。
以下通过具体示例,对本发明所述方案进行进一步说明。
图3为本发明APNG图片的生成方式示意图。
如图3所示,假设利用3张PNG图片来生成一张APNG图片,为便于表述,按照由先到后的展示顺序,将3张PNG图片分别称为frame1、frame2和frame3。
首先,确定出相比于frame1,frame2中存在的变化区域,并记录变化区域的位置信息;确定出相比于frame2,frame3中存在的变化区域,并记录变化区域的位置信息。
之后,对frame2进行有损压缩,得到压缩后的PNG图片frame2-loss;对frame3进行有损压缩,得到压缩后的PNG图片frame3-loss。
之后,根据frame2中的变化区域的位置信息,对frame2-loss进行裁剪,得到变化区域,并记录变化区域的图片数据;根据frame3中的变化区域的位置信息,对frame3-loss进行裁剪,得到变化区域,并记录变化区域的图片数据。
假设不需要对frame1进行有损压缩,那么则可根据frame1的图片数据和图片信息、frame2中的变化区域的图片数据和位置信息,以及frame3中的变化区域的图片数据和位置信息,生成该APNG图片。
如前所述,可生成该APNG图片的数据文件,其中按照预定格式保存有frame1的图片数据和图片信息、frame2中的变化区域的图片数据和位置信息,以及frame3中的变化区域的图片数据和位置信息。
并且,针对除frame1以外的每张PNG图片,可根据每张PNG图片中的变化区域的位置信息,用变化区域的图片数据来替换与其相邻的前一张PNG图片中的对应位置的图片数据(即相同区域使用相邻的前一张PNG图片中的图片数据,不同区域使用自身的图片数据),从而可依次还原出各张PNG图片,并呈现出该APNG图片的动画效果。
具体地,可解析该APNG图片的数据文件,并首先按照frame1的图片数据和图片信息展示frame1;之后,可根据frame2中的变化区域的位置信息,用frame2中的变化区域的图片数据替换frame1中的对应位置的图片数据,从而还原出frame2并展示,假设frame2中的变化区域的左上角坐标为(10,10)、长和宽分别为30和20,那么,所述替换即指将frame1中的左上角坐标为(10,10,)、长和宽分别为30和20的区域中的图片数据替换为frame2中的变化区域中的图片数据;之后,可根据frame3中的变化区域的位置信息,用frame3中的变化区域的图片数据替换frame2中的对应位置的图片数据,从而还原出frame3并展示,当按照上述方式对frame1、frame2和frame3依次进行展示后,即会呈现出该APNG图片的动画效果。
图4为本发明APNG图片的生成装置实施例的组成结构示意图。如图4所示,包括:
第一处理模块41,用于当需要生成一张APNG图片时,按照由先到后的展示顺序对生成该APNG图片所需的M张PNG图片进行排序,M为正整数,并将排序结果通知给第二处理模块42;
第二处理模块42,用于针对排序后处于第i位的PNG图片i,1<i≤M,分别确定相比于进行有损压缩之前的PNG图片j,j=i-1,PNG图片i中存在的变化区域,并记录变化区域的位置信息;对PNG图片i进行有损压缩,根据所记录的PNG图片i中的变化区域的位置信息,从进行有损压缩后的PNG图片i中裁剪出变化区域,并记录裁剪出的变化区域的图片数据;根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片。
具体地,
第二处理模块42可根据排序后处于第一位的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片;
或者,
第二处理模块42可对排序后处于第一位的PNG图片进行有损压缩;根据排序后处于第一位且进行有损压缩后的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片。
较佳地,
所述位置信息可包括以下之一:左上角坐标以及长和宽、左上角坐标和右下角坐标、右上角坐标和左下角坐标、中心点坐标以及长和宽;
所述图片信息可包括:图片大小。
图4所示装置实施例的具体工作流程请参照前述方法实施例中的相应说明,此处不再赘述。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种动画可移植网络图形APNG图片的生成方法,其特征在于,包括:
当需要生成一张APNG图片时,按照由先到后的展示顺序对生成该APNG图片所需的M张可移植网络图形PNG图片进行排序,M为正整数;
针对排序后处于第i位的PNG图片i,1<i≤M,分别确定相比于进行有损压缩之前的PNG图片j,j=i-1,PNG图片i中存在的变化区域,并记录变化区域的位置信息;对PNG图片i进行有损压缩,根据所记录的PNG图片i中的变化区域的位置信息,从进行有损压缩后的PNG图片i中裁剪出变化区域,并记录裁剪出的变化区域的图片数据;
根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片。
2.根据权利要求1所述的方法,其特征在于,
所述根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片包括:
根据排序后处于第一位的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片。
3.根据权利要求1所述的方法,其特征在于,
所述根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片包括:
对排序后处于第一位的PNG图片进行有损压缩;
根据排序后处于第一位且进行有损压缩后的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片。
4.根据权利要求2或3所述的方法,其特征在于,
所述位置信息包括以下之一:左上角坐标以及长和宽、左上角坐标和右下角坐标、右上角坐标和左下角坐标、中心点坐标以及长和宽;
所述图片信息包括:图片大小。
5.一种动画可移植网络图形APNG图片的生成装置,其特征在于,包括:
第一处理模块,用于当需要生成一张APNG图片时,按照由先到后的展示顺序对生成该APNG图片所需的M张可移植网络图形PNG图片进行排序,M为正整数,并将排序结果通知给第二处理模块;
所述第二处理模块,用于针对排序后处于第i位的PNG图片i,1<i≤M,分别确定相比于进行有损压缩之前的PNG图片j,j=i-1,PNG图片i中存在的变化区域,并记录变化区域的位置信息;对PNG图片i进行有损压缩,根据所记录的PNG图片i中的变化区域的位置信息,从进行有损压缩后的PNG图片i中裁剪出变化区域,并记录裁剪出的变化区域的图片数据;根据排序后处于第一位的PNG图片以及所记录的信息,生成该APNG图片。
6.根据权利要求5所述的装置,其特征在于,
所述第二处理模块根据排序后处于第一位的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片。
7.根据权利要求5所述的装置,其特征在于,
所述第二处理模块对排序后处于第一位的PNG图片进行有损压缩;根据排序后处于第一位且进行有损压缩后的PNG图片的图片数据和图片信息,以及排序后处于第2~M位的各PNG图片中的变化区域的图片数据和位置信息,生成该APNG图片。
8.根据权利要求6或7所述的装置,其特征在于,
所述位置信息包括以下之一:左上角坐标以及长和宽、左上角坐标和右下角坐标、右上角坐标和左下角坐标、中心点坐标以及长和宽;
所述图片信息包括:图片大小。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410049619.1A CN104851119B (zh) | 2014-02-13 | 2014-02-13 | 一种动画可移植网络图形图片的生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410049619.1A CN104851119B (zh) | 2014-02-13 | 2014-02-13 | 一种动画可移植网络图形图片的生成方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104851119A CN104851119A (zh) | 2015-08-19 |
CN104851119B true CN104851119B (zh) | 2019-04-12 |
Family
ID=53850746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410049619.1A Active CN104851119B (zh) | 2014-02-13 | 2014-02-13 | 一种动画可移植网络图形图片的生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104851119B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1570968A (zh) * | 2004-01-18 | 2005-01-26 | 马堃 | 复用电子相框的数字图像合成的方法 |
CN1946144A (zh) * | 2006-11-01 | 2007-04-11 | 李博航 | 实时视频、图像传输技术 |
CN102804791A (zh) * | 2010-01-22 | 2012-11-28 | 索尼公司 | 接收装置、发送装置、通信***、接收装置控制方法和程序 |
-
2014
- 2014-02-13 CN CN201410049619.1A patent/CN104851119B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1570968A (zh) * | 2004-01-18 | 2005-01-26 | 马堃 | 复用电子相框的数字图像合成的方法 |
CN1946144A (zh) * | 2006-11-01 | 2007-04-11 | 李博航 | 实时视频、图像传输技术 |
CN102804791A (zh) * | 2010-01-22 | 2012-11-28 | 索尼公司 | 接收装置、发送装置、通信***、接收装置控制方法和程序 |
Also Published As
Publication number | Publication date |
---|---|
CN104851119A (zh) | 2015-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4782105B2 (ja) | 画像処理装置及び画像処理方法 | |
CN109803180B (zh) | 视频预览图生成方法、装置、计算机设备及存储介质 | |
US20090002368A1 (en) | Method, apparatus and a computer program product for utilizing a graphical processing unit to provide depth information for autostereoscopic display | |
CN104038705B (zh) | 视频制作方法和装置 | |
US8442327B2 (en) | Application of classifiers to sub-sampled integral images for detecting faces in images | |
CN104850388B (zh) | 网页绘制方法及装置 | |
US10878532B2 (en) | Display device, system and controlling method therefor | |
CN110248115B (zh) | 图像处理方法、装置及存储介质 | |
US20110193858A1 (en) | Method for displaying images using an electronic device | |
US9489104B2 (en) | Viewable frame identification | |
CN109389659A (zh) | Ppt中数学公式的渲染方法、装置、存储介质及终端设备 | |
CN107454479A (zh) | 一种多媒体数据的处理方法及装置 | |
CN112714357A (zh) | 视频播放方法、视频播放装置、电子设备和存储介质 | |
US10199013B2 (en) | Digital image comparison | |
US20150242988A1 (en) | Methods of eliminating redundant rendering of frames | |
CN103365968A (zh) | 网页内容放大方法及网页内容放大镜 | |
CN107924574B (zh) | 针对分组对象的智能翻转操作 | |
CN104851119B (zh) | 一种动画可移植网络图形图片的生成方法和装置 | |
CN104363466B (zh) | 一种图片生成方法及装置 | |
US10628958B2 (en) | Frame rendering apparatus, method and non-transitory computer readable storage medium | |
JP6389996B1 (ja) | 広告表示方法、広告表示サーバ及び広告表示プログラム | |
CN104883477A (zh) | 一种视频数据预畸变处理方法、装置及头戴显示器 | |
CN110784621B (zh) | 图像传输方法、装置、服务器、终端设备及*** | |
CN105354295B (zh) | 三维动态标绘点标号的动态展示装置和方法 | |
US9129643B2 (en) | Method and apparatus for creating a media sequence with automatic selection of an optimal sequence preset |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |