元峰AI笔记 · AI绘画与视频

如何在 Mj 中创建一致的角色

Midjourney 是一个生成式AI绘图工具,可以帮助您创建各种类型的图像,包括角色设计。但是,如何在 Midjourney 中创建一致的角色呢?这是一个挑战,因为使用生成式AI工具时,要让您的图像保持一致并不容易,但是有了正确的过程,您就可以实现您想要的结果。这可能会让一些初学者感到困惑,但是只要您...

如何在 Mj 中创建一致的角色

Midjourney 是一个生成式AI绘图工具,可以帮助您创建各种类型的图像,包括角色设计。但是,如何在 Midjourney 中创建一致的角色呢?这是一个挑战,因为使用生成式AI工具时,要让您的图像保持一致并不容易,但是有了正确的过程,您就可以实现您想要的结果。这可能会让一些初学者感到困惑,但是只要您按照正确的步骤进行操作,您就可以轻松地实现您想要的结果。

在这篇文章中,我将指导您如何在 Midjourney V5 中创建一致的角色。

我们将使用肖像作为示例,但这种技术适用于卡通、产品、插图,只要你能想到。请记住,这只是其中一种方法。
给角色起个名 Alice,这是接下来我们测试的基准模型。

图片展示了一位戴着棕色针织帽、穿着棕色外套的女性,背景模糊,隐约可见行人和街道。该图片位于介绍Midjourney使用图像提示技术的上下文之后,可能是作为示例,用于说明在Midjourney中使用图像作为提示灵感来源这一技术,为后续在Midjourney中创建角色的测试做铺垫。

我们先聊点基础的

Midjourney 是一种 AI 扩散模型,它使用关于您希望 AI 生成的内容的人工书面提示(描述),从噪音中创建图像。
在微调或训练您自己的模型时,Midjourney 不像 Stable Diffusion。您不能在 Midjourney 上训练模型并将其用于特定需求。
使用 Stable Diffusion 创建一致的角色要简单得多。但我们来这里是为了看看 Midjourney 能做什么。
在 Midjourney 中,我们可以使用所谓的“图像提示”。这是一种技术,我们使用图像作为提示的灵感来源。这并不是针对 Midjourney 的训练,而是像ChatGPT中的“few shot prompting”一样工作,您可以提示您想要的内容或样式,Midjourne y 在生成输出时将以此为灵感来源。
Midjourneys 自己的文档,这是图像提示的样子。

图片展示了Midjourney中使用图像提示的指令结构。指令以“/imagine”开头,后跟“prompt”参数,再接两个图像URL,接着是“description of what to imagine”文本提示,最后是可选的“--parameter 1”和“--parameter 2”参数。图片下方用不同颜色突出显示了“Image Prompts”“Text Prompt”和“Parameters”三个部分,与上文提到的使用图像作为提示灵感来源,以及将图像上传到Discord获取URL等内容相呼应,直观呈现了指令中各部分的对应位置。

要使图像提示正常工作,您需要存在于 Internet 上的图像,如果图像存在于 discords CDN 上则更好。要将图像放入 discord,您只需将它们上传到 discord 并获取 URL 并粘贴到您的提示中。
我们通过这种办法把图像上传到 DIscord 上:

图片展示了Discord界面中与Midjourney Bot的聊天窗口。左侧为消息列表,显示Friends、Nitro及Direct Messages等分类,Direct Messages下有Midjourney Bot。右侧是聊天窗口,上方有搜索栏、文件夹图标、用户图标及问号图标。底部输入框显示“Message @Midjourney Bot”,并有礼物、GIF、图片及表情符号图标。该图片与文档中如何在Mj中创建一致角色的上下文相关,用于说明在Discord中与Midjourney Bot交流的界面情况。

Midjourney 命令快速指南

快速查找功能和指令 。它应该涵盖了常用的基本内容和一些高级参数。

图片是Midjourney v5的快捷指南,展示了在Midjourney中生成图像的命令结构。分为Prefix、Scene、Suffix三部分,Prefix定义图像媒介和风格,Scene定义内容,Suffix对Prefix和Scene进行微调。还列出了参数设置,如aspect ratio、chaos、quality、seed、stop、style等,以及一些快捷指令,如show custom presets、toggle remix mode等。该图与上下文介绍的在Midjourney中创建角色的示例相呼应,为操作提供参考。

