数字水印程序设计

王小胖重新学编程 2006-02-16 02:06:42
各位大侠帮帮忙,我的毕业设计是数字水印程序设计,我想用java实现,现在就是没有一点思想,老师让做的也比较简单,就是给个图片中加入信息(水印)并能提取出来,用java写两个程序就行了,我现在实在是没有一点思想,希望高手能提供一点帮助,能提供些代码更好,或者别的什么都行,我真的想不到从什么地方入手,高手们帮忙啊,谢谢了!
...全文
337 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzhzzh204553 2006-02-16
  • 打赏
  • 举报
回复
不懂,但是帮顶一下
  • 打赏
  • 举报
回复
我的一个老师让我也做这个课题,但我没做,不感冒。
我们老师已经做好了,是用vc6做的,你还是需要知道其原理才能动手做软件:

三个环节:水印设计、噪声消除和信号放大。
采用此设计出于以下几点考虑:① 色彩反差大,容易确认攻击点。② 同值象素聚集,可以进行自我修复。③ 增加了人眼对其的分辨力。④增加了信息的冗余度。⑤便于和数值形式的水印码建立对应关系。
从信号角度看,它实际上是增加了信号源的强度,因为较强的信号源能保证接收信号的强度。
在多媒体课件中,使用3张相同的图像不会引起攻击者的注意(比如背景)。我们在这3张图像中分别嵌入3个水印。除图1的水印外,我们还嵌入一张纯白水印和一张纯黑水印。3个水印尺寸完全相同。
我们基于以下几点考虑:
(1)攻击者为了达到破坏课件水印的目的,通常会对所有可疑媒体进行攻击。因此,我们有理由相信3个水印图像都遭到了攻击。这3个水印图像由于相似,经历的攻击也应大致相同。
(2)课件作为一个整体在网络上传播,各媒体游历了相同的过程,系统噪声的增加对于它们来说机会均等。
(3)攻击者的攻击是有限度的,造成原图像不可用的攻击对于攻击者也是没意义的。
依据嵌入方的记录,我们从3个图像中分别提取3个水印,我们称为wb、W、B。wb为真正水印,它代表一些有用的版权信息。W为白水印,B为黑水印。W在各种攻击和噪声影响下,将通过颜色变化表现出来,在我们的测试中它出现了很多黑点。B也产生了变化,不过它是以白点形式表现出来的。
降噪过程如下:
(1)定位W水印中的攻击点。
(2)利用攻击点校正原水印, 得到wb-W。
(3)定位B水印中的攻击点。
(4)利用攻击点校正原水印, 得到wb-B。
至此,我们得到了两个校正水印。如果攻击程度较弱,则提取水印已经有所改观。为了获得性能更好的结果。我们还需将信号放大。
信号放大
不同的算法可能对于颜色的处理方法不同,使用一种颜色进行校正,不可信程度增高。为此,我们提取两个校正结果中可信度高的部分。即认为用白色水印校正的结果中,白色区域是可信的,而用黑色水印校正的结果中,黑色区域是可信的。最后用可信区域对提取水印wb进行置换。
置换过程如下:
(1)两种校正结果按块划分,块的大小与原水印的划分块大小相同。(图一中有18个块)。
(2)对于第M个块,计算两种校正结果中对应块的灰度值的和,得S1、S2。
(3)计算纯白和纯黑块的灰度值的和,得W1、B1。
(4)计算差值(S1-W1)和(S2-B1)的绝对值A1、A2。
(5)如果A1>A2,原水印第M块被黑色校正结果的第M块置换。
(6)如果A1<A2,原水印第M块被白色校正结果的第M块置换。
如果想使信号进一步放大,则第(5)步用纯黑块置换,第(6)步用纯白块置换。
以下是部分代码:
blocksize=18;
for (q=0:1)
for (k=0:8)
w=0;//初始化差值A1
b=0; //初始化差值A2
for (i=1+q*10:10+q*10)
for (j=1+10*k:10+k*10)
w=255-Iw(i,j)+w;
b=Ib(i,j)+b;

end
end
if (w<b) //比较差值A1和A2
for (i=1+q*10:10+q*10)
for (j=1+10*k:10+k*10)
J4(i,j)=255;//置换
end
end
else
for (i=1+q*10:10+q*10)
for (j=1+10*k:10+k*10)
J4(i,j)=0; 置换
end
end
end
end
end
  • 打赏
  • 举报
回复
高手能不能给我提示一下加入阿,谢谢了,如果有提取得,给1000也行
polarman 2006-02-16
  • 打赏
  • 举报
回复
加水印简单,关键在提取,这个问题能值1000分。图像特征提取太复杂

62,629

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