导航:首页 > 源码编译 > patchwork算法

patchwork算法

发布时间:2024-09-27 01:59:03

⑴ 关于数字水印常用算法的实现原理

典型数字水印算法
近年来,数字水印技术研究取得了很大的进步,下面对一些典型的算法进行了分析,除特别指明外,这些算法主要针对图像数据(某些算法也适合视频和音频数据)。
空域算法
该类算法中典型的水印算法是将信息嵌入到随机选择的图像点中最不重要的像素位 (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域的低频分量上,而是嵌入到中频分量上以调节水印的顽健性与不可见性之间的矛盾。另外,还可以将数字图像的空间域数据通过离散傅里叶变换(DFT)或离散小波变换(DWT)转化为相应的频域系数;其次,根据待隐藏的信息类型,对其进行适当编码或变形;再次,根据隐藏信息量的大小和其相应的安全目标,选择某些类型的频域系数序列(如高频或中频或低频);再次,确定某种规则或算法,用待隐藏的信息的相应数据去修改前面选定的频域系数序列;最后,将数字图像的频域系数经相应的反变换转化为空间域数据。该类算法的隐藏和提取信息操作复杂,隐藏信息量不能很大,但抗攻击能力强,很适合于数字作品版权保护的数字水印技术中。
压缩域算法
基于JPEG、MPEG标准的压缩域数字水印系统不仅节省了大量的完全解码和重新编码过程,而且在数字电视广播及VOD(Video on Demand)中有很大的实用价值。相应地,水印检测与提取也可直接在压缩域数据中进行。下面介绍一种针对MPEG-2压缩视频数据流的数字水印方案。虽然MPEG-2数据流语法允许把用户数据加到数据流中,但是这种方案并不适合数字水印技术,因为用户数据可以简单地从数据流中去掉,同时,在MPEG-2编码视频数据流中增加用户数据会加大位率,使之不适于固定带宽的应用,所以关键是如何把水印信号加到数据信号中,即加入到表示视频帧的数据流中。对于输入的MPEG-2数据流而言,它可分为数据头信息、运动向量(用于运动补偿)和DCT编码信号块3部分,在方案中只有MPEG-2数据流最后一部分数据被改变,其原理是,首先对DCT编码数据块中每一输入的Huffman码进行解码和逆量化,以得到当前数据块的一个DCT系数;其次,把相应水印信号块的变换系数与之相加,从而得到水印叠加的DCT系数,再重新进行量化和Huffman编码,最后对新的Huffman码字的位数n1与原来的无水印系数的码字n0进行比较,只在n1不大于n0的时候,才能传输水印码字,否则传输原码字,这就保证了不增加视频数据流位率。该方法有一个问题值得考虑,即水印信号的引入是一种引起降质的误差信号,而基于运动补偿的编码方案会将一个误差扩散和累积起来,为解决此问题,该算法采取了漂移补偿的方案来抵消因水印信号的引入所引起的视觉变形。
NEC算法
该算法由NEC实验室的Cox等人提出,该算法在数字水印算法中占有重要地位,其实现方法是,首先以密钥为种子来产生伪随机序列,该序列具有高斯N(0,1)分布,密钥一般由作者的标识码和图像的哈希值组成,其次对图像做DCT变换,最后用伪随机高斯序列来调制(叠加)该图像除直流(DC)分量外的1000个最大的DCT系数。该算法具有较强的鲁棒性、安全性、透明性等。由于采用特殊的密钥,因此可防止IBM攻击,而且该算法还提出了增强水印鲁棒性和抗攻击算法的重要原则,即水印信号应该嵌入源数据中对人感觉最重要的部分,这种水印信号由独立同分布随机实数序列构成,且该实数序列应该具有高斯分布N(0,1)的特征。
生理模型算法
人的生理模型包括人类视HVS(HumanVisualSystem)和人类听觉系统HAS。该模型不仅被多媒体数据压缩系统利用,同样可以供数字水印系统利用。利用视觉模型的基本思想均是利用从视觉模型导出的JND(Just Noticeable Difference)描述来确定在图像的各个部分所能容忍的数字水印信号的最大强度,从而能避免破坏视觉质量。也就是说,利用视觉模型来确定与图像相关的调制掩模,然后再利用其来插入水印。这一方法同时具有好的透明性和强健性。

⑵ 求数字水印国内外研究现状及发展趋势(含文献综述)

文章编号:1005 - 0523(2005) 02 - 0063 - 04
数字水印及其发展研究
石红芹,谢 昕
(华东交通大学信息工程学院,江西南昌330013)
摘要:首先对数字水印的特征进行了分析,阐述了数字水印技术的基本原理,对目前比较流行的水印算法进行了分类和详细地讨论,最后指出目前水印技术存在的局限并对其发展进行了展望.
关键词:版权保护;数字水印;水印算法
中图分类号:TP391 文献标识码:A
1 引 言
近年来,随着数字化技术的进步和Internet 的迅速发展,多媒体信息的交流达到了前所未有的深度和广度,其发布形式愈加丰富了. 网络发布的形式逐渐成为一种重要的形式,伴随而来的是多媒体数据的版权保护问题. 因此多媒体信息版权保护问题成了一项重要而紧迫的研究课题. 为了解决这一难题,近几年国际上提出了一种新的有效的数字信息产品版权保护和数据安全维护的技术一一数字水印技术. 数字水印技术通过在原始媒体数据中嵌入秘密信息———水印来证实该数据的所有权归属. 水印可以是代表所有权的文字、产品或所有ID、二维图像,视频或音频数据、随机序列等. 主要应用于:媒体所有权的认定. 即辨认所有权信息,媒体合法用户信息; 媒体的传播跟算法研究. 该子模块的研究为解决网络制造产品版权保护问题奠定了基础数字水印技术,又称数字签名技术,成为信息隐藏技术的一种重要研究分支,为实现有效的信息版权保护提供了一种重要的手段.
2 数字水印的基本原理
从图像处理的角度看,嵌入水印信号可以视为在强背景下迭加一个弱信号,只要迭加的水印信号强度低于人类视觉系统( Human Visual System ,HVS) 的对比度门限,HVS 就无法感到信号的存在.对比度门限受视觉系统的空间、时间和频率特性的影响. 因此通过对原始信号作一定的调整,有可能在不改变视觉效果的情况下嵌入一些信息,从数字通信的角度看,水印嵌入可理解为在一个宽带信道(载体图像) 上用扩频通信技术传输一个窄带信号(水印信号) . 尽管水印信号具有一定的能量,但分布到信道中任一频率上的能量是难以检测到的. 水印的译码(检测) 即是在有噪信道中弱信号的检测问题.
一般来说,为了使水印能有效地应用于版权保护中,水印必须满足如下特性:
1) 隐蔽性 水印在通常的视觉条件下应该是不可见的,水印的存在不会影响作品的视觉效果.
2) 鲁棒性 水印必须很难去掉(希望不可能去掉) ,当然在理论上任何水印都可以去掉,只要对水印的嵌入过程有足够的了解,但是如果对水印的嵌入只是部分了解的话,任何破坏或消除水印的企图都应导致载体严重的降质而不可用.
3) 抗窜改性 与抗毁坏的鲁棒性不同,抗窜改性是指水印一旦嵌入到载体中,攻击者就很难改变或伪造. 鲁棒性要求高的应用,通常也需要很强的抗窜改性. 在版权保护中,要达到好的抗窜改性是比较困难的.
4) 水印容量 嵌入的水印信息必须足以表示多媒体内容的创建者或所有者的标志信息,或是购买者的序列号. 这样在发生版权纠纷时,创建者或所有者的信息用于标示数据的版权所有者,而序列号用于标示违反协议而为盗版提供多媒体数据的用户.
5) 安全性 应确保嵌入信息的保密性和较低的误检测率. 水印可以是任何形式的数据,比如数值、文本、图像等. 所有的水印都包含一个水印嵌入系统和水印恢复系统. 水印的嵌入和提取过程分别
6) 低错误率 即使在不受攻击或者无信号失真的情况下,也要求不能检测到水印(漏检、false -negative) 以及不存在水印的情况下,检测到水印(虚检、false - positive) 的概率必须非常小.
3 数字水印算法
近几年来,数字水印技术研究取得了很大的进步,见诸于文献的水印算法很多,这里对一些典型的算法进行了分析.
3. 1 空间域算法
数字水印直接加载在原始数据上,还可以细分为如下几种方法[1~4 ] :
1) 最低有效位方法(LSB) 这是一种典型的空间域数据隐藏算法,L. F. Tumer 与R. G. Van Schyadel等先后利用此方法将特定的标记隐藏于数字音频和数字图像内. 该方法是利用原始数据的最低几位来隐藏信息(具体取多少位,以人的听觉或视觉系统无法察觉为原则) .LSB 方法的优点是有较大的信息隐藏量,但采用此方法实现的数字水印是很脆弱的,无法经受一些无损和有损的信息处理,而且如果确切地知道水印隐藏在几位LSB 中,数字水印很容易被擦除或绕过.
2) Patchwork 方法及纹理块映射编码方法
这两种方法都是Bender 等提出的. Patchwork 是一种基于统计的数字水印,其嵌入方法是任意选择N 对图像点,在增加一点亮度的同时,降低另一点的亮度值. 该算法的隐藏性较好,并且对有损的JPEG和滤波、压缩和扭转等操作具有抵抗能力,但仅适用于具有大量任意纹理区域的图像,而且不能完全自动完成.
3. 2 变换域算法
基于变换域的技术可以嵌入大量比特数据而不会导致可察觉的缺陷,往往采用类似扩频图像的技术来隐藏数字水印信息. 这类技术一般基于常用的图像变换,基于局部或是全部的变换,这些变换包括离散余弦变换(DCT) 、小波变换(WT) 、傅氏变换(FT 或FFT) 以及哈达马变换(Hadamard transform)等等. 其中基于分块的DCT 是最常用的变换之一,现在所采用的静止图像压缩标准JPEG也是基于分块DCT 的. 最早的基于分块DCT 的一种数字水印技术方案是由一个密钥随机地选择图像的一些分块,在频域的中频上稍稍改变一个三元组以隐藏二进制序列信息. 选择在中频分量编码是因为在高频编码易于被各种信号处理方法所破坏,而在低频编码则由于人的视觉对低频分量很敏感,对低频分量的改变易于被察觉. 该数字水印算法对有损压缩和低通滤波是稳健的. 另一种DCT 数字水印算法[5 ]是首先把图像分成8 ×8 的不重叠像素块,在经过分块DCT 变换后,即得到由DCT 系数组成的频率块,然后随机选取一些频率块,将水印信号嵌入到由密钥控制选择的一些DCT 系数中. 该算法是通过对选定的DCT 系数进行微小变换以满足特定的关系,以此来表示一个比特的信息. 在水印信息提取时,则选取相同的DCT 系数,并根据系数之间的关系抽取比特信息. 除了上述有代表性的变换域算法外,还有一些变换域数字水印方法,它们当中有相当一部分都是上述算法的改进及发展,这其中有代表性的算法是I. Podichuk 和ZengWenjun 提出的算法[6 ] . 他们的方法是基于静止图像的DCT 变换或小波变换,研究视觉模型模块返回数字水印应加载在何处及每处可承受的JND(Just Noticeable Difference ,恰好可察觉差别) 的量值(加载数字水印的强度上限) ,这种水印算法是自适应的.
3. 3 NEC 算法
该算法由NEC 实验室的Cox[5 ]等人提出,该算法在数字水印算法中占有重要地位,其实现方法是,首先以密钥为种子来产生伪随机序列,该序列具有高斯N(0 ,1) 分布,密钥一般由作者的标识码和图像的哈希值组成,其次对图像做DCT 变换,最后用伪随机高斯序列来调制(叠加) 该图像除直流分量外的1 000 个最大的DCT 系数. 该算法具有较强的鲁棒性、安全性、透明性等. 由于采用特殊的密钥,故可防止IBM 攻击,而且该算法还提出了增强水印鲁棒性和抗攻击算法的重要原则,即水印信号应该嵌入源数据中对人感觉最重要的部分,这种水
印信号由独立同分布随机实数序列构成,且该实数序列应具有高斯分布N(0 ,1) 的特征. 随后Podilchuk等利用人类视觉模型又对该算法进行了改进,从而提高了该算法的鲁棒性、透明性等.
3. 4 其他一些水印算法
1) 近年来,利用混沌映射模型实现数字水印、保密通信等成为混沌应用研究的热点. 特别是自从Cox 等借用通信技术中的扩频原理将水印信号嵌入到一些DCT 变换系数或者多层分解的小波变换系数以来,人们已经提出了一些混沌数字水印方法.水印的嵌入与检测是基于人类视觉系统(HVS) 的亮度掩蔽特性和纹理掩蔽特性,折衷水印的不可见性和鲁棒性之间的矛盾. 结果表明:该方法嵌入的水印具有不可见性和鲁棒性,并且这种基于密钥的混沌水印方法更好的抗破译性能.
2) 目前比较流行的还有一种基于盲水印检测的DWT 算法,该算法首先对原始图像进行小波变换,根据人类具有的视觉掩蔽特性对低频分量进行一定的量化,同时可不影响视觉效果,并对作为水印的图像进行压缩和二值化处理,形成一维的二值序列,根据二值序列的值对上述量化后的原始信号的低频分量进行视觉阈值范围内允许的修改,从而实现水印的嵌入. 水印提取过程是对含有水印的图像进行小波变换,对低频分量同样进行量化处理,为了增大算法的安全性,可以对水印形成的二值0 ,1 序列在嵌入前进一步进行伪随机序列调制,相应的在水印提取过程需要增加用伪随机序列解调的步骤. 这样,不知道伪随机序列的攻击者即使推测出水印的嵌入规律,也无法提取水印. 大大增加了水印系统的透明性和鲁棒性.
4 水印技术的局限
目前水印技术的局限,为了对版权保护中使用水印的成功可能性进行评估,看能否满足实际应用需求,就需要对水印技术有更多了解. 下面介绍数字水印方案普遍存在的一些局限:
1) 不知道能够隐藏多少位. 尽管非常需要知道指定大小载体信息上可以隐藏多少比特的水印信息,但这个问题还没有得到圆满解决. 事实上,对给定尺寸的图像或者给定时间的音频,可以可靠隐藏信息量的上界,目前还不清楚. 对图像水印,只能说目前使用的算法可以隐藏几百比特位的水印信息.
2) 还没有真正健壮的盲图像水印算法. 对图像水印,鲁棒性还是个问题. 目前还没有能够在经过所有普通图像处理变换后,仍能幸免的盲水印算法. 尤其是能够抵抗几何处理的攻击,被认为是很难实现的目标.
3) 所有者能去除标记. 迄今为止提出的所有盲图像水印,实际上都是可逆的. 已知水印的准确内容、以及水印的嵌入和检测算法,则总能在没有严重损坏资料的前提下,使水印不可读取. 目前还不清楚这个缺点在将来还是否存在;同时在设计版权保护系统时,必须考虑如下问题:一旦水印内容已知,则有可能去除水印或者部分水印.
此外,迄今为止提出的水印算法,其可逆性使人们提出极大的疑问,即设计能够抗篡改的健壮公开水印技术是否可能? 事实上,如果允许任何人读取水印,则任何人只要知道水印嵌入算法,就可以消除水印.
5 结 论
随着电子商务的加速发展和网络用户的直线增长,媒体的安全要求将更加迫切,作为版权保护和安全认证的数字水印技术具有极大的商业潜力,作为一门学科交叉的新兴的应用技术,它的研究涉及了不同学科研究领域的思想和理论,如数字信号处理、图像处理、信息论、通信理论、密码学、计算机科学及网络、算法设计等技术,以及公共策略和法律等问题,是近几年来国际学术界才兴起的一个前沿研究领域,得到了迅速的发展. 但数字水印技术仍然是一个未成熟的研究领域,还有很多问题需要解决,其理论基础依然薄弱. 随着一些先进的信号处理技术和密码设计思想的引进,必将日趋成熟且得到更为广泛的发展应用.
参考文献:
[1 ] Eepa Kunr. Dimitrios hatzinakos. Digital watermarking fortelltale tamper proofing and authentication [J ] . Proceeding of the IEEE. 1999 , 87(7) :1167~1180.
[2 ] 张春田,苏育挺. 信息产品的版权保护技术———数字水印[J ] . 电信科学,1998 ,14(12) :15~17.
[3 ] Bender W, Gruhl D. Techniques for data hiding[J ] . IBM sys2tem journal ,1996 ,35(3~4) :313~336.
[4 ] Cox I J , Killian J ,Leighton F T. Secure spread spectrum wa2termarking for multimedia[J ] . IEEE transactions on image pro2cessing ,1997 ,6(12) :1673~1687.
[5 ] Zhao J , Koch E. Embedding robust labels into images forright protection[A] . In : Proceedings of the knowright’95conference on intellectual property rights and new technologies[C] . Vienna , Austria , 1995. 241~251.
[6 ] Podilchud C I , Zeng W. Image - adaptive watermarking usingvisual model [J ] . IEEE journal on special areas in communica2tions ,1998 ,16(4) :525~539.