在本示例中,我们将以人像为参考

所以当涉及到在 Midjourney 中重新创建真实人物的照片时,我不得不退后一步,看看周围有什么。我们发现插画师在创造角色和特别是脸部时的工作方式。他们创建这些表格,脸部的多个角度变成角色的蓝图。这样,当他们画出新场景时,他们就有了参考艺术品。这就是我们认为 Midjourney 在幕后处理图像提示和参考保留时所做的事情。
在人脸训练 Stable Diffusion 模型时,这很相似,你想要高质量的训练数据。因此,如果您正在使用 Stable Diffusion 进行训练,这种技术也可能会改进您的模型。
人物插图参考人物

图片展示了不同角度的女性面部结构图,包括正面、侧面、背面等视角,每个视角下有多个不同面部特征的示例。这些示例标注了面部关键点,如眼睛、鼻子、嘴巴、耳朵等位置,还展示了面部比例关系,如脸型、眼睛间距等。该图与文档中“人物插图参考人物”部分相关,为人物插图创作提供参考,帮助理解人物面部结构和比例。

第 1 步 - 让我们生成一个人像

人像的生成方式有很多种,我就用这种方式,大家可以自行修改。
我演示的所有提示都将使用最新版本的 V5 版本,所以我在这里没有使用任何参数(—v 5 —q 2 等),只是将提示直接写入 Midjourney 机器人。

street style photo of a beautiful girl, shot on Kodak Gold 200

我们最初的模型集

图片展示了四张人物插图,均为女性。左上角女性戴着橙色针织帽,穿着棕色外套;右上角女性长发披肩,穿着蓝色印花衬衫;左下角女性戴着棕色针织帽,穿着深色上衣;右下角女性戴着花环,穿着绿色夹克。这些插图与文档中“第1步 - 让我们生成一个人像”部分相关,是使用“street style photo of a beautiful girl, shot on Kodak Gold 200”提示生成的初始模型集示例。

一旦我们有了我们的初始模型,我们就会选择一个,我选择了 3 号。这是我们的 gen0。
如果你想尝试不同的风格,你也可以试试这个提示。

studio style photo of a woman light background shot on Kodak Gold 200

图片展示了四个不同风格的女性肖像。左上角是穿着黄色外套的女性,背景为深色;右上角是红发女性,背景为浅色;左下角是穿白色上衣的女性,背景为深色且有灯光效果;右下角是黑发女性,背景为深色。这些肖像与文档中关于在Mj中创建一致角色的内容相关,可能是展示不同风格的示例,帮助理解如何通过不同提示生成风格统一的角色图像。

第 2 步 - 提高品质并扩大规模

所以现在我们做了一个选择,我们使用 U 放大,并确保我们的放大看起来清晰,我们不希望图像中有任何主要的伪影。选择一张最理想的。

图片展示了在Discord中获取的图像URL及种子短语。上方是“street style photo of a beautiful girl, shot on Kodak Gold 200 --ar 3:2 --v 5 - @melissastewart (relaxed)”的图像,下方有四个选项卡,分别为U1、U2、U3、U4,V1、V2、V3、V4。该图片与上下文紧密相关,上下文提到接下来要获取初始图像URL和种子短语并制作新提示,此图即为获取的图像示例,用于后续制作提示。

接下来,我们想要这个图像的种子编号,只需用字母表情符号回复“信封”,你就应该得到种子编号。

图片展示了在Discord中获取图像URL的操作界面。左侧是一张街拍风格的美女照片,右下角有“Make Variations”和“Web”按钮,下方还有“Favorite”按钮。右侧弹出菜单中,红色箭头指向“envelope:”选项,其后有数字序号标识的1、2、3、4。该图片与上下文相关,上下文提到要从Discord中获取图像URL,右键单击并选择复制图像地址,此图直观呈现了右键菜单中相关选项的位置。

图片展示的是在Discord中获取的初始图像。上方显示“Midjourney Bot”机器人发送的消息,内容为“street style photo of a beautiful girl, shot on Kodak Gold 200”,并附有Job ID和Seed编号。下方是一张侧视图照片,画面中是一位戴着棕色针织帽、穿着灰色上衣的女性,背景模糊,有行人。该图片与上下文关系紧密,是获取初始图像URL和种子短语后制作新提示的示例,用于后续制作角色图像。

