本发明属于图像信息安全和数字图像信号处理交叉领域,涉及一种图像隐藏和恢复的方法、设备和存储介质。
背景技术:
传统信息隐藏方法一般采用修改式嵌入方法,如关于密写的文献:yangt,2017(yangt,chenh.matrixembeddinginsteganographywithbinaryreed–mullercodes[j].ietimageprocessing,2017,11(7):522-529),毛炳华,2019(毛炳华,王子驰,张新鹏.基于dct域相关性的非对称jpeg隐写[j].计算机科学,2019,46(01):203-207);分存的文献:邵利平,2018(邵利平,乐志芳.基于dct的多门限渐进秘密图像分存方案[j].信息网络安全,2018(3):54-62),黄燕燕,2018(黄燕燕,邵利平.结合emd-cl嵌入的多载体密图分存方法[j].中国图象图形报,2018,23(8):1108-1130),欧阳显斌,2017(欧阳显斌,邵利平,乐志芳.非等量备份和双认证自修复有限域图像分存[j].软件学报,2017,28(12):3306-3346)以及水印的文献:suq,2017(suq,chenb.robustcolorimagewatermarkingtechniqueinthespatialdomain[j].softcomputing,2017.22(1):91-106)等。但修改式嵌入不可避免地会在载体中留下修改痕迹,难以抵抗密写分析的检测。为了解决这个问题,人们提出了搜索式无载体信息隐藏,相对于传统修改嵌入式信息隐藏,它强调的是不需要额外的嵌入载体,直接由秘密信息驱动,通过预先建立的大规模自然载体数据集中选取合适的自然载体来表达秘密信息,例如,zhouzl,2015(zhouzl,sunhy,etal.coverlessimagesteganographywithoutembedding[c]//internationalconferenceoncloudcomputingandsecurity.springerinternationalpublishing,2015:123-132),吴建斌,2018(吴建斌,贾炎柯,刘逸雯.基于图像编码及拼接的无载体信息隐藏[j].华南理工大学学报(自然科学版),2018,46(05):38-44),周志立,2016(周志立,曹燚,孙星明.基于图像bag-of-words模型的无载体信息隐藏[j].应用科学学报,2016,34(5):527-536)。
但这类方法存在的普遍问题是,利用自然未修改载体表达不相关秘密信息,单载体嵌入容量极低,从大规模自然载体数据集中寻找合适未修改载体,需要搜索的数据量呈几何级数增加,即使借助倒排索引,存储和维护也是一个沉重的负担。
还有一些研究者提出了纹理生成式信息隐藏,主体思想是生成自然界中不存在的图像,使得攻击者找不到追溯的根源。主要包括纹理构造式信息隐藏和纹理拼接式信息隐藏。其中纹理构造式信息隐藏是通过模拟纹理生成的方式来产生一些类自然纹理来对秘密信息进行掩盖,例如:xuj,2015(xuj,maox,jinx,etal.hiddenmessageinadeformation-basedtexture[j].visualcomputerinternationaljournalofcomputergraphics,2015,31(12):1653-1669),qianzx,2018(qianzx,panl,lis,zhangxp.steganographybyconstructingmarblingtexture[c]//2018chinainformationhidingworkshop(cihw2018),guangzhou,2018:17-35);纹理拼接式隐藏是通过给定样例纹理填充的方式来生成表达秘密信息的含密纹理,例如,otorih,2007(otorih,kuriyamas.data-embeddabletexturesynthesis[c]//smartgraphics,internationalsymposium,sg,kyoto,japan,june.dblp,2007:146-157)给出的基于局部2值模式的合成纹理信息隐藏,qinz,2017(qinz,lim,wub.robuststeganographyviapatch-basedtexturesynthesis[c]//internationalconferenceoninternetmultimediacomputing&service.springer,singapore,2017:429-439)给出的基于缝合线算法的合成纹理信息隐藏。
纹理生成式隐藏方法的普遍问题是通过给定的样例图进行纹理拼接,易产生拼接痕迹,从而容易引起攻击者的怀疑。另外,这类方法所生成图像都是简单质地的非自然纹理图像,不能对秘密信息进行充分有效地掩盖。
为生成有意义的掩体图像,人们提出了以马赛克艺术图像为嵌密载体的隐藏策略,通常将密图划分为小块作为字典,通过对有意义掩体图像的相似块替换来隐藏密图。例如:laii,2011(laii,tsaiwh.secret-fragment-visiblemosaicimage-anewcomputerartanditsapplicationtoinformationhiding[j].ieeetransactionsoninformationforensics&security,2011,6(3):936-945)通过在图像库中选取与密图特征相似的公开图像,利用相似块替换将密图伪装成公开图像,zhaisy,2015(zhaisy,lif,changcc,etal.ameaningfulschemeforsharingsecretimagesusingmosaicimages[j].internationaljournalofnetworksecurity,2015,17(5):643-649)将密图分为4份放在预先选择的4张掩体图中,但:laii,2011和zhaisy,2015的方法都需选取与密图相似的公开图像作为掩体。针对此问题,singhavidg,2015(singhavidg,chaturpn.anewmethodforcreationofsecret-fragment-visible-mosaicimageforsecurecommunication[c]//internationalconferenceoninnovationsininformation(iciii2015).ieee,2015:1-5)将密图和掩体小块按标准差升序排列,通过引入可逆颜色变换将密图小块伪装成掩体小块。刘小凯,2018(刘小凯,姚恒,秦川.基于图像块分类阈值优化的改进可逆图像伪装[j].应用科学学报,2018,36(2):237-246)引入优化分类阈值算法来改进singhavidg,2015,使得生成伪装图像和目标图像的均方差最小。
但这类方法依然存在着拼接痕迹,另外这些方法为嵌入重构秘密信息图像的相关参数,如密图小块位置信息、索引信息、密图小块与掩体小块之间的均值差以及密图小块的旋转角度等,都采用了修改式嵌入的方法,因此不能避免传统修改式信息隐藏本身固有的修改痕迹问题。
技术实现要素:
本发明的目的在于克服上述现有技术的缺点,提供一种图像隐藏和恢复的方法、设备和存储介质。
为达到上述目的,本发明采用以下技术方案予以实现:
一种图像隐藏方法,包括以下步骤:
s1:初始化预设密钥k1,k2,k3和k4,从灰度区间[0,2n-1]选取连续且不重合的p个区间,并在每个区间内选择1个值作为gi,i=0,1,…,p-1;
s2:输入分辨率为m×n的n阶灰度图像c=(cx,y)m×n,cx,y∈{0,1,…,2n-1},将灰度图像c转换为等大的p阶半色调图像c′=(c′x,y)m×n;
s3:将密钥k1作为随机数种子,对每个gi,i=0,1,…,p-1随机生成r个分辨率为h×w的样本小块
s4:以密钥k2为随机数种子,将所有样本小块按均值聚类为p个类别s0,s1,…,sp-1,剔除每个类别sk中灰度值不为gk的样本小块,其中k=0,1,…,p-1;
s5:将每个类别sk按均值聚类划分为2个类别sk,0和sk,1,从sk,0和sk,1中分别选取离sk,0和sk,1聚类中心位置最近的样本小块作为编码样本小块ak,0和ak,1;
s6:以密钥k3为随机数种子生成分辨率为m×n的2值参考图s=(sx,y)m×n,sx,y∈{0,1},记秘密信息是长度为l的2值比特位串b=(bi)l,bi∈{0,1},通过密钥k4确定随机坐标序列t=((xi,yi))l,其中(xi,yi)∈m×n且随机坐标序列t中坐标两两不等,初始化空白含密掩体图
s7:对于
s8:重复s7至
本发明图像隐藏方法进一步的改进在于:
所述s1的具体方法为:
s1-1:输入初始系统参数μ∈[3.57,4],初始密钥x0∈(0,1)和消除暂态效应的滤除迭代次数it,it>0,通过式(1)连续生成的4个随机数作为预设密钥k1,k2,k3和k4:
ki=μx0(1-x0)(1)
s1-2:从灰度区间[0,2n-1]选取p个区间,分别为[p0,p1],(p1,p2],…,(pp-1,pp],其中pi,i=0,1,…,p通过式(2)进行确定:
s1-3:通过式(3)从p个区间中的每个区间内选择1个值作为gi,i=0,1,…,p-1:
其中,符号
所述s2的具体方法为:
s2-1:输入分辨率为m×n的n阶灰度图像c=(cx,y)m×n,cx,y∈{0,1,…,2n-1};
s2-2:通过式(4)计算灰度图像c中的每个元素cx,y的量化值c′x,y,通过式(5)计算δx,y;
c′x,y=gi,cx,y∈(pi,pi+1],i∈[1,p-1]|cx,y∈[p0,p1],i=0(4)
其中,符号“|”表示或;
δx,y=c′x,y-cx,y(5)
s2-3:通过式(6)将δx,y向cx,y周围8邻域未经式(4)处理的像素cu,v,(u,v)∈m×n且(u,v)∈{(x-1,y-1),(x-1,y),(x-1,y+1),(x,y-1),(x,y+1),(x+1,y-1),(x+1,y),(x+1,y+1)}进行扩散,其中nc是cx,y周围8邻域未经式(4)处理的像素数量;
其中,函数range(x,0,2n-1)用于将x量化到[0,2n-1]之间,range(x,0,2n-1)函数的作用是若x<0,则输出0;若x>2n-1,则输出2n-1;若x∈[0,2n-1],则输出x;
s2-4:重复s2-2~s2-3至灰度图像c中的所有元素cx,y处理完毕,得到与灰度图像c等大的p阶半色调图像c′=(c′x,y)m×n;
所述s3的具体方法为:
将密钥k1作为随机数种子,通过式(7)对每个gi,i=0,1,…,p-1随机生成r个分辨率为h×w的样本小块
式(7)执行的具体功能为:
初始化分辨率为h×w的空白图像
其中,符号
随机生成长度为x的随机坐标序列u=((xk,yk))x,其中(xk,yk)∈h×w且u中坐标两两不等;
对于随机坐标序列u中的每个坐标(xk,yk),置空白图像
所述s4的具体方法为:
s4-1:对每个gi,i=0,1,…,p-1随机生成的r个分辨率为h×w的样本小块
s4-2:通过式(9)计算
其中,
s4-3:记
s4-4:重复s4-2~s4-3,至当前重复结果与上次一致或达到预设重复次数,得到s0,s1,…,sp-1,并将sk中灰度值不为gk的样本小块删除,其中k=0,1,…,p-1;
所述s7的具体方法为:
s7-1:若(x,y)∈t且(x,y)=(xi,yi),置k为c′x,y处的k值,通过式(13)确定b′i,然后将
s7-2:若
本发明又一方面,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述图像隐藏方法的步骤。
本发明又一方面,一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述图像隐藏方法的步骤。
本发明又一方面,一种图像恢复方法,包括以下步骤:
r1:初始化预设密钥k1,k2,k3和k4,从灰度区间[0,2n-1]选取连续且不重合的p个区间,并在每个区间内选择1个值作为gi,i=0,1,…,p-1;
r2:将密钥k1作为随机数种子,对每个gi,i=0,1,…,p-1随机生成r个分辨率为h×w的样本小块
r3:以密钥k2为随机数种子,将所有样本小块按均值聚类为p个类别s0,s1,…,sp-1,在每个类别sk中剔除灰度值不为gk的样本小块,其中k=0,1,…,p-1;
r4:将每个类别sk按均值聚类划分为2个类别sk,0和sk,1,从中分别选取离sk,0和sk,1聚类中心位置最近的样本小块作为编码样本小块ak,0和ak,1;
r5:以密钥k3为随机数种子生成分辨率为m×n的2值参考图s=(sx,y)m×n,sx,y∈{0,1},根据秘密信息的长度控制参数l,通过密钥k4确定随机坐标序列t=((xi,yi))l,其中(xi,yi)∈m×n且随机坐标序列t中坐标两两不等;
r6:输入分辨率为m·h×n·w的含密掩体图
本发明图像恢复方法进一步的改进在于:
所述r1的具体方法为:
r1-1:输入初始系统参数μ∈[3.57,4],初始密钥x0∈(0,1)和消除暂态效应的滤除迭代次数it,it>0,通过式(1)连续生成的4个随机数作为预设密钥k1,k2,k3和k4:
ki=μx0(1-x0)(1)
r1-2:从灰度区间[0,2n-1]选取p个区间,分别为[p0,p1],(p1,p2],…,(pp-1,pp],其中pi,i=0,1,…,p通过式(2)进行确定:
r1-3:通过式(3)从p个区间中的每个区间内选择1个值作为gi,i=0,1,…,p-1:
其中,符号
所述r2的具体方法为:
将密钥k1作为随机数种子,通过式(7)对每个gi,i=0,1,…,p-1随机生成r个分辨率为h×w的样本小块
式(7)执行的具体功能为:
初始化分辨率为h×w的空白图像
其中,符号
随机生成长度为x的随机坐标序列u=((xk,yk))x,其中(xk,yk)∈h×w且u中坐标两两不等;
对于随机坐标序列u中的每个坐标(xk,yk),置空白图像
所述r3的具体方法为:
r3-1:对每个gi,i=0,1,…,p-1随机生成的r个分辨率为h×w的样本小块
r3-2:通过式(9)计算
其中,
r3-3:记
r3-4:重复r3-2~r3-3,至当前重复结果与上次重复结果一致或达到预设重复次数,输出s0,s1,…,sp-1,将sk中灰度值不为gk的样本小块删除,其中k=0,1,…,p-1。
所述r6的具体方法为:
r6-1:输入分辨率为m·h×n·w的含密掩体图
r6-2:对于每个(xi,yi),以(xi·h,yi·w)为左上角坐标,截取分辨率为h×w的样本小块r=(rs,t)h×w,通过式(14)从
r6-3:通过式(15)提取bi;
r6-4:重复r6-2~r6-3,至随机坐标序列t=((xi,yi))l中的所有坐标处理完毕,得到秘密信息b=(bi)l;
r6-5:将含密掩体图
本发明又一方面,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述图像恢复方法的步骤。
本发明又一方面,一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述图像恢复方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明方法通过将随机产生的不同灰度阶的黑白噪点小块经由两次聚类用于2值秘密信息的编码表示,通过生成的随机2值参考图结合随机嵌密位置来放置不同灰度阶的编码样本小块来产生含密掩体,采用了载体生成的方式,避免了修改式嵌入,解决了现有信息隐藏方法一般采用修改式嵌入方法,不可避免地会在载体中留下修改痕迹,难以抵抗密写分析的检测的问题。通过采用单载体嵌密,每一个编码样本小块可嵌密1比特秘密信息,嵌密容量高;并且所提方法的编码样本小块均由用户密钥控制产生,无需预先建立庞大的数据库和倒排索引,因此省去了在信道中传输大量信息和巨大的搜索及维护代价,解决了搜索式无载体信息隐藏存在的普遍问题,即利用自然未修改载体表达不相关秘密信息,单载体嵌入容量极低,从大规模自然载体数据集中寻找合适未修改载体,需要搜索的数据量呈几何级数增加,即使借助倒排索引,存储和维护也是一个沉重的负担。本发明方法的编码样本小块是控制黑白像素点比例生成的2值小块,提供了多个不同灰度阶的编码样本小块,可用来表达自然图像的灰度像素,因此可生成视觉质量良好的有意义含密掩体图,且在拼接时不会产生任何拼接痕迹。解决了纹理生成式隐藏方法的普遍问题,即通过给定的样例图进行纹理拼接,易产生拼接痕迹,从而容易引起攻击者的怀疑。另外,纹理生成式隐藏方法所生成图像都是简单质地的非自然纹理图像,不能对秘密信息进行充分有效地掩盖。本发明方法不涉及任何修改式嵌入方法,并且无论秘密信息如何嵌入,含密掩体均可等质量地无损恢复为多阶半色调掩体图像;另外,经由2次聚类编码策略,拉开了候选样本小块的类间差异和类内差异,使得每个灰度阶的两种编码样本小块拥有在攻击后不易混肴的特点,因此所提方法抗攻击性能良好,可抵抗高强度的噪声攻击、低质量的jpeg压缩和随机画线攻击等。解决了马赛克拼图式信息隐藏方法普遍存在着拼接痕迹的问题,以及马赛克拼图式信息隐藏方法为嵌入重构秘密信息图像的相关参数,如密图小块位置信息、索引信息、密图小块与掩体小块之间的均值差以及密图小块的旋转角度等,都采用了修改式嵌入的方法,因此不能避免传统修改式信息隐藏本身固有的修改痕迹问题。
进一步的,密钥均由混沌映射的初始参数和消除暂态效应的迭代参数生成,对密钥具备完全的依赖性,若无法提供正确的参数,将无法提取出秘密信息。且经由混沌映射,对初始参数的任意微小改动都具有极高的密钥敏感性,因此具备较高的安全性。
附图说明
图1为本发明的图像隐藏方法流程图;
图2为本发明的图像恢复方法流程图;
图3为本发明的原灰度图像,为256×256分辨率的8位灰度图像lena;
图4为本发明的原灰度图像,为256×256分辨率的8位灰度图像man;
图5为本发明的秘密信息,为256×256分辨率的2值秘密信息图像lake;
图6为本发明的秘密信息,为128×128分辨率的2值秘密信息图像woman;
图7为本发明的实施例图像:以图3作为原图,图5作为秘密信息,x0=0.65432274,μ=3.69476342的含密掩体图像,分辨率为2048×2048;
图8为本发明的实施例图像:以图3作为原图,图5作为秘密信息,x0=0.74356825,μ=3.85342713的含密掩体图像,分辨率为2048×2048;
图9为本发明的实施例图像:以图4作为原图,图6作为秘密信息,x0=0.65432274,μ=3.69476342的含密掩体图像,分辨率为2048×2048;
图10为本发明的实施例图像:以图4作为原图,图6作为秘密信息,x0=0.74356825,μ=3.85342713的含密掩体图像,分辨率为2048×2048;
图11为本发明的实施例图像:从图7中提取的秘密信息,相对于图5的峰值信噪比psnr为无穷大,误码率ebr为0%;
图12为本发明的实施例图像:从图8中提取的秘密信息,相对于图5的峰值信噪比psnr为无穷大,误码率ebr为0%;
图13为本发明的实施例图像:从图9中提取的秘密信息,相对于图6的峰值信噪比psnr为无穷大,误码率ebr为0%;
图14为本发明的实施例图像:从图10中提取的秘密信息,相对于图6的峰值信噪比psnr为无穷大,误码率ebr为0%;
图15为本发明的实施例图像:图7经质量因子为90的jpeg压缩后的图像;
图16为本发明的实施例图像:图9经质量因子为70的jpeg压缩后的图像;
图17为本发明的实施例图像:图7经25%的椒盐噪声攻击后的图像;
图18为本发明的实施例图像:图9经15%的椒盐噪声攻击后的图像;
图19为本发明的实施例图像:图7经随机画线攻击后的图像;
图20为本发明的实施例图像:图9经随机画线攻击后的图像;
图21为本发明的实施例图像:从图15中提取的秘密信息,相对于图5的峰值信噪比psnr为无穷大,误码率ebr为0%;
图22为本发明的实施例图像:从图16中提取的秘密信息,相对于图6的峰值信噪比psnr为无穷大,误码率ebr为0%;
图23为本发明的实施例图像:从图17中提取的秘密信息,相对于图5的峰值信噪比psnr为13.6623db,误码率ebr为4.30%;
图24为本发明的实施例图像:从图18中提取的秘密信息,相对于图6的峰值信噪比psnr为16.9987db,误码率ebr为2.01%;
图25为本发明的实施例图像:从图19中提取的秘密信息,相对于图5的峰值信噪比psnr为14.5343db,误码率ebr为3.52%;
图26为本发明的实施例图像:从图20中提取的秘密信息,相对于图6的峰值信噪比psnr为15.8021db,误码率ebr为2.97%。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。需要说明的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
以javajdk1.8.0_65为实施环境,下面结合附图及实施例对本发明做进一步的详细说明。
下面结合附图对本发明做进一步详细描述:
参见图1,本发明图像隐藏方法,具体包括以下步骤:
第1步:输入初始系统参数μ∈[3.57,4],初始密钥x0∈(0,1)和消除暂态效应的滤除迭代次数it,it>0,取式(1)连续生成的4个随机数作为用户密钥k1,k2,k3,k4;按式(2)从灰度区间[0,2n-1]选取p个区间[p0,p1],(p1,p2],…,(pp-1,pp],按式(3)在每个区间内选择1个值作为gi,i=0,1,…,p-1;
ki=μx0(1-x0)(1)
式(3)中,符号
例如:将x0=0.5012,μ=3.9051代入式(1),抛弃前it=62580个随机数,可得:k1=0.7531,k2=0.7436,k3=0.7624,k4=0.7243;
取p=3,n=8,按式(2)可得
第2步:输入分辨率为m×n的灰度图像c=(cx,y)m×n,cx,y∈{0,1,…,2n-1},对于c中的每个元素cx,y,按式(4)计算cx,y的量化值c′x,y,按式(5)计算δx,y,按式(6)将δx,y向cx,y周围8邻域未经式(4)处理的像素cu,v,(u,v)∈m×n且(u,v)∈{(x-1,y-1),(x-1,y),(x-1,y+1),(x,y-1),(x,y+1),(x+1,y-1),(x+1,y),(x+1,y+1)}进行扩散,直至c中的所有元素cx,y处理完毕,将c′=(c′x,y)m×n输出,式(4)中,符号“|”表示或;
c′x,y=gi,cx,y∈(pi,pi+1],i∈[1,p-1]|cx,y∈[p0,p1],i=0(4)
δx,y=c′x,y-cx,y(5)
式(6)中,函数range(x,0,2n-1)用于将x量化到[0,2n-1]之间,range(x,0,2n-1)函数的作用是若x<0,则输出0;若x>2n-1,则输出2n-1;若x∈[0,2n-1],则输出x;
nc是cx,y周围8邻域未经式(4)处理的像素数量;
例如:取m=2,n=2,假定从灰度区间[0,28-1]即[0,255]选取的3个区间段为(31,95],(95,159],(159,223],对应的g0=63,g1=127,g2=191,输入分辨率为2×2的灰度图像
同理,可得到c′0,1,c′1,0,c′1,1,这里假定c′0,1=g0=63,同理可得c′1,0=g2=191,c′1,1=g1=127,因此可将c转化为
第3步:按式(7)由gi,i=0,1,…,p-1随机生成r个分辨率为h×w的样本小块
式(7)的具体功能是,初始化分辨率为h×w的空白图像
式(8)中,符号
例如:取h=2,w=2,r=2,i=0,1,2,则式(7)表示为
假设取密钥k1,对于
对于u中的每个坐标(xk,yk),置
例如:对于生成的坐标,置
第4步:以k2为随机数种子,将生成的p×r个样本小块按均值聚类为p个类别s0,s1,…,sp-1,在每个类别sk中剔除灰度值不为gk的样本小块,其中k=0,1,…,p-1,对应的具体方法是:
1)对每个gi,i=0,1,…,p-1随机生成的r个分辨率为h×w的样本小块
例如:假设取密钥k2,对每个gi,i=0,1,…,2随机生成的2个分辨率为2×2的样本小块
2)按式(9)计算
式(9)中,
3)记
例如:按式(9)计算
因此
由式(11)和式(12)知:
因此
4)重复执行2)~3),直至当前重复结果与上次重复结果一致(聚类过程趋于稳定)或达到指定的迭代次数,得到s0,s1,…,sp-1,并将sk中灰度值不为gk的样本小块删除,其中k=0,1,…,p-1;
例如:假设当前重复结果与上次重复结果一致或达到指定的迭代次数时
第5步:对每个集合sk进一步按均值聚类划分为2个类别sk,0和sk,1,从中分别选取离sk,0和sk,1聚类中心位置最近的样本小块作为编码样本小块ak,0,ak,1,其中k=0,1,…,p-1;
例如:与第4步的实施方法相同,将s0,s1,s2进一步划分为s0,0,s0,1,s1,0,s1,1,s2,0,s2,1,从中分别选取离sk,0和sk,1聚类中心位置最近的样本小块作为编码样本小块ak,0,ak,1,其中k=0,1,2;
假设最终的编码样本小块为:
第6步:以k3为随机数种子生成分辨率为m×n的2值参考图s=(sx,y)m×n,sx,y∈{0,1},记秘密信息是长度为l的2值比特位串b=(bi)l,bi∈{0,1},由k4确定随机坐标序列t=((xi,yi))l,其中(xi,yi)∈m×n且t中坐标两两不等,初始化空白含密掩体图
例如:假设由k3生成分辨率为2×2的2值参考图
第7步:对于
例如:取h=w=2,第0个坐标(0,0),由于(0,0)∈t且为t的第0个坐标,由
第8步:反复执行第7步,直至
例如:按第7步的过程处理b中的所有元素:
取h=w=2,处理第1个坐标(0,1),由于(0,1)∈t且为t的第1个坐标,由
取h=w=2,处理第2个坐标(1,0),由于(1,0)∈t且为t的第2个坐标,由
处理t中的第3个坐标(1,1),(1,1)∈t且为t的第3个坐标,由
由于2×2范围内的的所有坐标(0,0).(0,1),(1,0),(1,1)全部处理完毕,因此将最终产生的含密掩体图
参见图2,本发明图像恢复方法,具体包括以下步骤:
第1步:输入初始系统参数μ∈[3.57,4],初始密钥x0∈(0,1)和消除暂态效应的滤除迭代次数it,it>0,取式(1)连续生成的4个随机数作为用户密钥k1,k2,k3,k4;按式(2)从灰度区间[0,2n-1]选取p个区间[p0,p1],(p1,p2],…,(pp-1,pp],按式(3)在每个区间内选择1个值作为gi,i=0,1,…,p-1;
ki=μx0(1-x0)(1)
式(3)中,符号
例如:将x0=0.5012,μ=3.9051代入式(1),抛弃前it=62580个随机数,可得:k1=0.7531,k2=0.7436,k3=0.7624,k4=0.7243;
取p=3,n=8,按式(2)可得
第2步:按式(7)由gi,i=0,1,…,p-1随机生成r个分辨率为h×w的样本小块
式(7)的具体功能是,初始化分辨率为h×w的空白图像
式(8)中,符号
例如:取h=2,w=2,r=2,i=0,1,2,则式(7)表示为
假设取密钥k1,对于
对于u中的每个坐标(xk,yk),置
例如:对于生成的坐标,置
第3步:以k2为随机数种子,将生成的p×r个样本小块按均值聚类为p个类别s0,s1,…,sp-1,在每个类别sk中剔除灰度值不为gk的样本小块,其中k=0,1,…,p-1,对应的具体方法是:
1)对每个gi,i=0,1,…,p-1随机生成的r个分辨率为h×w的样本小块
例如:假设取密钥k2,对每个gi,i=0,1,…,2随机生成的2个分辨率为2×2的样本小块
2)按式(9)计算
式(9)中,
3)记
例如:按式(9)计算
因此
由式(11)和式(12)知:
因此
4)重复执行2)~3),直至当前重复结果与上次重复结果一致(聚类过程趋于稳定)或达到指定的迭代次数,输出s0,s1,…,sp-1,将sk中灰度值不为gk的样本小块删除,其中k=0,1,…,p-1;
例如:假设前重复结果与上次重复结果一致(聚类过程趋于稳定)或达到指定的迭代次数时
第4步:对每个集合sk进一步按均值聚类划分为2个类别sk,0和sk,1,从中分别选取离sk,0和sk,1聚类中心位置最近的样本小块作为编码样本小块ak,0,ak,1,其中k=0,1,…,p-1;例如:与第3步的实施方法相同,将s0,s1,s2进一步划分为s0,0,s0,1,s1,0,s1,1,s2,0,s2,1,从中分别选取离sk,0和sk,1聚类中心位置最近的样本小块作为编码样本小块ak,0,ak,1,其中k=0,1,2;假设最终的编码样本小块为:
第5步:以k3为随机数种子生成分辨率为m×n的2值参考图s=(sx,y)m×n,sx,y∈{0,1},根据秘密信息的长度控制参数l由k4确定随机坐标序列t=((xi,yi))l,其中(xi,yi)∈m×n且t中坐标两两不等;
例如:假设取密钥k3生成分辨率为2×2的2值参考图
第6步:输入分辨率为m·h×n·w的含密掩体图
例如:输入分辨率为4×4的含密掩体图
则与r最接近的编码样本小块为a2,1,则由式(14)可知
2)按式(15)提取bi;
例如:取
3)反复执行1)和2),直到t=((xi,yi))l中的所有坐标处理完毕,将b=(bi)l输出作为提取的秘密信息;
例如:同理提取其余秘密信息:
以(0,2)为左上角坐标,截取分辨率为2×2的样本小块
以(2,0)为左上角坐标,截取分辨率为2×2的样本小块
以(2,2)为左上角坐标,截取分辨率为2×2的样本小块
连接bi并输出秘密信息b=(0110)2。
4)将含密掩体图
例如:将含密掩体图
本发明图像隐藏方法和图像恢复方法如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
在示例性实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述信息伪装方法或信息恢复方法的步骤。其中,所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd))等。
在示例性实施例中,还提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述信息伪装方法或信息恢复方法的步骤。处理器可能是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
图3~图6分别为256×256分辨率的8阶灰度图像lena、man,256×256分辨率的2值秘密信息图像lake和128×128分辨率的2值秘密信息图像woman。图7按图1嵌入流程以图3作为原图,图5作为秘密信息,取x0=0.65432274,μ=3.69476342得到的含密掩体图像,分辨率为2048×2048;图8按图1嵌入流程以图3作为原图,图5作为秘密信息,x0=0.74356825,μ=3.85342713得到的含密掩体图像,分辨率为2048×2048;图9是按图1嵌入流程以图4作为原图,图6作为秘密信息,x0=0.65432274,μ=3.69476342得到的含密掩体图像,分辨率为2048×2048;图10是按图1嵌入流程以图4作为原图,图6作为秘密信息,x0=0.74356825,μ=3.85342713得到的含密掩体图像,分辨率为2048×2048。图11是按图2提取流程从图7中提取的秘密信息,相对于图5的峰值信噪比psnr为无穷大,误码率ebr为0%;图12是按图2提取流程从图8中提取的秘密信息,相对于图5的峰值信噪比psnr为无穷大,误码率ebr为0%。图13是按图2提取流程从图9中提取的秘密信息,相对于图6的峰值信噪比psnr为无穷大,误码率ebr为0%;图14是按图2提取流程从图10中提取的秘密信息,相对于图6的峰值信噪比psnr为无穷大,误码率ebr为0%。图15是图7经质量因子为90的jpeg压缩后的图像;图16是图9经质量因子为70的jpeg压缩后的图像;图17是图7经25%的椒盐噪声攻击后的图像;图18是图9经15%的椒盐噪声攻击后的图像;图19是图7经随机画线攻击后的图像;图20是图9经随机画线攻击后的图像。图21是按图2提取流程从图15中提取的秘密信息,相对于图5的峰值信噪比psnr为无穷大,误码率ebr为0%;图22是按图2提取流程从图16中提取的秘密信息,相对于图6的峰值信噪比psnr为无穷大,误码率ebr为0%;图23是按图2提取流程从图17中提取的秘密信息,相对于图5的峰值信噪比psnr为13.6623db,误码率ebr为4.30%;图24是按图2提取流程从图18中提取的秘密信息,相对于图6的峰值信噪比psnr为16.9987db,误码率ebr为2.01%;图25是按图2提取流程从图19中提取的秘密信息,相对于图5的峰值信噪比psnr为14.5343db,误码率ebr为3.52%;图26是按图2提取流程从图20中提取的秘密信息,相对于图6的峰值信噪比psnr为15.8021db,误码率ebr为2.97%。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明权利要求书的保护范围之内。