【AIGC】prompt工程从入门到精通--图片生成专题

本文为系列教程【AIGC】prompt工程从入门到精通的子教程。

一、介绍

与文本提示相比,找到最佳的提示词来生成完美的图片并没有那么成熟。这可能是因为创建对象自身的挑战,这些对象基本上是主观的并且往往缺乏良好的准确性度量方法。

本指南涵盖了基本的图像提示技术,并且我们强烈建议您查看本章末尾的优秀资源。

二、大模型作图工具

图片生成工具主要由Midjourney(MJ)、Stable Diffusion(SD)与DALL-E三个主流算法延伸而来,他们的区别可以参考以下两篇文章:
Stable Diffusion、DALL-E 2、MidJourney的区别是什么?
理解DALL·E 2, Stable Diffusion和 Midjourney的工作原理
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1、DALL-E 3 重视逻辑

作图资源:官网
基于 GPT 架构,适合大部分日常工作流中,随时进行配图生成的创作。基于 GPT,允许我们以对话的形式去一步步生成我们想要的图像。而基于 GPT 的优秀理解能力,DALL-E 3 能理解复杂的细节对图像进行迭代。

DALL-E 2使用数以百万计的图片数据进行训练,其输出结果更加成熟,非常适合企业使用。当有两个以上的人物出现时,DALL-E 2产生的图像要比Midjourney或Stable Diffusion好得多。

2、Midjourney 重视创意

作图资源:官网
生成的图片极具美感,适合创意专业人士,比如艺术家、设计师等。MJ 由独立研究实验室Midjourney Inc.开发,利用生成对抗网络,架构在 Discord平台,能理解各种不同的艺术风格,不论是超现实主义、还是抽象化画作,都能通过文本提示进行生成。

Midjourney则是一个以其艺术风格闻名的工具。Midjourney使用其Discord机器人来发送以及接收对AI服务器的请求,几乎所有的事情都发生在Discord上。由此产生的图像很少看起来像照片,它似乎更像一幅画。

3、Stable Diffusion 重视控制

作图资源: r/StableDiffusion
适合批量生成相同风格类型的图片,比如淘宝店家的人像模特等。SD 基于潜在扩散模型,通过升噪降噪生成图像,能通过不同的大模型、lora、cn,对生成的图像风格、主体、服饰、动作、深度等做出强有力的控制。

Stable Diffusion 是一个开源的模型,人人都可以使用。它对当代艺术图像有比较好的理解,可以产生充满细节的艺术作品。然而它需要对复杂的prompt进行解释。Stable Diffusion比较适合生成复杂的、有创意的插图。但在创作一般的图像时就显得存在些许不足。

三、图片生成prompt

三大主流模型都是国外的,所以用英文写prompt是必备技能。

1. 风格校准器(Style Modifiers)

通常在rendered in(渲染)后填入需要渲染的风格。常用风格有:

photorealistic: 逼真的
by greg rutkowski: 作者:格雷格·鲁特科斯基
by christopher nolan: 克里斯托弗·诺兰
painting: 绘画
digital painting: 数字绘画
concept art: 概念艺术
octane render: 辛烷渲染
wide lens: 广角镜头
3D render: 3D渲染
cinematic lighting: 电影灯光
trending on ArtStation: ArtStation 上的热门话题
trending on CGSociety: CGSociety 上的趋势
hyper realist: 超现实主义者
photo: 照片
natural light: 自然光
film grain: 胶片颗粒

示例( DALLE):

pyramid

在这里插入图片描述

A pyramid made of glass, rendered in Unity and tinted red

在这里插入图片描述

2. 质量增强器(Quality Boosters)

“质量增强器”是添加到提示中以提高生成图像的某些非样式类型的质量术语,例如:“amazing”、“beautiful”和“good quality”都是质量增强器,可以用于改善生成图像的质量。

3. 重复

在提示中重复相同的词语或者类似短语会导致模型在生成的图片中强调该词语。但注意这种方法并不完美,使用权重(下一篇文章)通常是一个更好的选择。

A beautiful painting of a mountain next to a waterfall.

在这里插入图片描述

A very very very very very very very very very very very very very very very very very very very very very very beautiful painting of a mountain next to a waterfall.

在这里插入图片描述

A planet with aliens

在这里插入图片描述

A planet with aliens aliens aliens aliens aliens aliens aliens aliens aliens aliens aliens aliens

在这里插入图片描述

4. 加权

一些模型(如 Stable Diffusion、Midjourney 等)允许你对提示中的词语进行加权。这可以用于强调生成图片中的某些词语或短语。它还可以用于减弱生成的图片中某些词语或短语的影响。
示例(Stable Diffusion )

