Real-ESRGAN と GFPGANを連携させる方法とGUIで使えるツール

Real-ESRGAN とGFPGANを連係させる方法とGUIで使えるツール
目次

Real-ESRGANGFPGAN

インストール手順や使い方においても Real-ESRGAN(リアル・イーエスアールガン)と GFPGAN (ジーエフピーガン)はかなり似ています。
両方とも Tencent ARC によって開発されており、基本的な実行構成が似ているからです。

本記事では、GUIでReal-ESRGAN と GFPGANを使えるツールについてと、ローカルでReal-ESRGAN と GFPGANを連携させる方法(導入までの手順を含む)書いています。

主なGFPGANモデル

GFPGANの顔復元(Face Restoration)専用モデルは、バージョンや学習条件によって複数のモデルファイルが存在します。

モデル名特徴ファイル例
GFPGANv1.4現時点で最も安定し、自然で破綻の少ない顔復元。背景も無難に処理。GFPGANv1.4.pth
GFPGANv1.31.4よりシャープで、顔の線を強調しやすい。やや人工的になる場合あり。GFPGANv1.3.pth
GFPGANv1.2初期版に近い描画。レトロ写真や低解像度写真の復元が得意。GFPGANv1.2.pth
GFPGANv1.0初期モデル。アニメ顔など特殊用途での試験に使われることがある。GFPGANv1.pth
  • 1.4 → 現行の標準。自然な顔補正で、多くの用途に無難に使える。
  • 1.3 → よりシャープ&メリハリある仕上げ。ただし少し不自然な場合も。
  • 1.2 → 古い写真やぼやけ画像の補修に有効。
  • 1.0 → 実験的用途。

公式リポジトリ(TencentARC/GFPGAN)

  • https://github.com/TencentARC/GFPGAN
    Releasesページに .pth モデルが公開されています。
  • 配置場所(単体実行時)
    experiments/pretrained_models/ フォルダ内に置く。

主な Real-ESRGAN モデル

  • RealESRGAN_x4plus:汎用写真・イラスト向け。×4 アップスケーリングが可能。
  • RealESRGAN_x4plus_anime_6B:アニメ/イラストに特化した最新モデルで、線のディテールと色面をきれいに再現。
  • RealESRGAN_x2plus:低倍率(×2)向け。自然な拡大が可能で、特に微細なディテールを維持したい場合におすすめ。

(※ GitHub Releases ページで直接 .pth モデルファイルが並んでいます)

公式リポジトリ(Animesrgan/Real-ESRGAN)

  • GitHub: https://github.com/xinntao/Real-ESRGAN/releases
  • Release ページの「.pth」または「.onnx」ファイルをダウンロードし、stable-diffusion-webui/models/ESRGAN/ フォルダにモデルファイルを保存すると、WebUI画面から選択可能になります。

AUTOMATIC1111を、RunPodなどのクラウドGPUを用いた実行環境で使用する方法
クラウド上の高性能GPUを使用して生成が行える上、Real-ESRGAN や GFPGAN が最初から統合済み or オプションで有効化可能なAUTOMATIC1111のWeb UIを使用できます。多少事前の準備(アカウント作成、ストレージの作成)が必要ですが、ツール自体はワンクリックで立ち上げて使用できます。
Python, Git, CUDA環境なども必要無いので、一度準備してしまえばとても快適です。

方法は、大きく分けて三通りです。

使用方法3通り

方法ツール例特徴推奨ユーザー
①専用アプリ(簡易GUI型)Upscayl, GFPGAN GUI環境構築不要で手軽、初心者向け初心者
②WebUI(統合型)AUTOMATIC1111, ComfyUI, ForgeGUI操作で安定。Stable Diffusionと連携可初心者〜中級者
③公式リポジトリ(コマンドライン型)Real-ESRGAN/GFPGAN GitHubPython実行。実験・バッチ処理向け上級者・研究者

専用アプリから使う(簡易GUI型)

特徴

  • 無料版はオープンソース、広告なし
  • 基本的なアップスケールやモデル選択が可能
  • 有料版は追加機能や優先アップデートあり

メリット

  • 環境構築不要ですぐ使える
  • GFPGAN GUIも同様

