photo-kit は何をしますか?
すべてのピクセル判断は scripts/photo_kit.py が行います。あなたの仕事は、それを実行し、レポートとレビューシートを読み、修正が必要な少数の写真に対してオーバーライドを記述し、それらのみを再実行し、その後フォルダを人間に引き渡すことです。
他の方法で画像を編集しないでください。チェックが2回失敗しない限り、スクリプトを書き換えないでください。
セットアップ(プロジェクトごとに1回)
- Python 3.10+ および
pip install -r requirements.txt(Pillow 10.1+、numpy、opencv-python-headless、fontTools、brotli)。 - プロジェクト設定JSON。
config.default.jsonと異なる点のみを記述します(ブランドロゴ、フォントファイル、カラー、URL、オプションのマテリアルスウォッチ)。 ウェブフォントはサブセットに分割されていることが多いため、brand.fontにはすべてのファイルをリストします。
実行
python <skill-folder>/scripts/photo_kit.py process IN_DIR OUT_DIR --config <project-config.json> [--overrides OUT_DIR/overrides.json] [--only stem1,stem2]
python <skill-folder>/scripts/photo_kit.py cards OUT_DIR cards.json --config <project-config.json>
python <skill-folder>/scripts/photo_kit.py verify OUT_DIR
写真ごとの出力: OUT_DIR/<stem>/00_master.png(ロスレス)、プラットフォーム別JPEG、オプションのブランドカード。さらに manifest.csv、report.json、_review/before_after_NN.jpg。
出力ディレクトリを入力フォルダ内やウェブサイトのソースツリー内に書き込まないでください。
レビューループ(テキスト→画像の順)
- コンソールサマリーと
report.jsonを読みます。明確なシグナル(スキップされた大きな傾き、TOO SMALLフラグ、明らかな色被り、引き伸ばされて見える人物など)に対してのみアクションを起こします。 - レビューシートを一度開きます。不適切なクロップには
{"focus": [x, y]}(マスターの0〜1)を設定します。 OUT_DIR/overrides.jsonを書き込み、影響を受けるステムのみを--onlyで指定して再実行します。- カード: 承認されたヘッドラインのみ(最大約45文字)で
cards.jsonを書き込みます。縦長の写真を縦長カードに配置する場合は"fit": "whole"を使用します。 verifyを実行し(cleanと表示される必要があります)、フォルダパス、プラットフォームの目的、残っているフラグ、修正できなかった写真を報告します。人間がアップロード前にすべてを監査します。
写真ライブラリのランク付け
process を、トピックごとに1つのサブフォルダがあるフォルダで実行します。report.json の quality スコア(sharpness × 解像度係数)でランク付けし、TOO SMALL フラグを減点してから、最有力候補のコンタクトシートをレビューします。
変更しないルール
- Google Ads 画像: プレーンな書き出しのみ(ロゴ、テキスト、フレーム、ボーダーなし)。
- Business Profile: ライト補正のみ。デフォルトでプレーンな書き出し。
- プロダクトを変更しない: 色の変更、テクスチャの追加、欠陥の除去、AI による補完は禁止。雑然とした部分のクロッピングは問題ありません。
- 組織自身の写真のみ。クライアントの顔、家屋番号、サードパーティのフォトグラファーのクレジットは禁止。
- オリジナルを保持。出力は常に新しいファイルです。
- カードのヘッドラインは承認されたコピーのみを使用します。
チューニング
correction の強度と card_formats は、プロジェクト設定ファイルで調整します(スクリプトは変更しません)。写真ごとのオーバーライドで例外を処理します。