尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
照片里能藏多少秘密?blind_watermark 图片盲水印上手指南
照片里能藏多少秘密blind_watermark 图片盲水印上手指南【免费下载链接】blind_watermarkBlindInvisible Watermark 图片盲水印提取水印无须原图项目地址: https://gitcode.com/GitHub_Trending/bl/blind_watermark给图片加水印多数人只会贴一行显眼的白字一截图就没了。blind_watermark 走的另一条路是图片盲水印把信息写进像素的频域里肉眼看不出差别即使被截图、旋转、缩放也读得出来。这篇文章讲清它的原理、三种内容和抗攻击表现顺带提醒几个新手容易忽略的细节。 先搞懂两件事盲在何处藏在哪里盲水印和普通水印的区别普通水印是画在图上的字被裁掉就找不回来。图片盲水印的盲指提取时不需要原图只要手里有打过水印的图、密码和水印长度就能把内容读回来。项目里有两个密码参数password_img 影响水印在图片里的落点分布password_wm 决定比特内容的排列顺序。两个都不知道的人即使看清了算法拿到的也只是一串乱序比特拼不回原来的文字。信息藏在哪个频段算法链条是小波分解DWT→ 分块离散余弦变换DCT→ 奇异值分解SVD。翻译成白话先把图片拆成人眼不太敏感的高频细节层再把细节切成 4×4 的小块对每块做变换最后在变换系数上做极其微小的调整来编码 0 和 1。正因为盲水印的改动小到肉眼察觉不到图片看起来和原图一模一样。以项目示例那张 738×1108 的照片为例大约能嵌入一万二千多个比特折合约五百个汉字容量不小。⌨️ 三种水印内容两条命令跑通命令行两分钟体验先 pip install blind-watermark 装好终端里两条命令就能完成藏和取blind_watermark --embed --pwd 1234 image.jpg watermark text embed.png blind_watermark --extract --pwd 1234 --wm_shape 111 embed.png第一行把文字 watermark text 藏进 image.jpg 并另存为 embed.png第二行用同一个密码把这段盲水印读出来--wm_shape 填嵌入时打印的位长度本例是 111。这个长度值嵌入时会自动打印记下来即可。在 Python 里嵌入文字、图片或比特嵌入流程四步建对象、读图、读水印、写入。from blind_watermark import WaterMark bwm WaterMark(password_img1, password_wm1) bwm.read_img(ori.jpeg) bwm.read_wm(hello world, modestr) bwm.embed(output.png)read_wm 的 mode 有三个选项str 藏文字img 藏一张图作为盲水印先转成黑白点阵每个点对应 1 比特bit 直接藏 0/1 数组。提取时另建一个 WaterMark 对象调用 extract 并传入 wm_shape文字传长度图片传 (高, 宽)和输出文件名比特模式的返回值是一组 0~1 的浮点数自己按 0.5 卡阈值就能还原。️ 七种攻击之后水印还在这是 blind_watermark 最有说服力的部分。项目组对打过盲水印的图依次做了旋转、截图、遮挡、裁剪、缩放、椒盐噪声、亮度调整七种攻击每一张被破坏过的图里都提取出了完整的水印。攻击方式图片经历了什么提取结果旋转 45 度整图转 45°再转回来完整文字随机截图裁掉一角再缩小完整文字多区域遮挡图上盖住多个色块完整文字纵向裁剪裁掉一条再填回原尺寸完整文字缩放压到 400×300再拉回原尺寸完整文字椒盐噪声5% 的像素加黑白噪点完整文字亮度下调 10%整体压暗一档完整文字截图裁剪之后盲水印如何复原提取截图是社交传播里最常见的攻击别人对你打过水印的图截个局部分辨率也变了。项目里的 recover 模块专门处理这种场景estimate_crop_parameters 先猜测裁剪位置和缩放比例recover_crop 把图复原回原始尺寸之后照常提取盲水印。如果攻击参数已知比如自己测试时截的图直接传参数就行省去猜测这一步。上手建议与常见坑三个容易踩的坑经验提示嵌入后立刻记下 wm_bit 的长度命令行会打印Python 里用 len(bwm.wm_bit)。提取盲水印时的 wm_shape 参数就靠它忘了就解不出来。经验提示两个密码在嵌入和提取时必须完全一致。改错一个数字提取结果是一堆乱码而且程序不会报错提醒你。第三个坑是容量水印比特数不能超过图片可容纳的块数超了会直接抛出溢出异常。前面提到的五百个汉字就是那张示例图的天花板再长就得换更大的图。四条上手建议先用命令行跑通一遍嵌入和提取再切到 Python 写脚本把密码和 wm_shape 一起记在配置或笔记里别只存在脑子里图片盲水印先拿小图试如 64×64 的点阵 logo容量不够会立刻报溢出批量处理时显式设置 processes 参数控制并发不传则默认用满所有核心带透明通道的 PNG 也能直接读入【免费下载链接】blind_watermarkBlindInvisible Watermark 图片盲水印提取水印无须原图项目地址: https://gitcode.com/GitHub_Trending/bl/blind_watermark创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