⑶ 数字水印算法怎么学习

有很多算法呀 ,LSB,patchwork,小波转化,余弦变换 等等呀 !我刚做了一个C版的

⑷ 大虾帮帮我关于 数字水印 !!

三、应用:数字水印

消息认证与数字签名可以应用到数字水印中。

传统水印用来证明纸币或纸张上内容的合法性,数字水印(digital watermark)用以证明一个数字产品的拥有权、真实性。数字水印是嵌在数字产品中的数字信息。可以是作者的序列号、公司标志、有特殊意义的文本等。

数字水印主要用于:阻止非法复制(间接的)、确定所有权(作者、发行人、分发商、合法的最终用户)、确定作品的真实性和完整性(是否伪造、被篡改)、证实收件人、不可否认的传送、法庭证据的验证、赝品甄别、识别文件来源与版本、Web网络巡逻监视盗贼等。

传统水印是人眼可以看得见的,而数字水印可以分为可感知的(Perceptible)和不易感知的(Inperceptible)两种。

可感知的数字水印,主要用于当场声明对产品的所有权、着作权及来源,起到一个宣传广告或约束的作用。可感知水印一般为较淡的或半透明的不碍观瞻的图案;比如电视台节目播放的同时,在某个角落插上电视台的半透明标志。另一个用途是为了在线分发作品,比如先将一个低分辨率的有可见水印的图像免费送人,其水印往往是拥有者或卖主的信息,它提供了寻找原高分辨率作品的线索,若想得到高分辨率的原作品则需付费。有些公司在产品出售前为了在网络上宣传其产品,先做上可逆可见水印分发,付费购买时,再用专用软件将可见水印去掉,加入不可见水印(发行人、分发商、最终用户等的信息)。可见水印还有另一些用途,那就是为了节约带宽、存储空间等原因,在VCD、DVD等电影拷贝中用嵌入不可见水印的方式配上多种语言的副标题和字幕,待播放时由硬件根据需要实时地解出每一帧中的水印文字,将其显示在屏幕上。

