文档库 最新最全的文档下载
当前位置:文档库 › 数字水印算法的C++实现

数字水印算法的C++实现

数字水印算法的C++实现
数字水印算法的C++实现

实验报告

实验名称:数字水印算法实现

数字水印算法的C++实现

[摘要]通过在原始数据中嵌入秘密信息--水印来证实数据的所有权。这种被嵌入的水印可以是一段文字、标识、序列号等,而且这种水印通常是不可见或不可察的,它与原始数据紧密结合并隐藏其中,并可以经历一些不破坏源数据使用价值或商用价值的操作而能保存下来。

数字水印技术除了应具备信息隐藏技术的一般特点外,还有着其固有的特点和研究方法。在数字水印系统中,隐藏信息的丢失,即意味着版权信息的丢失,从而也就失去了版权保护的功能,也就是说,这一系统就是失败的。由此可见,数字水印技术必须具有较强的鲁棒性、安全性和透明性。本文是关于在24位宿主图像的文档说明。

[关键词]数字水印标识安全性宿主图像水印图像

1. 算法实现思路

1.1 数字水印的提出及研究现状

1994年在一次国际重要学术会议上由Tirkel等人发表了题目为“A digital watermark”的第一篇有关数字水印的文章,当时他们已经意识到了数字水印的重要性,提出了数字水印的概念及可能的应用,并针对灰度图像提出了两种向图像最低有效位中嵌入水印的算法。1996年在英国剑桥牛顿研究所召开了第一届国际信息隐藏学术研讨会,标志着信息隐藏学的诞生,而作为信息隐藏学主要分支之一的数字水印技术的研究也得到了迅速的发展。到1999年第三届国际信息隐藏学术研讨会,数字水印成为主旋律,全部33篇文章中有18篇是关于数字水印的研究。

我国近年来已有少数的研究所和大学开展了对水印技术的研究工作,如:中科院自动化研究所的模式识别国家重点实验室、天津大学图像信息中心等。数字水印的研究引起了各种学科的研究人员的兴趣,但受关注的程度不及国外,研究的人员不多,研究的领域不广,从理论和实际成果两方面来看,国内在数字水印方面的研究工作还处于刚起步阶段。我国已明确表示:所有的知识产权保护和安全认证问题不可能依靠国外的力量,必须由我们自主开发

解决。因此,无论从学术研究角度,还是从应用技术的角度,开展数字水印的研究都具有十分重要的意义。

1.2 程序开发思路

因特网的出现以及计算机、扫描仪和打印机的广泛使用使得数字化多媒体数据的获取、交换和传输变得异常简单。但是通过网络传播数据也使有恶意的个人或团体在没有得到数据文件所有者许可的情况下能肆意地复制和传播有版权保护的文档。数字水印技术则为这种问题提供了一个潜在的解决方案。

数字水印(Digital Watermarking )是往多媒体数据(如图像、声音、视频信号等)中添加某些数字信息以达到版权保护等作用。如果没有鲁棒性(Robustness )的要求,水印与信息伪装技术上的处理本质上是完全一致的。在绝大多数情况下我们希望添加的信息是不可察觉的(Imperceptible ),并且希望攻击者在不破坏数据本身质量的情况下无法将水印去掉。发展数字水印技术的原动力就是为了提供多媒体数据的版权保护。

1.3 数字水印的实现算法

1) 空间域水印

L.F.Turner与R.G.van Schyndel等人的空间域水印算法是最低有效位算法(LSB)与改进算法。由于该算法是通过调整原始数据的最低几位来隐藏信息,使一般用户对于隐藏信息,在视觉上很难察觉。虽然其有较大的信息嵌入量,但作为数字水印算法,因其基本原理限制,所隐藏的数字水印信息是极为脆弱的,无法经受一些有损的信号处理。

Bander等人提出的基于统计的数字水印方案(Patchwork)和纹理块映射编码方法则是空间

域水印技术的典型设计。Patchwork任意选择N对图像点,增加其一点的亮度的同时,相应降低另一点的亮度值。通过这一调整过程完成水印的嵌入。Pitas和Kaskalis利用“Patchwork”算法的基本原理,提出了数字图像签名的思想。这种算法可以有效抵抗二次采样攻击与JPEG压缩。

2) 变换域算法

基于变换域的技术可以嵌入大量比特数据而不会导致可察觉的缺陷,往往采用类似扩频图像的技术来隐藏数字水印信息。这类技术一般基于常用的图像变换,基于局部或是全部的变换,这些变换包括离散余弦变换(DCT)、小波变换(WT)、傅氏变换(FT或FFT)以及哈达马变换(Hadamard transform)等等。其中基于分块的DCT是最常用的变换之一,现在所采用的静止图像压缩标准JPEG也是基于分块DCT的。

最早的基于分块DCT的一种数字水印技术方案是由一个密钥随机地选择图像的一些分块,在频域的中频上稍稍改变一个三元组以隐藏二进制序列信息。选择在中频分量编码是因为在高频编码易于被各种信号处理方法所破坏,而在低频编码则由于人的视觉对低频分量很敏感,对低频分量的改变易于被察觉。该数字水印算法对有损压缩和低通滤波是稳健的。

另一种DCT数字水印算法是首先把图像分成8×8的不重叠像块,在经过分块DCT变换后,即得到由DCT系数组成的频率块,然后随机选取一些频率块,将水印信号嵌入到由密钥控制选择的一些DCT系数中。该算法是通过对选定的DCT系数进行微小变换以满足特定的关系,以此来表示一个比特的信息。在水印信息提取时,则选取相同的DCT系数,并根据系数

之间的关系抽取比特信息。

除了上述有代表性的变换域算法外,还有一些变换域数字水印方法,它们当中有相当一部分都是上述算法的改进及发展,这其中有代表性的算法是I.Podichuk和Zeng Wen-jun 提出的算法。他们的方法是基于静止图像的DCT变换或小波变换,研究视觉模型模块返回数字水印应加载在何处及每处可承受的JND(Just Noticeable Difference恰好可察觉差别)的量值(加载数字水印的强度上限),这种水印算法是自适应的。

3) 压缩域算法

