Vid2DensePoseのインストール

Vid2DensePoseのインストール AI

「MagicAnimateでオリジナル動画を使いたい」
「Motion Sequenceを作成したい」

このような場合には、Vid2DensePoseがオススメです。
この記事では、Vid2DensePoseについて解説しています。

本記事の内容

  • Vid2DensePoseとは?
  • Vid2DensePoseのシステム要件
  • Vid2DensePoseのインストール
  • Vid2DensePoseの動作確認

それでは、上記に沿って解説していきます。

Vid2DensePoseとは?

Vid2DensePoseは、DensePoseモデルをビデオに適用し、
各フレームの詳細な「Part Index」視覚化を生成するための強力なツールです。

この説明だけ見ると意味不明かもしれません。
そのような場合は、次の動画をご覧ください。

Vid2DensePoseを用いると、左の動画を右の動画に変換できます。
では、こんなことができて一体何になるのでしょうか?

それは、MagicAnimateで役に立つのです。
MagicAnimate上では、「Motion Sequence」と呼んでいます。

Vid2DensePoseで作成した動画により、次のような動画を作成できるのです。

Vid2DensePoseのシステム要件

Vid2DensePoseのシステム要件は、以下がポイントになります。

  • Python 3.8 以降
  • PyTorch
  • Detectron2
  • FFmpeg

この中ではDetectron2が、厄介な存在になります。
Detectron2のサポートOSは、以下となっています。

  • Linux
  • macOS

Windowsはサポート対象外です。
そのため、Vid2DensePoseもWindowsにインストールできません。

ただし、WSLにインストールは可能です。

ここでは、結果論だけで説明します。
私の環境では、Ubuntu 20.04はアウトでした。

Ubuntu 22.04の環境ならVid2DensePoseを導入できました。
したがって、WSLを利用する場合はUbuntu 22.04をオススメしておきます。

PyTorchは、CUDA 11.8用をインストールしています。
Ubuntu上でも、そのバージョンに合わせたCUDAをインストール済みです。

また、FFmpegもインストールする必要があります。

FFmpegは、事前にインストールしておきましょう。

Vid2DensePoseのインストール

Vid2DensePoseのインストールする際は、Python仮想環境の利用をオススメします。

まずは、プロジェクトをダウンロードします。

git clone https://github.com/Flode-Labs/vid2densepose.git
cd vid2densepose

ダウンロードできたら、リポジトリルートに移動しておきます。
ここで次のファイルを確認できます。

requirements.txt

torch==2.1.0
torchvision==0.16.0 
opencv-python
gradio
git+https://github.com/facebookresearch/detectron2@main#subdirectory=projects/DensePose

やることは、PyTorch関連のコメントアウトです。

#torch==2.1.0 
#torchvision==0.16.0  
opencv-python
gradio
git+https://github.com/facebookresearch/detectron2@main#subdirectory=projects/DensePose

このファイルを実行する前に、PyTorchをインストールします。
ここでは、次のコマンドでPyTorchをインストールしています。

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

PyTorchのインストールが完了したら、次のコマンドの実行です。

pip install -r requirements.txt

インストールが完了したら、ラッキー!!
失敗した場合は、Detectron2のインストール失敗を疑ってみるべきです。

Installation — detectron2 0.6 documentation

Ubuntuの場合は、初めからコンパイラが導入済みのはずです。
だから、以下の要件を満たさないということはないとは思います。

gcc & g++ ≥ 5.4

それ以外だと、CUDAのバージョン関係でエラーになりそうですね。

最後にDetectron2のリポジトリをダウンロードしておきます。

git clone https://github.com/facebookresearch/detectron2.git

この時点での「vid2densepose」ディレクトリは、次のような構成です。

$ tree -L 1
.
├── LICENSE
├── README.md
├── app.py
├── detectron2
├── flagged
├── main.py
├── requirements.txt
├── sample_videos
└── venv

Vid2DensePoseの動作確認

Vid2DensePoseを起動させるコマンドは、以下となります。

python app.py

起動に成功すると、コンソールに次のように表示されます。

Running on local URL:  http://127.0.0.1:7860

To create a public link, set `share=True` in `launch()`.

ブラウザで「http://127.0.0.1:7860」にアクセスすると、次のような画面を確認できます。

あとは、動画をアップロードして「Submit」ボタンをクリックするだけです。
GPUのパワーによりますが、そこまで待つという感じではありません。

動画の編集系にしては、比較的処理は速いと思います。

タイトルとURLをコピーしました