私的AI研究会 > DLFS2
AI技術「DLFS(Disentangled Lifespan Face Synthesis)」で人間の年齢による顔の変化をシミュレーションする。
ローカル環境で「DLFS」を動かす (※ GPU 環境でのみ動作する)
「http://cedro3.com/ai/dlfs/」 より引用
cd /anaconda_win/workspace_2 ← Windows の場合 cd ~/workspace_2 ← Linux の場合 git clone https://github.com/SenHe/DLFS.git
cd DLFS python download_models.py
update └─workspace_2 └─DLFS ← GitHub からクローンしたプロジェクトに上書きする ├─checkpoints │ ├─females_model │ ├─males_model │ └─__MACOSX │ └─males_model ├─images ├─models_distan ├─options ├─results └─results_save・解凍してできる「update/」フォルダ以下を次のフォルダの下に上書きコピーする
(py38_learn) python dlfs_test2.py
(py38_learn) python dlfs_test2.py AgingDataLoader dataset [MulticlassUnalignedDataset] was created ./checkpoints\males_model\latest_net_g_running.pth convert complete. processing start >> 2024/08/03 07:17:34 processing end >> 2024/08/03 07:17:44 processing time >> 0:00:10.049580 Finished.
コマンドオプション | 引数 | 初期値 | 意味 |
--model | str | 'male' | 男性(male)/女性(female) 指定 |
--source_image | str | '' (ダイアログによる指定) | 静止画ファイルパス |
--result_image | str | './result/result.jpg' | 出力保存ファイルパス |
--gpu_ids | GPU 確認 |
(py38_learn) python dlfs_gui.py --model female DLFS GUI program Ver. 0.01: Starting application... - model : female - source_image : C:/anaconda_win/workspace_2/DLFS/images/07.jpg - result_image : ./results/result_07.mp4 - gpu_ids : [0] AgingDataLoader dataset [MulticlassUnalignedDataset] was created ./checkpoints\females_model\latest_net_g_running.pth processing start >> 2024/08/03 13:29:00 processing end >> 2024/08/03 13:29:13 processing time >> 0:00:12.853809 Finished.
プログラム | GPU | CPU | |||
RTX 4070 | GTX 1050 | i9-13900 | i7-1260P | i7-1185G7 | |
dlfs_test2.py | 10秒 | 54分32秒 ※ | × | × | × |
dlfs_gui.py | 13秒 | 53分26秒 ※ | × | × | × |
import warnings warnings.simplefilter('ignore', UserWarning)
# cmd = 'ffmpeg -i ./results/out.mp4 -vcodec h264 -pix_fmt yuv420p output.mp4' cmd = 'ffmpeg -i ./results/out.mp4 -vcodec h264 -pix_fmt yuv420p output.mp4 -loglevel quiet'
# print(netG)
# print('------------ Options -------------') # for k, v in sorted(args.items()): # print('%s: %s' % (str(k), str(v))) # print('-------------- End ----------------')
(py38_learn) conda install -c conda-forge dlib
(py38_learn) pip install --force-reinstall -v "Pillow==9.5.0"