AI绘图之Midjourney初体验
Midjourney (MJ) 使用笔记
最近尝试了 Midjourney 绘图,简单记录下使用流程。
注册及登陆
首先是账号注册和登陆,基本上就是一路下一步,唯一需要注意的是加入MJ频道,具体流程为:
- 打开Discord,点击右上角
Login进入登陆界面 - 点击登陆页面下方的
Register,进入注册页面 - 输入用于注册的相关信息,点击下方continue完成注册。
- MJ会发送一份验证邮件,需要进入邮箱点击完成验证。
- 继续登陆MJ,进入MJ主界面
- 点击左侧的
探索可发现的服务器按钮,打开服务器界面,找到下方的Midjourney群组并点击。如果下方没有找到,也可以在搜索框搜索


- 点
Getting Started进入到服务器,进来之后点击最上面的加入Midjourney,加入MJ群组。如果此处一直加入不了群组,可能是代理的国家人数太多受限了。尝试切换代理的国家,再次尝试。但是如果IP换得频繁,也有可能触发风控。 - 加入群组后,点击左上角的
私信,打开Midjourney Bot,即可打开和MJ机器人的对话框。

- 如果需要订购会员,在对话框输入
/subscribe命令,点击弹出的Manage Account,进入订阅界面。此处选择月付的标准版会员,切换到Monthly Billing,点击Standard Plan下放到的Subscribe进行订阅,在弹出的窗口中输入自己的支付方式,完成支付即可。
下次使用时,从 https://discord.com/channels/@me 登陆即可。
运行指令
登陆以后,点击左上角私信,接着选中Midjourney Bot,即可打开和MJ机器人的对话框。

在对话框中输入各种指令(按下/即会有智能提示,可以通过Tab键进行选择),并回车执行指令。常用参数包括:
/imagine <prompt>为生成图像的指令,其中 prompt 是用于生成图像的文本命令

/info了解账户的订阅信息和剩余时间/relax切换到relax模式。该模式生成图像不消耗账户的GPU时间,但是需要排队,可能生成速度较慢/fast切换到fast模式,该模式可以在60s内生成图像,但是需要消耗账户的GPU时间。/blend将两个图片进行融合/settings调整MJ的设置,包括MJ的版本、风格、质量参数、风格参数和输出模式等。

/stealth切换到隐身模式,标准版不可用/describe图片生成文字。上传图片,MJ返回对该图片的文字描述/ask问问题,类似ChatGPT/show使用图片作业ID(job id可在MJ记录中查看或复制)重新生成 Discord 中的作业/help查看帮助信息/subscribe管理订阅/prefer option set创建指定变量/prefer option list列出之前设置的所有变量/prefer suffix指定要添加每个提示末尾的后缀,用来统一调整后续绘图的参数
绘图
掌握了MJ的基本用法后,就可以开始绘图了。比如使用命令 /imagine Diagrammatic isometric the water cycle or water cycle diagram shows four seasons of watering of Earth's surface, in the style of forest vistas, whistlerian, photoillustration, left forests but right fragment trees, 2d game art, rough-edged 2d animation Three dimensional 命令生成一个四季的水文循环的图。
命令运行时,可以在右侧看到进度,等待进度到100%,即会展示绘制的图片。

绘图最关键的就是设计prompt。比如上面的绘图命令中:
- Diagrammatic isometric提示用于科研绘图展示
- four seasons 指定4个子图分别生成4季的图像
- rough-edged 2d animation Three dimensional 用于展示2d风格和三维风格
可以尝试让ChatGPT生成绘图prompt,再自己微调。
也可以考虑上传先找到一张样图,使用/describe命令获取MJ对该图片的描述。将该描述略微修改后,作为/imagine命令生成图像的prompt。
比如先使用 /describe 命令对下图进行描述。

