【技术分享】借助 ControlNet 生成艺术二维码 - 基于伊克罗德 imAgine AI 绘画方案

2023-07-27 11:30

在数字化时代,二维码已成为商业和社交交流的重要工具。然而,近年来,一种全新的二维码形式——艺术化的二维码,正逐渐崭露头角。艺术化的二维码不仅具备传统二维码的功能,还融入了独特的艺术元素。艺术化二维码能够将品牌标识、图像或其他识别元素与二维码相融合,从而提升品牌的识别度和形象,加强品牌与用户之间的连接。通过图像元素的丰富性,可以传递更多的信息,如产品介绍、活动详情、网址链接等。用户可以通过扫描二维码获取更丰富的内容和互动体验。


本文主要分享使用伊克罗德的 imAgine 产品生成艺术二维码的最佳实践。我们将以 QRCode 作为 ControlNet 的输入,使 QRCode 数据点融入到艺术图像中,同时仍然可以被 QRCode 阅读器扫描。借助这项技术,您可以将任何二维码转化为独特的艺术作品,以一种全新的方式来表达和传递信息。


借助 ControlNet 生成艺术二维码

| Step1:优化二维码


二维码是一种借助特定几何图形分配,在二维空间上分布的、黑白相间的、记录数据符号信息的图形。二维码有多种不同的编码方式,我们此处采用通用度最高也是最基础的编码方式:QR Code。

输入的二维码是借助 SD 生成艺术二维码过程中最重要的部分之一。我们主要关心输入的二维码的以下两个特点:

1. 二维码中包含的信息量

无论二维码采用何种编码方式,承载的字符信息越多,二维码在视觉上呈现的黑白结构就越复杂。复杂的结构很容易导致我们在生成艺术创意时,极大地收到二维码本身信息的掣肘。因此我们首先要想办法精简二维码中包含的字符长度。


对于最广泛的应用场景,二维码通常会包含一个网页链接;为了提升二维码生成的美观性,我们首先需要对网页链接进行缩短。市面上的链接缩短工具有很多,您可以自由选择。但需要注意,在中国大陆境内请选择有域名备案的缩链平台,否则会被微信、浏览器等阻挡。


例如我们有一个希望制作成二维码的网址:https://www.ecloudrover.com/aigc/,通过缩链处理后为:http://c.suo.nz/7KZrF。


通过下图可以比较直观地看出链接长短对于二维码视觉的影响,缩短的链接将更有利于我们接下来的创作。


2. 二维码的呈现形式

随着技术发展,二维码不仅只支持黑白方块状的图案样式,定位点和码元都支持多样化的呈现,例如以下几种样式

在实际操作中,我们可以尝试多种不同的码点形式,以使得生图效果符合我们的预期。

下图展示了不同的二维码形式对最终效果图的影响:

生成参数:

Prompt: mountain, green grassland, sky, cloud, bird, blue sky, no human, day, wide shot, flying, border, outdoors, white bird, scenery

Negative prompt: easynegative

Steps: 40, Sampler: DPM++ 2M Karras, CFG scale: 6, Seed: 3943213078, Size: 872x872, Model hash: 876b4c7ba5, Model: cetusMix_Whalefall2, Clip skip: 2, ControlNet: "preprocessor: none, model: control_v1p_sd15_qrcode_monster [a6e58995], weight: 1.35-1.5, starting/ending: (0.05, 1), resize mode: Resize and Fill, pixel perfect: True, control mode: Balanced, preprocessor params: (512, 64, 64)", Version: v1.3.


| Step2:制作基础二维码


了解了上述要点后,我们将要开始使用二维码制作工具,生成一个输入给 SD 的基础二维码。

互联网上有多种网页二维码生成工具,您可以自由选择。同时为了方便您使用,我们在 Blog 专用的 AMI 中已经预装了 QRCode 生成插件,只要您从正确的版本中启用 AMI,都可以直接在 Webui 上看到下述的 QRCode Toolkit:

Anthony's QR Toolkit:

整合在 Webui 的 QRCode 生成与优化工具

