本发明涉及光学信息安全领域,特别是涉及一种大容量光学信息隐藏、提取的方法及系统。
背景技术:
网络互连的时代使得信息安全问题愈发突出,而如何通过有效又高效的手段使得秘密信息不被直接获取而得以隐藏和传输显得十分重要。在当前信息爆炸的时代,巨量的信息在无时无刻的产生,而随之蓬勃发展的还有各种相应的信息处理手段。光学信息安全技术作为信息互通的一种安全保障方式,在互联网时代突显出了无比重要的地位。而现有的信息隐藏方法大多是基于单纯的数字编码方式,密钥空间单一,没有实物空间的安全性保证,导致信息传输过程中安全性低。
技术实现要素:
本发明的目的是提供一种大容量光学信息隐藏、提取的方法及系统,以提高信息传输的安全性。
为实现上述目的,本发明提供了如下方案:
一种大容量光学信息隐藏的方法,包括:
将待隐藏信息进行二维码编码,得到二维码集合;所述二维码集合中包括所述待隐藏信息对应的多个二维码;
通过包括空间光调制器的反射式相干衍射成像系统,对所述二维码集合中的二维码进行衍射,得到衍射图集合;所述衍射图中包括每个二维码对应的衍射图;
获取宿主视频;
根据宿主视频,将所述衍射图集合中的衍射图进行处理,得到处理后的图像;
将所述处理后的隐藏于所述宿主视频中,得到待传输的带有隐藏信息的视频文件。
可选的,所述将待隐藏信息进行二维码编码,得到二维码集合,具体包括:
按照二维码的容量,将所述隐藏信息分为多个信息片段;
将所有的信息片段采用二维码编码,得到每个所述信息片段对应的二维码,得到所述二维码集合。
可选的,所述根据宿主视频,将所述衍射图集合中的衍射图进行处理,得到处理后的图像,具体包括:
获取所述宿主视频中每个视频帧的容量;所述容量为每个视频帧能够隐藏衍射图的数量;
根据每个视频帧的容量,确定每个视频帧对应的衍射图子集合;
利用公式
可选的,所述将所述处理后的隐藏于所述宿主视频中,得到待传输的带有隐藏信息的视频文件,具体包括:
利用公式
将带有隐藏信息的所有视频帧,利用公式
本发明还提供一种大容量光学信息隐藏的系统,包括:
二维码编码模块,用于将待隐藏信息进行二维码编码,得到二维码集合;所述二维码集合中包括所述待隐藏信息对应的多个二维码;
衍射模块,用于通过包括空间光调制器的反射式相干衍射成像系统,对所述二维码集合中的二维码进行衍射,得到衍射图集合;所述衍射图中包括每个二维码对应的衍射图;
宿主视频获取模块,用于获取宿主视频;
衍射图处理模块,用于根据宿主视频,将所述衍射图集合中的衍射图进行处理,得到处理后的图像;
隐藏模块,用于将所述处理后的隐藏于所述宿主视频中,得到待传输的带有隐藏信息的视频文件。
本发明还提供一种大容量光学信息提取的方法,包括:
提取带有隐藏信息的视频文件中每个视频帧中的隐藏信息,得到隐藏信息集合;
将所述隐藏信息集合中的每个隐藏信息解码为独立的二维码衍射图,得到二维码衍射图集合;
使用改进型的gs相位恢复算法对所述二维码衍射图集合中的二维码衍射图进行二维码重构,得到重构二维码集合;所述重构二维码集合中包括每个二维码衍射图对应的重构二维码;
对所述重构二维码集合中的所有重构二维码进行扫码操作,得到每个重构二维码对应的信息片段;
将所有的信息片段按所述视频帧的顺序整合,得到完整的隐藏信息。
可选的,所述提取带有隐藏信息的视频文件中每个视频帧中的隐藏信息,得到隐藏信息集合,具体包括:
利用公式
利用公式
可选的,所述将所述隐藏信息集合中的每个隐藏信息解码为独立的二维码衍射图,得到二维码衍射图集合,具体包括:
利用公式
可选的,所述使用改进型的gs相位恢复算法对所述二维码衍射图集合中的二维码衍射图进行二维码重构,得到重构二维码集合,具体包括:
对每个二维码衍生图的复振幅分布进行初始猜测,得到二维码的初始复振幅分布;
获得透过二维码平面的复振幅分布;
采用菲涅尔衍射方法传播到ccd平面,得到ccd平面的复振幅分布;
替换振幅,进行强度约束,得到更新后的复振幅分布;
采用逆菲涅尔衍射方法传播到二维码平面,得到更新后的二维码平面的复振幅分布;
进行探针约束,并更新探针;
对重建二维码图像进行纯相位约束,得到当前迭代次数i的重建二维码的复振幅分布;
当当前迭代次数i=3,6,9时,对所述重建二维码的复振幅分布进行二值约束,并返回获得透过二维码平面的复振幅分布的步骤;
当当前迭代次数i=1,2,4,5,7,8时,返回获得透过二维码平面的复振幅分布的步骤;
当当前迭代次数i=10时,根据当前迭代次数i的重建二维码的复振幅分布,得到重构二维码。
本发明还提供一种大容量光学信息提取的系统,包括:
隐藏信息提取模块,用于提取带有隐藏信息的视频文件中每个视频帧中的隐藏信息,得到隐藏信息集合;
解码模块,用于将所述隐藏信息集合中的每个隐藏信息解码为独立的二维码衍射图,得到二维码衍射图集合;
二维码重构模块,用于使用改进型的gs相位恢复算法对所述二维码衍射图集合中的二维码衍射图进行二维码重构,得到重构二维码集合;所述重构二维码集合中包括每个二维码衍射图对应的重构二维码;
扫码模块,用于对所述重构二维码集合中的所有重构二维码进行扫码操作,得到每个重构二维码对应的信息片段;
整合模块,用于将所有的信息片段按所述视频帧的顺序整合,得到完整的隐藏信息。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
1.安全性:通过将信息编码为码,并结合光学系统使用衍射传输进行光学编码,并加载在视频文件海量的视频帧中,极大的提高的信息隐藏的隐秘性,并结合压缩、置乱、衰减等试验参数,保证了系统的安全性;视频帧的顺序位置、时间位置、信息加载区域的位置可作为空间秘钥,此外光学系统的探针形状、尺寸、衍射图的顺序、位置、波长、衍射距离等光学实验参数都可以为系统提供安全性的支持。
2.可压缩性:视频文件的每一帧图像均可作为宿主图像进行信息存储,视频文件清晰度(像素数量)越高,帧率越高,视频越长,则能够作为信息载体加载更多的信息;以码为信息与光学系统的转换媒介,因码本身的存在信息冗余,并且拥有特殊的二维结构和灰度分布。因此,能够对进行较高的压缩比。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明大容量光学信息隐藏的方法的流程示意图;
图2为本发明大容量光学信息隐藏的系统的结构示意图;
图3为本发明大容量光学信息提取的方法的流程示意图;
图4为本发明大容量光学信息提取的系统的结构示意图;
图5为本发明具体实施案例中反射式相干衍射成像系统的结构图;
图6为本发明具体实施案例中信息隐藏的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明大容量光学信息隐藏的方法的流程示意图。如图1所示,所述大容量光学信息隐藏的方法包括以下步骤:
步骤101:将待隐藏信息进行二维码编码,得到二维码集合。首先,按照二维码的容量,将所述隐藏信息分为多个信息片段;然后,将所有的信息片段采用二维码编码,得到每个所述信息片段对应的二维码,得到所述二维码集合。因此,二维码集合中包括待隐藏信息对应的多个二维码。
步骤102:通过包括空间光调制器的反射式相干衍射成像系统,对二维码集合中的二维码进行衍射,得到衍射图集合。衍射图中包括每个二维码对应的衍射图。
步骤103:获取宿主视频。宿主视频为可选择的视屏,根据实际需求,可以自主选择相应的视频作为宿主视频,用于隐藏信息。
步骤104:根据宿主视频,将衍射图集合中的衍射图进行处理,得到处理后的图像。具体的,首先获取所述宿主视频中每个视频帧的容量;所述容量为每个视频帧能够隐藏衍射图的数量。然后,根据每个视频帧的容量,确定每个视频帧对应的衍射图子集合。最后,利用公式
步骤105:将处理后的隐藏于宿主视频中,得到待传输的带有隐藏信息的视频文件。具体的,利用公式
对应于图1所示的方法,本发明还提供一种大容量光学信息隐藏的系统。图2为本发明大容量光学信息隐藏的系统的结构示意图。如图2所示,所述大容量光学信息隐藏的系统包括以下结构:
二维码编码模块201,用于将待隐藏信息进行二维码编码,得到二维码集合。所述二维码集合中包括所述待隐藏信息对应的多个二维码。
衍射模块202,用于通过包括空间光调制器的反射式相干衍射成像系统,对所述二维码集合中的二维码进行衍射,得到衍射图集合;所述衍射图中包括每个二维码对应的衍射图。
宿主视频获取模块203,用于获取宿主视频。
衍射图处理模块204,用于根据宿主视频,将所述衍射图集合中的衍射图进行处理,得到处理后的图像。
隐藏模块205,用于将所述处理后的隐藏于所述宿主视频中,得到待传输的带有隐藏信息的视频文件。
对应于图1所示的大容量光学信息隐藏的方法,本发明还提供一种大容量光学信息提取的方法。图3为本发明大容量光学信息提取的方法的流程示意图。如图3所示,所述大容量光学信息提取的方法包括以下步骤:
步骤301:提取带有隐藏信息的视频文件中每个视频帧中的隐藏信息,得到隐藏信息集合。具体的,利用公式
步骤302:将隐藏信息集合中的每个隐藏信息解码为独立的二维码衍射图,得到二维码衍射图集合。具体的,利用公式
步骤303:使用改进型的gs相位恢复算法对二维码衍射图集合中的二维码衍射图进行二维码重构,得到重构二维码集合。重构二维码集合中包括每个二维码衍射图对应的重构二维码。具体过程如下:
step1:对每个二维码衍生图的复振幅分布进行初始猜测,得到二维码的初始复振幅分布o。公式如下:
其中o,i,
step2:获得透过二维码平面的复振幅分布u。公式如下:
u=p·o(3)
step3:采用菲涅尔衍射方法传播到ccd平面,得到ccd平面的复振幅分布u1。公式如下:
step4:替换振幅,进行强度约束,得到更新后的复振幅分布u2。公式如下:
step5:采用逆菲涅尔衍射方法传播到二维码平面,得到更新后的二维码平面的复振幅分布。公式如下:
step6:进行探针约束,并更新探针。公式如下:
phase=angle(u3)·p(7)
p′=p+(u3-u)(8)
其中,phase为更新后的相位,p′为更新后的探针。
step7:对重建二维码图像进行纯相位约束,得到当前迭代次数i的重建二维码的复振幅分布o′。公式如下:
o′=exp(i·phase)(9)
当当前迭代次数i=3,6,9时,执行step8;当当前迭代次数i=1,2,4,5,7,8时,迭代次数加1,返回step2,进入下一次迭代;当当前迭代次数i=10时,执行step9。
step8:对所述重建二维码的复振幅分布进行二值约束,公式如下:
o=exp(i·bina(phase))(10)
其中,bina()表示对图片进行二值化。二值约束后迭代次数加1,返回step2,进入下一次迭代。
step9:根据当前迭代次数i的重建二维码的复振幅分布,得到重构二维码。
步骤304:对重构二维码集合中的所有重构二维码进行扫码操作,得到每个重构二维码对应的信息片段。
步骤305:将所有的信息片段按视频帧的顺序整合,得到完整的隐藏信息。
对应图3所示的大容量光学信息提取的方法,本发明还提供一种大容量光学信息提取的系统。图4为本发明大容量光学信息提取的系统的结构示意图。如图4所示,所述大容量光学信息提取的系统包括以下结构:
隐藏信息提取模块401,用于提取带有隐藏信息的视频文件中每个视频帧中的隐藏信息,得到隐藏信息集合。
解码模块402,用于将所述隐藏信息集合中的每个隐藏信息解码为独立的二维码衍射图,得到二维码衍射图集合。
二维码重构模块403,用于使用改进型的gs相位恢复算法对所述二维码衍射图集合中的二维码衍射图进行二维码重构,得到重构二维码集合。所述重构二维码集合中包括每个二维码衍射图对应的重构二维码。
扫码模块404,用于对所述重构二维码集合中的所有重构二维码进行扫码操作,得到每个重构二维码对应的信息片段。
整合模块405,用于将所有的信息片段按所述视频帧的顺序整合,得到完整的隐藏信息。
下面提供一个具体实施案例进一步说明对应图1-图4所示的方案。
本实施案例中搭建的反射式相干衍射成像系统包括加载信息的空间光调制器slm(spatiallightmodulator)和采集数据的ccd(charge-coupleddevice)。图5为本发明具体实施案例中反射式相干衍射成像系统的结构图,如图5所示,图中laser为激光器,本实施案例中采用的是红光氦氖激光器,波长为632.8nm;mirror为反射镜;at为衰减器;pinhole1、pinhole2为光阑;filter为空间滤波器;lens为傅里叶透镜;pol为偏振片;bs为分光棱镜;slm为空间光调制器,本实施案例中采用的为holoeye(pluto-vis-016-slm)生产的反射式纯相位调制空间光调制器的;ccd为电荷耦合器,本实施案例中采用的为imperx的ccd,型号为igv-b4020m-kf000,像素大小为9um,衍射距离z=200mm;pc为同时连接并控制ccd与slm的计算机。
系统光路设置如图所示,由激光器中出射的光束经过两个反射镜调节为平行光后入射到空间滤波器中,通过空间滤波的光束照射到傅里叶透镜上,通过透镜后形成一束均匀的平面波。此平面波通过一个偏振片后照射到slm上,偏振片是为了保证slm为纯相位调制。携带qr码衍射信息的光束由slm的液晶表面出射后通过bs反射后再ccd平面接收到其衍射图。
进行信息隐藏时,先将待隐藏的信息编码为一系列qr码,再将qr码依次加载到slm上,并在ccd上采集到每个qr码对应的衍射图,得到衍射图集合,即衍射数据库。之后对其进行一系列的置乱、压缩、衰减,而后从宿主视频中提取出单帧图像作为宿主图像,将衍射图隐藏到宿主图像中。
图6为本发明具体实施案例中信息隐藏的流程示意图。具体过程如下:
步骤1:在电脑端将需要隐藏的信息按照二维码(qr码)的容量分成m个信息片段,并将所有信息片段都编码为对应的qr码,每个qr码的像素大小为800*800,qr码形式为白色背底和黑色信息编码方块。
步骤2:将qr码按顺序依次加载到slm的液晶显示器上,并在加载qr码的同时在电荷耦合器(ccd)上采集对应的衍射图像,并在加载每张图像的时候在ccd上采集相应的衍射图ii,i=1,2,...,m,直到采集完所有qr对应的衍射图,得到经过光学系统编码后的衍射图集合。
步骤3:将衍射图依次进行置乱、压缩、组合。对衍射图集合中的衍射图按照一定规则置乱,然后进行适当比例的压缩,像素压缩比κ=0.2,压缩后每个qr码衍射图的像素大小为160*160。宿主视频分辨率为1920*1080,每帧图像能够隐藏的qr码衍射图数量为66个,隐藏所有信息所需的视频帧数为n=m/66,所需的视频时长为t=m/(66p)(秒)。将压缩后的衍射图按照6行11列的形式,每66个衍射图组合为一幅图像i'n,n=1,2,...,n。
步骤4:隐藏于宿主视频中。将每个视频帧对应的组合图形按照一定比例衰减后隐藏在宿主视频中的对应视频帧图像中。
步骤5:合成视频帧,形成待传输的视频文件。
对于接收到传输的视频文件之后,需要对视频文件中的隐藏信息进行提取,提取过程如下:
步骤1:提取含有隐藏信息的视频帧。
步骤2:提取单帧图像中的隐藏信息。
步骤3:将提取出的隐藏信息解码为独立的qr码衍射图。
步骤4:得到qr码衍射图以后,使用改进型的gs相位恢复算法进行qr码重建。具体如下:
4-1:qr码复振幅分布初始猜测。
4-2:照明探针传输到qr码平面。
4-3:菲涅尔衍射到ccd平面。
4-4:替换振幅,进行强度约束。
4-5:逆菲涅尔衍射到qr码平面。
4-6:进行探针约束,并更新探针。
4-7:对重建qr码图像进行纯相位约束
重复步骤4-4至4-7,每个循环为一次迭代过程,每迭代3次进行一次二值约束,总共迭代10次即可完成对qr码衍射图的重建,单张衍射图重建耗时约0.41s(使用gpu加速)。
步骤5:对衍射图恢复重建后,便可得到秘密信息所对应的qr,扫码即可得到隐藏的信息片段,再将所有的信息片段按原有顺序整合,即可得到完整的隐藏信息。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。