ProdDiffuser
ProdDiffuserは、製品画像と背景画像を組み合わせて、プロンプトに基づいた背景生成を行うPythonアプリケーションです。
-
背景画像が用意されている場合:
assetsディレクトリに背景画像を配置すると、製品画像と指定された背景画像が合成されます。
-
背景画像が用意されていない場合:
- 背景画像がない場合、Hugging Faceのyahoo-inc/photo-background-generationモデルを使用して、プロンプトに基づいた背景を生成し、製品画像と合成します。
機能
- 製品画像と背景画像の合成
- プロンプトに基づく背景生成
- 画像のリサイズとパディング
必要条件
- ローカルPython環境
- Docker
- NVIDIA GPU(オプション、GPUを使用する場合)
セットアップ
ローカルで実行する場合
GPUを使う場合は以下を参考にCUDAをインストールしてください。 https://qiita.com/YokoPhys-h/items/274aecc84a7c42b1efb2
pip install -r requirements.txt
python src/main.py
Dockerを使用する場合
GPUを使う場合 以下を参考にしてください。 https://qiita.com/YokoPhys-h/items/274aecc84a7c42b1efb2
-
Dockerイメージのビルド
プロジェクトのルートディレクトリで以下のコマンドを実行してDockerイメージをビルドします。
docker build -t prod_diffuser .
-
Dockerコンテナの実行
GPUを使用する場合は以下のコマンドを実行します。
docker run --rm -it --gpus all prod_diffuser
GPUがなくても動作します。GPUがない場合でも、以下のコマンドで実行可能です。
docker run --rm -it prod_diffuser
ファイルについて
assetsディレクトリに製品画像と背景画像を配置します。src/main.py内のパラメータを必要に応じて変更します。- 上記の手順でDockerコンテナを実行し、生成された画像が
outputディレクトリに保存されます。
パラメータの説明
product_image_path: 製品画像のパスを指定します。background_image_path: 背景画像のパスを指定します。背景画像がない場合は、プロンプトに基づいて生成されます。output_path: 生成された画像の保存先パスを指定します。prompt: 背景生成に使用するプロンプトを指定します。背景画像がない場合に使用されます。target_size: 出力画像のサイズを指定します(幅, 高さ)。scale: 製品画像のスケールを指定します。1.0で元のサイズ、0.5で半分のサイズになります。position: 製品画像を配置する位置を指定します。Noneの場合は中央に配置されます。seed: 画像生成のランダムシードを指定します。再現性のある結果を得るために使用します。num_inference_steps: 画像生成の推論ステップ数を指定します。ステップ数が多いほど詳細な画像が生成されます。controlnet_conditioning_scale: ControlNetの条件付けスケールを指定します。生成画像の制御に影響を与えます。
Metadata
Release files for proddiffuser 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| proddiffuser-0.2.0.tar.gz | 3.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| proddiffuser-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.9 kB
Release files / proddiffuser-0.2.0.tar.gz
| Download URL | proddiffuser-0.2.0.tar.gz |
|---|---|
| Size | 3.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e7d4aac0cdf744086560bf5064816eeec5ca3f8ab5ce915468d26eef394c4913
|
|
BLAKE2b-256 checksum How to use checksums |
58090cb90bbb0a00d625d6bfa1e88a31f5cb116f82072c2933ddcb766ebcdff0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.11
|
Release files / proddiffuser-0.2.0-py3-none-any.whl
| Download URL | proddiffuser-0.2.0-py3-none-any.whl |
|---|---|
| Size | 2.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
73a3897ce15115b62244df11ad833ff7bb6be16c00f547657e3b88edd2129bdb
|
|
BLAKE2b-256 checksum How to use checksums |
4ecbfed59cef2ad4422be170b3e57894eac880b051aebaa5916b97fbaf28f601
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.11
|