UpscaylとGFPGAN GUIは、事前に環境を用意しなくてもすぐ使えます。

②WebUI(統合型)おすすめです

Automatic1111でGFPGANとReal-ESRGANを使用する4
Automatic1111を開く

Web UI系ツール とは、「コードを書かずに、画面上のボタンやメニューで操作できるツールです。
Pythonなどの知識も必要ありませんが、ツールによっては、一旦使用するファイルをダウンロードしてからクラウド上で操作します。

※Automatic1111や、ComfyUIなどをインストールする必要がありますが。(もしくは、**レンタルクラウドGPUを利用してAutomatic1111や、ComfyUIを使用する方法もあります。)
定期的に使用したい場合や、他の機能とも併用できるというメリットがあります。**レンタルクラウドGPU(Runpodなど)では、ワンクリックで、Real-ESRGANやGFPGANが統合されているAutomatic1111や、ComfyUIをしようできるテンプレートもあります。
Runpodの使用方法はこちらで解説しています。https://sakasaai.com/runpodstadiff00/

AUTOMATIC1111

この方法は、AUTOMATIC1111(通称 A1111 の Stable Diffusion WebUI)を自分のPCにインストールして(もしくは、クラウド環境のレンタルGPUを借りて)使用します。AUTOMATIC1111は、Extras タブを介して以下の 2 つの高度な画像処理ツールを統合しています。

難易度:低 / おすすめ:◎

特徴

Extrasタブに Real-ESRGAN / GFPGAN 統合
インストールは launch.py 実行で自動または手動

使い方の流れ(A1111 Web UI)

  1. モデルの準備
    • Real‑ESRGAN モデルファイルを models/ESRGAN/ フォルダに配置。
    • GFPGAN モデルは所定のフォルダに配置すれば Extras タブで自動検出されます。
  2. WebUI を起動
    通常 webui.py を実行して起動します。起動後、上部のメニューバーから Extras タブを選択。
Automatic1111でGFPGANとReal-ESRGANを使用する ①
  1. Extras タブの操作
    • 「Upscale: Real‑ESRGAN」 のセクションで解像度拡大のパラメータ(倍率、モデル選択 等)を選択。

Extrasタブの主な設定項目

  • Upscaler 1 / Upscaler 2
    • ここで Real-ESRGAN_x4plus などを選択します。
    • Upscaler 2 はオプションで、組み合わせる場合に使います(例えば、一次処理にESRGAN、二次処理にLanczosなど)。
    • ふつうは Upscaler 1にReal-ESRGAN を選べばOKです。
  • Upscaler 2 visibility
    • 0〜1でブレンド率を決められます。
    • 0 ならUpscaler 1のみ、1 ならUpscaler 2のみ、0.5なら両方半々。
  • Scale by
    • 倍率指定(例:2、4など)。
    • Scale by 4 なら縦横ともに4倍になります。
  • Scale to / Resize
    • ピクセル数で直接指定したいときに使います。
    • 例えば「Scale to 2048」で一辺を2048pxに揃える。
  • Max side length
    • 画像の一番長い辺の上限を設定。
    • 0にすると無制限(そのまま倍率通り)。
    • VRAM不足対策で縮小される場合に役立ちます。
Automatic1111でGFPGANとReal-ESRGANを使用する
Automatic1111でGFPGANとReal-ESRGANを使用する②
  1. 「Face Restore: GFPGAN」 のセクションから顔修復用モデルを選択。


Automatic1111でGFPGANとReal-ESRGANを使用する②設定

GFPGAN(顔補正)

  • Visibility
    • 顔補正の強さ。
    • 1 → フル適用
    • 0.5 → 半分だけ適用
    • 0 → 無効

CodeFormer(顔補正の別手法)

  • Visibility
    • GFPGANと同じく、強さの調整。
  • Weight (0 = maximum effect, 1 = minimum effect)
    • 効果のかかり具合をコントロール。
    • 0 → 効果最大(かなり修正される)
    • 1 → 効果最小(ほぼ元画像のまま)
Automatic1111でGFPGANとReal-ESRGANを使用する6


