Diffusers代码学习: IP-Adapter Inpainting

news2025/1/20 12:06:19

IP-Adapter还可以通过Inpainting自动管道和蒙图方式生成目标图片。

# 以下代码为程序运行进行设置,使用Inpainting 的自动管道,

import os
os.environ["HF_ENDPOINT"] = "https://hf-mirror.com"

from diffusers import AutoPipelineForInpainting

# 程序需要能够支持加载图片

from diffusers.utils import load_image
import torch

# 以下代码加载模型,但是用的是Inpainting的自动管道

pipeline = AutoPipelineForInpainting.from_pretrained("diffusers/stable-diffusion-xl-1.0-inpainting-0.1",
torch_dtype=torch.float16).to("cuda")

# 同时加载IP-Adapter模型

pipeline.load_ip_adapter("h94/IP-Adapter", subfolder="sdxl_models", weight_name="ip-adapter_sdxl.bin")

# 设置IP-Adapter影响力

pipeline.set_ip_adapter_scale(0.6)

# 以下代码加载原始图片,参考图片和蒙图

mask_image = load_image(

"ip_adapter_mask.png")
image = load_image(
"ip_adapter_bear_1.png")
ip_image = load_image(
"ip_adapter_gummy.png")
 

generator = torch.Generator(device="cpu").manual_seed(4)

# 以下代码加载并处理提示词,基于原始图片,参考图片和蒙图生成图片

images = pipeline(
prompt="a cute gummy bear waving",
image=image,
mask_image=mask_image,
ip_adapter_image=ip_image,
generator=generator,
num_inference_steps=100,
).images

images[0].show()

原图的效果是这样的

图片

参考图片的效果是这样的

图片

蒙图的效果是这样的

图片

生成的图片的效果是这样的(如果真有这么一个软糖北极熊,真能舍得吃吗?)

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1801629.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

0基础学习区块链技术——链之间数据同步样例

大纲 创建区块新增链区块链直接替换 我们可以在https://blockchaindemo.io/体验这个过程。 创建区块 默认第一个链叫Satoshi(中本聪)。链上第一个区块叫“创世区块”——Genesis Block。后面我们会看到创建的第二条链第一个区块也是如此。 新增链 新创建的链叫Debby。默认…

android中调用onnxruntime框架

创建空白项目 安装Android Studio及创建空白项目参考:【安卓Java原生开发学习记录】一、安卓开发环境的搭建与HelloWorld(详细图文解释)_安卓原生开发-CSDN博客 切记:build configuration language 一定选择Groovy!官…

向量化:机器学习中的效率加速器与数据桥梁

在机器学习领域的广袤天地中,向量化技术以其独特的魅力,为数据处理和模型训练注入了强大的动力。本文将深入探讨向量化在机器学习领域中的体现,剖析其如何助力模型实现高效的数据处理和精确的结果预测,并通过丰富的案例和详尽的数…

【人工智能Ⅱ】实验8:生成对抗网络

实验8:生成对抗网络 一:实验目的 1:理解生成对抗网络的基本原理。 2:学会构建改进的生成对抗网络,如DCGAN、WGAN、WGAN-GP等。 3:学习在更为真实的数据集上应用生成对抗网络的方法。 二:实验…

Vue2学习(04)

