AI 大模型之美
徐文浩
bothub 创始人
32335 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 33 讲
AI 大模型之美
15
15
1.0x
00:00/00:00
登录|注册

25|ControlNet:让你的图拥有一个“骨架”

M-LSD
Semantic Segmentation
Normal Map
Depth
Openpose
HED Boundary
Canny
基于简笔画生成详细环境
Scribble模型
基于姿势生成图片
使用OpenposeDetector捕捉姿势
通过Canny算法检测边缘
使用OpenCV进行预处理
Stable Diffusion输出控制方法
ControlNet训练过程
将ControlNet应用于社区微调后的Stable Diffusion模型
生成视频
制作动画片
复制世界名画
设置负面提示语排除低质量图片
使用Diffusers库的Pipeline功能
加载ControlNet模型
安装依赖包
直线段检测
语义分割
法线贴图
深度估计
姿势捕捉
边缘检测
简笔画生成精美图片
动态捕捉绘制人物
边缘检测绘制头像
提供精确控制生成图片的轮廓、姿态
在Stable Diffusion基础上优化
推荐阅读
思考题
应用场景
使用方法
支持的模型
功能
概述
ControlNet

该思维导图由 AI 生成,仅供参考

你好,我是徐文浩。
上一讲,我们体验了 Stable Diffusion 这个时下最流行的开源“AI 画画”项目,不知道你有没有试着用它画一些你想要的图片呢?不过,如果仅仅是使用预训练好的模型来画图的话,我们对于画出来的图还是缺少必要的控制。这会出现一个常见的问题:我们只能通过文本描述来绘制一张图片,但是具体的图片很有可能和你脑海中想象的完全不一样。
尽管我们可以通过 img2img 的方式,提供一张底图来对图片产生一定的控制,但是实际你多尝试一下就会发现这样的控制不太稳定,随机性很强。
对于这个问题,繁荣的 Stable Diffusion 社区也很快给出了回应,就是今天我们要介绍的项目 ControlNet。ControlNet 是在 Stable Diffusion 的基础上进行优化的一个开源项目,它既对原本的模型架构进行了修改,又在此基础上进行了进一步地训练,提供了一系列新的模型供你使用。

体验使用 ControlNet 模型

那么,接下来我们就先来看看如何使用 ControlNet。我们还是需要 Colab 这样的 GPU 环境,并且安装好一系列依赖包。
%pip install diffusers transformers xformers accelerate
%pip install opencv-contrib-python
%pip install controlnet_aux
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

ControlNet是一个基于Stable Diffusion的开源项目,旨在为用户提供更精确的图像控制能力。通过边缘检测和模型训练,ControlNet可以根据用户提供的框架结构,精确地控制图像的输出。文章介绍了如何使用ControlNet模型,通过实际案例展示了其优势,包括精确控制图像的输出,例如在复制名画或重现名人头像时具有很高的应用价值。同时,文章还介绍了ControlNet支持的不同模型,如通过Open Pose捕捉人体动作来生成图片,以及通过简笔画生成精美图片的Scribble模型。通过代码示例和输出结果,读者可以清晰地了解ControlNet的功能和效果,为他们提供了实际操作的指导和启发。整体而言,ControlNet为用户提供了更多的图像控制能力,使得AI画画和生成视频成为可能,为Stable Diffusion社区带来了重要的模型改进。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 大模型之美》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(8)

  • 最新
  • 精选
  • wd
    置顶
    这一讲里用到的 xformers 模块不支持 Mac,只能在 Windows 和 Linux 环境运行。参见这个讨论:https://github.com/facebookresearch/xformers/issues/740#issuecomment-1594080277 老师是不是可以在文章开头给出一些警告?
    2023-06-20归属地:美国
  • Toni
    利用 cv2 对图片边缘检测的功能,妥妥地将书法图变成了拓片图。再加上 Stable Diffusion 1.5 模型,pipeline 出来意想不到的铜版雕刻。 1. 书法图片变拓片 在百度百科上选了一幅宋徽宗的瘦金体供学习用,链接如下 image_file = "https://bkimg.cdn.bcebos.com/pic/9f510fb30f2442a7f49178c1da43ad4bd1130232?x-bce-process=image/watermark,image_d2F0ZXIvYmFpa2U4MA==,g_7,xp_5,yp_5" 也可使用自己的图片。 宋徽宗牡丹诗的真迹收藏于台北故宫博物院,宋代墨寶 冊 宋徽宗書牡丹詩,链接如下: https://digitalarchive.npm.gov.tw/Image/Stream?ImageId=522542&code=435965022&maxW=600&maxH=600 调用函数 get_canny_image,参数调整为 low_threshold=200 和 high_threshold=300 original_image = load_image(image_file) canny_image = get_canny_image(original_image) 然后显示生成的 canny_image,徽宗瘦金体拓片。 2. 铜版雕刻 依然用四个电影明星的名字作为提示词 prompt = ", a close up portrait photo, best quality, extremely detailed" prompt = [t + prompt for t in ["Audrey Hepburn", "Elizabeth Taylor", "Scarlett Johansson", "Taylor Swift"]] generator = [torch.Generator(device="cpu").manual_seed(42) for i in range(len(prompt))] output = pipe( prompt, canny_image, negative_prompt=["monochrome, lowres, bad anatomy, worst quality, low quality"] * 4, num_inference_steps=20, generator=generator, ) 显示最后"卷"出来的结果: draw_image_grids(output.images, 2, 2) --------------- 用 Scarlett Johanssona ... 生成的铜版字最清晰,字体突起明显。用不同的提示词,会有不同的展现。 AI 千变万化,无限可能。这里只是沧海一粟。 什么模型能够拆解中文字体的笔画顺序? 利用这类模型就有可能AI视频书法写起来。

    作者回复: 👍

    2023-05-09归属地:瑞士
    3
    3
  • 马听
    image_file = "https://hf.co/datasets/huggingface/documentation-images/resolve/main/diffusers/input_image_vermeer.png"original_image = load_image(image_file) 这一行代码有误,多了original_image = load_image(image_file)

    编辑回复: 好的,多谢反馈🌹

    2023-05-08归属地:上海
  • 红烧肉
    有输出一段话,可以同时生成多张图嘛
    2024-03-16归属地:北京
  • 小理想。
    老师很奇怪自己找的图片则不可以生成骨骼图为什么呢?
    2023-12-03归属地:北京
  • Eric.Sui
    敬仰,老师方便加V吗?
    2023-06-29归属地:广东
  • 神毓逍遥
    哈哈哈
    2023-06-26归属地:安徽
  • Viktor
    这个技术的出现,被很多骗子利用,用来生成各种图片用来注册那些需要真人照片的网站。
    2023-05-08归属地:四川
    3
收起评论
显示
设置
留言
8
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部