顔がある画像 → GFPGANやCodeFormerをON
背景や全体の解像度強化 → Real-ESRGANをメインに
GFPGANとCodeFormerは同時に使えますが、仕上がりは好みによるので片方だけで十分な場合も多い。

  1. 必要に応じて出力画像名、保存先などを設定して「Run」をクリック。
Automatic1111でGFPGANとReal-ESRGANを使用する⑦

ComfyUI

  • ノードで Real-ESRGAN / GFPGAN を組み込み可能
  • Stable Diffusion 生成後に処理を連携させることも簡単

公式リポジトリから直接使う(コマンドライン型)

前提環境

Real-ESRGAN や GFPGAN は PyTorch や特定のバージョンのライブラリに依存しているため、専用の仮想環境を作ることで他のプロジェクトと干渉しません。
その為、CUDA環境の構築が楽で、PyTorch + GPU(CUDA)のセットアップが conda で簡単にできるAnaconda(またはMiniconda)の使用がおすすめです。

比較項目venv(Python標準)Anaconda(またはMiniconda)
環境構築の簡単さ自分でPython・CUDA・PyTorchのバージョン整合をとる必要ありcondaが自動で依存関係を解決
パッケージの管理基本はpip頼り。複雑な依存関係で詰まりやすいconda + pip両方使えて柔軟&強力
CUDAの扱いCUDA Toolkitを手動インストールしてパス設定が必要PyTorch+CUDAをconda install pytorchだけで完結できることが多い
初心者への安心感エラー時の自己解決力が必要失敗しにくい構成。エラーも少ない
仮想環境の切り替えsource venv/bin/activate などconda activate 環境名 で統一

※Anacondaを使用する場合は、CUDAとPyTorchのインストールを個別で行う必要がありません。

ここでは、
1⃣Anacondaをインストールして環境を構築する方法と、
2⃣ CUDAとPyTorchのインストールをして環境を構築する方法

という二通りにの環境構築方法について書いています。

1⃣Anacondaをインストールして環境を構築する方法

Anacondaのインストール

anacondaのインストール①

任意のアカウントでログインします。

anacondaのインストール②

Anacondaの公式ダウンロードページから、お使いのOSに対応したインストーラーをダウンロードできます。

anacondaのインストール③

① Anacondaの準備

インストール手順(Windowsの場合)

  1. ダウンロードしたインストーラー(例: Anaconda3-2024.10-1-Windows-x86_64.exe)をダブルクリックして実行します。
anacondaのインストール④

2. インストーラーが起動したら、「Next」をクリックします。
3. ライセンス契約画面で「I Agree」を選択します。
4. インストールタイプの選択では、「Just Me(推奨)」を選び、「Next」をクリックします。
5. インストール先フォルダを確認し、必要に応じて変更後、「Next」をクリックします。
6. 追加タスクの選択では、特に変更がなければそのまま「Install」をクリックします。
7. インストールが完了したら、「Next」をクリックし、最後に「Finish」をクリックしてインストールを終了します。

インストール後、スタートメニューから「Anaconda Prompt」や「Anaconda Navigator」を起動できます。

※Anaconda Navigator(GUI)からアップデートを求められた場合は、基本的にはそのまま「更新」してOKです。ただし、すでに構築済みの仮想環境内でパッケージを更新する場合は、conda updatepipのバージョン管理に注意が必要です。

インストール確認

Anaconda Promptを開き、以下のコマンドを入力してPythonのバージョンを確認します。
Anaconda Promptは、WindowsでAnacondaをインストールした後、以下の手順で起動できます。

  1. スタートメニューを開く
  2. 「Anaconda Prompt」と検索
  3. アイコンをクリックして起動

※黒いウィンドウが開き、(base) と表示されていれば、Anacondaの「base」環境が有効になっています。
もしくは、Windowsターミナルを開き、
タブから””下矢印をクリックで、Anaconda Promptを選択(Anacondaインストール後に追加されます。)

ターミナル(Windows Terminal)コマンドプロンプト、PowerShell、の開き方

Windowsの場合は、(※Windows Terminal)を開きます。

