你给文字描述,AI艺术作画,精美无比!附源码,快来试试!
作者:韩信子@ShowMeAI
深度学习实战系列:https://www.showmeai.tech/tutorials/42
TensorFlow 实战系列:https://www.showmeai.tech/tutorials/43
本文地址:https://www.showmeai.tech/article-detail/313
声明:版权所有,转载请联系平台与作者并注明出处
收藏ShowMeAI查看更多精彩内容
AI 在艺术界的覆盖越来越广,从最早的 GPT3 等模型文本生成和音乐创作,到最近非常让人惊艳的艺术画绘制,最近最流行的2个付费工具是 OpenAI 的 Dall-E2和 MidJourney。
通过使用 AI 高级算法(各类 Diffusion 模型),它们可以根据人类的提示文本信息创作极其精美的艺术画品,从肖像到风景画,全部都能完成,创作的精美逼真程度有时甚至与人类艺术家不相上下,如下图就来自AI作画生成。
上面提到的商业工具 OpenAI 的 Dall-E2和 MidJourney都非常强大并且可以产生一流的图像(大家可以在它们的官方测试),但它们都有一些访问和使用限制。 Dall-E2 不可公开访问,MidJourney 的免费套餐仅提供 25 张图片。
但我们找到了开源的替代 AI 产品 Disco Diffusion,它是一款功能强大的文本到艺术画生成器,可与 MidJourney 相媲美,而且完全免费。
下面 ShowMeAI 带大家来体验Disco Diffusion,基于它的代码生成图像,你也快来试试!
Disco Diffusion介绍
Disco Diffusion 是发布于 Google Colab 平台的一款利用人工智能深度学习进行数字艺术创作的工具,它是基于 MIT 许可协议的开源工具,可以在 Google Drive 直接运行,也可以部署到本地运行,目前最新的版本是 Disco Diffusion v5.6。
用白话讲 Disco Diffusion 的基本工作就是把你给出的 Prompts(提示/描述)由文字信息变成图像信息,把你用文字描述的画面『画』出来。实际操作也基本如此,很简单,下面是几张基于文本提示用 Disco Diffusion 生成的图片。
文本提示: A digital painting of cyberpunk city by beeple, mist, trending on artstation, V-Ray.
文本提示: Spaceship about to landing on a cornfield, steampunk, clouds in the sky, by Greg Rutkowski, concept art.
文本提示: A beautiful painting of captivating castles on hills and mountains, along plains and rivers, by Ismail Inceoglu.
AI作画实践
我们下面准备在 Google Colab 中完成整个绘画过程,简单地说,大家只需要准备好浏览器(保证可以访问 Google),有 Google 账号的话会更方便。
步骤1. 打开Disco Diffusion Google Colab
准备好浏览器,并保证 Google 访问正常,然后点击 这里,大家会直接在浏览器进入 Google colab 的项目地址,如下图所示。
Colab项目中大家可以看到编号从 1-5 的对应步骤,我们只需按下运行代码的小播放按钮即可执行对应的代码。不过因为是定制作画,大家需要做一些设置和填入部分提示信息,如下步骤。
步骤2.添加文字提示prompt
展开设置 (3) 阶段的内容,可以看到更详细的子设置,我们。在『Prompts』(提示1)部分,修改文本提示,之后 Diffusion 模型就可以根据你的提示作画啦!
步骤3. 生成图像
接下来就可以运行代码作画啦!我们按从上到下的顺序运行各个阶段。 运行的方法非常简单,只需按下左侧代码块对应的小播放按钮,如下图所示。
接下来大家就可以等待AI作画啦!在 Colab 工具的免费版本中,完全渲染生成 1028x768 的图像大约需要 10 分钟。 大家在等待期间可以做其他事情。
生成的图像将自动保存在谷歌网盘/google drive中。
root\AI\Disco_Diffusion\images_out\TimeToDisco*
AI绘画产品结果对比
我们来对比一下,同样的提示文本语句下,Dall-E2、MidJourney 和我们使用 DIsco Diffusion 生成的图片。
我用类似的提示输入了所有三个工具。
A beautiful painting of a singular lighthouse, shining its light across a tumultuous sea of blood by greg rutkowski and thomas kinkade, Trending on artstation.", "yellow color scheme"
翻译成中文就是:一幅美丽的奇异灯塔画作,将光芒照耀在汹涌的红色海洋中。 greg rutkowski 和 thomas kinkade 的黄色配色方案,artstation网站上的流行趋势。
Disco Diffusion
Disco Diffusion AI 生成的图片如下:
MidJourney
MidJourney AI 生成的图片如下:
Dall-E2
OpenAI Dall-E2 生成的图像如下:
大家觉得这段文字描述,生成的图片中,3个平台哪个结果最好看?你也动手修改描述,一键生成自己的艺术画吧!!
参考资料
- OpenAI 的 Dall-E2:https://openai.com/dall-e-2/
- MidJourney:https://www.midjourney.com/app
- OpenAI 的 Dall-E2:https://openai.com/dall-e-2
- MidJourney:https://www.midjourney.com/app/
- Google Colab:https://colab.research.google.com/
- Disco Diffusion Google Colab
你给文字描述,AI艺术作画,精美无比!附源码,快来试试!的更多相关文章
- 开源方案搭建可离线的精美矢量切片地图服务-8.mapbox 之sprite大图图标文件生成(附源码)
项目成果展示(所有项目文件都在阿里云的共享云虚拟主机上,访问地图可以会有点慢,请多多包涵). 01:中国地图:http://test.sharegis.cn/mapbox/html/3china.ht ...
- 第十六节、特征描述符BRIEF(附源码)
我们已经知道SIFT算法采用128维的特征描述子,由于描述子用的是浮点数,所以它将会占用512字节的空间.类似的SUFR算法,一般采用64维的描述子,它将占用256字节的空间.如果一幅图像中有1000 ...
- 【Android初级】使用TypeFace设置TextView的文字字体(附源码)
在Android里面设置一个TextView的文字颜色和文字大小,都很简单,也是一个常用的基本功能.但很少有设置文字字体的,今天要分享的是通过TypeFace去设置TextView的文字字体,布局里面 ...
- Java异常封装(自己定义错误码和描述,附源码)
真正工作了才发现,Java里面的异常在真正工作中使用还是十分普遍的.什么时候该抛出什么异常,这个是必须知道的. 当然真正工作里面主动抛出的异常都是经过分装过的,自己可以定义错误码和异常描述. 下面小宝 ...
- Android ORC文字识别之识别身份证号等(附源码)
项目地址https://github.com/979451341/OrcTest 我们说说实现这个项目已实现的功能,能够截图手机界面的某一块,将这个某一块图片的Bitmap传给tess-two的代码来 ...
- 第十五节、韦伯局部描述符(WLD,附源码)
纹理作为一种重要的视觉线索,是图像中普遍存在而又难以描述的特征,图像的纹理特征一般是指图像上地物重复排列造成的灰度值有规则的分布.纹理特征的关键在于纹理特征的提取方法.目前,用于纹理特征提取的方法有很 ...
- 使用Pytorch进行图像分类,AI challenger 农作物病害分类竞赛源码解读
1.首先对给的数据进行划分,类型为每个类单独放在一个文件夹中 import json import shutil import os from glob import glob from tqdm i ...
- Python实战:截图识别文字,过万使用量版本!(附源码!!)
前人栽树后人乘凉,以不造轮子为由 使用百度的图片识字功能,实现了一个上万次使用量的脚本. 系统:win10 Python版本:python3.8.6 pycharm版本:pycharm 2021.1. ...
- java并发编程的艺术(三)---lock源码
本文来源于翁舒航的博客,点击即可跳转原文观看!!!(被转载或者拷贝走的内容可能缺失图片.视频等原文的内容) 若网站将链接屏蔽,可直接拷贝原文链接到地址栏跳转观看,原文链接:https://www.cn ...
随机推荐
- Learn Dijkstra For The Last Time
博客链接:https://www.codein.icu/learn-dijkstra/ Introduction Dijkstra 算法是用于求解非负权图单源最短路的经典算法. 市面上的大部分教程都仅 ...
- 【mido】python的midi处理库
安装mido库:pip install mido pipy地址:https://pypi.org/project/mido/ mido官方文档:https://mido.readthedocs.io/ ...
- 【JDBC】学习路径6-SQL插入、修改、删除数据
第一章:插入使用.executeUpdate(); 返回的是受到影响的数据条数. public static boolean insert(String username,String passwor ...
- windows优化原神
原神3.0新地图很卡顿? 锐距显卡带不动? 看一下我的配置 英特尔i5-1135G7 内存16GB可以拓展32GB 固态512GB 原神优化前帧率50左右 优化后59-60最差55 展示图原神设置图 ...
- Javascript实现base64的加密解密方法
1 function Base64() { 2 // private property 3 _keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijkl ...
- ProxySQL Cluster 高可用集群 + MySQL MGR环境部署 (多写模式) 部署记录
文章转载自:https://blog.51cto.com/u_6215974/4937192 ProxySQL 在早期版本若需要做高可用,需要搭建两个实例,进行冗余.但两个ProxySQL实例之间的数 ...
- Kubernetes中使用ClusterDNS进行服务发现
在k8s集群中,服务是运行在Pod中的,Pod的发现和副本间负载均衡是我们面临的问题.我们使用Service解决了负载均衡的问题,但是集群环境中,service经常伴随着ip的变动而变动,得益于kub ...
- 关于使用kuboard安装其自带的监控应用授权普通用户使用
官方文档地址:https://www.kuboard.cn/guide/example/monitor-v2.html#授权用户访问套件
- Logstash:使用Logstash将电子邮件导入到Elasticsearch
- Beats:Beats 入门教程 (一)