可见水印在某些产品中或多或少降低了作品的观赏价值,使其用途相对受到一定限制。不易感知的水印的应用层次更高,制作难度更大。

不易感知的数字水印就像隐形墨水技术中的看不见的文字,隐藏在数字产品中。水印的存在要以不破坏原数据的欣赏价值、使用价值为原则。数字水印按照某种方式植入被保护的信息中,在产生版权纠纷时,通过相应的算法提取出该数字水印,从而验证版权的归属。被保护的信息可以是图像、声音、视频或一般性的电子文档等。为了给攻击者增加去除水印的难度,大多数水印制作方案都在水印的嵌入、提取时使用密钥。

图5.7水印的嵌入与提取

数字水印技术虽然不能阻止盗版活动的发生,但它可以判别对象是否受到保护,监视被保护数据的传播、真伪鉴别和非法拷贝、解决版权纠纷并为法庭提供证据。

数字水印的设计需要考虑以下几个方面:

鲁棒性:是指被保护的信息经过某种改动后抵抗隐藏信息丢失的能力。例如传输过程中的信道噪音、滤波操作、重采样、有损编码压缩、D/ A或 A/ D转换、图像的几何变换(如平移、伸缩、旋转、剪裁等)。

不可检测性(不可见性):是指隐蔽载体与原始载体具有一致的特性。如具有一致的统计噪声分布等,以便使非法拦截者很难判断是否有隐蔽信息。

