1、厦门大学软件学院毕业设计(论文)开题报告 学生姓名 班级 学号 指导教师姓 名 职称 所在单位 毕业设计(论文)题 目 基于 Opencv 的视频水印系统的实现 毕业设计(论文)的 目标: 随着 计算机网络的普及和数字多媒体业务的发展,多媒体生产者面临着如何保护知识产权的问题。面对新的信息技术,传统的版权保护方式显得无能为力,因此使得在数字产品版权保护方面具有巨大商业潜力的数字水印技术日益被学界和商界所关注。 数字水印技术是将一段特殊的信息隐藏在文本、图像、视频、音 频等多媒体数据中 ,这种特殊的信息即数字水印永久地和多媒体数据结合在一起。和加密技术不同 ,这种技术对原数据基本上不作改变。水印
2、标明数据的所有者、日期、权限等信息 ,就像产品的商标一样。因而 ,水印可用于标题说明、数据鉴别、保密通信和版权保护等 ,根据不同的目的 ,水印包含的信息不同。 本课题 以 视频 数据为例 ,其一般原理同样适用于其它多媒体数据,其 主要目的就是在熟悉 Opencv 的基础上,基于 Opencv 开发环境 在视频变换域上采用扩频技术实现水印信号的嵌入和检测。 实现方法: 简介: 扩频技术也叫扩展频谱 (Spread Spectrum)技术,它是充分利用有限频谱资源,提高无线信息传输效率的一种新技术。数字信息传输用扩频信号的特征是其带宽 W远大于信息速率 R(b/s),即扩频信号的带宽扩展因子 Be
3、=W/R远大于 1。扩频信号中这种固有的冗余度,可用来克服一些无线和卫星信道中传输数字信息时所遇到的严重干扰。香农( Shannon)在他的信息论中提出了有名的关于信息容量的香农定理: C=W( 1+S/N) 其中 C表示信道容量, W表示信道带宽, S表示信号功率, N表示噪音功率。因此,在无差错传输的信息速率 C不变时,如信噪比很低,则可以 用足够宽的带宽来传输信号。香农定理表明了一个无误差的传输信息的能力( C)同存在于信道中的信噪比( S/N)以及用于传输信息的信道带宽( W)之间的关系。 扩频技术是一种信息处理技术,它是利用同将要传输的数据(信息)无关的扩展谱对将要传输的信号进行扩展
4、频谱,使之永远超过被传输信息所需的带宽,在接收机中采用相同的解扩和恢复数据。 以上只是针对数字水印和扩频技术做了个较为简单的介绍,内容还有待完善,正进一步收集资料中。 通用的水印技术包括两个方面水印的嵌入和水印的提取或检测,如图 1 和图2所示。 图 1:水印信号的嵌入 图 2:水印信号的提取或检测 基于视频信号的变换域 技术可以嵌入大量比特数的数据而不会导致容易察觉的缺陷, 所以可以 采用类似扩频图象的技术来隐藏数字水印信息。这类数据 处理通常采用常用 的变换, 将数据变换到变化域中进行处理,来提高水印算法的鲁棒性。这些变换通常都是基于局部或全局 的变换 , 包括离散余弦变换 (DCT)、小
5、波变换 (DWT)、傅氏变换 (DFT或 FFT)以及哈达马变换 (Hadamard transform)等等。其中基于分块的 DCT是最常用的变换之一,现在所采用的静止图像压缩标准 JPEG和视频 MPEG 压缩都是 基于分块 DCT 变换 。 扩频水印算法是扩频通信技术在数字水印中的应用。与传统的窄带调制通信方法不同,扩频通信将待传递的信息通过扩频码调制后散布于非常宽的频带中,使其具有伪随机特性。收信方通过相应的扩频码进行解扩,获得真正的传输 信 息 。 扩频水印方法与扩频通信类似,是将水印信息经扩频调制后叠加在原始数据上。从频域上看,水印信息散布于整个频谱,无法通过一般的滤波手段恢复。如
6、果要攻击水印信息,则必须在 所有频段上加入大幅度噪声,这无疑会严重损害原始数据的质量。 本课题是基于 Opencv 开发环境的视频水印系统的实现,因此下载安装及配置 Opencv 是必要的,开发环境为 VC+6.0. 1) 设计简单的图形界面。 (注: cvWaitKey()在一般的事件处理中需要周期地被调用,除非 HighGui 被用于某些能够处理事件的环境中。); 2) 视频读写 ; 3) 视频信号的变换域数据加工和处理; 4) 水印信号的嵌入 ; 5) 检测水印 ,提取水印或存在与否的二值判定 典型算法之一: 在原始视频中嵌入水印:即讲水印嵌入到原始码流中,形成含有水印信息的原始视频码流
7、,然后再进行压缩,形成带有水印信息的原始压缩码流。提取时需对压缩码流进行解码。 优点 : 可以充分利用静止图像的水印技术,且算法比较成熟。 缺点:会增加视频码流的数据比特率,影响视频速率的恒定性; 对已压缩的视频,需要先进行解码,然后嵌入水印后在重新编码(增加了计算的复杂性并降低了视频的质量)。 分两种: 空域算法即是直接在原始视频码流中加人水印信息,一般是将水印信号添加在亮度分量或颜色分量 上 : 将视频信号视为一维信号,将水印信号扩展,放大和调制为一拟随机序列,直接加入到视频信号中。 将视频看作为一系列的静止图像,在整个连续的帧图像中加人相同的水印。由于各个图像不尽相同,可通过局部缩放因子
8、为不同区域嵌人不同强度的水印。 频域算法是指先将原始视频进行某种变换,然后在其变换域 (如 DCT 域、 DFT域、 DWT 域等 )嵌入水印 : 将视频看作为静止图像序列,利用一些比较成熟的静止图像频域算法嵌人水印。 将视频视为三维信号 (其中二维表示空间上的图像,一维表示图像在时间上的连续 ),先进行三维变换 (目前 研究三维 DWT 和三维 DFT 的比较多 ),然后在其变换域中添加水印。 与各种视频编码器相适应,按照相应的块进行频域变换,然后在其变换域中添加水印。 毕业设计的具体事宜正在进行中,目前的主要事情是查找资料并实施编程。 以下是部分 代码 : 1) 视频读取 代码 : CvC
9、apture* capture = 0; IplImage *image = 0; capture = cvCaptureFromFile(“1.avi“); if( !capture ) fprintf(stderr,“Could not initialize capturing.n“); return; cvSetCaptureProperty(capture,CV_CAP_PROP_POS_FRAMES,22); IplImage* frame = 0; frame = cvQueryFrame( capture );/获取一帧 image = cvCreateImage( cvGetS
10、ize(frame), 8, 3 ); if( !image fprintf(stderr,“Could not Create Image.n“); return; cvSaveImage( “MYPIC.bmp“, image ); cvNamedWindow( “showwindow“, 1 );/创建显示窗口 cvShowImage( “showwindow“, image );/显示 image cvWaitKey(0); cvReleaseCapture( cvDestroyWindow(“showwindow“); 时间进度安排: 2007.3.1 2007.3.14:了解课题 的目标,要求等 2007.3.14 2007.4.1 :确认课题要求,搜集 Opencv 材料和 C语言课程相关资料 ,以及视频水印算法,做好调研工作, 完成开题报告 2007.4.1 2007.4.15:完成系统的总体设计和详细设计 2007.4.16 2007.5.15:完成系统的主 体 部分 2007.5.15 5007.6.3 :完成系统的后期测试和完善以及毕业论文的撰写 指导教师审核意见: 校外指导教师签名: 2007 年 月 日 校内指导教师签名: 2007 年 月 日