数字水印算法介绍
- 格式:pdf
- 大小:106.56 KB
- 文档页数:3
数字水印技术目录一、数字水印技术发展 (2)二、数字水印技术特点 (2)1、隐蔽性 (2)2、鲁棒性 (2)3、抗篡改性 (3)4、水印容量 (3)5、安全性 (3)6、低错误率 (3)三、数字水印技术分类 (3)1、按特性划分 (3)2、按附载的媒体划分 (4)3、按检测过程划分 (4)4、按内容划分 (5)5、按用途划分 (5)6、按隐藏位置划分 (6)7、按透明性划分 (6)四、数字水印技术应用 (6)1、印刷数字水印 (6)2、打印数字水印 (7)3、屏幕数字水印 (8)4、多媒体数字水印 (8)一、数字水印技术发展数字水印(Digital Watermark)一种应用计算机算法嵌入载体文件的保护信息。
数字水印技术,是一种基于内容的、非密码机制的计算机信息隐藏技术。
它是将一些标识信息(即数字水印)直接嵌入数字载体当中(包括多媒体、文档、软件等)或是间接表示(修改特定区域的结构),且不影响原载体的使用价值,也不容易被探知和再次修改。
但可以被生产方识别和辨认。
通过这些隐藏在载体中的信息,可以达到确认内容创建者、购买者、传送隐秘信息或者判断载体是否被篡改等目的。
数字水印是保护信息安全、实现防伪溯源、版权保护的有效办法,是信息隐藏技术研究领域的重要分支和研究方向。
二、数字水印技术特点1、隐蔽性也称不可感知性,即对于不可见水印处理系统,水印嵌入算法不应产生可感知的数据修改,也就是水印在通常的视觉条件下应该是不可见的,水印的存在不会影响作品的视觉效果。
2、鲁棒性水印必须很难去掉(希望不可能去掉),当然在理论上任何水印都可以去掉,只要对水印的嵌入过程有足够的了解,但是如果对水印的嵌入只是部分了解的话,任何破坏或消除水印的企图都应导致载体严重的降质而不可用。
3、抗篡改性与抗毁坏的鲁棒性不同,抗篡改性是指水印一旦嵌入到载体中,攻击者就很难改变或伪造。
鲁棒性要求高的应用,通常也需要很强的抗篡改性。
在版权保护中,要达到好的抗窜改性是比较困难的。
数字水印算法
数字水印算法是一种数字版权保护技术,用于将特定信息嵌入数
字媒体中,以保护版权和防止盗版。
数字水印可以嵌入到图像、音频、视频等数字媒体中,不会影响原始媒体的质量和内容,但又能够将特
定的标识信息嵌入进去。
数字水印算法包括空域算法和频域算法两种,其中空域算法是在原始媒体中直接嵌入数字水印,而频域算法则是在
傅里叶变换后的频域中嵌入数字水印。
数字水印算法具有不可见性、
稳定性、鲁棒性和保密性等优点,已被广泛应用于数字版权保护、证
据保全、信息认证等领域。
数字水印及DCT算法分析2.1数字水印的定义和分类数字水印技术是一种信息隐藏技术,他的基本思想是在数字图像、音频和视频等数字产品中嵌入秘密信息,以便于保护数字产品的版权、证明产品的真实可靠性、跟踪盗版行为或者提供产品的附加信息。
其中的秘密信息可以是版权标识、用户序列号或是产品的相关信息。
一般,它需要经过适当变换再嵌入数字产品中,通常称变换后的秘密信息为数字水印。
通常可以定义水印为以下的信号:W={w i︳w i∈O,i=0,1,2,…,M−1}式中,M为水印序列的长度,O代表值域。
实际上,水印不仅可以为一维序列,也可以是二维阵列甚至是三维或高维信号,这通常要根据载体对象的维数来确定,如音频对应一维,静止图像对应二维,动态图像对应三维。
对于高维情况,可以将高维信号按一定顺序展成一维形式。
水印信号的值域可以是二值形式,如O={0,1},O={-1,1}或O={-r,r},或是高斯白噪声。
随着数字水印技术的发展,水印算法的分类也越来越多。
数字水印技术可以从不同的角度进行划分:(1)按水印发展来看,可分为第一代水印和第二待水印。
(2)按数字水印的内容,可以将水印划分为有意义水印和无意义水印,有意义水印是指水印本身也是某个数字图像或数字音频片段的编码,无意义水印则只对应于一个序列号。
(3)按用途划分,我们可以将数字水印划分为票据防伪水印、版权保护水印、篡改提示水印和隐蔽标识水印。
(4)按嵌入的水印信号形式来分,可以分为一维水印和多维水印。
(5)按嵌入方法可以分为可逆水印与不可逆水印。
(6)按水印检测方法,可分为盲水印和非盲水印(明文水印)。
明文水印在检测过程中需要原始数据,而盲水印的检测只需密钥。
不需要原始数据。
(7)按鲁棒性来分,可分为易脆水印、半易脆水印和鲁棒水印。
(8)从外观上分类,可分为可见水印和不可见水印。
(9)从水印的嵌入御来分,可分为时(空)域数字水印、变换域/频域数字水印、时频域数字水印和时间尺度域数字水印。
水印算法近年来,数字水印技术研究取得了很大的进步,下面对一些典型的算法进行了分析,除特别指明外,这些算法主要针对图像数据(某些算法也适合视频和音频数据)。
空域算法该类算法中典型的水印算法是将信息嵌入到随机选择的图像点中最不重要的像素位(LSB:least significant bits)上,这可保证嵌入的水印是不可见的。
但是由于使用了图像不重要的像素位,算法的鲁棒性差,水印信息很容易为滤波、图像量化、几何变形的操作破坏。
另外一个常用方法是利用像素的统计特征将信息嵌入像素的亮度值中。
Patchwork算法方法是随机选择N对像素点(ai,bi) ,然后将每个ai点的亮度值加 1 ,每个bi点的亮度值减1,这样整个图像的平均亮度保持不变。
适当地调整参数,Patchwork方法对JPEG压缩、FIR滤波以及图像裁剪有一定的抵抗力,但该方法嵌入的信息量有限。
为了嵌入更多的水印信息,可以将图像分块,然后对每一个图像块进行嵌入操作。
变换域算法该类算法中,大部分水印算法采用了扩展频谱通信(spread spectrum communication)技术。
算法实现过程为:先计算图像的离散余弦变换(DCT),然后将水印叠加到DCT域中幅值最大的前k系数上(不包括直流分量),通常为图像的低频分量。
若DCT系数的前k个最大分量表示为D=,i=1 ,… ,k,水印是服从高斯分布的随机实数序列W =,i=1 ,… ,k,那么水印的嵌入算法为di = di(1 + awi),其中常数a为尺度因子,控制水印添加的强度。
然后用新的系数做反变换得到水印图像I。
解码函数则分别计算原始图像I和水印图像I*的离散余弦变换,并提取嵌入的水印W*,再做相关检验以确定水印的存在与否。
该方法即使当水印图像经过一些通用的几何变形和信号处理操作而产生比较明显的变形后仍然能够提取出一个可信赖的水印拷贝。
一个简单改进是不将水印嵌入到DCT域的低频分量上,而是嵌入到中频分量上以调节水印的顽健性与不可见性之间的矛盾。
基于DWT-SVD数字水印算法共3篇基于DWT-SVD数字水印算法1数字水印技术是一种把信息嵌入到数字媒体中的技术,可用于图像、音频或视频等多媒体信息的保护。
其中DWT-SVD数字水印算法是一种应用广泛、效果优良的数字水印算法。
本文将从以下三个方面进行讲解:DWT-SVD数字水印算法的基本原理、其优点和不足以及应用场景。
一、DWT-SVD数字水印算法的基本原理DWT-SVD数字水印算法主要是使用小波变换DWT和奇异值分解SVD方法实现,其基本原理如下:首先,我们将需加入水印的原始图像进行一次小波分解,将其分解成多个低频子带和高频子带。
选取其中一些高频子带进行奇异值分解,得到一个奇异值矩阵以及对应的左右奇异向量。
其次,将需要嵌入的信息经过编码处理,得到一个水印向量,通过调整奇异矩阵中的某些值来将水印嵌入到奇异矩阵中。
最后,将修改后的奇异矩阵与左右奇异向量相乘,得到最终的水印图像。
反解时,将加入水印后的图像再次进行DWT分解,提取出嵌入的水印并解码,即可得到原始的水印信息。
二、DWT-SVD数字水印算法的优点和不足1. 优点DWT-SVD数字水印算法具有以下优点:1)水印容量较大,可嵌入的信息量较大,可达到几百比特甚至更高的水平,适用于保护大量机密信息。
2)水印的鲁棒性较强,可以抵御很多常见的攻击,如裁剪、旋转、缩放、添加噪声等。
3)加水印后的图像质量较高,肉眼难以察觉。
2. 不足DWT-SVD数字水印算法也存在以下不足:1)算法的复杂度较高,计算量较大。
水印嵌入和解码过程需要进行DWT和SVD计算,耗费时间较长。
2)水印的鲁棒性受到嵌入位数和噪声干扰的影响,过高的噪声会使水印易被攻击者攻击。
三、DWT-SVD数字水印算法的应用场景DWT-SVD数字水印算法广泛应用于数字版权保护、信息安全等领域。
具体应用场景包括:1. 银行或金融机构的重要数据或文档嵌入数字水印,保护机密信息。
2. 电影、音乐、软件等数字内容的版权保护,嵌入数字水印防止黑客盗版。
数字水印算法列举
湖南科技大学计算机科学与工程学院
①基于LSB 的数字水印方案(空间域、不可逆、不可见和盲检测)
嵌入步骤:
(1)先把水印信息转化为二进制比特流I。
(2)根据I的长度生成密钥K,并且严格保存。
密钥K是对图像载体像素位置的一个映射。
(3)把I中的每一位依次根据密钥K,置换掉原始载体图像中相应位置的像素最后一位。
提取步骤:
(1)根据严格保存的密钥K遍历嵌入了水印的图像中的相应像素,提取出最后一位。
(2)将提取出来的每一位重新组合成水印信息。
②基于差分扩展的数字水印方案(变换域、可逆、不可见和盲检测)
嵌入步骤:
(1)将图像M分成像素点对(x,y),将水印信息转化为二进制比特流,比特流的每一位用m 表示。
(2)根据水印信息比特流的长度随机生成信息的嵌入位置k作为密钥信息严格保存。
(3)对图像M计算均值l和差值h:⎪⎩⎪⎨⎧-=+=y
x h y x floor l 2((floor表示向下取整)
(4)将水印比特信息m以差值扩展的方法嵌入到差值h中:m
h h +⨯='2(5)将得到的h '代入(3)中,得到新的图像像素对,形成嵌入秘密信息后的图像C。
提取步骤:
(1)将图像C分成像素点对(x,y),读入密钥信息K。
(2)将图像C依旧按照嵌入步骤中的(3)式计算均值l和差值h。
(3)根据密钥k找到相应位置,提取差值h的最后一位比特信息m,再将差值h进行变换得到1>>='h h 。
(4)将提取到的比特信息m进行组合可以恢复水印信息,将得到的h '代入嵌入步骤的(3)中计算新的图像像素对可以恢复原始图像载体M。
③基于直方图修改的数字水印算法(空间域、可逆、不可见和盲检测)
嵌入步骤:(1)找到直方图的零点z和峰值点p,将z v p <<的像素值v自加1。
(2)漂移后的直方图v=p处即为嵌入水印的位置,将水印信息转化为二进制流并记为k,按顺序嵌入,即k v v +=';(3)得到的由像素值v '组成的图像就是嵌入秘密信息后的图像。
同时p、z以密钥的形式保存。
提取步骤:
(1)读取密钥,得到p、z的值。
(2)遍历图像的每个像素,当像素v=p时,提取信息0并保持数据不变;当v=p+1时,提取信息1并将数据减1。
(3)当v<p或v>z时,数据保持不变;当p-1<v<z时,数据自减1。
(4)提取到的比特信息可以组合成水印信息,重新计算像素后的图像即为原始载体图像。
④基于Hear小波变换矩阵的数字水印算法(变换域、可逆、不可见和盲检测)
嵌入算法:a.首先将原始图像C 进行一次Hear 小波变换,得到四块区域:LL、LH、HL、HH。
b.针对变换域中的高频区域,即LH、HL、HH 区域,采用直方图修改的方法,计算高频区域数据的直方图。
c.找到直方图的零点z 和峰值点p,并重新扫描高频区域的数据v,将z v p <<的系数值自加1。
d.漂移后的直方图v=p 处即为嵌入水印的位置,将水印图像转化为二进制流并记为k,按顺序嵌入,即k v v +=';
e.将嵌入了水印的变换域数据矩阵进行Hear 小波逆变换,并将z 和p 作为密钥严格保存下来。
提取算法:a.读取密钥,得到p、z。
b.将嵌入了水印的图像进行Hear 小波变换。
c.一次遍历变换域中的高频部分,当v=p 时,提取信息0并保持数据不变;
当v=p+1时,提取信息1并将数据减1。
d.当v<p 或v>z 时,数据保持不变;当p-1<v<z 时,数据自减1。
e.按照c 和d 遍历完整个变换域中的高频部分,水印信息就被解析出来。
f.将最后的变换域数据矩阵进行Hear 小波逆变换即能恢复出原始图像。
⑤基于DCT变换域的数字水印算法(变换域、不可逆、不可见和非盲检测)
水印嵌入:⑴首先将原始图像C 进行离散余弦变换得到变换域系数矩阵C '。
⑵在变换域系数矩阵中的中频段随机选出一些系数,进行如下操作:
i
m j i x j i x α+='),(),(其中:),(j i x 为DCT 系数i m 为第i 个秘密信息比特α为可调强度),(j i x '为隐藏
秘密后的DCT 系数
⑶将隐藏秘密后的DCT 系数矩阵进行DCT 逆变换,水印已经嵌入。
水印提取:⑴将原始图像和嵌入了水印的图像进行DCT 变换,分别得到DCT 系数矩阵A 和B。
⑵依次遍历两个矩阵,将系数不相等的地方进行B-A 操作还原出秘密信息片段。
⑶将所有还原的秘密信息片段连接起来,即可还原出水印信息。
⑥基于二值水印图像的可见数字水印盲检测算法(空间域、不可逆、可见和盲检测)
水印嵌入:⑴加载水印图像和原始载体图像,分析二值水印图像,确定黑还是白是需要嵌入的水印颜色。
⑵获取水印图像长宽a 和b 以及嵌入初始位置坐标(x,y)和强度因子c。
⑶利用置换原理将水印图像的像素乘上强度因子c 置换掉载体图像中以(x,y)为初始位置的长宽都等于水印图像的区域块,注意只对水印图像中确定的需要嵌入的颜色进行操作,并严格保存x,y,a,b 和c 作为密钥信息。
水印提取:⑴读入密钥信息。
⑵利用x 和y 定位到载体图像具体的位置,根据长宽分别为a 和b 以及强度因子c 分离出水印。
这种方式无法恢复原始图像。
⑦基于二值水印图像的可见数字水印非盲检测算法(空间域、不可逆、可见和非盲检测)水印嵌入:⑴加载水印图像和原始载体图像,分析二值水印图像,确定黑还是白是需要嵌入的水印颜色。
⑵获取水印图像长宽a 和b 以及嵌入初始位置坐标(x,y)和强度因子c。
⑶利用置换原理将水印图像的像素乘上强度因子c 置换掉载体图像中以(x,y)为初始位置的长宽都等于水印图像的区域块,注意只对水印图像中确定的需要嵌入的颜色进行操作.
水印提取:⑴载入原始载体图像A 和嵌入了水印的图像B ⑵同时遍历两个图像的像素信息,如果遇到不同的像素位置,即可按顺序记录下B 图中的像素信息。
⑶最后将记录的像素信息组合在一起,即可提取出水印图像。
⑧基于小波变换的图像水印算法
数字水印嵌入技术
通过Arnold 变换将水印图像W 进行置乱,然后按行序列排成一维的向量W *,
W *={w i *|i=1,2,…,M,w i *={0,1}},设某一点的坐标为(x,y),则HL2中位于该点的小波系数
为f 2(x,y),HL1中位于该点的小波系数为f 2(x,y),按如下步骤进行水印嵌入:
1、对原始灰度图像进行二级小波分解,分别得到一级和二级水平细节子带HL1,HL2。
2、按前述嵌入位置的选取方法,从HL2中选取M 个待嵌入水印的位置(x,y)。
3、将二值水印序列嵌入到第二步选出位置的小波系数上,对于某一具体位置(x,y),嵌入水印公式如下:
A1/A2×mean-a 1×A1;(w i *=0)&(f 2(x,y)>A1/A2×mean)
f ‘2(x,y)=f 2(x,y)-a 2×A1;(w i *=0)&(f 2(x,y)≤A1/A2×mean)
A1/A2×mean +a 1×A1;(w i *=1)&(f 2(x,y)>A1/A2×mean)
f 2(x,y)+a 2×A1;(w i *=1)&(f 2(x,y)>A1/A2×mean)
其中f ‘2(x,y)为嵌入水印之后的HL2系数,mean 为HL1中的四个小波系数f 1
(2x-1,2y-1)、f 1(2x-1,2y)、f 1(2x,2y-1)、f 1(2x,2y)的均值,A1为HL2中所有系数的绝对值的均
值,A2为HL1中所有系数绝对值的均值,a 1、a 2为设定的参数,用于调节水印嵌入的强度算
法中将A1/A2的数值作为密钥保存。
4、利用小波逆变换进行重构,生成含水印的图像。
水印提取算法:1、对含水印图像进行二级小波分解,得到水平细节子图HL2‘、HL1,.
2、根据随机种子Seed 选取HL2‘中M 个位置(x,y)处系数,并按下式提取水印信息WW=
{ww i |i=1,2,…,M}ww i =1(f ‘2(x,y)≥A1/A2×A2’)其他ww i =0其中A2‘为HL1’中所
有系数绝对值的均值。
3、将上一步提取出的一维水印序列变为二维,然后根据密钥S 进行Arnold 变化,得到提出
的水印图像WW ‘。