CommunityImagemgithub.com

Foto para low poly

Transforma uma foto de animal, personagem ou objeto em malhas low poly editáveis, com orçamento fixo de triângulos, câmera travada, superfície fechada e erro de silhueta medido.

O que é Foto para low poly?

Uma foto e um número de triângulos. O skill ajusta a câmera, solda uma malha fechada nesse orçamento e mostra se os triângulos a mais ajudaram de fato, com vistas de clay e wireframe em oito ângulos. Sem rig, textura ou animação.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/gokayfem/image-to-lowpoly/tree/HEAD/skills/image-to-lowpoly

Installed? Explore more Imagem skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Imagem 2 Low Poly

Uma foto de entrada, uma malha low-poly editável por orçamento de triângulos, cada uma pontuada em relação à foto através da mesma câmera fixa e contada de quatro maneiras independentes. A geometria low-poly por si só faz a aproximação: nenhuma textura, painel, foto projetada ou geometria não contada substitui a forma.

Entradas: a imagem de referência (nunca alterada), o assunto, os orçamentos. Exemplo prático: examples/cat/ no repositório (um gato malhado laranja, orçamentos 100 / 200 / 500 / 1000).

Antes de começar

SituaçãoFaça isso
Uma foto, assunto inteiro visível, fundo lisoo caminho principal
Um animal de quatro pataso modelo proxy fornecido (fit_camera_proxy.py, build_proxy.py) é um gato quadrúpede; ajuste seus priores
Qualquer outro assuntoescreva um modelo proxy para ele primeiro (cilindros generalizados por parte, formato catlib/skeleton.py); o restante das ferramentas é independente do assunto
Várias fotos, um vídeo, uma digitalizaçãofora do escopo: uma vista, uma câmera
O usuário deseja cor ou texturaapenas cores planas por face; diga isso antes de começar
Sem Blendernão suportado: contagem, montagem e todos os números oficiais precisam do Blender 5.2+

Diga antes de começar que tudo o que a foto não mostra é inferido, não verificado.

Fluxo de trabalho

S abaixo significa skills/image-to-lowpoly/scripts. Cada script usa --case CASE (ou LOWPOLY_CASE). Publique uma imagem rotulada em cada ponto de verificação (sobreposições, argila, arame, oito vistas): imagens primeiro, números depois.

  1. Caso e referência. Crie CASE/reference/reference.png (cópia byte-idêntica da imagem do usuário) e um arquivo de proveniência com seu SHA-256. Nunca regenere, redimensione ou edite.
  2. Alvos fixos. Anote marcos e janelas de imagem observando ampliações recortadas (12 nítidas: pontas das orelhas, olhos, nariz, quatro contatos das patas, base/meio/ponta da cauda para um gato; adapte a lista ao assunto), depois python3 $S/preflight_reference.py --case CASE. Observe mask_overlay.png e landmarks_overlay.png. A máscara exclui a sombra do chão e os bigodes.
  3. Câmera e proxy. fit_camera_proxy.py --case CASE (CPU, dezenas de minutos), depois build_proxy.py, build_proxy.py --lock e build_proxy.py --report. Observe o proxy de todas as oito vistas: é a resposta para tudo que está oculto. Em seguida, congele: escreva os hashes da referência, máscara, marcos, regiões, câmera, cena, proxy e o código de avaliação em contract/FROZEN.json antes que qualquer orçamento seja pontuado (references/contract.md).
  4. Controles. make_decimation_baseline.py --case CASE --budget N para cada orçamento: Decimação do proxy para exatamente N, e o mesmo após o refinador compartilhado. Estes são os números a serem superados.
  5. Alocar e construir, por orçamento. Atribua a cada orçamento seu próprio trabalhador e diretório variants/<N>/ (references/budget-worker.md). Escreva a tabela de alocação (região, triângulos, anéis x lados, motivo), construa pelo menos duas alocações materialmente diferentes, dê a cada uma o mesmo refinamento curto, compare, escolha. variants/<N>/build.py escreve um mesh.json catmesh-1 com exatamente N triângulos (afirme isso), regiões, materiais e anexos de marcos. Uma superfície fechada: solde membros, cauda e orelhas ao corpo.
  6. Ponto de verificação inicial. evaluate.py --case CASE --mesh variants/<N>/checkpoints/v0_initial/mesh.json --views. Esta é a linha "inicial".
  7. Refinar, medir, observar, editar, repetir. refine_vertices.py (--flips, --freeze-verts para faces e qualquer kit congelado), evaluate.py, depois observe ref_overlay.png, ref_clay.png, ref_wire.png e as oito vistas. Faça edições de topologia direcionadas onde a sobreposição mostra que o orçamento foi mal alocado. Mantenha o melhor ponto de verificação validado; o mais novo não precisa vencer.
  8. Revisão cega. make_critic_packet.py --case CASE --round K empacota a foto e renderizações de argila, arame e contorno com nomes neutros. Inicie um subagente novo que veja apenas essa pasta; transforme suas descobertas em edições geométricas neutras em relação ao orçamento. Rejeite qualquer sugestão que seja textura, cartão ou geometria não contada.
  9. Finalizar e agregar. finalize_variant.py --case CASE --budget N --checkpoint TAG --reason "..." copia o ponto de verificação e o reavalia; aggregate_metrics.py constrói a tabela de orçamentos cruzados e recusa hashes ou contagens incompatíveis; make_comparison.py faz as planilhas.
  10. Relatar e parar. Apresente a planilha de argila/arame com as quatro contagens, a tabela de inicial, final e ambos os controles por orçamento, as tabelas de alocação, os veredictos do revisor e o que está errado. Diga onde a malha projetada não supera o controle. O usuário decide o que fazer a seguir.
  11. Timelapse (opcional). Grave estágios de construção (--stages-dir no seu script de construção) e instantâneos do otimizador (refine_vertices.py --snapshot-dir DIR --snapshot-every K), depois timelapse/timelapse.py --case CASE: a malha desenhada sobre a foto através da câmera fixa.

