基于离散余弦变换的数字水印算法与实现

点赞:11840 浏览:47444 近期更新时间:2024-02-25 作者:网友分享原创网站原创

【摘 要 】讨论了基于离散余弦变换的数字水印算法原理及其具体步骤,并通过仿真实验实现了数字水印的嵌入和提取,验证了算法的可行性.

【关 键 词 】数字水印小波变换离散余弦变换

一、前言

数字水印作为信息隐藏的一项重要技术,已广泛应用于信息安全的多个领域之中.离散余弦变换(DCT)作为一种传统的算法,是数字图像处理和信号处理的一种正交变换,具有压缩比高、误码率等优点,将其应用于数字水印算法实现水印的前如何提取十分有效.

二、基于离散余弦变换的数字水印算法

从数字水印的不可见性出发,基于DCT域数字水印算法应将水印信息嵌入到原始图像的低频部分,但这样得到的水印图像无法抵御如JPGE压缩等有损压缩的攻击;如果从数字水印的鲁棒性角度出发,应将水印嵌入到原始图像的高频部分,但这样得到的水印图像与原始图像在视觉上会有明显的差别[2].这里提出的基于离散余弦变换的数字水印算法,主要是将水印嵌入到图像DCT频域的DC分量上,因为这是对人类视觉感受比较重要的部分.算法在保证数字水印鲁棒性的前提下,考虑图像的HVS特性和自身特点,使数字水印的强度自适应于原始图像,进而保证了数字水印的不可见性.

基于DCT的数字水印算法是先将原始图像分割成8x8的块,依据HVS特性对块进行分类后,再对所有的块进行DCT变换.在DCT域中,根据各块的分类结果,将不同强度的水印分量嵌入到相应块的DCT系数当中.原始图像的分块示意图如图1所示,每个8x8块的DCT系数都按照的顺序进行排列.图像左上角的第一个系数为直流系数用DC表示,接下来排列的是低频系数,并且随着排列序号的越大对应的频率越高,图像右下角对应的是最高频率的系数.因此不难看出,DCT变换可以按照能量的大小将图像的频谱系数进行区分,这更有利于进行相应的频谱操作[3].

三、基于离散余弦变换的数字水印算法的实现步骤

采用的水印信息是一幅64×64的二值图像,原始图像是512×512的lena图像.基于离散余弦变换的数字水印的嵌入算法具体步骤如下:Step1:读入并显示原始图像和水印图像;Step2:将原始图像分割成8×8的块,用坐标将需要隐藏的图像表示出来,并对每一块图像进行DCT变换;Step3:嵌入水印图像,如果水印图像值为1,则取,如果水印图像值为0,则取(其中为随机矩阵);Step4:将水印信息嵌入原始图像的所有块中,并对嵌入后的图像进行IDCT变换;tep5;显示嵌入水印后的图像.

基于离散余弦变换的数字水印提取算法是水印嵌入算法的逆过程,具体步骤如下:Step1:读出嵌入水印后的图像.Step2:将读入的图像分成8×8的块,并对每一块图像进行DCT变换;Step3:读出嵌入水印图像时和的信息,即嵌入的水印图像信息;Step4:读出并显示提取出的水印图像.

基于离散余弦变换的数字水印算法与实现参考属性评定
有关论文范文主题研究: 关于水印的论文范文素材 大学生适用: 高校毕业论文、在职研究生论文
相关参考文献下载数量: 27 写作解决问题: 如何写
毕业论文开题报告: 论文模板、论文目录 职称论文适用: 核心期刊、职称评副高
所属大学生专业类别: 如何写 论文题目推荐度: 优秀选题

四、水印嵌入提取实验结果

采用的原始图像是256×256的lena图像如图2,水印信息是一幅32×32的二值图像如图3.

经DCT变换后生成嵌入水印图像,图4为嵌入水印后的图像,根据人的视觉特性,可以观察出水印嵌入之后对原始图像在视觉上变化甚微.具有良好的透明性.水印的提取和嵌入是相反的过程.图5为提取后的水印图像与原水印图像的比较.

五、结论

数字图像水印技术的核心是将数字水印信息嵌入到图像中,同时保证所加水印的不可见性.通过对基于DCT变换数字水印算法的研究实验发现,算法嵌入后的水印图像具有很好隐蔽性,并可以顺利的提取水印,提取出的水印与原水印相似度很高.