PNG图像解码方法及其硬件架构、电子设备、存储介质技术

技术编号:38839325 阅读:12 留言:0更新日期:2023-09-17 09:54
本发明专利技术公开了一种PNG图像解码方法及其硬件架构、电子设备、存储介质。该方法包括:对获取的待解码数据进行文件结构解析处理得到PNG图片参数信息和压缩数据块;根据PNG图片参数信息和外部带宽使用情况,配置字典缓存单元和行像素缓存单元中单口静态随机存储器的数量;对压缩数据块进行Inflate解码处理,得到解码特征数据;根据解码特征数据的数据类型确定解码数据,并将解码数据写入字典缓存单元;根据PNG图片参数信息对解码数据进行数据反过滤处理得到原始像素数据;根据预设的像素缓存模式、PNG图片参数信息和图像宽度阈值对原始像素数据进行数据写入处理。能够节省硬件成本,提高静态随机存储器的利用率以及解码效率。提高静态随机存储器的利用率以及解码效率。提高静态随机存储器的利用率以及解码效率。

【技术实现步骤摘要】
PNG图像解码方法及其硬件架构、电子设备、存储介质


[0001]本专利技术涉及图片解压缩
,尤其是一种PNG图像解码方法及其硬件架构、电子设备、存储介质。

技术介绍

[0002]随着图像处理技术及计算机技术的快速发展,PNG(Portable Network Graphic Format,流式网络图形格式)图像作为一种针对位图的新型的图像文件存储格式诞生,增加了GIF文件格式所不具备的一些特性,其目的是企图替代GIF和TIFF文件格式的图像。PNG解码主要包括:文件结构解析、Inflate解码和反过滤处理。其中,Inflate解码需要从已经解码的历史数据(即字典数据)中读取参考数据进行解码任务;反过滤处理则可能需要参考上一行像素的缓存数据从而得到原始图像的像素数据。因此,PNG硬件解码需要缓存历史数据和行像素数据。
[0003]相关技术中,通过设置固定SRAM来缓存字典数据和行像素数据,但会导致解码应用场景受限、SRAM利用率不高。

技术实现思路

