Community이미지github.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 이미지 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

이미지 투 로우 폴리

사진 한 장을 입력하면, 삼각형 예산별로 편집 가능한 로우 폴리 메시 하나가 출력됩니다. 각 메시는 동일한 고정 카메라를 통해 사진과 비교되며, 네 가지 독립적인 방식으로 평가됩니다. 근사는 로우 폴리 지오메트리 자체가 수행합니다. 텍스처, 빌보드, 투사된 사진 또는 계산되지 않은 지오메트리는 형상을 대신하지 않습니다.

입력: 참조 이미지(절대 변경되지 않음), 피사체, 예산. 작업 예시: 저장소의 examples/cat/ (주황색 얼룩 고양이 한 마리, 예산 100 / 200 / 500 / 1000).

시작하기 전에

상황수행할 작업
사진 한 장, 피사체 전체가 보이고, 배경이 단순함기본 경로
네 발 달린 동물제공된 프록시 템플릿(fit_camera_proxy.py, build_proxy.py)은 네 발 달린 고양이입니다; 사전 설정을 조정하세요
다른 모든 피사체먼저 해당 피사체에 대한 프록시 템플릿을 작성하세요(부품별 일반화된 원통, catlib/skeleton.py 형식); 나머지 도구는 피사체에 독립적입니다
여러 장의 사진, 비디오, 스캔범위 외: 단일 뷰, 단일 카메라
사용자가 색상이나 텍스처를 원함평면별 단색만 가능합니다; 시작하기 전에 이 점을 알리세요
Blender 없음지원되지 않음: 계산, 조립 및 모든 공식 숫자에는 Blender 5.2+가 필요합니다

시작하기 전에 사진에 표시되지 않은 모든 것은 추론된 것이며 검증된 것이 아님을 알리세요.

워크플로우

아래 S는 skills/image-to-lowpoly/scripts를 의미합니다. 모든 스크립트는 --case CASE(또는 LOWPOLY_CASE)를 사용합니다. 각 체크포인트에 레이블이 지정된 이미지(오버레이, 클레이, 와이어, 8개 뷰)를 게시하세요: 이미지 먼저, 숫자는 나중에.

  1. 사례 및 참조. CASE/reference/reference.png(사용자 이미지의 바이트 단위 동일 복사본)와 SHA-256이 포함된 출처 파일을 만드세요. 절대 다시 생성하거나, 크기를 조정하거나, 편집하지 마세요.
  2. 고정 대상. 확대된 크롭을 보고 랜드마크와 이미지 윈도우에 주석을 달고(고양이의 경우 12개의 선명한 지점: 귀 끝, 눈, 코, 네 발 접촉점, 꼬리 밑동/중간/끝; 피사체에 맞게 목록을 조정), python3 $S/preflight_reference.py --case CASE를 실행하세요. mask_overlay.png와 landmarks_overlay.png를 확인하세요. 마스크는 바닥 그림자와 수염을 제외합니다.
  3. 카메라 및 프록시. fit_camera_proxy.py --case CASE(CPU, 수십 분 소요)를 실행한 다음, build_proxy.py, build_proxy.py --lock, build_proxy.py --report를 실행하세요. 8개 뷰 모두에서 프록시를 확인하세요: 숨겨진 모든 것에 대한 답입니다. 그런 다음 고정: 참조, 마스크, 랜드마크, 영역, 카메라, 씬, 프록시 및 평가 코드의 해시를 예산이 평가되기 전에 contract/FROZEN.json에 기록하세요(references/contract.md).
  4. 컨트롤. 모든 예산에 대해 make_decimation_baseline.py --case CASE --budget N을 실행하세요: 프록시를 정확히 N개로 디시메이트한 결과, 그리고 공유 리파이너를 거친 후의 동일한 결과. 이들은 깨야 할 숫자입니다.
  5. 할당 및 구축, 예산별. 각 예산에 자체 워커와 디렉토리 variants/<N>/를 할당하세요(references/budget-worker.md). 할당 테이블(영역, 삼각형, 링 x 면, 이유)을 작성하고, 재료적으로 다른 할당을 최소 두 개 이상 구축하고, 각각 동일한 짧은 리파인먼트를 적용하고, 비교하고, 선택하세요. variants/<N>/build.py는 정확히 N개의 삼각형(어설트), 영역, 재료 및 랜드마크 부착물이 있는 catmesh-1 mesh.json을 작성합니다. 하나의 닫힌 표면: 팔다리, 꼬리, 귀를 몸체에 융접하세요.
  6. 초기 체크포인트. evaluate.py --case CASE --mesh variants/<N>/checkpoints/v0_initial/mesh.json --views를 실행하세요. 이것이 "초기" 행입니다.
  7. 리파인, 측정, 확인, 편집, 반복. refine_vertices.py (--flips, --freeze-verts(얼굴 및 동결된 키트용)), evaluate.py, 그런 다음 ref_overlay.png, ref_clay.png, ref_wire.png 및 8개 뷰를 확인하세요. 오버레이가 예산이 잘못 할당되었음을 보여주는 곳에 대상 지오메트리 편집을 수행하세요. 검증된 최상의 체크포인트를 유지하세요; 최신 버전이 반드시 더 나은 것은 아닙니다.
  8. 블라인드 리뷰. make_critic_packet.py --case CASE --round K는 사진과 중립적인 이름의 클레이, 와이어 및 윤곽선 렌더를 패키징합니다. 해당 폴더만 볼 수 있는 새로운 하위 에이전트를 시작하세요; 그 결과를 예산 중립적인 지오메트리 편집으로 전환하세요. 텍스처, 카드 또는 계산되지 않은 지오메트리에 대한 제안은 모두 거부하세요.
  9. 마무리 및 집계. finalize_variant.py --case CASE --budget N --checkpoint TAG --reason "..."는 체크포인트를 복사하고 재평가합니다; aggregate_metrics.py는 예산 간 테이블을 구축하고 해시 또는 개수가 일치하지 않으면 거부합니다; make_comparison.py는 시트를 만듭니다.
  10. 보고 및 중지. 네 가지 카운트가 포함된 클레이/와이어 시트, 예산별 초기, 최종 및 두 컨트롤 테이블, 할당 테이블, 리뷰어 판정 및 잘못된 점을 제시하세요. 설계된 메시가 컨트롤을 능가하지 못하는 경우를 명시하세요. 사용자가 다음 단계를 결정합니다.
  11. 타임랩스 (선택 사항). 구성 단계(--stages-dir in your build script) 및 최적화 프로그램 스냅샷(refine_vertices.py --snapshot-dir DIR --snapshot-every K)을 기록한 다음 timelapse/timelapse.py --case CASE를 실행하세요: 고정 카메라를 통해 사진 위에 그려진 메시.

