一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种特定PNG图像的源码高压缩与快速绘图方法与流程

2022-07-10 04:59:57 来源:中国专利 TAG:
一种特定png图像的源码高压缩与快速绘图方法
技术领域
1.本发明涉及特定png图像技术领域,尤其涉及一种特定png图像的源码高压缩与快速绘图方法。


背景技术:

2.常规的png绘图是将png所有像素数据存储,然后所有像素数据在绘图时都参与运算,当一个大分辨率的png图像中仅有少量像素为非透明时,整帧解码需要的时间仍然较慢,影响了显示效率,不能满足使用需求,综合上述情况加以改进,因此我们提出了一种特定png图像的源码高压缩与快速绘图方法。


技术实现要素:

3.基于背景技术存在的技术问题,本发明提出了一种特定png图像的源码高压缩与快速绘图方法。
4.本发明提出的一种特定png图像的源码高压缩与快速绘图方法,包括以下步骤:
5.s1:逐行从左到右,从上到下扫描图像的像素数据,以所见的首个非透明像素点起始坐标(x,y),连续的非透明像素数量,连续的argb像素数据为1帧;然后继续扫描并存储图像帧,直至所有像素均被扫描,扫描后,对扫描的像素进行编码;
6.s2:打开s1中所述的编码后的图像文件,顺序读取数据,首先得到要填充的图像像素的起始坐标(x,y);
7.s3:将s2中的图像写入画布的位置偏移至该坐标(x,y),接下来读取得到要连续填充的图像像素数量;
8.s4:将文件中的每个像素数据与读取的原始画布中的同坐标像素数据进行argb运算,从而得到新的rgb像素数据,其中新像素数据以dr、dg、db为标记,其中对于要绘制的图像的像素数据已进行预运算,不需要cpu重复运算;
9.s5:最后将s4中的rgb像素数据写回画布的同坐标位置,再进行输出到屏幕显示;
10.s6:采用l8m arm处理器,主频120mhz与常规png解码绘图和本专利编解码绘图进行对比。
11.优选地,所述s4中,argb像素数据以pa、pr、pg、pb来标记。
12.优选地,所述s4中,rgb像素数据以sr、sg、sb为标记。
13.优选地,所述s4中,运算方法为:dr=sr*pa/255 pr,dg=sg*pa/255 pg;db=sb*pa/255 pb。
14.优选地,所述s1中,数据帧格式定义为:x坐标2字节 y坐标2字节 连续的非透明像素数量n 2字节 预处理的像素数据4字节*n。
15.优选地,所述s4中,s4中,常规像素数据按字节排序为b为蓝色1字节、g为绿色1字节、r为红色1字节、a为透明度1字节、0=完全透明、255=完全不透明,像素数据存储时,为4字节进行储存,存储的字节的计算公式为:b*a/255为蓝色1字节、g*a/255为绿色1字节、r*
a/255为红色1字节、255-a为反转的透明度。
16.优选地,所述s1中,在扫描像素存储时,只存储每行的非透明像素的数据,所以存储的数据量较少,从而使文件大小变小。
17.与现有的技术相比,本发明的有益效果是:
18.本发明针对那些大分辨率的png图像中仅有少量像素为非透明时,通过特定的编解码和预运算方法,可以实现更低存储空间和快速的解码绘图,只消耗很少的cpu资源,提高显示效率,满足使用需求。
具体实施方式
19.下面结合具体实施例对本发明作进一步解说。
20.实施例
21.本实施例提出了一种特定png图像的源码高压缩与快速绘图方法,包括以下步骤:
22.s1:逐行从左到右,从上到下扫描图像的像素数据,以所见的首个非透明像素点起始坐标(x,y),连续的非透明像素数量,连续的argb像素数据为1帧;然后继续扫描并存储图像帧,直至所有像素均被扫描,扫描后,对扫描的像素进行编码,其中数据帧格式定义为:x坐标2字节 y坐标2字节 连续的非透明像素数量n 2字节 预处理的像素数据4字节*n,且在扫描像素存储时,只存储每行的非透明像素的数据,所以存储的数据量较少,从而使文件大小变小;
23.s2:打开s1中所述的编码后的图像文件,顺序读取数据,首先得到要填充的图像像素的起始坐标(x,y);
24.s3:将s2中的图像写入画布的位置偏移至该坐标(x,y),接下来读取得到要连续填充的图像像素数量;
25.s4:将文件中的每个像素数据与读取的原始画布中的同坐标像素数据进行argb运算,运算方法为:dr=sr*pa/255 pr,dg=sg*pa/255 pg;db=sb*pa/255 pb,从而得到新的rgb像素数据,其中新像素数据以dr、dg、db为标记,其中对于要绘制的图像的像素数据已进行预运算,不需要cpu重复运算,其中argb像素数据以pa、pr、pg、pb来标记,rgb像素数据以sr、sg、sb为标记,常规像素数据按字节排序为b为蓝色1字节、g为绿色1字节、r为红色1字节、a为透明度1字节、0=完全透明、255=完全不透明,像素数据存储时,为4字节进行储存,存储的字节的计算公式为:b*a/255为蓝色1字节、g*a/255为绿色1字节、r*a/255为红色1字节、255-a为反转的透明度;
26.s5:最后将s4中的rgb像素数据写回画布的同坐标位置,再进行输出到屏幕显示;
27.s6:采用l8m arm处理器,主频120mhz与常规png解码绘图和本专利编解码绘图进行对比。
28.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。


