deepfacelabの設定はどれがいいのか

フォーラムによると現在DFLの主流を占めるモデルは

 

DF-UD

LIAE-UDの様子

 

しかし実際問題DF-UDは各種照明の条件をそろえないと明らかに顔が浮いてしまう

(DFはほぼ100%本人を再現しようとするというメリットもある)

 

 

一方LIAE-UDもほぼ100%本人を再現できる(というか100%本人になる)

なのでこれで基本的に大丈夫

 

コツはSRCの画角、様々な角度で様々な表情を用意すること

かつ数は多くて1万枚

というのも多ければ多いほど学習に時間がかかるし、ある一つの顔にフォーカスを当てづらいので顔の印象が自分がイメージするのと思ったのと違うことになり勝ち

 

5000枚程度の少数精鋭がベスト

かつドアップで高解像度でぼけたりしないのが良い

 

最終的にはX-segを使い髪ごとSWAPするので、ここの枚数が多いとややマスク処理が面倒というのもある

 

一体どうすれば数が少なくて色んな表情があってかついろんな角度でドアップなSRCが用意できるかというと

 

インタビューしている動画等をTOPAZのVEAIで1080pにしたり色々方法がある

 

まぁともかくSRCはそんな感じで用意する

 

設定は

解像度256で十分

慣れないうちは128とかの方が良い

これでも十分に似る

そしてこれだと数時間でほぼ完成するので失敗した時やりなおしやすい

大体以下のようなことを丁寧にやる必要があるので最初はほぼどこかで失敗するので・・

 

faceset切り抜き

→facesetのデバグを確認

→変なのを削除

→デバグで削除したのを再生成.exeみたいなのを使う

→X-segでheadをマスク

→X-segトレーニン

→X-segのトレーニングデータをdstとsrcそれぞれapply

→X-segでうまくいってないところをもう一度マスク

→X-segトレーニン

→X-segのトレーニングデータをdstとsrcそれぞれapply

 

ここまでしてようやくSAEHDのトレーニングに入れる

 

ここで毎回毎回SRCの画像の数を読み込んだりするのでやはり多くても5000~1万枚程度じゃないと時間がひたすらかかることになる

 

 

そして解像度256でSAEHDトレーニングをやるとここからさらに1日2日かかる

なかなかSRCのフェイスセットの集め方とかのコツをつかまないとうまくできないので大変

 

なので初心者は126解像度で5000枚程度のSRCでやる方が楽

 

 

SAEHDのトレーニングの設定としては基本的に

 

randomwarp→常時オンでok "最後の最後"に切るとさらに解像度上がるが正直下手に途中で切るくらいなら常時onでok

学習速度が上がる

 

各種dims→色々試したが初期値でok、ほとんど変わらないというか初期値でかなりリアルになる

 

こんなのいじって重くなるくらいなら良いSRCを用意した方が圧倒的に早道だし確実

 

clip→常時onが良い モデルの崩壊を防ぐ

モデルが壊れて目の玉が4つになったりするのは精神衛生上よくない

後わけわからん色がどんどん広がっていくのも同様

 

といってもあまりに学習しすぎると最後は必ず壊れる

ある程度モデルが完成したらバックアップ取っておけばいつでもほぼ完成するモデルが確保できる

 

ganやらstlye powerやらもしなくても十分似る

本当に良いSRCを集めるのが全て

 

deepfacelabのgithubの解像度256あたりのやつは確かgan無しのやつだがあれくらい再現可能

 

 

uniform yaw→onにすると学習があまり進んでないファイルを優先的にtrainするようになる

 

これは最後当たりにつけると学習が進んでないのをやってくれるからいい

 

しかしこれをonにすると大抵色々なことに気づく

x-segのマスクのミス、もしくはfaceset作成時のランドマークの位置ずれにより顔面崩壊したやつばかりがプレビュー画面に出てきやすい

 

もしいつまでたっても学習してもしても崩壊しているのがあったらそれを突き止めて修正しないといけない

もしくはその部分だけ動画出来上がった後にカットするか

 

 

マージの時に1フレームずつ確認して崩壊しているフレームがあったらそこでX-segのマスク、もしくはランドマークのずれがあるかどうかを確認する

 

あったら手動で調整

X-segの場合はXsegのeditで調整

facesetのランドマークのズレの場合はデバグ画像を削除して、デバグ削除した部分を再生成.exeみたいなのを使って生成