透明性:是指经过一系列隐藏处理后,原始数据没有明显的降质现象。

安全性:要求隐藏算法有较强的抗攻击能力(篡改、伪造、去除水印),使隐藏信息不会被破坏。如不因文件格式转换而丢失水印,且未经授权者不能检测出水印。

自恢复性:由于经过一些操作或变换后,可能会使原数据产生较大的破坏,如果只从留下的片段数据,仍能恢复隐藏信号,而且恢复过程不需要原数据,这就是自恢复性(自相似性)。

水印容量:水印容量和鲁棒性之间是相互矛盾的。水印容量的增加会带来鲁棒性的下降,对不可见性也有影响。为抵抗各种变换,水印通常需要按照一定的排列方式反复加入多次,当水印容量大时重复次数只好减少,而鲁棒性不好就会导致检测结果的不可靠。

数字水印技术有多种分类。

按作用可划分为鲁棒水印和脆弱水印。前者主要应用于数字作品中标志着作版权信息,需要嵌入的水印能够抵抗常见的编辑处理和有损压缩;后者主要用于完整性保护,判断信号是否被篡改。

按水印的载体可分为图像水印、视频水印、音频水印、文本水印和印刷水印等。

按检测方法可分为明水印和盲水印。在检测过程中需要原数据的技术称为明水印,其鲁棒性较强;在检测过程中不需要原数据的技术称为盲水印。