mountain

在这里插入图片描述

# 把树的权重设置为负数,所以它们不会出现在生成的图片中
mountain | tree:-10

在这里插入图片描述

A planet in space:10 | bursting with color red, blue, and purple:4 | aliens:-10 | 4K, high qualit

在这里插入图片描述

5. 修复变形生成

变形生成在许多模型中都是一个常见问题,特别是在人体部位(如手、脚)上。通过良好的negative prompt,可以在一定程度上解决这个问题。但是注意:这个技术并不是一直奏效,因此您可能需要多次尝试才能获得满意的结果。 未来,这种提示技术应该是不必要的,因为模型会不断改进。
在这里插入图片描述

示例(Stable Diffusion v1.5 ):

studio medium portrait of Brad Pitt waving his hands, detailed, film, studio lighting, 90mm lens, by Martin Schoeller:6

在这里插入图片描述
最新版:
在这里插入图片描述

studio medium portrait of Brad Pitt waving his hands, detailed, film, studio lighting, 90mm lens, by Martin Schoeller:6 
negative prompt: disfigured, deformed hands, blurry, grainy, broken, cross-eyed, undead, photoshopped, overexposed, underexposed, lowres, bad anatomy, bad hands, extra digits, fewer digits, bad digit, bad ears, bad eyes, bad face, cropped: -5

在这里插入图片描述
新版(反而有问题):
在这里插入图片描述

使用类似的反向提示语也可以帮助处理其他身体部位。

6. 镜头(shot)类型

镜头类型是指电影制作中用于捕捉场景内不同视角和视觉效果的各种摄像机角度和构图。场见的镜头类型包括:

Wide Shot/Establishing Shot: 广角镜头/定场镜头
Long Shot: 长镜头
Full Shot: 全景图
Medium Shot: 中景
Cowboy Shot: 牛仔镜头
Medium Close-Up: 中景特写
Close-Up: 特写
Extreme Close-Up: 极端特写
Two-Shot: 两次镜头
Over-the-Shoulder Shot: 过肩镜头
Point-of-View Shot (POV): 视点拍摄 (POV)
Reaction Shot: 反应镜头
Insert Shot: 插入镜头
Cutaway Shot: 剖面镜头
Low Angle Shot: 低角度拍摄
High Angle Shot: 高角度拍摄
Dutch Angle/Tilted Shot: 荷兰角/倾斜镜头
Aerial Shot: 空中拍摄
Tracking Shot: 追踪镜头
Dolly Shot: 多莉镜头
Steadicam Shot: 斯坦尼康拍摄
Crane Shot: 起重机镜头
Handheld Shot: 手持拍摄
Whip Pan Shot: 鞭盘镜头
Zoom Shot: 变焦拍摄
Rack Focus Shot: 机架对焦拍摄
Split Screen Shot: 分屏截图
Freeze Frame Shot: 定格拍摄
Slow Motion Shot: 慢动作镜头
Fast Motion Shot: 快速动作拍摄
Montage Shot: 蒙太奇镜头
Cross-Cutting Shot: 横切镜头
Bird's Eye View Shot: 鸟瞰图
Worm's Eye View Shot: 虫眼视图拍摄
Reverse Shot: 反向镜头
Reaction Shot: 反应镜头
Panning Shot: 平移拍摄
Tilt Shot: 倾斜拍摄
Follow Shot: 跟拍
Static Shot: 静态镜头
Establishing Drone Shot: 建立无人机拍摄
Underwater Shot: 水下拍摄
POV Drone Shot: POV 无人机拍摄
Crash Zoom Shot: 崩溃变焦镜头
Snorricam Shot: 斯诺里卡姆镜头
Tracking POV Shot: 追踪 POV 镜头
Vertigo Shot (Dolly Zoom): 眩晕镜头(移动变焦)
Flashback Shot: 闪回镜头
Flashforward Shot: 快闪镜头
Static Long Take Shot: 静态长镜头
astronaut standing in the street, Shot type, HD, 4K, --no blur, --no distortion

把上面"Shot type"替换后:
在这里插入图片描述

7. Midjourney使用

属于一个专门的专题,直接看原网页(或者后期我看需要单独出一版)。
注意其他绘图引擎的prompt技巧(比如前面讲的6点)同样适用于Midjourney.

使用连接:

https://learnprompting.org/docs/tooling/IDEs/intro#image-only-ides