[0004]以下是对本文详细描述的主题的概述。
[0005]本专利技术实施例提供了一种PNG图像解码方法及其硬件架构、电子设备、存储介质,能够通过灵活分配字典缓存单元和行像素缓存单元的内存大小,从而节省硬件成本,提高静态随机存储器的利用率以及解码不同尺寸的PNG图像时的解码效率。
[0006]第一方面,本专利技术实施例提供了一种PNG图像解码方法,应用于PNG图像解码硬件架构,所述PNG图像解码硬件架构包括内存管理模块,其中,所述内存管理模块包括字典缓存单元和行像素缓存单元;
[0007]所述PNG图像解码方法包括:
[0008]对获取的待解码数据进行文件结构解析处理,得到PNG图片参数信息和压缩数据块;
[0009]根据所述PNG图片参数信息和外部带宽使用情况,配置所述字典缓存单元和行像素缓存单元中单口静态随机存储器的数量;
[0010]对所述压缩数据块进行Inflate解码处理,得到解码特征数据;
[0011]根据所述解码特征数据的数据类型确定解码数据,并将所述解码数据写入所述字典缓存单元;
[0012]从所述字典缓存单元读取待反过滤的所述解码数据,根据所述PNG图片参数信息对所述解码数据进行数据反过滤处理得到原始像素数据;
[0013]根据预设的像素缓存模式、所述PNG图片参数信息和图像宽度阈值对所述原始像素数据进行数据写入处理,以使所述原始像素数据作为下一次解码任务中反过滤处理的参考数据。
[0014]第二方面,本专利技术实施例提供了一种PNG图像解码硬件架构,其特征在于,包括:
[0015]内存管理模块,包括字典缓存单元和行像素缓存单元;
[0016]主控模块,用于对获取的待解码数据进行文件结构解析处理,得到PNG图片参数信息和压缩数据块;根据所述PNG图片参数信息和外部带宽使用情况,配置所述字典缓存单元和行像素缓存单元中单口静态随机存储器的数量;
[0017]Inflate解码模块,用于对所述压缩数据块进行Inflate解码处理,得到解码特征数据;根据所述解码特征数据的数据类型确定解码数据,并将所述解码数据写入所述字典缓存单元;
[0018]反过滤模块,用于从所述字典缓存单元读取待反过滤的所述解码数据,根据所述PNG图片参数信息对所述解码数据进行数据反过滤处理得到原始像素数据;根据预设的像素缓存模式、所述PNG图片参数信息和图像宽度阈值对所述原始像素数据进行数据写入处理,以使所述原始像素数据作为下一次解码任务中反过滤处理的参考数据。
[0019]第三方面,本专利技术实施例提供了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的PNG图像解码方法。
[0020]第四方面,本专利技术实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于被处理器执行时实现如第一方面所述的PNG图像解码方法。
[0021]本专利技术实施例包括:在利用PNG图像解码硬件架构进行解码的过程中,首先,对获取的待解码数据进行文件结构解析处理,得到PNG图片参数信息和压缩数据块;而后,根据PNG图片参数信息和外部带宽使用情况,配置字典缓存单元和行像素缓存单元中单口静态随机存储器的数量,通过灵活分配字典缓存单元和行像素缓存单元的内存大小,能在相同的硬件资源条件下,提高静态随机存储器的利用率;接着,对压缩数据块进行Inflate解码处理,得到解码特征数据;然后,根据解码特征数据的数据类型确定解码数据,并将解码数据写入字典缓存单元;而后,从字典缓存单元读取待反过滤的解码数据,根据PNG图片参数信息对解码数据进行数据反过滤处理得到原始像素数据;最后,根据预设的像素缓存模式、PNG图片参数信息和图像宽度阈值对原始像素数据进行数据写入处理,以使原始像素数据作为下一次解码任务中反过滤处理的参考数据,有利于提高解码不同尺寸的PNG图像时的解码效率。即是说,本专利技术实施例的方案能够通过灵活分配字典缓存单元和行像素缓存单元的内存大小,从而节省硬件成本,提高静态随机存储器的利用率以及解码不同尺寸的PNG图像时的解码效率。
[0022]专利技术的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点可通过在说明书以及附图中所特别指出的结构来实现和获得。
附图说明
[0023]图1是本专利技术一个实施例提供的用于执行PNG图像解码方法的PNG图像解码硬件架构的示意图;
[0024]图2是本专利技术一个实施例提供的PNG图像解码硬件架构的具体结构示意图;
[0025]图3是本专利技术一个实施例提供的内存管理模块的缓存管理示意图;
[0026]图4是解码1k
×
1k RGBA PNG图片时内存管理模块中SRAM的分配情况示意图;
[0027]图5是解码2k
×
1k RGBA PNG图片时内存管理模块中SRAM的分配情况示意图;
[0028]图6是本专利技术一个实施例提供的PNG图像解码方法的流程示意图;
[0029]图7是图6中步骤S120的具体流程示意图;
[0030]图8是图6中步骤S140的具体流程示意图;
[0031]图9是本专利技术一个实施例提供的图像的行像素示意图;
[0032]图10是图6中步骤S160的具体流程示意图;
[0033]图11是本专利技术一个实施例提供的电子设备的硬件结构示意图。
具体实施方式
[0034]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。
[0035]需要说明的是,在本专利技术的描述中虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于流程图中的顺序执行所示出或描述的步骤。在本专利技术的描述中,若干的含义是一个或者多个,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种PNG图像解码方法,其特征在于,应用于PNG图像解码硬件架构,所述PNG图像解码硬件架构包括内存管理模块,其中,所述内存管理模块包括字典缓存单元和行像素缓存单元;所述PNG图像解码方法包括:对获取的待解码数据进行文件结构解析处理,得到PNG图片参数信息和压缩数据块;根据所述PNG图片参数信息和外部带宽使用情况,配置所述字典缓存单元和行像素缓存单元中单口静态随机存储器的数量;对所述压缩数据块进行Inflate解码处理,得到解码特征数据;根据所述解码特征数据的数据类型确定解码数据,并将所述解码数据写入所述字典缓存单元;从所述字典缓存单元读取待反过滤的所述解码数据,根据所述PNG图片参数信息对所述解码数据进行数据反过滤处理得到原始像素数据;根据预设的像素缓存模式、所述PNG图片参数信息和图像宽度阈值对所述原始像素数据进行数据写入处理,以使所述原始像素数据作为下一次解码任务中反过滤处理的参考数据。2.根据权利要求1所述PNG图像解码方法,其特征在于,所述内存管理模块包括:多个单口静态随机存储器和接口控制模块,所述接口控制模块与所述多个单口静态随机存储器电连接;所述PNG图片参数信息包括图像宽度,所述根据所述PNG图片参数信息和外部带宽使用情况,配置所述字典缓存单元和行像素缓存单元中单口静态随机存储器的数量,包括:在所述图像宽度大于预设的宽度阈值的情况下,发送第一配置控制信号至所述接口控制模块,将全部的所述单口静态随机存储器分配至所述字典缓存单元;在所述图像宽度小于或等于所述宽度阈值的情况下,发送第二配置控制信号至所述接口控制模块,将第一数量的所述单口静态随机存储器分配至所述行像素缓存单元,将剩余的第二数量的所述单口静态随机存储器分配至所述字典缓存单元,其中,所述第一数量由所述图像宽度和所述外部带宽使用情况确定。3.根据权利要求1所述PNG图像解码方法,其特征在于,所述数据类型包括绝对数据和相对数据,所述根据所述解码特征数据的数据类型确定解码数据,并将所述解码数据写入所述字典缓存单元,包括:在所述数据类型为绝对数据的情况下,确定所述绝对数据为解码数据,并直接将所述解码数据写入所述内存管理模块的所述字典缓存单元;在所述数据类型为相对数据的情况下,根据解码所述相对数据所需要读取的参考数据的存储位置读取所述参考数据;将所述参考数据确定为解码数据并根据当前的写地址将所述解码数据写入所述字典缓存单元。4.根据权利要求3所述PNG图像解码方法,其特征在于,所述PNG图像解码硬件架构还包括:数据搬运模块、总线模块和动态随机存储器,所述数据搬运模块分别与所述内存管理模块和所述动态随机存储器电连接,所述总线模块设置在所述数据搬运模块和所述动态随机存储器之间;所述根据解码所述相对数据所需要读取的参考数据的存储位置读取所述参考数据,包
...

【专利技术属性】
技术研发人员:潘远星原顺
申请(专利权)人:广东匠芯创科技有限公司
类型:发明
国别省市:

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

1