基于JPEG、MPEG标准的压缩域数字水印系统不仅节省了大量的完全解码和重新编码过程,而且在数字电视广播及VOD(Video Oil Demand)中有很大的实用价值。相反地,水印检测与提取也可直接在压缩域数据中进行。

Hartung提出了一种针对MPEG-2压缩视频数据流的数字水印案。在Hartung方案中,只有MPEG-2数据流最后一部分数据被改变,其原理是,首先对DCT编码数据块中每一输入的Huffman码进行解码和逆量化,以得到当前数据块的一个DCT系数;其次,把相应水印信号块的变换系数与之相加,从而得到水印叠加的DCT系数,再重新进行量化和Huffman编码,最后对新的Huffman码字的位数n,与原来的无水印系数的码字n0进行比较,只在n1不大于n0的时候,才能传输水印码字,否则传输原码字,这就保证了不增加视频数据流位率。

4) NEC算法

该算法由NEC实验室的Cox等人提出,该算法在数字水印算法中占有重要地位,其实现方法是,首先以密钥为种子来产生伪随机序列,该序列具有高斯N(0,1)分布,密钥一般由作者的标识码和图像的哈希值组成,其次对图像做DCT变换,最后用伪随机高斯序列来调制(叠加)该图像除直流分量外的1000个最大的DCT系数。该算法具有较强的鲁棒性、安全性、透明性等。

5) 生理模型算法

人的生理模型包括人类视觉系统HVS和人类听觉系统HAS。该模型不仅被多媒体数据压缩系统利用,同样可以供数字水印系统利用。它们的基本思想均是利用从视觉模型导出的JND描述来确定在图像的各个部分所能容忍的数字水印信号的最大强度,从而能避免破坏视觉质量,也就是说,利用视觉模型来确定与图像相关的调制掩模,然后再利用其来插人水印。这一方法同时具有好的透明性和鲁棒性。

2. 算法实现

文中只给出部分关键代码。

2.1 水印图像的嵌入程序。

