「2) extract images from video data_src.bat」を実行し、data_srcの動画を画像で書き出します、data_srcは顔を移植する側、つまり画像は学習にしか使用しないないので、全フレーム書き出す必要はありません。書き出すフレームレートを選択できます。素材が短い場合は全フレーム書き出したほうが良いかもしれません。
「3.2) extract images from video data_dst FULL FPS.bat」を実行し、data_dstの動画を全フレーム画像で書き出します。こちらは顔を移植される側なので、最後に顔を移植して動画にする際に全フレーム必要になるので、自動的に全フレーム書き出しとなります。
「4.2.2) data_src sort by similar histogram.bat」を実行すると、data_srcフォルダの中のalignedに入っている、画像がヒストグラムで並べ替えられます。ここではヒストグラムが何なのかは説明しませんが、これを実行すると似た画像で並べ替えられるので、誤検出された画像を見つけやすくなります。並べ替えが終わったら、フォルダを開き誤検出された画像を削除します。
data_dstも同様に「5.2) data_dst sort by similar histogram」を実行し、並べ替えた後、誤検出された顔画像を削除します、
上記条件でどのエグゼを実行しても
「No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL mode.」「Running on[CPU]」と表示され、またタスクマネージャーで確認してもCPUの占有率は98パーセント以上になるのにGPUは殆ど使われていません。これはGPUでの処理ができていなとの認識で間違いないでしょうか。
DeepFaceLabのbatはすべてのbatでGPUを必要とする訳ではなく、CPUだけで処理するものもあります。
ただ質問者さんの言う通り「No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL mode.」と表示されているということは、CUDAが正常に動作してないものと思われます。
工程ごとに
No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL mode
と出ますが作業は普通に進んでいきました
これが普通なのかはわかりませんが
一応作れましたのでご報告です
お騒がせしました
No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL modeと表示が出ているとのことですが、
ビデオカードを積んでいるマシンを使用されてないのでしょうか。
ビデオカードを積んでいるのにこの表示が出るのであれば、ビデオカードが正常に使用されてないのではないかと思います。
from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
私もアキョウさんと同じ環境(2070S)なのですがtrain時に同様のエラーが出ます。バッチサイズを下げてもエラーはなぜか出るという感じで、勝手に4にされる。(4以下にしていてもエラーが出て、4になるのが謎)
そして、Train自体は問題なく進むものの、そのあとのConverterでは処理が始まらなくなります。
その時出るエラー文ぽいのは
no faces found for 00001.png, copying without faces
>no faces found for 00001.png, copying without faces
まず、これ自体はエラー文ではなく、顔を合成する際に、data_dst側の動画から書き出した画像に人物の顔が見つからなかった時に出る表示です。
この場合は顔の合成は行われず、data_dstから書き出した画像がそのまま使用されます。
だた、data_dst/00001.pngに人物の顔が写っているのにこの表示が出ているのであれば、何から問題があるかもしれません。
>from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
これについては、詳しい原因かは分かりませんが何かしらがメモリを占有してるのが原因でしょう。
私も色々と探しては見ましたが、決定的な解決法のようなものは見つかりませんでした。
DeepFaceLabではないですが、DeepFaceLabでも用いているTensorFlow関係で「CUDA_ERROR_OUT_OF_MEMORY: out of memory with RTX 2070」というページがgithubにありました。
ここでは、「なぜかは分からないが、DDU (Display Driver Uninstaller)を使って、グラフィックドライバーをアンインストールして、再インストールしたら正常に動いた」とは書かれていますが、、、
4) data_src extract faces S3FD best GPU.bat以降の段階全てでバッチファイルを実行すると
Traceback (most recent call last):
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\DeepFaceLab\main.py”, line 272, in
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\python-3.6.8\lib\site-packages\sci
py\linalg\__init__.py”, line 195, in
from .misc import *
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\python-3.6.8\lib\site-packages\sci
py\linalg\misc.py”, line 5, in
from .blas import get_blas_funcs
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\python-3.6.8\lib\site-packages\sci
py\linalg\blas.py”, line 214, in
from scipy.linalg import _fblas
ImportError: DLL load failed: ネットワーク名が見つかりません。
続行するには何かキーを押してください . . .
といったエラーが発生してしまいます。
行程3の顔の抽出がうまくいきません。
以下4) data_src extract faces S3FD best GPU.bat開始後のログです。
Performing 1st pass…
Running on Advanced Micro Devices, Inc.. Recommended to close all programs using
this device.
Using plaidml.keras.backend backend.
Exception: Traceback (most recent call last):
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\DeepFaceLab\joblib\S
ubprocessorBase.py”, line 59, in _subprocess_run
self.on_initialize(client_dict)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\DeepFaceLab\mainscri
pts\Extractor.py”, line 79, in on_initialize
self.e = facelib.S3FDExtractor(do_dummy_predict=True)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\DeepFaceLab\facelib\
S3FDExtractor.py”, line 17, in __init__
self.model = nnlib.keras.models.load_model ( str(model_path) )
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\saving.py”, line 419, in load_model
model = _deserialize_model(f, custom_objects, compile)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\saving.py”, line 225, in _deserialize_model
model = model_from_config(model_config, custom_objects=custom_objects)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\saving.py”, line 458, in model_from_config
return deserialize(config, custom_objects=custom_objects)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\layers\__init__.py”, line 55, in deserialize
printable_module_name=’layer’)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\utils\generic_utils.py”, line 145, in deserialize_keras_object
list(custom_objects.items())))
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\network.py”, line 1032, in from_config
process_node(layer, node_data)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\network.py”, line 991, in process_node
layer(unpack_singleton(input_tensors), **kwargs)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\base_layer.py”, line 457, in __call__
output = self.call(inputs, **kwargs)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\layers\core.py”, line 687, in call
return self.function(inputs, **arguments)
File “D:\DFLBuild\DeepFaceLab\test.py”, line 558, in
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\keras\backend.py”, line 432, in constant
return variable(np_value, dtype=dtype, name=_prepend_name_scope(name, ‘const
ant’))
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\keras\backend.py”, line 1667, in variable
_device(), plaidml.Shape(_ctx, ptile.convert_np_dtype_to_pml(dtype), *value.
shape))
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\keras\backend.py”, line 88, in _device
devices = plaidml.devices(_ctx)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\__init__.py”, line 1066, in devices
_setup_fail(“No devices found.”, enumerator.invalid_devs)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\__init__.py”, line 1054, in _setup_fail
message, available))
plaidml.exceptions.PlaidMLError: No devices found. Please run plaidml-setup. The
following devices are available:
b’opencl_cpu.0′
b’opencl_amd_oland’
b’opencl_cpu.1′
私はGTX 1080 Tiを使用しているので、環境が異なるので参考になるか分かりませんが、最近のbuildのものを使うと「CUDA_ERROR_OUT_OF_MEMORY: out of memory」のエラーが出ました。
「build_06_20_2019」だとエラーは出ないので、私の環境ですとbuildの違いによるものかと思われます。
DeepFaceLabは3つの種類のバージョンにしか対応してないですが、それ以外の対応してないPCでもSRCの作成は可能ですか?
extract images from video data_src.bat等SRCの作成のみを一般的なスペックのノートPCで動かしたいのですが、バージョンが対応してないです。
バージョン対応させることは可能なのでしょうか。
2.素材動画を全フレーム画像書き出し
3.顔部分のみを抽出
4.誤検出された画像を削除
つまり2) extract images from video data_src.bat」等のみノートPCで行い、TRAIN等の後の工程はクラウドで行いたいと考えています。
何度か動画を作って練習しています。
今回はなぜか今まで通りしていたつもりなのですが
最後の8) converted to mp4.batのところで
[image2 @ 0000021fb9beb4c0] Could find no file with path ‘C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png’ and index in the range 0-4
C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png: No such file or directory
[image2 @ 000002492335b4c0] Could find no file with path ‘C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png’ and index in the range 0-4
C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png: No such file or directory
とても分かりやすい記事でした。
しかし、トレーニングは正常にできるものの変換が以下の通り出て、顔が差し替えられる側の画像の原画のままコピーされます。どこか間違えたのかと思い、(1)で一度workspaceを消去してやり直しましたが出来ませんでした。原画は全てで一画像も顔認識出来ていないようです。教えていただきたいです。
o faces found for 05192.png, copying without faces
Converting: 100%|##################################################################| 5201/5201 [01:09<00:00, 74.40it/s]
Done.
続行するには何かキーを押してください . . .
trainは終わったら自動でコマンドプロンプトは閉じられるのでしょうか?
それともある程度学習したと判断したら自分で閉じてconvertに移っても問題ありませんか?
返信遅くなりまして申し訳ないです。
この記事の解説だと、エンドレスに学習するようにしているので、ある程度学習したら、trainを終了する必要があります。
train中に画像が表示されているウィンドウを一度クリックしてから、Enterキーを押すと任意のところでtrainを終了できます。
その後にconvertを開始してください。
6番まではうまくいったのですが、最後の7番で「reference_file not found.」と出て処理されません。。。
「data_dst」内の「merged」に合成された画像群もできていて、あとはつなげて動画にするだけなんですが。。。
ここで不具合が起こったことがないので、なんとも言えません…。
何かしらのファイルがないのは明白なのですが。何回か別の学習もやってみて、再発するようでしたら、またコメントしてください。
build_06_20_2019置いて戴いてありがとうございます。こちらでH128でtrain開始したらCUDA_ERROR_OUT_OF_MEMORY: out of memoryの表示は無くなりました。
以前のものはH128ではバッチサイズ変更しても表示が出て、H64ではバッチサイズ4位なら表示が出ない様でした。
ありがとうございました。
解決してよかったです。buildの問題だったんですね。
RTXシリーズのビデオカードは持ち合わせてないので、参考になります、ありがとうございます。
使用OS:windows10 Home
CPU :Core i7 4770K
RAM :16GB
GPU :GeForce760(2GB)
CUDAバージョン:9.2
使用したDeepFaceLabバージョン:DeepFaceLabCUDA9.2SSE
上記条件でどのエグゼを実行しても
「No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL mode.」「Running on[CPU]」と表示され、またタスクマネージャーで確認してもCPUの占有率は98パーセント以上になるのにGPUは殆ど使われていません。これはGPUでの処理ができていなとの認識で間違いないでしょうか。
DeepFaceLabのbatはすべてのbatでGPUを必要とする訳ではなく、CPUだけで処理するものもあります。
ただ質問者さんの言う通り「No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL mode.」と表示されているということは、CUDAが正常に動作してないものと思われます。
工程ごとに
No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL mode
と出ますが作業は普通に進んでいきました
これが普通なのかはわかりませんが
一応作れましたのでご報告です
お騒がせしました
No CUDA devices found with minimum required compute capability: 3.5. Falling back to OpenCL modeと表示が出ているとのことですが、
ビデオカードを積んでいるマシンを使用されてないのでしょうか。
ビデオカードを積んでいるのにこの表示が出るのであれば、ビデオカードが正常に使用されてないのではないかと思います。
自分もこの方と同じ状態です
もし解決できていたなら教えていただけたら幸いです
初めまして。
こちらのページを参考に動画を一つ作ることが出来ました。ありがとうございます!
試しに作ってみたところ精度がかなり悪かったので素材選びも少し考えた方が良さそうでした…。ところで、1度学習に使った動画または画像をそのままに、追加で学習させて精度を上げるというようなことは可能なのでしょうか??答えにくい質問だったらすみません。
返信遅くなりまして、申し訳ないです。
お役に立ってよかったです。精度については素材の選び方もありますが、trainの時間によっても変わってくるので、いろいろ試してください。
学習に使ったmodelを別の学習で使用することはできませんが、学習に使用するalignedのフォルダに入っている、顔の画像は他の学習で使用することができます。
data_srcを別のもので使用する場合は、alignedのフォルダの中に顔の画像が入っていればOKです。
data_dstを別のもので使用する場合は、動画にする際に顔画像以外もも必要なのでdata_dstの中身が丸々必要です。
ここまで素材がそろっていればいきなりtrainから始めても問題ありません。
また、分からないことなどありましたら、お気軽にご質問ください。
明日、1060、6GBをメモリ16GBのPCに実装して始めます。
一通り拝見しましたがsrc側の素材に静止画を使う場合はどのように放り込めば良いのでしょうか?静止画で一旦スライドショーを作り、動画素材と連結させて作った動画を連結させて放り込めば理屈的には出来そうですが、そういうことしなくてもこうやって放り込めば静止画のまま使えるよ、と言うのがあれば教えて頂きたいです。
静止画は簡単に素材に追加することができます。
まず「DeepFaceLabCUDA9.2SSE」のDeepFaceLab本体のフォルダを複製して、作業用にひとつフォルダを作りましょう。
(必須ではないですが、分けておいたほうが便利かなと思います。)
次に、素材に使用したい画像をすべて「workspace/data_src」の中にいれます。
そして「4) data_src extract faces S3FD best GPU.bat」を実行すれば、data_src内に入れた画像から、顔部分のみを切り出した画像が「workspace/data_src/aligned」のフォルダ内に出力されます。
その静止画だけで、学習することもできますし、他の動画素材から切り出したalignedの画像と混ぜて使用することもできます。画像のファイル名は連番でも、何でも構いません。
早々のご返信ありがとうございます!
また大変丁寧にご教授いただいて幸甚です!
今後ともよろしくお願いいたします!
お世話になります。貴重な記事ありがとうございます。以下記事をチェックしたのですが今回の同じアルゴリズムを適用していると思われますか?GANについて詳しくなく本技術がgithubにあれば教えて頂きたいです。またこの技術解説もぜひしてください!待ってます!
顔写真1枚で簡単にディープフェイク映像を作成できる無料アプリ登場、中国で大人気に
https://gigazine.net/news/20190903-iphone-deepfake-app-zao/
私は情報分野の人間ではありますが、実は深層学習・機械学習についてはあまり詳しくないので、断言はできませんが、
この「ZAO」というアプリでは、DeepFaceLabのようにAさんの顔をBさんの顔に変換するように学習させるというよりかは、
サーバー側に、アップロードされた1枚の顔画像をどのように動画に合成するか、事前に学習させてあり、それに従って動画に合成しているのではないかなと思います。
いちいちGANで学習させていては、大量のユーザーに対応できませんし、時間もかかるので。
DeepFaceLabについては、Githubでも公開されています。
https://github.com/iperov/DeepFaceLab
お世話になっております。
顔素材の抽出までは上手くいったのですがTRAIN段階になってつまづいています。
具体的にはTRAINが始まらない事。
コマンドプロンプトの中では動きがあるのですが、決定とした後コマンドの画面は閉じてしまいエラーも出ず、しかし待てど暮らせどTRAINのプレビューが表示されません。
src側の素材数が多すぎるのかなと思い(14,000点ほど)、試しにソフトに付いてくるヒゲのおっさんのサンプルで試してみたのですが、やはり学習段階で同様の症状が起きます。
CUDAは9.2、メモリ16GBでグラボはgtx10606GBです。
バッチ数を落としてみても同様の症状です。
何か必須の事が出来ていない気がするのですが考えられる原因はありますでしょうか。
失礼しました。
私、結局ご指示頂いた手順のとおりに進めていませんでした。
今後ともよろしくお願いいたします!
src側alignedフォルダの顔が合成されるわけですが、convertの際にその顔の「鼻から上を使う(口はdst側を使用する)」などといった範囲指定の様な事は可能なのでしょうか?
ユーザーがマニュアルで顔の位置合わせをする機能はあるようですが、data_dstも、data_srcも「鼻から上」だけを使って学習するというのは、できないかと思います。
コメント(質問)を失礼します。
2点質問がありまして、お知恵を拝借したいです。
1)trainについて
100000ほど反復させると毎回パソコンがフリーズしてしまうのはなぜでしょう。
2)GPUの使用率について
NVIDIA 1660 Tiを使用していますが、全体の使用率がtrain時に5%程しか使っていません。
CUDAの使用率は99%程なのですが、これはGPUをちゃんと使えているのでしょうか?
初心者なものでよろしければご教授お願いします。
>1)trainについて
100000ほど反復させると毎回パソコンがフリーズしてしまうのはなぜでしょう。
なぜかは分からないです。少し海外のフォーラムを漁ってみます。
ただ8万回程度の学習でも、そこそこ高品質なものができているのではないでしょうか。
あとはフリーズした後に強制終了等して、再度trainのbatを実行すれば前回のセーブしたところから再度学習をスタートできますが、これでもフリーズしてしまうでしょうか。
2)GPUの使用率について
NVIDIA 1660 Tiを使用していますが、全体の使用率がtrain時に5%程しか使っていません。
CUDAの使用率は99%程なのですが、これはGPUをちゃんと使えているのでしょうか?
GTX 1660 Tiは使ったことがないので、何とも言えませんがCUDA使用率が99%なら、正常に動いているような気もするのですが・・・
Train中は以下のような表示が出ていると思います。
このような表示の左から3列目の数字は一度の学習にかかる時間なのですが、ここはだいたい何msの表示になっているでしょうか。
あとはフリーズする時点でLOSS値(左から4列目・5列目の数字)どの程度の値になっていますでしょうか。
例)
[19:10:52][#045254][1336ms][0.4241][0.3113]
[19:25:55][#045889][1323ms][0.4229][0.3116]
[19:40:59][#046524][1320ms][0.4204][0.3099]
[19:52:31][#047009][1377ms][0.3849][0.2987]
お返事ありがとうございます。
1)trainについて
再開すると2時間ほど稼働し、フリーズする感じです。
trainは進んでいるのですが、パソコンの電源の切り方がコンセントから抜くしか方法がなくなるのでフリーズしない方法はないかと思いまして。
2)GPUの使用率
値は下記のような感じです。
[11:44:15][#123799][0278ms][0.6070][0.3700]
[11:59:17][#127254][0277ms][0.6023][0.3625]
[12:14:20][#130709][0274ms][0.5993][0.3593]
[12:29:22][#134165][0277ms][0.5948][0.3572]
となります。
よろしくお願い致します。
mergedのフォルダをみると、顔の移植ができていません。
移植がうまくいかない時の改善点などはありますか
うまく移植(合成)できていないというのは、まったく合成されてないのか、合成はされているが、顔がぼやけている・不鮮明等どちらでしょうか。
後者であれば学習が十分でない可能性や、data_srcの素材が十分でない場合があります。
素材が十分でないというのは、例えばdata_dstに横顔の画像があれば、data_srcにも横顔から写した画像がないと、横顔の学習・合成がうまくいきません。
学習についてですが、学習中下記のような表示が黒い画面に表示されていると思いますが。
例)
[19:10:52][#045254][1336ms][0.4241][0.3113]
[19:25:55][#045889][1323ms][0.4229][0.3116]
[19:40:59][#046524][1320ms][0.4204][0.3099]
[19:52:31][#047009][1377ms][0.3849][0.2987]
2列目の[#045254]は学習した回数を表します、最低でも3万~4万回程度は必要かと思います。
参考程度に、海外のフォーラムには12万まで、やれば十分といった表記もありました。
3列目の[1336ms]は1回の学習にかかる時間です。
4・5列目の[0.4241][0.3113]学習の進行度合い(進むにつれて減少する)を表します。
[0.2000]近くまで行くと良いそうですが、少なくとも[0.4000]~[0.3000]くらいまでいかないと、合成しても、不鮮明かもしれません。
お世話になっております。
現在build_06_20_2019がMEGAに上がっておらず、他の種類を使用しているのですが、もうbuild_06_20_2019は手に入らないのでしょうか。
もしくはどこかにあるけど見つけられてないのか・・・。
手順にある通り、オーバーレイだと黒い枠線が出てきてしまって困っております。
今でもDLできるのかどうか、もしできるのならば教えていただけると幸いです。
確認しました。本当ですね、もうダウンロードできなくなってますね。
とりあえず、記事内に「DeepFaceLabCUDA9.2SSE_build_06_02_2019」のダウンロードリンク設置しました。
どうやら「build_09_13_2019」がリリースされたようで、現在テスト中です。
こちらで改善されていると良いのですが。
迅速な対応ほんとうにありがとうございます!とても助かります…。
素晴らしい、そして迅速なご対応に感謝します。
特に学習中のcmd画面の説明や旧バージョン入手のリンクは自分がまさに質問しようとしていたコンテンツで完全に神、でした(笑)
また具体的な学習回数についても最低ライン、理想ラインを示して頂いて本当にありがたいです。
バッチサイズが32では全然ダメだったので試しに4から始めたのですが自分の環境では12万回まで学習するのは単純計算で20時間ほどかかるもよう。
ですが、「この辺かな」と言うラインを示していただけたのがとてもありがたいです。
どうやらコマンド画面の説明になって中の4列目、5列目の数字がいわゆる「ロス値」にあたるもののようですね。
この情報もありがたいです。
ちなみにプレビュー画面の見方ですが、何やら合成を試みているようなものも散見されるプレビューが、更新されるうちほぼ同一人物のものの連続に見えて来る、と言うようなことでしょうか?
また上の波形データのようなものが何を表しているのかご教授頂けたら幸甚です。
あ、このグラフがつまり4~5列目の推移を示してるんでしょうか。
つまり学習が進むにつれ下に張り付いてきてさらに進めると荒い波が徐々に収束してくるとか。
もちろん一本の線になったりゼロになることは絶対にないのでしょうけれども。
>このグラフがつまり4~5列目の推移を示してるんでしょうか。
おっしゃる通りです。グラフはLOSS値の変化の推移を表しています。
基本的には徐々に下がっていきますが、素材が少なかったり、悪かったりすると
途中で下がりにくくなったり、安定しなくなります。
>ちなみにプレビュー画面の見方ですが、何やら合成を試みているようなものも散見されるプレビューが、更新されるうちほぼ同一人物のものの連続に見えて来る、と言うようなことでしょうか?
こちらもおっしゃる通りです。
プレビュー画面の画像が5列あると思いますが、
左から1列目が元のdata_src、2列目は学習したデータを使ってdata_srcを生成したもの。
3列目は元のdata_dst、4列目は学習したデータを使ってdata_dstを生成したもの。
最後5列目が学習したデータを使って、data_dstをdata_srcに変換したものになります。
ですので、プレビュー画面では視覚的に学習の進行度合いを確認することができます。
ありがとうございます!
cmd画面の4、5列目の数字が0.2あたりを割ってきて、プレビュー画面の5列目がsrc側の本人に見えてきた時が作り時、という事ですね。
とてもご丁寧に、また分かりやすくありがとうございました。
使用時の疑問、質問でなくて申し訳ありません…
何度も繰り返し結果をチェックすれば自分で把握できることなのかもしれませんが
もしご存じでしたら教えて下さい
AIですと「この表情が一番なんだ」といった各人の主観的な部分には不介入だと思います
trainの際には「動画を均等にコマ切りした顔部分」の画像が素材になると思いますがいくつか不明点があります
例えば…(基本的には同一被写体で同一照明条件が望ましいのだと思いますが)
途中から化粧で眉毛の太さが変わったとしたら…
中間になるのでしょうか…
太さは抽出画像の比率で変わったりするのでしょうか…
それともベースや変化中といった区分けがされたりする?
(私のsrc動画の相手は口を尖らせる癖があり、抽出画像のほとんどがおちょぼ口になりそう)
動画で変顔が多い場合に、変顔の抽出画像を削ってからtrainに進んだ方が良いのか、それも学習に入れ込んだ方が良いのか…
真顔や笑顔と比べて、変顔が多い場合は、その変顔を全削除もしくは画像量を減らすべきでしょうか?
画像の中で一番多い位置や角度で顔のベースが確立されるなら表情によって画像量を変えないとならないですが
尖らせた口や鼻を伸ばした顔を、ベースの顔のそういった表情である認識してもらえるものなのでしょうか?
的違いな質問になっていたらごめんなさい
もし知っている部分がありましたら教えてもらえると助かります
例えば、data_dstの動画の人物が泣いている表情場合、data_srcの動画の人物も泣いている表情が映っている動画にしたほうが、より良いと思います。
というのも、一度、data_dstの人物が泣いている動画で、data_srcの動画の人物は笑顔でインタビューを受けている動画で、学習させたことがありますが、
学習させ合成した動画を観てみたところ、泣いているというのは分からなくもないですが、合成した顔の口角が上がっていて、泣いているにも関わらず、笑っているような動画になっていました。
つまり、本来は泣いているはずだけれども、data_srcに笑顔で写っている場面しかなかったため、これにひっぱられてしまったんだと思います。
他にも色々と試してみましたが、現状のdeepfakeでは、学習させればどんな表情でも違和感なく生成するということは不可能なようで、感覚的には、data_srcの画像から似ている画像を探してきて上手く合成しているというような感じに近い気がします。
ですので、data_srcの中にdata_dstの動画と同じ角度で、同じ表情で映っている部分があるのが一番良いと思います。
data_srcに変顔の画像等が入っていても、真顔や普通の表情で映っている部分があれば、合成後の真顔や普通の表情が変顔に影響を受けることは少ないんじゃないかなと思います。
丁寧で分かりやすい説明ありがとうございます
確かに以前、srcを少し上からの撮影だけで進めてdstが下からのアングルが多かった際は合成後は歪な仕上がりになってました
勝手に(画像)素材からお互いの顔が生成されていく?…なんて思っていましたが
どちらかというと近い画像を引っ張ってからコンバートしていく感じなんですね(確かに進行時はそういった処理がみれてます)
素材が足りないと何かしらで生成して進んでしまう…だから色々と入れ込んでおいた方がいいという事ですよね
不要(類似していない)な素材は置いておいてもあまり影響がでない感覚で進めていきます
もう一つ、もし分かる部分があれば教えて下さい
抽出後に顔データとして置いておかない方が良い、(なるべく)フォルダから削除した方が良い画像ってどんなものがあります?
(現在は全く顔でない画像のみ削除してます)
思い当たるのは
顔の1/3や半分ちかく見切れてる
ピントが合っていない
ブレで被写体がはっきりしない(伸びていたり)
やはり処理時間の問題なだけで、不要(不一致)な画像データは触らなく結果に影響がないといった感じなのでしょうか?
そして気になるのは
サイズや色、光などパラメーターとして一括設定しますよね
サイズに関しては抽出時に同一サイズにしているのでFACE SCALEはすべてのコマに同じ状況となりますよね
境界ぼかしやconvertのモードに関しても同じと思われます
そこで肌色の補正に関しても全コマ同一の処理となったりしますか?
色補正の方法やコマごとに補正をかけているのか分からないので、
光源の位置や肌の色合いや撮影時の明るさなど違うものが混在しない方が良いのでしょうか?
まだ始めてばかりですがいつも参考にさせていただいております。
これからもよろしくお願いします。
いくつか質問よろしいでしょうか?
まず、dst側の顔データをよみこんだときに生成される赤と青の四角い枠?は何を表しているのでしょうか?
それからH128をコンバートするときに選択できるmask modeで通常はlearnedという事ですが、dst にするとどう言う働きがあるのでしょうか?
よろしくお願いします。
>まず、dst側の顔データをよみこんだときに生成される赤と青の四角い枠?は何を表しているのでしょうか?
顔の画像を切り出したり、学習させたmodelを使って合成する際などに、顔の傾きや、目がどの位置なのか、目が閉じているか開いているか、口角が上がっているかとか、口が開いているか閉まっているかとかも、必要になってきますよね。そうでないと表情まで再現できなくなってしまいますからね。そのためにDeepFaceLabがこれらの結果(どのように顔を認識しているか)を、data_dstのフォルダ内aligned_debugというフォルダに画像で出力しているものになります。青い枠線は単に顔の部分を、画面に対して水平・垂直の四角形で囲ったもので、赤の四角い枠は顔の角度に合わせて囲ったものでしょう。
>それからH128をコンバートするときに選択できるmask modeで通常はlearnedという事ですが、dst にするとどう言う働きがあるのでしょうか?
mask modeは簡単に言うと、modelを使って合成する際(convert時)に、どこからどこまで元の顔の部分を使って、どこからどこまでmodelで生成しした画像を合成するのかのマスク範囲のことです。
learnedはその通り学習したmodelからマスク範囲決めていますが、dstにすると、dstに写っている人物の顔画像から生成したマスク範囲を使用して、合成を行います。
基本はlearnedで問題ないと思いますが、learnedを使用したときにdstの人物のオリジナルの口や目が飛び出て写ってしまう場合などに、mask modeをdstにすると、多少マスク範囲が広がって、改善されるかもしれません。
はじめまして
「build_06_02_2019」もしくは「build_06_20_2019」が一番高品質な動画を制作することができます。との事でしたが、サイトにはリンクが無く最新版のを試してみましたが輪郭部分に四角の枠がハッキリ移ってしまいうまく制作出来ませんでした。
「DeepFaceLabCUDA9.2SSE_build_06_02_2019」のダウンロードリンクはありますがCUDA10.1のリンクも貼って頂けますでしょうか。
宜しくお願い致します。
あいにく、「build_06_20_2019」以前のCUDA10.1のダウンロードリンクがもうないようで、現在 海外の管理者の方に、過去のバージョンを再度アップロードしていただけないかお願いしています。
進捗ありましたら、また返信もしくは新しい記事でお知らせさせていただきます。
現在の新しいバージョンのものではConvertする際にoverlayを使用すると上手くいかないようで、seamlessを使用するとまだ綺麗に合成することができます。
ただ「build_06_20_2019」のorverlayほど違和感なく合成はできないです。
迅速な対応ありがとうございます。
seamlessを使用しましたが綺麗なものと比較するとやはり劣ってしまいますね。
build_06_20_2019が再アップの知らせを待ちつつ、綺麗に作成できる方法を模索したいと思います。
自分は6の工程までAVX10.1でやって7以降の工程をSSEのbuild_06_20_2019で実行してきれいにできました!ありがとうございます!
お待たせしました・
https://www.deepfake.xyz/deepfacelab/deepfacelab-build-06-20-2019/
こちらのページに「build_06_20_2019」のCUDA9.2 / CUDA10.1 SSE / CUDA10.1 AVX / OpenCL SSE の各バージョンのダウンロードリンクを設置いたしましたのでご利用ください。
【一部コメントの内容を変更させていただきました】
食事等の口にものを運ぶシーンで、合成しても口元の部分が不自然にならない動画を作りたいです。
色々と方法がありますが、私なら動画編集ソフト(PremierProなど)で合成前と合成後のを重ねて、口元の部分だけ合成前のものを使用するようにマスクをかけるなどするのが良いのではないかと思います。
質問のしかたが愚かですみませんでした!そのやりかたでためしてみます!
あと、このサイトにはすごく感謝しています。完成度が2%ぐらいですが、作品ができたとき、感動しました!あらためて、ありがとうございます!
根気強い作業が必要ですが、頑張ってください。
言われた通りにやったらできました!ありがとうございます(*^^*)
この件、自己解決しました。
長文で見苦しいので削除頂けるとありがたいです。
今後ともよろしくお願いいたします。
承知しました。
何が原因だったかとかって、教えていただけますか?
初めまして。
無知な質問で申し訳ないのですが、deepFacelabをダウンロードするには登録が必要とのことですが、登録したことによって料金が発生したり何か損害を被ることがあるのでしょうか?
海外のサイトなので心配で┏〇゛
特にお金を請求されたり、スパムメールが送られてくる等は発生していません。
当記事内に「DeepFaceLabCUDA9.2SSE_build_06_02_2019」のダウンロードリンク設置していますので、GTXシリーズのビデオカードをご使用でしたら、こちらからダウンロードもできます。
ご返答ありがとうございます┏〇゛
機械音痴なのでどっかで躓くかもしれませんか、こちらのサイトを参考に頑張ってみます。
data_srcでの顔部分のみの抽出のところなんですが、うまくいきません。
動画に映っている人は一人のみにしているのですが、顔がアップにならず、デフォルトの画像になってしまいます。
サンプルで試してみると顔のみ抽出してくれるのですが…
どうすれば良いのでしょうか?
顔が、顔として認識されてないとしか考えられないですね。
顔が顔として認識されない、人物がいるんでしょうか?…
素材の問題ではないかなと思いますが…
はじめまして
train時
from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
と出てしまうのですが、train自体は進んでいる様です。これは問題ないのでしょうか?
また、DeepFaceLabのダウンロードページにCUDA10.1AVXとCUDA10.1SSEの2つ有るのですがこれは何が違うのでしょうか?初心者のためくだらない質問ですいません。
スペックはRTX2070SUPER、HP内でご教示戴いているCUDA10.1を入れれたと思います。という状態です。宜しくお願いします。
AVXについてはこちらのWebサイトをご覧いただければと思います。
http://blog.livedoor.jp/ocworks/archives/52088704.html
AVXはIntel 第二世代Coreプロセッサー(Sandy Bridge)以降のCPUがサポートしている拡張命令セットのひとつです。
恐らく最近のCPUを搭載したマシンをお使いだと思いますので、CUDA10.1 SSEではなく、CUDA10.1 AVXで問題ないと思います。
「from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory」については、バッチサイズが大き過ぎるのが原因かもしれません。
一度、バッチサイズを小さくして試してみてください。
ありがとうございます。
色々試してみます。
8の工程までできて、とりあえず動画完成することができたのですが、作り終わった動画を開いてみると「このアイテムは、サポートされていないフォーマットでエンコードされています。」という表示がでて、音声しか再生されませんでした。
どうすればよいのでしょうか?教えていただけると幸いです。
動画の再生ソフトの問題ではないでしょうか。
しかし、mp4で書き出していれば、どんな再生ソフトでも再生されるはずなので不思議ですね。
その前の段階のdata_dst内のmergedフォルダには、顔を合成された画像は正常に書き出されているでしょうか。
もう一度エンコードしたら映像が映りました。
お騒がせして申し訳ないです。
こんにちは!
dst側のファイルについてなのですが、顔側のファイルは関係ないものは削除するとありますよね。
対して体側(顔にポイントや四角が書かれているやつ)も例えば顔が映っていない画像などでグチャグチャな検出をしているものも削除して構わないのでしょうか?
コメントを失礼します。
srcで読み出した顔の画像をtrainに使用したら、エラーになってしまいました。
どちらも256ピクセルですが、元々の画像サイズが11.0KBで編集後が36.2KBと大きくなっていました。
編集して大きくなってしまった画像はtrainに使えないのでしょうか?
元々読み出した画像は問題なく読み取れます。
よろしくお願いします。
>元々の画像サイズが11.0KBで編集後が36.2KBと大きくなっていました
もの元の画像サイズというのは動画から1フレーム書き出した画像が11.0KBで、顔画像を切り出した画像が36.2KBになったという理解で合ってますでしょうか。
「編集後」というのが、どういう編集を指してるのかよく分かりませんが、画像の保存形式(jpgかpngか)による変化ではありませんか。
返信ありがとうございます。
顔画像を切り出した画像が11KBで、その画像を加工アプリでシャープに編集したものが36.2KBになっていました。
保存形式は顔画像と同じjpgで保存しました。
よろしくお願いします。
from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
私もアキョウさんと同じ環境(2070S)なのですがtrain時に同様のエラーが出ます。バッチサイズを下げてもエラーはなぜか出るという感じで、勝手に4にされる。(4以下にしていてもエラーが出て、4になるのが謎)
そして、Train自体は問題なく進むものの、そのあとのConverterでは処理が始まらなくなります。
その時出るエラー文ぽいのは
no faces found for 00001.png, copying without faces
このエラー?
>no faces found for 00001.png, copying without faces
まず、これ自体はエラー文ではなく、顔を合成する際に、data_dst側の動画から書き出した画像に人物の顔が見つからなかった時に出る表示です。
この場合は顔の合成は行われず、data_dstから書き出した画像がそのまま使用されます。
だた、data_dst/00001.pngに人物の顔が写っているのにこの表示が出ているのであれば、何から問題があるかもしれません。
>from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
これについては、詳しい原因かは分かりませんが何かしらがメモリを占有してるのが原因でしょう。
私も色々と探しては見ましたが、決定的な解決法のようなものは見つかりませんでした。
DeepFaceLabではないですが、DeepFaceLabでも用いているTensorFlow関係で「CUDA_ERROR_OUT_OF_MEMORY: out of memory with RTX 2070」というページがgithubにありました。
ここでは、「なぜかは分からないが、DDU (Display Driver Uninstaller)を使って、グラフィックドライバーをアンインストールして、再インストールしたら正常に動いた」とは書かれていますが、、、
すみません、trainが開始されたのかどうかはどこで判別すればいいのでしょうか。
コマンドプロンプトで顔画像が読み込まれ、プレビュー画面が表示されるまではしているのですがそこから特に動きがありません。
一応、convertも試してみたのですが元の画像にぼやけた四角形が乗っているだけでした。数時間しかやってないので単純に学習不足の可能性もあるとは思います…。
プレビューが表示された時点でtrainが開始されていると考えてもよいのでしょうか。
Trainを開始すると、コマンドプロンプトのような黒いウィンドウに下記のような、表示が出るかと思います。
例)
[19:10:52][#045254][1336ms][0.4241][0.3113]
正常にTrainが行われていれば、この5項目すべての値が、一度の学習毎に絶えず更新されます。
ちなみにこの表示は
1列目は「時刻」、2列目の[#045254]は学習した回数を表します、もちろん最初は#000001から始まります。最低でも3万~4万回程度は必要かと思います。
参考程度に、海外のフォーラムには12万まで、やれば十分といった表記もありました。
3列目の[1336ms]は1回の学習にかかる時間です。
4・5列目の[0.4241][0.3113]学習の進行度合い(進むにつれて減少する)を表します。
[0.2000]近くまで行くと良いそうですが、少なくとも[0.4000]~[0.3000]くらいまでいかないと、合成しても、不鮮明かもしれません。
すみません、スペックを下げたところtrainが開始され試行回数などが表示されるようになりました。
当方、corei7 9700 GTX1660 メモリ16gbを使用しているのですがスペック的には足りていないということでしょうかね。
また、train時に一度入力してしまったパッチ数などの設定は後から変更することは可能なのでしょうか。
お暇があるときにでもお答えくだされば幸いです。よろしくお願いします。
CPUは申し分ないと思いますし、メインメモリも16GBあれば十分ではないかと思いますが、GTX 1660ですとVRAMが6GBしかないのが原因ではないかと思います。
バッチサイズは、一度に学習する画像の数を設定するものですので、一度Trainを終了して、再度実行する際にバッチサイズを変更しても問題ないと思います。
とてもご丁寧で分かりやすいご回答ありがとうございます。お陰さまで、出来が良いとは言えませんがとりあえずの動画を作成することができました。
やはり、GPU性能の問題だったんですね。6GBあれば足りると思っていましたが、なかなか難しいものですね。
バッチサイズの変更についてですが、一度trainしたmodelを再度trainしようとすると続きからのスタートになってしまいます。
再度バッチサイズを変更してtrainをする場合はmodelのデータを削除して最初からやり直さなければいけないのでしょうか。
また、128HでtrainさせたmodelはSAE等のほかのtrainでも流用できるものなのでしょうか。
度々の質問で申し訳ありません。可能な範囲でお答えいただけたら幸いです。よろしくお願いします。
返信遅くなりまして申し訳ないです。
>バッチサイズの変更についてですが、一度trainしたmodelを再度trainしようとすると続きからのスタートになってしまいます。
再度バッチサイズを変更してtrainをする場合はmodelのデータを削除して最初からやり直さなければいけないのでしょうか。
再度trainのbatを実行し、続きからバッチサイズを変更することができますが、最初から異なるバッチサイズで学習をさせたい場合は、クマシロさんのおっしゃる通り「model」フォルダの中身をすべて削除しなくてはいけません。
>また、128HでtrainさせたmodelはSAE等のほかのtrainでも流用できるものなのでしょうか。度々の質問で申し訳ありません。可能な範囲でお答えいただけたら幸いです。よろしくお願いします。
異なるtrainのbatで作ったmodelについては、別のタイプのtrainでは流用できないと思います。
コメント失礼します。
4) data_src extract faces S3FD best GPU.bat以降の段階全てでバッチファイルを実行すると
Traceback (most recent call last):
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\DeepFaceLab\main.py”, line 272, in
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\python-3.6.8\lib\site-packages\sci
py\linalg\__init__.py”, line 195, in
from .misc import *
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\python-3.6.8\lib\site-packages\sci
py\linalg\misc.py”, line 5, in
from .blas import get_blas_funcs
File “C:\DeepFaceLab_CUDA_9.2_SSE\_internal\python-3.6.8\lib\site-packages\sci
py\linalg\blas.py”, line 214, in
from scipy.linalg import _fblas
ImportError: DLL load failed: ネットワーク名が見つかりません。
続行するには何かキーを押してください . . .
といったエラーが発生してしまいます。
使用環境は
CPU: Intel Core i5-4590
メインメモリ: 16GB
GPU: GeForce GTX 760
OS:Windows 8.1 (64bit)
DeepFaceLabCUDA9.2SSE
CUDA9.2
同様のエラーは掲示板等でも見当たらず、GPUの性能不足によるエラーではないのかと思いますがいかがでしょうか。
動作を確認してからGPUを買い替えようと考えているのですが、このエラーの原因が分からずコメントさせていただきました。
よろしくお願いします。
返信遅くなりまして申し訳ないです。
DeepFaceLabのを使用するにはCompute Capability 3.5以上のビデオカードが必要になります。
こむさんがお使いのGeForce GTX 760はCompute Capability 3.0ですので、このため正常に動作しないものと思われます。
どのGPUが、どのCompute Capabilityなのかはこちらのページ表がありますので、ご覧ください。
https://en.wikipedia.org/wiki/CUDA#GPUs_supported
いつもお世話になっております。
trainの学習時にPCにどれだけの負荷がかかっているのかを確認するためにタスクマネージャーを開いたのですが、その際、「タスクの終了」というところをクリックしたところ学習がストップしてしまいました。
もう一度、セーブされたところから学習を始めようとしたのですが、「No CUDA」というエラーが出てきてしまいます。
改善策教えていただくとありがたいです。
ちなみに、CUDA9.2を使用しており、再インストールも試してみましたが、学習時にエラーが出てしまいます。
お世話になります。
合計が上手く行かず困っているため、アドバイス頂けますでしょうか。
学習後、上記の方法で動画の書き出しをしているのですが
オリジナルと合成部分の境に黒い筋が入ってしまい
合成が上手く行ってないのですがどのようにすれば、解消できるのでしょうか。
返信遅くなり申し訳ありません。
どのbuildのものをお使いでしょうか?
「build_08_19_2019」以降については、umiさんのおっしゃる症状が確認されています。
もし「build_08_19_2019以降」のものをお使いでしたら、一度「build_06_20_2019」を試してみてください。
CUDA9.2 / CUDA10.1 SSE / CUDA10.1 AVX / OpenCL SSE の各バージョンのダウンロードリンクを設置しましたのでご利用ください。
https://www.deepfake.xyz/deepfacelab/deepfacelab-build-06-20-2019/
お世話になっております。
すみません、こちらの問題ですが自己解決いたしました。
お忙しいとは思いますが、これからもブログの更新を楽しみにしております。
ありがとうございました。
初めまして
新しい素材でtrainするときは前の学習データはフォルダから移動した方がいいですか?
また、学習したデータの再利用は可能でしょうか
初心者の質問ですいません。
ちなみにですが、どのようにして解決されましたか?
私の方でもCUDA系のエラーが出てまして…
お世話になっております。
トレインH64では起動するのにH128では起動しない原因ってわかりますでしょうか
はじめまして。
こちらを参考にやってみているのですが、batファイルが何一つ動きません。
コマンドプロンプトが出てすぐ消えてしまいます。
環境はGTX760 icore7 8GB です。
cudaも含め必要なファイルはインストールしたのですが。。。
初歩的な質問ですみませんが、原因がわかりますでしょうか。
返信遅くなりまして申し訳ないです。
DeepFaceLabのを使用するにはCompute Capability 3.5以上のビデオカードが必要になります。
美香子さんがお使いのGeForce GTX 760はCompute Capability 3.0ですので、このため正常に動作しないものと思われます。
どのGPUが、どのCompute Capabilityなのかはこちらのページ表がありますので、ご覧ください。
https://en.wikipedia.org/wiki/CUDA#GPUs_supported
Trainが終わりSAEHDでConvertしようとしたら
No frames to convert in input_dir.
というエラーが出ました
原因はわかりますでしょうか?
初めまして、早速質問なのですが trainをしてオプション選択してもrain Preview ウィンドウが立ち上がりません。学習出来てなさそうです、エラーメッセージが表示されてます。
Error: OOM when allocating tensor with shape[32,512,64,64] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc
mergedフォルダは生成されて画像も作成出来てますが、やはり合成はほとんど出来てないようです。
途中でやめて生成できた画像のみで、コンバートしてみたら動画は出来ました(ほとんど元の動画と変わらない)
CPU raizen5 3600
グラボ GTX1070
DeepFaceLabCUDA9.2SSE
CUDA9.2
翻訳ソフトかけてみましたが、エラーの内容を理解できませんでした。
原因は何なんでしょうか? 返信お待ちしております。
DeepFaceLab_CUDA_10.1_AVX_build_10_19_2019
を使って制作してみたのですがサイトに記載してあるように
このバージョンでは、顔を合成した部分に正方形のエッジが明らかに見えたりしてしまいます
DeepFaceLabCUDA9.2SSE_build_06_20_2019.exeはサイトリンクからDLできますが
CUDA10.1の06_20_2019.exeは入手することはできないのでしょうか?
またそれ以外の方法で顔の周りの四角を自然な感じにする事はできないのでしょうか?
お待たせしまして申し訳ないです。
https://www.deepfake.xyz/deepfacelab/deepfacelab-build-06-20-2019/
こちらのページに「build_06_20_2019」のCUDA9.2 / CUDA10.1 SSE / CUDA10.1 AVX / OpenCL SSE の各バージョンのダウンロードリンクを設置いたしましたのでご利用ください。
バッチサイズを下げたら起動しました
お騒がせしました。
リポD様
バッチサイズを下げたらうまくTRAIN H128が起動したとのことですが、いくつからいくつへ変更されたのでしょうか。
当方、H64は起動しますがH128は学習が始まらない状況のためお教えいただけると幸いです。
色々調べてグラボの性能不足(おそらくメモリ不足)と判明し、軽量版を使用したら動きました、バッチサイズを落としても動作するのかはまだ試していませんが、とりあえず解決しました。
お騒がせしました、すみません。
train時のオプションにてSrc face scale modifier %というものが表示されますがどういったものなのでしょうか。
行程3の顔の抽出がうまくいきません。
以下4) data_src extract faces S3FD best GPU.bat開始後のログです。
Performing 1st pass…
Running on Advanced Micro Devices, Inc.. Recommended to close all programs using
this device.
Using plaidml.keras.backend backend.
Exception: Traceback (most recent call last):
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\DeepFaceLab\joblib\S
ubprocessorBase.py”, line 59, in _subprocess_run
self.on_initialize(client_dict)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\DeepFaceLab\mainscri
pts\Extractor.py”, line 79, in on_initialize
self.e = facelib.S3FDExtractor(do_dummy_predict=True)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\DeepFaceLab\facelib\
S3FDExtractor.py”, line 17, in __init__
self.model = nnlib.keras.models.load_model ( str(model_path) )
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\saving.py”, line 419, in load_model
model = _deserialize_model(f, custom_objects, compile)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\saving.py”, line 225, in _deserialize_model
model = model_from_config(model_config, custom_objects=custom_objects)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\saving.py”, line 458, in model_from_config
return deserialize(config, custom_objects=custom_objects)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\layers\__init__.py”, line 55, in deserialize
printable_module_name=’layer’)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\utils\generic_utils.py”, line 145, in deserialize_keras_object
list(custom_objects.items())))
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\network.py”, line 1032, in from_config
process_node(layer, node_data)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\network.py”, line 991, in process_node
layer(unpack_singleton(input_tensors), **kwargs)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\engine\base_layer.py”, line 457, in __call__
output = self.call(inputs, **kwargs)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\keras\layers\core.py”, line 687, in call
return self.function(inputs, **arguments)
File “D:\DFLBuild\DeepFaceLab\test.py”, line 558, in
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\keras\backend.py”, line 432, in constant
return variable(np_value, dtype=dtype, name=_prepend_name_scope(name, ‘const
ant’))
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\keras\backend.py”, line 1667, in variable
_device(), plaidml.Shape(_ctx, ptile.convert_np_dtype_to_pml(dtype), *value.
shape))
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\keras\backend.py”, line 88, in _device
devices = plaidml.devices(_ctx)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\__init__.py”, line 1066, in devices
_setup_fail(“No devices found.”, enumerator.invalid_devs)
File “C:\jww\DeepFaceLab\DeepFaceLab_OpenCL_SSE\_internal\python-3.6.8\lib\sit
e-packages\plaidml\__init__.py”, line 1054, in _setup_fail
message, available))
plaidml.exceptions.PlaidMLError: No devices found. Please run plaidml-setup. The
following devices are available:
b’opencl_cpu.0′
b’opencl_amd_oland’
b’opencl_cpu.1′
PlaidMLErrorとありますが疎いもので何の事やらさっぱり…
初めまして。新参者ですが、参考にさせていただいてます。
自分もあささんやアキョウさんと同じく下記が出ます。
from device: CUDA_ERROR_OUT_OF_MEMORY: out of memory
PCスペックは同じ環境16G 2070S です。
DDU行いましたが、変わらずでした。
しかし問題なく作業は進み、動画状態までいくことは可能でした。
パッチサイズ20で設定しているのですが4?に変更されてさ行されているのかどうかの判断ができないのでわかりませんが、パッチサイズ4の場合は画像プレビューが4*5列の20マスになる であってますでしょうか?
また、パッチサイズが小さいとクオリティ的には下がるようですが、4で学習度合い0.2と
32で学習度合い0.2では別のクオリティ内容で別のものなのでしょうか?
バッチサイズ4でも32でもトータル的な数値で学習度合いが0.2で同じクオリティなるのでしょうか?
ご教授お願い致します。
投稿更新される前に連投で申し訳ございません。
私もあささんとアキョウさんと同じくfrom device: CUDA_ERROR_OUT_OF_MEMORY: out of memoryなのですが、
コマンドプロンプトでnvidia-smiと入力するとメモリのほとんどを一つのプロセスで使用してるとでませんか?(私の場合は8GB中7GB以上を使っていると出ました)
tensorflowのプロセスの使用制限を設定してやるとうまくいくかもしれません。
というところまでは分かったのですが、なにぶん素人ですので、ここまでが限界でどうしたらいいかわからない状況ですw
以降の方法どなたかにパスしますので、ご解説お願いいたします。
参考サイト載せておきます。
https://blog.amedama.jp/entry/2017/06/07/220723
CUDA_ERROR_OUT_OF_MEMORY: out of memory
の上記エラーと全く原因と関係無いようでしたら申し訳ないです。
DeebFaceLabはbuildいくつのものをお使いでしょうか。
私はGTX 1080 Tiを使用しているので、環境が異なるので参考になるか分かりませんが、最近のbuildのものを使うと「CUDA_ERROR_OUT_OF_MEMORY: out of memory」のエラーが出ました。
「build_06_20_2019」だとエラーは出ないので、私の環境ですとbuildの違いによるものかと思われます。
https://www.deepfake.xyz/deepfacelab/deepfacelab-build-06-20-2019/
こちらのページに「build_06_20_2019」のCUDA9.2 / CUDA10.1 SSE / CUDA10.1 AVX / OpenCL SSE の各バージョンのダウンロードリンクを設置いたしましたので、お時間ありましたら、一度「build_06_20_2019」も試してみてください。
新しく学習を始める場合は、まずworkspaceフォルダ内をどこか別のフォルダに退避させます。次に「1) clear workspace.bat」を実行するとworkspaceフォルダが初期化されますので、ここに新しい素材data_src.mp4とdata_dst.mp4を入れて新しい作業を始めます。
DeepFaceLabのフォルダはいくつ作っても問題ないので、わざわざ上記のように移動させるより、DeebFaceLab本体のフォルダを別の学習用に新しく用意したほうが便利かもしれません。
いつも参考にさせていただいており、ありがとうございます。
精度の高い動画ができず悩んでおります。
正面を向いた顔は、ある程度見られるものができるのですが、顔を斜めに向けたり下を向いたりすると、とたんに歪んだ顔になってしまいます。
学習回数は12,000回、4,5列目は0.2に近い数字まで学習させています。
Deepfacelabは正面だけしか難しいでしょうか。
アドレスいただけますと幸いです。
ご覧いただきありがとうございます。
まず、学習回数が12,000回だと少ないと思います。
私の環境では4~5万回学習すると、顔全体が若干ぼやけていますが、ある程度見れるものになります。
これをさらに学習して10万回ぐらいまで学習すると、4~5万回あたりだと発生していた、顔のぼやけがほぼなくなり、目鼻立ちや、顔のパーツの輪郭がしっかりしてきます。
ただ顔が横や斜めを向いたときに、しっかりと顔を再現できるかは、素材に次第になります。
例えばdata_srcに正面ばかりを向いた画像しかないのに、data_dstで横顔などがあれば、その部分はうまく再現することはできません。
DeepFaceLabは機械学習とはいえ、真正面の顔画像から、横顔や上下から見た顔を生成するなんてことはできません。
ですので、data_dstで横顔があるのであれば、data_srcにも同じような角度から見た画像が必要です。
それも数枚とかだけではなく、そこそこの量が必要かと思います。
色々な角度から写した時のボヤけや歪み等の問題は学習回数を重ねれば改善されるという問題ではないです。
管理人様
ご回答ありがとうございます。
お礼が遅くなり申し訳ございません。
これからも参考にさせていただきます!
参考にさせていただきながら使用しています。
train実行後、いくつかの設定が終わった後に「Runnning CPU」と出てきてGPUでtrainを行っていません。
どのようにすればGPUを使用できるのでしょうか。
よろしければ、PCの構成等を教えていただけますでしょうか。
加えてDeepFaceLabはbuildいくつの、どのバージョンをお使いでしょうか。
コマンド画面をコピーしたものを貼っていただいても構いません。
DeepFaceLab (H128) 境界線問題
境界線問題解決した
MODEL.py見ると前までのやつはデフォルトでerodeとblurが+100になってたみたい
なるほど、そういうことなんですか。
最近のbuildでもblurを+100にすれば良いんですね、また試してみます。
ありがとうございます。
最新版になると、グラボの要求スペックが上がっている気がします。
主にSAEHDモデルとかSAEモデルの話で
H128やDFは大きな差は無いかもしれません。
バッチ数を下げないと、同じ設定では動作しないかも知れません。
その替わり、モデルの完成が速くなった様な気もします。
これは自分が、ソフト使用当初より、src画像を厳選する様になったからかも知れません。
途中の版から顔抽出の精度が上がっています。
抽出も、し直してみるといいかもしれません。
途中の版からConvertオプションにFAN-dstとかできたので、
顔の前に前髪などの障害物がある動画の処理も、ある程度いまくいきます。
顔の前に前髪などがかかると、従来はそこにも顔を合成しようとして、
ボケボケ、前髪が消える感じになりましたが、
顔の前の障害物はdstの物を生かそうとする様です。
H128とかなら、旧版で作成したモデルもそのまま引き継ぎ可能かと思います。
DFモデルはフルフェイス、顎の輪郭など顔のより広い範囲をカバーして、
解像度が128×128なので、H128、ハーフフェイスで128×128の物より、
実質的な解像度は下がりますが、
フルフェイスの方が、よりsrcに似せやすい傾向があります。
DFはH128よりバッチ数を上げることができました。
2のn乗ではないバッチ数ですが。(RTX2080 8G)
従ってモデルの完成が速い事は利点です。
顔があまりアップで写っていないdst動画の場合、
DFモデルを検討する価値は十分にあります。
こちらの記事を参考に良い物が出来ました
ありがとうございました
いつかはSAEHDで作ってみたいですね
フォーラムのダウンロードスレッドに、有志が作成したH256モデル、DF256モデルが上がっています
https://mrdeepfakes.com/forums/forum-downloads
公式サポートではないので、自己責任で使用してください
256モデルは当然、実行可能なバッチ数が下がり、初回はモデルの完成が遅くなります。
2回目からはsrcごとにモデルを分け、モデル再利用により、かなり完成時間が短縮されます。
src Aさんからsrc Bさんに切り替えた時もモデル再利用した方が完成が速いです。
別人であっても、未学習より、「人の顔」を学習済の方が速いです。
H256、DF256はSAEHD256より軽く、バッチ数を上げられます。
SAEHD256モデルよりは完成が速いです。
失礼します。
最近ここで勉強させてもらい始めました。
現在最初から入っている動画で練習しています。
trainH64では学習ができているのですが
trainH128だとTraining previewもでてこず学習が開始されません。
スペックはCore(tm) i5-7500 @3.40GHz GTX1060 3GBなのですが
スペックの問題でしょうか?
恐らくおっしゃる通りスペックの問題だと思います。
返信ありがとうございます!!
trainH64使ってもがいてみます。
DeepFaceLabですが、CUDA、CUDNNは必ずしもインストールしなくても、
DeepFaceLab内部フォルダに抱えているCUDA、CUDNNを使用しますので、
DeepFaceLabは動作する様です。
他のDeep LearningソフトでもCUDA、CUDNN使用するかもしれないので、
CUDA、CUDNNはインストールしておいてもいいかも知れません。
waifu2x-caffeなどは、あればCUDNNを使用しますし。
ただいま勉強中なのですが、
過去記事をあさっていたら
推測でしかないんですが、1060なのに1080+anyGTX版のDFLで始めちゃったので
CUDAが機能せず、CPUでトレインしてたっぽいです。常に使用率100%で唸ってた
ので…。それでDFLをCUDA9.0版に、CUDA9.2を9.0にしたら速くなりました。
iter(epoch?)は一時間で300だったのが3700になりました。ホントに助かりました。
この内容が把握はできてないのですが、
train中自分もcpuが100%になっています。
cpu 0 という値が役50%です。
この方のように自分もCUDAが起動していなくてなにか対応したほうがいいでしょうか?
多くを参考にさせて頂いております。ありがとうございます。
ヘアースタイルによる合成時の不具合…?なのですが、基本srcとdstのモデルのヘアースタイル等は似ている事が前提と思います。
dstモデルが額を出し、srcモデルは前髪がある場合、トレーニング後、
やはりdstモデルと合成されるとsrcモデルの前髪残像が残っています。これは
どうにもならないのでしょうか。
また、顔の合成境に髪の毛が垂れ下がっていますと、状況によっては顔の合成境にて
黒い影が発生します。これもまたどうにもならないのでしょうか。
何か対策はあるのでしょうか。
お世話になります
CUDAはタスクマネジャーのGPUの項目で動いているか確認できますよ
私も質問なのですがtrainを一時中断してバッチサイズを変更し再開は出来るのでしょうか?
もし出来るなら教えて頂きたいです
前髪についてですが新しいバージョンの合成時に選べる
FAN-dstは試しましたか?ヘアースタイルを気にする必要がなく楽かと思います
ただ出来上がりがdstモデルに寄ってしまいますが
trainを一時中断して、再開する場合、
2秒以内にEnterを押せば、一部の設定パラメーターは変更できます
バッチサイズは、再開時に変更可能なパラメーターです
もちろん、VRAM容量が許すバッチサイズでないと、エラーで落ちたりします
顔認識、顔抽出は、目、眉毛、鼻、口、髪のかかっていない頬、顎が認識の対象です。
前髪は顔ではなく、眉毛の前にかかる場合、顔の前の邪魔な障害物扱いです。
顔の輪郭は認識しますが、顔入れ替えの対象外です。
なのでsrcとdstの顔の輪郭がある程度は似通っていないと、違和感があります。
srcの人が、dstの髪型になる訳ですが、それでも違和感がなく、似合う事が前提です。
> ただ出来上がりがdstモデルに寄ってしまいますが
SAEHDモデルを使用してはいないでしょうか?
SAEHDモデルはrandom_warp機能があり、これはsrcとdstの表情を平均化します
srcには無いdstの表情が再現できると言うメリットがあります
しかしdst寄りになってしまうので、最初random_warpをOnにしてTrainした後で
random_warpをOffにしてTrainする必要があります
Trainの仕上げに true_face_trainingをOnにします。仕上げの時以外はOffにします
true_face機能は、あらかじめdst寄りになる事を見越して、src寄りにする仕上げ用です
srcに前髪などの、顔の前に障害物がある場合、
Convert時にFAN-prdを含むmask modeでConvertします
これでも上手く行かない場合があります
その場合は、非常に面倒な手作業が必要ですが
Mask Editorを使用して、前髪は顔ではなく、顔の前の邪魔な障害物と言うことで
手動で前髪をMaskする作業が必要となります
原則として1コマ1コマ手作業なので、非常に面倒であり、時間はかかります
srcの前髪が邪魔な場合、面倒な手作業が必要ですが、できることはできます
詳しくてわかりやすい記事ありがとうございます。持て余していたPCのスペックをフル活用できとても楽しんでいます。大昔にMP3エンコードをやっていた時を思い出しました。
初歩的なことで恐縮ですがいくつか質問させて下さい。
1)トレーニングプレビュー画面に表示されるグラフの色、青と黄色がありますがどういう意味しょうか。
2)出来上がった動画に満足出来ずもっとトレーニングをやりたいと仮定します。その場合たとえばTrain128.batを起動すれば継続扱いでトレーニングしてくれるのでしょうか。もしくはまた1からトレーニングをやり直さないといけないのでしょうか。
3)質問ではないのですが、本記事もとてもわかり易いのですがコメントにも有用な情報が盛り沢山です。ただしコメント数が多く情報を探すのがだんだん困難になってきたと感じます。親記事へのフィードバックを行っていただければ大変ありがたいです。勝手なことで誠に申し訳ありません。
DeepFaceLabは3つの種類のバージョンにしか対応してないですが、それ以外の対応してないPCでもSRCの作成は可能ですか?
extract images from video data_src.bat等SRCの作成のみを一般的なスペックのノートPCで動かしたいのですが、バージョンが対応してないです。
バージョン対応させることは可能なのでしょうか。
2.素材動画を全フレーム画像書き出し
3.顔部分のみを抽出
4.誤検出された画像を削除
つまり2) extract images from video data_src.bat」等のみノートPCで行い、TRAIN等の後の工程はクラウドで行いたいと考えています。
使用OS:windows10 32bit
CPU:Core i3 330M 2.13GHz/2コア
RAM:4GB
GPU,CUDAなし
DeepFaceLab インストール方法
https://mrdeepfakes.com/forums/thread-guide-deepfacelab-explained-and-tutorials
DOWNLOAD HERE
https://drive.google.com/drive/folders/1BCFK_L7lPNwMbEQ_kFPqPpDdFEOd_Dci
または
https://rutracker.org/forum/viewtopic.php?p=75318742
ダウンロードする
マグネットリンクによる分布のダウンロード
ダウンロードした
DeepFaceLab_CUDA_build_date.exe をダブルクリックし(自己解凍形式)、D:\(Dドライブなどのルート)などに解凍するだけ
DeepFaceLab 重要事項
srcとdstの顔の輪郭が似通っている事
srcとdstの相性
srcはdstの髪型になるが、違和感の無いこと
srcはdstの体型になるが、違和感の無いこと
srcの顔の画角、カメラアングルがdstに対して十分な事
srcの表情がdstに対して十分な事
srcのまばたき、目の開閉具合、視線の向き
srcの口の開閉具合
srcの顔の横向き具合、上向き、下向き具合
srcが高解像度画像であること
dstがあまり高解像度であると、顔がボケる原因になる
dstは動画編集ソフトなどで縮小することを検討
最初はカメラ目線も多い、正面顔が作成が楽
最初は顔の前に障害物(前髪など)の無い動画が作成が楽
最初はdstが尺の短い動画が作成が楽
Convertオプションのお試しは、尺の短い動画がおすすめ
CUDAのメモリアロケートエラーですが、
Nvidiaのドライバを変に最新版にしてしまったからかも知れませんね
NvidiaドライバとCUDAとcuDNNとTensorflow-gpuとPythonのバージョンの対応
https://qiita.com/konzo_/items/a6f2e8818e5e8fcdb896
Nvidiaドライバ,CUDA,cuDNN,tensorflow-gpu,Pythonのバージョンの対応はとても重要らしい。
NvidiaドライバはCUDAのバージョンに合わせて,CUDAとcuDNNとPythonはtensorflowのバージョンに合わせる。
tensorflow-gpuを使用する場合、Pythonは最新版にはできないでしょう
CUDAも10.2だとビルト例が無いのでは?
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1 がある場合
DFL同梱の物を上書きコピーした方がいいと思います
よく分かりません。おまじないです。
はじめまして。
上にも何件かコメントありますが、私もCPUが100%になってしまうのにGPUが全く動いていないように見えます。
何か導入に不味い部分があったのでしょうか、それともCPUがそこまでハイスペックじゃないので、CPUがボトルネックになるのは普通なのでしょうか。
CPU:i5 4590 3.3GHz
GPU:GT710
RAM:12GB
ゆーた氏のコメント(2019年8月15日)
>6番まではうまくいったのですが、最後の7番で「reference_file not found.」と出て処理されません。。。
と同じ現象が発生しましたが解決しました。原因はdata_dst.mp4がworkspaceに無かったためでした。
data_dstフォルダ内の画像を作成した元data_dst.mp4をworkspaceに置いたところ正常に「7.書き出した画像を動画にする」が完了しました。
GPUがVRAM 2GBでFAN LESSも可能な物であると厳しいと思います
GPUはハイスペックのゲーマーの人が使用する様な、FANありで
VRAM容量が多くないと、遅くて事実上無理だと思います
CPUがボトルネックとなるのは、尺の長い動画を、FAN-xxでConvertした時などです
GT710はせいぜい動画再生用で、ゲームやDFLには適していません
グラボのスペック上無理です
2060Superあたりを購入する事です。4万円台と安いです。5万円までしません
GPUがロースペックなのは理解しているのですが、
train動かしてみるとH64ですらCPUの方がボトルネックになっているので、
そもそもGPU使えていないんじゃないか?と思った次第です。
GPUが使えているなら、CPUよりもGPUがボトルネックになることを想定していたので…
タスクマネージャで見てみても、GPUに全く負荷かかってないんですよね。
コンソールウインドウにはRunning on GeForce GT 710と書いているんですが、
処理がGPUで行われていない(CPU上で行われている?)ように見えるんです。
初心者の方は、下記に一通り目を通せばいいです
https://seesaawiki.jp/dfl/
http://phoebe.bbspink.com/test/read.cgi/ascii/1578836130/
https://mrdeepfakes.com/forums/thread-deepfacelab-explained-and-usage-tutorial
https://find.5ch.net/search?q=AI%E3%82%B3%E3%83%A9
読めば分かるような質問は受け付けてはいません
このサイトも相当に簡単にやさしく書いてくれていると思いますけれどもね
貧弱なグラボにより、うまくいかない場合は、素直にグラボを購入するしかないかと思います
お疲れ様です。
何度か動画を作って練習しています。
今回はなぜか今まで通りしていたつもりなのですが
最後の8) converted to mp4.batのところで
[image2 @ 0000021fb9beb4c0] Could find no file with path ‘C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png’ and index in the range 0-4
C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png: No such file or directory
というのがでて動画を作成することができませんでした。
mergedにもちゃんと動画が書き出されており原因がわかりません。
どういった理由が考えられますでしょうか?
[image2 @ 000002492335b4c0] Could find no file with path ‘C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png’ and index in the range 0-4
C:\DeepFaceLabCUDA9.2SSE\workspace\data_dst\merged\%5d.png: No such file or directory
mergedにも動画が今まで通り書き出されおり原因がわかりません。
どういったような理由が考えられますでしょうか?
自分もその現象に陥っていましたが、mergedに最初のほうの番号の画像ファイルを追加したら正常に動画にすることができました。000001から000008の画像を消してしまっていませんか?
僕は000004から追加したら動くようになりました。
お疲れ様です.
このサイトのおかげでdeepfake動画作成自体は順調に行えているのですが、trainにおけるCPUおよびGPUへの負荷について疑問があります.
GPUはRTX2060(vRAM 6GB)を使用していますが、H64にてbatch:64で実行した場合にタスクマネージャーを確認したところ,
GPUにはほとんど負荷がかかっていない(vRAMは5GBほど使用している)にもかかわらずCPUの使用率が60%~70%ほどあり冷却ファンが一生懸命にCPUを冷やしているという状況でした.
これは正常な挙動なのでしょうか?
とても分かりやすい記事でした。
しかし、トレーニングは正常にできるものの変換が以下の通り出て、顔が差し替えられる側の画像の原画のままコピーされます。どこか間違えたのかと思い、(1)で一度workspaceを消去してやり直しましたが出来ませんでした。原画は全てで一画像も顔認識出来ていないようです。教えていただきたいです。
o faces found for 05192.png, copying without faces
Converting: 100%|##################################################################| 5201/5201 [01:09<00:00, 74.40it/s]
Done.
続行するには何かキーを押してください . . .
Windows10のタスクマネージャーでは、
パフォーマンス GPU
3D, Copy, Video Encode, Video Decordはほとんど負荷無しに見えますよ
CUDAコアとVRAMのみ使用している感じです
ELSA System Graphと言うソフトを使用すれば
GPU LoadでGPUの負荷が見えます
GPU Loadが100%に行ったり、それなりに高い負荷であれば、正常にGPUでtrainできています
DeepFaceLabではCUDA、cuDNNはインストール不要ですね
CUDA、cuDNNはDeepFaceLabインストールフォルダ配下の物を使用します
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA削除しても何の問題もなく動作します
おそらく、前の違うFaceSwap系のソフトがCUDA等インストールしてくださいだったからでは?
DeepFaceLabではインストール手順が少なくて済みます
DeepFaceLabの最新のソフト等入手はこちら
https://github.com/iperov/DeepFaceLab
Windows Google drive
または
Windows Torrent page
DeepFaceLab 1.0 – Usage tutorial (partially outdated)
https://mrdeepfakes.com/forums/thread-dfl-1-0-guide-deepfacelab-1-0-explained-and-tutorials-partially-outdated
初心者の方は、このサイトを一通り見た後で、下記に目を通すといいかも
DeepFaceKab(DFL) FAQ
https://seesaawiki.jp/dfl/d/DFL%20FAQ
DFL トラブルシューティング
https://seesaawiki.jp/dfl/d/DFL%20%a5%c8%a5%e9%a5%d6%a5%eb%a5%b7%a5%e5%a1%bc%a5%c6%a5%a3%a5%f3%a5%b0
DFL-使用方法のチュートリアル(公式チュートリアルのGoogle翻訳を若干手直し)
https://seesaawiki.jp/dfl/d/DFL-%bb%c8%cd%d1%ca%fd%cb%a1%a4%ce%a5%c1%a5%e5%a1%bc%a5%c8%a5%ea%a5%a2%a5%eb
よくある質問-DFL1.0(公式)
https://seesaawiki.jp/dfl/d/%a4%e8%a4%af%a4%a2%a4%eb%bc%c1%cc%e4-DFL1.0
初心者の方の質問は受け付けています
https://phoebe.bbspink.com/test/read.cgi/ascii/1578836130/
必ず回答がつく、もらえるとは限りませんが
質問はスレに一通り目を通してからにしてください
質問はスレにあるテンプレに貼ってあるリンクに一通り目を通してからにしてください
公式チュートリアルのリンクが変わりました
https://mrdeepfakes.com/forums/thread-dfl-1-0-guide-deepfacelab-1-0-explained-and-tutorials-partially-outdated
DeepFaceLabの最新版は2.0になりました
DeepFaceLab_NVIDIA_build_date.exe
NVIDIAのGTX/RTXのみサポートです
RTXでもCUDA 9.2で動作します
CPUとAMDのサポートはなくなりました
モデルはQuick96とSAEHDのみになりました
DF/H128/LIAEF/SAEはなくなりました
FANSEGモデルもなくなりました
data_dst に使う動画に複数人移っている場合、一人の人を指定してうまく合成する方法はないでしょうか?
Radeon RX5700XTを使っていたのですが、DeepFaceLab 2ではRadeonはサポートされていないんですね。GeForceを買うか迷っています。時間短縮がアップデートのメインなのかなと思ったのですが、1.0と比べて2.0で作った動画のクオリティは目で見て分かるほど向上しているのでしょうか?
DeepFaceLab1.0と2.0の違いですが、学習時間短縮のメリットも大きいですが、train時のオプションや細かな設定がさらに充実したのと、動作の軽量化行われています。
一番大きいのはtrain時の解像度が1.0のときは最高でも128×128(px)でしたが、2.0では最高512×512(px)で学習することができることでしょう。
128では、解像度不足な感じもあったので、この点は重要です。
加えて学習時の顔範囲も選択できるようになったので、前髪が写り込んでしまう場合などにも対応できるようになりました。
こちらのサイトのわかりやすい説明のおかげでi5,iris plus graphics(内蔵),ram 8GB,vram 128MBの低スペノートですがとりあえず完成まで持っていけました!ありがとうございます!1日半かけて学習させても2300回くらいしか学習できませんでしたが(笑)
いつかちゃんとしたGPUつんだPCつかってやりたいですね…
Iris Plus Graphicsでも、できるんですね。
情報ありがとうございます!
mergedフォルダ内の画像の顔部分が「青い四角」に表示されてしまうようになってしまいました。(data_src/aligned内の顔がはめ込まれなくなっております)
それぞれのalignedには切り抜き後の素材はあります。
これまで特に問題なかったのですが何か考えられる事はあるでしょうか?
気になる点があるとすれば、train開始時のプレビュー画面ではいつも通りdstとsrcの元顔と成型中の顔の両方が表示されていましたが、数時間後に確認した時のプレビュー画面では成型後の顔が表示されておらず真っ白い表示となっていました。
H64やH128でtrainする場合やはり横顔は捨てたほうがいいのでしょうか?正面の画像として認識してるせいかあまり数値が下がらないので。
data_dst に使う動画に複数人移っている場合、一人の人を指定してうまく合成する方法
data_dst/aligned から別人物を削除する
HONAさん
モデル崩壊かと思います
deepさん
横顔はLiae系でないと無理かと
trainをして数秒すると
E tensorflow/stream_executor/cuda/cuda_blas.cc:464
CUBLAS_STATUS_ALLOC_FAILEDの文字列が何個か出て、
internal/DeepFaceLab/なんとか.py”,line(数字)が同じようにいくつか出てストップしてしまいます。
ほかにもいろいろ書いてあるのですが、何がおかしいのかわかりません。rtxシリーズなので10.1AVXを使っていて、バッチサイズなどを変えて軽くしてみても同じでした。
何もわからず長々と書いてすみません。もしわかりましたら教えていただけると助かります。。