一种图片文件存储方法及装置与流程

文档序号:18740276发布日期:2019-09-21 01:41阅读:222来源:国知局
一种图片文件存储方法及装置与流程

本公开涉及图像处理与文件存储领域,具体涉及一种图片文件存储方法及装置。



背景技术:

原始图片数据的存储,一般采用像素点顺序排列的方法进行存储,这样的存储方法在文件损坏的时候,会永久的损坏掉图片的一部分,同时在进行图片的分辨率调整的时候,也较为低效,而进行图像压缩,则会丢失部分图像的像素,使得原始的图像无法恢复,造成永久性的损害,本发明创造了一种新的图片元素数据的存储方法,可以克服上述的两个问题。



技术实现要素:

本公开提供一种图片文件存储方法及装置,将图像无损的分布式存储在分布式存储系统的各个存储节点中,并且在丢失部分图像分块的情况下,能够将原始图像进行高效无损的恢复。

为了实现上述目的,根据本公开的一方面,提供一种图片文件存储方法,所述方法包括以下步骤:

步骤1,将待处理图片还原为Bitmap格式的原始位图文件;

步骤2,获取原始位图文件的宽和高;

步骤3,设立互补图片副本的数量,互补图片副本的数量为N=max(原始位图文件的宽,原始位图文件的高)/256;

步骤4,原始位图文件的宽除以互补图片副本的数量,取整后得到分割矩形的宽,按照分割矩形的宽将原始位图文件的宽度分割为N个宽等分,在宽的划分位置以宽度等分线进行标记;

步骤5,原始位图文件的高除以互补图片副本的数量,取整后得到分割矩形的高,按照分割矩形的高将原始位图文件的高度分割为N个高等分,在高的划分位置以高度等分线进行标记;

步骤6,宽度等分线和高度等分线将原始位图文件分割为N*N个矩形,按照矩形将图片分割为N*N个矩形图片;

步骤7,从N*N个矩形图片中按图像矩阵的像素点的顺序进行取点,将所有矩形图片的第i个像素点组合成第i图片副本,依次组合成M个图片副本,i=1到M,M为矩形图片像素的个数;

步骤8,将M个图片副本按照1到M的顺序连接组合成为一个位图文件。

进一步地,在步骤1中,所述待处理图片的格式为bmp、jpg、png、tif、gif、psd中任意一种,原始位图文件(Bitmap格式,即位图)为bmp格式文件。

进一步地,在步骤3中,设立互补图片副本的数量,即将图片拆分成多少个可以互补的低分辨率的副本,互补图片副本为可以进行互补的低分辨率的副本,互补图片副本的数量为N,N=max(原始位图文件的宽,原始位图文件的高)/256,因为通用的最小缩略图为这个尺寸,以这个尺寸为基准,可以获得较好的综合性能,其中,max(原始位图文件的宽,原始位图文件的高)为原始位图文件的宽和原始位图文件的高之间的最大值,所述图片副本为Bitmap图片格式即为bmp格式文件。

进一步地,在步骤4中,所述取整为只取原始位图文件的宽除以压缩之后的宽的整数部分,所述宽度等分线为在原始位图文件的宽的边缘每隔分割矩形的宽的宽度标记的线,即宽度等分线为每隔距离W=W*i标记一条线,W为分割矩形的宽度,i是一个每次加1递增的变量,i初值为1。

进一步地,在步骤5中,所述取整为只取原始位图文件的高除以压缩之后的高的整数部分,所述高度等分线为在原始位图文件的高的边缘每隔分割矩形的高的高度标记的线,即高度等分线为每隔距离H=H*j标记一条线,H为分割矩形的高度,j是一个每次加1递增的变量,j初值为1。

进一步地,在步骤7中,将所有矩形图片的第i个像素点组合成第i图片副本的方法为,按照图像矩阵的像素点顺序,依次取每一个像素点组合成M个图片副本,图片副本的个数为像素点个数,取像素点的在合成图片副本中的位置依然为矩形图片所在的原来行列式,即原来矩形图片在宽度等分线和高度等分线将原始位图文件分割为N*N个矩形的行列,那么现在该矩形图片取的像素点的依然在组合成图片副本的相应行列,i=1到M,M为矩形图片像素的个数;

