Day24——早课 风格迁移:照片变油画

作者:

系列教程说明

这是「AI专家养成计划」系列教程的第47篇,共140篇。从AI零基础出发,每天进步一点点。早课以理论为主,帮你理解概念、建立框架——读完这篇,你就知道如何把一张普通照片变成任何艺术风格,理解风格迁移背后的原理和主流方法。

上篇回顾

昨天我们深入学习了提示词作画的核心技能。三个核心要点:

  • 提示词五大要素:主体、风格、构图、光影、技术参数——掌握这个公式,你就能写出80分以上的图像生成提示词
  • 负面提示词的价值:告诉AI”不要画什么”和”要画什么”同样重要,尤其画人物时能大幅减少”六指”等变形问题
  • 批量生成、从中挑选:AI图像生成是概率事件,不要指望一次出神作,批量生成后选最优才是正确工作方式

今天我们进入一个让人兴奋的领域——风格迁移。你有没有想过,把你拍的那张普通风景照,变成梵高的《星空》风格?或者把你家猫咪的照片,变成宫崎骏动画里的样子?风格迁移就是做这件事的AI技术。


什么是风格迁移?

简单来说,风格迁移(Style Transfer)就是把一张图片的”画风”搬到另一张图片上

打个比方:你拍了一张城市街景的照片(这是”内容”),你又特别喜欢莫奈的印象派画风(这是”风格”)。风格迁移做的事情就是——用莫奈的画风重新”画”一遍你的城市街景,保留原来的建筑、街道、人物,但笔触、色彩、质感全都变成莫奈的样子。

内容(Content):照片里的物体、场景、构图——”画的是什么”

风格(Style):笔触、色彩、纹理、质感——”怎么画的”

风格迁移就是把”是什么”和”怎么画”分离开来,然后自由组合。

一个有趣的类比:这就像翻译。原文是中文(你的照片),目标语言是法语(莫奈风格)。翻译出来的内容不变,但”表达方式”完全不同了。


风格迁移的三个时代

风格迁移技术经历了三代演进,每一代都带来了质的飞跃。

第一代:神经风格迁移(2015年)

2015年,德国学者Gatys发表了一篇开创性论文《A Neural Algorithm of Artistic Style》。这篇论文引爆了整个领域。

核心思路:用深度神经网络(VGG-19)分别提取图片的”内容特征”和”风格特征”,然后通过优化算法,生成一张新图片,使它的内容特征接近原图、风格特征接近参考画作。

打个比方:想象一个画家临摹。他先看懂原图的内容布局(内容特征),再研究参考画作的笔触和用色习惯(风格特征),然后用自己的理解把两者结合画出来。

优点:效果惊艳,理论上可以使用任何风格图

缺点:速度极慢,一张图要优化几百次迭代,等几分钟到几十分钟

第二代:快速风格迁移(2016-2020年)

既然每次都要优化太慢,那就训练一个”专用网络”——输入照片,直接输出风格化图片。

2016年,Johnson等人提出了”快速风格迁移网络”。思路很简单:先用第一代方法生成大量训练数据(原图→风格化图的配对),然后训练一个前馈网络学会这个映射关系。

类比:第一代是”现场作画”(每张都要从头画),第二代是”提前练好套路”(学了一种风格后,来一张照片就能秒出结果)。

优点:速度快,实现实时风格迁移(每张只需几十毫秒)

缺点:每种风格需要单独训练一个模型,换风格就得重新训练

第三代:基于扩散模型的风格迁移(2022年至今)

随着Stable Diffusion等扩散模型的崛起,风格迁移进入了全新的时代。这一代的方法不再需要专门训练,而是利用大模型本身就具备的”风格理解能力”来实现迁移。

核心工具

  • img2img(图生图):上传原图+风格描述提示词,AI在原图基础上重新绘制
  • ControlNet:精确控制原图的构图和线条,只改变风格
  • IP-Adapter:直接用一张风格参考图来控制生成风格,不用写提示词

类比:第一代是”照着菜谱做菜”(严格按算法来),第二代是”练好了的厨师”(只会做固定的几道菜),第三代是”米其林大厨”(你说想要什么味道,他就能做出来)。


三种主流风格迁移方法详解

