无需微调!IP-Adapater助力AIGC造型设计🧑‍🎨

ip-adapter是2023年由腾讯团队推出的用于文本到图像扩散模型的文本兼容图像提示适配器, 将图片作为提示prompt去引导stable diffusion生成图片。

平时我们用stable diffusion来生图,都要设计好精确的文本prompt来引导。但是一图胜千言,再好的文字描述也比不上一张参考图片中包含的丰富信息。

🤔对于我个人的使用体验来说,ip-adapter最惊喜的是能够无训练就快速进行风格转换(无需写提示词),而且生成的图片能够为造型设计带来不一样的灵感。

For Example......

🚗🐱汽车前脸+猫猫脸

🍎💓苹果+香水

💐🍃野兽派+Snoopy

一个可爱snoopy样式的花瓶~

使用ip-adapter进行造型设计 的关键就是参考图片和输入图片都必须是较高清的物体,比如上面的汽车和猫猫就都是明确的物体,如果ip-image是一幅画的话,那就是风格转换或者背景替换了。

参数范围 ⚠️

下面是平时使用ip-adapter时,觉得比较适合的参数范围,仅供大家参考~

  • strength-重绘幅度: 0.5-0.7之间

  • scale-ip_adapter的影响因子:0.7~0.9之间

  • num_inference_steps:20-30即可

一些官方效果

ip-adapter可以结合diffusers库的各种pipeline使用, 代码链接如下~

github.com/tencent-ail...

image variation

img2img

inpainting

模型 🧀

模型在huggingface.co/h94/IP-Adap... 下载,主要包括基于sdv1_5和sdxl的模型

vae模型下载链接: huggingface.co/stabilityai...

下面这篇文章介绍了ip-adapter不同模型的作用,可供大家选择参考~

blog.csdn.net/JuMengXiaoK...

上面介绍ip-adapter的效果,下面我们就来浅浅地解析一下ip-adapter的技术原理~

ip-adapter的技术框架

其实ip-adapter就是将文本特征和图像特征通过decouple cross attention合并在一起,再将decouple cross attention的特征跟潜在表示z做注意力机制,与stable diffusion的cross attention机制类似。

我们先来复习一下stable diffusion中,文本是如何做引导的:

可以从图中看到,文本特征与隐变量z实施交叉注意力机制,实现了信息的精密融合与注入,输入文本的交叉注意力计算公式为:

对于图像特征,使用CLIP提取,再将图像特征映射到跟文本特征一样的维度,输入图片的交叉注意力计算公式为:

最后将计算得到的注意力分数相加,注入unet的transformers 模块中。

这种将文本注意力和图片注意力分开直接相加的方法,在论文里也被称作解耦交叉注意力机制:

运行代码,打印unet的代码结构,我们可以看到每一层cross attention都被注入了IPAttnProcessor模块,IPAttnProcessor实现了decouple cross attention机制

js 复制代码
 (0): CrossAttnDownBlock2D(
      (attentions): ModuleList(
        (0): Transformer2DModel(
          (norm): GroupNorm(32, 320, eps=1e-06, affine=True)
          (proj_in): Conv2d(320, 320, kernel_size=(1, 1), stride=(1, 1))
          (transformer_blocks): ModuleList(
            (0): BasicTransformerBlock(
              (norm1): LayerNorm((320,), eps=1e-05, elementwise_affine=True)
              (attn1): Attention(
                (to_q): Linear(in_features=320, out_features=320, bias=False)
                (to_k): Linear(in_features=320, out_features=320, bias=False)
                (to_v): Linear(in_features=320, out_features=320, bias=False)
                (to_out): ModuleList(
                  (0): Linear(in_features=320, out_features=320, bias=True)
                  (1): Dropout(p=0.0, inplace=False)
                )
                (processor): AttnProcessor() 
              )
              (norm2): LayerNorm((320,), eps=1e-05, elementwise_affine=True)
              (attn2): Attention(
                (to_q): Linear(in_features=320, out_features=320, bias=False)
                (to_k): Linear(in_features=768, out_features=320, bias=False)
                (to_v): Linear(in_features=768, out_features=320, bias=False)
                (to_out): ModuleList(
                  (0): Linear(in_features=320, out_features=320, bias=True)
                  (1): Dropout(p=0.0, inplace=False)
                )
                (processor): IPAttnProcessor(
                  (to_k_ip): Linear(in_features=768, out_features=320, bias=False)
                  (to_v_ip): Linear(in_features=768, out_features=320, bias=False)
                )
              )

所以IP-Adapter的原理就是如此简单,其实就是将图片也作为prompt来引导生图过程了~

结尾 🦋

今天我们介绍了使用IP-Adapter为造型设计提供灵感的方法,也简单解释了一下IP-Adapter的原理~下次的文章将会介绍更多diffusion风格转换的方法,敬请期待哦

相关推荐
触底反弹18 小时前
给 Claude 装上 27 个「外挂」后,我直接起飞了!
人工智能·react.js
KaMeidebaby18 小时前
卡梅德生物技术快报|peg 修饰调控 MXene/WS2 异质结,氨气传感器制备与机理研究
大数据·前端·人工智能·架构·spark·新浪微博
ydyd2026042118 小时前
设备管理应用推荐2026深度测评!
大数据·人工智能·机器学习
美狐美颜SDK开放平台18 小时前
从采集到渲染:直播APP开发与实时美颜SDK技术实现全流程详解
人工智能·美颜sdk·直播美颜sdk·第三方美颜sdk·视频美颜sdk·美颜api
ws20190718 小时前
PCB扩产潮起,AUTO TECH China 2026吹响汽车智造集结号
人工智能·科技·汽车
小小测试开发18 小时前
1-Bit Bonsai Image 4B:仅 0.93GB 的本地图像生成模型,手机也能跑
人工智能·智能手机
Lumbrologist18 小时前
【C++】零基础入门 · 第 13 节:类与对象基础
java·c++·算法
志栋智能18 小时前
超自动化巡检:降低运维总成本(TCO)的有效路径
大数据·运维·网络·人工智能·自动化
LONGZETECH18 小时前
软硬协同+故障注入:无人机仿真维修与操控仿真底层算法逻辑拆解
大数据·c语言·算法·3d·unity·无人机
慧海灵舟18 小时前
阿里 AgenUI 开源库前后端实战教程 —— Day 2:后端接入 Spring AI Alibaba & 鸿蒙端引入 AgenUI
人工智能·spring·开源·写文章,赢小鸿ai