【CodeFormerの使い方】3通りの方法

CodeFormerとは?
顔の復元・補完・高画質化に特化したAIツールです。
主に次のような用途に向いています
- ぼやけた顔写真を鮮明にしたい
- AI生成画像の崩れた顔(目・口・鼻)を修正したい
- ノイズが多い古い写真の顔を補完したい
CodeFormerの使用環境
CodeFormerやReal-ESRGAN、GFPGANのようなツールは、一般に以下のような環境を前提としています。
- Python(3.8~3.10あたり)
- PyTorch(+CUDAドライバ:NVIDIAのGPUがあれば)
- Git
- LinuxまたはLinux系OS(Ubuntuなど)での動作
しかし、これらの環境が無くても使用できる方法があります。
今回は、上記の環境(ローカル)以外で使用できる方法を含めた、3通りの使用方法について、解説していきます。
使い方:3通りの方法
1⃣【手軽】ブラウザで試す(ローカル不要)
Hugging Faceのデモページ
Hugging Face CodeFormer ページはこちら
- ページを開くと、シンプルな操作画面が出てくる
- 画像をアップロードする(自分の写真や試したい画像)
- 「Submit(送信)」ボタンを押す
- 数秒〜1分くらい待つと、修復された顔画像が出てくる!
- 完了したらダウンロード
注意事項
- 待ち時間があるかも(人気なので並ぶことがある)
- アップロードする画像サイズは小さめ(できれば512px以内)がスムーズ
- あくまで「デモ版」だから、商用利用はNG(正式に使いたいならローカルインストールかライセンス確認)
もうちょっと高機能版を使いたい場合や、自分のPCでCodeFormer動かしたい場合は2へ!
2⃣ 【やや中級者向け】Google Colabで使う(ブラウザ+GPU)
Step.1 Google Colabにアクセス
まず、Googleアカウントがあれば誰でも使える「Google Colab」にアクセスします。
Google Colabはこちら
Step.2 新しいノートブックを作成
Colabを開いたら、
- 「ファイル」>「ドライブの新しいノートブック」 をクリックして、新しいページを開きます。


Step.3 GPUを有効にする(これ超重要!)
CodeFormerは重いので、GPUを使う設定にしておきましょう!


- メニューから「ランタイム」>「ランタイムのタイプを変更」を選択
- 「ハードウェアアクセラレータ」で「GPU」を選んで「保存」
これで、GPUが使える状態になりました!
Step.4 CodeFormerをColabにインストール・準備
コードは、一つのコードに対して一つのセルを使用します。+コード
で、セルを追加して、コードを書きましょう。


① 必要なライブラリとCodeFormerをインストール
次のコードを、Colabのセルにコピペして実行していきます!
# GitからCodeFormerをダウンロード
!git clone https://github.com/sczhou/CodeFormer.git
%cd CodeFormer
# 必要なパッケージをインストール
!pip install -r requirements.txt
Ctrl+V
でペースト出来ます。


実行はセルの「▶️ボタン」を押します。
② CodeFormerの事前学習モデルをダウンロード
新しいセルを追加して、②の「事前学習モデルをダウンロードするコード」を貼り付けて、また実行します。
# weights(重みファイル)をダウンロード
!mkdir weights
!wget -P weights https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/codeformer.pth
※これが「AIが学んだ知識データ」だと思ってください!