目录 一、组件的三大组成部分 二、组件的样式冲突scoped 三、scoped原理 ​编辑 四、data是一个函数 五、组件通信 六、props详解 七、非父子通信 1.eventbus事件总线(可以一传多)--->作用是在非父子组件之间,进行简易的消息传递(复杂场景---&…

深拷贝、浅拷贝、引用拷贝

深拷贝和浅拷贝的区别 1. 引用拷贝2. 对象拷贝 1. 引用拷贝 两个对象指向同一个地址值。 创建一个指向对象的引用变量的拷贝Teacher teacher new Teacher("Taylor",26); Teacher otherteacher teacher; System.out.println(teacher); System.out.println(otherte…

【面试干货】如何选择MySQL数据库存储引擎(MyISAM 或 InnoDB)

【面试干货】如何选择MySQL数据库存储引擎(MyISAM 或 InnoDB) 💖The Begin💖点点关注,收藏不迷路💖 MySQL数据库存储引擎是一个 关键 的考虑因素。MySQL提供了多种存储引擎,其中最常用的是 MyISAM 和 InnoD…

[word] word表格如何设置外框线和内框线 #媒体#笔记

word表格如何设置外框线和内框线 点击表格的左上角按钮从而选中表格 点击边框按钮边上的下拉箭头,选择边框和底纹 点击颜色边上的下拉箭头,选择红色 点击取消掉中间的边框,只保留外围边框 点击颜色边上的下拉箭头,选择另外一个颜…

2013.8.5-2024.5.10碳排放权交易明细数据

2013.8.5-2024.5.10碳排放权交易明细数据 1、时间:2013.8.5-2024.5.10 2、来源:各碳排放交易所 3、范围:各交易所城市 4、指标:行政区划代码、地区、所属省份、交易日期、交易品种、开盘价_元、最高价_元、最低价_元、成交均价…

【全部更新完毕】2024全国大学生数据统计与分析竞赛A题思路代码文章教学数学建模-抖音用户评论的文本情感分析

文章摘要部分: A 题: 抖音用户评论的文本情感分析 摘要 随着短视频平台的迅猛发展,抖音已成为全球最受欢迎的短视频分享平台之一。然而,随着用户数量和使用时长的增加,抖音团队需要不断优化平台功能、提升用户体验&…

生成纳秒级别的时间戳,高性能

问题 同步influxdb有些数据没有,不知道啥原因,后来百度发现时间需要唯一,毫秒还会重复,只能采用纳秒处理了 java实现 TimeStampUtils.java package com.wujialiang;/*** 获取纳秒值的工具类*/ public class TimeStampUtils {/…

面试题-Vue2和Vue3的区别

文章目录 1. 响应式系统2. 组合式 API (Composition API)3. Fragment (碎片)4. Teleport (传送门) 5. 性能改进6. 移除或改变的功能7. 构建工具8. TypeScript 支持 Vue 2 和 Vue 3 之间存在许多重要的区别,这些区别涵盖了性能、API 设计、组合式 API(Com…

产品NPDP+项目PMP助你成长

前言 从管理的角度来讲,产品经理和项目经理的区别,我们应该吧项目经理和产品的区别分为一纵一横,那一纵就是我们的项目经理,项目经理在整个新产品研发过程中他扮演的是管理监督项目参与者的角色,其中包括研发部门、技术部门、市场部门或是销售部门等等。他所要做的事情就…

【Unity】Kafka、Mqtt、Wesocket通信

1 前言 最近研究了下kafka、mqtt、webocket插件在Unity网络通信中的应用,做下小总结吧。(不想写笔记,但不写又会忘,痛苦) 2 Kafka 先说结果:Kafka实现失败。 我会使用的方法是在VS里安装了Confluent.Kafka…

压缩大文件消耗电脑CPU资源达到33%以上

今天用7-Zip压缩一个大文件,文件大小是9G多,这时能听到电脑风扇声音,查看了一下电脑资源使用情况,确实增加了不少。 下面是两张图片,图片上有电脑资源使用数据。

05--Git分布式版本控制系统

前言:给后端工程师使用的版本控制器,本质上类似带时间标记的ftp,使用比较简单,就在这里归纳出来,供参考学习。 git1、概念简介 分布式版本控制系统(Distributed Version Control System,DVCS&…

数据挖掘--分类

数据挖掘--引论 数据挖掘--认识数据 数据挖掘--数据预处理 数据挖掘--数据仓库与联机分析处理 数据挖掘--挖掘频繁模式、关联和相关性:基本概念和方法 数据挖掘--分类 数据挖掘--聚类分析:基本概念和方法 基本概念 决策树归纳 决策树:决策树是一…

从0开始学人工智能测试节选:Spark -- 结构化数据领域中测试人员的万金油技术(四)

上一章节我们了解了 shuffle 相关的概念和原理后其实可以发现一个问题,那就是 shuffle 比较容易造成数据倾斜的情况。 例如上一节我们看到的图,在这批数据中,hello 这个单词的行占据了绝大部分,当我们执行 groupByKey 的时候触发了…

关于怎么用Cubemx生成的USBHID设备实现读取一体的鼠标键盘设备(改进版)

主要最近做了一个要用STM32实现读取鼠标键盘一体的那种USB设备,STM32的界面上要和电脑一样的能通过这个USB接口实现鼠标移动,键盘的按键。然后我就很自然的去参考了正点原子的例程,可是找了一圈,发现正点原子好像用的库函数&#…

Docker的资源限制

文章目录 一、什么是资源限制1、Docker的资源限制2、内核支持Linux功能3、OOM异常4、调整/设置进程OOM评分和优先级4.1、/proc/PID/oom_score_adj4.2、/proc/PID/oom_adj4.3、/proc/PID/oom_score 二、容器的内存限制1、实现原理2、命令格式及指令参数2.1、命令格式2.2、指令参…