Skip to content

triax/creative-workbench

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Creative Workbench - クリエイティブコンテンツ生成ツールキット

概要

様々な媒体向けのクリエイティブコンテンツを生成するための統合ツールキットです。画像処理からテキスト生成まで、幅広い制作ニーズに対応します。

現在提供中の機能

画像処理機能

  • 背景除去: rembgライブラリを使用して高精度な背景除去を実現
  • QRコード生成: カスタマイズ可能なQRコード生成(アイコン・カラー対応)
  • 画像2値化: 画像を純粋な白黒に変換
  • シルエット化: 透過画像の不透明部分を黒色に変換

今後追加予定の機能

  • テキスト生成・編集ツール
  • ソーシャルメディア用コンテンツ生成
  • 動画サムネイル作成
  • バナー・ポスターデザイン自動化

必要要件

  • Python 3.9(必須)
  • uv(パッケージマネージャー)

インストール

1. uvのインストール

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# または pip経由
pip install uv

2. プロジェクトのセットアップ

# リポジトリのクローン
git clone [repository-url]
cd creative-workbench

# Python 3.9で仮想環境を作成
uv venv .venv --python 3.9

# 仮想環境をアクティベート
source .venv/bin/activate  # macOS/Linux
# または
.venv\Scripts\activate  # Windows

# 依存パッケージをインストール
uv pip install -r requirements.txt

使用方法

1. 背景除去機能

単一ファイルの処理

# uvを使って実行(推奨)
uv run python scripts/remove_background.py input/photo.jpg

# 出力ファイル名を指定
uv run python scripts/remove_background.py input/photo.jpg -o output/result.png

複数ファイルの一括処理

# inputディレクトリの全JPGファイルを処理
uv run python scripts/remove_background.py "input/*.jpg" --batch

# 特定の出力ディレクトリに保存
uv run python scripts/remove_background.py "input/*" --batch -d processed

2. QRコード生成機能

基本的なQRコード生成

# シンプルなQRコード
uv run python scripts/generate_qrcode.py "https://example.com"

# 出力ファイル名を指定
uv run python scripts/generate_qrcode.py "https://example.com" -o custom_qr.png

アイコン付きQRコード

# ロゴを中央に配置
uv run python scripts/generate_qrcode.py "https://example.com" --icon logo.png

# サイズとアイコン比率をカスタマイズ
uv run python scripts/generate_qrcode.py "https://example.com" \
  --icon logo.png --size 512 --icon-size 0.25

カスタムカラー

# 色名で指定
uv run python scripts/generate_qrcode.py "https://example.com" \
  --fill-color "navy" --back-color "lightblue"

# HEXコードで指定
uv run python scripts/generate_qrcode.py "https://example.com" \
  --fill-color "#FF5722" --back-color "#FFF3E0"

3. 画像2値化機能

白黒変換

# 単一ファイルの2値化
uv run python scripts/binarize_image.py input.png

# しきい値を指定(デフォルト: 128)
uv run python scripts/binarize_image.py input.png --threshold 100

# 複数ファイルの一括処理
uv run python scripts/binarize_image.py "input/*.png"

4. シルエット化機能

透過画像のシルエット化

# 単一ファイルのシルエット化
uv run python scripts/make_silhouette.py input/logo.png

# 複数ロゴの一括処理
uv run python scripts/make_silhouette.py "input/logos/*.png"

# 出力ディレクトリ指定
uv run python scripts/make_silhouette.py "input/*.png" -d output/silhouettes/

5. バッチ処理

YAMLレシピによるQRコード一括生成

# recipe/qrcode.yaml
jobs:
  - title: ロゴ付きQRコード
    input:
      icon: input/logos/logo_silhouette.png
      url: https://example.com
      fill-color: "#000000"
    output: output/qr_example.png

ヘルプの表示

uv run python scripts/remove_background.py --help
uv run python scripts/generate_qrcode.py --help
uv run python scripts/binarize_image.py --help
uv run python scripts/make_silhouette.py --help

ファイル構成

creative-workbench/
├── .venv/                      # 仮想環境ディレクトリ
├── input/                      # 処理対象の画像ファイル
├── output/                     # 処理後の画像ファイル(背景除去、QRコード)
├── scripts/                    # Pythonスクリプト
│   ├── remove_background.py    # 汎用背景除去スクリプト
│   ├── generate_qrcode.py      # QRコード生成スクリプト
│   ├── binarize_image.py       # 画像2値化スクリプト
│   └── make_silhouette.py      # シルエット化スクリプト
├── recipe/                     # バッチ処理レシピ
│   └── qrcode.yaml            # QRコードバッチ生成設定
├── knowledge/                  # プロジェクトドキュメント
│   ├── qrcode-generation.md   # QRコード生成機能の詳細
│   └── image-processing.md    # 画像処理スクリプトの詳細
├── requirements.txt            # 依存パッケージリスト
├── CLAUDE.md                   # 開発環境の詳細情報
└── README.md                   # このファイル

トラブルシューティング

Python バージョンエラー

numbaの互換性問題により、Python 3.10以降では動作しません。必ずPython 3.9を使用してください。

仮想環境のアクティベートを忘れた場合

source .venv/bin/activate

を実行してから作業を開始してください。

ライセンス

[ライセンス情報を追加]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages