一种视频隐写信息的嵌入与提取方法转让专利

申请号 : CN201410380115.8

文献号 : CN104125467B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘云霞贾遂民胡明生

申请人 : 郑州师范学院

摘要 :

本发明公开了一种视频隐写信息的鲁棒性方法,包括嵌入和提取两部分。在嵌入部分:获取将作为载体的网络视频源,并接收用户需要嵌入的秘密信息;对秘密信息使用多秘密共享技术分发处理操作;对载体视频进行解码,并嵌入分发后的秘密信息,直到将所有信息完全嵌入到视频中。在提取部分:获取经过网络传输等可能发生部分数据丢失的载体视频;对该视频进行解码并提取出嵌入的秘密信息;对提取的信息使用多秘密共享技术恢复得到原始秘密信息。本发明具有较小的冗余度,较好的视觉隐蔽性;易于应用,可为视频隐写提供技术方法,指导构建视频隐秘通信平台,支持我国在军事、外交和重要商务领域的特殊应用,服务国家网络空间安全战略,应用环境广阔。

权利要求 :

1.一种视频隐写信息的嵌入方法,其特征在于,所述方法包括如下步骤:(1)获取将作为载体的网络视频源,并接收用户需要嵌入的秘密信息;

(2)配置多秘密共享的参数n,p,t,其中n表示一次秘密分发为n片数据,p表示一次秘密分发可分发p个数据,t表示在提取时至少需要t个片的数据才能够恢复原始秘密信息;

对待嵌入的秘密信息按每p个数据进行分段,若最后一个分段的数据个数小于p,则补0;

(3)依次对每个数据段的p个数据利用单向函数和p-1次多项式进行多秘密共享的分发,一次分发为n片数据;重复上述分发操作,直到步骤(2)划分的数据段处理完,转入步骤(4);其中,所述对每个数据段的p个数据利用单向函数和p-1次多项式进行多秘密共享的分发,一次分发为n片数据,具体为:利用p个需要共享的秘密信息{s1,s2,......,sp}构造p-1次多项式:h(x)=

2 p-1

s1+s2x+s3x+......+spx ;

对于所有的xi,i∈(1,n),计算单向函数值f(r,xi),其中单向函数f(r,xi),i∈(1,n)的值两两互不相等,r,xi为随机数;

以f(r,x1),f(r,x2),......,f(r,xn)为自变量带入多项式h(x)中,计算得到n个y值:yi=h(f(r,xi)),i∈(1,n);

根据参数t,选取j=1,2,...,p-t,分别计算h(j),将上述h(j)和yi发送给视频接收方以使视频接收方根据所述h(j)和yi来提取视频隐写信息;

并将上述的n个xi,i∈(1,n)值分别分发到n片数据中,至此本次分发过程完成;

(4)依次对分发后n片数据中的每一片的数据进行二进制化,得到二进制化后的每一片比特串中比特的数目num;

(5)对载体视频的第q帧进行解码,并判断解码后的第q帧当前4×4子块是否符合嵌入条件,其中q≥0;若符合嵌入条件,则在当前4×4子块中选取对视频质量影响较小的右下角位置进行步骤(7)数据的嵌入;若不符合,则对当前帧的下一个4×4子块进行条件判断,直到当前帧解码完,转入步骤(6);

(6)判断当前嵌入信息的帧是否是视频最后一帧,若是则转入步骤(9),若不是则当前帧序号q加1,转入步骤(5);

(7)计算i=qmodn,其中q为当前帧序号,根据由步骤(4)得到的num判断第i片已嵌入信息的个数My_Count[i]是否小于num,若是,将第i片信息中的比特嵌入到当前块中,同时每添加一个比特计数器My_Count[i]加1,若不是则转入步骤(8)中;其中My_Count[i]的初始值为0;

(8)判断由步骤(4)、(7)得到的二进制化后的每一片比特串中的信息是否嵌入完全,若没有转入步骤(6),若是则转入步骤(9)中;

(9)判断所有的My_Count[i]是否都等于num,若是则嵌入过程完毕,若不是那么视频载体过少,秘密信息未嵌入完全,需要更换视频重新嵌入。

