一种预防图像内存溢出方法及系统与流程

文档序号:20707318发布日期:2020-05-12 16:38阅读:216来源:国知局
一种预防图像内存溢出方法及系统与流程

本公开涉及终端图片显示技术、图像处理技术和进程调度技术领域,具体涉及一种预防图像内存溢出方法及系统。



背景技术:

近年来,智能手机、平板电脑、数码摄像机的摄像头像素和分辨率急剧提升,照片图像、ps图像处理软件、3dmax渲染图像等的图像也越来越大,其大小甚至动辄上g的容量。在一些移动设备或者小型物联网终端设备上的存储器容量不大,如果直接加载大图片,时常会出现图像溢出的情况,内存较大的移动设备也不能无限制的加载大型图像。目前的做法一般是在显示图片之前,对图片进行处理,把图片压缩为最合适的尺寸和大小再进行显示;或者是另一种做法则是等比例的将图像自适应的压缩成合适尺寸的图片;但是这些方法一般会导致图片失真,使得图像的显示模糊。



技术实现要素:

本公开提供一种预防图像内存溢出方法及系统,将图像进行冗余小波变换分解多个子图像构成的子图像序列;检测存储器的剩余的可用容量;对图像进行分辨率解析得到对比度阈值;并根据可用容量根据对比度阈值按照子图像序列中各个元素的顺序进行图像叠加得到自适应图像。

本公开的目的是针对上述问题,提供一种预防图像内存溢出方法,所述方法包括以下步骤:

s100:将图像进行冗余小波变换分解多个子图像构成的子图像序列;

s200:检测存储器的剩余的可用容量;

s300:对图像进行分辨率解析得到对比度阈值;

s400:根据对比度阈值按照子图像序列中各个元素的顺序进行图像叠加,当叠加后的图像大小超过可用容量的t倍时得到自适应图像;(t为阈值,取值范围0到1,设置为0.5)

s500:输出自适应图像。

进一步地,在s100中,将图像进行冗余小波变换分解多个子图像构成的子图像序列的方法为:对图像map进行冗余小波变换分解得到分解后的子图像序列{m1(pixel),m2(pixel),...,mi(pixel),...,ml(pixel);fl(pixel)},其中,pixel为图像中的像素点,l为分解的层数,mi(pixel)为分解后的高频分量构成的高频子图像,fl(pixel)为冗余小波变换的高频分量的同一个层分解得到的低频分量构成的低频子图像,mi(pixel)包括了图像的亮度、前景特征信息,fl(pixel)则包括了图像背景信息。

进一步地,在s300中,对图像进行分辨率解析得到对比度阈值的方法为:

将高频子图像序列的集合表示为h={mi(pixel),i=1,2,...,l};设表示集合h中的各个元素mi(pixel)进行聚类得到的类集,其中,表示聚类,kl表示聚类数,i=1,2,...,l表示分解的层数;

将图像对比度c定义为:式中,g表示图像的局部灰度,gb表示图像的局部低频分量的亮度,g-gb为高频分量,根据此原理,定义小波域对比度如下:

mi(pixel)为mi(pixel)对应的高频分量,fl(pixel)为fl(pixel)对应的低频分量的亮度;

将对比度阈值可定义为:tn=||ci+1(pixel)-ci(pixel)||,||·||为欧氏距离。

进一步地,在s400中,根据对比度阈值按照子图像序列中各个元素的顺序进行图像叠加的方法为:

设f(pixel)表示叠加后的图像,叠加方法如下式所示:

f(pixel)=η(δ)mi(pixel)+[1-η(δ)]mi+1(pixel),i=1,2,...,l,当叠加后的图像大小超过可用容量的t倍时,停止叠加,由叠加后的图像得到自适应图像;t为取值范围0到1的阈值,根据设备实际的情况进行调整;

δ=[ci+1(pixel)-ci(pixel)]/[ci+1(pixel)+ci(pixel)],tn为对比度阈值;当子图像对比度差别较大时,对比度差别由对比度阈值tn控制,使η(δ)的值为1或0;当差别较小时,使η(δ)=1/(1+e)。

本发明还提供了一种预防图像内存溢出系统,所述系统包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序运行在以下系统的单元中:

图像分解单元,用于将图像进行冗余小波变换分解多个子图像构成的子图像序列;

容量检测单元,用于检测存储器的剩余的可用容量;

分辨率解析单元,用于对图像进行分辨率解析得到对比度阈值;

图像叠加单元,用于根据对比度阈值按照子图像序列中各个元素的顺序进行图像叠加,当叠加后的图像大小超过可用容量的t倍时得到自适应图像;

图像输出单元,用于输出自适应图像。

本公开的有益效果为:本发明公开了一种预防图像内存溢出方法,通过图像叠加的方式极大的降低了图像在内存中溢出的可能性,并且极大的降低了低容量的显示设备输出后图片的失真,避免了图像的模糊,最大程度的保留了图像的对比度和细节,从而提升了用户体验。

