Stable Diffusion【ControlNet】:ControlNet模型之Openpose,实现人物姿势控制

大家好,我是极客菌!!!

今天我们开始ControlNet控制模型的学习,ControlNet有15种左右的控制模型,每一种控制模型都有对应的应用场景,今天我们学习的是控制模型是Openpose,它是用于控制人物姿势约束的模型,通过姿势约束模型,我们可以可以根据原图的姿势特征如身体姿势、手部姿势、面部姿势等,生成目标人物对应的特征图片,而无需关注其他细节。也可以在保留人物样貌的情况下,灵活地改变人物的姿势特征。
在这里插入图片描述

一. ControlNet模型Openpose介绍

OpenPose是一种用于检测人物骨骼肢体动作的技术,可以检测出人体关键点,比如头部、肩膀、手的位置等。它非常适用于模仿人体姿势,而不需要模仿服装、发型和背景等其他细节。

ControlNet 目前集成了 Openpose 预处理器和模型。

在这里插入图片描述

二. Openpose预处理器模型

OpenPose的预处理器模型有以下几类:

在这里插入图片描述

  • OpenPose:眼睛、鼻子、颈部、肩膀、肘部、手腕、膝盖和脚踝。

  • OpenPose_face:OpenPose + 面部细节

  • OpenPose_hand:OpenPose + 手和手指

  • OpenPose_faceonly:仅面部细节

  • OpenPose_full:以上所有内容

  • dw_openPose_full:OpenPose_full的增强版本。

下面我们对每种预处理器进行一个更直观的体验介绍。

(1)OpenPose:基本的 OpenPose 预处理器,可检测眼睛、鼻子、眼睛、颈部、肩膀、肘部、手腕、膝盖和脚踝的位置。

在这里插入图片描述

(2)OpenPose_face:保留 OpenPose 预处理器执行的所有操作外会检测其他面部细节。

在这里插入图片描述

OpenPose_face对复制人物面部表情非常有用。

在这里插入图片描述

(3)OpenPose_faceonly:仅检测面部而不检测其他关键点。这对于仅复制面部而不是其他关键点很有用。

在这里插入图片描述

下面2张图片人物表情一致,但是姿势不同。

在这里插入图片描述

(4) OpenPose_hand:关键点检测为 OpenPose 以及手和手指。

在这里插入图片描述

在这里插入图片描述

(5) OpenPose_full:全面检测 openPose 面部和 openPose 手部所有的一切。

在这里插入图片描述

在这里插入图片描述

**(6)**dw_openPose_full: DWPose 是一种新的人体姿势检测算法。它实现与 OpenPose Full 相同的功能,但做得更好,特别是人物手势的识别上。推荐使用 dw_openpose_full 而不是 openpose_full。关于dw_openpose_full的使用在【Stable Diffusion【进阶篇】:手部修复的实现方式(3)】也有详细介绍。

在这里插入图片描述

在这里插入图片描述

三. Openpose控制模型的使用体验

下面我们通过具体实例来体验一下Openpose控制模型。

模型:majicmixRealistic_v6

正向提示词:1girl,sitting on a cozy couch,crossing legs,soft light

反向提示词:(worst quality:2),(low quality:2),(normal quality:2),lowres,watermark,badhandv4,ng_deepnegative_v1_75t,

采样器:Euler a

采样迭代步数:30

原图片:

在这里插入图片描述

(1)OpenPose预处理器

在这里插入图片描述

(2)OpenPose_face预处理器

在这里插入图片描述

(3)OpenPose_faceonly预处理器

在这里插入图片描述

(4)OpenPose_hand预处理器

在这里插入图片描述

(5)OpenPose_full预处理器

在这里插入图片描述

(6) dw_openpose_full预处理器

在这里插入图片描述

好了,关于ControlNet的控制模型Openpose的分享就到这里,关于人物姿势还有一些插件可以实现自由灵活的控制,后面我们再分享。

感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。

在这里插入图片描述

AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。
在这里插入图片描述

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述
在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

在这里插入图片描述

### Stable Diffusion ControlNet 模型介绍 ControlNet 是一种用于增强和控制 Stable Diffusion 图像生成过程的神经网络模型[^1]。通过引入额外的条件输入,ControlNet 可以更精确地指导图像生成的方向,从而提高生成质量并实现更加多样化的创作效果。 #### 主要功能特点 - **灵活性**:可以与现有的任何 Stable Diffusion 模型无缝集成。 - **多模态支持**:不仅限于文本提示词,还可以接受其他形式的数据作为引导信号,比如边缘检测图、语义分割图等。 - **高效性**:尽管增加了新的组件,但在性能上依然保持了较高的效率。 ### 使用方法概述 为了成功部署和运行 ControlNet ,用户需注意几个关键步骤: 1. 确认安装环境已准备好必要的依赖库;如果遇到 `No module named 'mmpose'` 错误,则表明缺少 mmdetection 或 mmcv 库的支持[^2]。 2. 下载官方发布的预训练权重文件以及对应的配置脚本,并将其放置到指定目录下。 3. 对 Web UI 进行适当设置后重启服务端口,此时应当能够在界面上找到新增加的功能选项[^3]。 4. 根据具体应用场景调整参数设定,尝试不同的组合方式探索最佳实践方案。 ```python from diffusers import StableDiffusionPipeline, EulerAncestralDiscreteScheduler import torch model_id = "runwayml/stable-diffusion-v1-5" scheduler = EulerAncestralDiscreteScheduler.from_pretrained(model_id, subfolder="scheduler") pipe = StableDiffusionPipeline.from_pretrained(model_id, scheduler=scheduler, torch_dtype=torch.float16).to("cuda") prompt = "a photo of an astronaut riding a horse on mars" image = pipe(prompt).images[0] image.save("./astronaut_rides_horse.png") ``` 此代码片段展示了如何加载一个基本版本的 Stable Diffusion pipeline 并执行简单的图片生成功能。对于想要利用 ControlNet 扩展能力的情况来说,还需要进一步导入特定模块并修改相应部分以适应新特性需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值