语音APP内容运营实战:从无效增长到有效增长的完整打法

语音APP内容运营实战:从无效增长到有效增长的完整打法

想先聊一个真实场景。上个月我参加一个语音社交产品的月度复盘会,增长负责人很兴奋,大屏上投出"新增用户数环比提升63%"的曲线,会议室里一片掌声。等掌声停下来,我顺手把后台的次日留存和平均收听时长投到旁边屏幕上&am…

📅 2026/9/12 15:48:23
PK/PD 监管指南台账全解读:ICH、FDA、EMA 指南要求与各分析类型的申报报告标准(基于 pkpd-modeling)

PK/PD 监管指南台账全解读:ICH、FDA、EMA 指南要求与各分析类型的申报报告标准(基于 pkpd-modeling)

PK/PD 监管指南台账全解读:ICH、FDA、EMA 指南要求与各分析类型的申报报告标准(基于 pkpd-modeling) 【免费下载链接】scientific-agent-skills Turn any AI agent into an AI Scientist. The #1 Agent Skills library for science, used by …

📅 2026/9/12 15:48:23
uv 如何把 uv.lock 导出为 CycloneDX SBOM?uv export --format cyclonedx1.5

uv 如何把 uv.lock 导出为 CycloneDX SBOM?uv export --format cyclonedx1.5

uv 如何把 uv.lock 导出为 CycloneDX SBOM?uv export --format cyclonedx1.5 【免费下载链接】uv An extremely fast Python package and project manager, written in Rust. 项目地址: https://gitcode.com/GitHub_Trending/uv/uv 当你需要把 Python 项目的…

📅 2026/9/12 15:48:23
MORE NEWS

更多资讯

📰

歌尔制造的 SZGG8BL6 备案曝光:类似 Fitbit Charge,或运行 Wear OS

歌尔制造设备备案曝光,功能似 Fitbit Charge9to5Google 发现了由歌尔制造的 SZGG8BL6 的美国联邦通信委员会(FCC)备案信息。这款设备与谷歌的其他设备有相似之处,和 Fitbit Charge 一样,具备蓝牙和全球导航卫星系统&am…

📰

RD-Agent 如何把 AI 研发跑成自动化闭环:研究、开发、实验、反馈四模块的协作机制

RD-Agent 如何把 AI 研发跑成自动化闭环:研究、开发、实验、反馈四模块的协作机制 【免费下载链接】RD-Agent Research and development (R&D) is crucial for the enhancement of industrial productivity, especially in the AI era, where the core aspects …

📰

Univer 数据验证与条件格式实战:一张月度考核表,管好录入规范与自动高亮

Univer 数据验证与条件格式实战:一张月度考核表,管好录入规范与自动高亮 【免费下载链接】univer Univer is a full-stack framework for creating and editing spreadsheets / word processor / presentation on both web and server. 项目地址: http…

📰

Azure Developer CLI 官方参考知识体系:以 Microsoft Learn 为事实源的 azd 项目开发与排障指南

Azure Developer CLI 官方参考知识体系:以 Microsoft Learn 为事实源的 azd 项目开发与排障指南 【免费下载链接】awesome-copilot Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot. 项目地…

📰

ESLint no-trailing-spaces 规则完全指南:禁止行尾尾随空白并自动修复

ESLint no-trailing-spaces 规则完全指南:禁止行尾尾随空白并自动修复 【免费下载链接】eslint Find and fix problems in your JavaScript code. 项目地址: https://gitcode.com/GitHub_Trending/es/eslint 在代码编辑过程中,行尾经常会残留多余…

📰

AI写作工具如何提升学术专著效率与质量

1. AI专著写作工具的市场需求与痛点分析 学术专著写作长期以来都是让研究者们又爱又恨的工作。根据Elsevier发布的《全球研究者写作习惯报告》,平均每位学者每年要花费超过400小时在学术写作上,其中约35%的时间消耗在格式调整、文献管理和重复性内容撰写…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