第二种方法是使用由函数dctmtx返回的DCT变换矩阵。这种方法较适合于较小的输入方阵(如8 8或16 16方阵)以及后面通常要使用到的分块DCT(block DCT)。dctmtx的调用格式如下:
D=dctmtx(N)
其中,N表示DCT变换矩阵的文数,D表示得到的N文DCT变换矩阵。
4.2.1  水印的嵌入
基于DCT变换的水印算法研究较多,发展也比较完善,水印可以嵌入到DCT域的频域系数中。比较经典的算法是Zhao和Koch提出DCT域的数字水印算法,该算法先将图像分成8 8子块,DCT变换后选取某些频率块,将水印信号嵌入到由密钥控制选择的这些DCT系数中。该数字水印算法,对有损压缩和低通滤波是稳健的,因此当嵌入水印的图像经过一些几何变形和信号处理操作而产生比较明显的变形后仍能够提取出一个可以信赖的水印副本。
首先,在假定嵌入过程不会导致载体画质严重降低的情况下,系数应该选择在EG压缩算法中亮度量化值一样的那些系数。其次,DCT系数应该是中频系数为最优。图4.2是基于DCT变换的数字水印嵌入流程。
图4.2 DCT域数字图像水印嵌入原理图
图4.3 图像分块示意图
表4.2 8 8DCT系数排列顺序
DC    C(0,1)    C(0,2)    C(0,3)    C(0,4)    C(0,5)    C(0,6)    C(0,7)
C(1,0)    C(1,1)    C(1,2)    C(1,3)    C(1,4)    C(1,5)    C(1,6)    C(1,7)
C(2,0)    C(2,1)    C(2,2)    C(2,3)    C(2,4)    C(2,5)    C(2,6)    C(2,7)
C(3,0)    C(3,1)    C(3,2)    C(3,3)    C(3,4)    C(3,5)    C(3,6)    C(3,7)
C(4,0)    C(4,1)    C(4,2)    C(4,3)    C(4,4)    C(4,5)    C(4,6)    C(4,7)
C(5,0)    C(5,1)    C(5,2)    C(5,3)    C(5,4)    C(5,5)    C(5,6)    C(5,7)
C(6,0)    C(6,1)    C(6,2)    C(6,3)    C(6,4)    C(6,5)    C(6,6)    C(6,7)
C(7,0)    C(7,1)    C(7,2)    C(7,3)    C(7,4)    C(7,5)    C(7,6)    C(7,7)
图4.3是图像分块示意图,每一个8 8块的DCT系数排列顺序如表4.2所示。DCT系统按照Zig-Zag顺序排列,左上角第一个系数是直流系数,接着排列的是低频系数,随着序号的增大频率增高,最右下角对应最高频系数。因此,DCT变换能够将图像的频谱按能量的大小进行区分,有利于进行相应的频谱操作。
4.2.2  水印的提取或检测
为了提高水印系统的安全性,同样利用随机间隔控制和种子就能实现对水印信息的忙检测,如图4.4所示这里接受者只需要对接收到的载有水印信息的图像也对图像做DCT变换和分块,再按照随机间隔控制的顺序直接比较系数的大小就可以提取出水印信息。
上一篇:GaAs毫米波单片集成数字移相器的研究+文献综述
下一篇:基于Matlab的光纤放线姿态的仿真研究

自回归模型谱估计方法设计+Matlab源代码

等波纹最佳逼近FIR数字滤波器设计

LABVIEW虚拟FIR数字滤波器的设计

MATLAB舰船电能分配及管理系统设计

Matlab的光栅投影相位校正与展开算法设计

MATLAB数字图像处理的交通信号灯识别系统设计

基于MATLABGUI的粒子滤波算法实现+源代码

拉力采集上位机软件开发任务书

中国古代秘书擅权的发展和恶变

《醉青春》导演作品阐述

国内外无刷直流电动机研究现状

辩护律师的作证义务和保...

谷度酒庄消费者回访调查问卷表

高校网球场馆运营管理初探【1805字】

浅谈传统人文精神茬大學...

浅谈新形势下妇产科护理...

多元化刑事简易程序构建探讨【9365字】