CommunityBildgithub.com

Foto zu Low-Poly

Macht aus einem Foto eines Tiers, einer Figur oder eines Objekts editierbare Low-Poly-Meshes mit festem Dreiecksbudget, verriegelter Kamera, geschlossener Oberfläche und gemessener Silhouettenabweichung.

Was ist Foto zu Low-Poly?

Ein Referenzfoto und eine Dreiecksanzahl. Der Skill setzt eine Kamera, schweißt ein geschlossenes Mesh in diesem Budget und zeigt, ob zusätzliche Dreiecke wirklich halfen, mit Ton- und Drahtansichten aus acht Winkeln. Kein Rig, keine Textur, keine Animation.

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

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

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Bild 2 Low Poly

Ein Foto rein, ein editierbares Low-Poly-Netz pro Dreiecksbudget raus, jedes anhand des Fotos durch die selbe fixierte Kamera bewertet und auf vier unabhängige Weisen gezählt. Die Low-Poly-Geometrie selbst übernimmt die Annäherung: keine Textur, kein Billboard, kein projiziertes Foto und keine nicht gezählte Geometrie vertritt die Form.

Eingaben: das Referenzbild (niemals geändert), das Motiv, die Budgets. Ausgearbeitetes Beispiel: examples/cat/ im Repository (eine orange getigerte Katze, Budgets 100 / 200 / 500 / 1000).

Vor dem Start

SituationVorgehen
Ein Foto, gesamtes Motiv sichtbar, einfarbiger Hintergrundder Hauptpfad
Ein vierbeiniges TierDie mitgelieferte Proxy-Vorlage (fit_camera_proxy.py, build_proxy.py) ist eine vierbeinige Katze; passe deren Priors an
Jedes andere MotivSchreibe zuerst eine Proxy-Vorlage dafür (generalisierte Zylinder pro Teil, catlib/skeleton.py-Format); der Rest der Werkzeuge ist motivunabhängig
Mehrere Fotos, ein Video, ein ScanAußerhalb des Rahmens: eine Ansicht, eine Kamera
Der Benutzer wünscht Farbe oder TexturNur flache Einzelflächenfarben; sag das vor dem Start
Kein BlenderNicht unterstützt: Zählen, Zusammenbau und jede offizielle Zahl benötigen Blender 5.2+

Sag vor dem Start, dass alles, was das Foto nicht zeigt, abgeleitet und nicht verifiziert ist.

Arbeitsablauf

S unten bedeutet skills/image-to-lowpoly/scripts. Jedes Skript akzeptiert --case CASE (oder LOWPOLY_CASE). Poste ein beschriftetes Bild bei jedem Kontrollpunkt (Überlagerungen, Ton, Drahtgitter, acht Ansichten): zuerst Bilder, dann Zahlen.

  1. Fall und Referenz. Erstelle CASE/reference/reference.png (byteidentische Kopie des Benutzerbildes) und eine Herkunftsdatei mit dessen SHA-256. Niemals neu generieren, skalieren oder bearbeiten.
  2. Fixierte Ziele. Markiere Landmarken und Bildfenster, indem du auf gezoomte Ausschnitte schaust (12 scharfe Punkte: Ohrspitzen, Augen, Nase, vier Pfotenkontakte, Schwanzansatz/-mitte/-spitze für eine Katze; passe die Liste an das Motiv an), dann python3 $S/preflight_reference.py --case CASE. Sieh dir mask_overlay.png und landmarks_overlay.png an. Die Maske schließt Bodenschatten und Schnurrhaare aus.
  3. Kamera und Proxy. fit_camera_proxy.py --case CASE (CPU, Dutzende Minuten), dann build_proxy.py, build_proxy.py --lock und build_proxy.py --report. Sieh dir den Proxy aus allen acht Ansichten an: er ist die Antwort für alles Verborgene. Dann einfrieren: Schreibe die Hashes von Referenz, Maske, Landmarken, Regionen, Kamera, Szene, Proxy und des Bewertungscodes in contract/FROZEN.json, bevor ein Budget bewertet wird (references/contract.md).
  4. Kontrollen. make_decimation_baseline.py --case CASE --budget N für jedes Budget: Decimation des Proxy auf genau N, und dasselbe nach dem gemeinsamen Verfeinerer. Dies sind die zu schlagenden Zahlen.
  5. Zuteilen und bauen, pro Budget. Gib jedem Budget einen eigenen Worker und ein Verzeichnis variants/<N>/ (references/budget-worker.md). Schreibe die Zuteilungstabelle (Region, Dreiecke, Ringe x Seiten, Grund), baue mindestens zwei materiell unterschiedliche Zuteilungen, gib jeder die gleiche kurze Verfeinerung, vergleiche, wähle. variants/<N>/build.py schreibt ein catmesh-1 mesh.json mit genau N Dreiecken (bestätige es), Regionen, Materialien und Landmarken-Befestigungen. Eine geschlossene Oberfläche: Füge Gliedmaßen, Schwanz und Ohren in den Körper ein.
  6. Erster Kontrollpunkt. evaluate.py --case CASE --mesh variants/<N>/checkpoints/v0_initial/mesh.json --views. Dies ist die „Initial“-Zeile.
  7. Verfeinern, messen, sehen, bearbeiten, wiederholen. refine_vertices.py (--flips, --freeze-verts für Flächen und jedes eingefrorene Kit), evaluate.py, dann sieh dir ref_overlay.png, ref_clay.png, ref_wire.png und die acht Ansichten an. Führe gezielte Topologie-Änderungen durch, wo die Überlagerung zeigt, dass das Budget falsch zugeteilt wurde. Behalte den besten validierten Kontrollpunkt; der neueste muss nicht gewinnen.
  8. Blinde Überprüfung. make_critic_packet.py --case CASE --round K packt das Foto und neutral benannte Ton-, Drahtgitter- und Umriss-Renderings. Starte einen frischen Unteragenten, der nur diesen Ordner sieht; wandle seine Erkenntnisse in budgetneutrale geometrische Änderungen um. Lehne jeden Vorschlag ab, der eine Textur, eine Karte oder nicht gezählte Geometrie ist.
  9. Abschließen und zusammenführen. finalize_variant.py --case CASE --budget N --checkpoint TAG --reason "..." kopiert den Kontrollpunkt und bewertet ihn neu; aggregate_metrics.py erstellt die budgetübergreifende Tabelle und lehnt nicht übereinstimmende Hashes oder Zählungen ab; make_comparison.py erstellt die Blätter.
  10. Berichten und anhalten. Präsentiere das Ton-/Drahtgitterblatt mit den vier Zählungen, die Tabelle der Initial-, Final- und beider Kontrollen pro Budget, die Zuteilungstabellen, die Bewertungen des Prüfers und was falsch ist. Sage, wo das entworfene Netz die Kontrolle nicht schlägt. Der Benutzer entscheidet, was als nächstes kommt.
  11. Zeitraffer (optional). Nimm Bauphasen auf (--stages-dir in deinem Bauskript) und Optimierungs- Schnappschüsse (refine_vertices.py --snapshot-dir DIR --snapshot-every K), dann timelapse/timelapse.py --case CASE: das Netz gezeichnet über dem Foto durch die fixierte Kamera.

