返回博客
人工智能 2025年4月7日 12 分钟阅读 · 3141 字

AI 图像生成全攻略:Midjourney、Stable Diffusion 与 DALL·E 3 对比

从文生图到图生图,掌握主流 AI 绘图工具的核心技巧与商业应用

#Midjourney #Stable Diffusion #DALL·E #AI绘画
本文由 AI 辅助生成,经人工审核发布

AI 图像生成是人工智能领域最直观、最令人震撼的应用之一。从一句话生成精美画作,从草图渲染出逼真照片,AI 绘画工具正在重新定义创意工作的边界。Midjourney 以艺术品质著称,Stable Diffusion 以开源灵活性见长,DALL·E 3 以语义理解领先。本文将全面对比这三大工具,并深入讲解核心技巧和商业应用。

三大工具概览

维度Midjourney V6Stable DiffusionDALL·E 3
开发商Midjourney Inc.Stability AIOpenAI
开源
使用方式Discord / 网页版本地部署 / 云端ChatGPT / API
模型版本V6 / V6.1SDXL / SD3DALL·E 3
最大分辨率2048×2048自定义(可达4K+)1792×1024
提示词理解中等,需特定语法依赖模型和标签优秀,自然语言即可
图像质量艺术感强,审美高灵活可控,质量均衡写实感强,语义准确
中文支持有限依赖模型支持
价格$10/月起免费(本地)/ 按量(云)ChatGPT Plus / API
适合场景创意设计、艺术创作商业批量生成、定制化概念验证、内容创作

Midjourney V6 使用指南

Midjourney 以其独特的艺术审美成为设计师和艺术家的首选。V6 版本在写实度、文字渲染和细节表现上都有显著提升。

基础使用

Midjourney 目前支持 Discord 和网页版两种使用方式。

Discord 方式:

/imagine prompt: A serene Japanese garden in autumn,
red maple leaves, stone lantern, koi pond, soft morning light,
cinematic composition, 8K detail --ar 16:9 --style raw --v 6

网页版(alpha): 提供更直观的界面,支持图像混音、风格参考等高级功能。

核心参数详解

参数说明示例
--ar宽高比--ar 16:9--ar 9:16--ar 1:1
--v模型版本--v 6--v 6.1
--style风格倾向--style raw(减少默认美化)
--s风格化程度(0-1000)--s 250(默认),--s 0(最写实)
--chaos多样性(0-100)--chaos 50(结果更多样)
--stylize艺术化程度--stylize 600
--no负面提示--no people, text
--seed随机种子--seed 12345(可复现)
--c产生变化(0-100)--c 50
--cref角色参考--cref [图片URL]
--sref风格参考--sref [图片URL]

提示词结构

Midjourney 的最佳实践是”主题 + 环境 + 光线 + 风格 + 参数”:

[主体描述], [环境/背景], [光线/氛围], [风格/艺术家], [技术参数]

示例:
A young woman in a white linen dress  ← 主体
standing on a cliff overlooking the ocean at sunset ← 环境
golden hour lighting, warm tones ← 光线
photorealistic, shot on 35mm film, depth of field ← 风格
--ar 3:2 --style raw --v 6 ← 参数

进阶技巧

1. 角色一致性(Character Reference)

使用 --cref 可以在多张图片中保持角色外观一致:

第一张:
/imagine a girl with red hair, green eyes, freckles --cref --ar 2:3

后续图片(使用第一张作为参考):
/imagine the same girl in a coffee shop --cref [第一张URL] --cw 100

参数说明:
--cw 100: 参考面部+头发+服装
--cw 0: 仅参考面部

2. 风格一致性(Style Reference)

/imagine a city skyline --sref [风格参考图URL] --sw 1000

--sw 控制风格强度(0-1000),越高越接近参考风格

3. 图像混合(Blend)

将多张图片混合:

/blend [图片1URL] [图片2URL] [图片3URL] --ar 16:9

4. 区域重绘(Vary Region)

在生成图片后,选择局部区域重新生成:

