-
大小: 920KB文件类型: .rar金币: 1下载: 0 次发布日期: 2021-05-10
- 语言: 其他
- 标签: 数字水印 Watermarking 空间域 水印算法
资源简介
水印算法包括空间域的水印算法研究,主要包括LSB算法、Patchwork算法、文档微调算法等;另一类就是频域的水印算法研究,主要有基于DFT域、基于DCT域和基于DWT域的水印算法研究等
LSB算法不能很好的经受JPEG攻击,扩展名更改后,数字水印遭到严重的破坏
Patchwork算法可以抵抗JPEG压缩能力
扩频水印算法对JPEG压缩工具具有较好的稳健性,对高斯噪声和椒盐噪声攻击
DM水印算法对JPEG压缩无法抵抗
小波水印可以抵抗JPEG压缩攻击,对高斯噪声抵抗力较弱,对椒盐噪声有较强的鲁棒性
代码中支持
LSB混沌水印、Patchwork水印、LSB图像水印、扩频水印、DM图像水印的嵌入和提取
代码可运行
代码片段和文件信息
//DCT2.cs
using System;
using System.Collections.Generic;
using System.Text;
namespace Watermarking
{
class DCT2
{
double[] dct_image; //DCT image;
double[] dct_coef; //DCT系数矩阵
double[] dct_coeft; //转置DCT系数矩阵
double[] image; //bsizeXbsize图像块
/*------------------------------------------------------------*
* in_image 输入图像矩阵
* iw ih 输入图像宽高
* bsize bsizeXbsize图像块DCT变换
* type type = 1为正DCT变换 type =-1为逆变换
*------------------------------------------------------------*/
public double[] dctTrans(double[] in_image int iw int ih int bsize int type)
{
int iter_num = 256 / bsize;
dct_image = new double[iw ih];
dct_coef = new double[bsize bsize];
dct_coeft = new double[bsize bsize];
image = new double[bsize bsize];
coeff(dct_coef bsize);
//定义转置矩阵系数
for (int i = 0; i < bsize; i++)
for (int j = 0; j < bsize; j++)
dct_coeft[i j] = dct_coef[j i];
if (type == 1)
{
for (int i = 0; i < iter_num; i++)
{
for (int j = 0; j < iter_num; j++)
{
//取bsizeXbsize图像块image[]
for (int k = 0; k < bsize; k++)
for (int l = 0; l < bsize; l++)
image[k l] = in_image[i * bsize + k j * bsize + l];
//bsizeXbsize块DCT变换
dct(image dct_coeft dct_coef bsize);//positive
//Output dct image
for (int k = 0; k < bsize; k++)
for (int l = 0; l < bsize; l++)
dct_image[i * bsize + k j * bsize + l] = image[k l];
}
}
}
else
{
for (int i = 0; i < iter_num; i++)
{
for (int j = 0; j < iter_num; j++)
{
//取bsizeXbsize图像块image[]
for (int k = 0; k < bsize; k++)
for (int l = 0; l < bsize; l++)
image[k l] = in_image[i * bsize + k j * bsize + l];
//bsizeXbsize块IDCT变换
dct(image dct_coef dct_coeft bsize);//inverse
//Output dct image
for (int k = 0; k < bsize; k++)
for (int l = 0; l < bsize; l++)
dct_image[i * bsize + k j * bsize + l] = image[k l];
}
}
}
return dct_imag
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 92104 2010-08-05 14:33 image\Baboo(2)_w.bmp
文件 19712 2004-05-21 14:02 image\Baboo.jpg
文件 91886 2010-08-05 20:39 image\Baboo_w.bmp
文件 21877 2010-08-05 14:40 image\Baboo_w.JPG
文件 5599 2009-04-26 11:04 image\Bigwater.jpg
文件 10452 2016-10-13 14:16 image\Bigwater_w.bmp
文件 6353 2004-05-21 14:02 image\bird.jpg
文件 13894 2016-10-13 15:51 image\bird2_w.jpg
文件 7563 2016-10-13 15:48 image\bird3_w.jpg
文件 13919 2016-10-13 15:51 image\bird4_w.jpg
文件 68586 2016-10-13 15:00 image\bird_w.bmp
文件 68586 2016-10-13 15:00 image\bird_w.jpg
文件 13216 2009-03-23 21:07 image\cameraman.JPG
文件 65302 2010-02-06 08:56 image\cameraman_w.bmp
文件 8887 2004-05-21 14:02 image\fruit.jpg
文件 78975 2010-02-06 09:32 image\fruit_w.bmp
文件 10640 2004-05-21 14:02 image\hat.jpg
文件 83700 2010-02-06 08:57 image\hat_w.bmp
文件 11921 2005-05-08 21:03 image\Lena.jpg
文件 81025 2010-08-04 22:58 image\Lena_w.bmp
文件 18066 2009-02-02 09:03 image\peppers.JPG
文件 906 2009-05-11 19:31 image\water.JPG
文件 4323 2010-08-03 20:27 Watermarking\Backup\DCT2.cs
文件 32441 2010-08-05 14:32 Watermarking\Backup\Form1.cs
文件 13154 2010-01-02 21:30 Watermarking\Backup\Form1.Designer.cs
文件 6011 2009-09-21 22:58 Watermarking\Backup\Form1.resx
文件 612 2010-08-03 20:27 Watermarking\Backup\keyDialog.cs
文件 3780 2009-09-15 21:25 Watermarking\Backup\keyDialog.Designer.cs
文件 5814 2009-09-15 21:25 Watermarking\Backup\keyDialog.resx
文件 482 2009-08-29 14:20 Watermarking\Backup\Program.cs
............此处省略71个文件信息
- 上一篇:医院HIS系统软件施工方案最全版
- 下一篇:MKL编 程 基 础
评论
共有 条评论