还不会写 Midjourney 提示词?千万人气主编教你 3 个不翻车小妙招!

科技   2024-10-10 17:02   湖北  

 大家好我是花生~

很多读者应该都有加入了我们优设的 AI 学习交流群,有空的时候我也会在里面看看大家的讨论的内容、回答一些问题。

前几天正好帮一位小伙伴解决了一个 Midjourney 的出图疑问,其实问题并不难,但中间因为一个关键词的导致出图效果怎么都不对,我也差点被绕进去了,还好最后找到了合适的解决办法,没有翻车。

事后自己回想了一下整个过程,觉得其中的一些思路还是很有启发性的,于是决定把它整理出来分享给大家,看完之后你肯定也会有新的收获~

无法生成的 “叼”

 起因是有一个小伙伴问我,为什么在生成 “一个女生叼着玫瑰” 的图像时,出来的图都是一只手拿着花放在嘴边,生成了好多次结果都没有改变。

于是我让他把提示词和生成的图发给我看看。提示词写的是:

A famous Peking opera singer, with a rose in her mouth, gazing back into the distance, surrounded by flowers

我的第一感觉就是动词没写好,介词 in 不足以表达出 “叼” 这个动作,于是让他把动词描述的准确一点。

他也很快给了反馈 —— 加上动词后图像并没有什么改善,依旧是手拿着花。这次提示词写的是:

A famous Peking Opera singer, holding a rose, gazing back into the distance, surrounded by flowers

多了一个 “holding” 的动词,但是关键词 mouth 丢失了。

 于是我说先把 mouth 加上试试,然后动词可以不用 holding,因为这个词有 “手拿” 的意思,可能会对画面造成干扰,结果被告知 “叼” 这个词语用软件翻出来的就是 holding, 而且加了 mouth 之后图像依旧没有改善。当时我眉头一皱,发现事情好像没那么简单,于是飞速打开 Midjourney, 想看看问题到底出在哪里。

寻找问题根源

 我先是删除了动词 holding,改用了 carrying /keeping 等词语,画面依旧没有改变;于是又加上了 --no hands, fingers 参数,调整了关键词的顺序,甚至还用上了许久未用的 :: 权重参数 ,结果都行不通:要么就是原封不动的手和花一起出现,要么就是一起消失,根本无法呈现出 “用嘴叼着” 这个动作。

当时我的脑子里想到过很多可能性:或许是女性叼花的动作不常见?于是将主角换成男性,结果没有变化;又想到也许是 Midjourney 的模型无法理解 ”将花叼在嘴里“这个动作?于是又用了最新的 Flux.1 模型来生成图像,但依旧行不通。

 到这一步,我大概猜到了问题出在哪里——应该是某几个词语间存在的组合惯性,导致模型无法生成正确内容。生成式 AI 模型从本质上说都是概率预测模型,它们并不能像人一样理解物理世界的运行规律,而是通过训练去推测信息的组合概率,然后将概率最高的结果返回给我们。

比如你让 Midjourney 生成一张 “一匹马骑着宇航员” 的图像,它 100% 会生成一张 “宇航员骑着一匹马” 的图像,这是因为当 “人” 、“骑”、 “马” 三个元素组合在一起时,很明显是 "人骑着马" 的概率更高,而不是 “马骑着人” (不过最新的 flux 等模型已经有改善了这个问题了)。

类似地,在 "A girl holding a rose with her mouth" 这句提示语中, “女孩” 、 “玫瑰” 、 “嘴” 组合在一起时,模型训练的结果是 “女孩手拿着一只玫瑰靠近嘴边” 的概率更高,而非 “女孩用嘴叼着一朵玫瑰”。为了验证的自己的猜想,我测试了不同的物品对人物动作的影响。

 在提示词整体不变的情况下,我把 “花" 分别换成了刀、笔、暗器、草、树枝等对象,发现当生成刀、笔、暗器这些本身就是用手使用的物品时,即使加上了 --no hands, fingers,画面中手出现的概率依旧很高;而如果是生成纸片、草、树枝时,手基本不会出现,"用嘴叼住"这个动作也能成功生成。

 确认以上信息后,我就将图像的生成步骤拆分为 2 步:先生成绿色的树枝,然后再通过局部重绘的方式加上花朵。在多次尝试后,最终成功生成了 “一个女孩嘴里叼着一朵玫瑰” 的图像。

这个过程中我还发现,使用 Midjournety 官网的新局部重绘功能时,只描写需要提添加的物体效果并不好,必须完整地描述整体画面内容,才能得到理想的效果。

最好的解决方法

 那么最后这种方式就是最好的解决方法了吗?当然不是啦。

其实在意识到是元素组合惯性导致 "叼花" 这个动作无法正确呈现时,我就是尝试过另一种方法:先生成人像,然后通过局部重绘的方式把玫瑰花加上去,结果 “叼着” 这个动作依旧无法实现,而且玫瑰的生成效果也很差。

所以最后还是用最传统的方式解决了问题:先生成人物图像,然后生成一只同风格的玫瑰花,再放到 Ps 里合成在一起。这种方式可比前面的不断抽卡稳定高效多了,而且效果也更精致。我把两张叼花的图像一起发给那个提问的小伙伴时,他也觉得合成的那张效果更符合需求。

 之所以还是把全部的过程都写出来,是因为我觉得其中排查问题的思路还是很实用的。毕竟出现问题时只有先弄明白了问题的源头在哪里,才能有针对性地找到解决方法。

另外目前 AI 绘画工具主要起一个辅助的作用,我们不应该指望它能一次性解决所有问题,而要更理性地看待它。如果你发现无法用 AI 直接完成某个任务,就应该跳出预设的思路,尝试其他的、或更原始的处理方法,问题解决起来可能会更轻松。

那么以上就是本期为大家分享的 Midjourney 提示词优化思路,喜欢的话一定记得点赞评论支持一波,我会更有动力分享新的内容。

也欢迎大家关注「优设 AI 自学网」 和「优设微信视频号」,每天都会分享最新的 AIGC 资讯和神器,让你轻松掌握 AI 发展动态。

优设
优设品牌号,正专注于AI数字设计和AI应用探索。🌟我们百万内容号是@优设AIGC 优设网2012年成立至今,国内专业设计师平台。
 最新文章