Step.5 画像をアップロードする
Colabに自分の画像をアップロードして、修復させます。
from google.colab import files
uploaded = files.upload() # ここでファイル選択画面が出ます
実行すると、自分のPCからファイル選択できるので、顔画像などを選びます。
Step.6 CodeFormerで画像を修復する
次に、アップロードした画像を修復するコードです
import os
import torch
from basicsr.archs.codeformer_arch import CodeFormer
from torchvision.transforms.functional import to_tensor, to_pil_image
from PIL import Image
# モデルのロード
device = 'cuda' if torch.cuda.is_available() else 'cpu'
model = CodeFormer(dim_embd=512, codebook_size=1024, n_head=8, n_layers=9, connect_list=['32', '64', '128', '256']).to(device)
ckpt_path = 'weights/codeformer.pth'
model.load_state_dict(torch.load(ckpt_path)['params_ema'])
model.eval()
# 画像の読み込み
input_image_path = list(uploaded.keys())[0]
input_image = Image.open(input_image_path).convert('RGB')
input_tensor = to_tensor(input_image).unsqueeze(0).to(device)
# 推論
with torch.no_grad():
output = model(input_tensor, w=0.7)[0] # wの値は0.0〜1.0で調整できる(整形度合い)
# 保存
output_image = to_pil_image(output.squeeze(0).cpu().clamp(0, 1))
output_image.save('output.png')
# 表示
output_image.show()
これで、アップロードした顔画像が補完・修復された状態で出てきます!
Step7 完成した画像をダウンロードする
最後に、出力画像(output.png
)をダウンロードして保存できます!
files.download('output.png')
※無料でGPUが使えるのが魅力!重い画像も快適処理。
「CodeFormerを動かす為のまとめノートブック」を作る手順
同じ操作を繰り返したい場合は、まとめノートブックを作成しておくとのみを押すだけで、簡単に同じ操作を繰り返す事が出来ます。 実行ボタン
作成方法は以下の通りです。
【STEP 1】新しいGoogle Colabノートブックを開こう!
まずは、
- Google Colab にアクセス
- 画面左上の「ファイル > 新しいノートブック」をクリック
すると、新しい空っぽのノートブックが開きます。
(名前は後でつければOKです)
順番にセルを作っていきましょう!
【STEP 2】最初のセルに書くコード
まずは「CodeFormerのソースコードをGitHubからダウンロード」してきます。
ノートブックの一番上のセルに、次のコードをコピペしてください
# CodeFormerをクローン
!git clone https://github.com/sczhou/CodeFormer.git
# CodeFormerフォルダに移動
%cd CodeFormer
# 必要なライブラリをインストール
!pip install -r requirements.txt
# さらに必要な依存ライブラリもインストール
!pip install -q basicsr facexlib gfpgan
!pip install -q -U openmim
!mim install -q mmcv-full
左側の「▶️ボタン(セルを実行)」を押してください!


【STEP 3】事前学習モデル(重みファイル)をダウンロードするセル
次は、CodeFormerの学習済みモデル(codeformer.pth
)をダウンロードするコードを書きます。
新しいセルを追加して、次をコピペしてください
# 重みファイルを保存するフォルダを作成
!mkdir -p weights
# CodeFormerの学習済みモデルをダウンロード
!wget -P weights https://github.com/sczhou/CodeFormer/releases/download/v0.1.0/codeformer.pth
【ポイント】
weights
というフォルダを作って、そこに保存します。- この「重み」がないと、顔修復ができないので必須です!
【やること】
- 新しいセルを追加して
- 上のコードを貼り付けて
- 「▶️」ボタンで実行!


ダウンロードする「学習済みモデル(codeformer.pth)」のサイズがけっこう大きい(数百MB以上ある)為、時間が掛かる場合があります。ColabのサーバーとGitHubの通信速度はそのときの回線状況に左右されます。
【目安時間】
- 早いとき ➔ 10秒〜30秒くらい
- 遅いとき ➔ 数分かかることもある
なので、のんびり待っていればOKです。
(途中でエラーが出なければ問題なし!)
【もし途中でエラーになったら?】
もし仮にダウンロード中にエラーが出ても、
もう一度「セルの▶️ボタンを押して再実行」すれば大丈夫です!
【STEP 4】画像をアップロードするセルを作ります!
Colab上に、CodeFormerで直したい自分の画像ファイルをアップロードする仕組みを作りましょう!
次のコードを新しいセルにコピペしてください
from google.colab import files
# ファイルアップロード
uploaded = files.upload()
- 上のコードを貼り付けて
- ▶️ボタンを押します
すると、「ファイルを選んでください」というウィンドウが出るので、
手元にある顔画像ファイルを選んでアップロードしてみてください
【STEP 5】CodeFormerで画像補正を実行するセル
次のコードを、新しいセルに貼り付けてください
# 推論に必要なモジュールをインポート
import torch
from torchvision.utils import save_image
from basicsr.archs.codeformer_arch import CodeFormer
from torchvision import transforms
from PIL import Image
import os
# CodeFormerモデルの準備
net = CodeFormer(dim_embd=512, codebook_size=1024, n_heads=8, n_layers=9, connect_list=["32", "64", "128", "256"])
ckpt_path = 'weights/codeformer.pth'
net.load_state_dict(torch.load(ckpt_path)['params_ema'])
net = net.eval().cuda()
# アップロードしたファイル名を取得
filename = list(uploaded.keys())[0]
# 画像の読み込みと前処理
img = Image.open(filename).convert("RGB")
transform = transforms.Compose([
transforms.Resize((512, 512)),
transforms.ToTensor()
])
img_input = transform(img).unsqueeze(0).cuda()
# 顔補正を実行
with torch.no_grad():
output = net(img_input, w=0.7, adain=True)[0]
output = (output.clamp(-1, 1) + 1) / 2
# 結果を保存
save_image(output, 'restored_image.png')
# 画像を表示
from IPython.display import Image as IPImage, display
display(IPImage('restored_image.png'))
CodeFormerモデルをロードしてアップロードした画像を読み込んで顔をきれいに復元(補正)して結果を表示&保存する
【注意点】
保存されたファイル名は restored_image.png
になります!
最初にアップロードした画像ファイル名が自動で使われます。
このようなエラーが出た場合
ModuleNotFoundError: No module named 'basicsr'


