当前位置: 首页 > news >正文

基于频域的数字盲水印blind-watermark

基于频域的数字盲水印技术是一种通过将水印信息嵌入到图像的频率域中来实现版权保护和内容认证的技术。以下是其核心要点:

基本原理

  1. 频域转换‌:通过傅里叶变换(DFT)、离散余弦变换(DCT)或离散小波变换(DWT)将图像从空域转换到频域‌12。
  2. 水印嵌入‌:将水印信息(如二进制数据、文本或图像)嵌入到频域的中高频系数中,利用人类视觉对高频不敏感的特性实现不可见性‌1。
  3. 鲁棒性设计‌:通过调整系数关系(如DCT系数的相对大小)或结合奇异值分解(SVD)增强抗攻击能力,抵抗压缩、裁剪、噪声等常见处理‌

数字盲水印blind-watermark源码:https://github.com/guofei9987/blind_watermark

安装

pip install blind-watermark

命令行中使用

# 嵌入水印:
blind_watermark --embed --pwd 1234 examples/pic/ori_img.jpeg "watermark text" examples/output/embedded.png
# 提取水印:
blind_watermark --extract --pwd 1234 --wm_shape 111 examples/output/embedded.png

python中使用

嵌入水印

from blind_watermark import WaterMarkbwm1 = WaterMark(password_img=1, password_wm=1)
bwm1.read_img('pic/ori_img.jpg')
wm = '@guofei9987 开源万岁!'
bwm1.read_wm(wm, mode='str')
bwm1.embed('output/embedded.png')
len_wm = len(bwm1.wm_bit)
print('Put down the length of wm_bit {len_wm}'.format(len_wm=len_wm))

提取水印

bwm1 = WaterMark(password_img=1, password_wm=1)
wm_extract = bwm1.extract('output/embedded.png', wm_shape=len_wm, mode='str')
print(wm_extract)

http://www.dtcms.com/a/511749.html

相关文章:

  • 三、网站开发使用软件环境中小企业建站的方法
  • 开源 Linux 服务器与中间件(八)数据库--MariaDB
  • Mac OS 安装 VirtualBox
  • wordpress卡密系统源码主题站长工具查询seo
  • 宁波快速建站公司附近的装修公司地点
  • 物联网运维中的自适应网络拓扑重构技术
  • jenkins介绍与部署
  • Attention:MHA->MQA->GQA->MLA
  • 拥塞控制原理
  • Flink Kafka 生产者原理与实现
  • 路由器和机顶盒的射频核心:深入解析PA、LNA、PHY与滤波器
  • Java----set
  • python编程网站推荐郑州云帆网站设计
  • 如何做论文网站给我一个用c 做的网站
  • 青岛网站排名公司自己的网站如何让百度收录
  • MQTT主题架构的艺术:从字符串拼接走向设计模式
  • i.MAX6ULL Linux LED 字符设备驱动代码分析
  • Linux中基数树的初始化
  • 4.3 二维数组
  • 【C语言实战(40)】C语言查找算法:从基础到实战的效率进阶
  • 洛谷 P2949 [USACO09OPEN] Work Scheduling G
  • 建站公司杭州南宁制作网站服务商
  • Deepseek-ocr论文精读
  • 【完整源码+数据集+部署教程】【文件&发票】发票信息提取系统源码&数据集全套:改进yolo11-ContextGuided
  • SpringBoot+Shiro+mybatis教务管理系统源码
  • 佛山个人制作网站公司手机百度下载免费安装
  • Git 项目开发核心指南:聚焦常用语法与完整流程
  • 【图像处理基石】遥感多光谱图像处理入门:从概念到实战(附Python代码)
  • Spring Boot项目中使用线程池并发插入6万条数据的线程池参数设置指南
  • 网站建设网站设计哪家专业东莞展馆设计公司