附图说明

通过对结合附图所示出的实施方式进行详细说明,本公开的上述以及其他特征将更加明显,本公开附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:

图1所示为本公开的一种预防图像内存溢出方法的流程图;

图2所示为本公开实施方式的一种预防图像内存溢出系统。

具体实施方式

以下将结合实施例和附图对本公开的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本公开的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

如图1所示为根据本公开的一种预防图像内存溢出方法的流程图,下面结合图1来阐述根据本公开的实施方式的方法。

本公开提出一种预防图像内存溢出方法,具体包括以下步骤:

s100:将图像进行冗余小波变换分解多个子图像构成的子图像序列;

s200:检测存储器的剩余的可用容量;

s300:对图像进行分辨率解析得到对比度阈值;

s400:根据对比度阈值按照子图像序列中各个元素的顺序进行图像叠加,当叠加后的图像大小超过可用容量的t倍时得到自适应图像;(t为阈值,取值范围0到1,设置为0.5)

s500:输出自适应图像。

进一步地,在s100中,将图像进行冗余小波变换分解多个子图像构成的子图像序列的方法为:对图像map进行冗余小波变换分解得到分解后的子图像序列{m1(pixel),m2(pixel),...,mi(pixel),...,ml(pixel);fl(pixel)},其中,pixel为图像中的像素点,l为分解的层数,mi(pixel)为分解后的高频分量构成的高频子图像,fl(pixel)为冗余小波变换的高频分量的同一个层分解得到的低频分量构成的低频子图像,mi(pixel)包括了图像的亮度、前景特征信息,fl(pixel)则包括了图像背景信息。

进一步地,在s300中,对图像进行分辨率解析得到对比度阈值的方法为:

将高频子图像序列的集合表示为h={mi(pixel),i=1,2,...,l};设表示集合h中的各个元素mi(pixel)进行聚类得到的类集,其中,表示聚类,kl表示聚类数,i=1,2,...,l表示分解的层数;

将图像对比度c定义为:式中,g表示图像的局部灰度,gb表示图像的局部低频分量的亮度,g-gb为高频分量,根据此原理,定义小波域对比度如下:

mi(pixel)为mi(pixel)对应的高频分量,fl(pixel)为fl(pixel)对应的低频分量的亮度;

将对比度阈值可定义为:tn=||ci+1(pixel)-ci(pixel)||,||·||为欧氏距离。

进一步地,在s400中,根据对比度阈值按照子图像序列中各个元素的顺序进行图像叠加的方法为:

设f(pixel)表示叠加后的图像,叠加方法如下式所示:

f(pixel)=η(δ)mi(pixel)+[1-η(δ)]mi+1(pixel),i=1,2,...,l,当叠加后的图像大小超过可用容量的t倍时,停止叠加,由叠加后的图像得到自适应图像;t为取值范围0到1的阈值,根据设备实际的情况进行调整;

δ=[ci+1(pixel)-ci(pixel)]/[ci+1(pixel)+ci(pixel)],tn为对比度阈值;当子图像对比度差别较大时,对比度差别由对比度阈值tn控制,使η(δ)的值为1或0;当差别较小时,使η(δ)=1/(1+e)。

本公开的实施例提供的一种预防图像内存溢出系统,如图2所示为本公开的一种预防图像内存溢出系统结构图,该实施例的一种预防图像内存溢出系统包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种预防图像内存溢出系统实施例中的步骤。

所述系统包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序运行在以下系统的单元中:

图像分解单元,用于将图像进行冗余小波变换分解多个子图像构成的子图像序列;

容量检测单元,用于检测存储器的剩余的可用容量;

分辨率解析单元,用于对图像进行分辨率解析得到对比度阈值;

图像叠加单元,用于根据对比度阈值按照子图像序列中各个元素的顺序进行图像叠加,当叠加后的图像大小超过可用容量的t倍时得到自适应图像;

图像输出单元,用于输出自适应图像。

所述一种预防图像内存溢出系统可以运行于桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备中。所述一种预防图像内存溢出系统可运行的系统可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种预防图像内存溢出系统的示例,并不构成对一种预防图像内存溢出系统的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种预防图像内存溢出系统还可以包括输入输出设备、网络接入设备、总线等。所称处理器可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种预防图像内存溢出系统运行系统的控制中心,利用各种接口和线路连接整个一种预防图像内存溢出系统可运行系统的各个部分。

所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种预防图像内存溢出系统的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

尽管本公开的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,而是应当将其视作是通过参考所附权利要求考虑到现有技术为这些权利要求提供广义的可能性解释,从而有效地涵盖本公开的预定范围。此外,上文以发明人可预见的实施例对本公开进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本公开的非实质性改动仍可代表本公开的等效改动。

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