python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > PaddleNLP ppdiffusers生成海报

PaddleNLP ppdiffusers 自动生成兔了个兔海报

作者:Livingbody

这篇文章主要为大家介绍了PaddleNLP ppdiffusers 自动生成兔了个兔海报示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

欢欢喜喜辞旧岁 🐰🐰🐰

辞旧迎新之际,来 AI Studio 一起 #欢喜迎兔年# !分享不同新年风俗,共享一段快乐时光!🐰🐰🐰

p>下面就开始我们的海报之旅🐰🐰🐰

下载PaddleNLP🐰🐰🐰

from IPython.display import clear_output
%cd ~
!git clone -b develop https://github.com/PaddlePaddle/PaddleNLP.git
clear_output() # 清理很长的内容

安装PaddleNLP🐰🐰🐰

%cd ~/PaddleNLP
!pip install -e ./
clear_output() # 清理很长的内容
print('安装完毕, 请重启内核')
安装完毕, 请重启内核

重启notebook🐰🐰🐰

安装ppdiffusers🐰🐰🐰

%cd ~/PaddleNLP/ppdiffusers/
!pip install -r ~/PaddleNLP/ppdiffusers/requirements.txt
clear_output() # 清理很长的内容
print('安装完毕, 请重启内核')

安装完毕, 请重启内核

diffusion文图生成🐰🐰🐰

选定diffusion模型🐰🐰🐰

下面推荐了部分二次元模型,想要了解更多的模型可以 点开这里的链接

ppdiffusers支持的模型名称huggingface对应的模型地址Tips备注
Linaqruf/anything-v3.0 (推荐!)huggingface.co/Linaqruf/an…二次元模型!
hakurei/waifu-diffusion-v1-3 (推荐!)huggingface.co/hakurei/wai…Waifu v1-3的模型,主要适合画二次元图像!(对比v1-2更好!)
MoososCap/NOVEL-MODEL (推荐!)huggingface.co/MoososCap/N…二次元模型!
Baitian/momocha (推荐!)二次元模型!
Baitian/momoco (推荐!)二次元模型!
hequanshaguo/monoko-e (推荐!)二次元模型!
%cd ~/PaddleNLP/ppdiffusers
/home/aistudio/PaddleNLP/ppdiffusers
import paddle
from ppdiffusers import StableDiffusionPipeline
# 加载模型
pipe = StableDiffusionPipeline.from_pretrained("Linaqruf/anything-v3.0")

图片生成🐰🐰🐰

# prompt: 戴眼镜坐在电脑边敲代码穿唐装的兔子, 可爱,大眼睛,高清毛绒
prompt = "rabbit wear glasses  beside the computer is writting code  in Tang costume for the Spring Festival is cute, big-eyed, high-definition plush"
images = pipe(prompt, guidance_scale=7.5, height=768, width=768)
print(len(images.images))
image = images.images[0]
image.save("/home/aistudio/0.png")

海报合成🐰🐰🐰

%cd ~
import cv2
def merge():
    back_img_path = '底图.png'
    # 加载底图模板
    back_img = cv2.imread(back_img_path, cv2.IMREAD_UNCHANGED)  # 捕获图像1
    print('底图尺寸: ', back_img.shape)
    # 加载生成图
    fore_img = cv2.imread('0.png', cv2.IMREAD_UNCHANGED)
    fore_img = cv2.resize(fore_img, (600, 600))
    rows, cols, channels = fore_img.shape
    print('生成图尺寸: ', fore_img.shape)
    dx, dy = 75, 390
    print('dx + rows,  dy + cols', dx + rows, dy + cols)
    print(back_img[dy:dy + cols, dx:dx + rows].shape)
    # 合并
    back_img[dy:dy + cols, dx:dx + rows] = fore_img
    merge_img_path = '海报.png'
    # 保存
    cv2.imwrite(merge_img_path, back_img)
    return merge_img_path
merge()
/home/aistudio
底图尺寸:  (1334, 750, 3)
生成图尺寸:  (600, 600, 3)
dx + rows,  dy + cols 675 990
(600, 600, 3)
'海报.png'

查看海报🐰🐰🐰

import cv2
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
img = cv2.imread("海报.png", -1)#读取的是bgr格式
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
plt.imshow(img)
plt.show()

以上就是PaddleNLP ppdiffusers 自动生成兔了个兔海报的详细内容,更多关于PaddleNLP ppdiffusers生成海报的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文