Windows Terminal(ウィンドウズターミナルの起動方法…

コマンドの実行は、Windows標準の「Windows Terminal」を使って行います。
(※コマンドプロンプト(cmd)やPowerShellでも同様に動作しますが、Windows Terminalの方が操作しやすくおすすめです。)
コマンドプロンプト(Command Prompt)とは、Windowsに搭載されているテキストベースのインターフェースです。マウス操作ではなく、キーボードからコマンド(指示)を入力することで、パソコンを操作できます。

Windows Terminal起動方法

  1. スタートメニューで、左クリック➡ターミナルを起動もしくは、「Windows Terminal」と検索して起動
  2. デフォルトでは PowerShell または Command Prompt(cmd)(又は、WindowsPowerShell)が開きます

画像生成用途の場合は、Command Prompt コマンドプロンプト(CMD)と相性が良いです。

pip installconda などのモダン開発向けコマンドは、PowerShellと相性が良いです。

※詳しい使用方法や、Windows Terminalの設定方法は、こちらの記事をご覧ください。

Windows Terminalは、タブを切り替えて複数のシェルを使う事が出来ます

  • 上部の ボタンから新しいタブを開けます
  • をクリックすると以下の選択肢があります
    • PowerShell
    • Command Prompt
    • WSL(Linuxサブシステム)※インストール済みなら
    • Azure Cloud Shell(必要な場合)

※Microsoft 公式も「Windows Terminal」を推奨しているため、当サイトでも記載するWindowsのコマンド実行場所を、コマンドプロンプト(cmd)から「Windows Terminal」に変更致しました。

コマンド入力は間違えるとエラーになることもありますが、慣れると素早く作業ができる便利なツールです。

Macの場合は、(※ターミナル)を開きます。

ターミナル(Terminal)の起動方法…

Macにはターミナル(Terminal)というアプリがあり、これを使うことで、コマンドを入力してシステムを操作できます。

ターミナル起動方法

  1. **「Command ⌘ + Space」を押して、「Spotlight検索」**を開く
  2. 検索バーに「ターミナル」と入力してEnter

または、以下の手順でも開けます:

アプリケーションユーティリティターミナル

Linux のターミナルの起動方法…

Linuxでは「ターミナル」が、コマンド操作の基本です。ウィンドウの中でキーボード入力によりシステムを操作します。

Linuxターミナル起動方法

  • 1,:Ctrl + Alt + T を同時に押す(多くのLinuxディストリビューションで共通)
  • 2,:アプリケーション一覧から「ターミナル」または「Terminal」で検索して開く

Ubuntu、Fedora、Debianなど、ほとんどのLinux環境に標準で搭載されています。
Macのターミナルと似た雰囲気で、コマンドの使い方もほぼ共通です。

PowerShell の起動方法…(Windows)

PowerShell(パワーシェル)**は、Windowsに標準搭載されている、より高度な操作ができるコマンドラインツールです。見た目はコマンドプロンプトと似ていますが、より多機能で、プログラミング的な処理も得意です。

PowerShell起動方法

1,スタートメニューで「PowerShell」と検索してクリック

2,Windowsキー + R を押して「powershell」と入力 → Enter

コマンドプロンプトと同様、キーボードからコマンドを入力して操作します。
たとえば Get-ChildItem(=フォルダの中身を見る)など、PowerShell独自のコマンドもありますが、通常のコマンド(例:cdpythonなど)も使えます。

※コマンドプロンプト(cmd)の起動方法…(Windows)

Windowsキー + Rを押す

cmd」と入力してEnterを押す
または、スタートメニューで「コマンドプロンプト」と検索してもOK!

ターミナル(Windows Terminal)を開き、”○○○(ツール名)”と打ち込むと呼び出してくれます。

アナコンダプロンプト
python --version

また、Anaconda Navigatorを起動して、GUI上で環境やパッケージの管理ができることを確認してください。

Anaconda Prompt を開いて以下を実行(仮想環境を有効化

conda create -n realesrgan_env python=3.10
conda activate realesrgan_env

※このコマンドを実行する事で、realesrgan 内で仮想環境を使った作業ができる状態になります。
PyTorch(GPU対応)をインストール(※GPUを使う場合。CPU版でもOK)

# 例:CUDA 11.8 対応の場合
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

2⃣ CUDAとPyTorchのインストール

Real-ESRGANやGFPGANをGPUで高速に動かすには、**CUDA(NVIDIAのGPU用ドライバ)と、それに対応するPyTorch(機械学習ライブラリ)**を正しくインストールする必要があります。

先ずは、その手順から見ていきたいと思います。

1. お使いのGPUがCUDA対応か確認する

まず、ご自身のPCに搭載されているNVIDIA製GPUがCUDAに対応しているかどうか?を確認します。確認方法については、こちらの記事の冒頭で書いていますので、ご確認ください。

2. NVIDIA GPUドライバとCUDA Toolkitのインストール

GPUを活用するには、以下の2つが必要です。

  • GPUドライバ:NVIDIA公式サイトからダウンロード(既に最新版ならOK)
  • CUDA Toolkit:PyTorchのバージョンに合わせたものをインストール

*ただし、特別な事情がない限り「PyTorchだけ入れればOK」です。PyTorchのインストール時に、自動的に対応したCUDAランタイムが入るため、CUDA Toolkitを直接インストールする必要はありません。

CUDA + PyTorchについての詳しい解説とインストール手順については、こちらの記事をご覧ください。


Real-ESRGANとGFPGANの共通点(インストール・使い方)

インストール手順(共通)

git clone https://github.com/TencentARC/Real-ESRGAN.git  # または GFPGAN に差し替え
cd Real-ESRGAN
pip install -r requirements.txt
python setup.py develop

推論コマンドの例(コマンドラインからの実行)

# Real-ESRGAN の場合(画像の高画質化)
python inference_realesrgan.py -n RealESRGAN_x4plus -i inputs

# GFPGAN の場合(顔の修復)
python inference_gfpgan.py -i inputs --face_enhance

違い(中身と出力)

項目Real-ESRGANGFPGAN
主な目的画像全体の超解像(高画質化)顔画像の復元・修復
入力画像の種類写真やイラスト全般顔が写っている画像
出力全体を滑らか&高精細にアップスケーリング顔部分を整えて自然な状態に修復
モデル名例RealESRGAN_x4plusGFPGANv1.3.pth(face_enhanceあり)

GFPGANとReal-ESRGANを連携させる方法

AUTOMATIC1111 などの WebUI を使わずに、GFPGAN と Real-ESRGAN をローカルで連携させて使う方法

「GFPGANで顔補正 → Real-ESRGANでアップスケーリング」という順番でスクリプトを組む方法

1. 環境準備

Python と依存パッケージ

pip install basicsr facexlib realesrgan gfpgan
  • basicsrfacexlib は両方のツールが共通で使う画像処理ライブラリです。
  • realesrgangfpgan はそれぞれの実装。

2. モデルファイルの準備

に関する詳細については、こちらをクリックしてください。

主なGFPGANモデル

GFPGANの顔復元(Face Restoration)専用モデルは、バージョンや学習条件によって複数のモデルファイルが存在します。

モデル名特徴ファイル例
GFPGANv1.4現時点で最も安定し、自然で破綻の少ない顔復元。背景も無難に処理。GFPGANv1.4.pth
GFPGANv1.31.4よりシャープで、顔の線を強調しやすい。やや人工的になる場合あり。GFPGANv1.3.pth
GFPGANv1.2初期版に近い描画。レトロ写真や低解像度写真の復元が得意。GFPGANv1.2.pth
GFPGANv1.0初期モデル。アニメ顔など特殊用途での試験に使われることがある。GFPGANv1.pth
  • 1.4 → 現行の標準。自然な顔補正で、多くの用途に無難に使える。
  • 1.3 → よりシャープ&メリハリある仕上げ。ただし少し不自然な場合も。
  • 1.2 → 古い写真やぼやけ画像の補修に有効。
  • 1.0 → 実験的用途。

公式リポジトリ(TencentARC/GFPGAN)

  • https://github.com/TencentARC/GFPGAN
    Releasesページに .pth モデルが公開されています。
  • 配置場所(単体実行時)
    experiments/pretrained_models/ フォルダ内に置く。

主な Real-ESRGAN モデル

  • RealESRGAN_x4plus:汎用写真・イラスト向け。×4 アップスケーリングが可能。
  • RealESRGAN_x4plus_anime_6B:アニメ/イラストに特化した最新モデルで、線のディテールと色面をきれいに再現。
  • RealESRGAN_x2plus:低倍率(×2)向け。自然な拡大が可能で、特に微細なディテールを維持したい場合におすすめ。

(※ GitHub Releases ページで直接 .pth モデルファイルが並んでいます)

公式リポジトリ(Animesrgan/Real-ESRGAN)

  • GitHub: https://github.com/xinntao/Real-ESRGAN/releases
  • Release ページの「.pth」または「.onnx」ファイルをダウンロードし、stable-diffusion-webui/models/ESRGAN/ フォルダにモデルファイルを保存すると、WebUI画面から選択可能になります。

3. 連携処理の流れ(例)

以下は Pythonスクリプト例 です。
GFPGANで顔補正した画像を、そのまま Real-ESRGAN に渡して高解像度化します。

<!-- wp:preformatted -->
<pre class="wp-block-preformatted">pythonコードをコピーする<code>import cv2
from gfpgan import GFPGANer
from realesrgan import RealESRGANer

# === 1. GFPGAN 設定 ===
gfpganer = GFPGANer(
    model_path='experiments/pretrained_models/GFPGANv1.4.pth',
    upscale=1,  # GFPGAN内での倍率(後でRealESRGANで拡大するので1に)
    arch='clean',
    channel_multiplier=2
)

# === 2. Real-ESRGAN 設定 ===
realesrganer = RealESRGANer(
    model_path='experiments/pretrained_models/RealESRGAN_x4plus.pth',
    scale=4,  # 最終倍率
    model=None,
    tile=0,   # VRAMに応じて分割推論も可能
)

# === 入力画像の読み込み ===
img = cv2.imread('input.jpg', cv2.IMREAD_COLOR)

# === 3. 顔補正 ===
cropped_faces, restored_faces, restored_img = gfpganer.enhance(
    img, has_aligned=False, only_center_face=False, paste_back=True
)

# === 4. アップスケーリング ===
output, _ = realesrganer.enhance(restored_img, outscale=4)

# === 保存 ===
cv2.imwrite('output.jpg', output)
print("処理完了: output.jpg")
</code></pre>
<!-- /wp:preformatted -->

4. 実行のポイント

  • 順序は GFPGAN → Real-ESRGAN が一般的です(顔を先に直してから拡大)。
  • 両方の .pth モデルは同じディレクトリに置いてもOKですが、スクリプト内の model_path を正確に指定する必要があります。

GFPGAN の公式スクリプトを使って GFPGANとReal-ESRGANを自動連携させて画像処理する方法


GFPGANには--bg_upsampler realesrganというオプションがあり、背景処理にReal-ESRGANを使う方法。

※GFPGAN や Real-ESRGAN の依存関係(ライブラリやモデルファイル)をインストール済みであることが前提です。
以下のコマンドは、GFPGAN の公式スクリプトを使って GFPGANとReal-ESRGANを自動連携させて画像処理する ためのものです。

python inference_gfpgan.py -i inputs --bg_upsampler realesrgan

意味:inference_gfpgan.py というスクリプトを実行して、inputs フォルダ内の画像を処理し、顔の修復には GFPGAN を使い、背景のアップスケール(高画質化)には Real-ESRGAN を使う、という内容です。

pythonPythonスクリプトを実行するためのコマンド。
inference_gfpgan.py顔画像を修復するためのメインスクリプト。GFPGANの推論処理がここに書かれている。
-i inputs -i--input の略で、「入力画像のあるフォルダ」を指定する。ここでは inputs フォルダ内の画像を処理対象としている。
--bg_upsampler realesrgan背景部分を高画質化する際に使用するアップスケーラーを指定。ここでは Real-ESRGAN を使用して背景もきれいにする設定。

追加オプション例:

  • -o output → 出力先フォルダ指定
  • --upscale 2 → 最終アップスケール倍率(2倍など)
  • --model_path ... → 使用するGFPGANモデルを直接指定

まとめ

  • 初心者: Upscaylなどの簡易GUIが手軽
  • 中級者: AUTOMATIC1111 / ComfyUI で統合・操作簡単
  • 上級者: GitHubリポジトリから直接Pythonで処理・連携
  • URLをコピーしました!
目次