1. 生成图片后点击 "Vary (Region)"
2. 框选需要修改的区域
3. 输入新的描述
4. AI 只重绘选中区域,保持其余不变

Midjourney 商用政策

订阅方案月费商用权快速时长
Basic$103.3小时/月
Standard$3015小时/月
Pro$60有(隐身模式)30小时/月
Mega$120有(隐身模式)60小时/月

所有付费方案都包含商用权,生成的图片版权归使用者所有(Midjourney 保留使用你的图片用于训练的权利,除非使用隐身模式)。

Stable Diffusion 深度指南

Stable Diffusion 是最灵活的开源 AI 绘图工具。你可以本地部署、自由微调、精确控制每一个生成参数。

本地部署

方案一:Stable Diffusion WebUI(Automatic1111)

# 前提:NVIDIA GPU(建议8GB+显存),Python 3.10+

# 1. 克隆仓库
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui

# 2. 运行安装脚本(会自动下载依赖)
./webui.sh  # Linux/Mac
webui-user.bat  # Windows

# 3. 浏览器访问 http://localhost:7860

方案二:ComfyUI(节点式编辑器,更灵活)

git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
pip install -r requirements.txt
python main.py
# 访问 http://localhost:8188

方案三:云端(无需GPU)

使用 Replicate / fal.ai / RunPod 等平台
按次计费,无需本地硬件投入
适合不需要频繁生成的用户

模型选择

模型类型说明适用场景
SDXL Base基础模型,通用通用生成
SDXL Refiner精修模型高质量精修
SD3最新一代文字渲染、复杂场景
微调模型基于基础模型微调特定风格(写实/二次元/艺术)
LoRA轻量微调模型特定人物/风格/概念

常用模型获取渠道:

  • Civitai:最大的 SD 模型社区,海量免费模型
  • Hugging Face:官方模型和学术模型
  • Stability AI:官方发布渠道

LoRA 微调

LoRA(Low-Rank Adaptation)是一种轻量微调技术,可以在不修改基础模型的情况下,添加特定风格或概念。

# 使用 kohya-ss 训练 LoRA 的简化流程

# 1. 准备数据集(20-50张目标图片)
# 图片放在目录中,每张配一个文本描述文件

# dataset/
#   image001.jpg
#   image001.txt  -> "a photo of [sks] person, professional headshot"
#   image002.jpg
#   image002.txt  -> "[sks] person in casual wear, outdoor"

# 2. 配置训练参数
# 训练配置文件 lora_config.json
{
  "base_model": "SDXL_base.safetensors",
  "network_module": "networks.lora",
  "network_dim": 32,
  "network_alpha": 16,
  "learning_rate": 0.0001,
  "train_batch_size": 4,
  "max_train_epochs": 10,
  "resolution": 1024
}

# 3. 开始训练
python train_network.py --config lora_config.json

# 4. 使用训练好的 LoRA
# 在 WebUI 中将 LoRA 文件放入 models/Lora/
# 提示词中使用:<lora:my_model:0.8>
提示词示例:
a portrait of <lora:my_face:0.8> person in business attire,
office background, professional lighting, high quality

ControlNet:精确控制

ControlNet 是 Stable Diffusion 最重要的扩展之一,它允许你用参考图精确控制生成结果。

ControlNet 类型说明适用场景
Canny边缘检测线稿转成品
OpenPose人体姿态控制人物姿势
Depth深度图控制空间层次
Segment语义分割区域着色控制
Tile平铺放大增强
Scribble涂鸦草图生成
Lineart线稿插画上色

使用示例:

# 使用 ControlNet 进行线稿上色
from diffusers import StableDiffusionControlNetPipeline, ControlNetModel
import torch

# 加载 ControlNet 模型
controlnet = ControlNetModel.from_pretrained(
    "lllyasviel/sd-controlnet-lineart"
)

# 加载管道
pipe = StableDiffusionControlNetPipeline.from_pretrained(
    "runwayml/stable-diffusion-v1-5",
    controlnet=controlnet,
    torch_dtype=torch.float16
).to("cuda")