现在我们来详细看看当前最实用的三种风格迁移方法。

方法一:img2img(图生图)

这是最简单、最直接的方法。

工作原理:把你输入的照片作为”起点”,加上风格描述的提示词,让AI在保留原图大致构图的基础上,按新的风格重新绘制。

关键参数——Denoising Strength(去噪强度)

这个参数控制”AI在原图基础上改动多大”。

去噪强度 效果 适用场景

|———|——|———|

0.2-0.3 只改变纹理和色彩,构图完全保留 轻微风格化,如照片加滤镜
0.4-0.6 适度改变,保留主体但画风明显变化 大部分风格迁移场景
0.7-0.9 大幅改变,只保留大致构图和色调 强烈的艺术化效果
1.0 完全重新生成,原图信息几乎丢失 不推荐用于风格迁移

实用提示词模板

`

[风格关键词] style of [艺术家/流派], [色调描述], [质感描述]

`

实际例子

`

输入:一张你拍的城市夜景照片

提示词:oil painting style, Van Gogh starry night,

swirling brushstrokes, vibrant blues and yellows,

thick impasto texture

去噪强度:0.5

输出:你的城市夜景变成了梵高《星空》风格的油画

`

方法二:ControlNet + 风格提示词

当你需要更精确地保留原图细节时,ControlNet是最佳选择。

工作原理:ControlNet会先从原图中提取”控制信号”(边缘线条、深度信息、人体姿态等),然后在生成过程中强制AI遵循这些信号,确保新图片的构图和原图一致。

常用的ControlNet模型

模型 提取内容 适用场景

|——|———|———|

Canny 边缘线条 建筑、产品、轮廓清晰的物体
Depth 深度信息 风景、室内场景
OpenPose 人体姿态 人物照片风格化
Lineart 线稿 插画、漫画风格转换
SoftEdge 柔和边缘 综合场景,效果更自然

和img2img的区别

  • img2img:构图可能偏移,细节可能丢失
  • ControlNet:构图精确保留,细节高度还原

类比:img2img像是”画家凭记忆重画”,ControlNet像是”画家对着原作临摹”——后者的还原度高得多。

方法三:IP-Adapter(图像提示适配器)

这是目前最”傻瓜式”的方法——你甚至不需要写提示词,只需要提供一张风格参考图

工作原理:IP-Adapter会从你提供的风格参考图中提取”风格特征”(色调、笔触、质感),然后把这些特征注入到图像生成过程中。

使用方式

  1. 准备一张你想要的风格图片(比如一幅莫奈的画)
  2. 上传到支持IP-Adapter的工具中
  3. 输入你的原图(或者用文字描述内容)
  4. 调整”风格强度”滑块
  5. 生成——你的图片就变成了莫奈风格

风格强度的作用

  • 强度低(0.3-0.5):保留更多原图特征,风格只是”点缀”
  • 强度中(0.5-0.7):平衡原图和风格,最常用
  • 强度高(0.7-1.0):强烈风格化,可能偏离原图

最大优势:不需要会写英文提示词,不需要了解专业术语——找一张你喜欢的画,AI就能学会它的风格。


经典艺术风格速查表

想要把照片变成某种特定风格?这里有一份速查表,直接复制提示词就能用:

油画风格

风格 提示词

|——|——-|

梵高星空 Van Gogh starry night style, swirling brushstrokes, bold colors
莫奈印象派 Monet impressionist style, soft brushstrokes, light and color
伦勃朗光影 Rembrandt style, dramatic chiaroscuro, rich dark tones
印象派 impressionist painting, loose brushwork, vibrant palette
表现主义 expressionist style, exaggerated colors, emotional brushwork

东方艺术风格

风格 提示词

|——|——-|

中国水墨画 Chinese ink wash painting, traditional brushwork, black and white
工笔画 Chinese gongbi painting, fine detailed brushwork, rich colors
浮世绘 Ukiyo-e style, woodblock print, flat colors, bold outlines
日本动漫 Studio Ghibli anime style, soft pastel colors, whimsical

现代艺术风格

风格 提示词

|——|——-|

