該存儲庫包含來自單個圖像2:更具表現力項目的說話頭動畫的演示程序。與以前的版本類似,它有兩個程序:
manual_poser可讓您通過圖形用戶界面來操縱單個圖像中的動漫角色的面部表情和頭部旋轉。配售器有兩種形式可用:標準GUI應用程序和Jupyter筆記本。ifacialmocap_puppeteer可讓您將面部運動傳輸,該面部運動被稱為IfacialMocap的商業iOS應用程序捕獲到動漫角色的圖像中。 如果您沒有所需的硬件(下面討論)或不想下載代碼並設置環境來運行它,請單擊以嘗試在Google Colab上運行手動擺動器。
這兩個程序都要求最近有力的NVIDIA GPU運行。我可以親自使用NVIDIA TITAN RTX以良好的速度運行它們。但是,我認為最近的高端遊戲GPU,例如RTX 2080,RTX 3080或更好的做法也一樣。
ifacialmocap_puppeteer需要一個能夠從視頻提要中計算混合形狀參數的iOS設備。這意味著該設備必須能夠運行iOS 11.0或更高版本,並且必須具有truedepth的前置攝像頭。 (有關更多信息,請參見此頁面。)換句話說,如果您擁有iPhone X或更好的內容,則應該全部設置。就我個人而言,我使用了iPhone 12 mini。
這兩個程序均在Python 3中編寫。要運行GUI,需要以下軟件包:
特別是,我使用以下命令創建了與Anaconda一起運行程序的環境:
> conda create -n talking-head-anime-2-demo python=3.8
> conda activate talking-head-anime-2-demo
> conda install pytorch torchvision cudatoolkit=10.2 -c pytorch
> conda install scipy
> pip install wxPython
> conda install matplotlib
注意:您可能會發現Python(3.8)和Cuda Toolkit(10.2)的特定版本可能不適用於您的特定計算機設置。發生這種情況時,將這些版本替換為與硬件一起使用的版本。命令將成為:
> conda create -n talking-head-anime-2-demo python=[YOUR-PYTHON-VERSION]
> conda activate talking-head-anime-2-demo
> conda install pytorch torchvision cudatoolkit=[YOUR-CUDA-TOOLKIT-VERSION] -c pytorch
> conda install scipy
> pip install wxPython
> conda install matplotlib
通常,最新版本的Python和Pytorch網站上顯示的最新版本的CUDA工具包將有效。
要運行manual_poser的Jupyter筆記本電腦版本,您還需要:
這意味著,除了上述命令外,您還需要運行:
> conda install -c conda-forge notebook
> conda install -c conda-forge ipywidgets
> jupyter nbextension enable --py widgetsnbextension
最後, ifacialmocap_puppeteer需要IFACIALMOCAP,這在App Store中可用於980日元。您還需要在PC或Mac上安裝配對的桌面應用程序。 (Linux用戶,對不起!)您的iOS和您的計算機也必須使用同一網絡。 (例如,您可以將它們連接到同一無線路由器。)
您也可以使用Anaconda下載並安裝一個命令中的所有Python軟件包。打開外殼,將目錄更改為克隆存儲庫的位置,然後運行:
conda env create -f environment.yml
這將創建一個稱為talking-head-anime-2-demo的環境,其中包含所有必需的Python軟件包。
在運行程序之前,您需要從此Dropbox鏈接下載模型文件,然後將其解壓縮到存儲庫目錄的data文件夾。最後, data文件夾應該看起來像:
+ data
+ illust
- waifu_00.png
- waifu_01.png
- waifu_02.png
- waifu_03.png
- waifu_04.png
- waifu_05.png
- waifu_06.png
- waifu_06_buggy.png
- combiner.pt
- eyebrow_decomposer.pt
- eyebrow_morphing_combiner.pt
- face_morpher.pt
- two_algo_face_rotator.pt
模型文件與Creative Commons Attribution 4.0國際許可證一起分發,這意味著您可以將其用於商業目的。但是,如果您分發它們,則必須說我是創造者。
manual_poser桌面應用程序打開外殼。將您的工作目錄更改為存儲庫的根目錄。然後,運行:
> python tha2/app/manual_poser.py
請注意,在運行上面的命令之前,您可能必須激活包含所需軟件包的Python環境。如果您使用上面討論的Anaconda創建環境,則需要運行
> conda activate talking-head-anime-2-demo
如果您尚未激活環境。
manual_poser jupyter筆記本打開外殼。激活環境。將您的工作目錄更改為存儲庫的根目錄。然後,運行:
> jupyter notebook
瀏覽器窗口應打開。在其中,打開tha2.ipynb 。完成此操作後,您應該看到它只有一個單元格。運行它。然後,向下滾動到文檔的末尾,您將在那裡看到GUI。
ifacialmocap_puppeteer首先,在iOS設備上運行IfacialMocap。它應該向您顯示設備的IP地址。記下它。保持應用程序打開。

然後,運行配套桌面應用程序。

單擊“打開高級設置>>”。應用程序應擴展。

單擊右側的“ Maya”的按鈕。

然後,單擊“攪拌機”。

接下來,用iOS設備的IP地址替換左側的IP地址。

單擊“連接到攪拌機”。

打開外殼。激活環境。將您的工作目錄更改為存儲庫的根目錄。然後,運行:
> python tha2/app/ifacialmocap_puppeteer.py
如果程序正確連接,您應該看到,當您在iOS設備的前置攝像頭前移動臉部時, ifacialmocap_puppeteer窗口底部的許多進度條應移動。

如果一切順利,請加載角色圖像,並應遵循您的面部運動。
為了使模型運行良好,輸入圖像必須遵守以下約束:
但是,請注意,無論輸入圖像的大小如何,程序都將始終將其調整為256x256,並始終輸出256x256圖像。這是系統的內在限制。

如果您的學術工作從此存儲庫中的代碼中受益,請引用該項目的網頁如下:
Pramook khungurn。來自單個圖像的說話頭動畫2:更具表現力。 http://pkhungurn.github.io/talking-head-anime-2/,2021。訪問:yyyy-mm-dd。
您還可以使用以下Bibtex條目:
@misc{Khungurn:2021,
author = {Pramook Khungurn},
title = {Talking Head Anime from a Single Image 2: More Expressive},
howpublished = {url{http://pkhungurn.github.io/talking-head-anime-2/}},
year = 2021,
note = {Accessed: YYYY-MM-DD},
}
雖然作者是Google Japan的僱員,但該軟件不是Google的產品,也沒有Google的支持。
該軟件的版權屬於我,因為我使用IARC流程要求它。但是,Google可能聲稱擁有本發明的知識產權的權利。
該代碼是根據MIT許可發布的。該模型是在創意共享歸因4.0國際許可下發布的。