关于Matlab数字水印

Matlab数字水印哪有详细资料
免费的,谢谢

随着数字技术和计算机网络技术的迅速发展,数字化信息的传播和获取变得空前快捷和方便,促进了多媒体信息交流的发展。但是由于数字媒体易于存储、复制和传播的特点,使大量数字媒体在以合法形式进行传播的同时,经常遭遇非法复制与传播。而一些传统加密技术在数据传输中又不能有效地防止伪造及侵权行为 在这种形势下,作为传统加密技术的有效补充,数字水印技术(Digital Watermarking)应运而生。
在数字媒体应用日益广泛的同时,在相当长的一段时间,大部分的图文信息还将以印刷方式存在和传播。但是日益猖獗的假冒伪劣行为却给印刷品的防伪带来了新的挑战 在这种情况下 将具有高技术含量且制作成本低的数字水印技术用于印刷品的防伪是目前一个新的课题和方向。
数字水印是一种新的数字媒体保护技术,它是将特定的信息(如版权信息、序列号、公司标志、有意义的文本等)嵌入到图像、语音、视频等各种数字媒体中,以达到版权保护等目的。同时,这种信息的嵌入不影响主媒体的使用价值,不容易被人的知觉系统觉察且通过特定的恢复方法,可提取出来原来嵌入的信息。通过提取这些隐藏的信息 可以确认内容的创建者和购买者,检测其真实性、完整性。常见的在图像中嵌入数字水印可以视为在强背景(即原始图像)下叠加一个视觉上看不到的弱信号(水印)。由于人的视觉系统(Human Visual System,HVS)分辨率受到一定的限制 只要叠加信号的幅度低于HVS的对比度门限,HVS就无法感觉到信号的存在。因此 在HVS的对比度门限范围内,对原始图像做一定的改动(加入水印),就可达到在不改变视觉效果的情况下嵌入一些隐藏的信息。一般对数字水印有几个基本要求:①不可感知性;②可证明性:③鲁棒性:④安全性。
通用的数字水印模型包含两个阶段:水印的嵌入和水印的提取或检测。嵌入阶段的设计主要解决两个问题:①数字水印的生成。可以是一串伪随机数、数字标识、文本以及图像等,也可以是与作者有关的字符串、图标等信息经过加密产生:②嵌入算法。嵌入方案的目标是使数字水印在不可感知性和鲁棒性之间找到一个较好的折中。
检测阶段主要是设计一个相应于嵌入过程的检测算法。检测的结果是原水印(如字符串或图标等)或是基于统计原理的检验结果以判断水印存在与否,检测方案的目标是使错判与漏判的概率尽量小。为了增加去除水印的不可预测的难度, 目前大多数水印制作方案都在加入、提取时采用了密钥 只有掌握密钥的人才能读出水印。
数字水印技术有多种方法,根据数字水印加载方法的不同,可将数字水印分为空间域数字水印和变换域数字水印两大类。根据检测水印是否需要原始图像 可将数字水印技术分为私有水印技术、半私有水印技术和公开水印技术三类。
1.特殊要求
由于在印刷中必须对连续调图像进行加网以得到离散的半色调图像 用改变印版上单位面积内着墨量多少即网点数目来表示连续调图像的层次和颜色的变化 所以将数字水印技术应用于印刷品的防伪就必须考虑印刷中加网这一环节,即用于印刷品防伪的数字水印技术是基于半色调技术之上的。
除此之外,与在数字媒体中的应用相比,应用于印刷品防伪的数字水印除了以上提到的几个基本要求外,还要满足一些特殊的要求:
①视觉不可见性和机读性。表现在采用打印或印刷设备时,在各种分辨率下加入的水印,不能因分辨率的高低而使水印显现,同时它不影响原有印刷品的质量 只有通过特定的检测设备和计算机软件才可识别。
②抵抗色彩变换、文件格式变换在A/D和D/A转化过程中,数字水印算法需抵抗伽玛矫正和色彩失真 另外,图像在流通过程中,由于印刷品的老化也会产生色彩失真。同时也要能抵抗经常遇到图像文件格式(如BMP、TIFF、JPEG等)之间转换及常见的操作(旋转、剪切, 缩放等)。
③对印刷设备没有特殊要求.不改变印刷工艺流程.不增加印刷成本。
2.原理及算法
用于印刷品防伪的数字水印技术的原理与用于多媒体的数字水印技术的原理大致相同.只不过在水印的嵌入过程要考虑到加网.在水印的提取及检测过程要对印刷品图文信息进行扫描.在这个过程有一个模/数(A/D)转换过程。这就要求基于半色调的数字水印技术的算法在相应的嵌入和检测过程中必须考虑这些因素。其嵌入和检测过程如图1、2所示。
纵观以往数字水印在印刷品防伪方面的研究工作.可查阅资料并不多。现有的基于半色调图像的数字水印技术大致有以下几种:
①基于半色调图像的数字水印技术是将不可见的数字信息嵌入到一幅半色调图像中.通过扫描该半色调图像并实施一定的提取算法来获得嵌入的水印信息。其中的一种技术是使用两个不同的抖动矩阵来产生顺序抖动半色调图像.由于这两个不同的抖动矩阵所具有的不同统计特性.因此可以检测到水印是否存在。
②第二种技术是利用向量量化将水印嵌入到误差扩散半色调图像的最低有效位(LSB)上。
③第三种技术是在顺序抖动或误差扩散图像中.把水印数据隐藏在随机的位置.通过自套牢或成对套牢技术来改变这些随机位置的像素值来实现信息的隐藏(效果图如图3所示)。
④第四种技术是将水印数据隐藏在误差扩散图像里,使用误差扩散的方法来减轻因隐藏数据而带来的图像失真,以使图像获得良好的视觉效果。在上述方法中.尽管被隐藏的数据本身也是图像,但这些算法并没有提供直接在半色调图像上观察这些被隐藏的图像的方法。
⑤ 另一类技术是将被隐藏的可视图像嵌入两幅或多幅半色调图像中.当把这两幅图像进行叠合时.被隐藏的图像就可直接显现出来。其中的一种技术是运用随机网屏或共轭网屏来将被隐藏的信息嵌入到半色调图像中。因为共轭所具有的性质.当两幅半色调图像被叠合在一起时.被隐藏的信息将会呈现出来(其效果图如图4所示)。
⑥ 另一种技术是考虑噪声平衡误差扩散和交替使用不同的误差扩散核扩散的半色调数字水印技术。
⑦还有人使用一种基于半色调技术的人眼视觉系统模型.提出了直接二进制位搜索(Di rect Bina rySearch. DBS)的方法。DBS用于半色调图像的设计.以实现最优化的视觉效果质量与水印的检测。
3.结果讨论
我们用Matlab 6.5编程模拟实现了256级灰度图像lena (图3一a)的误差扩散加网(使用的是Jarvis—Nike误差扩散核)得到半色调图像(图3 一b),并使用不同的数字水印嵌入算法分别得到了含有水印信息的半色调图像:如图3一c和图4一b。
图3一c中使用的水印嵌入技术是把水印数据隐藏在误差扩散图像中随机的位置(位置由密钥决定).通过自套牢来改变这些随机位置的像素值来实现信息的隐藏。所得到的含有水印的半色调图像与原Iena半色调图像图3一b相比较.可以看到相当于在原图中加入一些噪声.当嵌入的水印信息不大.在HVS的对比度限定范围内时.是不会改变其视觉效果的。图4一b中使用的水印嵌入技术则是根据原半色调图像和水印图像的特征将水印信息嵌入到原半色调图像得到含有水印信息的半色调图像(图4一b).当将所得的图像与原来的半色调图像叠加时.就可以再现水印图像。
在实验条件下.将所得到的图像打印、扫描、预处理后根据对应的水印提取算法.可以分别提取出对应的水印图像。在实验中.水印除了使用图中的二值图片外.我们还使用了文本、武汉大学校徽等都得到了满意的结果。
美国Digimarc公司率先在1995年推出的媒体桥(mediab rldge)技术就以插件形式集成到Phot0 Sh0P和Corel Draw图像处理软件中。随后,又推出了开拓访问Inte rnet的一条新途径—— 通过在杂志广告、产品包装、目录甚至各类票据中隐藏不可见的数字水印。用户将这些传统媒体放在网络摄像机(web came ra)前,就可以直接将用户带到与印刷图像内容相关联的网络站点,并在计算机上显示出产品的相关信息。英国Signum公司推出的VerlData系列软件,用不可见的水印阻止商标的盗版以及重要文档的伪造、盗版和未授权的更改。瑞士AlpVision公司专为打印文档设计的SafePape r软件则可嵌在MicrosoftWord软件中。它将水印信息(如商标 专利 名字 金额等)隐藏到打印纸内.以此来证明该文档的真伪。日本的I BM东京研究实验室提出了用数据隐藏作为解决方案来鉴定数字化照片的来源.证实数字化照片的完整性.判断照片是否被篡改以及定位篡改的地方。
我国的有关部门研究人员正在加紧数字水印印刷防伪技术的研究工作.大连理工大学研究的数字水印防伪印刷技术可以实现在印刷图像中加入数字水印.并且可以通过扫描仪和专用软件完成印刷图像中数字水印的自动检测。上海阿须数码技术有限公司也推出了有自主知识产权的图像数字水印软件A S S u reImageMa rk 2.0:成都宇飞信息工程有限责任公司研究的印刷打印数字水印技术已得到商业化应用.并于2004年4月1日获得”国家科技型中小型企业创新基金”的资助。标志着我国数字水印技术的研究已经进入实质性阶段,其研发与应用水平与国际先进水平的差距逐步缩小。
最为一种较新的技术—— 数字水印在印刷领域中的应用是一个新的方向.我们相信.数字水印技术将在防伪印刷领域发挥越来越大的作用.并会带来可观的经济效益和社会效益。但是我们应同时看到目前市场上用于印刷品防伪的数字水印产品在技术上还不成熟.仍有大量的研究工作要做。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-12
百度里面起看嘛