次のコマンドを新しいセルにコピペして、実行してください
!pip install basicsr
これでbasicsrがインストールされます!
(この作業は、Colabを新しく開いたときは毎回やる必要があります)インストールが終了したら、一度画面左上のランタイムのタブをクリックして、セッションを再起動をして下さい。
このようなエラーが出た場合
ModuleNotFoundError: No module named 'torchvision.transforms.functional_tensor'
これは、今インストールされてる「torchvision」のバージョンが低すぎて、必要な機能がない場合のエラーです。
次のコマンドを新しいセルにコピペして、実行してください
!pip install torchvision --upgrade
これで、最新の torchvision
にアップデートできます。
3⃣【上級者向け】ローカルPCに導入して使う
前提条件(以下の環境が整っていること)
- Python(推奨:3.8〜3.10)
- Git(コードをクローンするため)
- NVIDIA製GPU + CUDA環境(GPUで高速処理する場合)
手順(ざっくりとした流れ)※詳細は別ページにて解説しています。最後にリンクがあります。
- CodeFormerのソースコードをGitHubから取得
git clone https://github.com/sczhou/CodeFormer.git
cd CodeFormer
2.必要なPythonライブラリをまとめてインストール
pip install -r requirements.txt
このコマンドは、requirements.txt
に書かれている依存ライブラリ(例:torch
, opencv-python
など)を一括でインストールします。
について,
以下の記事で詳しく解説していますをご覧ください。


- 事前学習済みモデル(
CodeFormer.pth
)をダウンロードして、所定の場所に配置
GitHubの公式リポジトリの「README」にあるURLから、weights
フォルダに保存します。
例(Linux/macOSの場合)
mkdir -p weights/CodeFormer
mv CodeFormer.pth weights/CodeFormer/
実行!画像を指定して処理を開始
例:
python inference_codeformer.py --w 0.7 --input_path inputs/test.jpg --output_path results/
おすすめ設定とコツ
パラメータ | 説明 | おすすめ値 |
---|---|---|
w | 補完の強さ(0〜1) | 0.5〜0.7くらいが自然 |
画像サイズ | 小さすぎると補完しきれない | 顔が100px以上推奨 |
CodeFormerをローカルで使うためのPC環境
1. 【OS環境】
- 対応OS
- Windows 10 / 11
- macOS(Intel or Apple Silicon)
- Linux(Ubuntu推奨)
※ただし、GPU処理(高速動作)したい場合はWindows or Linuxを強く推奨。
2. 【Python・CUDA環境】
項目 | 内容 |
---|---|
Python | 3.8 〜 3.10(Python 3.11は非推奨) |
CUDA Toolkit | 11.3 〜 11.7(GPUを使う場合) |
PyTorch | CUDA対応版をインストール(後述) |
Git | GitHubからコードを取得するために必要 |
3. 【PCスペック】
スペック項目 | 最低要件 | 推奨要件 |
---|---|---|
CPU | Intel Core i5 / AMD Ryzen 5 以上 | Core i7 / Ryzen 7 以上 |
メモリ(RAM) | 8GB 以上 | 16GB 以上(重い画像処理のため) |
GPU(NVIDIA製) | GeForce GTX 1060 以上(VRAM 6GB〜) | RTX 3060 / 3070 / 4070(VRAM 8GB〜) |
ストレージ | SSD推奨(数GBのモデルファイルを扱う) | SSD(空き容量:10GB以上) |
GPUはCUDA対応のNVIDIA製が必須です。AMDやIntel GPUは非対応。
4. 【その他の条件】
- Python環境は仮想環境(venv)で構築するのがおすすめ
- Pythonライブラリの依存関係を
pip install -r requirements.txt
で管理 - インターネット接続(初回はモデルファイルなどをダウンロードするため)
GPUがないとどうなる?
- CPUでも動作はしますが「1枚の画像処理に数分〜十数分かかる」こともあります。
- GPUがあると「数秒〜十数秒で処理完了」なので、作業効率が段違いです。
どんな画像に向いてる?
顔だけじゃないの?
CodeFormerは 全体の画像ではなく「顔部分のみ」に特化 しています。
顔以外の補完は別のツール(例:Real-ESRGANなど)と組み合わせるのがおすすめです。



