A Python application for generating backgrounds based on prompts and combining them with product images.
Project description
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の条件付けスケールを指定します。生成画像の制御に影響を与えます。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file proddiffuser-0.1.1.1.tar.gz.
File metadata
- Download URL: proddiffuser-0.1.1.1.tar.gz
- Upload date:
- Size: 3.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
65bc4f8b04ae570835daf6131b67ac02ed563b24f0c8abe169c76f1eb2743eb8
|
|
| MD5 |
7116d6367dc2161199457941ad69e107
|
|
| BLAKE2b-256 |
e3118635b73945bbdf318898c162bca32b156f5b03a1048d006f2138579575c8
|
File details
Details for the file ProdDiffuser-0.1.1.1-py3-none-any.whl.
File metadata
- Download URL: ProdDiffuser-0.1.1.1-py3-none-any.whl
- Upload date:
- Size: 2.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c4fbfa5990dc8458731b1d5b31c8be608bf14e3a9939a2efea8de1c716f38a73
|
|
| MD5 |
50bd6ff1fb49f38a020a4619d9449111
|
|
| BLAKE2b-256 |
6e951aa8da3d458914368c5fa44725ba0728f217870ee39a028e447a1e2d2c04
|