顔差し替え機能を自社プロダクトに組み込む検討を任されたとき、まず候補として名前が挙がるのが顔差し替え/ディープフェイク OSS の代表格「FaceSwap」(deepfakes/faceswap)です。GitHub スター 57,000 超・フォーク 13,000 超という規模のリポジトリで、日本語圏の技術ブログでも「使い方」「インストール手順」の情報は多く見つかります。
しかし、初見のエンジニアが本当に知りたいのは操作手順そのものではないはずです。「学習コストは自プロジェクトの体力で許容できるのか」「DeepFaceLab や FaceFusion といった類似 OSS と何が違い、なぜ FaceSwap を選ぶのか」「Manifesto の倫理宣言をどう実務上の判断に落とし込むか」といった、採用可否を上司や意思決定者に説明するための材料こそが不足しがちです。
これらは公式リポジトリの README・USAGE.md・INSTALL.md・Developer Documentation を横断して読めば得られる情報ですが、初見でこれらを俯瞰するのは負荷が高い作業です。
本記事では、FaceSwap の 3 段階ワークフロー(Extract / Train / Convert)と対応モデル・プラグインの全体像、動作環境要件、類似 OSS(DeepFaceLab / FaceFusion / SimSwap)との差分、そして倫理ポリシーの実務判断への落とし込み方までを、公式ドキュメントを中心に整理します。実行や動作検証は行わず、あくまでドキュメントベースで採用判断に必要な情報を揃えることを目的とします。
FaceSwap とは
FaceSwap は、深層学習を用いて写真・動画中の顔を認識し置き換える、いわゆるディープフェイク OSS の代表的な実装のひとつです。GitHub 上の公式リポジトリ deepfakes/faceswap で開発が続いており、公式サイトは faceswap.dev にあります。
README の冒頭では、以下のようにツール自体が定義されています。
FaceSwap is a tool that utilizes deep learning to recognize and swap faces in pictures and videos.
リポジトリの基本情報
採用検討にあたって最初に確認したい基本メタデータは以下のとおりです。数値は 2026 年 8 月時点で GitHub API から取得した値です。
項目 | 値 |
|---|---|
リポジトリ | deepfakes/faceswap |
Description | Deepfakes Software For All |
主要言語 | Python |
ライセンス | GPL-3.0 |
GitHub Stars | 57,413 |
Forks | 13,505 |
最終 push | 2026-08-05 |
アーカイブ状態 | false(アクティブに更新中) |
フォーク元 | false(オリジナルリポジトリ) |
公開状態 | public |
公式サイト |
archived: false かつ fork: false であり、直近も push が続いているため、少なくともメタデータ上は「開発・保守が停止していないアクティブなオリジナルリポジトリ」と判断できます。一方でスター数の規模に対して open issues が少なく、ユーザーサポートは GitHub Issues ではなく後述のフォーラム・Discord に集約されている運用である点も理解しておきましょう。
想定される利用シーン
公式サイトおよび README に示されている想定利用シーンは以下のように整理できます。
- 映像・VFX 分野での顔差し替え(映画・広告制作におけるスタント代替・年齢変更等)
- 学術研究(顔属性の操作研究・ディープフェイク検出手法の学習データ生成)
- 社会的・政治的コメンタリー、風刺・パロディ表現
- ディープフェイク検出モデルのトレーニング用データセット作成
出典: deepfakes/faceswap README(Manifesto セクション)
商用サービスに組み込む場合は、後述の倫理ポリシーおよび日本国内での法的リスクとの整合を必ず確認する必要があります。
FaceSwap の 3 段階ワークフロー Extract / Train / Convert
FaceSwap の処理は、公式の USAGE.md に定義された 3 段階のパイプラインで構成されます。この構造を理解することが「学習コストとデータ準備コスト」の見積りにつながります。
Extract: 顔検出と alignments.json 生成
Extract ステップでは、入力画像・動画から顔を検出し、正規化した顔画像を切り出します。同時に、検出結果の位置・ランドマーク情報を格納した alignments.json が生成されます。この JSON は後段の Train / Convert でも参照されるパイプライン共通の中間成果物です。
USAGE.md では、~/faceswap/src/trump と ~/faceswap/src/cage の 2 人分の素材から顔画像を抽出する例が以下のように示されています。
python faceswap.py extract -i ~/faceswap/src/trump -o ~/faceswap/faces/trump
python faceswap.py extract -i ~/faceswap/src/trump.mp4 -o ~/faceswap/faces/trump
python faceswap.py extract -i ~/faceswap/src/cage -o ~/faceswap/faces/cage
python faceswap.py extract -i ~/faceswap/src/cage.mp4 -o ~/faceswap/faces/cage
出典: deepfakes/faceswap USAGE.md
Extract のポイントは、後段の学習品質が「切り出された顔画像の質と量」で大きく左右される点です。ぼやけた顔・横顔・遮蔽(マスク・手・髪)の多いフレームが混ざると、後段で不自然な結果になりやすくなります。
Train: モデル学習の目安時間とデータセット規模
Train ステップでは、顔 A(入れ替え元)と顔 B(入れ替え先)それぞれの画像セットを入力に、両者を相互に変換できるモデルを学習します。
USAGE.md では、対象人物 1 人あたりの推奨顔データセットは 500〜5000 枚とされ、GPU での学習時間は 12〜48 時間程度が目安として示されています(CPU 学習は現実的な選択肢ではありません)。100 iteration ごとにモデルスナップショットが .bk 拡張子で自動バックアップされる仕組みも備えており、学習中断からの復帰や過学習時のロールバックに利用できます。
USAGE.md 掲載の学習コマンドは以下のとおりです(-p オプションは進捗のプレビュー表示)。
python faceswap.py train -A ~/faceswap/faces/trump -B ~/faceswap/faces/cage -m ~/faceswap/trump_cage_model/
python faceswap.py train -A ~/faceswap/faces/trump -B ~/faceswap/faces/cage -m ~/faceswap/trump_cage_model/ -p
出典: deepfakes/faceswap USAGE.md
「1 人あたり数千枚の顔画像を準備し、GPU を数十時間占有する」という運用が現実的に成立するかは、採用判断の分岐点になります。
Convert: 学習済みモデルによる置き換え
Convert ステップでは、学習済みモデルを使って入力画像・動画の顔を置き換え、結果を出力します。USAGE.md 掲載の例は以下です。
python faceswap.py convert -i ~/faceswap/src/trump/ -o ~/faceswap/converted/ -m ~/faceswap/trump_cage_model/
出典: deepfakes/faceswap USAGE.md
動画を扱う場合は、フレームへの分割・音声との再結合が必要になりますが、リポジトリには内蔵ツール effmpeg(python tools.py effmpeg -h で参照)が同梱されており、外部の ffmpeg と同等の操作を実行できます。
GUI と CLI の関係
上記のすべての処理は、CLI(python faceswap.py <command>)に加えて GUI(python faceswap.py gui)からも実行できます。GUI は Tkinter ベースで実装されており、パイプラインの各ステップをフォーム入力で構成できるため、非エンジニアメンバーが参加する検証フェーズでの活用が想定されます。
自動化パイプラインを構築する場合は CLI 経由でスクリプト化するのが自然です。GUI は初期評価・パラメータ探索の段階で有用ですが、本番運用ではジョブキューへの組み込みが必要になる点は認識しておくべきです。
対応モデルとプラグイン構成
FaceSwap のもう 1 つの特徴は、顔検出・アライメント・マスク・アイデンティティ・学習モデルがそれぞれ差し替え可能なプラグインとして実装されている点です。単一の GAN アーキテクチャに固定された OSS とは設計思想が異なり、用途に応じてプラグインを組み合わせる形になります。
主要なプラグインは公式の Developer Documentation(faceswap.readthedocs.io) にモジュールリファレンスとしてまとめられています。
顔検出・アライメント・マスクのプラグイン一覧
種別 | プラグイン例 |
|---|---|
顔検出(Detect) | CV2_DNN、MTCNN、RetinaFace、S3FD |
顔アライメント(Align) | CV2_DNN、FAN、HRNet、Dark Decoder |
マスク(Mask) | BiSeNet-FP、UNet-DFL、VGG_Clear、VGG_Obstructed、Custom |
アイデンティティ | VGGFace2、T-Face |
出典: FaceSwap Developer Documentation
たとえば、群衆シーンや小さな顔が多い映像であれば RetinaFace や S3FD のような高精度検出器が向き、リアルタイム性が優先される場面では CV2_DNN のような軽量な検出器が候補になります。マスクも「髪や手による遮蔽が多い映像なら VGG_Obstructed」といった具合に、素材特性に応じた選択が可能です。
学習用モデルのバリエーション
学習用モデル(Train ステップで使用)についても、README の Donate セクションや貢献者紹介から複数の実装が確認できます。代表的なものは以下です。
- Villain(貢献者作。デモ動画で Jennifer Lawrence / Steve Buscemi の入れ替えに使用)
- Phaze-A(Emma Stone / Scarlett Johansson の入れ替えデモに使用)
- DFL-H128(DeepFaceLab H128 系モデルの FaceSwap ポート)
- DFaker(DFaker の FaceSwap ポート)
- Unbalanced(貢献者 @andenixa 作)
- OHR(同上)
出典: deepfakes/faceswap README(Donate セクション)
モデル選定時に考慮するトレードオフ
複数モデルを切り替えられる設計は柔軟性の面で利点になる一方、「どのモデルを選ぶべきか」の指針がドキュメントには明示的にまとまっていないため、実運用では以下のようなトレードオフを自分たちの案件に当てはめて評価する必要があります。
- 解像度と学習時間: H128 / H256 系は入力解像度が上がるほど学習時間・VRAM 消費が増加します
- 表情再現性: Phaze-A や Villain 等の GAN 系は表情の再現に強みがある一方、学習の収束性やアーティファクトの発生条件が異なります
- オクルージョン耐性: 遮蔽物(メガネ・手・マイク)の多い映像では、対応するマスクプラグインとの組み合わせが必須になります
実運用では 1 モデルに絞り込む前に、小規模なデータセットで複数モデルを試行してから選定するアプローチが取られます。この試行コスト自体もプロジェクト計画に含めておく必要があります。
動作環境と GPU / OS 要件
採用判断で見落とされがちなのが、対応 OS・GPU 世代・Python バージョンの要件です。ここは公式の INSTALL.md を出典に整理します。
対応 OS
OS | 対応状況 |
|---|---|
Windows 10 / 11 | 対応(インストーラー配布あり) |
Linux(Ubuntu / Debian / CentOS 系) | 対応(AMD ROCm 経由の GPU 対応も Linux 限定) |
macOS 12.0 以降 | 対応(Apple Silicon の Metal GPU 加速あり。Experimental 扱い) |
Windows / Linux / macOS それぞれに対応している点は、後述する DeepFaceLab(Windows 中心)との明確な差になります。macOS の Apple Silicon 対応は Experimental とされていますが、Mac 環境で試作段階の検証を回すには十分な選択肢です。
出典: deepfakes/faceswap INSTALL.md
GPU 別セットアップの分岐
GPU は以下 3 系統に対応しており、それぞれ用意されている requirements ファイルが異なります。
- NVIDIA CUDA: 世代ごとに使用する CUDA バージョンが分岐します(RTX20xx 以降 / GTX9xx-10xx / GTX7xx-8xx で使用する CUDA が異なる)
- AMD ROCm: Linux 環境限定。ROCm 6.0〜6.4 系に対応
- Apple Silicon(Metal): Metal 経由での GPU 加速。Experimental
CPU 実行も技術的には可能ですが、学習が数週間単位になるため実務上は現実的な選択肢ではありません。「自チームで用意できる GPU の世代」と「ROCm・Metal をサポートできる運用体力」の両面から採用可否を判断する必要があります。
出典: deepfakes/faceswap INSTALL.md
Python バージョンと Anaconda 前提
INSTALL.md では Python 3.13 に対応し、Anaconda 経由でのセットアップが推奨されています。既存の Python 環境と分離した仮想環境として運用する構成が公式に推奨されているため、社内標準の Python パッケージ管理ツール(pip / poetry / uv 等)とは別ラインでの管理が前提になります。
類似 OSS との違い DeepFaceLab / FaceFusion / SimSwap
FaceSwap の採用判断で最も重要なのが、類似 OSS との差分整理です。ここでは代表的な 3 つの類似 OSS と比較します。
観点 | FaceSwap | DeepFaceLab | FaceFusion |
|---|---|---|---|
対応 OS | Windows / Linux / macOS(Apple Silicon 含む) | Windows 中心 | Web ベース(ローカル/クラウド両対応版あり) |
学習の有無 | 自前で Extract → Train → Convert(数十時間規模) | 自前で学習(Windows 前提のワークフロー) | 事前学習済みモデルの推論が中心 |
GUI | Tkinter ベースの GUI 同梱 | 独自 GUI | Web GUI |
モデル選択肢 | Villain / Phaze-A / DFaker / DFL-H128 等を切替可能 | dual-autoencoder + GAN 独自ワークフロー | 事前学習モデル中心 |
ライセンス | GPL-3.0 | GPL-3.0 系(公式配布物) | OpenRAIL-AS(Responsible AI License、利用制限あり) |
リポジトリ保守状況 | アクティブに更新中 | 2024-11-13 に archived(開発停止) | アクティブに更新中 |
主な用途 | 学術研究・映像 VFX・学習教材 | プロフェッショナル VFX | one-click 顔差し替え |
出典: Techjockey: Compare DeepFaceLab VS Faceswap / WaveSpeed: Open Source Face Swap Software 2026 / Geekflare: 8 Best Open Source Deepfake Software / iperov/DeepFaceLab(GitHub リポジトリ) / facefusion/facefusion(GitHub リポジトリ)
DeepFaceLab との違い
DeepFaceLab はプロフェッショナル VFX 用途に振った設計で、独自のワークフロー・GUI と dual-autoencoder + GAN のパイプラインが特徴です。品質面での定評があり、映像制作の現場でも採用実績が見られます。
ただし、iperov/DeepFaceLab は 2024 年 11 月 13 日にオーナーによってアーカイブ(archived)されており、現在は公式の新規開発・issue 対応が停止しています。過去の成果物・学習済みモデルは引き続き参照できますが、新規案件で採用する場合は「アップストリームからのバグ修正が期待できない」「新しい GPU / CUDA / OS への追随はフォーク版に依存する」というリスクを織り込む必要があります。
一方、DeepFaceLab は Windows 中心のワークフローに最適化されているため、Linux ワークステーションで運用するチームや Mac 環境での試作を回したいチームにとっては、Windows/Linux/macOS 全対応かつ現在もアクティブに更新されている FaceSwap のほうが構築コストも保守リスクも低くなります。また、FaceSwap は複数モデルをプラグイン形式で切替可能な設計になっており、案件特性ごとに検証を回しやすい構造になっています。
「学習教材としての明確さ」「クロスプラットフォーム性」「保守が継続していること」を重視するなら FaceSwap、「一貫した独自ワークフローで品質を追い込みたい・過去モデル資産を活用したい(保守停止リスクを許容する)」なら DeepFaceLab、という棲み分けが差分の要点です。
出典: Techjockey: Compare DeepFaceLab VS Faceswap / BuildAI: Evaluating Face Swapping Models / iperov/DeepFaceLab(GitHub リポジトリ・archived 状態)
FaceFusion との違い
FaceFusion は、事前学習済みモデルの推論を中心に据えた「one-click 顔差し替え」型のツールで、Roop 系譜の後継的位置づけとされることが多い OSS です。Web GUI から数秒〜数分程度で結果を得られる手軽さが強みとされています。
FaceSwap は逆に、対象人物の顔画像を数百〜数千枚集めて学習を回すことで、その人物専用のモデルを作り込むアプローチです。学習コストは高い一方、特定人物への最適化を狙える点で FaceFusion とは目的が異なります。
なお、FaceFusion は v3.3.0(2025 年半ばの HyperSwap リリース時)で従来の MIT ライセンスから OpenRAIL-AS(Responsible AI License の派生) へ移行しています。OpenRAIL-AS は利用制限条項(違法・有害用途の禁止、差別的用途の禁止 等)を伴う条件付きライセンスであり、GPL-3.0 とは異なる制約が課されます。自社プロダクトへの組み込み・派生物配布を検討する場合は、条項全文を法務チームで確認する必要があります。
「特定人物への高精度な差し替え」を狙うなら FaceSwap、「不特定多数の顔を汎用的に差し替える + OpenRAIL-AS の条項を許容できる」なら FaceFusion、という切り分けになります。
出典: WaveSpeed: Open Source Face Swap Software 2026 / facefusion/facefusion(GitHub リポジトリ)
SimSwap との違い
SimSwap は学術研究プロジェクトから派生した OSS で、単一の GAN ベースフレームワークで顔属性(視線・表情等)を保持する方向性を志向しています。研究論文で参照されることが多く、ベースラインとして使われやすい実装です。
複数モデルを切り替えて案件ごとに最適化を図る FaceSwap に対し、SimSwap は「単一フレームワークで属性保持性を担保する」設計です。実運用よりも研究比較を主目的とする場合に選択肢に入りやすいツールです。
出典: Geekflare: 8 Best Open Source Deepfake Software
採用判断チェックリスト
これまでの整理を踏まえ、FaceSwap を自プロジェクトで採用する際に判断材料とすべき観点を、チェックリスト形式でまとめます。上司や意思決定者への評価レポートを作成する際のたたき台としてご活用ください。
- GPU 環境: 学習に耐える GPU(NVIDIA CUDA / AMD ROCm(Linux) / Apple Silicon Metal)を数十時間占有できるか
- データセット準備: 対象人物 1 人あたり 500〜5000 枚の顔画像を、権利処理を含めて準備できるか
- 学習時間の許容: 1 モデルあたり GPU 12〜48 時間の学習時間を、プロジェクトのスケジュール内で確保できるか
- OS 制約: 開発・運用環境(Windows / Linux / macOS)が対応 OS に含まれているか。Anaconda ベースの環境構築を許容できるか
- モデル選定の柔軟性が必要か: 案件特性に応じて複数モデルを切り替えたいなら FaceSwap、単一ワークフローで統一したい・過去モデル資産を活用したいなら DeepFaceLab(ただし archived 済み・保守停止リスクを許容できる場合に限る)
- 推論のみで済むか: 学習が不要で事前学習済みモデルの推論で足りるなら FaceFusion 等の別 OSS を検討(FaceFusion は OpenRAIL-AS の条項確認が前提)
- 比較対象 OSS の保守状況: 採用候補ごとに
archived状態・最終 push 日を確認したか(本記事執筆時点で DeepFaceLab は archived、FaceSwap と FaceFusion はアクティブ) - ライセンス: GPL-3.0 の派生物公開義務(後述)を自プロダクトのライセンス方針で許容できるか
- 用途の適法性: 想定用途が Manifesto および日本国内の法制度と整合するか
このチェックリストに沿って「◯・△・×」を埋めていくことで、採用可否の議論を具体化できます。
倫理ポリシーと日本国内での利用上の注意
FaceSwap を扱うにあたって避けて通れないのが、倫理と法務のリスクです。プロジェクトへの採用可否を判断する上で最後に必ず確認すべき論点です。
Manifesto(FaceSwap 開発者が明示する禁止用途)
README には独立した「Manifesto」セクションがあり、以下の 4 項目が明示されています(原文抜粋)。
- FaceSwap is not for creating inappropriate content.
- FaceSwap is not for changing faces without consent or with the intent of hiding its use.
- FaceSwap is not for any illicit, unethical, or questionable purposes.
- FaceSwap exists to experiment and discover AI techniques, for social or political commentary, for movies, and for any number of ethical and reasonable uses.
出典: deepfakes/faceswap README(Manifesto セクション)
同セクションでは「非倫理的な用途にこのソフトウェアを使用する者に対しては zero tolerance で対応する」という強い姿勢も表明されています。採用検討時には、想定用途がこの Manifesto に整合することを社内でも確認するプロセスを組み込んでおきましょう。
GPL-3.0 ライセンスの派生物公開義務
FaceSwap のライセンスは GPL-3.0 です。GPL-3.0 は「派生物を配布する場合、ソースコードも同じ GPL-3.0 で公開する義務」を負わせるコピーレフト型のライセンスです。
自社プロダクトに FaceSwap を組み込んで顧客に配布する場合、そのプロダクト全体のソースコード公開が必要になる可能性があります。SaaS として社外に配布せず自社サーバー内で完結させる形態(いわゆる ASP 例外)や、内製ツールとしての利用にとどめる形態では要件が異なります。自社の配布形態に応じてライセンスの適用範囲を法務チームと確認する必要があります。
日本国内での留意点
日本国内で顔差し替えを行う場合、以下のような法的観点を横断的に確認する必要があります。以下は代表的な論点の例示であり、個別事案の可否は必ず法律の専門家に確認してください。
- 肖像権・パブリシティ権: 特定個人の顔を許諾なく差し替える行為は、肖像権侵害・パブリシティ権侵害となる可能性があります
- 名誉毀損・侮辱: 差し替えた顔を用いて、その人物が実際には行っていない言動を表現した場合、名誉毀損に該当する可能性があります
- 不正競争防止法: 著名人の氏名・肖像を無断で商品・サービスに利用する行為は、不正競争防止法上のリスクを伴います
- 改正個人情報保護法: 顔画像は個人識別符号として個人情報に該当し、取得・利用に本人同意等の適法な根拠が必要です
- 著作権: 学習データや素材動画に第三者の著作物が含まれる場合、著作権法上の権利処理が必要になります
日本語での参考ソースとして、ディープフェイクの仕組み・法的リスク・事例を横断的に整理した記事があります(WEEL: ディープフェイクとは?仕組み・事例・見分け方)。実務判断の入口として一読しておくと、社内の法務・コンプライアンス部門との議論の土台になります。
まとめ FaceSwap は「学習コストを許容できる自前運用チーム」向け
本記事では、顔差し替え OSS「FaceSwap」(deepfakes/faceswap)について、3 段階ワークフロー・対応モデル・動作環境・類似 OSS との違い・倫理ポリシーを整理しました。
要点は以下の 3 点に集約できます。
- 設計思想: Extract → Train → Convert の 3 段階を自前で回し、プラグイン形式で複数モデルを切り替えられる「作り込み型」の OSS
- 向く用途: 特定人物への最適化を数十時間の学習コストと引き換えに追求できる映像 VFX・研究・教材用途
- 向かない用途: one-click 型の即時推論、Windows 中心のプロ制作ワークフロー、GPU リソースが確保できない環境
採用検討の次のアクションとしては、公式サイト faceswap.dev からインストーラーを入手してチーム内で環境構築・小規模な試行検証を行い、その結果を採用判断チェックリストに照らして整理する流れが自然です。運用面での疑問は GitHub Issues ではなく公式フォーラム faceswap.dev/forum や Discord サーバーが受付先になっているため、質問先の切り分けもあわせて把握しておくとスムーズです。
関連情報
顔差し替え・生成 AI 領域の PoC や本番運用への組み込みをご検討中の方は、要件整理や技術選定の段階からお問い合わせフォームでご相談いただけます。秋霜堂株式会社では、OSS を活用した AI/ML 開発の設計から実装・運用までを一気通貫でご支援しています。