# 生成
image = pipe(
    prompt="a girl with blue hair, anime style, vibrant colors",
    image=lineart_image,  # 输入线稿图
    num_inference_steps=30,
    guidance_scale=7.5
).images[0]

提示词工程

Stable Diffusion 的提示词风格与 Midjourney 不同,更依赖权重和标签:

正向提示词(Positive Prompt):
(masterpiece, best quality:1.2), 1girl, solo, long black hair,
blue eyes, white summer dress, standing in flower field,
sunlight, bokeh, depth of field, ultra detailed, 8K

反向提示词(Negative Prompt):
(low quality, worst quality:1.4), deformed, blurry, bad anatomy,
extra fingers, watermark, text, signature

权重语法:

(关键词:1.5)    # 增加50%权重
(关键词:0.5)    # 降低50%权重
(关键词)        # 默认增加10%权重
((关键词))      # 嵌套增加权重
[关键词]        # 降低权重

DALL·E 3 使用指南

DALL·E 3 的最大优势是语义理解能力——你可以用自然语言描述复杂场景,它能准确理解并生成。

通过 ChatGPT 使用

用户:画一张图,一只橘猫坐在窗台上,窗外是雨天的城市夜景,
猫咪的表情若有所思,水彩画风格,暖色调。

DALL·E 3 直接生成符合描述的图片。
不需要特殊的提示词语法,自然描述即可。

通过 API 使用

from openai import OpenAI

client = OpenAI(api_key="your-api-key")

response = client.images.generate(
    model="dall-e-3",
    prompt="A futuristic city park in 2050, with floating gardens, "
           "holographic birds, children playing with AI robots, "
           "golden sunset, Studio Ghibli style",
    size="1792x1024",  # 或 1024x1024, 1024x1792
    quality="hd",       # hd 或 standard
    n=1
)

image_url = response.data[0].url
# 下载图片

DALL·E 3 的特色

优势:
- 自然语言理解最强,不需要学习提示词语法
- 文字渲染能力好(可以在图中生成可读文字)
- 与 ChatGPT 集成,可以迭代修改
- 语义准确度高,复杂场景理解好

局限:
- 风格相对统一,艺术感不如 Midjourney
- 定制化程度低,无法微调
- 价格较高

图像编辑 API

# DALL·E 2 的图像编辑功能(DALL·E 3 暂不支持)
response = client.images.edit(
    model="dall-e-2",
    image=open("original.png", "rb"),
    mask=open("mask.png", "rb"),  # 白色区域为待编辑区域
    prompt="replace the background with a beach at sunset",
    size="1024x1024"
)

提示词工程通用技巧

1. 结构化提示词

通用提示词公式:
[质量描述] + [主体] + [动作/姿态] + [环境/背景] +
[光线/氛围] + [风格/艺术家] + [技术参数]

示例:
best quality, masterpiece,   ← 质量
a young chef                 ← 主体
cooking in a modern kitchen  ← 动作/环境
warm lighting, steam rising  ← 光线/氛围
photorealistic, 50mm lens    ← 风格/技术

2. 风格关键词库

摄影风格:
photorealistic, 8K UHD, DSLR, 35mm film, bokeh,
golden hour, studio lighting, macro photography

艺术风格:
oil painting, watercolor, impressionist, art nouveau,
ukiyo-e, pixel art, concept art, matte painting

艺术家风格(Midjourney/SD):
by Greg Rutkowski, by Studio Ghibli, by Wes Anderson,
by Zaha Hadid, by Banksy

渲染风格:
octane render, unreal engine, cinematic, volumetric lighting,
ray tracing, subsurface scattering

3. 避免常见错误

错误1:提示词过长且矛盾
"beautiful landscape with mountains and ocean and desert and forest"
→ AI 不知所措,结果混乱

正确:聚焦核心元素
"mountain landscape with a serene lake, autumn colors"