技术特征:
1.一种特定png图像的源码高压缩与快速绘图方法,其特征在于,包括以下步骤:s1:逐行从左到右,从上到下扫描图像的像素数据,以所见的首个非透明像素点起始坐标(x,y),连续的非透明像素数量,连续的argb像素数据为1帧;然后继续扫描并存储图像帧,直至所有像素均被扫描,扫描后,对扫描的像素进行编码;s2:打开s1中所述的编码后的图像文件,顺序读取数据,首先得到要填充的图像像素的起始坐标(x,y);s3:将s2中的图像写入画布的位置偏移至该坐标(x,y),接下来读取得到要连续填充的图像像素数量;s4:将文件中的每个像素数据与读取的原始画布中的同坐标像素数据进行argb运算,从而得到新的rgb像素数据,其中新像素数据以dr、dg、db为标记,其中对于要绘制的图像的像素数据已进行预运算,不需要cpu重复运算;s5:最后将s4中的rgb像素数据写回画布的同坐标位置,再进行输出到屏幕显示;s6:采用l8m arm处理器,主频120mhz与常规png解码绘图和本专利编解码绘图进行对比。2.根据权利要求1所述的一种特定png图像的源码高压缩与快速绘图方法,其特征在于,所述s4中,argb像素数据以pa、pr、pg、pb来标记。3.根据权利要求1所述的一种特定png图像的源码高压缩与快速绘图方法,其特征在于,所述s4中,rgb像素数据以sr、sg、sb为标记。4.根据权利要求1所述的一种特定png图像的源码高压缩与快速绘图方法,其特征在于,所述s4中,运算方法为:dr=sr*pa/255 pr,dg=sg*pa/255 pg;db=sb*pa/255 pb。5.根据权利要求1所述的一种特定png图像的源码高压缩与快速绘图方法,其特征在于,所述s1中,数据帧格式定义为:x坐标2字节 y坐标2字节 连续的非透明像素数量n 2字节 预处理的像素数据4字节*n。6.根据权利要求1所述的一种特定png图像的源码高压缩与快速绘图方法,其特征在于,所述s4中,常规像素数据按字节排序为b为蓝色1字节、g为绿色1字节、r为红色1字节、a为透明度1字节、0=完全透明、255=完全不透明,像素数据存储时,为4字节进行储存,存储的字节的计算公式为:b*a/255为蓝色1字节、g*a/255为绿色1字节、r*a/255为红色1字节、255-a为反转的透明度。7.根据权利要求1所述的一种特定png图像的源码高压缩与快速绘图方法,其特征在于,所述s1中,在扫描像素存储时,只存储每行的非透明像素的数据,所以存储的数据量较少,从而使文件大小变小。

技术总结
本发明公开了一种特定PNG图像的源码高压缩与快速绘图方法,包括以下步骤:S1:逐行从左到右,从上到下扫描图像的像素数据,以所见的首个非透明像素点起始坐标(X,Y),连续的非透明像素数量,连续的ARGB像素数据为1帧,然后继续扫描并存储图像帧,直至所有像素均被扫描,扫描后,对扫描的像素进行编码;S2:打开S1中所述的编码后的图像文件,顺序读取数据,首先得到要填充的图像像素的起始坐标(X,Y)。本发明针对那些大分辨率的PNG图像中仅有少量像素为非透明时,通过特定的编解码和预运算方法,可以实现更低存储空间和快速的解码绘图,只消耗很少的CPU资源,提高显示效率,满足使用需求。满足使用需求。


技术研发人员:吕申
受保护的技术使用者:普力生(厦门)机电有限公司
技术研发日:2022.02.08
技术公布日:2022/7/8
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献