Repolode
fudan-generative-vision

fudan-generative-vision/hallo

音声に合わせてポートレート写真をしゃべらせ、MP4動画を生成するオープンソースの研究用コード。

スター
8,674
フォーク
1,118
未解決の Issue
114
最終コミット
2 年前

これは何?

Halloは、1枚のポートレート画像とWAV音声ファイルから、しゃべる人物の動画を生成します。音声に合わせて表情、頭の向き、唇の動きを制御するため、静止画が録音音声に合わせて話しているように見せられます。推論はコマンドラインからscripts/inference.pyを実行して行い、出力はMP4ファイルとして保存されます。

このプロジェクトは拡散モデルを基盤としており、AnimateDiffのモーションモジュールを組み合わせたStable Diffusion v1.5に加え、顔の解析にInsightFaceとMediaPipe、音声特徴量の抽出にWav2Vecを使用します。ポーズ、顔、唇の動きの重みと顔の拡大率を調整することで、生成結果をチューニングできます。2段階の学習スクリプトとデータの前処理ツールも含まれています。

ドキュメントに記載された動作環境は、CUDA 12.1とA100 GPUを搭載したUbuntuです。入力画像は正方形で、顔がフレームの50%~70%を占め、正面を向いている必要があります。学習データは英語のみのため、入力音声には明瞭な英語の音声をWAV形式で用意してください。

主な機能

  • 011枚の画像と1つのWAV音声ファイルから、ポートレートが話す動画を生成します。
  • 02コマンドラインの重み指定で、ポーズ、顔、唇の動きの強さを調整できます。
  • 032段階の学習スクリプトとデータ前処理パイプラインを備えています。
  • 04AnimateDiffのモーションモジュールを組み合わせたStable Diffusion v1.5を基盤としています。
  • 05学習済みモデルをHugging Faceから入手できます。

ユースケース

  • 音声駆動の顔アニメーションやトーキングヘッド生成を研究する研究者。
  • 録音した英語のナレーションに合わせて、ポートレート写真を話させたいクリエイター。
  • 独自の動画データでポートレートアニメーションモデルを学習させたい開発者。

クイックスタート

  1. 1

    conda環境を作成して有効化する

    conda create -n hallo python=3.10 && conda activate hallo
  2. 2

    pipでPythonパッケージをインストールする

    pip install -r requirements.txt && pip install .
  3. 3

    ffmpegをインストールする(必須。Ubuntuの例)

    apt-get install ffmpeg
  4. 4

    学習済みモデルをpretrained_modelsディレクトリにダウンロードし、サンプル画像と音声で推論を実行する

    python scripts/inference.py --source_image examples/reference_images/1.jpg --driving_audio examples/driving_audios/1.wav

使う前に知っておきたいこと

  • CUDA GPUが必要です。READMEでのテスト環境はUbuntu 20.04/22.04、CUDA 12.1、A100のみです。
  • 推論を実行するには、数GBの学習済みモデルをダウンロードする必要があります。
  • 学習データは英語のみのため、入力音声は英語のWAV形式である必要があります。
  • 入力画像は正方形で正面を向いたポートレートとし、顔がフレームの50~70%を占める必要があります。

収録されている特集

トピック

#face-animation#talking-head#diffusion-model#audio-driven#video-generation#stable-diffusion#image-animation#video-animation

よくある質問

hallo とは?
音声に合わせてポートレート写真をしゃべらせ、MP4動画を生成するオープンソースの研究用コード。 Halloは、1枚のポートレート画像とWAV音声ファイルから、しゃべる人物の動画を生成します。音声に合わせて表情、頭の向き、唇の動きを制御するため、静止画が録音音声に合わせて話しているように見せられます。推論はコマンドラインからscripts/inference.pyを実行して行い、出力はMP4ファイルとして保存されます。
hallo は無料で使えますか?ライセンスは?
hallo は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
hallo は今もメンテナンスされていますか?
半年以上コミットなし。hallo の最終コミットは 2024年9月14日 です。
hallo は何に使えますか?
音声駆動の顔アニメーションやトーキングヘッド生成を研究する研究者。 録音した英語のナレーションに合わせて、ポートレート写真を話させたいクリエイター。 独自の動画データでポートレートアニメーションモデルを学習させたい開発者。
hallo のインストール方法は?
conda環境を作成して有効化する: conda create -n hallo python=3.10 && conda activate hallo pipでPythonパッケージをインストールする: pip install -r requirements.txt && pip install . ffmpegをインストールする(必須。Ubuntuの例): apt-get install ffmpeg 学習済みモデルをpretrained_modelsディレクトリにダウンロードし、サンプル画像と音声で推論を実行する: python scripts/inference.py --source_image examples/reference_images/1.jpg --driving_audio examples/driving_audios/1.wav
hallo はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/fudan-generative-vision/hallo

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト