CommunityImagemgithub.com

image-to-sculpt

Transforma uma imagem de qualquer assunto em uma escultura 3D à prova d'água, com medições e gravação passo a passo no Blender.

O que é image-to-sculpt?

Image-to-sculpt é uma habilidade de agente de IA que pega uma única imagem — seja uma renderização de IA, foto de um boneco, desenho ou ilustração — e a transforma em uma escultura 3D completa, à prova d'água, pronta para impressão ou uso em cenas. O processo é totalmente registrado e reproduzível no Blender, garantindo que cada superfície visível na imagem original seja ajustada com precisão (usando normais, silhueta e profundidade da própria foto) e que as partes ocultas sejam preenchidas com vistas geradas que concordam entre si. A habilidade é executada através de uma CLI (`scripts/i2s.py`) que orquestra etapas como: andaime do caso, chamadas à API fal com orçamento, registro de vistas, esculpimento, ajuste fino, verificação de mapas, reprodução no Blender, filmes de lapso temporal e mesa giratória, exportação (GLB, OBJ, STL) e um relatório final. É ideal para usuários que desejam um modelo 3D a partir de uma imagem, um personagem transformado em malha, um lapso temporal de escultura ou verificar a precisão de um modelo 3D contra uma imagem de referência. Não se destina a cenas, text-to-3D sem imagem ou rigging.

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

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

Image 2 Sculpt

Uma imagem entra, uma escultura sai e você pode provar: cada superfície que a imagem mostra é ajustada às próprias normais, contorno e profundidade da imagem em sua própria câmera; cada superfície oculta vem de vistas geradas que primeiro tiveram que concordar entre si; e cada etapa da construção é gravada e reproduzida no Blender.

Roteamento de entrada

Qualquer entrada termina na mesma estrutura de caso (i2s.py new CASE --input ...). Detalhes: references/inputs.md.

EntradaFaça istoNotas
Uma renderização de personagem/criatura/objeto ou imagem de IAnew → runo caminho principal
Uma foto de um objeto real (boneco, brinquedo, produto, estátua)new --kind photo → runMoGe fornece distância focal e profundidade reais
Um PNG recortado com transparêncianew → runo canal alfa é a máscara; nenhuma chamada de máscara
Uma imagem cheia com várias coisasprep --select "o dragão vermelho"SAM-3 seleciona o assunto
Um desenho, esboço ou ilustração planaprep --restylenano banana transforma em uma renderização 3D primeiro, mantendo a pose
Várias fotos do mesmo objetoviews --import DIRsuas fotos substituem as vistas geradas; ângulos encontrados por registro
Apenas uma ideiaimagine OUT.png "ideia" → newuma renderização limpa de corpo inteiro para começar
Sem chave de APIum PNG recortado (+ suas próprias vistas)apenas frontal funciona também: a silhueta é inflada, a profundidade atrás é um palpite

Fluxo de trabalho

Envie um visual rotulado em cada ponto de verificação (checks/sheet_*.png, a folha de vistas, um quadro da mesa giratória): imagens primeiro, números depois. Rodadas de correção adicionam etapas; nada gravado é jamais editado.

  1. Andaime. i2s.py new CASE --input IMG --subject "frase curta substantiva". Olhe para a imagem e escreva a frase do assunto você mesmo ("troll cartunesco atarracado", "coruja de cerâmica em forma de estatueta"): ela entra em cada prompt de vista. A entrada é copiada com seu sha256 e preenchida até a proporção de aspecto mais próxima do gerador, para que cada vista compartilhe uma lente.
  2. Mapas frontais. i2s.py prep CASE (máscara, profundidade MoGe-3 + distância focal, normais Marigold; unidades normalizadas para o assunto). Verifique ref/front_mask.png e ref/front_normals.png antes de prosseguir. Assunto errado selecionado → --select. Desenho → --restyle.
  3. Vistas. i2s.py views CASE (9 vistas + 1 reservada, ~$2 estimados; --set minimal para 5). Olhe para cada imagem gerada: uma pose alterada, um membro extra ou um assunto cortado é uma vista ruim. O registro rejeitará vistas que discordam (IoU < 0,80 contra o casco das outras), mas diga o que viu. Regiões que nenhuma vista vê precisam de novas vistas em ângulos que as observem (--angles "-30:25"), não mais suavização (references/views.md).
  4. Casco. i2s.py hull CASE: registro de cada vista (o ângulo solicitado é apenas um prior: trocas esquerda/direita são encontradas, frente/trás é mantida), re-centralização, triagem, a escultura gravada, detecção de simetria. Leia os ângulos registrados em case.json; i2s.py symmetry CASE on|off substitui o plano de espelho detectado.
  5. Ajuste. i2s.py fit CASE --stage all (formas → superfície → detalhe, 38 passagens gravadas), depois cut (abre lacunas entre dedos, pernas, braço e corpo que a foto mostra), smooth (remove teias e manchas), fit --stage polish. i2s.py run CASE faz as etapas 2-8 em ordem com este plano padrão (references/fitting.md).
  6. Verificação e iteração. i2s.py check CASE escreve uma folha por vista: referência, normais de referência, escultura, erro normal, diferença de silhueta. Procure por protuberâncias, teias, lacunas faltantes, características achatadas. Mire neles: parts CASE --prompt "mãos" depois fit --stage focus --region hands, cut --region hands, smooth --region box:... (references/checking.md). Nunca reivindique uma correção sem a folha antes/depois.
  7. Finalização, Blender, filmes. finish (suavização de facetas, OBJ/STL), blender (cada etapa reproduzida a partir da câmera da foto, mesa giratória 360°, cada vista, sculpt.blend, GLB), film (lapso temporal de dois painéis que termina na rotação de 360°, mesa giratória, folha de vistas, imagem hero) (references/blender-and-delivery.md).
  8. Relatório e parada. report escreve out/REPORT.md, out/index.html e o gráfico por etapa. Apresente o lapso temporal, a folha de vistas e a tabela medida, diga o que está fraco e pare. O usuário decide o que fazer a seguir.