{

// TODO: Add your control notification handler code here

if ((bm[0].bmHeight*bm[0].bmWidth)<3*(bm[1].bmHeight*bm[1].bmWidth)) {

//不能嵌入水印

MessageBox("水印图象过大请更换较大宿主图象","错误",MB_OK);

Mark=FALSE;

}

if(!Mark)

return ;

if(biBitCount

{

MessageBox("水印受限制");

return ;

}

RGBQUAD *m_copymater; //定义一个水印信息的数据副本

m_copymater = new RGBQUAD [WaterHeight*WaterWidth];

int i,j;

int count=0;

BYTE m_r,m_b;

if(m_waterEmbed !=NULL) //m_waterEmbed是水印.嵌入后.的位图数据全局变量 if(m_Ih!=0)

for(int l =0;l

delete [] m_waterEmbed[l];

m_waterEmbed = new RGBQUAD*[ImageHeight];

for(i=0;i

m_waterEmbed[i] = new RGBQUAD [ImageWidth];

for(i=0;i

for(j=0;j

m_waterEmbed[i][j]=m_tOriPixelArray[i][j];

for(i=0;i

//将水印信息的数据复制到一维数组m_copymater水印信息的数据副本里

for(j=0;j

{

m_copymater[i*WaterHeight+j]=m_watermarkdata[i][j];

count++;

}

number=count;//记录嵌入的点数

int k=0;

if (biBitCount==24) //Operate_Byte()嵌入水印信息位操作

{

for(i=0;i0;i++)

for(j=0;j0;j++,count--)

//下面可以用一条语句的但为了测试还是多句

{

m_r=m_waterEmbed[i][j].rgbRed;

m_b=m_waterEmbed[i][j].rgbBlue;

BYTE &a=m_r;

BYTE &b=m_b;

BYTE c=m_copymater[i*ImageHeight+j].rgbGreen;

Operate_Byte(a,b,c);

m_waterEmbed[i][j].rgbRed=m_r;

m_waterEmbed[i][j].rgbBlue=m_b;

}

PutInWaterMessage();

}

else

return;

CDC *dc=GetDC();//将象素打印出来

RECT m_rect;

float w,h,p,q;

GetDlgItem(IDC_STATIC2)->GetClientRect(&m_rect);

if(m_rect.right

w=(float)m_rect.right/(float)ImageWidth;

h=(float)m_rect.bottom/(float)ImageHeight;

}

else

w=h=1;

for( p=0,i=0;i

for( j=0, q=0;j

dc->SetPixel(2+(int)(q*w),235+(int)(p*h),RGB(m_waterEmbed[i][j].rgbRed,

m_waterEmbed[i][j].rgbGreen,m_waterEmbed[i][j].rgbBlue));

ReleaseDC(dc);

delete [] m_copymater;

m_Ih=ImageHeight; //为保证直接更换水印信息而没有更换宿主图象提供原宽高 void error bug

3. 程序运行

开发环境 Microsoft Visual C++ 6.0

程序功能在程序中打开宿主图像24位(保存格式为:24位位图),水印图像8位(H*W 最好为:131*170)(保存格式为256色位图)。使用的时候在“嵌入水印”、“保存水印图像”后,不能关掉使用软件,接着“打开水印过图像”、“提取水印”就可以实现。

运行界面:

运行程序后,先点击“产生密钥”按钮,产生一对密钥。然后可以进行加密、解密运算。

4. 总结

数字水印是近几年来出现的数字产品版权保护技术,是当前国际学术界的研究热点。该文论述了如下几个问题:1) 数字水印的提出及研究现状;2) 水印的基本原理和算法。

尽管人们都在努力发展和完善数字水印技术,但水印技术仍然没有完全成熟和广为人们理解,而且还有很多问题没有得到解决。尽管水印技术很难在短期内取得突破,但是鉴于水印技术的广泛的应用价值,有必要对水印技术作一番深入研究。

目前版权保护可能是水印最主要的应用领域其目的是嵌入数据的来源信息以及比较有代表性的版权所有者的信息,从而防止其它团体对该数据宣称拥有版权。这样水印就可以用来公正地解决所有权问题,但这种应用要求非常高的鲁棒性。随着水印技术的发展在将来的盗版跟踪、票据防伪等领域会有很大的发展。

5. 参考文献

1. 《MFC程序设计》,机械工业出版社

2. 《C++程序设计》<特别版>,机械工业出版社

3. 《Visual C++数字图像识别技术典型案列》, 人民邮电出版社

4. 李艺老师《计算机网络安全》教学PPT

图的算法实现课程设计

数据结构与算法 课程设计报告 课程设计题目:图的算法实现专业班级:信息与计算科学1001班姓名:学号: 设计室号:理学院机房 设计时间: 2011-12-26 批阅时间:指导教师:成绩:

图的算法实现 目录 一.设计内容 二.功能设计流程 三.详细设计 四.调试 五.总结 六.参考文献 七.附录源代码

一、设计内容: 1.实验内容 图的算法实现 (1)将图的信息建立文件; (2)从文件读入图的信息,建立邻接矩阵和邻接表; (3)实现Prim、Kruskal、Dijkstra序算法。 2.实现的任务:从文件中读入图的信息,建立图的邻接矩阵和邻接表,实现Prim、Kruskal、Dijkstra 3.本系统涉及的知识点 Prim、Kruskal、Dijkstra、邻接矩阵和邻接表存储。 4.功能要求 1.不同的功能使用不同的函数实现(模块化),对每个函数的功能和调用接口要注释清楚。对程序其它部分也进行必要的注释。 2.对系统进行功能模块分析、画出总流程图和各模块流程图。 3.用户接口要求使用方便、简洁明了、美观大方、格式统一。 4.通过命令行相应选项能直接进入某个相应菜单选项的功能模块。 5.所有程序需调试通过。 二、功能设计流程: 图的算法 实现 邻接矩阵邻接表 Prim算法Kruskal算法Dijkstra算法

开始 辅助数组初始 输出生成树的边并计算其权值 新顶点并入U 集后重新选择最小边:遍历点,若g.edges[k][j]!=0 && g.edges[k][j]

基于DCT的数字水印算法的研究

基于DCT的数字水印算法的研究Research of Digital Watermarking Algorithm Based on Discrete Cosine Transform

摘要 近年来,由于网络的迅猛发展,越来越多的多媒体信息已经走向数字化。人们可以从网上更加方便的取得各类信息,可以更加方便的对别人的作品进行篡改,复制等,由此带来的版权维护问题也日益严重。版权维护也越来越受到人们的关注了,数字水印技术是解决这类问题最有效的手段,所以数字水印技术现在已然成为了研究的热点。 本文是对基于DCT域数字水印算法的研究,简要介绍数字水印的发展,基本原理等,在MATLAB环境中完成两种基于DCT域数字水印算法的设计。第一种是基于DCT图像全局变换的数字水印算法,而第二种则可以认为是第一种算法的改进,是基于DCT域分块水印算法。然后对于水印系统的鲁棒性,进行一些攻击测试,有盐噪声攻击、高斯噪声攻击、旋转攻击、剪切攻击、JPEG有损压缩攻击等,对比分析哪种算法更好。虽然说该课题只不过是对现有的数字水印技术进行了一个比较简单的研究,但是让我们充分认识到了数字水印技术对我们日常生活的重要性。 关键词:数字水印DCT 攻击测试

Abstract In recent years,with the rapid development of the network,more and more multimedia information has been digitized.People can obtain various kinds of information from the Internet more convenient, the work of others will be altered and copied more convenient, copyright protection issues are also increasingly serious. People are more and more concerned about copyright protection, digital watermarking technology is the most effective means to solve these problems, so the digital watermarking technology has become a hot topic now. This article is to study based on DCT-domain digital watermarking algorithm, introduced the development of digital watermarking and the basic principles etc,completed two design schemes based on DCT-domain digital watermarking algorithm in MATLAB environment. The first one is based on digital image watermarking algorithm global transformation of DCT, while the second one can be considered to improve the first algorithm, which is based on DCT-domain block watermarking algorithm. Then for the robustness of the watermarking system, we performed some attack test, salt noise attack, Gaussian noise attack and spin attack, cropping attack, JPEG compression attack, in order to prove which is better. Although the subject is a relatively simple research for the existing digital watermarking technique , but it let us aware of the importance of digital watermarking technology in our daily life. Key words:Digital watermarking DCT Robustness Attack test

数字水印技术综述

数字水印技术综述 (湖北武汉 430070) 摘要:介绍了数字水印技术的基本原理。并对其特点、分类、攻击技术及应用领域进行了阐述。同时对数字水印的各种算法进行了分类研究与深入分析。最后指出数字水印今后的研究方向。 关键词:数字水印;水印原理;水印算法;水印应用 Overview on Overview on Digital Watermarking Technology ( Wuhan, Hubei 430070, China) Abstract:The basic concepts of watermark techniques are first introduced,and then the characteristics、classification、attacking techniques and application and applications first expatiated.For further understanding.the watermark technique from the various aspects aye classified and some conventional watermark techniques and algorithms are analyzed in detail.Finally,research direction of digital watermark technology is pointed out. Key words:digital watermarking;watermarking principle;watermarking algorithms ;watermarking application; 0数字水印 随着Internet与数字媒体技术的飞速发展,信息安全问题日益突出,因此,数字媒体的版权保护与信息完整性保证已逐渐成为人们迫切需要解决的一个重要问题,数字水印技术就是在这种需求下迅速发展起来的。 数字水印是通过一定的算法,在图像、视频、音频等多媒体数据中嵌入一个可以标示其知识产权的水印信息。水印信息可以是文字、商标、印章或序列号等可以识别作品的作者、来源、版本、拥有者、发行人或合法使用人对数字产品的拥有权。水印信息通过特殊的方式,可以从宿主信号中提取出水印或是检测出它的存在性。水印不占用额外的带宽。是原始数据不可分离的一部分,并且它可以经历一些不破坏源数据使用价值或商用价值的操作而存活下来。 1数字水印的特征 一般认为数字水印应具有以下特征(1)鲁棒性水印信号在经历多种无意或有意的信号处理后,仍能保持其完整性或仍能被准确鉴别的特性。(2)知觉透明性数字水印的嵌入不应引起数字作品的视/听觉质量下降,即不向原始载体数据中引入任何可知觉的附加数据。(3)内嵌信息量(水印的位率) 数字水印应该能够包含相当的数据容量,以满足多样化的要求。(4)安全性水印嵌入过程(嵌入方法和水印结构)应该是秘密的嵌入的数字水印是统计上不可检测的,非授权用户无法检测和破坏水印。对于通过改变水印图像来消除和破坏水印的企图,水印应该能一直保持存在,直到图像已严重失真而丧失使用价值。(5)实现复杂度低数字水印算法应该容易实现。在某些应用场合(如视频水印),甚至要求水印算法的实现满足实时性要求。(6)可证明性数字水印所携带的信息能够被唯一地、确定地鉴别,从而能够为已经受到版权保护的信息产品提供完全和可靠的所有权归属证明的证据。 2 数字水印的分类 2.1按照嵌入的位置 按照嵌入的位置可分为:(1)空域数字水印:空域数字水印的嵌入是通过直接修改图像的灰度值或是强度值来完成的。(2)变换域数字水印:变换域的数字水印是将图像进行某种变换,通过修改变换域系数来达到嵌入水印的目的。

LSB数字水印算法

一.数字水印 数字水印技术 数字水印技术(Digital Watermark):技术是将一些标识信息(即数字水印)直接嵌入数字载体(包括多媒体、文档、软件等)当中,但不影响原载体的使用价值,也不容易被人的知觉系统(如视觉或听觉系统)觉察或注意到。目前主要有两类数字水印,一类是空间数字水印,另一类是频率数字水印。空间数字水印的典型代表是最低有效位(LSB)算法,其原理是通过修改表示数字图像的颜色或颜色分量的位平面,调整数字图像中感知不重要的像素 来表达水印的信息,以达到嵌入水印的目的。频率数字水印的典型代表是扩展频谱算法,其原理是通过时频分析,根据扩展频谱特性,在数字图像的频 率域上选择那些对视觉最敏感的部分,使修改后的系数隐含数字水印的信息。 可视密码技术 二.可视密码技术:可视密码技术是Naor和Shamir于1994年首次提出 的,其主要特点是恢复秘密图像时不需要任何复杂的密码学计算,而是以人的视觉即可将秘密图像辨别出来。其做法是产生n张不具有任何意义的胶片,任取其中t张胶片叠合在一起即可还原出隐藏在其中的秘密信息。其后,人们又对该方案进行了改进和发展。主要的改进办法办法有:使产生的n张胶片都有一定的意义,这样做更具有迷惑性;改进了相关集合的造方法;将针对黑白图像的可视秘密共享扩展到基于灰度和彩色图像的可视秘密共享。 三. 数字水印(Digital Watermark或称Steganography)技术是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。数字水印是信息隐藏技术的一个重要研究方向。 数字水印技术源于开放的网络环境下保护多媒体版权的新型技术,它可验证数字产品的

基于Matlab的数字水印设计——基于DCT域的水印实现

摘要 数字水印(Digital Watermark)技术是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。数字水印是信息隐藏技术的一个重要研究方向。随着数字水印技术的发展,数字水印的应用领域也得到了扩展,数字水印的基本应用领域是版权保护、隐藏标识、认证和安全不可见通信。 当数字水印应用于版权保护时,潜在的应用市场在于电子商务、在线或离线地分发多媒体内容以及大规模的广播服务。数字水印用于隐藏标识时,可在医学、制图、数字成像、数字图像监控、多媒体索引和基于内容的检索等领域得到应用。数字水印的认证方面主要ID卡、信用卡、ATM卡等上面数字水印的安全不可见通信将在国防和情报部门得到广泛的应用。 本文主要是根据所学的数字图象处理知识,在MATLAB环境下,通过系统编程的方式,建立并实现基于DCT域的数字水印加密系统。该系统主要包含数字水印的嵌入与提取,仿真结果表明,数字水印算法具有有效性、可靠性、抗攻击性、鲁棒性和不可见性,能够为数字媒体信息在防伪、防篡改、认证、保障数据安全和完整性等方面提供有效的技术保障。 关键词:数字水印;MATLAB;DCT

目录 1 课程设计目的 (1) 2 课程设计要求 (2) 3 数字水印技术基本原理 (3) 3.1 数字水印基本框架 (3) 3.2 算法分类 (3) 3.2.1 DCT法 (4) 3.2.2 其他方法 (4) 3.3 实际需要考虑的问题 (4) 3.3.1 不可见性 (4) 3.3.2 鲁棒性 (5) 3.3.3 水印容量 (5) 3.3.4 安全性 (5) 4 基于DCT变换仿真 (6) 4.1 算法原理 (6) 4.1.1 准备工作 (6) 4.1.2 选取8*8变换块 (7) 4.1.3 边界自适应 (7) 4.1.4 DCT变换与嵌入 (7) 4.1.5 恢复空域 (8) 4.2 嵌入算法扩展 (8) 4.2.1 RGB彩色图像三个矩阵的划分 (8) 4.2.2 八色彩色水印 (8) 4.3 水印的提取 (9) 4.4 仿真程序 (9) 5 结果分析 (14) 结束语 (16) 参考文献 (17)

数字水印技术:概念、应用及现状

数字水印技术:概念、应用及现状 一、引言 随着信息时代的到来,特别是Internet的普及,信息的安全保护问题日益突出。当前的信息安全技术基本上都以密码学理论为基础,无论采用传统的密钥系统还是公钥系统,其保护方式都是控制文件的存取,即将文件加密成密文,使非法用户不能解读。但随着计算机处理能力的快速提高,这种通过不断增加密钥长度来提高系统秘密级别的方法变得越来越不安全。 另一方面,多媒体技术已被广泛应用,需要进行加密、认证和版权保护的声像数据也越来越多。数字化的声像数据从本质上说就是数字信号,如果对这类数据也采用密码加密方式,则其本身的信号属性就被忽略了。最近几年,许多研究人员放弃了传统密码学的技术路线,尝试用各种信号处理方法对声像数据进行隐藏加密,并将该技术用于制作多媒体的“数字水印”。 二、认识数字水印 数字水印(Digital Watermark)技术是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。数字水印是信息隐藏技术的一个重要研究方向。 数字水印技术的基本特性: 1. 鲁棒性(robustness):所谓鲁棒性是指在经历多种无意或有意的信号处理过程后,数字水印仍能保持完整性或仍能被准确鉴别。可能的信号处理过程包括信道噪声、滤波、数/模与模/数转换、重采样、剪切、位移、尺度变化以及有损压缩编码等。 2.安全性(security):指隐藏算法有较强的抗攻击能力,即它必须能够承受一定程度的人为攻击,而使隐藏信息不会被破坏。 3.透明性(invisibility):利用人类视觉系统或人类听觉系统属性,经过一系列隐藏处理,使目标数据没有明显的降质现象,而隐藏的数据却无法人为地看见或听见。 ***典型的数字水印系统模型: 图 1为水印信号嵌入模型,其功能是完成将水印信号加入原始数据中;图 2为水印信号检测模型,用以判断某一数据中是否含有指定的水印信号。

基于小波变换的数字水印算法研究

目录 摘要 (Ⅲ) Abstract (Ⅴ) 第1章绪论 (1) 1.1引言 (1) 1.2本文研究的目的及意义 (2) 1.3数字水印技术的国内外研究现状 (2) 第2章数字水印理论基础 (5) 2.1 数字水印的基本概念 (5) 2.2 数字水印的基本特征 (5) 2.3 数字水印的基本原理 (5) 2.4 数字水印的分类 (8) 2.5 数字水印典型算法(针对图像领域) (10) 2.6 数字水印的鲁棒性问题和攻击行为 (12) 2.7 数字水印应用领域 (13) 第3章小波分析理论基础 (17) 3.1小波分析的发展历程 (17) 3.2小波函数与小波变换 (18) 3.3离散小波变换 (20) 3.4 多分辨率分析 (22) 3.5实验环境:可实现数字水印技术的高效实用工具——Matlab (24) 第4章基于小波变换的数字水印算法 (25) 4.1算法描述 (25) 4.2实验结果及分析 (28) 4.3 本章小结 (36) 参考文献 (37) 致谢 (39) 附录 (41)

基于小波变换的数字水印算法研究 摘要 数字水印技术是目前信息安全技术领域的一个新方向,是一个在开放的网络环境下,保护版权和认证来源及完整性的新型技术。 本文针对基于小波变换的数字水印技术,提出了一种基于小波域的二值图像水印算法。该算法选择了检测结果直观、有特殊意义的二值图像作为原始水印,并在嵌入之前进行图像置乱预处理,以提高安全性和隐蔽性,兼顾了水印的不可见性和鲁棒性,利用多分辨率分析思想进行水印的嵌入与提取。通过大量的仿真实验,证明本文算法在保证水印不可见性的同时,对常见的图像处理如JPEG压缩、噪声、滤波、剪切等,均有较好的鲁棒性。 关键词:数字水印,小波变换,鲁棒性,不可见性,JPEG压缩

基于matlab的图像去雾算法详细讲解与实现-附matlab实现源代码

本文主要介绍基于Retinex理论的雾霭天气图像增强及其实现。并通过编写两个程序来实现图像的去雾功能。 1 Rentinex理论 Retinex(视网膜“Retina”和大脑皮层“Cortex”的缩写)理论是一种建立在科学实验和科学分析基础上的基于人类视觉系统(Human Visual System)的图像增强理论。该算法的基本原理模型最早是由Edwin Land(埃德温?兰德)于1971年提出的一种被称为的色彩的理论,并在颜色恒常性的基础上提出的一种图像增强方法。Retinex 理论的基本内容是物体的颜色是由物体对长波(红)、中波(绿)和短波(蓝)光线的反射能力决定的,而不是由反射光强度的绝对值决定的;物体的色彩不受光照非均性的影响,具有一致性,即Retinex理论是以色感一致性(颜色恒常性)为基础的。 根据Edwin Land提出的理论,一幅给定的图像S(x,y)分解成两幅不同的图像:反射物体图像R(x,y)和入射光图像L(x,y),其原理示意图如图8.3-1所示。 图-1 Retinex理论示意图 对于观察图像S中的每个点(x,y),用公式可以表示为: S(x,y)=R(x,y)×L(x,y) (1.3.1)实际上,Retinex理论就是通过图像S来得到物体的反射性质R,也就是去除了入射光L的性质从而得到物体原本该有的样子。 2 基于Retinex理论的图像增强的基本步骤 步骤一: 利用取对数的方法将照射光分量和反射光分量分离,即: S'(x, y)=r(x, y)+l(x, y)=log(R(x, y))+log(L(x, y)); 步骤二:用高斯模板对原图像做卷积,即相当于对原图像做低通滤波,得到低通滤波后的图像D(x,y),F(x, y)表示高斯滤波函数: D(x, y)=S(x, y) *F(x, y); 步骤三:在对数域中,用原图像减去低通滤波后的图像,得到高频增强的图像G (x, y): G(x,y)=S'(x, y)-log(D(x, y)) ;

基于变换域的数字水印算法【文献综述】

毕业设计文献综述 电子信息科学与技术 基于变换域的数字水印算法 摘要:数字水印提出的主要目的是为了对数字作品的版权保护。本文介绍了数字水印的背景以及阐述了数字水印技术的基本原理。数字水印主要分为空间域和频域两大类,这里主要分析了目前在频域中比较流行的水印算法。同时,对数字水印发展进行展望。 关键字:数字水印;版权保护;水印算法;频域; 1.背景 随着Internet的迅猛发展,通信技术和计算机网络的普遍运用,使人们可以通过互联网收发信息、上传数字图象、听音乐等等。然而,也正是因为网络的这种便捷性、传播迅速的优点使其很容易被非法拷贝,导致数字产品的版权、完整性、有效性得不到保证,严重损害了创作者的利益。 为了解决上述各类问题,提出了数字水印技术[1]。它是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。目前,数字水印在音频、视频、图像等的应用迅速得到广泛的研究和发展。 数字水印技术的研究现状主要分为两大类:空间域数字水印和频域数字水印。最初提出的数字水印嵌入方法是在空间域上实现的。1995年,Btuyndoncky等提出了一个基于空域分块的方法,通过改变均值来嵌入水印。1996年,Patchwork等人提出了一种算法(Patchwork算法),该算法随机选取图像的N对像素点,通过增加其中一个点的亮度值而相应降低另一个点的亮度来隐藏信息。1998年,Darmstaedter等人提出了一种新的空域水印算法,该算法是基于图像的8×8块的空间域分解进行的。 频域数字水印按频域法大体分为三类:DFT域、DCT域和DWT域[2-3-4]。 Pun和Ruanaidh利用傅立叶域对全局性的旋转,平移和缩放变换具有不变性的特点,将水印嵌入到傅立叶域来达到对这些攻击的鲁棒性。 1999年,Wu和Hsu等人提出了基于可视化模型的算法,该算法具有很强的鲁棒性。2000年,易开样、黄继武等人还提出了一种DCT域数字水印算法:首先把图像分成8×8的不重叠像素块,经过分块DCT变换后,得到有DCT系数组成的频率块,然后随机选取一些频率块,水印信号嵌入到由密钥控制选择的一些DCT系数中。2004年,王向阳等提出了一种DCT域自适应彩色图像二维数字水印算法,将灰度图像嵌入到原始彩色图像中。其实,很多国内外研究人员提出的其他DCT域

基于MATLAB的数字水印算法实现

数字水印作为一门新的学科, 自 1993 年 Tirkel 等人正式提出到现在十几年里, 国内外对数字水印的研究都引起了极大的关注, 从最初的版权保护, 已扩展到多媒体技术, 广播监听, in-ternet 等多个领域。数字水印是永久镶嵌在其他数据( 主要指宿主数据) 中具有可鉴别性的数字信号或数字模式, 其存在不能影响宿主数据的正常使用。为了使数字水印技术达到一定的设计要求, 当前水印数据一般应具备不可感知性(imperceptible) 、鲁棒性(Robust) 、可证明性、自恢复性和安全保密性等特点。在数字水印技术中, 水印的数据量和鲁棒性构成了一对基本矛盾。理想的水印算法应该既能隐藏大量数据, 又可以抗各种信道噪声和信号变形。然而在实际中, 这两个指标往往不能同时实现, 实际应用往往只偏重其中的一个方面。如果是为了隐蔽通信, 数据量显然是最重要的, 由于通信方式极为隐蔽, 遭遇敌方篡改攻击的可能性很小, 因而对鲁棒性要求较为不高。但对保证数据安全来说, 情况恰恰相反, 各种保密的数据随时面临着被盗取和篡改的危险, 对鲁棒性的要求很高, 而对隐藏数据量的要求则居于次要地位。典型的数字水印系统至少包含两个组成部分- - 水印嵌入单元和水印检测与提取单元。将水印信息进行预处理后加入到载体中, 称为嵌入。从水印化数据中提取出水印信息或者检测水印信息的存在性称为水印的提取和检测。数字水印算法主要

是指水印的嵌入算法, 而提取算法往往被看成是嵌入算法的逆变换。 当前典型的嵌入算法主要被分为空间域水印算法和变换域水印算法。DCT 变换域算法是数字水印算法的典型代表, 也是数字水印中较为常用的一种稳健的算法。其算法思想是选择二值化灰度图像作为水印信息, 根据水印图像的二值性来选择不同的嵌入系数, 并将载体图像 ( 原始图像) 进行 8×8 的分块, 再将灰度载体图像( 原始图像) 进行 DCT变换。然后, 将数字水印信息的灰度值直接植入到载体灰度图像的 DCT 变换域中, 实现水印的嵌入。而后, 将嵌入了水印信息灰度图像进行 IDCT( 逆离散的余弦变换) 变换, 得到含有了嵌入水印信息的图像, 嵌入过程完毕。水印的提取、检测过程为嵌入过程的逆过程, 其方法和嵌入方法有所雷同不再进行介绍。 下面以 MATLAB 为工具, 给出一个在频域嵌入和提取黑白二值水印图像的实现过程。(1) 水印图像的预处理: 将水印信息图像进行灰度处理, 然后再将转换后的图像进行二值转换。而这些都是为了提高水印信息的安全性对图像所做的处理。(2) 读取原始公开图像(大小为 256×256) 和黑白水印图像(大小为 32×32, 模式为灰度) 到二维数组 I 和 J。(3) 将原始公开图像I 分割为互不覆盖的图像块, 每块大小为 8×8, 共分为 32×32 块。然后对分割后的每个小块Block- dct(x,y) 进行 DCT 变换, 得到变换后的小块 Block-dct(x, y)。(4) 取黑白水印图像中的一个元素 J(p, q) , 通过嵌入算法嵌入到原始公开图像块的中频系数中。(5) 对嵌入水印信息后的图像块Block- dct (x, y) 进行逆DCT 变换, 得到图像块 Block(x′, y′)。

数字水印技术概论

数字水印技术概论 【摘要】本文就数字水印科学保护技术展开探讨,通过原理定义论述、领域背景介绍与应用探讨,明晰了技术核心应用价值。对促进数字水印技术的继续深化拓展,发挥对电子信息相关数据产品的可靠安全保护职能,有积极有效的促进作用。 【关键词】数字水印;应用;保护 0.前言 信息时代,各类信息化数字技术扩充发展,针对丰富数字信息的安全保护需求也日益扩充。基于数字文档可方便快捷的复制、篡改与盗取,因而令其产权保护面临一定困难。同时数字图像具有一定适应性特征,可供用户任意设计更新并为己所用。为此应科学探究一种良好的数据可靠加密保护技术,进而有效应对不良信息篡改、窃取、盗用问题。本文基于这一目标引入水印数字技术探讨,该技术通过印记图形加密有效保护版权信息,形成印记图形同原始保持一致,基于一定标准形成水印图像,进而探究非法复制信息、相关违规产品的不良流通应用。该技术核心特征在于潜入模式,是通过视觉设想推理阐释实效的科学方式。 1.数字水印技术概述 1.1数字水印技术原理内涵 数字水印技术是一类进行数据产品安全保护、信息内容科学检测,通过嵌入模式将相关序列代码或用户定义标识引入信息中,并可基于相关算法进行水印提取,进而实施保护信息版权检验的科学技术方式。可有效维护产权人享有的产品版权利益,杜绝非法盗版问题。数字水印技术所保护的对象可以是媒体,数据文档、工具软件、视频音频资料、信息图像等丰富内容,包括生成水印、相关嵌入过程、综合信息测试与提取水印等实践环节。 数字水印核心原理在于通过针对宿主进行标识信息嵌入形成水印,令其具备无法感知的良好属性,进而确保信息数据安全性。同时需要遵循相应感知规则,令水印信息具有充分冗余性,即可通过分段数据实现恢复。 1.2数字水印具体类别 数字水印基于出发点各异性,令其种类划分各不相同,并体现了一定的联系渗透属性。依据水印特征,可将其划分成健壮与脆弱水印。前者可服务于数字作品资源中进行著作权相应表述,通过水印嵌入可满足综合编辑实践需求。后者则可实现数据完整统一保护,基于对更新信号的敏锐反映性,可依据其水印状况进行数据信息安全程度分析判别。依据水印媒体,可将其分为图像、视频、音频水印、文本与网格水印形式。而基于检测流程,数字水印则包括明文与盲水印等。前者检测进程要利用原始信息,后者则应利用密钥。 基于水印不同内容,可将数字水印定义为有意义以及无意义形式。前者即水印自身同时代表数字图像或音频数据编码,而后者则仅仅代表序列号。 1.3数字水印技术服务应用领域 数字水印技术基于优质属性、科学原理,在数字化、信息化社会建设与市场经济发展中体现了较大的应用潜能,可在电子商务领域、多媒体技术服务、广播媒介中发挥综合优势。数字水印技术具备良好的版权保护功能,基于来源信息与版权内容嵌入,有效预防不良侵权行为,体现良好安全的版权保护能效,当然其实践应用对数字水印提出了显著的鲁棒性要求。同时,数字水印技术科有效实现

数字水印技术综述

数字水印技术综述 【摘要】本文介绍了数字水印技术的基本原理。并对其特点、分类、攻击技术及应用领域进行了阐述,同时对数字水印的各种算法进行了分类研究与深入分析,最后指出数字水印今后的研究方向。 【关键词】数字水印;水印原理;水印算法;水印应用 1什么是数字水印 所谓数字水印(digital watermark)技术是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。比如我们通过一定的算法,在图像、视频、音频等多媒体数据中嵌入一个可以标示其知识产权的水印信息。水印信息可以是文字、商标、印章或序列号等可以识别作品的作者、来源、版本、拥有者、发行人或合法使用人对数字产品的拥有权。水印信息通过特殊的方式,可以从宿主信号中提取出水印或是检测出它的存在性。这样的水印不占用额外的带宽,是原始数据不可分离的一部分,并且它可以经历一些不破坏源数据使用价值或商用价值的操作而存活下来。 2数字水印的特点 一般认为数字水印应具有以下特征:(1)鲁棒性:水印信号在经历多种无意或有意的信号处理后,仍能保持其完整性或仍能被准确鉴别的特性。(2)知觉透明性:数字水印的嵌入不应引起数字作品

的视/听觉质量下降,即不向原始载体数据中引入任何可知觉的附加数据。(3)水印容量(水印的位率):数字水印应该能够包含相当的数据容量,以满足多样化的要求。(4)安全性:水印嵌入过程(嵌入方法和水印结构)应该是秘密的,数字水印是统计上不可检测的,非授权用户无法检测和破坏水印。对于通过改变水印图像来消除和破坏水印的企图,水印应该能一直保持存在,直到图像已严重失真而丧失使用价值。(5)实现复杂度低:数字水印算法应该容易实现。在某些应用场合(如视频水印),甚至要求水印算法的实现满足实时性要求。(6)确定性:数字水印所携带的信息能够被唯一地、确定地鉴别,从而能够为已经受到版权保护的信息产品提供完全和可靠的所有权归属证明的证据。 3数字水印的分类 数字水印按照嵌入的位置可分为空域数字水印、变换域数字水印;按照水印的检测方式可分为私有水印、半私有水印和公开水印;按照水印的抗攻击能力可分为易损水印、鲁棒水印;按照水印的选取形式可分为序列水印、标识信息水印、标志图像水印;按照水印的可见性可分为可见水印、不可见水印;按照载体数据的性质可以将数字水印划分为图像水印、音频水印、视频水印、文本水印等等。4数字水印的基本原理 数字水印包含两个基本方面:水印的嵌入和水印的提取或检测。水印可由多种模型构成,如随机数字序列、数字标识、文本以及图

图像拼接算法及实现.doc

图像拼接算法及实现(一) 来源:中国论文下载中心 [ 09-06-03 16:36:00 ] 作者:陈挺编辑:studa090420 论文关键词:图像拼接图像配准图像融合全景图 论文摘要:图像拼接(image mosaic)技术是将一组相互间重叠部分的图像序列进行空间匹配对准,经重采样合成后形成一幅包含各图像序列信息的宽视角场景的、完整的、高清晰的新图像的技术。图像拼接在摄影测量学、计算机视觉、遥感图像处理、医学图像分析、计算机图形学等领域有着广泛的应用价值。一般来说,图像拼接的过程由图像获取,图像配准,图像合成三步骤组成,其中图像配准是整个图像拼接的基础。本文研究了两种图像配准算法:基于特征和基于变换域的图像配准算法。在基于特征的配准算法的基础上,提出一种稳健的基于特征点的配准算法。首先改进Harris角点检测算法,有效提高所提取特征点的速度和精度。然后利用相似测度NCC(normalized cross correlation——归一化互相关),通过用双向最大相关系数匹配的方法提取出初始特征点对,用随机采样法RANSAC(Random Sample Consensus)剔除伪特征点对,实现特征点对的精确匹配。最后用正确的特征点匹配对实现图像的配准。本文提出的算法适应性较强,在重复性纹理、旋转角度比较大等较难自动匹配场合下仍可以准确实现图像配准。 Abstract:Image mosaic is a technology that carries on the spatial matching to a series of image which are overlapped with each other, and finally builds a seamless and high quality image which has high resolution and big eyeshot. Image mosaic has widely applications in the fields of photogrammetry, computer vision, remote sensing image processing, medical image analysis, computer graphic and so on. 。In general, the process of image mosaic by the image acquisition, image registration, image synthesis of three steps, one of image registration are the basis of the entire image mosaic. In this paper, two image registration algorithm: Based on the characteristics and transform domain-based image registration algorithm. In feature-based registration algorithm based on a robust feature-based registration algorithm points. First of all, to improve the Harris corner detection algorithm, effectively improve the extraction of feature points of the speed and accuracy. And the use of a similar measure of NCC (normalized cross correlation - Normalized cross-correlation), through the largest correlation coefficient with two-way matching to extract the feature points out the initial right, using random sampling method RANSAC (Random Sample Consensus) excluding pseudo-feature points right, feature points on the implementation of the exact match. Finally with the correct feature point matching for image registration implementation. In this paper, the algorithm adapted, in the repetitive texture, such as relatively large rotation more difficult to automatically match occasions can still achieve an accurate image registration. Key words: image mosaic, image registration, image fusion, panorama 第一章绪论

基于Matlab的数字水印设计——基于空域的水印实现

摘要 数字水印(Digital Watermarking)技术是我们生活中经常见到的信息隐藏技术。它将一些标识信息(即数字水印)直接嵌入数字载体中,但不影响原载体的使用价值,也不容易被人的知觉系统觉察或注意到。 空间数字水印是信息隐藏技术的一个重要研究方向,另一类是频率数字水印。空间数字水印采用最低有效位(LSB)算法,通过修改表示数字图像的颜色或颜色分量的位平面,调整数字图像中感知不重要的像素来表达水印的信息,以达到嵌入水印的目的。本实验是基于matlab的数字水印设计——基于空域的水印实现。 关键词:信息隐藏技术;空间数字水印; LSB算法;matlab

目录 1 设计任务与目的 (1) 2 MATLAB的简介及应用 (1) 2.1 MATLAB简介 (1) 2.2 MATLAB应用 (1) 3 数字水印技术 (2) 3.1 数字水印技术的发展 (2) 3.2 水印分类 (2) 3.3 数字水印的特点 (3) 3.4 数字水印技术的基本原理 (4) 4 基于LSB的数字水印算法 (5) 4.1 LSB算法原理 (5) 4.2 LSB算法的实现 (6) 4.2.1 水印嵌入算法 (7) 4.2.2 水印提取算法 (9) 5 MATLAB软件仿真 (11) 5.1 仿真结果 (11) 5.1.1 水印嵌入仿真 (11) 5.1.2 水印提取仿真 (12) 5.2 仿真分析 (13) 结论 (14) 参考文献 (15)

基于Matlab的数字水印设计 ——基于空域的水印实现 1 设计任务与目的 (1)通过课程设计把自己在大学中所学的知识应用到实践当中。 (2)在课程设计的过程中掌握程序编译及软件设计的基本方法。 (3)深入了解利用Matlab设计基于Matlab的数字水印设计——基于空域的水印实现。 (4)提高自己对于新知识的学习能力及进行实际操作的能力。 (5)锻炼自己通过网络及各种资料解决实际问题的能力。 2 MATLAB的简介及应用 2.1 MATLAB简介 MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 2.2 MATLAB应用 MATLAB 产品族可以用来进行以下各种工作: 1)数值分析 2)数值和符号计算 3)工程与科学绘图

信息隐藏技术-数字水印综述

(重庆邮电大学2014-2015学年第一学期)信息隐藏技术课程 期末大作业 学号: 2011211650 2011211651 姓名:曾湘宇黄明雄 班级: 0441102 成绩评定:

数字水印技术综述 摘要 现今数字时代的到来,多媒体数字世界丰富多彩,数字产品几乎影响到每一个人的日常生活。如何保护这些与我们息息相关的数字产品,如版权保护、信息安全、数据认证以及访问控制等等,就被日益重视及变得迫切需要了。借鉴普通水印的含义和功用,人们采用类似的概念保护诸如数字图像、数字音乐这样的多媒体数据,因此就产生了“数字水印”的概念。所谓“数字水印”是往多媒体数据中添加的某些数字信息,比如将在数码相片中添加摄制者的信息,在数字影碟中添加电影公司的信息等等。与普通水印的特性类似,数字水印在多媒体数据中(如数码相片)也几乎是不可见的,也很难被破坏掉。因此数字水印在今天的计算机和互联网时代大有可为。数字水印技术还有很多其它用途,并且其应用领域还在不断扩大。要完整地说明数字水印应用的未来还不可能,但是业界对数字水印技术在复制保护和纸质媒介上的应用有了越来越大的兴趣,比如用比如水印技术保护钞票、支票、发票等等。除了技术发展,市场营销和商业规划也极为重要,并且需要有深度的分析与战略计划。技术推广和普及也必不可少,以保证市场为接受数字水印技术做好准备: 关键词:数字水印,水印攻击,FCM算法,应用,前景

目录 第一章前言 (2) 1.1问题背景 (2) 1.2问题分析 (2) 1.3小组分工 (3) 第二章数字水印技术 (4) 2.1为什么要用数字水印? (4) 2.3数字水印的起源 (6) 2.3发展历史 (6) 2.4国内外研究现状 (7) 2.5数字水印的概念 (7) 2.6数字水印的要素 (9) 2.7数字水印的优点 (10) 2.8数字水印的应用 (11) 2.8.1数字版权保护(DRM) (11) 2.8.2多媒体认证和篡改检测 (11) 2.8.3数字指纹和盗版追踪 (12) 2.8.4拷贝控制和访问控制 (12) 2.8.5广播监视 (12) 2.8.6商务交易中的票据防伪、电子印章 (12) 2.8.7隐蔽通信及其对抗 (13) 第三章常见的水印攻击方法 (14) 3.1基本攻击 (14) 3.2共谋攻击 (14) 3.3几何攻击 (14) 3.4马赛克攻击 (14) 3.5解释攻击(又称IBM攻击) (15) 3.6合法性攻击 (15) 第四章数字水印的算法 (16) 4.1空间域水印算法 (16) 4.2变换域水印算法 (16) 4.3 NEC算法该算法 (17) 4.4其他一些水印算法 (18) 4.5一个简单的数字水印算法 (19) 第五章总结与前景展望 (23) 总结 (23) 数字水印的未来 (23) 参考文献 (234)

相关文档
相关文档 最新文档