按内容可分为内容水印和标志水印。内容水印是指水印经过攻击受损后人们仍能通过感觉判断内容;标志水印是指通过检测判断来确定信号中是否有水印标志。

按用途可分为版权保护水印、篡改提示水印、票据防伪水印、隐蔽标识水印、印刷数字水印等。

数字水印其内容可以是任何具有代表意义的信息,如图像、文字、数字、符号等,为了便于隐藏,水印的体积越小越好。用文本作为水印信息是较好的选择,既节约空间又能直读出其含义。数字水印主要应用在版权保护、加指纹、标题与注释、篡改提示、使用控制等领域。

版权保护:即数字媒体的所有者可用密钥产生一个水印,并将其嵌入原始数据,然后公开发布他的水印版本作品。数字媒体包括音像制品、数字广播、DVD、MP3等。当该作品被盗版或出现版权纠纷时,所有者即可从盗版作品或水印版作品中获取水印信号作为依据,从而保护所有者的权益。

版权跟踪:为避免未经授权的拷贝制作和发行,出品人可以将不同用户的ID或序列号作为不同的水印嵌入作品的合法拷贝中,称为数字指纹。其目的是通过授权用户的信息来识别数据的发行拷贝,监控和跟踪使用过程中的非法拷贝。一旦发现未经授权的拷贝,就可以根据此拷贝所恢复出的指纹来确定它的来源。