2.如权利要求1所述的方法,其特征在于,所述步骤(5)中判断解码后的第q帧当前

4×4子块是否符合嵌入条件,具体为:

判断该4×4子块的周边邻块预测模式是否同时满足预测模式条件:4x4子块右邻块满足预测模式0、3、7的一种,左下邻块满足预测模式0、1、2、4、5、6、8的一种,右下邻块满足预测模式0、1、2、3、7、8的一种,正下邻块满足预测模式1、8的一种。

3.如权利要求1或2所述的方法,其特征在于,所述步骤(8)中判断由步骤(4)得到的二进制化后的每一片比特串中的信息是否嵌入完全具体为:判断My_Count[i],i∈(1,n),是否都等于num,如果是则嵌入完全,如果不是则嵌入不完全。

4.一种视频隐写信息的提取方法,其特征在于,所述方法包括如下步骤:(1)获取载有秘密信息的视频,并配置多秘密共享重构的参数n,p,t,其中n表示一次秘密分发为n片数据,p表示一次秘密分发可分发p个数据,t表示在提取时至少需要t个片的数据才能够恢复原始秘密信息;设视频帧计数器q=0;

(2)对载体视频的第q帧进行解码,判断当前4×4子块是否满足提取条件;如果当前

4×4子块满足提取条件,则提取该4×4子块中的嵌入信息,并将该信息归入第i片的数据中,i=qmodn,其中q为当前帧序号,若不满足提取条件则继续判断下一个邻块,若当前帧解码完,转入步骤(3);

(3)判断第q帧是否是载体视频的最后一帧,若是则转入步骤(4),若不是,则q加1转入步骤(2)中;

(4)得到提取出来的n1个片的数据,对n1个片的每一个片数据的数目进行统计,选取出保存信息最完整的t个片的数据,若选取出来片的个数小于t个则转入步骤(8),若选取出来有t个片的数据,则转入步骤(5)中;

(5)对每一个片的二进制数据进行十进制数值化,得到t个片的数值;

(6)从t个片中依次选取一份数据,组成t个份额的数据,再读取多秘密共享的参数,通过求解矩阵方程得到秘密信息,完成了多秘密共享的重构,一次恢复出原始的p个字节的秘密信息;若片中数据未使用完,则继续步骤(6)的操作;若片中数据使用完,则转到步骤(7);其中,所述通过求解矩阵方程得到秘密信息,完成了多秘密共享的重构,具体为:将提取的t个信息{x1,x2,...,xt},带入单向函数f(r,x)中得到f(r,x1),f(r,x2),...,f(r,xt);

根据1,2,…,p-t和f(r,x1),f(r,x2),...,f(r,xt)的0到p-1次方,依次排列构造出系数矩阵A;

读取Y={h(1),h(2),...,h(p-t),y1,y2,...,yt},其中{h(1),h(2),...,h(p-t),y1,y

2,...,yt}为从视频发送方接收到的信息;

-1

通过求解矩阵方程X=A ·Y即可恢复原始秘密信息,其中p维向量X为所求的秘密信息{s1,s2,......,sp};

(7)得到多秘密共享重构的数据,至此秘密信息提取完成;

(8)提示用户视频数据丢失过多,无法有效的提取出t个片的数据,无法恢复秘密信息,需要重新进行秘密信息的嵌入。

5.如权利要求4所述的方法,其特征在于,所述步骤(2)判断当前4×4子块是否满足提取条件,具体为:判断解码后当前块4×4块的周边邻块预测模式是否同时满足条件:4x4子块右邻块满足预测模式0、3、7的一种,左下邻块满足预测模式0、1、2、4、5、6、8的一种,右下邻块满足预测模式0、1、2、3、7、8的一种,正下邻块满足预测模式1、8的一种。

说明书 :

一种视频隐写信息的嵌入与提取方法

技术领域

[0001] 本发明属于信息隐藏技术领域,更具体地,涉及一种视频隐写信息的嵌入与提取方法。

背景技术

