StreamDiffusion の使用例です。
README.md に書いてある手順で StreamDiffusion 環境構築及びインストールを行ってください。
TensorRT を用いることで最大パフォーマンスとなります。使用する際は TensorRT を使用した上でコマンドに--acceleration tensorrt
を付けてください。
xformers
がデフォルトで使用されていますが、これは最速ではありません。
スクリーンキャプチャをリアルタイムで img2img します。Windows でのみ動作します。
スクリプトを実行すると、半透明のウィンドウが出現します。それをキャプチャしたい位置に合わせてエンターキーを押し、キャプチャ範囲を決定してください。
事前に以下のコマンドを実行して依存関係をインストールする必要があります。
pip install -r screen/requirements.txt
python screen/main.py
StreamDiffusion のパフォーマンス測定を行います。
benchmark/multi.py
は並列処理を行いますが、benchmark/single.py
は行いません。
python benchmark/multi.py
python benchmark/multi.py --acceleration tensorrt
TensorRT で最適化された SD-Turbo を用いて txt2img を実行します。
optimal-performance/multi.py
では RTX4090 に最適化されたバッチ処理を行いますが、optimal-performance/single.py
は単一バッヂでの処理を行います。
python optimal-performance/multi.py
python optimal-performance/single.py
img2img を実行します。
img2img/multi.py
は複数の画像が入っているディレクトリを引数として取り、別のディレクトリに img2img の結果を出力します。
img2img/single.py
は画像一枚の img2img を行います。
画像 1 枚の img2img:
python img2img/single.py --input path/to/input.png --output path/to/output.png
画像複数枚の img2img(ディレクトリを引数に取ります):
python img2img/multi.py --input ./input --output-dir ./output
txt2img/multi.py
はプロンプトから複数の画像を生成し、txt2img/single.py
は一枚の画像を生成します。
一枚だけ生成する場合:
python txt2img/single.py --output output.png --prompt "A cat with a hat"
複数の画像を生成する場合:
python txt2img/multi.py --output ./output --prompt "A cat with a hat"
vid2vid を実行します。
事前に以下のコマンドを実行して依存関係をインストールする必要があります。
pip install -r vid2vid/requirements.txt
python vid2vid/main.py --input path/to/input.mp4 --output path/to/output.mp4