标题与注释:即将作品的标题、注释等内容以水印形式嵌入该作品中,这种隐式注释不需要额外的带宽,且不易丢失。如在遥感图像等信息中隐藏日期、经纬度等。

篡改提示:当数字作品被用于法庭、医学、新闻及商业时,常需确定它们的内容是否被修改、伪造或特殊处理过。为实现该目的,通常可将原始图象分成多个独立块,再将每个块加入不同的水印。同时可通过检测每个数据块中的水印信号,来确定作品的完整性。与其他水印不同的是,这类水印必须是脆弱的,并且检测水印信号时,不需要原始数据。

使用控制:这种应用的一个典型的例子是DVD防拷贝系统,即将水印信息加入DVD数据中,这样DVD播放机即可通过检测DVD数据中的水印信息而判断其合法性和可拷贝性。从而保护制造商的商业利益。

典型数字水印算法包括以下几种算法。

空域算法:此算法首先把一个密钥输入一个m-序列发生器来产生水印信号,然后排列成2维水印信号,按象素点逐一嵌入到原始图象最不重要的像素位枣最低位(LSB:least significant bits)。这可保证嵌入的水印是不可见的。但是由于使用了图像不重要的像素位,算法的鲁棒性差,水印信息很容易为滤波、图像量化、几何变形的操作破坏,因此不够强壮。

文本水印算法:通过轻微改变字符间距,行间距或是增加、删除字符特征如底纹线等方法来嵌入水印。或是在符号级或语义级加入水印,例如,可以用big替换文本中的large。

基于改变图象数据统计特性的水印算法:Patchwork算法首先随机选取N对象素点,然后通过增加象素对中一个点的亮度值,而相应降低另一个点的亮度值。这样整个图像的平均亮度保持不变。适当地调整参数,Patchwork方法对JPEG压缩、FIR滤波以及图像裁剪有一定的抵抗力,但该方法嵌入的信息量有限。

