神经网络图像隐写术:用AI隐藏信息的艺术

🏡作者主页:点击!

🤖编程探索专栏:点击!

⏰️创作时间:2024年12月24日1点02分


神秘男子影,

秘而不宣藏。

泣意深不见,

男子自持重,

子夜独自沉。


论文源地址(有视频):

Aspiringcode - 编程抱负 即刻实现传知代码只专注开箱即用的代码https://www.aspiringcode.com/content?id=17210588505799&uid=bb6aa0ae6b3749868d1b2d4e61d1a208

论文概述

图像隐写术是一种在图片中隐藏消息的过程。虽然密码学等其他技术旨在防止对手阅读秘密消息,但隐写术旨在隐藏消息本身的存在。在本文中,我们提出了一种新的技术,用于使用生成对抗网络在图像中隐藏任意二进制数据,这使我们能够优化我们的模型生成的图像的感知质量。我们表明,我们的方法实现了每像素 4.4 位的最新有效载荷,逃避隐写分析工具的检测,并且对来自多个数据集的图像有效。为了实现公平比较,我们发布了一个在线可用的开源库

论文方法概述

封面图像 C 是从所有自然图像 PC 的概率分布中采样的。然后,隐写图像 Si 由学习的编码器 E(C, M ) 生成。然后通过学习的解码器 D(S) 提取秘密消息M。在训练当中,对信息的准确性和图片的质量(psnr)进行联合优化。

论文结构

整体结构主要分为三个部分,编码器,解码器,判别器

编码器接受一张CH W的图片,和一个DH W的一个二进制信息,输入到网络中,网络输出一个3HW的RGB图像作为信息承载的图片,将这个图片作为待传输的图片

解码器:由卷积网络构成,输入为编码器输出的图片,输出为浮点数构成的多维矩阵,这个矩阵和0比较进行二值化后形成二进制信息组成的矩阵,和原始信息M比较,判断信息恢复的准确度。

判别器:

为了对编码器的性能提供反馈并生成更真实的图像,我们引入了一个对抗性判别器。评论家网络由三个卷积块和一个输出通道的卷积层组成。为了生成标量分数,我们将自适应平均池化应用于卷积层的输出。

训练细节:文章采用MSE loss,BCE loss,进行训练,采用类似gan的对抗训练的方法

论文结果

演示效果

首先看一下隐写前后的效果:

input

output

同时可以解出隐藏的信息。

训练细节

核心逻辑

在这里可以粘贴您的核心代码逻辑:

复制代码
# start
console.log('wonderful')

1

2

使用方式

进入research文件夹,在jupyter 中运行相关的ipynb文件即可运行代码

部署方式

在这里描述您的服务部署方式

GPU python 3.6 pytorch1.7 注意不能版本太高!!!

相关推荐
非优秀程序员5 小时前
第12章 烧钱无底洞!!!不烧就死,烧了也不知道啥时候死|《互联网产品恩仇录》
人工智能
Zelman9456 小时前
第06章-交互与观察动作空间
人工智能
冬奇Lab6 小时前
开源项目第258期:Harness² —— Google Research 的「递归式 Agent Harness 优化」,模型权重不动,只改 Agent 的外壳
人工智能·开源
字节跳动视频云技术团队8 小时前
每两家头部手机厂商就有一家选它:火山引擎如何成为 AI 手机助手的“隐形底座”?
人工智能
泯泷8 小时前
像项目经理一样指挥 AI 团队:管理者模式
人工智能·llm·agent
京东云开发者8 小时前
双11囤Token火了:京东搜索量暴涨7倍,AI生产力成新刚需
人工智能
ahccqw9 小时前
OpenCV 车辆数量统计
人工智能·opencv·计算机视觉
人工智能AI技术9 小时前
LangGraph 本地 build 频频翻车,最终在服务器跑通流式对话
人工智能
Flynn Liang9 小时前
同一需求三套写法:用 Spring AI、LangChain4j、AgentScope Java 各实现一个带工具调用的 RAG 助手(实战对比)
java·人工智能·大模型·架构设计·spring ai·langchain4j·agentscope