1.一种基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于:当有一组数字信息M需要隐藏,有一组供信息隐藏的电子图像时,用于信息隐藏的原始图像集合,记为Cover图像集合,简称为Cover;将Cover经像素插入处理后获得的用于信息隐藏图像集合,记为ECover图像集合,简称ECover;ECover隐藏信息之后称为Stego图像,简称Stego;在ECover中用于信息隐藏的最小操作单元,是图像中每个像素的单色分量,记为CP;ECover中,继承自Cover且保持不变的CP,记为BCP;基于BCP产生,用于隐藏信息的CP称为ICP;
所述方法,具体包括以下步骤:
步骤1:M与Cover参数预处理及数独矩阵序列{Qk}的生成;
步骤2:基于数独矩阵序列{Qk}的可恢复插入信息隐藏;
步骤3:提取隐藏信息及恢复Cover。
2.根据权利要求1所述的基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于:所述CP或是RGB颜色的R、G或者B,或是灰度图像中的灰度,或是其他可以用数字表达的计算机存储的图像单色单元。
3.根据权利要求1所述的基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于,步骤1的具体实现包括以下子步骤:步骤1.1:ECover编码空间计算及视觉阈值的选定;
由Cover图像集合{Coveri}all,生成ECover用的插入函数f1、视觉控制阈值δ,选择生成合适的Cover子集Coverj及其编码空间Vj的集合{(Coverj,Vj)}selected;
{(Coverj,Vj)}selected←F1.1({Coveri}all,δ,f1)其中,操作F1.1的确定方式为:
或者根据Cover的ECover的逻辑例,统计其在不同的编码空间下的不同视觉阈值,根据用户优化需要,择优选择(Coverj,Vj)集合;
或者根据用户事先给定视觉阈值控制参数,计算不同Cover对应ECover编码空间,择优选择(Coverj,Vj)集合;
步骤1.2:M与ECover编码空间匹配特征统计与数独索序列{Qk}最优策略参数Param的选择;
({Qk},Param)←F1.2(M,{(Coverj,Vj)}selected}操作F1.2统计M需要在Coverj中的隐藏的部分Mj,在ICP插入编码空间 整数倍空间中,用不同的优化参数,在预先给定或者随机生成的数独矩阵序列中,计算得到相对最优结果,输出Coverj,Mj配对优化后的矩阵序列{Qk},及其最优策略参数Param;Param中的关键信息包括:M信息分片方法、连续搜索深度、连续搜索组合方向、记录连续搜索的起始地址表达、压缩编码方法。
4.根据权利要求3所述的基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于:步骤1.1中,基于Cover形成ECover的逻辑例,是将Cover的CP阵列以间隔一CP插入一CP的方式,沿行、列、及对角线方向,每两个CP之间插入一个新CP。
5.根据权利要求3所述的基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于,步骤2的具体实现包括以下子步骤:步骤2.1:控制信息插入;
{Stegoj,1}←F2.1(M,{(Coverj,Vj)}selected,{Qk},δ,f1,Param)Stegoj,1是ECover完成基本控制信息插入后的输出;操作F2.1将Coverj中封装的Mj信息长度、Coverj中封装数据总结长度、视觉阈值约束δ、插入函数f1、数独矩阵序列{Qk}、Coverj编码空间Vj、编码优化参数Param参数,全部或者部分,以用户约定方式封装,并编码形式存储于图像中;当因安全需要按约定独立传输的,按约定独立传输;
步骤2.2:根据数独索引矩阵序列{Qk},以及Param进行视觉阈值控制编码;
{Stegoj}←F2.2(M,{Stegoj,1},{Qk},Param)操作F2.2按照数独序列{Qk}及最优策略参数Param,对信息M进行编码并插入到{Stegoj,1}中,最终输出{Stegoj}。
6.根据权利要求5所述的基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于:步骤2.2中所述对信息M进行编码插入到{Stegoj,1}中,采用的是深度连续索引插入方法;是利用行列交换策略,在ICP组上,基于相对连续寻址优化策略及编码方法,实现的深度连续索引编码。
7.根据权利要求6所述的基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于:所述相对连续寻址优化策略及编码方法,首先将第一组数字选择以某一特定值为查询的起始点开始,按行或列编码;然后依次沿着最优策略参数Param逻辑进行行、列交替的多次查询。
8.根据权利要求5所述的基于数独矩阵索引的图像可恢复信息隐藏方法,其特征在于,步骤3的具体实现包括以下子步骤:步骤3.1:根据数独矩阵序列及控制信息获取插入隐藏编码信息;
或按编码规则,由信息隐藏格式,恢复控制信息;
{Mj}←F3.1({Stegoj});
或接受独立传输的控制信息,联合恢复控制信息;
{Mj}←F3.1({Stegoj},{Qk},δ,f1,Param);
步骤3.2:信息M恢复;
根据3.1步骤的基础解码片断,由Param恢复原始M信息;
M←F3.2({Mj},Param);
步骤3.3:恢复Cover;
根据ECover插入规则,逆向恢复Cover;
{Coverj}←F3.3({Stegoj})。