现在我们要获取初始图像 URL 和种子短语并制作一个新提示。

图片展示了在浏览器中右键点击一张街道风格女性侧视图照片时弹出的菜单。菜单中“复制图片地址”选项被红色框突出显示。该图片与文档中“第2步 - 提高品质并扩大规模”部分内容相关,文档提到将从Discord中获取图像URL,右键单击并选择复制图像地址,此图直观呈现了复制图像地址的操作步骤,帮助用户理解如何获取图像URL。

我们将从 Discord 中获取图像 URL,右键单击并选择复制图像地址。

图片展示的是在Mj中使用/imagine指令生成图像的界面。画面中“prompt”栏显示了图像URL及文字提示,图像URL为https://cdn.discordapp.com/attachments/1092704546842746910/1100735230438031410/anonymous_street_style_photo_of_a_beautiful_girl_shot_on_Kodak__8857b4be-1495-43df-a3d7-0c454025b791.png,文字提示为“street style photo of a woman, side view, shot on Kodak Gold 200--seed 1255020766”。该图片与上下文紧密相关,是根据上下文提示使用/imagine指令生成图像的示例呈现。

在此提示中,我们将使用图像 URL + 文字提示 + seed编号,但这次我们想要侧视图或侧面照片 + 初始种子。

street style photo of a woman, side view, shot on Kodak Gold 200--seed 15847958

图片展示了四张不同角度的女性侧面照片。照片背景为街道场景,有行人和模糊的灯光。女性们穿着棕色外套,有的戴着帽子,有的耳垂上挂着耳环,头发呈现卷曲或束起状态。这些照片与文档中从Discord获取图像URL并使用特定指令生成侧面图的内容相关,展示了生成的侧面图像效果。

我们可以根据需要多次运行此程序,直到获得 1-2 张左右侧面图或侧角视图的图像。当拥有与最初的人最相似的人时,我们会对他们进行放大下载。

图片展示了一位侧身站立的女性,背景为模糊的街道场景。她有着卷曲的深色头发,佩戴着大圆环耳环,穿着棕色外套,内搭白色衣物。图片与上下文的关系是,在介绍如何在Mj中创建一致的角色时,作为示例,说明在拥有正视图、左侧视图和右侧视图图像后,可拍下图像并结合新提示,获得面部上方的角度,以提高角色品质并扩大规模。

图片展示了一位侧身站立的女性,她戴着橙色针织帽,穿着棕色高领毛衣和灰色外套,背景模糊,隐约可见行人和建筑。这张图片与文档中“如何在Mj中创建一致的角色”相关,是“第2步 - 提高品质并扩大规模”部分的内容,用于说明在拥有3张照片或更多(正视图、左侧视图、右侧视图)后,可拍下图像并结合新提示,获得面部上方的角度,以提高角色创建的品质和规模。

此时,我们至少应该有3张照片或更多:

  • 正视图(1-2 张图片)
  • 左侧视图(1-2 张图片)
  • 右侧视图(1-2 张图片)

让我们拍下我们的图像并将其与新提示结合起来,让我们获得面部上方的角度。我们仍然想使用初始种子编号。确保重新生成直到满意为止,请记住我们希望获得尽可能接近现有选择的输出。

street style photo of a woman, extreme high-angle closeup, from above, center view, shot on Kodak Gold 200--seed 158479589

图片展示了四个角度的街拍照片,均为一位穿着棕色外套、戴着棕色帽子的女性。上左为正面,上右为右侧,下左为左侧,下右为俯视。这些照片是Mj中创建角色时提高品质并扩大规模的示例,与上下文提到的要画出脸、正面、左侧、右侧、俯视、仰视等角度相呼应,旨在尽可能覆盖更多角度,以丰富角色的视觉呈现。

对下面的角度重复这个过程,记得我们一开始看的图片,我们要画出脸,正面,左侧,右侧,俯视,仰视,尽可能覆盖更多的角度。

street style photo of a woman, extreme low-angle, from below, centered view, shot on Kodak Gold 200 --seed 158479589


第 3 步 - 结合前面所有内容

