Midjourney绘画全面解析
初识 Midjourney
Midjourney 是一个人工智能生成图像产品。其创始人 David Holz 认为,Midjourney 是人类想象力的延伸。如果对其发展历程感兴趣可以参考下面的文章:Midjourney:只需要十一人在生成式AI、云计算等技术逐渐抹平大企业与中小企业之间的技术、成本差距后,各企业真正比拼的,只剩下人才、创意与执行力微信公众平台
Midjourney 官方对于其产品的介绍如下:
MidJourney is proficient at adapting actual art styles to create an image of any combination of things the user wants. It excels at creating environments, especially fantasy and sci-fi scenes, with dramatic lighting that looks like rendered concept art from a video game.
Midjourney 擅长于运用实际的艺术风格生成用户想要的任何事物的图像。它擅长于创建环境,特别是浪漫梦幻的场景,并且会使用戏剧性的光照效果让画面看起来像是从游戏渲染出来的概念艺术。
简单点说:人工智能,以文生图,效果炸裂。下面是 Midjourney 官方给出的最新版本 V5 的生成样例,只能说效果非常惊艳。
Midjourney 站点直达
官网链接
Midjourney 官方主页,链接: https://midjourney.com/
需要科学上网
新用户注册可以进来这个地址,然后点右下角的「Sign In」按钮。
Discord说明:
Midjourney 在 Discord 的服务器, 链接: https://discord.gg/midjourney
Discord 是一个聊天社区产品,Midjourney 目前搭载在 Discord 上给用户使用。
用户在服务器聊天室中给 Midjourney 机器人发指令和提示语,机器人就会执行图像生成。
基础设置解析
输入指令:/settings 发送后,出现下图设置项。
1-5 分别对应 Midjourney 的版本,MJ version 5.1 为当前最新版本
Niji version 4 和 5 代表着动漫风格的模型。
Style low、med、hight、very higt 分别代表着艺术风格化程度,从低、中、高、非常高。Reset Settings 为重置设置。
Public mode 代表着公开模式,生成的图,会出现在其他地方。非 60 美元/月套餐,只能是该模式
Stealth mode 代表着秘密模式,仅限 60 美元/月套餐用户使用。
Remix mode 为混音模式。
Fast mode 为快速模式。60 美元/月套餐,每个月有 30 个小时快速出图时间。30 美元/月,每个月有 15 个小时快速出图时间 。10 美元/月,每个月有 200 张快速出图套餐,200 张额度很快会用完,不推荐此套餐。
Relax mode 低速模式,快速模式一分钟左右出图,而低速模式可能需要 10 分钟左右,速度比较慢。
生成的图片下方,有 2 排按钮,后面的数字代表上方对应的图片序号。
U = Upscale to max;
V = Make Variations
niji-漫画模型
Niji是Midjourney中用于绘制二次元(动漫)风格的专用模块
每个模型的区别
在下图中,从 Niji4 到 5 可以看出,动漫画风更加高级,更加二次元,从卡通走向成熟,Test 模型是测试模型:
niji 5 里有 4 种风格,见下图:
分别是默认风格、表现力风格、可爱风格和最新出的景观风格,
下面放一下风格之间的区别(因为景观风格是刚出的,这里没有放示意,可以自己尝试一下)。
Remix混音模式,这里选择了一张官方的图,一堆艺术线稿样式的南瓜,然后选择“Make Variations”。
在弹出窗口中修改或输入新的提示。例如在输入框里输入 pile of cartoon owls(一堆卡通猫头鹰)。
则对应的猫头鹰代替南瓜。
用法解析
Prompt:
1 | a cute cat, 3d, octane render, blender |
其中–ar 16:9 代表着图片的分辨率比例。长宽比为 16:9。
–niji 5 代表着 niji 5 版本模型。
–s 400 代表着艺术化风格化, 最新的 niji 5 中,最高支持到 400 的艺术风格化
–style Niji V5版本的 cute 和 expressive 两种模式。cute就是字面意思,更可爱的风格;expressive更偏3D和欧美样式。
表情包生成
Prompt:
1 | emoticon pack, cute white round fluffy chubby kitty emoticons, 9 [cute, expecting, happy, crying, sad, disappointed, shy, heart-felt, eating], disney style, 2d --style expressive --niji 5 |
国风插画_踏鹊枝
模式:niji 5 的 style expressive
💡核心关键词:
- 【中国古典美人】ancient Chinese beauty
- 【喜鹊在侧】with magpie
- 【水墨渲染】 ink blending
- 【艺术家】art by Qiu Ying, Zhang Daqian
可以多尝试运用不同的颜色组合,比如 blue and green color, yellow and green color 等~
Prompt:
1 | an ancient Chinese beauty, solo, wearing chinese costumes, with magpie, ink blending, art by Qiu Ying, Zhang Daqian, blue and red color, bright. |
一个小女孩
Prompt:
1 | A girl, 16 year old Luoli, dressed in Hanfu, is a Chinese beauty, cute,Hayao Miyazaki's Painting Style , 8K, octane render, highly detailed, intricate details --ar 2:3 --niji 5 |
MJ-现实混合模型
每个模型的区别
v1 版本画的花朵,比较抽象。
v2 版本,花朵细节增加。
v3 版本,细节相对于 v2 更加丰富,且创意更好。
在下图,v4 到 v5 版本可以看出猫咪的细节更加真实。
v4 看上去像绘画,v5 就更像照片,
Test Photo 模型是 Midjourney 照片测试模型:
在 v4 版本中有 a、b 和 c(默认)
v5.1 的模型相对 v5 效果更强,简单的关键词也可以产生很好的效果,
改善了边缘细节,并提升了画面清晰度,
v5.1 下还有 raw 模式,该模式可以支持长 prompt,
更能准确的理解关键词,生成的图片更加准确,如下图:
用法解析
一个小女孩
Prompt:
1 | A girl, 16 year old Luoli, dressed in Hanfu, is a Chinese beauty, cute, 8K, octane render, highly detailed, intricate details --ar 2:3 --v 5.1 |
写 Prompt 的基本思路
首先,我们要明确一点,写 Prompt 提示语最重要的并不是我们自身要知道多少多少个绝妙的提示词,也不是我们能写出多么长的提示语。最重要的是我们要有正确的写提示语的思路。顺着这个思路我们可以通过 ChatGPT 或者搜索引擎去帮助我们找到所需要的提示词,甚至可以给选来呢 ChatGPT,让它学习这个思路,然后自动输出 Midjourney 的完整提示词。
回到写 Midjourney 提示语的思路。
图像生成是一种艺术表达形式,而所有艺术形式的创作的最基本思路就是两点:内容 + 形式。
所谓内容,就是指我们希望在这个画布上塞一些什么东西,说的具体点就是「在什么时间、什么地点,什么人在干什么事」;所谓形式,就是指构图、光线、色彩、氛围等等要素,包括一些特定的风格,都属于形式的范畴。
基于这个简单思路我们来举个例子:
上面这个例子给大家展示了一个由粗到细写提示语的过程。但其实当你有一定经验之后,很多词你是会预先想到的。比如上面这个例子中的画幅、场景、构图等等。所以在后面的文章,我们会继续将提示词的写法细拆得更具体一些。
Midjourney Prompt 提示语说明
Prompt 是一段简短的文本语言,供 Midjourney Bot 理解并生成图像。
Midjourney Bot 会将 Prompt 中的词句和短语拆分成更小的片段,称为令牌(token),然后将这些 token 与用于训练机器的数据进行比较并用于生成图像。精心撰写的 Prompt 可以帮助生成独特美妙的图像。
Prompt 结构
基础提示语
基础的提示语可以简单到一个单词、短语或表情符号
高阶提示语
更高阶的提示语可以包括若干个图像 url、多个文本短语和若干个参数
图像提示语
可以将图像 url 添加到提示语中,以影响最终图像的风格和内容。图像 url 总是出现在提示语的前面。
文本提示语
要生成的图像的文本描述。请参阅下面的提示信息,精心编写的提示语有助于生成惊艳的图像。
参数
参数改变图像的生成方式。参数可以改变图像宽高比、模型、升频器等等。参数一般放在提示语的最后。
写提示语的建议
提示语的长度
提示语可以非常简单。
一个单词(甚至一个表情符号)就能生成一幅图像。很短的提示语将严重依赖于Midjourney 的默认风格,所以更具描述性的提示语将更好地呈现出独特的内容。
然而,这并不意味着超长的提示就是更好的。
最重要的是要专注于你想要创造的内容概念。
语法
Midjourney Bot 并不能完全像人类一样理解语法、句子结构和单词。所以,提示语的用词很重要。关于语法、用此方面有一下小提示:
- 在许多情况下,更具体的同义词效果更好。举个例子:不要用「big」,试试「huge」「enormous」或「immense」。
- 保持简洁。如果可以删除不必要的单词,更少的单词意味着每个单词都有更大的影响力。
- 正确地使用逗号、括号和连字符号来帮助组织你的想法,但同时要理解 Midjourney Bot 不一定能可靠地理解它们。
- Midjourney Bot 不考虑大写。
- Midjourney Model Version 4 在解释传统句型结构方面略优于其他模型。
专注于你想要的事物
最好是描述你想要什么,而不是你不想要什么。
如果你要求一个「没有蛋糕」的聚会,
你得到的图像结果可能还是会包含一个蛋糕。
如果希望确保某个物体不在最终生成的图像中,
请尝试使用「no」参数进行提示。
举个例子:–no cake
想想哪些细节很重要
一些没有说出来的事情可能是很重要的。按照你的想法进行具体或模糊的表达,但你遗漏的事情对于 Midjourney Bot 来说都是随机的。含糊其辞是获得随机性、多样性结果的好方法,但你可能得不到你想要的具体细节。
所以,试着弄清楚任何对你来说重要的背景或细节。可以从以下方面着手进行思考:
● 主题:person, animal, character, location, object ……
● 媒介:photo, painting, illustration (插画) , sculpture (雕塑) , doodle (涂鸦) , tapestry (壁毯) ……
● 环境:indoors, outdoors, on the moon, in Narnia (纳尼亚) , underwater, the Emerald City (翡翠城) ……
● 灯光:soft, ambient (环境光) , overcast (阴天) , neon (霓虹) , studio lights ……
● 颜色:vibrant (鲜艳) , muted (柔和) , bright, monochromatic (单色) , colorful, black and white, pastel (蜡笔画) ……
● 情绪:Sedate (稳重) , calm, raucous (喧闹) , energetic (精力充沛) ……
● 构图:Portrait (人像) , headshot (大头照) , closeup (特写) , birds-eye view (鸟瞰) ……
避免只用一个复数单词
复数单词有很大的偶然性。试试具体的数字。
「Three cats」比「cats」更具体。
集体名词也可以用,用「flock of birds」代替「birds」同样更具体。
stylize (艺术风格化)
使用方式“–s”或“–stylize” ,
低风格化生成的图像与提示非常匹配,但艺术性较差。
高风格化创建的图像非常具有艺术性,创意性更强,但与提示的联系较少。
–stylize 的默认值为 100,
并且在使用默认 [V4、V5 模型] 时接受 0-1000 的整数值。
如下图所示:随着风格化数值越高,则画面的细节和表现力越强,细节和层级也越复杂。
v5 版本,风格化数值支持范围 0-1000,默认 100。
官方标注这里有缺少,最新的 niji 5 中,支持最高到 400 的艺术风格化
命令之间的组合运用
chaos (混乱)
使用方式“–c”或“–chaos” ,
chaos 的数值影响初始图像,
高 chaos 值将产生更多不寻常和意想不到的结果和组合。
较低的 chaos 值具有更可靠、可重复的结果,
搭配 seed 值使用,将产生相似的图片。
–chaos 数值范围为 0-100,默认值为 0。
如下图所示:混乱值越高,则生成一组图片之间的差异性组合越大,可能会出现新的图片,越低则越接近原图,可以用于生成相似人物,数值可以写 5 以内。
no (负面提示)
使用方式“–no” ,例:–no plants 尝试从图像中移除植物。
例如生成了一个卧室的图。
当我不想要床出现在房间里时,则加入 –no bed. 则生成图不会出现床。
stop (停止)
使用方式“–stop ” ,
–stop 接受值:10-100。默认–stop 值为 100。–stop0 不起作用。
使用–stop 选择在什么进度结束。
较小的百分比结束会产生更糊、不详细的结果。
下图中,添加–stop 不同的数值,得到对应进度生成图。当 –stop 100,则是就是 100%生成的正常图。
repeat (重复)
使用方式“–r”或“–repeat ” 。
众所周知,MJ 属于抽卡模式,
游戏里大家都知道可以十连抽,那我们的 mj 可以不可以呢?
答案是可以的。
这里用到的就是重复命令“–repeat”,
用这个命令可以一次性生成多次图片,可以加速我们的抽卡环节。
–r 后输入我们需要出图的次数。
要注意的是标准版 30 美元/月订阅者: 2–10 ,
Pro版60美元/月订阅者:2–40。
由于生成图片较多,需要点击 yes 确认;反悔的话,可以点击 cancel all,进行取消。
:: (多重提示)
当我们使用 :: 作为分隔符时,可以分别处理两个或多个单独的关键词,
而且还可以设置每个关键词的比重。
0.5 的时候,0 可以省略,写成.5,如“::.5” 。
如果关键词是:hot dog,则出现热狗。
如果通过::输入,关键词是:hot:: dog (分开联想创作,热和狗) :
这里是缩写,实际 hot:: dog = hot::1 dog::1,等于 1:1。
也可以用“,”号来区分,如 hot,dog,也会分开联想,但还是有些区别。
第二个示意,输入关键词:baby corn(玉米笋)出现对应的玉米笋。
将 baby corn 变为 baby:: corn。
baby 和 corn 的权重是 1:1。
生成的图如下图所示。
当 baby::2 corn。
即婴儿和玉米的权重是 2:1。则玉米出现的占比更小,
如图生成出来的图片出现玉米糊。
当 baby::100 corn。
即婴儿和玉米的权重是 100:1,
生成的画面几乎没有玉米的画面。
注意,这里::权重的总和必须是正数,最好大于 0.5,等于 0 的时候,生成的图片会出现与关键词无关
例:baby:: corn = baby::1 corn::1,1+1=2
由此可以得到:
baby:: corn::-2 ❌
baby:: corn::-.5 ✅
baby::2 corn::-2 ❌
baby3:: corn::-2 ❌
baby::1.5 corn::-2 ❌
baby::51 corn::-50 ✅
只是示意,平时不要写这么刁钻的,可以写成完整的,
如::写成::1,-.5 写成-0.5;
用官方示意再解释一下,输入关键词:
vibrant tulip fields (生机勃勃的郁金香花田)得到如下图所示:
这里更改关键词:
vibrant tulip fields:: red::-.5(生机勃勃的郁金香花田,不要红色 )
得到如下图所示:
这里“red::-0.5”等同“–no red” 如果“red::2”则“画面全是红色的郁金香”
iw (图像权重,图生图)
使用方式,例“–iw 2” 。
–iw 的数值,会影响我们上传的图像与文本之间的比重;
默认–iw 数值为 1,
较高的 –iw 值意味着我们上传的图片对生成的结果,影响更大。
数值范围为 0.5-2。
垫一张上面的图,
加上一点描述:a cute girl sitting in a fantasy world.
当–iw 1(默认)时如下图所示:
会看到生成的图片动作相近,略有差距
当–iw 2 时。
这里会看到生成的图片动作比较接近。
当–iw 0.5 时候
此时生成的图片差距比较大。
/describe (图生文)
首先,这里我们找一张模特照片(图片来自于 unsplash):
使用方式,输入框中输入“/describe” ,
添加图片后,会得到对应的四组关键词。
选择其中一组关键词生成如下图:
配合前面提到的 seed 值,
使用相同 seed 值 + chaos,生成微调画面。如下图所示:
这里要注意的是,
如果开始了混音模式,点图片下的 V 键,
生成四组图片时,生成的图片效果效果可能不是很好,
卡通人物的话不是很明显。
下图左侧图片未开启 remix 模式。右侧是开启了 remix 模式。
然后还是选择一组关键词,
用图生图的方式生成图片,加上“–iw 2”
原图如下:
生成图如下:
网上很多 mj 控图大法,
可以控制生成相同角色的教程,实际效果其实不是很准确。
Midjourney 的可控性还没那么强。
无非就是 seed 值,加 iw 权重,垫图,再 chaos 进行微调,
但只能有点相似,细看还是有区别的,
做不到一模一样(有个插件可以进行换脸,名字叫 InsightFaceSwap)。
但可以使用一些命令,在同一张图中,生成相似的图如:
4 panels withdifferent poses (可以生成 4 个不同表情 )
character sheet(可以生成一组相似动漫角色):
three views of an image, generate three views, namely the front view, the side view, and the back view.
(三视图,还是需要垫一张三视图,效果才会出来)
/blend (混合)
使用方式,输入框中输入“/blend” 。
该命令下,可以上传 2-5 张图像,并将它们合并成一个新的图像。
例如上传一张空鱼缸图片和一张金鱼,就可以生成一张有鱼的鱼缸。
tile (无缝贴图)
使用方式“–tile ” ,
可用作重复拼贴的图像,创建壁纸或纹理的无缝图案。
适用于模型版本 v 1、2、3 和 5。
video (动画)
使用方式“–video” ,
用于获取图像生成的过程动画,效果如下:
{} (排列组合)
使用方式,例 {red,yellow} ,可以修改部分关键词的同时,
快速创建多次作业 最多可以创建 40 个作业 。
假如我们要生成三张不同颜色的花,正常需要输入三组命令:
a red flower.
a green flower.
a yellow flower.
这里只需要输入:
a {red, green, yellow} flower
则会生成三组图片;也可用于尺寸 ar、模型版本、艺术风格等,如:
–ar {3:4,16:9} –v {3,4,5,niji} –s {50,250,750} –iw {.5,1.5,2}
或者组合使用,如:
Prompt: a {red, green, yellow} flower. –ar {3:4,16:9} –s {50,100}
或 Prompt: A {girl,boy,cat} is standing in the {classroom,bedroom} –ar {3:4,16:9} –s {50,100,800}
如何需要用到 2 个单词来形容一组画面,在排列组合里,可以用反斜杠“\”来分割 ,如下:
Prompt: a {red,Cartoon , yellow} flower.
则会生成一朵红色花,和一黄色卡通花:
/prefer suffix (默认后缀)
使用方式,输入框输入“/prefer suffix” ,
指定文字或命令,添加到关键词末尾,
再次输入“/prefer suffix”,取消设置 。
可以定义每次出图的后缀。
如输入关键词,
Prompt: a cat. 则会自动加上后缀:
Prompt: a cat, 8k, high detail. –ar 3:4
/settings 可以看到我们设置默认后缀,
缺点:不能在关键词后加入任何命令,如“a cat. –s 200”,否则无法出图。
群里看到很多人遇到过,明明关键词没问题,别人都正常出图,
就自己不行,这里可能就是自己不小心误操作,设置了默认后缀。
因为我们的 MJ 默认命令只能在最后,如果你加入了“–s 250”,
那出来的结果关键词就是 –s 250 8k,high detail,则不能识别。
如下图:
/prefer option set (预设)
上面的方式局限性比较大,但我们还可以用预设来方便我们生成图片。
使用方式,输入框输入“/prefer suffix”
创造一个预设,option 设置名称,
如 fg1(风格 1,可以自定义习惯的英文,或者贴合 mj,如 P、K),
value 类型里写–s 250 –ar 3:4。
这样只要后缀输入我们预设,则会自动加上设置的后缀命令,使用方法:
Prompt: a cat –fg1 = Prompt: a cat –s 250 –ar 3:4
可以创建多个预设,省去输入的时间。
注:最多可以设置 20 个预设,
/prefer option list 可以查看所有预设。
常用命令拆解
常见的命令有:
1 | --seed:种子值 |
关于 Quality(品质)
使用方式“–q”或“–Quality” ,这里决定了我们最终生成的图片质量,更高的参数会产生更多的细节,类似我们做三维渲染一样,时间越长,效果会更好,当然同时也会消耗更多的 GPU 分钟数,注意这里的质量设置不会影响图片分辨率。
如下图所示,分别是:–q .25、–q .5 和–q 1。其中–q.5 对应的模式是 Half quality。-q 1 对应的模式是 Base quality。
–q .25:最快得到结果。速度提高 4 倍数,GPU 渲染分钟数减少 3/4。
–q.5:减少细节。速度提高两倍,GPU 渲染分钟数减少 1/2。
–q 1:默认设置,细节和速度之间的平衡。
注意的是 v5 最高支持 –q 1,
就算输入–q 2 也会向下兼容 q 1,如果想使用–q 2,
可以使用 v1、2 或者 v3 模型。
关于 seed(种子值)
虽然我们的出图是随机的,但毕竟是程序化的控制,
所以我们每张图片都对应着一个 seed 值,
使用相同的 seed 值和关键词将产生几乎一样的图片(实际就是一样的)。
使用方式“–seed xxxx ” 如“–seed 12345 ” 。
如下图所示:使用相同 seed 值,生成的两次图片,是同样的结果。
获取 seed 值的方式如下图所示:
右键-添加反应-显示更多,输入 envelope 选择邮件图标,
点击后,在 Midjourney 私聊中获取 seed 值。
图片放大推荐
由于 Midjourney 生成的尺寸大小有限制,通常默认 10241024,或者 20482048,图为官方尺寸示意:
如果想要图片分辨率变得更大,则可以下面两个网站。
https://bigjpg.com/ :每月免费次数 20 张,支持 png。
付费用户可以使用 8 倍和 16 倍放大,最低 500 张每个月。
https://www.upscayl.org/ :免费、本地,适用于公司设计稿不能对外发的场景。
素材管理软件,除了我们常用的 Eagle,也可以使用 Billfish(免费)和 Connecter(免费)。
其中 Connecter 本地目录,不创建文件夹,
可预览图片或 3d 文件格式,如 psd、tiff 和 c4d、max 等等。
Connecter 也可以快速预览多个文件
如果我们有很多个文件夹,里面有若干个图片文件,
这样就可以用软件,一键预览所有文件,更加方便我们找到素材,
示意动画:
有一些 logo 或图标,格式是 jpg 或者 png 格式。
可以使用 https://vectorizer.ai/ 快速图片转矢量。
快速抠图网站:
真正的咒语生成器
- 下面这个详细的写 Midjourney 提示词思路几乎可以囊括 90% 以上的场景,乍一看比较复杂,但其实是有内在逻辑的,我将其整体成了表格
以后写文生图的提示词都可以参考这个思路,或者你还可以试试写一些例子并教会 ChatGPT 用这个思路。 - 整体大框架包括先后四个要点:
- 1是否需要限定特定行业或领域(比如 logo 设计和电商产品图就完全不是同一个东西)
- 2描述画面内容(类似记叙文:时间、地点、人物、事件,重要的部分加修饰,比如人的装扮之类的)
- 3选择喜欢的画面风格(比如要求是写实的摄影、泡泡玛特3D渲染风格,或者抽象的浮世绘)
- 4给更多画面形式的约束(想象自己是摄影师,怎么构图,要什么样的光线和视角等等)
具体的说明可以参照下面的详细表格