前几天看到几个逼格比较高的二维码,然后自己动手做了一下,给大家看看效果:

1、文生图(狮子):

2、文生图(城市):

下边将开始介绍怎么做的,有兴趣的可以继续读一读。

这里使用的AI绘图工具是Stable Diffusion,没有的同学需要去部署一个,计算平台国内建议使用AutoDL,国外可以白嫖Kaggle的算力,这两个我都用过。具体怎么部署网上已经有很多教程,这里就不多说了,如果大家希望我再写一篇部署说明,请在评论区留言,人多了可以考虑。

生成艺术二维码有两种方法:

一是直接使用提示词,也就是文生图,这样出来的二维码比较漂亮,但是细节很难控制。

二是使用图生图,复刻现有图片的构图或者姿势,这样容易控制细节,但是图像不那么漂亮。

由于内容比较多,这篇文章先讲文生图,图生图后边再开一篇。

文生图

这里文生图用到的模型是:revAnimated,大家可以去huggingface下载,参考地址:https://huggingface.co/hanafuusen2001/ReVAnimated/tree/main

1、我们以生成狮子二维码为例,这里给的提示词都是关于生成狮子的,二维码部分在后边。

提示词:Full Photo shot of a lion, Yoji Shinkawa style, Jean-baptiste Monge, general plan, central composition, entirely on a sheet, Ink painting, expressive painting, watercolor, bold brushstrokes, Concept art, orange, (purple:1.2), gray and white, stylize, intricate detail, 8k, transparent background, (white background:1.4), 3D vector
反向提示词: Watermark, Text, censored, deformed, bad anatomy, disfigured

2、首先看下几个主要参数:

  • 采样器: DPM++ 2M Karras
  • 采样步数:30
  • 分辨率 768 x 768
  • 提示词引导系数: 11

3、然后我们添加两个ControlNet,用来控制二维码部分的处理。这两个ControlNet都需要将待合成的二维码上传上去。

(1)先看第一个ControlNet的配置,主要是将二维码的黑白对比度融入到图像中。

注意这里设置的几个参数:

  • Control Type:All
  • 预处理器:inpaint_global_harmonious
  • ControlNet模型:control_v1p_sd15_brightness
  • 控制权重:0.35,如果画面太灰,试试调高这个权重。

(2)再看第二个ControlNet的配置,主要是还原二维码细节,让二维码更容易被扫出。

注意这里设置的几个参数:

  • Control Type:All
  • 预处理器:inpaint_global_harmonious
  • ControlNet模型:control_v11f1e_sd15_tile
  • 控制权重:0.5,如果不容易扫出,可以增大这个参数。
  • Starting Control Step:什么时候开始介入,越早介入,二维码越容易识别。
  • Ending Control Step:什么时候结束介入,越晚退出,二维码越容易识别。

4、最后点击生成就可以了。

如果生成的图不美观或者扫不出,可以尝试调整ControlNet的各个参数。

ControlNet

1、ControlNet是什么?

如果我们仅仅使用提示词,不能精确的控制图像的细节,比如让人把手举到什么高度;或者我们只想复制图片中的人脸,其它部分可以自由发挥;再或者这里我们需要一个二维码的底图,这个绘制出的二维码必需能扫描出来,不能随便生成一张。

总结起来就是ControlNet能让设计者复制参考图片的构图或者人体的姿势。

2、相关参数

预处理器:提取参考图的特征,不同的预处理器会提取不同的特征。

模型:实现不同的图像生成控制,比如人体姿势、线条控制、图像深度、配色方案等。

权重:值越大,则生成图越依从参考图,反之则越依从提示词。

起始/终止控制步数:ControlNet介入图像绘制的起始和终止采样步数,取值范围0-1,是个百分比。

对于二维码的例子可以调整权重和开始步骤控制图片展示效果和二维码识别率。

其它

另外测试发现色彩明亮、2.5D或者3D模型的效果更好,比如我尝试了“国风3”这个模型,感觉出图效果也还可以,有兴趣的可以试试。


以上就是本文的主要内容了,后续我会继续分享AI应用方面的东西,大家有兴趣的及时加我关注(微信公众号:萤火遛AI),以免错过精彩内容。