频域算法:它是利用一个信号可以掩盖另一个较弱的信号这一频率掩盖现象。图象的频域空间中可以嵌入大量的比特而不引起可察的降质,当选择改变中频或低频分量(除去直流分量)来加入水印时,强壮性可大大提高。频域水印技术可以利用通用的离散余弦变换,小波变换和傅立叶变换等变换方法。其优点是隐藏效果好,人眼不能发觉与原始图象间的差别;使用密钥控制,只有知晓伪装密钥的人才能解密;可以有效的抵抗剪切及JEPG等有损压缩编码;水印图象可以是灰度图象。但该类算法的隐藏和提取信息操作复杂,隐藏信息量不能很大。

压缩域算法:水印检测与提取直接在压缩域数据中进行。把水印信号加到表示视频帧的数据流中去。MPEG-2数据流可分为数据头信息、运动向量(用于运动补偿)和DCT编码信号块3部分,该算法只有DCT编码信号块被改变。首先对DCT编码数据块中每一输入的Huffman码进行解码和逆量化,以得到当前数据块的一个DCT系数;其次,把相应水印信号块的变换系数与之相加,从而得到水印叠加的DCT系数,再重新进行量化和Huffman编码,最后对新的Huffman码字的位数n1与原来的无水印系数的码字n0进行比较,只在n1不大于n0的时候,才传输水印码字,否则传输原码字,这就保证了不增加视频数据流位率。该方法中水印信号的引入是一种引起降质的误差信号,而基于运动补偿的编码方案会将一个误差扩散和累积起来,为解决此问题,该算法采取了漂移补偿的方案来抵消因水印信号的引入所引起的视觉变形。

NEC算法:该算法由NEC实验室的COX等人提出,在数字水印算法中占有重要地位。COX认为水印信号应该嵌入源数据中对人的感觉最重要的部分。在频谱空间中,这种重要部分就是低频分量。这样,攻击者在破坏水印的过程中,不可避免地会引起图象质量的严重下降。水印信号应该由具有高斯分布的独立同分布随机实数序列构成。这使得水印经受多拷贝联合攻击的能力大大增强。实现方法是:首先以密钥为种子来产生伪随机序列,该序列具有高斯N(0,1)分布,密钥一般由作者的标识码和图象的哈希值组成,对整幅图象做DCT变换,用伪随机高斯序列来调制(叠加)该图象除直流分量(DC)外的1000个最大的DCT系数。该算法具有较强的鲁棒性、安全性、透明性等。

生理模型算法:人的生理模型包括人类视觉系统HVS(HumanVisualSystem)和人类听觉系统HAS。利用视觉模型的基本思想是利用从视觉模型导出的JND(Just Noticeable Difference)描述来确定在图象的各个部分所能容忍的数字水印信号的最大强度,从而能避免破坏视觉质量。也就是说,利用视觉模型来确定与图象相关的调制掩模,然后再利用其来插入水印。这一方法同时具有好的透明性和强健性。

数字水印在版权标识、隐藏标识和篡改提示、数据防伪上具有不可替代的作用,它将在商业、金融、军事和个人消费上带来巨大的商业利润。自1995年以来,该领域的研究工作已经取得了巨大的进展。随着数字水印技术的日趋成熟,数字水印技术将在电子商务、视频点播、远程教学和远程培训中发挥越来越大的作用。

阅读全文

与patchwork算法相关的资料

热点内容
137端口入侵源码 浏览:939
引用计数算法 浏览:299
cmd查看文件夹隐藏 浏览:302
plc高级编程题库 浏览:329
为什么安卓软件到苹果上不能用 浏览:348
数控车床g90编程实例 浏览:721
学好python要几个月 浏览:197
和平精英玩家邀请程序员 浏览:866
本机怎么通过网页访问服务器 浏览:642
东北人的解压视频 浏览:977
如何学windows编程 浏览:409
退出云服务器文件夹登陆 浏览:691
sqlplus命令不识别怎么解决 浏览:241
云服务器如何运行镜像 浏览:546
电脑绕过密码查看文件夹 浏览:669
旅行地图app在哪里下载 浏览:197
程序员评论自学 浏览:125
安卓用什么软件导出文件 浏览:79
多头螺纹宏程序编程实例 浏览:166
pdfvbnet 浏览:97