Py学习  »  Git

ControlNet作者新项目爆火:仅一张图生成25秒绘画全过程!不到一天GitHub揽星600+

OpenCV学堂 • 1 月前 • 104 次点击  

点击上方↑↑↑OpenCV学堂”关注我

来源:公众号 量子位 授权


ControlNet作者张吕敏(Lvmin Zhang)又又又发新作了!

输入任意一张图,分分钟就能“拆解”成一个25秒的图像绘制过程视频:

从线稿到填色还有局部细节调整,全都有的那种:

而且不止动漫风,各种风格都能驾驭:

这个项目名为Paints-Undo,发布不到24小时,GitHub上已揽星600+:

网友们针对它的讨论也经历了一轮又一轮,不少人纷纷表示“这个是真牛P”。

……甚至因为效果太好,遭到网友吐槽:

手绘伪造成本又低了。



还有不少网友已经玩上了:

Ctrl+ZZZZZZZ

据GitHub主页上的介绍,Paints-Undo的命名有“其绘制过程就像是在绘画软件中多次按下撤消(Undo)按钮”之意。

该项目包含一系列模型,展示了各种人类绘画行为,比如素描、勾线、上色、阴影、变形、左右翻转、调整色彩曲线、改变图层透明度,甚至在绘画过程中改变整体想法等等。

目前发布了两个型号paints_undo_single_frame和paints_undo_multi_frame。

paints_undo_single_frame为单帧模型,基于SD1.5架构进行了改进,输入为一张图和一个operation step,并输出一张图。

operation step相当于Ctrl+Z(撤销)多少次,比如operation step为100,就相当于会得到一张Ctrl+Z 100次的效果图。

paints_undo_multi_frame是多帧模型,基于VideoCrafter打造,但没有使用原始Crafter的lvdm,所有的训练/推理代码都是从头开始完全实现。

经过训练后,多帧模型整体架构类似于Crafter,包含5个组成部分:3D-UNet、VAE、CLIP、CLIP-Vision、Image Projection。

多帧模型输入为两张图片,输出是这两张图片之间的16帧中间帧,其结果比单帧模型更加一致,但也更慢,创造性较低。

代码库默认方法是将两个模型一起使用:

首先使用单帧模型获取5-7个“关键帧”,然后使用多帧模型来“插值”这些关键帧,最终生成一个相对较长的视频。理论上甚至可以生成无限长的视频,但在开发测试中帧数为100-500时,结果较好。

可以通过以下方式在本地部署:

介绍中还提到,项目测试是在24GB显存的Nvidia 4090和3090TI上进行。理论上说,16GB的显存应该也够用,但8GB就不行了,最少需要大概10到12.5GB的显存

根据不同配置,处理一张图大约需要5-10分钟

生成视频时长25秒,帧率为4FPS,分辨率可能是320x512、512x320、384x448或448x384。

更多玩法展示

除了直接生成25秒的从线稿到上色的视频,还有其它玩法。

比如输入线稿,也能生成线稿绘制过程:

单输入多输出也可以:

或者还可以从一张图提取出不同精细程度的线稿:


插入一张线稿,直接在此线稿基础上填色也行:

感兴趣的家人们可以亲自动手试试~

GitHub链接:https://github.com/lllyasviel/Paints-UNDO

OpenCV4系统化学习


深度学习系统化学习

推荐阅读

OpenCV4.8+YOLOv8对象检测C++推理演示

ZXING+OpenCV打造开源条码检测应用

攻略 | 学习深度学习只需要三个月的好方法

三行代码实现 TensorRT8.6 C++ 深度学习模型部署

实战 | YOLOv8+OpenCV 实现DM码定位检测与解析

对象检测边界框损失 – 从IOU到ProbIOU

初学者必看 | 学习深度学习的五个误区


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/172339
 
104 次点击