进一步地,在步骤8中,将M个图片副本按照1到M的顺序连接组合成为一个位图文件即将M个图片副本按照先后顺序,将边缘的像素进行拼接,先后顺序即宽度等分线和高度等分线将原始位图文件分割为N*N个矩形的行列。

本发明还提供了一种图片文件存储装置,所述装置包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序运行在以下装置的单元中:

位图还原单元,用于将待处理图片还原为Bitmap格式的原始位图文件;

位图宽高获取单元,用于获取原始位图文件的宽和高;

副本数量设置单元,用于设立互补图片副本的数量,互补图片副本的数量为N=max(原始位图文件的宽,原始位图文件的高)/256;

宽度等分线单元,用于在原始位图文件的宽除以互补图片副本的数量,取整后得到分割矩形的宽,按照分割矩形的宽将原始位图文件的宽度分割为N个宽等分,在宽的划分位置以宽度等分线进行标记;

高度等分线单元,用于原始位图文件的高除以互补图片副本的数量,取整后得到分割矩形的高,按照分割矩形的高将原始位图文件的高度分割为N个高等分,在高的划分位置以高度等分线进行标记;

矩形分割单元,用于通过宽度等分线和高度等分线将原始位图文件分割为N*N个矩形,按照矩形将图片分割为N*N个矩形图片;

图片副本组合单元,用于从N*N个矩形图片中按图像矩阵的像素点的顺序进行取点,将所有矩形图片的第i个像素点组合成第i图片副本,依次组合成M个图片副本,i=1到M,M为矩形图片像素的个数;

副本连接单元,用于将M个图片副本按照1到M的顺序连接组合成为一个位图文件。

本公开的有益效果为:本发明提供一种图片文件存储方法及装置,其有益效果为:

1.防止文件损坏,新的生成的文件,在出现部分损坏的时候,任然能还原出原始图片的所有信息,只是清晰度会受到影响;

2.新生成的图片文件在进行分辨率压缩的时候,可以直接选择几个副本进行合成,能极大的提升分辨率压缩输出的效率;

3.新生成的图片文件在进行分辨率扩展的时候,可以间隔的重复利用副本进行拼凑,能极大的提升分辨率扩展输出的效率。

附图说明

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

图1所示为一种图片文件存储方法的流程图;

图2所示为一种图片文件存储装置图。

具体实施方式

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

如图1所示为根据本公开的一种图片文件存储方法的流程图,下面结合图1来阐述根据本公开的实施方式的一种图片文件存储方法。

本公开提出一种图片文件存储方法,具体包括以下步骤:

步骤1,将待处理图片还原为Bitmap格式的原始位图文件;

步骤2,获取原始位图文件的宽和高;

步骤3,设立互补图片副本的数量,互补图片副本的数量为N=max(原始位图文件的宽,原始位图文件的高)/256;

步骤4,原始位图文件的宽除以互补图片副本的数量,取整后得到分割矩形的宽,按照分割矩形的宽将原始位图文件的宽度分割为N个宽等分,在宽的划分位置以宽度等分线进行标记;

步骤5,原始位图文件的高除以互补图片副本的数量,取整后得到分割矩形的高,按照分割矩形的高将原始位图文件的高度分割为N个高等分,在高的划分位置以高度等分线进行标记;

步骤6,宽度等分线和高度等分线将原始位图文件分割为N*N个矩形,按照矩形将图片分割为N*N个矩形图片;

步骤7,从N*N个矩形图片中按图像矩阵的像素点的顺序进行取点,将所有矩形图片的第i个像素点组合成第i图片副本,依次组合成M个图片副本,i=1到M,M为矩形图片像素的个数;

步骤8,将M个图片副本按照1到M的顺序连接组合成为一个位图文件。

进一步地,在步骤1中,所述待处理图片的格式为bmp、jpg、png、tif、gif、psd中任意一种,原始位图文件为bmp格式文件。