https://github.com/antfu/sd-webui-qrcode-toolkit

接下来我们演示如何使用 Anthony's QR Toolkit 来生成二维码,您可以参考下图完成二维码参数的配置。

完成二维码制作后,可以点击右侧的 “Download” 以下载到本地。或点击 “Send to ControlNet”,直接将二维码发送至 ControlNet 以进行下一步操作。


| Step3:确定艺术风格


使用 Stable Diffusion 进行艺术创作的核心是选择合适的模型+提示词。我们在创作艺术二维码之前,建议先不使用 ControlNet,先进行一次普通的图片生成,以测试生图效果。

此处我希望二维码中有山川、蓝天、白云等自然景观,因此先使用以下参数,测试提示词和模型的生成效果。

生成参数:

Prompt: mountain, green grassland, sky, cloud, bird, blue sky, no human, day, wide shot, flying, border, outdoors, white bird, scenery

Negative prompt: easynegative

Steps: 20, Sampler: Euler a, CFG scale: 7, Seed: 4078355702, Face restoration: CodeFormer, Size: 512x512, Model hash: 876b4c7ba5, Model: cetusMix_Whalefall2, Clip skip: 2, Version: v1.3.2


| Step4:在 ControlNet 中导入二维码


确认好图片风格后,我们将未经处理的二维码上传 ControlNet。请注意以下几个选项的配置:

“启用” 按钮:勾选以确保 ControlNet 在图片生成过程中生效;

模型选框:

请选择 “control_v1p_sd15_qrcode_monster” 来加强二维码的控制力度;

控制权重:对于 qrcode_monster 模型,我们建议设置在 1.1-1.6 之间;

引导介入/终止时机:介入时机建议在 0-0.1 之间,终止时机建议为 1。

在文生图配置中建议调整两组数值:

迭代步数:建议在 30-50 之间,默认值 20 不足以引导生成一个高质量的二维码图片

宽度/高度:建议直接从 ControlNet 发送二维码原图的宽高比至上方

参数全部配置完成后,点击生成即可,可以看到此处我们生成了一个效果不错的图片,使用手机扫码测试也完全通过。

如果生成的二维码不能够达到期望,可以选择微调以下几个参数,并增加生成的总批次数,不断尝试抽卡以逼近最终期望的效果:

提示词

采样方法

ControlNet 控制权重

ControlNet 引导介入/终止时机

必要时可以选择使用 “脚本” 中的 X/Y/Z Plot,来对比不同参数下生成二维码的效果。我们此处对比了 ControlNet 的控制权重和引导介入时机:

附录

| ControlNet QRCode 模型的选择


为方便您使用,我们在 Blog 专用的 AMI 中已经完成了 ControlNet QRCode 模型的植入,只要您从正确的版本中启用 AMI,都可以直接在 ControlNet 中选择模型。


截至目前,QRCode Monster 是我们测试后认为控制二维码成功率最高,也是二维码融入图像效果最好的模型,该模型可以在 HuggingFace 下载到:

https://huggingface.co/monster-labs/control_v1p_sd15_qrcode_monster


市面上也有另一个二维码模型:QR Pattern v2.0。该模型我们建议结合使用IoC Lab的 Brightness 模型作为辅助模型来提高局部对比度,也会产出不错的效果。但根据我们的测试,该模型自带的干扰内容较多,可能会导致图像风格发生很大的变化。这两个模型可以在下方链接下载:

https://civitai.com/models/90940/controlnet-qr-pattern-qr-codes

https://huggingface.co/ioclab/ioc-controlnet



参考链接二维码

左右滑动查看更多

伊克罗德 imAgine MarketPlace 订阅地址

伊克罗德 imAgine 解决方案介绍

伊克罗德 imAgine 解决方案官网


云与应用现代化
——
扫描关注微信公众号
获取更多云端资讯
联系我们
——

模板表单-2(1)

  • 姓名*

  • 电话*

  • 邮箱*

  • 公司*

  • 职称*

  • 地址*

  • 需求*