Harte Regeln

  • Die Zählung ist die bewertete, exportierte Geometrie. Vier Zählungen (Netzdatei, bewertetes .blend über jedes Objekt, erneut importiertes GLB, geparstes GLB) müssen übereinstimmen und höchstens N sein; ziele auf genau N ab. Niemals die Polygonanzahl von Blender (references/counting.md).
  • Nichts versteckt Dreiecke oder Form. Nur Dreiecke, ein Objekt, keine Modifikatoren, keine Unterteilung, Kurven, Haare, Instanzen, Alpha-Karten, doppelte oder entartete Auffüllungen, Billboards oder flache Silhouetten-Extrusionen.
  • Das Ziel bewegt sich nie. Referenz, Maske, Landmarken, Fenster und Kamera werden einmal erstellt und gehasht. Eine echte Korrektur wird offengelegt und jedes Budget wird neu bewertet.
  • Keine einzelne Zahl entscheidet. IoU, Grenzabstand, Landmarken und Beinlücken dürfen sich nicht widersprechen, und der Ton und die acht Ansichten müssen besser aussehen. Ein besserer Wert mit einer schlechteren Form ist ein Rückschritt.
  • Verschmelzen, nicht durchdringen. Vergrabene Dreiecke sind verschwendetes Budget und die Verbindungen sind sichtbar.
  • Der Optimierer ist gemeinsam; die Zuteilung ist das Experiment. Gleicher Verfeinerer, gleiche Einstellungen, verfügbar für jedes Budget und für die Kontrolle.
  • Landmarken bewegen sich mit der Geometrie. Eine Landmarke ist an dem Merkmal befestigt, das sie benennt; verschiebe niemals die Befestigung, um eine Zahl zu verbessern.
  • Ein Rendering nach dem anderen. Nur render_variant.py rendert, und es nimmt selbst die Sperre.
  • Materialien zählen nie als Form. Flache Einzelflächenfarben mit anatomischer Bedeutung; bewerte Geometrie nur anhand von Ton und Silhouetten.
  • Sag, was es nicht ist. Abgeleitete verborgene Seite; ein „zieht mit der Kontrolle gleich“-Ergebnis ist ein Unentschieden; Köpfe und dünne Teile sind die Schwachstellen dieser Netze.

Referenzen

DateiLesen, wenn
references/contract.mdEinrichten eines Falls: Layout, Einheiten, Kamera, Netzformat, Metriken, Renderings, Proxy, Landmarken, Kopf-Kit
references/budget-worker.mdDelegieren oder Bearbeiten eines Budgets: Vorgehen, Prioritäten, worauf achten
references/counting.mdDie vierfache Zählung, harte Fehler, was offengelegt wird
references/lessons.mdWas beim Katzenlauf schiefgelaufen ist und welche Regel jeder Fehler wurde

Verwandte Skills