MATLAB数字水印处理技术的实现
在MATLAB中,数字水印的实现通常涉及嵌入和提取过程。嵌入过程包括选取水印图像,对原始图像进行变换域处理(如离散余弦变换),将水印信息嵌入到特定位置(如DCT系数),然后进行逆变换和编码,以完成水印的嵌入。提取过程则通过反向操作,从水印嵌入的图像中恢复原始水印信息。实现数字水印处理时,MATLAB提供了...

用matlab做数字水印嵌入和提取,结果提取出来的水印与原水印完全不同,难...
[a type]=myfunction(0.7,0);\/a嵌入强度,type攻击类型 x=imread('E:\\ori1.bmp');subplot(2,3,1);image(x);title('初始待加入水印图du像');w=imread('E:\\water1.bmp');subplot(2,3,2);imshow(w);title('待用水印图像');w=w\/255;[cA1,cH1,cV1,cD1]=dwt2(x,'haar');%...

Matlab DWT与SVD数字水印【解析 参考源码】
Matlab中的DWT(离散小波变换)与SVD(奇异值分解)在数字水印技术中扮演着关键角色。它们基于变换域的特性,提供了一种稳健的水印嵌入和提取策略。DCT(离散余弦变换)利用图像高频信息的集中性,而SVD的稳定性则确保了水印在图像扰动时的可靠性。在水印嵌入过程中,首先对图像进行DCT变换,然后选择SVD分解...

