DeepFaceLab小白入門(4):提取人臉圖片!

通過上面級片文章,你應該基本知道了換臉的流出,也能換出一個視頻來。此時,你可能會產生好多疑問,比如每個環節點點到底是什麼意思,那些黑漆漆屏幕輸出的又是什麼內容,我換臉效果這麼差,該如何提升?等等,好奇寶寶已上線,不搞明白睡不着。接下來,我就把每個環節展開說一說。本篇文章主要說“人臉提取部分”。

 

DeepFaceLab 更目錄如下。

 

workspace工作目錄如下

 

 

1) clear workspace.bat (清空項目)

這是一個用來初始化項目目錄的文件,由於軟件本身自帶了一個workspace,所以你第一次使用的時候可點,可不點。點了之後,一個回車,界面如下。

 

2) extract PNG from video data_src.bat(視頻轉圖片)

 

雙擊這個文件之後程序就開始運行,會出現一個提示。

Enter FPS ( ?:help skip:fullfps ) : 

此時你可以直接回車,這樣轉換出的圖片最多,你也可以輸入一個20以內的數字,比如10,這樣圖片就會少一點,設置5 也可以。輸入數字後回車即可。

 

運行結束之後出現Done Press any key to continue。 此時在workspace\data_src目錄中會出現好多圖片,這些圖片就是把視頻一幀幀分解成圖片了。

3.2) extract PNG from video data_dst FULL FPS.bat(視頻轉圖片)

這一步和2)的原力是一樣的,只是這次操作的視頻是workspace\data_dst.mp4,而且默認是全幀率轉換,轉換完之後workspace\data_dst目錄下面會出現很多圖片。

 

 

4) data_src extract faces DLIB all GPU debug.bat(切臉)

這一步的目的是,把圖片中的人臉提取出來。雙擊後自動運行,運行過程分三步走,不需要人爲干預。

 

結束後會顯示Images found 圖片數量,Faces detected 檢測到的人臉數量。

 

運行結束後,提取到人臉保存在workspace\data_src\aligned 目錄。

 

以4開頭的文件非常多,但是並不想每個都點,主要包括了三個提取器DLIB、MT、S3FD,你只需要任選一個即可。差別主要是提取臉部的時間和效果有細微差別,S3FD是新添加的,據說性能比較好。

 

4.1) data_src check result.bat (檢查提取效果)

點擊這個之後,自動打開一個看圖軟件,會幫你自動定位到workspace\data_src\aligned目錄在這裏你可以把不清晰的,或者誤提取的圖片刪除,留下清晰的高質量圖片,這個會讓你的模型質量更高,轉換之後的效果更好。

4.2.1) data_src sort by blur.bat(排序)

4.2開頭的都是排序工具,根據不同的特性進行排序,比如blur 只是更具清晰度來排序,這個你可以快速找到不清晰的圖片刪除,還有similar histogram根據相似度排序, face pitch 臉的俯仰,face yaw臉的左右偏移。 基本上只要用到這,排序的目的是去除劣質圖片,篩選出優質圖片。

 

5) data_dst extract faces DLIB all GPU .bat (提取臉部)

 

第五部和第四部的功能是一樣的,只是一個提取src的臉,一個提取dst 的臉。與第四步不同是,添加了一個手動提取臉部的工具MANUAL RE-EXTRACT DELETED RESULTS DEBUG,還有默認生成aligned_debug。

 

ps: 這裏用了託尼老師的臉,實際情況應該是變形金剛男主的臉。

Debug中會有這樣的圖片,臉部有一個紅色框和藍色框,還有一個綠色的輪廓線。從上面這張圖來看,這個提取效果是OK的,如果發現綠色線和臉部輪廓不貼合,那麼就需要手動提取這張圖片了。由於合成得時候,程序會參考dst中debug的標線,所以修正這個錯誤很重要。如何修正,請看下一條。

5) data_dst extract faces MANUAL RE-EXTRACT DELETED RESULTS DEBUG(手動提取臉圖)

這一部的作用就是解決自動提取不準確的情況。使用前先刪除DEBUG目錄中標線有問題的圖片,然後雙擊這個文件,進入後會出現預覽界面,界面上有很多圍繞臉部的點,輕輕一動鼠標或者轉動鼠標就可以改變選中區域。覺得比較合適了就回車。進入下一張圖片的操作。

 

效果如上圖,窗口上方有操作提示。

 

經過上面的步驟,dst和src的臉部提取就全部完成了。

這個步驟的關鍵點是保證臉部清晰,以及dst的輪廓識別準確,這樣就爲後面的步驟打下了堅實的基礎。

 

擴展:

如何換一組訓練對象

如果你以及成功跑完所有環節,成功的把小羅伯特唐尼的臉放到了希亞·拉博夫的頭上。此時你想換一個人玩玩,該怎麼操作?

操作很簡單,把data_dst.mp4和data_src.mp4換成新的視頻,把model下面的文件全部刪除,然後按上面在步驟再來一次即可。

如果你的視頻太長,希望截取一部分,可以試下面的方法!

3.1) cut video (drop video on me).bat (視頻截取轉碼,不懂的這一個不要點。)

 

雙擊後,輸入開始截取的時間點From time,回車,輸入截取結束To time的時間點,回車,回車,輸入碼率 5,回車,等待結束出現done。

時間格式按照提示的來,碼率一般不需要設置太高,設置成5足夠了,你不輸入直接回車也可以,默認值爲25。默認情況截取的是workspace\data_dst.mp4這個視頻,如果你想截取其他視頻,可以把待截取的視頻直接拖到這個文件上面。

PS:實際操作這文件不需要點,等到熟練之後,需要截取視頻再來用這個功能。

 

後續步驟,請看:DeepFaceLab小白入門(5):訓練換臉模型!

 

AI換臉系列文章:

  1. DeepFaceLab軟件簡介
  2. DeepFaceLab軟件安裝
  3. DeepFaceLab軟件使用
  4. DeepFaceLab人臉提取詳解
  5. DeepFaceLab模型訓練詳解
  6. DeepFaceLab導出視頻詳解
  1.  
發佈了42 篇原創文章 · 獲贊 33 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章