Deepfacelab是一款可訓練的AI換臉電腦軟件,軟件不單單是一款為定格的圖像進行換臉的軟件,那樣的功能,相對來說,比較低級,軟件是一款給動態視頻都能進行換臉的軟件,并且軟件可以通過很多一個人的視頻進行學習,不斷地向后臺輸入正確或錯誤,在AI這個黑匣子中,以人類無法解釋的運作,將臉換成你想要的臉。
Deepfacelab的相對而言會比較簡單,軟件的使用需要一定的編程基礎,不需要非常高深的編程基礎,軟件就可以使用,但是軟件對于用戶電腦的配置還是有要求的,當然沒有非常夸張的高,一般有2G顯存就可以訓練Deepfacelab,軟件支持用戶手動截取人臉,想成Deepfacelab所需素材,操作簡便,功能強大,有需要的小伙伴,可以在本站下載Deepfacelab。
DeepFaceLabCUDA9.2SSE – 適用于GTX1080和任何64位處理器的NVIDIA顯卡。
DeepFaceLabCUDA10.1AVX – 適用于高達RTX的NVIDIA顯卡和支持AVX指令的處理器。
DeepFaceLabOpenCLSSE – 適用于AMD顯卡和任何64位處理器。
【手動】把DST視頻放到“workspace”文件夾下,并且命名為“data_dst”(后綴名和格式一般不用管)。
下面步驟的文件目錄均在workspace下,如“workspace\data_src”,我將省略為“data_src”
【手動】把SRC素材(明星照片,一般需要700~1500張)放到“data_src”下。
【bat】分解DST視頻為圖片(需要全幀提取,即Full FPS),bat序號3.2 你會看到“data_dst”下有分解出來的圖片。
【bat】識別DST素材的臉部圖片,bat序號5 有DLIB和MT兩種分解方式,一般情況建議DLIB,具體差別什么自己摸索,后面不要帶Manual和Debug,這倆一個是手動一個是調試。
【bat】識別SRC素材的臉部圖片,bat序號4 具體操作同步驟4。
【手動】第4步和第5步識別并對齊的人臉素材在“data_dst\aligned”和“data_src\aligned”內,你需要把這些人臉不正確識別的內容刪除,否則影響MODEL訓練結果,如果臉圖特別小,或者翻轉了,那么基本判定為識別錯誤,但是要說明的是,DST臉超出畫面的半張臉需要留著不要刪除,SRC臉超出畫面基本沒用,直接刪除吧。
刪除SRC錯誤臉圖前可以使用bat序號4.2系列的排序,直方圖排序和人臉朝向排序可以較為方便地找出錯誤人臉,這屬于進階內容,具體不給教程,有需要自己Baidu翻譯一下。
【bat】現在你已經有DST的序列幀(圖片)素材和SRC的臉部(圖片)素材了,你需要運行MODEL訓練,bat序號6 一樣也是有好多種MODEL,目前建議新手直接跑H128的MODEL(除非你的顯卡比較差,那就跑H64)其他MDOEL算法請看GitHub上的介紹。
跑MODEL是可以中斷的,在預覽界面按回車鍵,軟件會自動保存當前進度,MDOEL文件在“model”文件夾下,不同的MODEL文件名不一樣,建議定期備份MODEL,并建議SRC專人專用MODEL
【bat】上面MODEL如果是第一次跑,可能需要10+小時才有合理的效果,結束訓練后請運行MODEL導出合成圖,bat序號7 這里就根據你的MODEL類型來運行就好了
※ 這里會出現一個問題就是軟件會在DOS界面給你好多好多選項,請看下文“導出合成圖的選項”。
【bat】導出圖片后需要把圖片轉成視頻,那么就運行 bat序號8 就行了,根據你要的最終格式來定。
一、人臉素材需要多少?
DST:盡量不要少,因為它是有限的且需要被替換的素材
SRC:根據各軟件的臉圖篩選規則和網上大神的建議,總體來說,SRC臉圖最好是大概700~3999的數量,像Deepfacelab的作者,他就認為1500張夠了。對于SRC,各種角度、各種表情、各種光照下的內容越多越好,很接近的素材沒有用,會增加訓練負擔。
二、 手動對齊識別人臉模式如何使用?
回車鍵:應用當前選擇區域并跳轉到下一個未識別到人臉的幀
空格鍵:跳轉到下一個未識別到人臉的幀
鼠標滾輪:識別區域框,上滾放大下滾縮小
逗號和句號(要把輸入法切換到英文):上一幀下一幀
Q:跳過該模式
老實說,這個功能極其難用,畫面還放得死大……
三、MODEL是個什么東西?
MODEL是根據各種線條或其他奇怪的數據經過人工智能呈現的隨機產生的假數據,就像PS填充里的“智能識別”
你可以從https://affinelayer.com/pixsrv/ 這個網站里體驗一下什么叫MODEL造假
四、MODEL使用哪種算法好?
各有千秋,一般Deepfacelab使用H128就好了,其他算法可以看官方在GitHub上寫的介紹:https://github.com/iperov/DeepFaceLab
五、Batch Size是什么?要設置多大?
Batch Size的意思大概就是一批訓練多少個圖片素材,一般設置為2的倍數。數字越大越需要更多顯存,但是由于處理內容更多,迭代頻率會降低。一般情況在Deepfacelab中,不需要手動設置,它會默認設置顯卡適配的最大值。
根據網上的內容和本人實際測試,在我們這種64和128尺寸換臉的操作中,越大越好,因為最合理的值目前遠超所有民用顯卡可承受的范圍。
六、MODEL訓練過,還可以再次換素材使用嗎?
換DST素材:
可以!而且非常建議重復使用。
新建的MODEL大概10小時以上會有較好的結果,之后換其他DST素材,僅需0.5~3小時就會有很好的結果了,前提是SRC素材不能換人。
換SRC素材,那么就需要考慮一下了:
第一種方案:MODEL重復用,不管換DST還是換SRC,就是所有人臉的內容都會被放進MODEL進行訓練,結果是訓練很快,但是越雜亂的訓練后越覺得導出不太像SRC的臉。
第二種方案:新建MODEL重新來(也就是專人專MODEL)這種操作請先把MODEL剪切出去并文件夾分類,這種操作可以合成比較像SRC的情況,但是每次要重新10小時會很累。
第三種方案:結合前兩種,先把MODEL練出輪廓后,再復制出來,每個MODEL每個SRC臉專用就好了。
其、合成圖連接成視頻后發現部分畫面面部顫抖怎么辦?
把DST視頻通過其他軟件放大些尺寸再重新進行操作。因為邏輯上分析,擴大了畫面后,軟件識別偏移的步長比例會小一些。