見出し画像

Google Colab ではじめる Real-ESRGAN

「Real-ESRGAN」を試したのでまとめました。

・Real-ESRGAN V0.2.5.0

1. Real-ESRGAN

「Real-ESRGAN」は、画像や動画の解像度をアップコンバートする「超解像」の機能を提供するパッケージです。

2. Coladでの実行

Colabでの実行手順は、次のとおりです。

(1) 新規のColabのノートブックを開き、メニュー「編集 → ノートブックの設定」で「GPU」を選択。

# GPUの確認
!nvidia-smi
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla P100-PCIE...  Off  | 00000000:00:04.0 Off |                    0 |
| N/A   35C    P0    27W / 250W |      0MiB / 16280MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+                                                      

(2) Googleドライブのマウント。
あらかじめGoogleドライブのマイドライブ直下に「work」フォルダを作成しておきます。

# Googleドライブのマウントと作業フォルダへの移動
from google.colab import drive
drive.mount('/content/drive')
%cd '/content/drive/My Drive/work'

(3) Real-ESRGANリポジトリのクローン。

# Real-ESRGANリポジトリのクローン
!git clone https://github.com/xinntao/Real-ESRGAN.git
%cd Real-ESRGAN

(4) パッケージのインストール。

# パッケージのインストール
!pip install basicsr facexlib gfpgan
!pip install -r requirements.txt
!python setup.py develop

(5) 事前学習モデルの取得。

# 事前学習モデルの取得
!wget https://github.com/xinntao/Real-ESRGAN/releases/download/v0.1.0/RealESRGAN_x4plus.pth -P experiments/pretrained_models

(6) 「inputs」フォルダに変換したい画像を配置。
あらかじめ用意されてるサンプルは消して、変換したい画像を配置します。

(7) 超解像の実行。

# 超解像の実行
!python inference_realesrgan.py -n RealESRGAN_x4plus --face_enhance

パラメータの項目は、次のとおりです。

・-h : ヘルプ
・-i --input : 入力フォルダ (Default: inputs)
・-o --output : 出力フォルダ (Default: results)
・-n --model_name : モデル名 (Default: RealESRGAN_x4plus)
・-s, --outscale : アップサンプリングスケール (Default: 4)
・--suffix : 出力画像のサフィックス (Default: out)
・-t, --tile : タイルサイズ (0:タイルなし, Default: 0)
・--face_enhance : 顔を強化にGFPGANを使用するかどうか
・--fp32 : 推論中にfp32精度を使用するか (Default: fp16 (半精度))
・--ext : 画像拡張子

(8) 出力結果の確認。
「results」フォルダに結果画像が出力されています。
左が超解像前(512 x 512)、右が超解像後(2048 x 2048)になります。

3. AnimeModel

アニメ画像用に最適化された事前学習モデルも提供されています。

# 事前学習モデルの取得
!wget https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.2.4/RealESRGAN_x4plus_anime_6B.pth -P experiments/pretrained_models

# 超解像の実行
!python inference_realesrgan.py -n RealESRGAN_x4plus_anime_6B

4. 関連



この記事が気に入ったらサポートをしてみませんか?