O que photo-kit faz?
Todas as decisões de pixel são tomadas por scripts/photo_kit.py. Seu trabalho é executá-lo, ler o relatório e as folhas de revisão, escrever sobreposições para as poucas fotos que precisam delas, executar novamente apenas essas e, em seguida, entregar a pasta para o humano.
Não edite imagens de nenhuma outra forma. Não reescreva o script, a menos que uma verificação falhe duas vezes.
Configuração (uma vez por projeto)
- Python 3.10+ e
pip install -r requirements.txt(Pillow 10.1+, numpy, opencv-python-headless, fontTools, brotli). - Um JSON de configuração do projeto que lista apenas o que difere de
config.default.json(logotipo da marca, arquivo(s) de fonte, cores, URL, amostra de material opcional). Fontes da web geralmente são divididas em subconjuntos: liste cada arquivo embrand.font.
Execução
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
Saída por foto: OUT_DIR/<stem>/00_master.png (sem perdas), JPEGs para cada plataforma, cards com marca opcionais; além de manifest.csv, report.json e _review/before_after_NN.jpg.
Nunca escreva o diretório de saída dentro da pasta de entrada ou de uma árvore de código-fonte do site.
Ciclo de revisão (texto primeiro, imagens por último)
- Leia o resumo do console e
report.json. Aja apenas com base em sinais claros (grande inclinação que foi ignorada, sinalizadoresTOO SMALL, viés de cor evidente, pessoas que parecem esticadas, etc.). - Abra as folhas de revisão uma vez. Para um corte ruim, defina
{"focus": [x, y]}(0–1 do mestre). - Escreva
OUT_DIR/overrides.jsone execute novamente com--onlyos stems afetados. - Cards: escreva
cards.jsonapenas com os títulos aprovados (máx. ~45 caracteres). Use"fit": "whole"para fotos retrato em cards retrato. - Execute
verify(deve imprimirclean), então informe o caminho da pasta, os propósitos da plataforma, os sinalizadores restantes e qualquer foto que não pôde ser corrigida. O humano audita tudo antes do upload.
Classificação de uma biblioteca de fotos
Execute process em uma pasta com uma subpasta por tópico. Classifique pelas pontuações quality em report.json (nitidez × fator de resolução), penalize sinalizadores TOO SMALL e, em seguida, revise uma folha de contato dos melhores candidatos.
Regras que nunca mudam
- Imagens do Google Ads: apenas exportações simples (sem logotipo, texto, moldura ou borda).
- Perfil Empresarial: apenas correção leve; exportação simples por padrão.
- Nunca mude o produto: sem recolorir, sem textura adicionada, sem remoção de defeitos, sem preenchimento por IA. Cortar excessos é aceitável.
- Apenas fotos da própria organização. Sem rostos de clientes, números de casas ou créditos de fotógrafos terceiros.
- Mantenha os originais; as saídas são sempre novos arquivos.
- Os títulos dos cards vêm apenas do texto aprovado.
Ajustes
Ajuste as forças de correction e card_formats na configuração do projeto (não no script). As sobreposições por foto lidam com exceções.