所以在这一点上,我们投入了 7 张以上的图像作为灵感基础,我们选择的所有图像都代表了面部的不同角度。我们的模特很可能会穿一件黄色夹克。因为我们所有的灵感图片都有黄色或金色夹克。现在我们不再添加 --seed 不需要它,我们不想再从相同的噪声模式开始。

<right-side 1> <right-side 2> street style photo of a woman, shot on Kodak Gold 200

举例:将五个垫图的url 全部放进去

https://s.mj.run/QgErFhEZUoIhttps://s.mj.run/Uye_O920a3o https://s.mj.run/GuZtFgd-OmM https://s.mj.run/c9FnKCREhAw https://s.mj.run/GgKYzh2ocYQ https://s.mj.run/Ijfd3ukNZi8 street style photo of a woman, shot on Kodak Gold 200 --v 5

正如我们在这里看到的,并非每张图片都很好,可能需要重新生成。然而,大多数时候有 2 个或更多可用的。

图片展示了四张风格相似的女性街拍照片,均为一位穿着棕色外套、戴着棕色帽子的女性。照片背景为城市街道,有行人和模糊的建筑。这四张照片与上下文紧密相关,是上文提到的将五个垫图url全部放进去后,从Midjourney得到的图片,用于说明在无需使用seed的情况下,MJ能使用上传照片作为灵感,生成一致的模型,与最初的基准模型很像,可视为生成更多“Alices”的新基线。

让我们放大第3张图片,在这里放一个 Midjourney 屏幕截图,这就是我们填充了之前各个视角的人像,从 Midjourney 得到的图。跟我们最初的基准模型还是很像的。

图片展示的是在Mj中创建角色时,结合前面内容生成的图片。上方有五个链接,分别指向不同图片。下方是两张图片,一张为穿着橙色外套、戴着棕色帽子的女性街拍照片,另一张为穿着蓝色外套、戴着棕色帽子的女性街拍照片。图片下方有U1、U2、U3、U4、V1、V2、V3、V4等标识。该图片与上下文关系紧密,是对上文提到的将五个垫图url放进去后,Midjourney生成的图片展示,用于说明无需使用seed即可获得一致模型,MJ可使用上传照片作为灵感。

我们现在无需使用 seed 即可获得一致的模型。相反,MJ 正在使用上传的照片作为灵感。我们现在可以将其视为生成更多“Alices”的新基线。现在这是我们的 gen1。

<right-side 1> <right-side 2> street style photo of a woman, shot on Kodak Gold 200

图片展示了一位女性的街拍照片。她戴着一顶棕色针织帽,穿着黄色外套和浅蓝色内搭,面带微笑,背景模糊,隐约可见行人和店铺,营造出一种温馨的氛围。这张照片是文档中“如何在Mj中创建一致的角色”教程中,结合前面内容生成的gen1示例图,用于说明无需使用seed即可获得一致模型,MJ可从上传照片作为灵感生成更多“Alices”的情况。


第 4 步 - 将我们的模型放在不同的场景中

所以到目前为止,我们已经生成了 1:1 的图像,我们还没有使用纵横比或广角镜头。实际上,我们根本没有告诉 MJ 任何细节。
因此,让我们尝试将我们的模型放入工作室拍摄。我们会改变背景,镜头类型,试着让她微笑,改变灯光和电影类型。

<right-side 1> <right-side 2> studio photo, white background, of a woman in a white outfit, ultra wide shot, full body, center view, studio lighting, shot on Fujifilm Pro 400H --ar 16:9

通过移除一些对象,我们可以让它看起来更好

图片展示了在Mj中创建角色时,将模型放在不同场景中的效果。画面中,一位女性身着白色外套搭配橙色内搭,头戴白色帽子,站在白色背景前,光线从一侧照射,形成光影效果。图片位于“如何在Mj中创建一致的角色”文档中“第4步 - 将我们的模型放在不同的场景中”部分,是对该步骤的视觉呈现,展示了通过移除一些对象后,场景看起来更好的效果。

这是其中一个镜头

