Skip to main content

A Python application for generating backgrounds based on prompts and combining them with product images.

Project description

ProdDiffuser

ProdDiffuserは、製品画像と背景画像を組み合わせて、プロンプトに基づいた背景生成を行うPythonアプリケーションです。

  • 背景画像が用意されている場合:

    • assetsディレクトリに背景画像を配置すると、製品画像と指定された背景画像が合成されます。
  • 背景画像が用意されていない場合:

機能

  • 製品画像と背景画像の合成
  • プロンプトに基づく背景生成
  • 画像のリサイズとパディング

必要条件

  • ローカル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

  1. Dockerイメージのビルド

    プロジェクトのルートディレクトリで以下のコマンドを実行してDockerイメージをビルドします。

    docker build -t prod_diffuser .
    
  2. Dockerコンテナの実行

    GPUを使用する場合は以下のコマンドを実行します。

    docker run --rm -it --gpus all prod_diffuser
    

    GPUがなくても動作します。GPUがない場合でも、以下のコマンドで実行可能です。

    docker run --rm -it prod_diffuser
    

ファイルについて

  1. assetsディレクトリに製品画像と背景画像を配置します。
  2. src/main.py内のパラメータを必要に応じて変更します。
  3. 上記の手順で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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

proddiffuser-0.2.0.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

proddiffuser-0.2.0-py3-none-any.whl (2.7 kB view details)

Uploaded Python 3

File details

Details for the file proddiffuser-0.2.0.tar.gz.

File metadata

  • Download URL: proddiffuser-0.2.0.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

Hashes for proddiffuser-0.2.0.tar.gz
Algorithm Hash digest
SHA256 e7d4aac0cdf744086560bf5064816eeec5ca3f8ab5ce915468d26eef394c4913
MD5 23017e0f806f3dfce1575ae5e850663e
BLAKE2b-256 58090cb90bbb0a00d625d6bfa1e88a31f5cb116f82072c2933ddcb766ebcdff0

See more details on using hashes here.

File details

Details for the file proddiffuser-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: proddiffuser-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 2.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.11

File hashes

Hashes for proddiffuser-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 73a3897ce15115b62244df11ad833ff7bb6be16c00f547657e3b88edd2129bdb
MD5 23f4e632b0f66f196c2bd72388fcbea2
BLAKE2b-256 4ecbfed59cef2ad4422be170b3e57894eac880b051aebaa5916b97fbaf28f601

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page