顔が良ければすべてよし、GFPGANを使って顔を高画質化します。
目次
GFPGANとは
GFPGANは、顔面修復のアルゴリズムで、ざっくり言うと顔を綺麗にできます。ただし単純に綺麗にしているというよりは、「勝手にそれっぽい絵を作ってる」という説明が近いようですので、正確さが求められるシーン(極端な例では論文など)では使わないほうが良いと思われます。
Real-ESRGANとは
GFPGANとセットでReal-ESRGANが必要になります。Real-ESRGANは顔に限らず画像を高画質化したり画像サイズを引き伸ばすことが可能です。こちらも「勝手にそれっぽい絵を作ってる」という説明が近いようですので注意してください。
GFPGANとReal-ESRGANの単体インストール
習得のためにまずはGFPGAN単体で動作させます。
Pythonのインストール
PyTorchのインストール
Pythonのインストールは先日の下記記事と同じです。また、Stable Diffusion web UIのインストール過程でPyTorchがインストールされますので省略します。
GFPGANのリポジトリのクローン
コマンドプロンプトを起動し、任意のフォルダに移動したら、下記コマンドでリポジトリのクローンを行います。
git clone https://github.com/TencentARC/GFPGAN.git
GFPGANのインストール
先ほどクローンしたリポジトリに移動します。
cd GFPGAN
移動したら、次のコマンドを順番に実行します。うまくいかない場合は管理者モードでコマンドプロンプトを起動してください。
python -m pip install -r requirements.txt
python -m pip install realesrgan
python setup.py develop
学習済みモデルのダウンロード
下記リポジトリ
https://github.com/TencentARC/GFPGAN/
「🚩 Updates」の「✅ Add V1.4 model, which produces slightly more details and better identity than V1.3.」の「V1.4 model」をクリックして「GFPGANv1.4.pth」をダウンロードします。
学習済みモデルの配置
ダウンロードしたファイルをGFPGANのフォルダ内の「experiments\pretrained_models」に配置します。
GFPGANの実行
コマンドプロンプトで「GFPGAN」に移動したのち、下記コマンドで「inference_gfpgan.py」を実行します。
python inference_gfpgan.py -i inputs/whole_imgs -o results -v 1.4 -s 2
- 「-i inputs/whole_imgs」オプションは入力ファイルのディレクトリ指定です。このフォルダにはサンプル画像が3枚入っています。
- 「-o results」は出力ファイルのディレクトリ指定です。
- 「-v 1.4」はバージョン指定です。
- 「-s 2」は解像度の倍率です。
指定した通り、「results」フォルダに結果ファイルが出力されます。
Stable Diffusion Web UIでGFPGANを使う
使い方は簡単、「stable-diffusion-webui」直下にダウンロードした学習済みモデル「GFPGANv1.4.pth」を置くだけ。
webui.batを起動した際に、ターミナルに
installing gfpgan
の行があれば正常に読み込まれています。
キーワードを打ち込んでレッツお絵かき!