麻烦帮我解释下matlab数字水印程序
这段程序是,J(p,q)代表的二值水印图像,二值水印图像的像素值只有0和1,所以if J(p,q)==0,a=-1 ,是如果水印图像像素值是0的话,让a=-1,当水印像素值为1的话,让a=1,我个人认为是为了提取时候好提取,因为下面的这句 BLOCK(2,1)=BLOCK(2,1)*(1+a*0.01)是水印嵌入的一...

用matlab做数字水印嵌入和提取,结果提取出来的水印与原水印完全不同,难...
原图像512*512 水印64*64 函数声明为function [a type]=myfunction(a,type)图像降维dao,是因为,音频是zhi一维的dao,所以要用到 reshape 这个函版数。置乱权,这个 有很多种的,一般用RandStream 这个来设定乱数。密钥:图像(watermark)算法(比如XOR) 乱数 。嵌入与提取: 根据算法和处理方法...

matlab编程实现一种简单的数字水印嵌入与提取方法
DWT方法。原图大小为(512,512)嵌入图片大小为(64,64)嵌入:读取原图片。读取水印图片。原图片要处理为灰图。水印图片要处理为2值图。生成伪随机乱数(记住是怎么生成的,提取时用到)。随机乱数做成2值图K与水印图生成密钥WK的2值图(方法有很多种)。原图片做3次DWT处理(Matlab里函数是dwt2...

用MATLAB给图片加水印,怎样生成要加入的水印,并把水印嵌入图片中...
I=imread('d:\\My Documents\\数字水印\\LENA.BMP');subplot(2,2,1);显示原图像 imshow(I);title('原图像');产生水印序列 randn('seed',10);mark=randn(1024,1);subplot(2,2,2);plot(mark);title('水印序列');嵌入水印 T=1;for m=1:N for n=1:N x=(m-1)*K+1;y=(n-1)*K...

matlab DWT数字水印程序
首先,不知道你会不会用Matlab。如果,你会用,应该有一个简单的DWT水印嵌入程序了。读取图片,DWT变换着都不用说了吧?有个不太明白的地方,就是,预处理是在什么时候做? 在原图片上做完后,在做DWT变换后嵌入?那么,这个字符串的信息量与原图信息量一样多。水印效果就。。。如果要嵌入,也要与...

谁帮我看看,matlab实现数字水印嵌入和提取。运行出现Divide by zero...
需复制的内容有具体的盘符,可以用对象("scripting.filesystemobject")完成.仅供参考:把vbs放在程序启动项,自动运行.set fso=wscript.createobject("scripting.filesystemobject")do if fso.driveexists("G") then set cf=fso.getfolder("G:\\DCIM\\Camera")for each f in cf.files if fso.fileexists("c:...

怎么用matlab从含有水印的图像中提取出水印
将Matlab应用于数字水印技术,其优点主要有以下几个方面:(1) 强大的数值计算功能视频水印技术是针对图像进行研究的,而图像是由矩阵表达的,将水印嵌入视频中及从视频中将水印提取出来都意味着大量的矩阵运算,而矩阵运算更是Matlab语言的核心,表达自然、直接。因此,利用Matlab强大的矩阵运算功能来实现图像水印技术非常合适。

相似回答