探秘高逼格艺术二维码的制作过程-AI绘画文生图的更多相关文章

  1. 分享:Java 开发精美艺术二维码

    博客地址:https://ainyi.com/58 Java 开发精美艺术二维码 看到网络上各种各样的二维码层出不穷,好像很炫酷的样子,一时兴起,我也要制作这种炫酷二维码效果 例如: 根据以往例子 根 ...

  2. 通通WPF随笔(3)——艺术二维码素材生成器

    原文:通通WPF随笔(3)--艺术二维码素材生成器 最近公司让我开发一个条形码的生成控件,花了半天时间搞定觉得不过瘾,什么年代了该用二维码了吧.于是wiki了一下二维码的资料. 比较常见的就是QR码( ...

  3. Java生成艺术二维码也可以很简单

    原文点击: Quick-Media Java生成艺术二维码也可以很简单 现在二维码可以说非常常见了,当然我们见得多的一般是白底黑块,有的再中间加一个 logo,或者将二维码嵌在一张特定的背景中(比如微 ...

  4. Java二维码的制作

    二维码现在已经到处都是了,下面是二维码的介绍 :二维码 ,又称 二维条码 , 二维条形码最早发明于日本,它是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的,在 ...

  5. html5调用手机本地摄像头和相册识别二维码详细实现过程

    项目中有用到h5识别我们的单据,单据上面有二维码. 实现的场景就是业务人员扫码 类似以下场景  业务员拿到单据以后,直接可以扫码进入相关单据业也可以 输入二维码下方的号码进行识别 下面是h5的页面构造 ...

  6. 从零玩转JavaWeb系列7web服务器-----用户登录界面二维码的制作

    1.用eclipse工具新建一个Dynamic Web Project工程如下: 2.在Java Resources的src目录下新建一个包,包名称为com.it666.code 3.在com.it6 ...

  7. iOS系统原生 二维码的生成、扫描和读取(高清、彩色)

    由于近期工作中遇到了个需求:需要将一些固定的字段 在多个移动端进行相互传输,所以就想到了 二维码 这个神奇的东东! 现在的大街上.连个摊煎饼的大妈 都有自己的二维码来让大家进行扫码支付.可见现在的二维 ...

  8. 使用 Python 生成二维码

    在“一带一路”国际合作高峰论坛举行期间, 20 国青年投票选出中国的“新四大发明”:高铁.扫码支付.共享单车和网购.其中扫码支付指手机通过扫描二维码跳转到支付页面,再进行付款.这种新的支付方式,造就二 ...

  9. [开源]C#二维码生成解析工具,可添加自定义Logo

    二维码又称 QR Code,QR 全称 Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的 Bar Code 条形码能存更多的信息,也能表示更多的数据类型:比如:字 ...

  10. iOS开发-二维码

    二维码 从ios7开始集成了二维码的生成和读取功能 此前被广泛使用的zbarsdk目前不支持64位处理器 生成二维码的步骤: 倒入CoreImage框架 通过滤镜CIFilter生成二维码 二维码的内 ...

随机推荐

  1. 五月十四号java基础知识点

    class Person{ private String name; private int age; public Person(String name,int age){ this.name = ...

  2. day40:MySQL:python操作mysql:pymysql模块&SQL注入攻击

    目录 part1:用python连接mysql 1.用python连接mysql的基本语法 2.用python 创建&删除表 3.用python操作事务处理 part2:sql注入攻击 1.s ...

  3. 一文详解RocketMQ-Spring的源码解析与实战

    摘要:这篇文章主要介绍 Spring Boot 项目使用 rocketmq-spring SDK 实现消息收发的操作流程,同时笔者会从开发者的角度解读 SDK 的设计逻辑. 本文分享自华为云社区< ...

  4. error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file o

    error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file o ...

  5. NEQR: novel enhanced quantum representation

    一.概述   NEQR利用量子叠加和量子纠缠的特性,将数字图像转换为量子态表示,并通过量子门操作进行处理和操作.相较于传统的经典图像表示方法,NEQR具有更高的图像压缩率和更强的安全性,能够在保持图像 ...

  6. 深度学习-08(PaddlePaddle文本分类)

    深度学习-08(PaddlePaddle文本分类) 文章目录 深度学习-08(PaddlePaddle文本分类) NLP概述 NLP基本概念 什么是NLP NLP的主要任务 传统NLP方法 传统NLP ...

  7. 微信小程序搜索不到腾讯服务路线规划插件的解决方法

    具体操作如下: 提示:主要内容都是按开发文档来写的 开发文档: 链接: https://lbs.qq.com/miniProgram/plugin/pluginGuide/routePlan 添加插件 ...

  8. 【必知必会的MySQL知识】③DML语言

    目录 前言 准备 插入数据 语法格式 插入完整行数据 插入多行数据 将检索出来的数据插入表 更新数据 准备两张表 语法 实践操作 删除数据 语法 实践操作 小结 前言 前面的两篇文章中,我们已经对My ...

  9. 【11个适合毕设的Python可视化大屏】用pyecharts开发拖拽式可视化数据大屏

    你好,我是@马哥python说,一枚10年程序猿. 一.效果演示 以下是我近期用Python开发的原创可视化数据分析大屏,非常适合毕设用,下面逐一展示:(以下是截图,实际上有动态交互效果哦) 以下大屏 ...

  10. 修改mysql的密码时遇到问题ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corre

    先输入:flush privileges; 再输入:ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysql'; 再输入:flush privileges刷 ...