deepfacelab 勝手にFAQ
Q:グラボはどれがいい?
A:コスパ的にはメモリ12GBある3060が安定
余裕あるなら一番良いのを買うのが一番良い(が最新すぎるとアプリの対応がまだだったりすることもある)
Q:FACESETの抽出はWFがいい?HEADがいい?
A:
SRC(素材側)は将来の拡張を見据えてHEADの1024
DST(移す先)側はWFの512くらいで十分
Q:どのモデルでやればいい?
A:mrdeepfake見てる限りLIAE-UDが安定の様子
WFのresolution256でそこそこの解像度で大体似る
アップで見られるように320や384あたりまで頑張っても良いが
慣れないうちは256くらいで練習しといた方が無難
(320超えてくると遅いし不安定)
(
ちなみにWFの解像度256自体はグラボのメモリ6GBでも動く
6GBだとバッチ数を16程度まで上げられないため試行錯誤する段階だと時間が無駄にかかる
ただし色々なオプションを切るか
メモリを本体の方に乗せる必要あったりする
WFの解像度192だと色々なオプションonでも普通に動く
WF未満はおでこあたりの髪の毛まで移植しきれないのでどうしても似ない
現状WF一択
headは環境によってはバグる
設定は慣れないうちは
resolution256
randomwarp on だけでok
randomwarp は onにすると顔を作る段階では処理速度向上
顔の画質を上げる段階ではoffにすると処理速度向上
大体仕上がってきたら
ランダムワープoffにして
gan値を0.1~0.5程度にして仕上げる
Quick96は無茶苦茶軽くて一瞬でできるが
マージするときに確かオデコあたりまでしかswapできない
なのでtrain中は似てるなーとなってもmergeの段階だと全然似なかったりする
オデコの上の髪くらいまでSWAPできるように最低でも顔のサイズはWFが必須になる
ただWFだと
DSTが茶髪で長髪
SRCが黒髪だとオデコの上のあたりまでしかSWAPできない関係上
髪色や髪型までDSTとSRCが元から似ている必要がある
ちょっとくらいの違いならマージ段階でブラーやらerodeやらの設定で頑張ってごまかせる
headはかなり無茶できるが重いしバグが起きるので面倒なので
エンジョイ程度でやるならやはりWFが安定
Q:綺麗に似せるコツは?
A:
一見して本人かなと見間違うくらいそっくりさんが似せやすい
全く別人と認識しているものを顔だけ全く同じにしても本人と認識しづらい
極端な話顔だけ画像ツールでコピペしても他の要素が違うと本人感が出ない
(顔は似ててもスタイル等が似てない等)
そっくりさんは画像ツールで顔だけコピペすると本人感が出てくる
似るのに大事な要素↓
小顔具合→顔サイズが違うとどうしても似きれない→マージ段階で顔を小さくできるがあまりにサイズが違うと元の顔がスワップした顔の下から出てくる
顔と体のバランス
手足の長さ
くびれ具合→意識の差が出やすいからここまであう人は本当に難しい
表情→本人がしない表情だと違和感が大きい場合がある
その他自分がここは本人の大事な特徴だと思っているところが似てるかどうかで大きな差が出てくる
ちなみに薄い顔に濃い顔を移す方が楽に似させられる
さらにメイクや表情が似てると楽
そんな人は確率的にほぼいないのが残念
なので似せられるかどうかはDSTの人選にどれだけ時間をかけるかという点も関わってくる
結局DSTとSRCの厳選部分が大事だがここをAIでなく人がやるのが現実
Q:簡単にやるコツは?
慣れないうちはDSTの動画のFPSを10くらいに落とすと楽ができる
これでも10秒で100フレームある
ちなみにFPS30フレームで1分とかやると1800フレームもいじらないといけないのでなかなか大変
どころか超大変
1枚1枚見ていくなんてとてもじゃないができない
正面オンリー動画が楽
変な方向向いてる動画は顔認識をいちいちやるのが面倒
顔の上や近くに余計なもの(特に手とか)が映っていないものが楽
画質が悪いと顔の認識がしづらい
動きが早くて顔がぶれてると顔の認識がしづらい
よって動きが少なくて高画質のが楽
Q:SRC素材はどんなのがいい?
最強は正面からの色々な表情をする高画質のインタビュー動画
顔も安定しやすい
足りないからと色んな動画からもってくると素材によっては顔が不安定になるというか色々と混じってしまうこともある
DSTでやっている表情と角度と同じようなものを用意する必要がある
SRCでアップだと魚眼レンズの要領で少し顔が歪んでしまうのであまりドアップのものは使いづらい
最初色々な動画からsrcを集めてtrainをしある程度形になったら
自分が似せたい顔だけのsrcだけ残してやると少し似てくる
src側で自分がイメージしている顔とは違う微妙な表情や顔を残すと完成したものもナンカチガウものができるので完成度の高い物を作るにはsrc側の厳選は必須
Q:X-segはどんな感じで使う?
顔の周りを囲う感じで行う
顎とかは顎の線のラインを丁寧に
髪の毛は髪の毛の内側のラインを適当にやるだけでok
300フレームなら20枚程度editした後train してapplyする
足りないならeditをもっとやっていく
そのあとmergeする時はxを何度か押して顔の範囲をx-seg dstあたりにして
eでブラーしてなめらかす感じで大体綺麗になる
Q:gpuのメモリ不足でもなんとか動かしたい
A:model_opt_on_gpuをoffにするとgpuのメモリではない方のメモリも使用するから動くようになることもある
ただし結構遅くなる
限界まで頑張った結果adabeliefやらのオプションをonにしたらメモリ不足でエラーになるときとか最後の手段で使えなくもない
Q:adabeliefは切ってもいい?
A:実質adabeliefはtrue(ON)必須
ONにすると必要メモリ量が上がるが
"AdaBeliefは高い汎化性能、速い収束性、より良い安定性の3つを兼ね備えたオプティマイザー"
とのことで、綺麗に仕上がるし仕上がる速度も速くなる
強力なオプション
Q:モデルの使いまわしすると最初は似るが何度もやるとどんどん似なくなってくる(DST寄りの顔になってくる)
A:仕組み的にそういうものらしい
(LIAE-DFの場合)
〇〇_inter_AB.npy
〇〇_inter_B.npy
を削除(もしくは名前変えてバックアップ)して重みづけをリセットするとまたSRC寄りの顔になる
追記:とはいえDSTの顔が兄弟レベル程度に似てるくらいならこんなことしなくても追加で1,2日回せばがっつりsrcに似てくる
Q:顔の抽出に時間がかかる
A:Deepfacelabの顔抽出は非常に貧弱
faceswap等が高速であっという間に終わるのに対し(確か10枚/sとか)
deepfacelabで使う抽出機は1秒で1枚~程度しか抽出できない
30フレーム/sの動画で抽出なんてしようものなら
1分の動画でも1800フレームで20分以上抽出だけで時間かかりかねない
やはり動画編集ソフトで10フレーム/sあたりにしてから抽出するのが実用的(かも)
ちなみに角度が少しでもきつかったりすると抽出ミス多発するし
それを修正する機能も標準だと貧弱で非常に時間がかかる
deepfacelabの明確な弱点はこの抽出周りにある
(ほかにもdstにスワップした後に輪郭修正機能がやや貧弱なところもあるが)
楽なのはDSTも正面だけ、SRCも正面だけのインタビュー
これだと抽出ミスは少ない
しかし実際実用目的のDSTで正面オンリーの動画なんてほぼない
DST探しの旅に出るか、そこが改良されているアプリを使うか
ちなみにマニュアルで顔の輪郭を認識するときにどうあがいても輪郭がとれない時がある(顔がブレブレの時など)
右クリックをしてさらにマニュアルで顔認識することができる(ただし正面の顔だけ)
Q:表情があまり似ない
A:DSTでやっているのと同じ角度と表情のSRCが必要
それが足りないと無理やり予測してやるが足りない分だけ精度が下がる
DSTがSRCのやらない表情ばかりだと似せるのが困難になってくる
そういう意味でもやはり正面からのインタビュー動画同士は非常に楽に似せることができる
Q:SRCの素材集めが大変
A:DSTが正面が多い場合
SRCは正面からのインタビュー動画や電子版の写真集等からもってくると良かったりする
動画だと正面から高画質のものが少ないが
写真集はモデルの色々な角度の顔を高画質で撮っているのが多いので
Q:顔が体になじまない。顔色が体と合わない、顔が体と比べて浮く。顔だけ照明が違う
A:DSTとSRCの環境が違うとそうなりやすい
deepfacelabのmergeの際の色の設定はわりと貧弱なのでここでいじるのも限界がある
SRC側でDSTと同じ環境が用意できれば一番いいが、屋内(屋外)・照明の種類(強め・弱め・色等)が同じことはほとんどないのでSRCで一種類だけの素材を用意しても大抵顔が浮いてしまう(顔がなじまない)
よってSRC側で様々な環境のを用意してあげる必要がある
色々な顔色が用意されていると、trainの段階でうまく顔色が体になじむようになる
同じ人物でも環境(屋内・屋外その他)や照明で顔色が赤みがかったり青みがかったり、黄や肌が焼けたような色見になったりするが、いろいろなのを揃えるとここの問題はほぼ起きない
最低でもsrcは屋内のものと屋外のものくらい用意すると良いかも
ただし片側だけから強い照明・日光があたっているとかいう画像を使うと
それがそのままprd(生成された顔)に反映されたりするので注意
Q:やっぱり色が合わない
動画編集ソフトでDSTの色調調整すると良い
無料だとymm4とかでも色調調整できる
といってもymm4だと色が濃すぎる場合彩度を下げたり程度
それでも十分なパターンが結構ある
aviutlだと確か重すぎるファイル開くと重くなったりするので微妙に使いづらいが色々拡張性は高い
Q:VRAMは大量にあるはずなのにメモリエラーが出る
A:本体の仮想メモリの量を増やすと直るパターンもある
Q:眼鏡等が邪魔でうまくできない
A:基本的にそういうのはx-segでマスクをすると解決する
簡単なのなら自動でやってくれるのがもともとついている
dstにメガネがある場合は↓これをまず最初に使ってからtrainする
5.XSeg Generic) data_dst whole_face mask - apply.bat