错误2:堆砌质量词
"best quality masterpiece amazing stunning incredible"
→ 边际效益递减

正确:适量质量词 + 具体描述
"masterpiece, detailed landscape photography"

错误3:忽视负面提示词(SD)
→ 生成结果常有缺陷

正确:合理使用负面提示词
"low quality, deformed, extra limbs, watermark, text"

版权与商用政策对比

平台生成图片版权商用许可训练数据来源
Midjourney归用户(付费版)付费版可商用未公开
Stable Diffusion归用户可商用(注意模型许可)LAION 等公开数据集
DALL·E 3归用户可商用未公开

注意事项:

  • Stable Diffusion 模型本身的开源协议(如 SDXL 采用 CreativeML Open RAIL++-M)允许商用,但某些微调模型可能有限制
  • 使用 LoRA 模型时需检查其许可协议(Civitai 上有明确的商用许可标注)
  • AI 生成图片的版权归属在法律上仍有争议,建议在商业项目中明确标注”AI 生成”
  • 避免生成包含真实人物面孔或注册商标的图片用于商业用途

商业应用场景

场景一:电商产品图

需求:为一款新香水生成产品宣传图

Midjourney 提示词:
product photography of a luxury perfume bottle on marble surface,
rose petals scattered, soft pink lighting, water reflection,
elegant, minimal, advertising style --ar 4:5 --style raw --v 6

SD + ControlNet 方案:
1. 拍摄产品基础照片
2. 用 Depth ControlNet 保持产品轮廓
3. 用提示词改变背景和氛围
4. 多次迭代选择最佳效果

场景二:内容配图

需求:为博客文章"AI改变教育"生成配图

DALL·E 3:
"An illustration of a student learning with an AI tutor hologram,
books and digital screens around, warm and inspiring atmosphere,
flat illustration style, blue and orange color scheme"

场景三:角色设计

需求:为游戏设计角色

Midjourney + 角色参考:
1. 第一张:生成角色基础设计
   /imagine character design sheet, female warrior,
   silver armor, red cape, fantasy game style --ar 2:3

2. 后续场景使用 --cref 保持一致性
   /imagine the warrior in a forest battle scene
   --cref [第一张URL] --cw 50 --ar 16:9

3. 不同表情和姿势
   /imagine the warrior smiling, portrait
   --cref [第一张URL] --cw 100 --ar 1:1

场景四:批量生成

# 使用 Stable Diffusion API 批量生成
# 场景:为100个产品生成不同风格的配图

import requests
import os

products = [
    {"name": "手链", "style": "简约白色背景"},
    {"name": "耳环", "style": "复古棕色背景"},
    # ... 100个产品
]

for product in products:
    prompt = f"product photography, {product['name']}, {product['style']}, high quality"
    negative = "low quality, watermark, text"

    response = requests.post("http://localhost:7860/sdapi/v1/txt2img", json={
        "prompt": prompt,
        "negative_prompt": negative,
        "steps": 30,
        "width": 1024,
        "height": 1024,
        "batch_size": 4  # 每次生成4张供选择
    })

    images = response.json()["images"]
    for i, img in enumerate(images):
        with open(f"output/{product['name']}_{i}.png", "wb") as f:
            f.write(base64.b64decode(img))

总结

选择哪个工具取决于你的需求:

  • 追求艺术品质:选 Midjourney,其审美和细节无人能及
  • 需要精确控制和定制:选 Stable Diffusion,ControlNet 和 LoRA 提供无限可能
  • 追求易用和语义准确:选 DALL·E 3,自然语言描述即可生成

实际工作中,很多专业创作者同时使用多个工具——用 Midjourney 生成灵感草图,用 Stable Diffusion 精修定制,用 DALL·E 3 处理需要精确语义理解的场景。

AI 绘画不会取代人类创意,但它正在大幅降低创意落地的门槛。掌握这些工具,你的想象力就是唯一的限制。

下一篇文章将探索更前沿的领域——AI 3D 建模,从 NeRF 到 3D Gaussian Splatting 的技术演进。