MENU

【失敗しない】PCでDeepFake!ReActor のインストール方法&使い方(スクリーンショットで丁寧解説)

開発プロジェクトが中止された Roop ですが、ソースをコピーして改変を加えた、いわゆるフォーク版と呼ばれる派生アプリがいくつか登場しています。その一つが今回紹介する ReActor です。

元祖 Roop nsfw-roop は見た目が同じでしたが、 ReActor は薄い緑の配色になっており、印象が明るくなりました。

Roop からの強化点は次の通りです。

  • Face Enhancer(顔の高画質化)
  • NSFW (Not Safe For Work)フィルター機能のON/OFF
  • 静止画の顔入れ替え

本記事では、ReActorのインストール方法と簡単な使い方を紹介しています。試してみたい方は是非ご一読ください。

元祖Roop【失敗しない】PCでDeepFake!Roop のインストール方法&使い方(スクリーンショットで丁寧解説)
フォーク版【失敗しない】PCでDeepFake!nsfw-roop のインストール方法&使い方(スクリーンショットで丁寧解説)

DeepFakeアプリは他にもいろいろありますので、興味のある方は「【生成AI入門】ディープフェイクの作り方と有名アプリ一覧(パソコン編)」の記事も併せてご覧ください。

目次

ReActorの公式サイト

ReActor の概要とソースコードは、Git上にある ReActor公式ページに掲載されています。本記事では、ここに記載されいている内容をできるだけわかりやすく解説したものになります。

https://github.com/Gourieff/ReActor-UI?tab=readme-ov-file

インストールの前提条件

ReActor のインストール方法として、元祖 Roop のインストール方法へのリンク(下記)が張られています。
基本的にReActor も Ropeと同じ手順でインストール可能ですが、Git CloneのURLが元祖Roopのものになっているので、そのまま実行すると元祖Roopがインストールされてしまうのでご注意ください。

https://github.com/s0md3v/roop/wiki/1.-Installation

ReActorのページ

Python/CUDAのバージョン

動作に必要な環境は次の通りです。(Roopや nsfw-roop と同じ)

必要な環境・ライブラリバージョンなど備考
Python 環境Python 3.10
Git 環境その時の最新版
FFMPEGその時の最新版動画作成に使用
CUDA Toolkit11.8CPUで動かすならインストール不要
cuDNNv8.9.7CPUで動かすならインストール不要

インストール手順の概要

次の手順でインストールを行います。Step1はRoopや nsfw-roopと全く同じです。既にインストール済みの場合はStep2から実行してください。

尚、ReActor初回起動時に必要なモデルファイルが自動でダウンロードされるので、個別にモデルファイルをダウンロードする必要はありません。

Step1
Python動作環境の構築
①Python 3.10の環境準備
②Gitの環境準備
③CUDA Toolkit 11.8のインストール
④cuDNN のインストール
⑤Microsoft Visual C++ 2015 再頒布可能パッケージのインストール
⑥Microsoft Visual Studio 2022 ビルド ツールのインストール
⑦FFMPEGのインストール
Step2
ReActorのインストール
GitからReActorをインストール
Step3
GFPGANv1.4.pthのインストール
GFPGANv1.4.pth のダウンロードと所定フォルダへコピー
※但し、Face Enhancer 機能を使う場合のみ必要

インストール手順

Step1.Python動作環境の構築

【最初の一歩】生成AI向けPython環境構築手順(スクリーンショットで解説)」の記載内容(①~⑦)を実行してください。

Step2.ReActorのインストール

コマンドプロンプトを開き、インストールしたい場所にフォルダを移動します。
続けて、以下のコマンドを入力、実行してください。

git clone https://github.com/Gourieff/ReActor-UI.git
cd reactor-ui

コマンドプロンプトの実行結果

仮想環境でのインストールが推奨されているので、.reactor という名前で仮想環境を作成し、そこに必要なライブラリをインストールします。そのために、次のコマンドを実行してください。

python.exe -m venv .reactor
.reactor\Scripts\activate
.reactor\Scripts\pip.exe install -r .\requirements.txt

インストールした場所に ReActor-UIというフォルダが作成され、様々なモジュールやモデルファイルがダウンロードされます。完了までに十数分くらい掛かると思います。

処理が終わったら次のような画面になります。

コマンドプロンプトの実行結果

ここで次のコマンドを実行します。これは ReActor がサポートしていないドライバのバージョンをアンインストールするコマンドです。

pip uninstall onnxruntime onnxruntime-gpu