描述后,生成了4个可选的图片介绍,选择第一个描述,稍作修改后作为prompt生成图像 /imageine An educational poster titled "The Water JCyle" that depicts the water cycle from its source to oceans, highlighting key elements such as clouds and raindrops in blue color on one side of the page. The other half shows an illustration showing vegetation, rivers, lakes, etc., with arrows connecting them all around. There is also text detailing each step in the process, along with notes about soil, air, atmosphere, and Earth's surface waters.
等待片刻,即可得到基于该图生成的示意图。还是有一些相似,可以在此基础上再修改。可以看到,MJ对文字的支持不好,推荐只用MJ生成图片,后期自己加文字标注。

绘图参数
绘图时,可以在绘图的prompt后面添加一些参数,用来控制绘图的一些设置,如图像比例、清晰度之类的。常用的参数有:
--aspect或--ar,绘图比例,比如 4:3、16:9,默认为1:1--chaos <0-100>或者--c <0-100>,控制图片的创意度和多样性,数字越大,创意性越强,默认为0--no,控制图片中不要出现的元素,比如--no dogs,会尝试从图像中移除狗--quality或--q,控制图片的精细质量程度,默认值是1。数值越大,越多细节,但渲染时间越长--seed <0-4294967295>,绘图种子,用来控制图片相似性。使用相同的种子编号和提示将产生相似(也就是并不相同)的结果图像。seed值可以影响图像的细节、颜色、形状等方面,但不会改变图像的主题和内容--stop <10-100>,控制图片渲染到哪一个进度停止,默认为100,即全部渲染完成后再停止--style <1, 2, 3, 4, 5.0, 5.1, 5.2, or 6>,模型版本切换,从MJ V1到MJ V6有非常多个版本可以切换。默认使用最新的 V6版本--stylize <0-1000>或者--s,控制图片的风格化程度,数值越高图片的艺术性越强,和写的内容偏差就越大,默认是100 (style med)--iw <0–2>设置相对于文本粗细的图像提示粗细。默认值为 1--repeat <1–40>重复运行n次,用于多次运行选最好的。
图片调整
MJ可以在之前绘图的基础上做各种调整。比如,初次绘图后,图片的下方会出现9个图标,可以对之前生成的图像进行调整:
- U1~U4 (Upscale) 可以选择刚才的某一个子图放大,并添加更多的细节
- V1~V4 (Vary) 可以对所选图像进行进一步变化,生成图的风格和构图会与所选图像相似
- 最后一个循环箭头的图标用于重新生成图像。

选择需要的子图后,可以继续点击下方按钮对图片进行修改,主要包括 Upscale(提高分辨率)、Zoom out(向外括图)、vary(更新图像)和平移括图。
- Upscale 是提升图片的分辨率,并添加更多细节。
- Zoom out 是以当前图像为中心,根据提示词向外括图
- Vary 是对图像的原始内容进行更新。其中:
- Vary (Subtle) 和 Vary (Strong) 是对图像整体进行重绘,Strong修改程度比Subtle更大
- Vary (Region) 则是对图片的局部进行重绘。点击按钮后,在弹出的新窗口中通过方框或者套索选择要重绘的区域,然后在下方窗口中输入用于重绘的prompt。该prompt仅需要提示如何对选定区域进行重绘,不需要添加原来的prompt。
- 4个方向按钮则是在不改变原来图像的情况下,向指定方向平移括图。

更具体的解释Vary (Region):
- 为了保证整体的协调,局部修改仍然受之前全局prompt的约束,所以如果要大面积的修改图像,仍然需要调整全局的prompt,而不是选中大范围后进行局部重绘
- 局部重绘后,没有选中的地方不会变化,选择的地方重绘后可能和原来差别很大。如果想要保证和原来绘图尽量一直,可以在绘图时设置和原来相同的随机数种子(
--seed xx),并且增大iw参数 (比如--iw 2,iw的范围为[0,2])。其中,2就是深度参考之前的图片,基本上构图不会发生什么变化。
如果想要重绘部分也尽可能的与原来保持一致,可以尝试Stable Diffusion。SD中绘图时可以使用ControlNet,可以在该模型中使用Candy边缘检测,使生成的图像与原图轮廓比较相近,具体可参考 stable diffusion 绘图 局部重绘
prompt设计的技巧
MJ的prompt包含3部分:图像prompt、文本prompt和参数。其中:
- 图像prompt以图像链接的形式给出,可以影响最终结果的样式和内容。图像prompt始终应该在prompt的最前方
- 文本prompt,最常用的prompt,给出要生成的图像的文本说明
- 参数,用来更改图像的生成方式,可以更改纵横比、型号、升频器等。位于prompt的末尾。