波普艺术 Andy Warhol pop art style, bold flat colors, screen print
赛博朋克 cyberpunk style, neon lights, futuristic, dark atmosphere
像素艺术 pixel art, retro game style, 16-bit
蒸汽朋克 steampunk aesthetic, brass gears, Victorian era, mechanical
扁平插画 flat illustration, clean lines, minimal, vector art

摄影风格

风格 提示词

|——|——-|

胶片摄影 film photography, grain texture, vintage color grading
黑白摄影 black and white photography, high contrast, dramatic
航拍 aerial photography, bird’s eye view, landscape
电影级 cinematic still, anamorphic lens, color grading, film grain

实战工作流:照片变油画

下面是一个完整的”照片变油画”工作流,跟着做就能出效果。

第一步:选择工具

工具 特点 推荐度

|——|——|——-|

Stable Diffusion WebUI 免费开源,功能最全 ★★★★★
ComfyUI 节点式工作流,灵活强大 ★★★★★
Midjourney 效果最好,但需要付费 ★★★★
通义万相 免费,中文友好 ★★★

第二步:准备原图

  • 选择构图清晰的照片
  • 光线充足的照片效果更好
  • 避免过于复杂的场景(元素太多AI容易混乱)

第三步:配置参数

以Stable Diffusion WebUI为例:

  1. 切换到img2img标签页
  2. 上传你的照片
  3. 填写提示词(参照上面的速查表)
  4. 设置关键参数
  • Sampling method: Euler a 或 DPM++ 2M Karras
  • Sampling steps: 20-30步
  • Denoising strength: 0.4-0.6(核心参数)
  • CFG Scale: 7-12

第四步:迭代优化

第一次生成的结果可能不完美。调整策略:

  • 太像原图、风格不明显 → 提高去噪强度(+0.1)
  • 风格到位但丢失原图细节 → 降低去噪强度(-0.1)
  • 颜色不对 → 在提示词中指定色调(”warm tones” “cool blue palette”)
  • 某些区域不想改变 → 使用Inpaint局部重绘

常见问题与避坑

问题一:风格迁移后人脸变形

原因:AI对人脸非常敏感,风格化过程中容易产生扭曲。

解决

  • 使用ADetailer插件自动检测和修复人脸
  • 或者先用ControlNet-OpenPose锁定面部结构
  • 降低去噪强度到0.3-0.4,减少面部变形风险

问题二:风格迁移效果不一致

原因:随机种子不同,每次生成结果都不同。

解决:找到满意的种子值后固定它,微调其他参数。

问题三:原图细节丢失太多

原因:去噪强度太高。

解决:用ControlNet替代img2img,或者降低去噪强度到0.3以下。

问题四:风格”用力过猛”

原因:提示词中风格权重太高。

解决:降低风格关键词的权重,或使用混合提示词平衡内容和风格。


今日行动项

今天回去做一件事:

选一张你自己的照片(风景照、宠物照、自拍都行),用Stable Diffusion的img2img功能,尝试把它变成以下三种风格之一:

  1. 梵高油画风格:提示词 oil painting style, Van Gogh, swirling brushstrokes, vibrant colors
  2. 中国水墨画风格:提示词 Chinese ink wash painting, traditional brushwork, minimalist
  3. 赛博朋克风格:提示词 cyberpunk style, neon lights, futuristic, dark atmosphere

去噪强度从0.4开始,逐步调到0.6,对比不同参数下的效果差异。


📖 地铁深读:风格迁移的技术进化史

这个板块专为地铁通勤设计,每篇5-10分钟。不想深读可以跳过,不影响主线学习。

一个改变一切的”顿悟”时刻

2015年的一个深夜,德国图宾根大学的博士生Leon Gatys盯着VGG网络的中间层发呆。VGG是一个图像识别网络,能告诉你”这是一只猫”或”这是一辆车”。但Gatys发现了一个奇怪的现象:这些中间层不仅能识别内容,还能捕捉到图片的”风格”

什么是”风格”?说不清楚,但你看到就知道——莫奈的画和毕加索的画,风格完全不同。Gatys发现,如果计算中间层特征的”统计规律”(Gram矩阵),就能量化这种模糊的”风格”概念。

关键洞察:内容信息和风格信息藏在网络的不同层里。浅层捕捉纹理、笔触等”风格”细节;深层捕捉物体、场景等”内容”信息。它们可以被分离

