首页 > 编程语言 >暗水印——变换域DCT水印算法(一种通用性强,能有抵御攻击的手段)

暗水印——变换域DCT水印算法(一种通用性强,能有抵御攻击的手段)

时间:2024-06-04 11:24:32浏览次数:20  
标签:变换 水印 攻击 算法 通用性 图像 DCT

 

随着计算机和网络技术的飞速发展,信息的安全保护问题日益突出。数字图像、音频和视频等多媒体数字产品愈来愈需要一种有效的版权保护方法——水印技术,通常用于保护知识产权、防止未经授权的访问、作弊等。

广义上可以把水印技术划分为四大类:图像水印、视频水印、音频水印和文本水印。这些水印技术都有其独特的特点和应用场景,需要根据具体的数字媒体保护需求进行选择使用。

技术与实践意义

本文以“多通道、多层水印”为目标,旨在让操作人员通过自定义的方式,制作水印信息,深入体验水印“添加”、“提取”的全过程,及水印抵抗攻击手段后的“鲁棒性”对比。

变换域DCT水印算法

变换域原理

1. 离散余弦变换(DCT)是一组不同频率和幅值的余弦函数和来近似一副图像,实际上是傅里叶变换的实数部分;

2. 离散余弦变量对于一副图像,其大部分可视化信息都集中在少数的变换系数上;

3. 离散余弦变量是数据压缩常用的一个变换编码方法,它能将高相关数据能量集中,使得它非常适用于图像压缩。

工程效果展示

水印添加

1. 将图像分解为88的图像块,之后进行量化;

2. 在量化过程中,从左至右,从上至下对每个图像块做DCT变换,舍弃高频分量,剩下的低频分量被保存下来用于后期图像重建;

3. 对余下的图像块进行量化压缩,由压缩后的数据所组成的图像大大缩减了存储空间;

4. 解压缩时对每个图像块做DCT反转换(IDCT),然后重建一幅完整的图像;

5. 由于舍弃了某些频率的图像,所以最终呈现出来的图像清晰度会有差异。

图1 变换域DCT-文字水印 图2 变换域DFT-图像水印

水印的鲁棒性测验

用户通过一些攻击手段可以验证水印算法的鲁棒性,如PS等,主要有二十种攻击操作的测试图片,测试素材如下图:

 

 

这里列举两类暗水印的部分攻击操作,如图 3 、 4所示。

图3 变换域DCT算法中图像亮度+50的攻击实验 图4 变换域DFT算法中图像涂改、截图的攻击实验

通过攻击实验可以看出:此算法通用性比较强,在分块和频域位置选择合理的情况下,可以抵抗一定程度裁剪、缩放和压缩等常见的攻击手段。

标签:变换,水印,攻击,算法,通用性,图像,DCT
From: https://www.cnblogs.com/Jcloud/p/18230415

相关文章

  • 小程序,选择颜色,去水印
    //在页面中添加一个canvas组件<canvascanvas-id="myCanvas"bindtap="handleTap"></canvas>//在页面的js文件中处理图片Page({ data:{  imgUrl:'',//存储用户选择的图片路径  startX:0,//用户指定区域的起始坐标X  startY:0,//用户指定区域的起始......
  • DASCTF X HDCTF 2024 公开赛|生而无畏战_pwn部分wp
    剩下一个不会写。......
  • dbg修改EIP动调 [BJDCTF 2020]Easy
    教程多是patching,但是我下载错误(以后有时间再试试),那用dbg吧还有这道题蜜汁让我幻视pwn题目DieIDA主函数很好找,代码只是输出提示,没有其他东西了关键函数在其他地方 看看左边函数框 发现在main函数前面有一个名字一看就是自定义的函数ques这个函数在main函数之前运行......
  • 通过C#给图片添加水印
    近日有图片通过C#加水印的需求,在网上搜到了这个:https://www.jb51.net/program/319824nmi.htm但是提供的代码有不少问题。经过分析和修改,整理为了这样的代码:oldpath为原图片路径,newpath为保存到的图片路径。text为水印文字内容。rotate是以°为单位的角度,repeatD是垂直或水平相邻......
  • 基于DCT变换和位平面分解的数字水印嵌入提取算法matlab仿真
    1.算法运行效果图预览    2.算法运行软件版本matlab2022a 3.算法理论概述    基于离散余弦变换(DiscreteCosineTransform,DCT)和位平面分解(Bit-PlaneDecomposition)的数字水印嵌入与提取算法,是一种结合了频域与空域特性的稳健数字水印技术。该方法利......
  • 图片去水印工具(低调用哦)
    一、简介1、它是一款专业的图像编辑工具,旨在帮助用户轻松去除照片中不需要的元素或修复照片中的缺陷。无论是修复旧照片、消除拍摄时的不良构图,还是删除照片中的杂乱元素,都能帮助用户快速实现这些目标。其功能强大且操作简单,使得使用者可以轻松实现图像编辑的各种需求。使用......
  • 基于二维CS-SCHT变换和扩频方法的彩色图像水印嵌入和提取算法matlab仿真
    1.算法运行效果图预览   2.算法运行软件版本matlab2022a 3.算法理论概述水印嵌入原理   水印提取原理: 将嵌入水印的图像再次进行二维CS-SCHT变换。 提取变换后的低频系数,并按照嵌入时的规则去除宿主图像内容的影响,恢复出水印信息Wm′​。  ......
  • 前端水印实现
    点击查看代码classWaterMark{constructor(el,content){this.el=el;this.content=content;this.observer=null;this.config={attributes:true,childList:true,subtree:true};this.ini......
  • 图片如何去水印?ps去除图片上的水印应该怎么操作?教会你!
    图片去水印是一个常见的需求,尤其在使用他人图片时,为避免版权问题,去除水印是很有必要的。Photoshop(PS)作为一款专业的图片处理软件,提供了多种去除水印的方法。以下是使用PS去除图片水印的几种详细步骤:方法一:使用内容识别填充步骤1:打开Photoshop软件,并导入需要去水印的图片。......
  • 如何去除视频上的文字?免费无痕去水印分享!视频制作良器!
    对于需要进行二次创作的视频素材,去除原有的文字可以提供一个更加干净的画布,方便创作者在其基础上进行新的创作和编辑。同时,去除文字后的视频也更方便分享到各种平台,避免因为平台对文字的限制而导致视频无法发布或传播。要去除视频上的文字,可以尝试使用金舟水印助手这款软件。......