对于prompt的设计,官方有一些建议:
- 用词尽量具体。在许多情况下,更具体的同义词效果更好。比如对于大小,可以使用try tiny, huge, gigantic, enormous或者immense等词。
- 控制描述的长度。更少的词意味着每个词的影响力更大。单词间通过逗号、括号或者连字符来组织想法。如果描述太复杂,可能产生一些克苏鲁的东西……
- 专注于想要的,而不是不想要的。描述时不要写反向表达,就正向思维说想要XX呈现在图片中。如果想要控制这个XX不在生成的图片中,可以使用
--no参数 - 尽可能处理好背景和细节,可以从以下几个方面来描述:
- 主题:人、动物、人物、地点、物体等 (Subject: person, animal, character, location, object, etc.)
- 媒介:照片、绘画、插图、雕塑、涂鸦、挂毯等 (Medium: photo, painting, illustration, sculpture, doodle, tapestry, etc.)
- 环境:室内、室外、月球上、纳尼亚、水下、翡翠城等 (Environment: indoors, outdoors, on the moon, in Narnia, underwater, the Emerald City, etc.)
- 照明:柔和、环境、阴天、霓虹灯、工作室灯等 (Lighting: soft, ambient, overcast, neon, studio lights, etc)
- 颜色:充满活力、柔和、明亮、单色、彩色、黑白、柔和等 (Color: vibrant, muted, bright, monochromatic, colorful, black and white, pastel, etc.)
- 情绪:稳重、平静、喧闹、精力充沛等 (Mood: Sedate, calm, raucous, energetic, etc.)
- 构图:人像、头像、特写、鸟瞰图等 (Composition: Portrait, headshot, closeup, birds-eye view, etc.)
- 如果要控制图片中某个物体的数量,尽量具体化。比如说"two dogs",或者"flock of birds"
- 不用考虑大写英文单词
个人感觉MJ对文字的支持不好,不要企图让MJ在图片中加入文字,不然可能会很怪。
关于MJ的更多使用,可以查看其官方文档。
本文参考:
- Midjourney官方文档
- Midjourney 新手快速起步指南
- Midjourney尝试科研绘图,图文摘要,效果惊艳!
- Midjourney指南 - 生成高分辨率图片(内容已更新至V5)
- midjourney人工智能绘图如何上手,新手小白完全攻略
- Midjourney的安装和订阅
- stable diffusion 绘图 局部重绘
- 爆肝!超详细的胎教级Midjourney使用教程,看这一篇就够!
AI绘图之Midjourney初体验的更多相关文章
- ChatGPT 和 Midjourney 初体验
ChatGPT 和 Midjourney 这两个系统这些天红的发紫,自己也尝试着注册和使用了一下. 一.ChatGPT 我在上周才刚刚注册 OpenAI,注册过程也比较麻烦. 国内的 IP 是无法访问 ...
- Xamarin.iOS开发初体验
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0
- .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
不知不觉,“.NET平台开源项目速览“系列文章已经15篇了,每一篇都非常受欢迎,可能技术水平不高,但足够入门了.虽然工作很忙,但还是会抽空把自己知道的,已经平时遇到的好的开源项目分享出来.今天就给大家 ...
- Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...
- Spring之初体验
Spring之初体验 Spring是一个轻量级的Java Web开发框架,以IoC(Inverse of Control 控制反转)和 ...
- 【腾讯Bugly干货分享】基于 Webpack & Vue & Vue-Router 的 SPA 初体验
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57d13a57132ff21c38110186 导语 最近这几年的前端圈子,由于 ...
- 【Knockout.js 学习体验之旅】(1)ko初体验
前言 什么,你现在还在看knockout.js?这货都已经落后主流一千年了!赶紧去学Angular.React啊,再不赶紧的话,他们也要变out了哦.身旁的90后小伙伴,嘴里还塞着山东的狗不理大蒜包, ...
- 在同一个硬盘上安装多个 Linux 发行版及 Fedora 21 、Fedora 22 初体验
在同一个硬盘上安装多个 Linux 发行版 以前对多个 Linux 发行版的折腾主要是在虚拟机上完成.我的桌面电脑性能比较强大,玩玩虚拟机没啥问题,但是笔记本电脑就不行了.要在我的笔记本电脑上折腾多个 ...
- 百度EChart3初体验
由于项目需要在首页搞一个订单数量的走势图,经过多方查找,体验,感觉ECharts不错,封装的很细,我们只需要看自己需要那种类型的图表,搞定好自己的json数据就OK.至于说如何体现出来,官网的教程很详 ...
- Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验
Python导出Excel为Lua/Json/Xml实例教程(二):xlrd初体验 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出E ...
随机推荐
- mysql 锁机制(一)
前言 介绍mysql 锁的机制. 正文 锁类型 读锁,是一种共享锁,s锁,允许一个事务是读取一行,阻止其他事务获取相同的数据集的排他锁. 注:排它锁的意思就是说只能加相同的锁,不能加不同的锁,比如都加 ...
- react native 使用typescript
前言 TypeScript作为JavaScript的一个富类型扩展语言,深受代码风格严谨的前端开发者欢迎.但在react-native下,因为packager的配置困难,使用TypeScript一直是 ...
- 实训篇-Html-超链接练习
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Java实现银行存取款
"感谢您阅读本篇博客!如果您觉得本文对您有所帮助或启发,请不吝点赞和分享给更多的朋友.您的支持是我持续创作的动力,也欢迎留言交流,让我们一起探讨技术,共同成长!谢谢!" 代码 `` ...
- 【pytorch学习】之数据预处理
2 数据预处理 为了能用深度学习来解决现实世界的问题,我们经常从预处理原始数据开始,而不是从那些准备好的张量格式数据开始.在Python中常用的数据分析工具中,我们通常使用pandas软件包.像庞大的 ...
- 第 6章 Python 应对反爬虫策略
第 6章 Python 应对反爬虫策略 爬取一个网站的基本步骤 (1)分析请求:URL 规则.请求头规则.请求参数规则. (2)模拟请求:通过 Requests 库或 urllib 库来模拟请求. ( ...
- 日志服务SLS 助力识货 APP,解决业务数据采集查询监控问题
简介: 日志服务SLS 助力识货 APP,解决业务数据采集查询监控问题 更多存储标杆案例欢迎点击下方链接查看 阿里云存储标杆案例样板间 公司介绍识货APP是虎扑体育旗下的导购应用,致力于为广大年轻用户 ...
- 庖丁解牛|图解 MySQL 8.0 优化器查询转换篇
简介: 本篇介绍子查询.分析表和JOIN的复杂转换过程 一 背景和架构 在<庖丁解牛-图解MySQL 8.0优化器查询解析篇>一文中我们重点介绍了MySQL最新版本8.0.25关于SQ ...
- Go 语言网络库 getty 的那些事
简介: Getty 维护团队不追求无意义的 benchmark 数据,不做无意义的炫技式优化,只根据生产环境需求来进行自身改进.只要维护团队在,Getty 稳定性和性能定会越来越优秀. 个人从事互联网 ...
- [Blockchain] Cosmos Starport 地址前缀的变更方式
# 在新的区块链上修改 starport app github.com/hello/planet --address-prefix your_new_prefix # 在已存在的区块链上修改 `app ...