图片展示了一位站在室内的女性,她身着白色外套,内搭橙色衣物,头戴白色帽子,面带微笑。背景为白色墙面,左侧有黑色三脚架和灯,右侧有黑色门。该图片位于文档“如何在Mj中创建一致的角色”中“第4步 - 将我们的模型放在不同的场景中”部分,是其中一个镜头的呈现,用于说明通过移除一些对象,可以让场景看起来更好,还可尝试穿上不同颜色的衣服来丰富场景。

让我们试试别的。我们可以尝试穿上一些非常疯狂的衣服,这里是相同的提示,但颜色在粉红色和黄色之间变化。

<right-side 1> <right-side 2> street style photo of a woman in a pink fluffy blowup dress, ultra wide shot, full body, center view, smiling::2 studio lighting, shot on Fujifilm Pro 400H --ar 9:16

图片展示了四张风格相似的女性照片,均为文档中“

我们可以把“Pink fluffy blowup dress 粉色蓬松充气裙”改成“LEGO dress”

图片展示了四张风格相似的女性肖像照片。照片中女性身着橙色毛衣,搭配彩色方块图案的裙子,背景为昏暗的街道场景。照片呈现出不同的角度和表情,有侧脸、正面等。这些图片与文档中“将我们的模型放在不同的场景中”这一内容相关,可能是用于展示在不同场景下模型生成的图像效果,以体现模型在不同场景下的表现能力。

有细心的伙伴可能会发现,为什么 Alice 不会笑,好吧,我们得到的 gen0 图片恰好是这种情况。但是通过一些小技巧和重新生成 ,可以让她微笑。通过将以下内容添加 smiling::5到提示中。

studio photo, white background, of a woman in a white outfit, ultra wide shot, full body, center view, smiling::5 studio lighting, shot on Fujifilm Pro 400H --ar 16:9

图片展示了在Mj中创建角色时,将模型放在不同场景下的效果。画面中是一位穿着白色上衣、戴着橙色帽子的女性,背景为街道场景,有行人和建筑物。图片被分成了四部分,每部分女性的发型和表情略有不同,如有的卷发、有的直发,有的面带微笑、有的表情较为严肃。这些变化体现了通过修改提示,可让角色在不同场景中呈现多样化的形象。

但,感觉她有点不想笑的样子。我们可以修改提示,并从中添加/减去,有时我们需要与 MJ 斗智斗勇,有时结果很好,有时也很糟。


第 5 步 - 尝试其他场景

这里我们开始有一些问题,她会开车吗?她可以去健身房吗?
因为最开始是从街头照片中制作了“灵感”图像,所以我们不断得到街头照片风格的照片。所以当我们想要制作其他类型的照片时,使用街头风格的照片可能效果不太理想。更好的方法是在训练图像时使用干净的白色背景。
无论如何,让我们看看目前能得到什么。
我们先让她成为一名赛车手,不指定使用或不使用头盔。

A woman driving a car, a woman sitting in the driver seat holding the steering wheel, wearing a racing outfit, and wears a white balaclava, ultra-wide shot from outside the car, center view, shot on Fujifilm Pro 400H --ar 16:9

图片展示了一位女性坐在车内的场景。她戴着棕色帽子,留着卷曲的头发,身着白色上衣。背景中能模糊看到街道和其他车辆。该图片对应文档中“让她成为一名赛车手”的内容,是在探索将以街头照片为灵感制作的角色应用到其他场景时所生成的图像,体现了从街头风格照片出发,尝试让角色处于驾驶场景的效果,反映了在Mj中创建一致角色时对不同场景的尝试过程。

让我们把模特放在太空舱里。现在我们看到了使用街头风格照片作为灵感的缺点。背景都是街道,我们可以尝试提示绕过它。

A woman in a space suit, wearing a helmet, a woman sitting in a space capsule, ultra-wide shot on the interior of the capsule, center view, HDR, crisp shot on ARRI --ar 16:9

图片展示了在Mj中创建角色时尝试不同场景的效果。画面中是一位穿着橙色外套、戴着白色头盔的女性,背景为地铁站。图片被分成了四个部分,展示了女性在不同角度和位置的场景,如侧脸、背对镜头等。这些图片与上下文的关系是,通过在提示中添加“星际空间背景”来删除“街道”背景,展示了尝试其他场景后的效果,为角色创建提供了参考。

.我们设法通过在提示中添加“星际空间背景”来删除一些“街道”背景。

