1 什么是二维码?
二维码是一种用于存储和传输信息的方便而广泛使用的图像编码技术。它是由黑色方块和白色空白区域组成的二维图形,可以通过扫描设备(如智能手机)进行解码。二维码基于特定的编码标准和解码算法——其中包括错误检测和纠错编码,以确保在图像损坏或部分遮挡的情况下仍能正确解码。二维码的优点是可以存储大量信息,并且能够快速扫描和解码,因此在商业、营销、物流等领域得到广泛应用
在日常生活中,二维码已成为我们个人名片的一种展示方式,如何通过人工智能生成内容(AI Generated Content, AIGC)技术让我们的名片二维码更有创意?这就要涉及到扩散模型Stable Diffusion,下面是最终的生成效果

平台审核原因,二维码做了打码处理 2 什么是扩散模型?
所谓扩散算法diffusion是指先将一幅画面逐步加入噪点,一直到整个画面都变成白噪声。记录这个过程,然后逆转过来给AI学习。
AI看到的是什么?一个全是噪点的画面如何一点点变清晰直到变成一幅画,AI通过学习这个逐步去噪点的过程来学会作画。
diffusion和之前大火的GAN模型相比,有什么优势呢?用OpenAI的一篇论文内容来讲,用diffusion生成的图像质量明显优于GAN模型;而且与GAN不同,diffusion不用在鞍点问题上纠结——涉及稳定性问题,只需要去最小化一个标准的凸交叉熵损失即可,这样就大大简化了模型训练过程中,数据处理的难度。
总结来说,目前的训练技术让diffusion直接跨越了GAN领域调模型的阶段,而是直接可以用来做下游任务,是一个新的数学范式在图像领域应用的实例
diffusion在工程应用中的基本概念列举如下:
- Stable Diffusion: Stable Diffusion的功能是从文本描述中生成高质量、高分辨率的图像。它由Stability Al首次公开发布,其代码和模型权重均免费开源;
- Stable Diffusion webui: 是一个基于网页的用户界面,可以更方便地使用Stable Diffusion模型。它支持多种功能和设置,是Stable Difusion使用中最方便的工具。Automatic1111就是用户社区常用的网络Stable Diffusion webui
- txt2lmg: txt2lmg指输入文字,并看到生成的图像;
- Img2lmg: Img2lmg指输入图像和文字,生成一张新的图像。新的图像保留了原始图像的颜色和构图,但是根据文字的描述,改变了图像的风格和特征
- ControlNet: ControlNet是Stable Diffusion webui的一个扩展,可以根据输入的图像和文字,对图像进行各种控制,例如改变图像的姿态、表情、服装、背景或风格,生成不同角度和光照的图像等。ControlNet的tile是多种生成方法的基础支撑之一,同时ControlNet也是Stable Diffusion目前效果最好的扩展
接下来介绍如何部署Stable Diffusion模型生成个人专属创意名片
3 Stable Diffusion环境搭建
主要分为以下步骤:
- 创建Python3.10的虚拟环境
- conda create -n ai_draw python=3.10
复制代码 虚拟环境相关操作请参考:Anaconda安装与Python虚拟环境配置保姆级图文教程(附速查字典)
- 在虚拟环境中安装Pytorch
这步比较涉及显卡相关的配置,比较复杂,请参考:最新CUDA/cuDNN与Pytorch保姆级图文安装教程(速查字典版)
- 下载模型stable-diffusion-webui
- git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
复制代码 - 安装依赖库
首先进入虚拟环境
接着进入stable-diffusion-webui根目录运行
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
复制代码 采用清华源可以更快完成安装

- 下载模型
这里采用ghostmix模型,下载完成后移动到这个目录stable-diffusion-webui-master\models\Stable-diffusion

- 根目录运行启动文件
期间会下载一些新的依赖,有可能超时报错,多启动几次即可
4 开始制作创意名片
通过第三节的配置,成功后即可在终端看到

开放了一个本地端口,在浏览器中输入即可
接下来选择ghostmix模型,并通过国内镜像ControlNet安装扩展

接着点击img2img上传个人二维码,这里怕和谐就不放图片了

参数配置如下:
- Resize mode: Just resize
- Sampling method: DPM++2M Karras
- Sampling step: 50
- Width: 768
- Height: 768
- CFG Scale: 7
- Denoising strength: 0.75
接着配置ControlNet

参数配置如下:
- Enable: Yes
- Control Type: Tile
- Preprocessor: tile_resample
- Model: control_xxx_tile,这个模型在ControlNet-v1-1下载
- Control Weight: 0.87
- Starting Control Step: 0.23
- Ending Control Step: 0.9
最后输入正反向提示词
- 正向:a cubism painting of a town with a lot of houses in the snow with a sky background, Andreas Rocha, matte painting concept art, a detailed matte painting
- 反向:ugly, disfigured, low quality, blurry, nsfw
点击生成即可

结语
我们要对技术保持敬畏,法条约束的暂时缺位并非默许用技术来作恶。
更多AIGC文章请看:
- CV不存在了?体验用Segment Anything Meta分割清明上河图
- 如何免费使用ChatGPT进行学术润色?你需要这些指令…
- 如何用AI制作电影级镜头?Midjourney v5体验教程(附prompts大全)
- AI绘画突然爆火?快速体验二次元画师NovelAI(diffusion)
- AI绘画进军三次元,有人用它打造赛博女友?(diffusion)
- 我用python/C++调用ChatGPT自制了一个聊天机器人
- 本手、妙手、俗手?我用AI写2022高考全国作文题,会被看出来?
|