1.一种基于隐写的数据压缩方法,其特征在于:包括如下步骤:将待压缩文件中的部分文件,利用隐写算法写到另一部分文件中,并为载体文件添加隐写标识;
对另一部分文件利用常规压缩算法进行压缩得到压缩包;
所述的将待压缩文件中的部分文件,利用隐写算法写到另一部分文件中包括:将待压缩文件分为载体文件和隐写文件;
逐一遍历载体文件和隐写文件,将遍历到的载体文件记为A,其他载体文件记为X,将遍历到的隐写文件记为B,其他隐写文件记为Y;
计算文件A和X的大小得到a1和x1以及它们的隐写容量得到a2和x2;
计算文件B和Y的大小得到b和y;
根据a1、x1、a2、x2、b以及y的数值大小确定待隐写文件和载体文件;
从遍历的结果中挑出最高压缩比的待隐写文件和载体文件作为最终的隐写文件和载体文件。
2.如权利要求1所述的基于隐写的数据压缩方法,其特征在于:所述的根据a1、x1、a2、x2、b以及y的数值大小确定待隐写文件和载体文件包括:若a2≥x1+b+y,将文件X、文件B以及文件Y隐写至载体文件A中;
若x2≥a1+b+y,将文件A、文件B以及文件Y隐写至载体文件X中;
若a2<x1+b+y且x2<a1+b+y且a2+x2≥b+y,将文件B和文件Y隐写至载体文件A和文件X中;
若a2+x2<b+y且b≥y:当a2+x2≥b时,将文件B隐写至文件A和文件X中,文件Y不隐写;当y≤a2+x2<b时,将文件Y隐写至文件A和文件X中,文件B不隐写;当a2+x2<y时,则不具备隐写压缩条件;
若a2+x2<b+y且b<y:当a2+x2≥y时,将文件Y隐写至文件A和文件X中,文件B不隐写;当b≤a2+x2<y时,将文件B隐写至文件A和文件X中,文件Y不隐写;当a2+x2<b时,则不具备隐写压缩条件。
3.如权利要求1所述的基于隐写的数据压缩方法,其特征在于:所述的从遍历的结果中挑出最高压缩比的待隐写文件和载体文件作为最终的隐写文件和载体文件中的压缩比通过如下步骤计算:对于遍历到的载体文件A和隐写文件B,压缩比等于确定的待隐写文件大小和总文件大小的比值。
4.一种针对权利要求1中基于隐写的数据压缩方法得到的压缩包进行解压缩方法,其特征在于:包括如下步骤:利用常规解压缩算法对压缩包进行解压缩得到多个文件;
利用隐写算法对应的提取算法,从包含隐写标识的文件中提取出隐写文件,解压缩得到的多个文件以及提取的隐写文件即为压缩包对应的解压缩文件。
5.一种计算机可读存储介质,其特征在于:其上存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1‑3中任一项所述的基于隐写的数据压缩方法或如权利要求4所述的解压缩方法。
6.一种电子设备,其特征在于:包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1‑3中任一项所述的基于隐写的数据压缩方法或如权利要求4所述的解压缩方法。