當前位置: 妍妍網 > 碼農

ControlNet作者新計畫爆火:僅一張圖生成25秒繪畫全過程!不到一天GitHub攬星600+

2024-07-16碼農

點選上方↑↑↑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系統化學習

深度學習系統化學習

推薦閱讀