法律状态公告日
法律状态信息
法律状态
2022-08-19
未缴年费专利权终止 IPC(主分类):H04N13/351 专利号:ZL2015105718304 申请日:20150909 授权公告日:20180529
专利权的终止
2018-06-12
著录事项变更 IPC(主分类):H04N13/351 变更前: 变更后: 申请日:20150909
著录事项变更
2018-05-29
授权
授权
2016-01-20
实质审查的生效 IPC(主分类):H04N15/00 申请日:20150909
实质审查的生效
2015-12-23
公开
公开
技术领域
本发明属于裸眼3D视频加密技术领域,尤其涉及一种基于数字水印加密的裸眼3D 视频加密方法及系统。
背景技术
裸眼3D视频是一种无需佩戴辅助设备(如红蓝、偏振等)的可直接观看的3D视 频,它在各个领域有着广泛的应用背景。
通常,为了获得更好的立体效果,往往采用多幅视差图像进行合成,观看者在不同 角度只需看到其中两幅图像即可产生视差并看到立体效果。针对这种合成,便需要一种 极其便捷快速的算法,来大量合成多幅视差图像,形成裸眼3D视频片源。
国内外学者和研究机构对图像水印的研究已经趋于完善,但对视频数字水印的研究 还相对滞后,尚未建立统一的评价标准,仍有待成熟。
随着裸眼3D视频市场的扩大,如何保护片源著作权等版权问题已逐渐被人们所关 注。针对这个问题,市场上急需一种可以快速对裸眼3D视频进行加密的方法。
发明内容
针对现有技术存在的不足,本发明提供了一种基于数字水印加密的裸眼3D视频加 密方法及系统,该方法可快速便捷的实现视频加密,从而可进一步实现裸眼3D视频的 版权保护。
为解决上述技术问题,本发明采用如下技术方案:
一、基于数字水印加密的裸眼3D视频加密方法,包括步骤:
步骤1,将随机数随机排列组合成原始数字水印,并将原始数字水印随机分为m个 子数字水印,m表示2D帧图像所包含的视点图像数;
步骤2,子数字水印分别嵌入2D帧图像的各视点图像,从而获得水印加密的2D帧 图像;其中,子数字水印嵌入视点图像具体为:
视点图像分块为子图像块,对子图像块进行离散余弦变换得到子图像的DCT域系 数矩阵,即子图像块的水印系数,采用水印系数将子数字水印嵌入子图像块,组合嵌入 了子数字水印的子图像块,得到水印加密的视点图像;
步骤3,循环步骤1~2直至2D帧图像均进行水印加密,将水印加密的2D帧图像转 化为裸眼3D视频;
步骤4,提取裸眼3D视频帧图像所包含的视点图像的子数字水印,获得原始数字 水印。
上述原始数字水印由a·m个随机数随机排列构成,a为6~8范围内的正整数;所述 的子数字水印由a个随机数组成。
步骤2中所述的子数字水印嵌入视点图像,进一步包括子步骤:
2.1使用Arnold变换对子数字水印图像W置乱,得到置乱后的子数字水印图像W';
2.2将视点图像I分为大小为N×N的子图像块,对各子图像块分别进行离散余弦 变换,得到各子图像块的DCT域系数矩阵,N为经验值;
2.3设定嵌入强度alpha,随机生成长度均为N的伪随机数列k1、k2;
2.4基于嵌入强度alpha和伪随机数列k1、k2将子数字水印嵌入子图像块;
2.5组合嵌入了子数字水印的各子图像块,获得嵌入了子数字水印的视点图像。
子步骤2.4进一步包括:
(1)确定参数k:
当W'(i,j)=1时,令k(i)=k1(i),当W'(i,j)=0时,令k(i)=k2(i);k(i)、k1(i)、k2(i) 分别表示数列k、k1、k2中第i个数字,i=1,2,3,...N,W'(i,j)表示子数字水印图像W' 中(i,j)位置的像素值;
(2)修改子图像块DCT域系数矩阵的中频分量:
采用公式Mij(n,N-n+1)=Mij(n,N-n+1)+alpha*k(n)修改子图像块DCT域系数 矩阵的中频分量,Mij(n,N-n+1)表示子图像Iij的DCT域系数矩阵中第n行第 (N-n+1)列的元素;
(3)对修改后的DCT域系数矩阵进行逆离散余弦变换,得到嵌入了子数字水印的 子图像块。
步骤3中,将嵌入了数字水印的2D帧图像转化为裸眼3D视频。
步骤4中采用盲水印法提取视点图像的子数字水印。
所述的采用盲水印法提取视点图像的子数字水印进一步包括:
4.1将视点图像I'分为大小为N×N的子图像块,对各子图像块分别进行离散余弦 变换,得到各子图像块的DCT域系数矩阵;
4.3提取子图像块中数字水印序列p,p(n)=Mij'(n,N-n+1),p(n)表示数字水印 序列p的第n个元素,n=1,2,3,...N,Mij'(n,N-n+1)表示DCT域系数矩阵中第n行第 (N-n+1)列的元素;
4.4分别求出数字水印序列p与伪随机数列k1、k2的自相关系数c1、c2;
4.5若c1≥c2,则水印信息E(i,j)=1;反之,则水印信息E(i,j)=0;
4.6重复子步骤4.3~4.5,获得水印信息E,对水印信息E进行Arnold反置乱,即原 始数字水印。
二、基于数字水印加密的裸眼3D视频加密系统,包括:
数字水印生成模块,用来将随机数随机排列组合成原始数字水印,并将原始数字水 印随机分为m个子数字水印,m表示2D帧图像所包含的视点图像数;
2D帧图像水印加密模块,用来将子数字水印分别嵌入2D帧图像的各视点图像,从 而获得水印加密的2D帧图像;其中,子数字水印嵌入视点图像具体为:
视点图像分块为子图像块,对子图像块进行离散余弦变换得到子图像的DCT域系 数矩阵,即子图像块的水印系数,采用水印系数将子数字水印嵌入子图像块,组合嵌入 了子数字水印的子图像块,得到水印加密的视点图像;
2D帧图像转3D视频模块,用来将水印加密的2D帧图像转化为裸眼3D视频;
数字水印提取模块,用来提取裸眼3D视频帧图像所包含的视点图像的子数字水印, 获得原始数字水印。
和现有技术相比,本发明的技术效果如下:
本发明基于数字水印技术,将水印信息散落在裸眼3D视频各帧图像的9视点图像 中,从而对裸眼3D视频逐帧进行加密。本发明具有良好的鲁棒性和不可见性,可快速 便捷地对裸眼3D视频进行加密,从而进一步实现裸眼3D视频的版权保护;而且不会 破坏视频播放显示效果。
附图说明
图1为帧图像的9视点图像;
图2为九视点式的2D图像转3D视频的流程示意图;
图3为九视点式的2D图像转3D视频的原理示意图。
具体实施方式
下面将结合具体实施方式进一步说明本发明技术方案。
本发明方法的处理对象是2D帧图像,即采用本发明方法对2D帧图像进行逐帧处 理,具体步骤如下:
步骤1,选取随机数字序列。
该随机数字序列即原始数字水印,用于嵌入2D帧图像进行加密。随机数字序列由 a·m个随机数随机排列构成,m表示一帧图像中视点图像数,裸眼3D视频中帧图像所 包含的视点图像数一般为4、8或9等;a为正整数,优选为6~8范围内的正整数。
本具体实施中,待处理的帧图像由9视点图像构成,选取了63个随机数随机排列 组成原始数字水印。
步骤2,将原始数字水印随机分为m个子数字水印,各子数字水印由a个随机数组 成,子水印将用于嵌入到裸眼3D视频的一帧图像。
本具体实施中,将原始数字水印随机分为9个子数字水印,各子数字水印由7个随 机数组成。图1为2D帧图像的9视点图像,9个子数字水印将分别嵌入帧图像的9视 点图像中,从而可实现裸眼3D视频的初步加密。
步骤3,子数字水印分别嵌入2D帧图像的各视点图像。
对当前2D帧图像的各视点图像分别进行如下处理:
视点图像分块获得子图像块,对各子图像块分别进行DCT变换(离散余弦变换) 得到各子图像块的DCT域系数矩阵,通过修改DCT域系数将子数字水印嵌入各子图像 块,得到含子数字水印的子图像块,将各子图像块进行组合得到含子数字水印的2D帧 图像的视点图像。
对构成2D帧图像的9视点图像分别进行上述处理,即获得嵌入了数字水印的2D 帧图像。
子数字水印嵌入视点图像的具体实施方式如下:
3.1读取子数字水印图像W和视点图像I。
3.2使用Arnold变换对子数字水印图像W置乱,得到置乱后的子数字水印图像W'。
3.3将视点图像I分为大小为N×N的子图像块Iij,i=1,2,3,...N,j=1,2,3,...N, 对各子图像块分别进行DCT变换,得到子图像块Iij的DCT域系数矩阵Mij=dct(Iij)。
N为经验值,具体实施中,N为8,但不限于8。
3.4设置嵌入强度alpha,本具体实施中嵌入强度alpha设为2。随机生成2个长度 均为N的伪随机数列k1、k2作为水印嵌入的密钥。
3.5基于子数字水印图像W'修改DCT域系数矩阵Mij=dct(Iij)的中频分量。
首先,确定修改DCT域系数矩阵的参数:
当W'(i,j)=1时,令k(i)=k1(i),i=1,2,3,...n,k(i)和k1(i)分别表示数列k和k1中第 i个数字;当W'(i,j)=0时,令k(i)=k2(i),i=1,2,3,...n,k(i)和k2(i)分别表示数列k和k2中第i个数字。W'(i,j)表示置乱后的子数字水印图像W'中(i,j)位置的像素值。
然后,对子图像块Iij的DCT域系数矩阵Mij=dct(Iij)的中频分量进行修改:
式(1)中,Mij(n,N-n+1)表示DCT域系数矩阵Mij中第n行第(N-n+1)列的元 素,本具体实施中,N=8,n取1,2,...8。
3.6对修改后的DCT域系数矩阵进行逆DCT变换,得到嵌入了子数字水印的子图 像块Iij'。
3.7按分块顺序重新组合子图像块Iij',即获得嵌入了子数字水印的视点图像I'。
循环步骤1~3至裸眼3D视频所有帧图像中均完成数字水印加密。
步骤4,采用基于FPGA(现场可编程逻辑门阵列)和DIBR的九视点式2D转3D 视频算法处理水印加密后的2D帧图像,实现2D帧图像到裸眼3D视频的转化。
2D帧图像到裸眼3D视频的转化为本技术领域内的常规技术,为便于本领域技术人 员的理解,下面对2D帧图像到裸眼3D视频的转化原理进行介绍。
图2为九视点式的2D帧图像转裸眼3D视频的流程示意图,图3为九视点式的2D 帧图像转裸眼3D视频的原理示意图。由于深度值不同,2D帧图像中各像素点在各视角 的位移量也不一样,通过分析视角间对应几何关系,可以依据2D帧图像中各像素点对 应的深度值及位置,计算出各像素点对应于各视点图像的正确位置,其相互关系如下式:
图3中P点对应的灰阶深度值,通过式(2)可以算得其实际成像距离,简化方程 式,令可以得到:
PZ=ZF(1-a)+aZN(4)
将式(4)代如入式(2)可得:
即:
由式(6),可以计算出原始2D帧图像中各像素点对应到合成新视角视频图像中的 正确位置。
式(2)~(6)中:
S0表示中心视角的像素位置,一般以输入的2D帧图像为中心视角;
k表示视角位置,对九视点图像而言,中心视角对应的视角位置k=0,左边的视角 位置k依次1、2、3、4;右边的视角位置k依次5、6、7、8;
b表示两眼间距,单位:cm;
ZF表示立体成像离屏幕实际距离的最大值,单位:cm;
ZN表示立体成像离屏幕实际距离的最小值,单位:cm;
PZ表示据P点的实际灰阶深度值,根据公式(4),可算得立体成像的实际距离;
ρ表示每厘米存在的像素点数,根据显示屏实际规格获得ρ值;
d表示人眼与显示屏的距离,单位:cm。
步骤5,读取裸眼3D视频时对帧图像的9视点图像进行水印提取,获得原始数字 水印。
本具体实施中采用盲水印法进行水印提取,即只需从视点图像的水印嵌入位置上读 取含水印信息的数据,再与伪随机数列k1、k2进行相关性检测,即可提取出水印,不需 要使用视点图像。
具体过程如下:
5.1读取嵌入了子数字水印的视点图像I'。
5.2将视点图像I'分成大小为N×N的子图像块Iij',i=1,2,3,...N,j=1,2,3,...N, 对各子图像块Iij'分别进行DCT变换获得各子图像块Iij'的DCT域系数矩阵 Mij'=dct(Iij')。
5.3读取子图像块Iij'中含水印信息的数据,过程如下:
式(7)中:
p(n)表示提取的数字水印序列n的第i个元素,n=1,2,3,...N;
Mij'(n,N-n+1)表示DCT域系数矩阵Mij'中第n行第(N-n+1)列的元素。
5.4分别求出p与伪随机数列k1、k2的自相关系数c1、c2,p为提取的数字水印序 列。
5.5若c1≥c2,则估计的水印信息E(i,j)=1;反之,E(i,j)=0。
重复执行步骤5.3~5.5,依次提取得到置乱的图像E。
5.6对置乱的图像E进行Arnold反置乱,即可得到提取的水印图像Q,即原始数字 水印。
机译: 制作裸眼单眼,3D视频相机和3D视频设备可以观看的三维图像的方法
机译: 裸眼三维视频图像显示系统,裸眼三维视频图像显示设备,游戏机和视差屏障片
机译: 裸眼三维视频图像显示系统,裸眼三维视频图像显示设备,游戏机和视差屏障片