[0002] 为了实现在网络视频传递过程中的隐秘通信,到目前为止,国内外研究学者提出了很多利用现有网络中的网络数据流(视频、文本、图像等)进行隐秘通信的隐写算法。这些隐写算法可以依据鲁棒性能可分为两大部分,第一部分主要是未考虑鲁棒性能的具体的视频隐写算法,其关注于具体的视频载体嵌入位置,以及选取的嵌入位置所带来的嵌入性能与视觉效果的影响。提取时根据嵌入算法选择适合条件的位置对秘密信息进行提取。第二部分是涉及鲁棒性的信息隐藏,但隐蔽的载体通常是图像、文本、音频等,常用于数字水印领域,用于进行数字作品的产权保护。其关注于强调含有隐秘信息的载体作品不被修改、删除及隐秘信息的可检测性,即只要在检测端检测到嵌入的隐秘信息就可以用于产权保护,其具有很大鲁棒性研究空间,因此目前对于此方面已经可以良好的抵御剪切、旋转、压缩等处理。
[0003] 当前的这两种方案分别考虑了具体的视频隐写算法和主要以图像、文本和音频为载体的数字水印的信息隐藏方案。前者主要是各种视频隐写算法,但其未充分考虑在实际隐写系统中的鲁棒性问题,因而它亦具有鲁棒性方面的不足,如果利用其隐写算法在视频载体中嵌入秘密信息,而载体视频在传输过程中因会受到有意或无意的攻击可能出现数据丢失、重编码等问题时,在提取端接收到的视频载体并不是完整无损的,那么很有可能 在接收端很难成功提取到隐秘信息,导致通信的失败。因此,关于此类大量视频隐写算法的提出,虽然丰富了信息隐藏中视频隐写的嵌入方法,但还不足以满足实际的隐蔽通信关于鲁棒性方面的需要。后者利用的载体主要是图像、文本和音频,而且其主要关注于数字作品的版权保护等方面,对于视频隐写来说并不适用,而且对于数字水印与鲁棒性视频隐写两者的目的也不尽相同,数字水印重于对载体是否能够检测到嵌入的信息,鲁棒性视频隐写则要求能够在发送和接收两端实现正常的隐秘通信,虽然前者的鲁棒性研究已经发展的很成熟,但因其不能够直接运用于视频隐写中去,关于视频隐写的鲁棒性还需要进一步的研究和发展。

发明内容

