今天给各位分享信息隐藏dct的知识,其中也会对信息隐藏技术主要应用有哪些进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
数字水印是指以可感知或不可感知的形式嵌入到数字多媒体产品中、用于版权保护、内容检验或提供其它信息的信号。数字水印技术以其特有的优越性可以应用在诸多领域,具有重要的应用意义和实用价值。 本文通过对现有的一些数字水印算法以及分形、小波、离散余弦变换理论和JPEG、JPEG2000压缩标准的学习和研究,提出了几种数字水印算法: 一、基于小波变换和分形理论的数字水印算法,有效的缩减了传统分形编码方法嵌入水印所需时间。 二、DCT域基于改进的线性内插的鲁棒性数字水印算法,该方法对于JPEG有损压缩等处理操作具有一定的鲁棒性。 三、基于线性内插的可见性数字水印算法,解决了可见水印需要隐藏的信息量大的问题,并且对于一些常见的图像处理操作具有一定的鲁棒性。 四、适合于JPEG2000的鲁棒性数字水印算法,该算法对于JPEG2000有损压缩具有较好的抵抗能力。
信息隐藏将在未来网络中保护信息不受破坏方面起到重要作用,信息隐藏是把机密信息隐藏在大量信息中不让对手发觉的一种方法。信息隐藏的方法主要有隐写术、数字水印技术、可视密码、潜信道、隐匿协议等。
隐写术(Steganography):隐写术就是将秘密信息隐藏到看上去普通的信息(如数字图像)中进行传送。现有的隐写术方法主要有利用高空间频率的图像数据隐藏信息、采用最低有效位方法将信息隐藏到宿主信号中、使用信号的色度隐藏信息的方法、在数字图像的像素亮度的统计模型上隐藏信息的方法、Patchwork方法等等。
数字水印技术(Digital Watermark):技术是将一些标识信息(即数字水印)直接嵌入数字载体(包括多媒体、文档、软件等)当中,但不影响原载体的使用价值,也不容易被人的知觉系统(如视觉或听觉系统)觉察或注意到。目前主要有两类数字水印,一类是空间数字水印,另一类是频率数字水印。空间数字水印的典型代表是最低有效位(LSB)算法,其原理是通过修改表示数字图像的颜色或颜色分量的位平面,调整数字图像中感知不重要的像素来表达水印的信息,以达到嵌入水印的目的。频率数字水印的典型代表是扩展频谱算法,其原理是通过时频分析,根据扩展频谱特性,在数字图像的频率域上选择那些对视觉最敏感的部分,使修改后的系数隐含数字水印的信息。
可视密码技术:可视密码技术是Naor和Shamir于1994年首次提出的,其主要特点是恢复秘密图像时不需要任何复杂的密码学计算,而是以人的视觉即可将秘密图像辨别出来。其做法是产生n张不具有任何意义的胶片,任取其中t张胶片叠合在一起即可还原出隐藏在其中的秘密信息。其后,人们又对该方案进行了改进和发展。主要的改进办法办法有:使产生的n张胶片都有一定的意义,这样做更具有迷惑性;改进了相关集合的造方法;将针对黑白图像的可视秘密共享扩展到基于灰度和彩色图像的可视秘密共享。
不知道你的dct变换 是用在哪里 数字水印or 图像压缩??
%程序员:李鹏
%编写时间:2003.11.25%修改时间:2004.3.8
%函数功能:本函数用于DCT域的信息隐藏
function [count,msg,result]=hidedctadv1(image,imagegoal,msg,key,alpha) %按位读取秘密信息
frr=fopen(msg,'r');
[msg,count]=fread(frr,'ubit1');
fclose(frr); data0=imread(image); %将图象矩阵转为double型
data0=double(data0)/255; %取图象的一层做隐藏
data=data0(:,:,1); %对图象分块
T=dctmtx(8); %对分块图象做DCT变换
DCTrgb=blkproc(data,[8 8],'P1*x*P2',T,T'); DCTrgb0=DCTrgb; %产生随机的块选择,确定图像块的首地址
[row,col]=size(DCTrgb);
row=floor(row/8);
col=floor(col/8);
a=zeros([row col]);
[k1,k2]=randinterval1(a,count,key);
for i=1:count
k1(1,i)=(k1(1,i)-1)*8+1;
k2(1,i)=(k2(1,i)-1)*8+1;
end %信息嵌入
temp=0;
for i=1:count
if msg(i,1)==0
if DCTrgb(k1(i)+4,k2(i)+1)DCTrgb(k1(i)+3,k2(i)+2)
temp=DCTrgb(k1(i)+4,k2(i)+1);
DCTrgb(k1(i)+4,k2(i)+1)=DCTrgb(k1(i)+3,k2(i)+2);
DCTrgb(k1(i)+3,k2(i)+2)=temp;
end
else
if DCTrgb(k1(i)+4,k2(i)+1)DCTrgb(k1(i)+3,k2(i)+2)
temp=DCTrgb(k1(i)+4,k2(i)+1);
DCTrgb(k1(i)+4,k2(i)+1)=DCTrgb(k1(i)+3,k2(i)+2);
DCTrgb(k1(i)+3,k2(i)+2)=temp;
end
end
if DCTrgb(k1(i)+4,k2(i)+1)DCTrgb(k1(i)+3,k2(i)+2)
DCTrgb(k1(i)+3,k2(i)+2)=DCTrgb(k1(i)+3,k2(i)+2)-alpha;%将原本小的系数调整得更小
else
DCTrgb(k1(i)+4,k2(i)+1)=DCTrgb(k1(i)+4,k2(i)+1)-alpha;
end
end %信息写回保存
DCTrgb1=DCTrgb;
data=blkproc(DCTrgb,[8 8],'P1*x*P2',T',T); r
esult=data0; result(:,:,1)=data;
imwrite(result,imagegoal);
频信息隐藏技术作为信息隐藏技术的一个重要分支,主要涉及的域有时域、频域、离散余弦变换(DCT)域、小波(Wavelet)域、压缩域等。其中,时域和频域的嵌入方法相对容易实现,但鲁棒性相对较差;DCT域和Wavelet域方法透明性好,鲁棒性也不错,尤其是在抵抗模/数转换(A/D)、数/模转换(D/A)攻击时有着非常优秀的表现,但其操作复杂,实现难度相对较高;压缩域隐藏算法一般有较好的透明性,但鲁棒性相对较差。音频信息隐藏在许多场合取得了很好的应用效果,但面对重录音攻击,尚且没有一种很好的方法。解决这一难题的关键是精确同步信息的嵌入和强鲁棒隐藏方法的研究。
这是一个matlab的JPG图像的信息隐藏算法。DCT算法。你把程序复制到MATLAB里面就能用了。
我不是很了解MATLAB,但是觉得所谓添加到图像中去不是把隐藏信息加入到图像的数据中去,而是通过对数据进行一定得变化使得这些数据通过一定得算法反映出水印信息
不知道你的数字水印需不需要原稿,如果需要,那很简单,只要你将原来图像的某一位置(根据算法和密钥决定)的值变化一下,比如
Y=(1-a%)X,Y表示添加后的该位置的值,X表示原来的,a%表示变化强度,对a%的加减反映添加的具体数值(添加的数值只有0或1),你可以用+a%表示添加了1,用-a%表示添加了0,这样就可以将隐藏信息先转化成一段01代码,再通过上述方法添加到图像中,检测室通过与原稿的对比,那些地方多了a%X就是添加了1,烧了a%X就是添加了0
至于不需要原稿的数字水印,是通过先后选择的两个位置的比较完成的,也就是大于小于来决定添加0还是添加1
信息隐藏dct的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于信息隐藏技术主要应用有哪些、信息隐藏dct的信息别忘了在本站进行查找喔。
版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件至举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。
标签: #信息隐藏dct
相关文章