目录
目录README.md

StyleTrans-第四届计图人工智能挑战赛-赛题二:风格迁移-008-打工小白-华南理工大学

image

简介

本项目包含了第四届计图挑战赛计图 - 风格迁移图片生成比赛的计图代码实现。基于逐步逐层风格,内容注意力注入方法在Dreambooth-lora的基础上进行改进,在赛题B榜中得分为0.4721,排名第8.

实现

StyleTrans 基于计图及其衍生套件实现: Jittor, Jtorch, diffusers.

预训练模型包含:stable-diffusion-2-1

简要思路

为了使得生成的图片在语义上与提示词更加对齐、在风格上与参考图片更为接近,我们修改了推理过程中UNet的自注意力模块、引入风格参考图像和内容参考图像,经过inversion后分别对自注意力计算中的查询向量,键值向量做向量注入,使得风格迁移的过程更加稳定。

其中风格参考图像从官方提供的参考图片中选取,内容参考图像由经风格18参考图片微调后的SD2.1模型生成。

测试环境

  • Ubuntu 20.04.6 LTS
  • jittor float32 推理需要30gb vram,在40gb vram环境中测试
  • cuda 11.6

安装

0. conda环境准备

conda create -n jdiffusion python=3.9
conda activate jdiffusion

1. 安装依赖

pip install ./jittor
pip install ./jtorch
pip install ./diffusers_jittor
pip install ./transformers_jittor
pip install accelerate==0.27.2
pip install peft==0.10.0
pip install einops

或者

pip install -r requirement.txt

2. 安装JDiffusion

pip install -e .

3. 其他依赖

If you encounter No module named 'cupy':

# Install CuPy from source
pip install cupy
# Install CuPy for cuda11.2 (Recommended, change cuda version you use)
pip install cupy-cuda112

训练

推理

按照赛事要求,我们提供了test.py推理所有结果 请确保: lora权重在:examples/dreambooth/checkpoints,子目录格式形如style_v1_00 数据在:examples/dreambooth/Bexamples/dreambooth/B2examples/dreambooth/B2_v2,其中后两者经过反转数据预处理和Blip获得训练描述

运行 test.py

cd examples/dreambooth
python test.py
关于
17.5 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号