[0004] 针对现有技术的以上缺陷或改进需求,本发明的目的是提供一种提高视频隐写鲁棒性的方案,解决针对视频隐写过程中对于含有隐秘信息的载体视频可能出现的丢包等所导致提取端不能够正常恢复隐秘信息的问题以及为了提高视频隐写鲁棒性而使嵌入信息急剧增大的问题。
[0005] 为了实现上述目的,按照本发明的一个方面,提供了一种视频隐写信息的嵌入方法,包括如下步骤:
[0006] (1)获取将作为载体的网络视频源,并接收用户需要嵌入的秘密信息;
[0007] (2)配置多秘密共享的参数n,p,t,其中n表示一次秘密分发为n片数据,p表示一次秘密分发可分发p个数据,t表示在提取时至少需要t个片的数据才能够恢复原始秘密信息;对待嵌入的秘密信息按每p个数据进行分段,若最后一个分段的数据个数小于p,则补0;
[0008] (3)依次对每个数据段的p个数据利用单向函数和p-1次多项式进行多秘密共享的分发,一次分发为n片数据;重复步骤(3),直到步骤(2)划分的数据段处理完,转入步骤(4);
[0009] (4)依次对分发后n片数据中的每一片的数据进行二进制化,得到二进制化后的每一片比特串中比特的数目num;
[0010] (5)对载体视频的第q帧进行解码,并判断解码后的第q帧当前4×4子块是否符合嵌入条件,其中q≥0;若符合嵌入条件,则在当前4×4子块中选取对视频质量影响较小的右下角位置进行步骤(7)数据的嵌入;若不符合,则对当前帧的下一个4×4子块进行条件判断,直到当前帧解码完,转入步骤(6);
[0011] (6)判断当前嵌入信息的帧是否是视频最后一帧,若是则转入步骤(9),若不是则当前帧序号q加1,转入步骤(5);
[0012] (7)计算i=qmodn,其中q为当前帧序号,根据由步骤(4)得到的num判断第i片已嵌入信息的个数My_Count[i]是否小于num,若是,将第i片信息中的比特嵌入到当前块中,同时每添加一个比特计数器My_Count[i]加1,若不是则转入步骤(8)中;其中My_Count[i]的初始值为0;
[0013] (8)判断由步骤(4)、(7)得到的二进制化后的每一片比特串中的信息是否嵌入完全,若没有转入步骤(6),若是则转入步骤(9)中;
[0014] (9)判断所有的My_Count[i]是否都等于num,若是则嵌入过程完毕,若不是那么视频载体过少,秘密信息未嵌入完全,需要更换视频重新嵌入。
[0015] 在本发明的一个实施例中,所述步骤(5)中判断解码后的第q帧当前4×4子块是否符合嵌入条件,具体为:
[0016] 判断该4×4子块的周边邻块预测模式是否同时满足预测模式条件:4x4子块右邻块满足预测模式0、3、7的一种,左下邻块满足预测模式0、1、2、4、5、6、8的一种,右下邻块满足预测模式0、1、2、3、7、8的一种,正下邻块满足预测模式1、8的一种。
[0017] 在本发明的一个实施例中,所述步骤(8)中判断由步骤(4)得到的二进制化后的每一片比特串中的信息是否嵌入完全具体为:
[0018] 判断My_Count[i],i∈(1,n),是否都等于num,如果是则嵌入完全,如果不是则嵌入不完全。
[0019] 在本发明的一个实施例中,所述步骤(3)中的对每个数据段的p个数 据利用单向函数和p-1次多项式进行多秘密共享的分发,一次分发为n片数据,具体为:
[0020] 利用p个需要共享的秘密信息{s1,s2,......,sp}构造p-1次多项式:h(x)=2 p-1
s1+s2x+s3x+......+spx ;
[0021] 对于所有的xi,i∈(1,n),计算单向函数值f(r,xi),其中单向函数f(r,xi),i∈(1,n)的值两两互不相等,r,xi为随机数;
[0022] 以f(r,x1),f(r,x2),......,f(r,xn)为自变量带入多项式h(x)中,计算得到n个y值:yi=h(f(r,xi)),i∈(1,n);
[0023] 根据参数t,选取j=1,2,...,p-t,分别计算h(j),并将上述h(j)和yi发送给视频接收方以使视频接收方根据所述h(j)和yi提取视频隐写信息;
[0024] 并将上述的n个xi,i∈(1,n)值分别分发到n片数据中,至此分发过程完成。
[0025] 按照本发明的另一方面,还提供了一种视频隐写信息的提取方法,包括如下步骤:
[0026] (1)获取载有秘密信息的视频,并配置多秘密共享重构的参数n,p,t,其中n表示一次秘密分发为n片数据,p表示一次秘密分发可分发p个数据,t表示在提取时至少需要t个片的数据才能够恢复原始秘密信息;设视频帧计数器q=0;
[0027] (2)对载体视频的第q帧进行解码,判断当前4×4子块是否满足提取条件;如果当前4×4子块满足提取条件,则提取该4×4子块中的嵌入信息,并将该信息归入第i片的数据中,i=qmodn,其中q为当前帧序号,若不满足提取条件则继续判断下一个邻块,若当前帧解码完,转入步骤(3);
[0028] (3)判断第q帧是否是载体视频的最后一帧,若是则转入步骤(4),若不是,则q加1转入步骤(2)中;
[0029] (4)得到提取出来的n1个片的数据,对n1个片的每一个片数据的数 目进行统计,选取出保存信息最完整的t个片的数据,若选取出来片的个数小于t个则转入步骤(8),若选取出来有t个片的数据,则转入步骤(5)中;
[0030] (5)对每一个片的二进制数据进行十进制数值化,得到t个片的数值;
[0031] (6)从t个片中依次选取一份数据,组成t个份额的数据,再读取多秘密共享的参数,通过求解矩阵方程得到秘密信息,完成了多秘密共享的重构,一次恢复出原始的p个字节的秘密信息;若片中数据未使用完,则继续步骤(6)的操作;若片中数据使用完,则转到步骤(7);
[0032] (7)得到多秘密共享重构的数据,至此秘密信息提取完成;
[0033] (8)提示用户视频数据丢失过多,无法有效的提取出t个片的数据,无法恢复秘密信息,需要重新进行秘密信息的嵌入。
[0034] 在本发明的一个实施例中,所述步骤(2)判断当前4×4子块是否满足提取条件,具体为:
[0035] 判断解码后当前块4×4块的周边邻块预测模式是否同时满足条件:4x4子块右邻块满足预测模式0、3、7的一种,左下邻块满足预测模式0、1、2、4、5、6、8的一种,右下邻块满足预测模式0、1、2、3、7、8的一种,正下邻块满足预测模式1、8的一种。
[0036] 在本发明的一个实施例中,所述步骤(6)中进行多秘密共享的重构,具体为:
[0037] 将提取的t个信息{x1,x2,...,xt},带入单向函数f(r,x)中得到f(r,x1),f(r,x2),...,f(r,xt);
[0038] 根据1,2,…,p-t和f(r,x1),f(r,x2),...,f(r,xt)的0到p-1次方,依次排列构造出系数矩阵A;
[0039] 读取Y={h(1),h(2),...,h(p-t),y1,y2,...,yt},其中{h(1),h(2),...,h(p-t),y1,y2,...,yt}为从视频发送方接收到的信息;
[0040] 通过求解矩阵方程X=A-1Y即可恢复原始秘密信息,其中p维向量X为 所求的秘密信息{s1,s2,......,sp}。
[0041] 总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
[0042] 1、与一般的视频隐写算法相比,本发明在嵌入信息步骤前利用了多秘密共享技术,嵌入信息过程中步骤(2)、(3)具体的多秘密共享分发技术能够有效的提高视频隐写过程中的鲁棒性能;
[0043] 2、与其他视频隐写方案相比,通过嵌入信息过程中步骤(2)使用一次分发多个数据的秘密信息的思想,本发明在提高视频隐写鲁棒性能的同时,并没有使嵌入的隐秘信息量急剧增大,具有较小的冗余度;
[0044] 3、与其它具有鲁棒性的数字水印方案相比,从背景技术可以看到,本发明作为隐蔽载体的网络视频流约占互联网流量的90%,因此其应用环境极为广阔,易于应用且隐藏信息不容易被发现;
[0045] 4、与当前其它视频隐写方案相比,从嵌入信息过程中步骤(5)到(9)选择的嵌入位置可以看到本发明可保证具有良好的视觉效果与很大的嵌入空间;
[0046] 5、本发明的方案具有良好的应用环境,从提取信息过程中步骤(7)的信息恢复效果来看,可广泛应用于需要进行隐秘通信的场景中去,甚至于不安全的通信信道中去,直接指导构建H.264视频隐秘通信平台,支持我国在军事、外交和重要商务领域的特殊应用,服务国家网络空间安全战略。例如应用于一般网络环境下的商业隐秘环境及军事环境下的秘密通信环境中去。

