"얼굴 부분만 잘라내서 크게 image gen을 하고 그걸 줄여서 붙여넣기도 하거든. 16:9 크기로 그냥 만들면 작은 부분, 특히 얼굴은 뭉개지기 십상이니까." — 아빠의 framing
물리적으로 진술한 해상도 문제
넓은 16:9 이미지를 생성하면 모델이 고정된 해상도 예산을 프레임 전체에 써. 그 프레임의 작은 일부를 차지하는 얼굴은 픽셀의 작은 일부만 받아 — 눈, 입, 표정을 깨끗하게 렌더하기엔 부족해. 얼굴이 뭉개져. 이건 프롬프트로 빠져나올 수 있는 모델-품질 문제가 아니야; 큰 장면을 한 번에 생성하는 데 구워진 영역당-픽셀 문제야.
이미 작동하는 수작업 패턴
아티스트가 이미 손으로 이걸 풀고, 해법이 Cinder 가 공식화하는 워크플로야:
- 넓은 이미지에서 얼굴 영역을 잘라.
- 혼자 크게 렌더해, 모델이 얼굴에만 full 해상도 예산을 쓰게 — 이제 디테일에 픽셀이 충분해.
- 원래 영역에 맞게 줄여.
- 넓은 이미지로 도로 합성해.
전체 트릭은 디테일한테 full 해상도의 자기 생성 pass 를 주고, 고품질 결과를 제자리로 줄이는 거야. (이게 인기 있는 자동 'detailer' extension 이 존재하는 이유기도 하고 — 그게 여전히 최악의 케이스를 놓치는 이유기도 해, 그게 수동 통제를 지킬 값어치 있게 만드는 거고.)
왜 필터가 아니라 first-class 인지
이걸 원클릭 '얼굴 고치기' 버튼으로 묻기 쉬울 거야. Cinder 는 대신 first-class, 보이는 워크플로로 만들어, 아티스트가 각 단계에서 통제가 필요하니까 — 어느 영역, 둘레에 padding 얼마나, 디테일 pass 에 어느 모델이랑 설정, 그리고 결정적으로 어느 결과를 받을지 선택. 블랙박스 auto-fixer 는 그 결정을 뺏어; first-class 워크플로는 판단이 중요한 바로 그 지점에서 아티스트를 루프 안에 둬.
crop 이 실어야 하는 메타데이터
composite-back 이 정확하게 작동하려면, crop 이 그냥 이미지일 수 없어 — 자기 지리를 실어야 해: 온 source bounding box, source document 크기, scale factor, 그리고 선택적으로 디테일 pass 가 섞을 주변 맥락을 가질 padded context 영역. 그 지리 없이는, 아름다운 고해상도 얼굴이 있고 도로 넣을 정확한 방법이 없어. 메타데이터가 분리된 crop 을 자기가 어디 속하는지 아는 것으로 바꾸는 거야.