Regras rígidas

  • A foto governa o que ela vê. As vistas geradas apenas preenchem onde a foto não vê; sua profundidade nunca é usada (discorda por centímetros entre as vistas). Nunca tire a média das normais de uma vista gerada sobre a da foto.
  • Registre cada vista; nunca confie no ângulo solicitado. As vistas geradas estavam erradas por 20–155° no troll, principalmente trocas esquerda/direita. A busca permite essas trocas, mas mantém as vistas frontais na frente e as traseiras atrás (a parte traseira de um assunto simétrico se parece com sua frente). Leia os ângulos registrados em case.json.
  • Trie antes de esculpir. Uma vista que discorda das outras é um assunto ou pose diferente: rejeite-a (e diga isso) em vez de cortar a escultura com ela.
  • Reserve uma vista. Ela nunca move a superfície; sua câmera é congelada antes do ajuste. Relate-a separadamente das vistas usadas para ajustar. Ela também é gerada, portanto mede consistência, não verdade.
  • Meça, não confie apenas no olho. IoU, distância de contorno, ângulo normal, rugosidade contra a rugosidade de referência, profundidade da foto. Um número nunca representa "qualidade": relate-os lado a lado.
  • Campos de distância permanecem exatos. Cada operação redistancia a grade (distâncias exatas de triângulo em uma banda, EDT além). Deslocar um campo inexato, espelhar o próprio campo ou desfocar alvos normais criou escadas, anéis de moiré e narizes achatados no caso a partir do qual isso foi construído (references/lessons.md).
  • Grave tudo. Cada escultura, passagem, corte e suavização é uma etapa em build/steps/ e build/log.jsonl, reproduzida no Blender e mostrada no lapso temporal. Nunca edite uma etapa gravada; adicione uma nova.
  • Chamadas pagas: cada chamada fal passa pelo orçamento do caso (settings.budget_usd), seu id de requisição é salvo em case.json antes de esperar, e nada é reenviado cegamente. FAL_KEY nunca é impresso ou escrito.
  • Feedback visual em cada ponto de verificação, e o quadro 0 de cada filme é uma miniatura finalizada.
  • Diga o que é inventado. A parte traseira de um assunto visto apenas de frente é o palpite do gerador.

Referências

ArquivoLeia quando
references/inputs.mdroteando uma entrada incomum; máscaras, restyle, selecionar, fotos importadas, apenas ideia
references/views.mdgerando, julgando, registrando, triando e adicionando vistas
references/fitting.mdo que uma passagem faz, estágios, parâmetros, cortar / suavizar / focar, o plano padrão
references/checking.mdlendo folhas de mapa e métricas, a vista reservada, o que corrigir a seguir
references/blender-and-delivery.mdreprodução no Blender, filmes, exportações, o relatório, a página de revisão
references/conventions.mdquadro mundial, câmeras, unidades, formatos de arquivo (para escrever novas ferramentas)
references/lessons.mdo que deu errado nos primeiros casos e por que as regras acima existem

Modelos: templates/CONTRACT.md (copiado em cada caso), templates/acceptance.json (alvos).

Habilidades Relacionadas