附图说明

[0047] 图1为本发明一实施例中视频隐写信息的嵌入方法的流程图;
[0048] 图2为本发明一实施例中视频隐写信息的提取方法的流程图。

具体实施方式

[0049] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图 及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
[0050] 如图1所示,为本发明一实施例中视频隐写信息的嵌入方法的流程图,所述方法包括以下步骤:
[0051] (1)获取将作为载体的网络视频源,并接收用户需要嵌入的秘密信息;具体而言,需要嵌入的秘密信息的容量与视频载体和所选取的隐写算法密切相关,虽然本发明需要牺牲秘密信息的嵌入容量来保证鲁棒性,但所增加的数据量非常小,本发明实施例中增加量为原秘密信息的0.36倍,因此满足一般的视频隐写通信要求。
[0052] (2)配置多秘密共享的参数(n,p,t),其中n表示一次秘密分发为n片数据,p表示一次秘密分发可分发p个数据,t表示在提取时至少需要t个片的数据才能够恢复原始秘密信息。本实施例中,可以选取(n,p,t)为(8,6,3)。
[0053] 并对待嵌入的秘密信息按每p个数据进行分段,若最后一个分段数据个数小于p,则补0;
[0054] (3)然后依次对每p个数据利用单向函数和p-1次多项式进行多秘密共享的分发,一次分发为n片数据。重复步骤(3),直到步骤(2)划分的数据段处理完,转入步骤(4)。其中分发过程的关键点在于选取合适的单向函数用于保证信息的安全性能,且保证单向函数f(r,xi),i∈(1,n)的值两两互不相等,其中r,xi为随机数。分发过程如下示:
[0055] 设定{s1,s2,......,sp}是p个需要共享的秘密信息,利用p个秘密信息构造p-1次多项式:
[0056] h(x)=s1+s2x+s3x2+......+spxp-1
[0057] 对于所有的xi,i∈(1,n),计算单向函数值f(r,xi)。
[0058] 以f(r,x1),f(r,x2),......,f(r,xn)为自变量带入多项式h(x)中,计算得到n个y值:yi=h(f(r,xi)),i∈(1,n)。
[0059] 为了在提取端提取信息,同时需要根据参数t,选取j=1,2,...,p-t,分别计算h(j),将上述h(j)和yi发送给视频接收方以使视频接收方根据所述h(j)和yi来提取视频隐写信息;具体地,将上述h(j)和yi发送给视频接收方可以通过可信通道的单播、广播方式或嵌入在载体视频的其他位置如运动矢量等来实现。并将上述的n个xi,i∈(1,n)值分别分发到n片数据中,至此分发过程完成。
[0060] 举例如下:假设秘密信息是{s1,s2,......,sp}={1,2,…,6},那么利用秘密信息所构造的多项式是:
[0061] h(x)=1+2x+3x2+4x3+5x4+6x5假设单向函数f(r,x)是:f(r,x)=r+x(mod p),r=3,p=12;随机选取的xi,i∈(1,n)为{1,2,......,8},那么计算得到对于xi,i∈(1,n),8个f(r,xi)依次是{4,5,6,7,8,9,10,11},将8个f(r,xi)作为自变量带入多项式:
[0062] h(x)=s1+s2x+s3x2+......+spxp-1
[0063] 即得到分发后的n个yi,i∈(1,8)值:
[0064] Y={7737,22461,54121,114381,219345,390277,654321,1045221}
[0065] 对于i=1,2,3,同样带入h(x)中,计算h(i)是:{21,321,2005},至此分发完成。
[0066] (4)依次对分发后n片数据中的每一片的数据进行二进制化,得到每一片比特串中比特的数目num。
[0067] (5)对载体视频的第q(q≥0)帧进行解码,并判断解码后的第q帧当前4×4子块是否符合本发明无帧内失真漂移的嵌入算法,该判断条件是指解码后视频载体待嵌入块的周边邻块预测模式(预测模式是指利用周边邻块预 测当前块像素值的方法选择,数值0-9分别表示从周边邻块的不同位置像素值来预测当前块的像素值,具体计算方法见H.264标准文档)是否同时满足预测模式条件:4x4子块右邻块满足预测模式0、3、7的一种,左下邻块满足预测模式0、1、2、4、5、6、8的一种,右下邻块满足预测模式0、1、2、3、7、8的一种,正下邻块满足预测模式1、8的一种(如右邻块预测模式为0,左下邻块预测模式为5,右下邻块预测模式为1,下邻块预测模式为8即满足条件)若符合判断条件,则在当前4×4子块中选取对视频质量影响较小的右下角位置 进行步骤(7)数据的嵌入。若不符合,则对当前帧的下一个4×4子块进行条件判断,直到当前帧解码完,转入步骤(6)。
[0068] (6)判断当前嵌入信息的帧是否是视频最后一帧,若是则转入步骤(9),若不是则当前帧序号q加1,转入步骤(5)。
[0069] (7)假设当前帧号qmodn=i,根据步骤(4)得到的num判断第i片已嵌入信息的个数My_Count[i]是否小于num,若是,将第i片的信息中的比特依次嵌入到当前块中,同时每添加一个比特计数器My_Count[i]加1,若不是则转入步骤(8)中。
[0070] (8)判断由步骤(4)得到的每一片的信息是否嵌入完全(判断标准为My_Count[i],i∈(1,n)都等于num)若没有转入步骤(6),若是则转入步骤(9)中;
[0071] (9)判断所有的My_Count[i]是否都等于num,若是则嵌入过程完毕,若不是那么视频载体过少,秘密信息未嵌入完全,需要更换视频重新嵌入。
[0072] 如图2所示,为本发明一实施例中视频隐写信息的提取方法的流程图,所述方法包括以下步骤:
[0073] (1)获取载有秘密信息的视频,并配置多秘密共享重构的参数(n,p,t),这里与嵌入对应,选取(n,p,t)为(8,6,3)。
[0074] (2)对载体视频的第q帧进行解码(q从0开始),如果当前块符合隐写算法中的提取条件,即满足嵌入信息过程中步骤(5)的判断条件。则对应的提取信息,假设当前帧号qmodn=i,那么将提取的信息归入第i片的数据中,若不满足提取条件则继续判断下一个邻块,若当前帧解码完,转入步骤(3)。
[0075] 本发明所使用的提取条件与嵌入时的嵌入条件相对应,即解码后当前块4×4块的周边邻块预测模式是否同时满足条件:4x4子块右邻块满足预测模式0、3、7的一种,左下邻块满足预测模式0、1、2、4、5、6、8的一种,右下邻块满足预测模式0、1、2、3、7、8的一种,正下邻块满足预测模式1、8的一种。若是那么当前块满足提取条件,若不是则继续判断下一个4×4块的提取条件。同时对提取信息后的视频4×4块内的其他系数进行与嵌入信息过程中相应的改变来进行补偿,保证了视频载体与原视频相比是无变化的,即本视频隐写是可逆的视频隐写方法。
[0076] (3)判断第q帧是否是载体视频的最后一帧,若是则转入步骤(4),若不是,则q加1转入步骤(2)中。
[0077] (4)得到提取出来的n1个片的数据(此处用n1表示是因为对于可能的视频载体的丢失,提取出来的片的数据有可能不是完整的n个片的数据,即n1<=n),对n1个片的每一个片数据的数目进行统计,选取出保存信息最完整的t个片的数据(即选取出统计数目最大的片),若选取出来片的个数小于t个则转入步骤(8),若选取出来有t个片的数据,则转入步骤(5)中。
[0078] (5)对每一个片的二进制数据进行十进制数值化,得到选出来的t个片的数值。
[0079] (6)从t个片中依次选取一份数据,组成t个份额的数据,再读取多秘密共享的参数,通过求解矩阵方程得到秘密信息,从而完成了多秘密共享的重构,一次恢复出原始的p个字节的秘密信息。若片中数据未使用完, 则继续步骤(6)的操作;若片中数据使用完,则转到步骤(7)。重构过程如下示:
[0080] 假设提取的t个信息是{x1,x2,...,xt},那么带入单向函数f(r,x)中可以得到f(r,x1),f(r,x2),...,f(r,xt)。
[0081] 同时根据1,2,…,p-t和f(r,x1),f(r,x2),...,f(r,xt)的0到p-1次方,依次排列构造出系数矩阵A:
[0082]
[0083] 读取Y={h(1),h(2),...,h(p-t),y1,y2,...,yt}。假设所求的秘密信息{s1,s2,......,sp}为p维向量X。那么就有关系式:
[0084] AX=Y
[0085] 即通过求解矩阵方程X=A-1·Y即可恢复原始秘密信息。
[0086] 举例如下:假设提取的秘密信息是{1,2,3},将{1,2,3}带入相应的单向函数中得到3个f(r,xi)值为{4,5,6},根据这3个f(r,xi)与{1,2,3}构造系数矩阵A
[0087]
[0088] 读取向量Y={21,321,2005,7737,22461,54121},求解矩阵方程X=A-1Y即可得到秘密信息X={1,2,3,4,5,6}。
[0089] (7)得到多秘密共享重构的数据,至此秘密信息提取完成,提取完成 后,可以同时进行载体视频的播放。
[0090] (8)提示用户视频数据丢失过多,无法有效的提取出t个片的数据,无法恢复秘密信息,需要重新进行秘密信息的嵌入。
[0091] 本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。