更新:好消息!我们的论文被ICML 2023接受为口头报告。论文目前可在arxiv上找到。迷雾基于该论文并进行了一些扩展(详见我们的技术报告)。
迷雾是一款强大的图像预处理工具,旨在保护图像的风格和内容不被最先进的AI艺术应用程序模仿,包括Stable Diffusion、NovelAI和scenario.gg。通过向图像添加水印,迷雾使其对AI艺术应用程序使用的模型不可识别。AI艺术应用程序试图模仿这些经过迷雾处理的图像将会无效,模仿输出的图像将会杂乱无章,无法作为艺术作品使用。有关迷雾的更多详情,请参阅我们的文档和主页。
本仓库提供了迷雾的完整源代码。源代码可用于从头构建迷雾Web界面或在服务器上部署迷雾远程服务。
我们的代码基于stable-diffusion并与之共享大部分要求。此外,还需要advertorch0.2.4来执行攻击。要设置环境,请运行:
conda env create -f environments.yml
conda activate mist
pip install --force-reinstall pillow
请注意,PyPI似乎安装了不完整的Pillow套件,因此需要重新安装。我们强烈建议在首次激活虚拟环境mist后重新安装Pillow。
还需要官方Stable-diffusion-model v1.4检查点,可在huggingface获取。目前,可以通过运行以下命令下载模型:
wget -c https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/resolve/main/sd-v1-4.ckpt
mkdir -p models/ldm/stable-diffusion-v1
mv sd-v1-4.ckpt models/ldm/stable-diffusion-v1/model.ckpt
mist_v2.py
将存储在test/sample.png
中的图像作为输入,并在test/
中输出添加水印的图像。该脚本有6个参数。
参数 | 值范围(推荐) | 说明 |
---|---|---|
强度 | [1, 32] | 水印的强度。 |
步骤 | [1, 1000] | 优化水印的步骤数。 |
输出尺寸 | {256, 512, 768} | 输出图像的尺寸,仅支持正方形。 |
分块数量 | {1(1x1), 2 (2x2)} | 如果为真,将图像分成BxB的块并分别添加水印。 |
模式 | {0 (纹理), 1 (语义), 2 (融合)} | 水印模式。详见文档。 |
融合权重 | [1, 5] | 在融合模式下平衡纹理模式和语义模式的权重。 |
参数必须按表中提到的顺序提供。例如,使用以下命令对图像进行迷雾处理,强度为16,步骤为100,输出尺寸为512,分块数量为1,模式为2(融合模式),融合权重为1:
python mist_v2.py 16 100 512 1 2 1
用户还可以对目录中的图像进行迷雾处理。例如,使用以下命令生成test/vangogh
中的迷雾处理图像:
python mist_v2_vangogh.py 16 100 512 1 2 1
使用以下命令启动Web界面。有关更多信息,请参阅快速入门文档。
python mist-webui.py
我们提供了裁剪和调整迷雾处理图像大小的脚本,以评估迷雾在输入变换下的鲁棒性。请参阅脚本utils/postprocess.py
。
参考验证文档验证迷雾的效果。
本项目采用GPL-3.0许可证。
部分代码基于stable-diffusion。您可以在他们的仓库中找到stable-diffusion的许可证。
值得注意的是,迷雾需要stable diffusion模型的开放梯度流以进行端到端对抗性扰动。因此,以下由stable-diffusion提供的文件被修改以支持开放梯度流:
models/diffusion/ddpm.py ----> models/diffusion/ddpmAttack.py
configs/stable-diffusion/v1-inference.yaml ----> configs/stable-diffusion/v1-inference-attack.yaml
如果您发现我们的工作有价值并使用它,我们恳请您引用我们的论文。
@inproceedings{liang2023adversarial,
title={Adversarial example does good: Preventing painting imitation from diffusion models via adversarial examples},
author={Liang, Chumeng and Wu, Xiaoyu and Hua, Yang and Zhang, Jiaru and Xue, Yiming and Song, Tao and Xue, Zhengui and Ma, Ruhui and Guan, Haibing},
booktitle={International Conference on Machine Learning},
pages={20763--20786},
year={2023},
organization={PMLR}
}
@article{liang2023mist,
title={Mist: Towards Improved Adversarial Examples for Diffusion Models},
author={Liang, Chumeng and Wu, Xiaoyu},
journal={arXiv preprint arXiv:2305.12683},
year={2023}
}
最强AI数据分析助手
小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。
像人一样思考的AI智能体
imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。
AI数字人视频创作平台
Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企 业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。
一站式AI创作平台
提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作
AI办公助手,复杂任务高效处理
AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!
AI辅助编程,代码自动 修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。
AI小说写作助手,一站式润色、改写、扩写
蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。