目次
『TecoGAN』は、低解像の動画を高解像に、いわゆる超解像ができます。
参照:https://arxiv.org/pdf/1811.09393.pdf
『TecoGAN』は、Pythonコードの中に、
Linuxコマンドの実行を指示する部分があるため、
今回は『WSL』を使用します。
Tensorflow-GPU1.14を使うため、
CUDA10.0とpyenvの設定が必要です。
Windows10 pro (Windows Insier Program)
マウスコンピューター製G-Tune E5-144
CPU:インテル(R) Core(TM) i7-10875H プロセッサー
メモリ:32GB メモリ
SSD (M.2):512GB NVMe SSD
グラフィックス:NVIDIA GeForce RTX2060 / 6GB
参照:https://supplepentan.com/programming/wsl_05/
参照:https://supplepentan.com/programming/wsl_06/
『PowerShell』を起動し、任意のフォルダで、gitクローン
1 |
git clone https://github.com/thunil/TecoGAN |
1 |
cd TecoGAN |
1 |
wsl |
※『Ubuntu18.04』がデフォルト起動になっていない場合は、『wsl –set-default Ubuntu18.04』と打ち設定してください。
1 |
pyenv local 3.6.8 |
1 |
python3 -m venv venv-wsl |
1 |
source venv-wsl/bin/activate |
1 |
python -m pip install pip -U |
1 |
python -m pip install -r requirements.txt |
1 |
python -m pip uninstall Keras Keras-Applications Keras-Preprocessing |
1 |
python -m pip install keras==2.3.1 |
1 |
python -m pip install tensorflow-gpu==1.14.0 |
ダウンロードプログラムは、TacoGANに標準で組み込まれています。
1 |
python runGan.py 0 |
※コマンド変数の実行内容
0:データ、モデルのダウンロード
1:『calender』データの超解像を実行
2:結果の評価(pytorchの設定が必要です)
3:TecoGANのトレーニング
4:FRVSRのトレーニング
下記コマンドを実行
1 |
python runGan.py 1 |
『results』フォルダが作成され、
その中の『calendar』フォルダにpngが作成されればOK(‘ω’)ノ
処理前(180×144)
処理後(720×576)
今回は、『PowerShell』からWSLを起動して行いましたが、
『Ubuntu18.04 LTS』を起動しそのまま実装することもできます。
『Ubuntu18.04 LTS』で直接実装した方が、
処理速度が速いらしいです。
おいらは、PowerShellで動くように、
コードを一部改変して使ってます。
wslで、『python runGan.py 0』を実行し、
必要モジュールをダウンロードした後、
PowerShellで仮想環境をつくり、
必要ライブラリ(pytorchなども)をインストールし、
コードの『python3』を『python』に書き換えて、
『python runGan.py 1』や『python runGan.py 2』を使っています。
(『python runGan.py 0』の実行は、1回だけで事をなすので、コード改変してません。)
(‘ω’)ノ
『TacoGAN』で処理する元ファイルは、『PNG』である必要があるので、
高解像度にしたい動画をあらかじめ『FFmpeg』で、
動画から『PNG』を取り出します。
そして、『TacoGAN』で処理し、
生成した『PNG』を再度『FFmpeg』で動画にします。
※『FFmpeg』の設定方法:https://supplepentan.com/programming/ffmpeg_01/
1 |
ffmpeg -i input.mp4 -vcodec png image_%03d.png |
※『input.mp4』は、元になる動画ファイルです。
1 |
ffmpeg -r 30 -i output_image_%03d.png -vcodec libx264 -pix_fmt yuv420p -r 60 out.mp4 |
※『output_image_%03d.png』は、『TacoGAN』で生成された連番の『PNG』です