NameHosted SolutionOpen SourceResearch FocusedBusiness ModelLaunchedModalitiesSupported Providers
DALL·EBuy CreditsText2ImageOpenAI DALLE
Dream StudioBuy CreditsText2ImageStable Diffusion
PatienceBuy CreditsText2ImageStable Diffusion, OpenAI
getimg.aiText2Image, AIEditor

三、 进阶方案

3.1 利用文本LLM生成作图llm的prompt

可参考:chatGPT生成Midjourney的prompt

参考

Image Prompting
Azure AI Services

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/256679.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

科普小知识-3D 打印是什么?

3D 打印是什么?作为近年来备受关注的前沿科技,3D 打印技术正在不断改变着制造业、医疗领域、艺术设计等多个领域的面貌。其又被称为增材制造,是一种通过电脑设计,逐层堆叠材料来创建三维物体的技术。 3D 打印的基本原理 3D 打印…

NLP自然语言处理学习笔记

参考:NLP(自然语言处理)介绍 - 知乎 (zhihu.com) 一、NLP是什么 自然语言处理( Natural Language Processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自…

DOS 批处理 (二)

DOS 批处理 1. 基础 DOS 命令1.1 基础命令1.2 文件系统操作1.3 文件夹管理1.4 文件管理1.5 网络相关1.6 系统管理1.7 IF、FOR和NETIFFORNET 1. 基础 DOS 命令 command /? 查找帮助DOS命令不区分命令字母的大小写 C:\Users\Administrator>echo 1 1 C:\Users\Administrator…

Mac电脑统计分析绘图 GraphPad Prism 10 最新 for Mac

GraphPad Prism 10是一款强大的科学数据分析和可视化软件,提供了丰富的统计工具、数据可视化选项和报告生成功能。它使用户能够更轻松地分析和解释实验数据,以支持科学研究和决策。 数据导入和整理:GraphPad Prism 10支持从多种数据源导入数据…

【开源】基于JAVA语言的农家乐订餐系统

项目编号: S 043 ,文末获取源码。 \color{red}{项目编号:S043,文末获取源码。} 项目编号:S043,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 用户2.2 管理员 三、系统展示四、核…

Apache+mod_jk模块代理Tomcat容器

一、背景介绍 最近在看Tomcat运行架构原理, 正好遇到了AJP协议(Apache JServ Protocol). 顺道来研究下这个AJP协议和具体使用方法. 百度百科是这么描述AJP协议的: AJP(Apache JServ Protocol)是定向包协议。因为性能原因,使用二进制格式来传输…

Java的三种代理模式实现

代理模式的定义: Provide a surrogate or placeholder for another object to control access to it.(为其他对象提供一种代理以控制对这个对象的访问。) 简单说,就是设置一个中间代理来控制访问原目标对象,达到增强原…

JAVA导出PDF(一)

思路一:直接导出pdf 使用freemarker和itext把html转pdf,存在中文乱码,宋体不识别,需下载simsun.ttc字体,空白占位符不识别等等问题,对前端依赖性较大,不推荐; 适用范围:…

[Geek Challenge 2023] klf_2详解

考点 SSTI、join拼接绕过 fuzz测试后发现过滤了很多关键字 我们先试试构造__class__ {% set podict(po1,p2)|join()%} //构造pop {% set alipsum|string|list|attr(po)(18)%} //构造_ {% set cl(a,a,dict(claa,ssa)|join,a,a)|join()%} //构造__class__ {% set …

人工智能企业引入S-SDLC,推动安全能力大跃升,保障AI技术体系深化落地

某人工智能公司是国际知名的上市企业,核心技术处于世界前沿水平。多年来,该企业在智慧教育、智慧医疗、智慧城市、智慧司法、金融科技、智能汽车、运营商、消费者等领域进行深度技术赋能,深入推进各个行业的智能化、数字化转型建设。 人工智能…

微服务2 Docker学习 P42-P60

Docker学习视频https://www.bilibili.com/video/BV1LQ4y127n4?p42&vd_source8665d6da33d4e2277ca40f03210fe53a 文档资料: 链接:https://pan.baidu.com/s/1P_Ag1BYiPaF52EI19A0YRw?pwdd03r 提取码:d03r Docker 其他笔记 服务器容器化-docker(全…

labelme等标注工具/数据增强工具输出JSON文件格式检查脚本

标注的文件太多了,还有用数据增强工具生成了一票的新数据。在转换或使用训练时候会报错,错误原因是json中语法有问题,这样会中断程序运行,调试造成很大困扰。 检查确实最后有问题,多写了一次 写一个脚本,用…