Y/n ? を聞かれるので、そのままエンターキーを押してください。これでドライバが削除されます。

コマンドプロンプトの実行結果

次に、ReActor が対応しているバージョンのドライバをインストールします。次のコマンドを実行してください。

pip install onnxruntime-gpu==1.15.1

Step3.GFPGANv1.4.pth のインストール

後述するFace Enhancer スイッチをONにする時のみ必要な作業です。ONにすると処理時間が6倍掛かりますので、使う場合はその点をご留意ください。

Hugging Face の下記リンクから、GFPGANv1.4.pth ファイルをダウンロードします。

https://huggingface.co/gmk123/GFPGAN/tree/main

ダウンロードしたGFPGANv1.4.pth ファイルを、下記の通り models フォルダにコピーします。

以上で ReActorのインストールは完了です。

ReActorの起動方法

コマンドプロンプトを開き、ReActorをインストールしたフォルダの直下に移動します。

フォルダの階層図

次のコマンドを実行します。

cd reactor-ui
.reactor\Scripts\activate
python run.py --execution-provider cuda

起動すると次の画面が表示されます。

ReActorの画面

ReActorの使い方

画面の操作説明

使い方は非常にシンプルで、顔写真と置き換えたい動画を選択し、Startボタンをクリックし、出力先フォルダを指定するだけです。
注意点としては、Select target をクリックして表示される一覧には、最初は拡張子のフィルターが適用されていて画像ファイルしか表示されません。動画を選択する場合は、フィルターを動画に切り替えて下さい。

出力先フォルダを選択すると、静止画の場合は output.png、動画の場合はoutput.mp4が初期値になっています。必要に応じて任意の名前に書き換えてください。

実行中は画面に進捗状況がバーで表示されますが、表示内容はRoopと全く同じです。処理が完了すると「Processing to video succeed!」が表示され、顔が置き換わった動画(または静止画)が出力フォルダに出力されます。

Face Enhancerについて

Face EnhancerをONにすると、FACE-SWAPPER の処理が走った後で、FACE-ENHANCER の処理が走ります。
私のPCでは、FACE-SWAPPERは25.65 frame/s で処理されたのに対し、FACE-ENHANCERは 4.36 fmame/s とかなり時間が掛かりました。つまり、Face Enhancer を ON にすると、6倍の時間が掛かることになります。

とはいうものの、ONとOFF では顔の画像品質が全くことなります。全体的に顔が小さい場合はそれほど問題にならないかもしれませんが、アップになると歴然です。

静止画:FACE-ENHANCER ⇒ OFF

静止画:FACE-ENHANCER ⇒ ON

動画:FACE-ENHANCER ⇒ OFF

動画:FACE-ENHANCER ⇒ ON

起動時のオプション

nsfw-Roopにも、Roopと同様に run.py 実行時に指定できる引数(オプション)が多数存在しています。これを使うことで、複数の動画をバッチ処理で変換することも可能です。

プション説明
-h, --helpこのヘルプメッセージを表示して終了する
-s SOURCE_PATH
ソース画像を選択するパス
-t TARGET_PATHターゲット画像または動画を選択するパス
-o OUTPUT_PATH出力ファイルまたはディレクトリを選択するパス
--frame-processor FRAME_PROCESSORフレームプロセッサ(選択肢:face_swapper、face_enhancer、...)
--keep-fpsターゲットのFPSを保持する
--keep-frames一時フレームを保持する
--skip-audioターゲットのオーディオをスキップする
--many-facesすべての顔を処理する
--video-encoder {libx264,libx265,libvpx-vp9}出力ビデオに使用されるエンコーダー
--video-quality VIDEO_QUALITY出力ビデオの品質
--max-memory MAX_MEMORY最大RAM量(GB単位)
--execution-provider {cpu} [{cpu} ...]利用可能な実行プロバイダ(選択肢:cpu、...)
--execution-threads EXECUTION_THREADS実行スレッド数
-v, --versionプログラムのバージョン番号を表示して終了する

まとめ

今回は ReActor についてインストール方法と使い方を紹介しました。

Roop の開発プロジェクトが昨年10月に中止されましたが、ReActoer は Roopのフォーク版として登場しました。

roop のシンプルな画面と操作はそのままに、次の3点が強化されています。

  • Face Enhancer(顔の高画質化)
  • NSFW (Not Safe For Work)フィルター機能のON/OFF
  • 静止画の顔入れ替え

ReActor の今後のバージョンアップが楽しみです。

この記事が気に入ったら
いいねしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次