这个发现意味着什么?意味着你可以取A照片的”内容”,加上B画作的”风格”,合成一张全新的图片。

论文发表后,整个计算机视觉界震动了。Prisma等风格迁移App一夜爆红,用户数以千万计。

Gram矩阵:风格的”数学指纹”

Gatys用一个叫Gram矩阵的数学工具来描述”风格”。

通俗理解:想象你用一个网格把图片分成很多小块。Gram矩阵记录的是”哪些特征经常一起出现”——比如”蓝色笔触”和”旋转纹理”经常同时出现,那就说明这种风格偏爱”蓝+旋转”的组合。

不同画作的Gram矩阵完全不同,就像指纹一样——莫奈的”指纹”和毕加索的”指纹”差异巨大。通过匹配这个”指纹”,AI就能把一种风格”复制”到另一张图片上。

从”慢工出细活”到”秒出图”

第一代神经风格迁移的最大问题是速度。每张图需要迭代几百次优化,等几分钟到几十分钟。

2016年,Johnson等人提出了”前馈网络”方案:先用大量数据训练一个专门的网络,让它学会”一键风格化”。训练好之后,输入一张照片,几十毫秒就能输出风格化结果——速度提升了几百倍。

但这带来一个新问题:每种风格都需要单独训练一个模型。你想做梵高风格?训练一个。想做莫奈风格?再训练一个。每种风格都要花几小时到几天训练,完全不灵活。

控制力的革命:ControlNet

2023年,中国学者张吕敏(Lvmin Zhang)提出了ControlNet,这是一个里程碑式的突破。

ControlNet解决了一个核心问题:在使用Stable Diffusion进行风格迁移时,如何确保生成的新图片和原图的构图一致?

之前的img2img方法有一个”两难困境”:去噪强度低了,风格化不够;去噪强度高了,原图细节丢失。用户只能在”不够风格化”和”丢失细节”之间做痛苦的权衡。

ControlNet的做法很聪明:它不从”生成端”控制,而是从”条件端”控制。先从原图中提取出结构信息(边缘、深度、姿态等),然后在生成过程中把这些结构信息作为”强制条件”注入,确保AI在”画”的时候必须遵循原图的构图。

这就像给画家一张精确的线稿——你可以自由选择画风和用色,但线条布局必须按线稿来。

ControlNet的意义超越了风格迁移:它开创了一种”精确控制AI生成”的范式,影响了后续所有图像生成工具的设计。

最新前沿:零样本风格迁移

2024年以来,研究者们在探索”零样本”风格迁移——不需要任何参考图或提示词,AI仅凭文字描述就能迁移任意风格。

例如,你只需要说”用19世纪日本浮世绘的风格重画这张照片”,AI就能理解并执行。这背后是多模态大模型(如GPT-4V、Gemini)对视觉风格的深层理解能力。

一个令人兴奋的趋势:风格迁移正在从”技术活”变成”表达工具”。过去你需要懂深度学习才能做风格迁移,现在只需要会说人话。这意味着,每个人都可以成为”数字艺术家”——你不需要会画画,只需要有想法,AI帮你把想法变成视觉作品。


今日总结

三个关键要点:

  • 风格迁移的核心原理:把图片的”内容”和”风格”分离,然后自由组合——内容保留原图的物体和构图,风格来自参考画作或提示词描述
  • 三种主流方法:img2img(最简单但控制力弱)、ControlNet+风格提示词(最精确)、IP-Adapter(最傻瓜式,只需一张参考图)
  • 去噪强度是核心参数:0.3-0.4保留原图细节,0.5-0.6平衡内容与风格,0.7以上强烈风格化但可能丢失细节

下篇预告

明天早上8点:Day25——早课 AI图像编辑:修图新方式。我们将学习如何用AI进行局部修图、背景替换、物体擦除等操作——Photoshop需要半小时的工作,AI可能只需要30秒。

今天下午5点:Day24——晚课 风格迁移实战。早课学理论,晚课动手练——我们将用Stable Diffusion的真实操作,一步步把你的照片变成油画、水墨画、动漫风格,完成你的第一组风格迁移作品。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注