Real-ESRGANの環境構築(Windows,Python)


WindowsにAnaconda仮想環境でReal-ESRGANの環境構築を行う手順です。

<目次>
1.実行環境の準備(GPU、インストールなど)
2.実行環境の作成(Anaconda仮想環境構築)
3.実行コマンド(4K⇒8K変換)
4.FFmpegコマンド(動画の分解と結合)
5.実行結果サンプル(画像比較)

<サンプル>
re_sample_4k.png(元画像)
re_sample_8k.png(超解像)



1.実行環境の準備(スペック、インストールなど)
 
 ①GPU
  NvidiaのGPUを準備する
  ※AI超解像のため、GPUはハイスペックが望ましい
   RTX4070:1枚数秒・1分動画の3,600枚:3時間(3秒/枚)
   RTX2070:1枚15秒・1分動画の3,600枚:15時間(15秒/枚)
  
 ②Anaconda3のインストール
  https://www.anaconda.com/download
  ダウンロード後、デフォルト設定でインストールする
  
 ③Nvidiaドライバの最新化
  https://www.nvidia.co.jp/Download/index.aspx?lang=jp
  必要に応じ、ドライバを最新化する
  
 ④CUDAのインストール
  https://developer.nvidia.com/cuda-toolkit-archive
  CUDA11.7のダウンロード後、デフォルト設定でインストールする
  
 ⑤cuDNNのセットアップ(ユーザー登録が必要)
  https://developer.nvidia.com/cudnn
  CUDA11.Xのダウンロード後、下記フォルダ内の同一ファルダにコピーする
  ※C:\Program\NVIDIA GPU Computing Toolkit\CUDA\v11.7
  システムプロパティに環境変数(システム環境変数)にパスを登録する
  ※CUDNN_PATH C:\Program\NVIDIA GPU Computing Toolkit\CUDA\v11.7
   (CUDA_PATHと同じパス)
  
 ⑥Real-ESRGANの解凍
  https://github.com/xinntao/Real-ESRGAN
  [<>Code]のDownload Zipから、ソースをダウンロードする
  各自の作業領域にZip展開する
  ※今回の説明では、E:\00_nvidia_work\realesrgan-python\Real-ESRGAN-masterとした
  
 ⑦学習イメージ(RealESRGAN_x2plus.pth)
  https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.1/RealESRGAN_x2plus.pth
  ダウンロード後、Real-ESRGAN-master/experiments/pretrained_modelsのフォルダに入れる
 
 
2.実行環境の作成(Anaconda仮想環境)
 
 Anaconda Promptで、「ディレクトリ移動、作成コマンド」を実行する
 
 <条件>
  Anaconda仮想環境名:realesrgan_gpu
  pythonバージョン:python 3.10.6
  cudaバージョン:11.7
  Real-ESRGANのディレクトリ:
  E:\00_nvidia_work\realesrgan-python\Real-ESRGAN-master
 
 ①ディレクトリ移動(各自環境に合わせてください)

e:
cd E:\00_nvidia_work\realesrgan-python\Real-ESRGAN-master

 
 ②作成コマンド

conda create -n realesrgan_gpu python=3.10.6
conda activate realesrgan_gpu
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
pip install basicsr
pip install numpy
python -m pip install -U opencv-python opencv-contrib-python
pip install torch>=1.7
pip install facexlib
pip install gfpgan
pip install -r requirements.txt
python setup.py develop


 
3.実行コマンド(4K⇒8K変換)

 ①ファイル設定(インプット)
  ・4K360動画のフレーム画像を、次のフォルダに配置する
   E:\00_nvidia_work\realesrgan-python\Real-ESRGAN-master/inputs
   ※このフォルダは、各自環境に合わせてください
 
 ②仮想環境起動
  ・AnacondaPromptを起動し、次を入力する

activate realesrgan_gpu


 ③ディレクトリ移動
  ・AnacondaPromptに、次を入力する

e:
cd E:\00_nvidia_work\realesrgan-python\Real-ESRGAN-master

  ※このフォルダは、各自環境に合わせてください

 ④実行コマンド(4K⇒8K変換)
  ・AnacondaPromptに、次を入力する

python inference_realesrgan.py -n RealESRGAN_x2plus -i inputs -s 2 –face_enhance --tile 1024

 ※VRAM8GBの場合、メモリ使用量を調整するため「–tile 1024」を追加します
 
 ⑤ファイル確認(アウトプット)
  ・8K360動画のフレーム画像が、次のフォルダを確認する
   E:\00_nvidia_work\realesrgan-python\Real-ESRGAN-master/results
   ※このフォルダは、各自環境に合わせてください
  ・8K360動画のフレーム画像を、FFMPEG変換のフォルダへ移動する

 ⑥仮想環境停止

deactivate

 
 
4.FFmpegコマンド(動画の分解と結合)
 
 同一フォルダ内に「フレーム画像、ffmpeg.exe、バッチファイル」を配置する
 配置後にバッチを実行する
 
 ①動画⇒フレーム画像のバッチファイル

chcp 65001
ffmpeg -i input.mp4 -vcodec png image_%%05d.png
pause

 
 ②フレーム画像⇒動画のバッチファイル(60p)

chcp 65001
ffmpeg -r 60 -i image_%%05d.png -vcodec libvpx-vp9 -pix_fmt yuv420p -b:v 0 -crf 16 -r 60 -f webm -y output.webm
pause

  ※30pの場合、-r 60 ⇒ -r 30 に変更してください(2カ所変更)
 

5.実行結果サンプル(画像比較)