Regras rígidas

  • A contagem é a geometria exportada avaliada. Quatro contagens (arquivo de malha, .blend avaliado sobre cada objeto, GLB reimportado, GLB analisado) devem concordar e ser no máximo N; mire exatamente N. Nunca a contagem de polígonos do Blender (references/counting.md).
  • Nada esconde triângulos ou forma. Apenas triângulos, um objeto, sem modificadores, sem subdivisão, curvas, cabelo, instâncias, cartões alfa, preenchimento duplicado ou degenerado, painéis ou extrusões de silhueta plana.
  • O alvo nunca se move. Referência, máscara, marcos, janelas e câmera são feitos uma vez e hashados. Uma correção genuína é divulgada e cada orçamento é reavaliado.
  • Nenhum número único decide. IoU, distância do limite, marcos e lacunas entre pernas não devem se contradizer, e a argila e as oito vistas devem parecer melhores. Uma pontuação melhor com uma forma pior é uma regressão.
  • Solde, não interpenetre. Triângulos enterrados são orçamento desperdiçado e as junções aparecem.
  • O otimizador é compartilhado; a alocação é o experimento. Mesmo refinador, mesmas configurações disponíveis para cada orçamento e para o controle.
  • Marcos se movem com a geometria. Um marco está anexado à característica que nomeia; nunca deslize a fixação para melhorar um número.
  • Uma renderização por vez. Apenas render_variant.py renderiza, e ele pega o bloqueio sozinho.
  • Materiais nunca contam como forma. Cores planas por face com significado anatômico; classifique a geometria apenas em argila e silhuetas.
  • Diga o que não é. Lado oculto inferido; um resultado que empata com o controle é um empate; cabeças e partes finas são onde essas malhas são mais fracas.

Referências

ArquivoLeia quando
references/contract.mdconfigurando um caso: layout, unidades, câmera, formato de malha, métricas, renderizações, proxy, marcos, kit de cabeça
references/budget-worker.mddelegando ou fazendo um orçamento: procedimento, prioridades, o que observar
references/counting.mda contagem de quatro vias, falhas graves, o que é divulgado
references/lessons.mdo que deu errado na execução do gato e a regra que cada falha se tornou

Habilidades Relacionadas