엄격한 규칙

  • 카운트는 평가되고 내보내진 지오메트리입니다. 네 가지 카운트(메시 파일, 모든 객체에 대해 평가된 .blend, 재가져온 GLB, 파싱된 GLB)가 일치해야 하며 최대 N개여야 합니다; 정확히 N개를 목표로 하세요. Blender의 폴리곤 카운트는 절대 사용하지 마세요(references/counting.md).
  • 어떤 것도 삼각형이나 형태를 숨기지 않습니다. 삼각형만, 단일 객체, 수정자 없음, 세분화, 곡선, 헤어, 인스턴스, 알파 카드, 중복 또는 변형 패딩, 빌보드 또는 평평한 실루엣 돌출 없음.
  • 대상은 절대 움직이지 않습니다. 참조, 마스크, 랜드마크, 윈도우 및 카메라는 한 번 만들어지고 해시됩니다. 진정한 수정 사항은 공개되고 모든 예산이 재평가됩니다.
  • 단일 숫자로 결정하지 않습니다. IoU, 경계 거리, 랜드마크 및 다리 간격이 서로 모순되어서는 안 되며, 클레이 및 8개 뷰가 더 좋아 보여야 합니다. 더 나은 점수이지만 형태가 더 나쁜 경우는 회귀입니다.
  • 융접하고, 관통하지 마세요. 묻힌 삼각형은 예산 낭비이며 연결 부위가 드러납니다.
  • 최적화 프로그램은 공유됩니다; 할당이 실험입니다. 동일한 리파이너, 모든 예산 및 컨트롤에 사용 가능한 동일한 설정.
  • 랜드마크는 지오메트리와 함께 움직입니다. 랜드마크는 이름이 지정된 특징에 부착됩니다; 숫자를 개선하기 위해 부착 지점을 절대 미끄러뜨리지 마세요.
  • 한 번에 하나의 렌더만. render_variant.py만 렌더링하며, 자체적으로 락을 획득합니다.
  • 재료는 절대 형태로 간주되지 않습니다. 해부학적 의미를 지닌 평면별 단색; 클레이 및 실루엣으로만 지오메트리를 순위를 매기세요.
  • 무엇이 아닌지 말하세요. 추론된 숨겨진 면; 컨트롤과 동률인 결과는 동률입니다; 머리와 얇은 부분은 이러한 메시가 가장 약한 부분입니다.

참고 자료

파일읽어야 할 때
references/contract.md사례 설정: 레이아웃, 단위, 카메라, 메시 형식, 메트릭, 렌더, 프록시, 랜드마크, 헤드 키트
references/budget-worker.md하나의 예산 위임 또는 수행: 절차, 우선순위, 확인해야 할 사항
references/counting.md네 가지 방법의 카운트, 하드 실패, 공개되는 사항
references/lessons.md고양이 실행에서 잘못된 점과 각 실패가 만들어진 규칙

관련 스킬