A woman in a white space suit with red details, wearing a helmet :: a woman sitting in a space capsule, ultra-wide shot on the interior of the capsule, center view, HDR, crisp shot on ARRI, interstellar space background --ar 16:9

图片展示了四张照片,均为一位穿着橙色衣服、戴着白色头盔的女性,背景是街道场景。这与上文提到的将模特置于太空舱但因使用街头风格照片作为灵感,导致背景仍是街道的情况相符,体现了使用街头风格照片制作其他类型照片时出现的问题,即背景难以符合新场景需求,即使尝试在提示中添加“星际空间背景”等内容,仍未完全改变背景风格。

indoor::3 studio photo of a woman in a pink fluffy blowup dress, ultra wide shot, full body, center view, smiling:5 studio lighting, shot on Fujifilm Pro 400H --ar 9:16

图片展示了四张照片,均为一位卷发女子,身着橙色服装。女子处于不同室内场景,有的在有大窗户的室内过道,有的在有斜顶天窗的室内空间等。光线透过窗户洒入,营造出柔和氛围。图片位于介绍在Mj中创建一致角色的“尝试其他场景”部分,可能是通过不同场景设置生成的图像示例,用于说明在Mj中改变场景相关提示可得到不同效果的图像。

到这里是不是发现 MJ 真是太棒了,我认为仅此一项就非常强大。我可以使用 gen0 图像并进行附加提示,并使用 --seed 生成更多风格的 Alice 并重复这些步骤以获得 gen1 和基线。然后可以为不同的用例提供不同的灵感图像组合。
换为黄色

indoor::3 studio photo of a woman in a yellow fluffy blowup dress, smoke, fog, ultra wide shot, full body, center view, smiling:5 studio lighting, shot on Fujifilm Pro 400H --ar 9:16

图片展示了一位穿着黄色衣物的女性在室内场景中的四张不同照片。她或坐或站,姿态各异,背景是带有玻璃顶棚和绿植的室内空间。图片对应文档中“第5步 - 尝试其他场景”下“换为黄色”的内容,是对“indoor::3 studio photo of a woman in a yellow fluffy blowup dress,smoke,fog,ultra wide shot,full body,center view,smiling:5 studio lighting,shot on Fujifilm Pro 400H--ar 9:16”这一提示的图像呈现,直观呈现了黄色衣物在室内场景下的视觉效果。

再来一组雪地照

street style photo of a woman in a silver dress, in a snowy desert, ultra wide shot, 80mm, f2.0, center view, natural lighting, aurora borealis, shot on Agfa Vista Plus 200 --ar 9:16

图片展示了四张雪地场景的照片,均为一位穿着棕色上衣、灰色外套的女性。她或侧身、或正对镜头,背景是雪地、房屋和蓝天白云,画面中还有光晕效果。这些照片与文档中“再来一组雪地照”的内容对应,是对上文提到的“换为黄色”后尝试其他场景的展示,体现了在不同场景下角色的呈现效果。

结论

完全有可能使用这种技术来获得极其一致的角色,修改它们并将它们放置在不同的环境中。你也可以探索使用或不使用 --seed 编号。
我觉得这种技术类似于使用 ChatGPT 的提示技术,其中你的灵感图片作为你想要的先决条件。提示词决定了图的理想状态和质量。

收获

不要使用“街头风格”照片来创建您的灵感图像集。相反,创建一张更自然的肖像,然后创建中性姿势和图像。会让背景更容易去符合场景。

studio-style photo of a woman white background shot on Kodak Gold 200

使用 Kodak Gold 200 拍摄的干净背景女性工作室风格照片

图片展示了四张女性肖像照片,均为工作室风格,背景为单色。左上角女性金发卷发,穿着浅色上衣;右上角女性棕发微卷,穿着白色上衣;左下角女性金发微卷,穿着浅色衬衫;右下角女性棕发微卷,穿着白色上衣。这些照片与上下文提到的“不要使用‘街头风格’照片来创建您的灵感图像集,相反,创建一张更自然的肖像,然后创建中性姿势和图像,会让背景更容易去符合场景”相呼应,为创建一致角色提供了参考。

Midjourney 不像 Stable Diffusion。如果想要基于一个模型或自己的一致角色输出,还是得使用 Stable Diffusion 自定义模型来输出。