はじめに
SVFR(Stable Video Face Restoration)は、基本顔復元(Basic Face Restoration: BFR)、色付け、修復、およびそれらの組み合わせタスクをサポートする、ビデオ顔復元のための統一フレームワークである。SVFRは、ビデオ顔復元における時間的一貫性、モーションアーティファクト、限られた高品質ビデオデータという課題に対処するために設計されている。このプロジェクトはZhiyao Wangらによって開発され、GitHubでオープンソース化されており、コードと事前学習済みモデルは学術的・非商業的研究に利用可能である。
機能一覧
- ベーシック・フェイス・レストレーション(BFR)低画質ビデオの顔のディテールを修正。
- カラーリング白黒映像に色を加える。
- フィックスビデオの欠けている部分を修正する。
- タスクのポートフォリオBFR、カラーリング、リストアの組み合わせは自由です。
- 時間の一貫性ビデオ復元の時間的一貫性を生成と動き先行で強化。
- 事前学習モデルユーザーがすぐに使い始められるように、様々な訓練済みモデルを提供します。
ヘルプの使用
設置プロセス
- Conda環境の作成::
conda create -n svfr python=3.9 -y
conda svfr をアクティブにする
- PyTorchのインストール例えば、お使いのハードウェアに適したCUDAバージョンを選択してください:
pip install torch==2.2.2 torchvision==0.17.2 torchaudio==2.2.2
- 依存関係のインストール::
pip install -r requirements.txt
- ダウンロード Checkpoints手動でダウンロードし、指定されたディレクトリに置く。
使用プロセス
- シングルタスク推論::
python3 infer.py --config config/infer.yaml --task_ids 0 --input_path ./assert/lq/lq1.mp4 --output_dir ./results/
タスクID: 0
ベーシック・フェイス・レストレーション(BFR)を示す。task_id: 1
カラーリングを示すtask_id: 2
修復を示す
- マルチタスク組み合わせ推論::
python3 infer.py --config config/infer.yaml ---task_ids 0,1,2 --input_path ./assert/lq/lq3.mp4 --output_dir ./results/
タスクID: 0,1
はBFRとカラーリングを示すタスクID: 0,1,2
BFR、カラーリング、修復を示す。
- 修理用マスクで推論::
python3 infer.py --config config/infer.yaml ---task_ids 0,1,2 --input_path ./assert/lq/lq3.mp4 --output_dir ./results/ ---mask_path ./assert/mask/lq3.png
詳細な機能操作の流れ
- ベーシック・フェイス・レストレーション(BFR)::
- 入力ビデオパスと出力ディレクトリを選択します。
- タスクIDを0に設定する。
- 修復されたビデオを生成するために推論コマンドを実行する。
- カラーリング::
- 入力ビデオパスと出力ディレクトリを選択します。
- タスクIDを1に設定する。
- 推論コマンドを実行して、カラービデオを生成する。
- フィックス::
- 入力ビデオパスと出力ディレクトリを選択します。
- タスクIDを2に設定する。
- 修復されたビデオを生成するために推論コマンドを実行する。
- タスクのポートフォリオ::
- 入力ビデオパスと出力ディレクトリを選択します。
- タスクIDには、組み合わせたタスクのIDを設定する(例えば、BFRとカラーリングの場合は0,1)。
- 推論コマンドを実行し、複合タスク処理後の映像を生成する。
- 修理用マスクで推論::
- 入力ビデオパス、出力ディレクトリ、マスクファイルパスを選択します。
- タスクIDを、例えばBFR、カラーリング、修理の場合は0,1,2のように、組み合わせたタスクのIDに設定する。
- 推論コマンドを実行し、修復マスクが処理されたビデオを生成する。