进一步地,在步骤3中,设立互补图片副本的数量,即将图片拆分成多少个可以互补的低分辨率的副本,互补图片副本为可以进行互补的低分辨率的副本,互补图片副本的数量为N,N=max(原始位图文件的宽,原始位图文件的高)/256,因为通用的最小缩略图为这个尺寸,以这个尺寸为基准,可以获得较好的综合性能,其中,max(原始位图文件的宽,原始位图文件的高)为原始位图文件的宽和原始位图文件的高之间的最大值,所述图片副本为Bitmap图片格式即为bmp格式文件。

进一步地,在步骤4中,所述取整为只取原始位图文件的宽除以压缩之后的宽的整数部分,所述宽度等分线为在原始位图文件的宽的边缘每隔分割矩形的宽的宽度标记的线,即宽度等分线为每隔距离W=W*i标记一条线,W为分割矩形的宽度,i是一个每次加1递增的变量,i初值为1。

进一步地,在步骤5中,所述取整为只取原始位图文件的高除以压缩之后的高的整数部分,所述高度等分线为在原始位图文件的高的边缘每隔分割矩形的高的高度标记的线,即高度等分线为每隔距离H=H*j标记一条线,H为分割矩形的高度,j是一个每次加1递增的变量,j初值为1。

进一步地,在步骤7中,将所有矩形图片的第i个像素点组合成第i图片副本的方法为,按照图像矩阵的像素点顺序,依次取每一个像素点组合成M个图片副本,图片副本的个数为像素点个数,取像素点的在合成图片副本中的位置依然为矩形图片所在的原来行列式,即原来矩形图片在宽度等分线和高度等分线将原始位图文件分割为N*N个矩形的行列,那么现在该矩形图片取的像素点的依然在组合成图片副本的相应行列,i=1到M,M为矩形图片像素的个数;

进一步地,在步骤8中,将M个图片副本按照1到M的顺序连接组合成为一个位图文件即将M个图片副本按照先后顺序,将边缘的像素进行拼接,先后顺序即宽度等分线和高度等分线将原始位图文件分割为N*N个矩形的行列。

本公开的实施例提供的一种图片文件存储装置,如图2所示为本公开的一种图片文件存储装置图,该实施例的一种图片文件存储装置包括:处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种图片文件存储装置实施例中的步骤。

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

位图还原单元,用于将待处理图片还原为Bitmap格式的原始位图文件;

位图宽高获取单元,用于获取原始位图文件的宽和高;

副本数量设置单元,用于设立互补图片副本的数量,互补图片副本的数量为N=max(原始位图文件的宽,原始位图文件的高)/256;

宽度等分线单元,用于在原始位图文件的宽除以互补图片副本的数量,取整后得到分割矩形的宽,按照分割矩形的宽将原始位图文件的宽度分割为N个宽等分,在宽的划分位置以宽度等分线进行标记;

高度等分线单元,用于原始位图文件的高除以互补图片副本的数量,取整后得到分割矩形的高,按照分割矩形的高将原始位图文件的高度分割为N个高等分,在高的划分位置以高度等分线进行标记;

矩形分割单元,用于通过宽度等分线和高度等分线将原始位图文件分割为N*N个矩形,按照矩形将图片分割为N*N个矩形图片;

图片副本组合单元,用于从N*N个矩形图片中按图像矩阵的像素点的顺序进行取点,将所有矩形图片的第i个像素点组合成第i图片副本,依次组合成M个图片副本,i=1到M,M为矩形图片像素的个数;

副本连接单元,用于将M个图片副本按照1到M的顺序连接组合成为一个位图文件。

所述一种图片文件存储装置可以运行于桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备中。所述一种图片文件存储装置,可运行的装置可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种图片文件存储装置的示例,并不构成对一种图片文件存储装置的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种图片文件存储装置还可以包括输入输出设备、网络接入设备、总线等。

所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种图片文件存储装置运行装置的控制中心,利用各种接口和线路连接整个一种图片文件存储装置可运行装置的各个部分。

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

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

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