W21 Background-First Plan
작성일: 2026-05-28 · 대상: 금월도 fresh canary 20260510, review.pdf, W20E7/W20F 결과
이 문서는 금월도 이미지 품질 개선을 배경 안정화부터 진행하기 위한 최종 순서와 수정 방향을 정리한다. 전체 연출 문제는 shot coverage, framing, acting, continuity까지 넓지만, 현재 가장 명확하고 좁게 고칠 수 있는 실패 축은 배경이다.
1. 결론
실행 순서는 배경 먼저가 맞다. 단, review.pdf가 드러낸 상위 문제인 director coverage와 shot sequencing을 폐기하지 않고, 배경 안정화 뒤 다음 wave로 넘긴다.
배경부터 가는 이유는 W20E7에서 외부 plate 감소, BG 내 손·팔·혈흔 누수, 같은 공간의 가구 invent, documentary-flat 톤 문제가 모두 직접 관찰됐고, 대부분 prompt/module 수준의 좁은 변경으로 실험 가능하기 때문이다.
단, S#1의 산 풍경 establishing 부재, S#5의 리모컨 액팅 오해, S#13의 시선 관계 실패는 배경만으로 해결되지 않는다. 이들은 배경 wave 이후 director coverage / framing wave에서 다룬다.
2. 관찰 근거
2.1 산출물 변화
| 자료 | chain_bg | floor_plan | reference | scene | 해석 |
|---|---|---|---|---|---|
canary 2026051002829fe8... |
32 | 19 | 70 | 62 | W20F6 hard filter 이전. 외부/전환 plate가 더 많이 살아 있음. |
W20E7/W20F4f948193... |
12 | 11 | 39 | 50 | W20F6 이후. 배경/도면 scope가 과도하게 줄어듦. |
2.2 review.pdf가 요구한 배경/톤 기준
- S#4 옥탑방: 너무 높은 수직 부감이 아니라 낮은 high-angle, 중심 주체, 인천 변두리의 차가운 영화적 톤.
- S#5 옥탑방 내부: TV, 엄마, 약초가 층을 이루는 공간. 리모컨 액팅이나 불필요한 사건 소품 중심이 아님.
- S#2 골목: 한국 도심 뒷골목, 희미한 가로등, 실루엣 ambiguity, reveal 전 긴장.
- S#16 경찰서: 정가운데 인공 구도보다 공간 관계와 불안감이 드러나는 cinematic office staging.
사람이 만든 target prompt는 Arri/Alexa, anamorphic lens, handheld, film grain, desaturated cinematic grade, genre-film reference를 반복적으로 사용한다. 현재 background prompt의 anti-stylization 방향은 이 목표와 충돌한다.
2.3 현재 코드/프롬프트 touchpoint
| Touchpoint | 현재 문제 | 방향 |
|---|---|---|
prompts/_base/background_prompt/7... |
documentary/real DSLR 중심. cinematic/color grading/film grain 회피. scene_segments verbatim 주입. | BG v8에서 cinematic photoreal 허용, scene text는 geometry/state summary로 제한. |
background_master_plan_step.py |
W20F6 scope filter가 indoor/shot_count 중심으로 exterior/deck/transition plate를 drop. | surface_role 기반 eligibility. exterior_plate와 transition_zone 보존. |
base_location_dossier.py |
anchor candidate와 transient marker가 BG purity를 흔들 수 있음. | stable surface와 scene-state cue를 분리. BG 후보는 stable plate 중심. |
shot_aware_bg_render_plan* |
style_reference_new_space가 같은 물리 공간에서도 가구/layout invent를 허용. |
same physical space와 related style space를 분리. 같은 공간은 layout-lock. |
scene_generation_coordinator.py, prompt_service.py |
reference lineage와 attached ref 추적이 시각 QA에서 불충분할 수 있음. | BG reference 사용 결과를 reference_image_ids와 manifest diagnostics에 남김. |
3. 최종 수정 순서
| 순서 | Wave | 목표 | 이미지 비용 | 다음으로 넘길 것 |
|---|---|---|---|---|
| 0 | W21B-brief | review.pdf 기반 BG-first acceptance matrix 작성. | 0 | coverage/framing은 문서에 남기되 실행 제외. |
| 1 | W21B-wave-1 | BG 한정 cinematic photoreal tone + BG purity + reference lineage/audit. | 낮음. BG 중심 fresh canary. | surface_role은 분리. global scene tone은 후속. |
| 2 | W21B-wave-2 | surface_role과 exterior/transition plate 복구. master_plan output 확장. | 중간. plate 수 증가. | place_group schema는 보류. |
| 3 | W21B-wave-3 | same-space layout consistency. unit graph 기반 deterministic mode router. | 중간. L05/L09 재생성 필요. | cross-shot continuity는 W21E. |
| 4 | W21D-small | entity-type-aware reference contract. 사람/동물/사물 reference 포맷 분리. | 낮음. reference 중심. | W21B-wave-1 closure에 끼울지는 구현 직전 결정. |
| 5 | W21A0 | director coverage / shot sequencing. establishing, detail, reveal 등. | 첫 pass는 텍스트만. | full image canary는 사용자 비용 승인 후. |
4. Wave별 상세 방향
W21B-brief — BG-first acceptance matrix
- 대상: docs/금월도 - review.pdf, canary 20260510, W20E7.
- 각 샘플은
tests/fixtures/review_pdf_acceptance/같은 SAMPLE_FIXTURE 격리 경로에 둔다. production logic에는 금월도/옥탑방/로트와일러 같은 literal을 넣지 않는다. - matrix 필드:
space_role,required_plate,camera_need,tone_need,must_exclude_from_bg,reference_need,negative_symptom. - 산출물: HTML/MD brief, 코드 변경 없음.
W21B-wave-1 — BG tone, purity, and reference audit
첫 구현 wave는 BG prompt v8의 prose contract를 다룬다. tone과 purity는 같은 LLM output 안에서 동시에 작동하므로 한 wave로 묶는다. reference audit은 visual review 도구이므로 같은 closure에 포함한다.
BG cinematic photoreal tone
- 현재 anti-stylization rule은 luxury/showroom/CG 방지 목적으로 좁힌다.
- 허용: cinematic photoreal movie still, anamorphic lens, handheld camera, natural film grain, desaturated cinematic grade, subtle lens flare.
- 금지: CGI render, illustration, concept art, stock photo, luxury showroom, over-clean architectural visualization.
- 한국 장르 영화 레퍼런스는 work-specific noun이 아니라 region/era/tone에서 유도하는 generic style hint로만 다룬다.
- scope는 BG prompt에 한정한다. scene prompt 전체 tone은 다음 global tone wave로 넘긴다.
BG purity and layer boundary
- BG plate는 structural shell, openings, fixed furniture, persistent decor, permanent surface damage만 포함한다.
- 손, 팔, 얼굴, 인체, 시신, 혈흔, 발자국, 일시적으로 놓인 사진/소품, 현재 사건 흔적은 BG prompt에서 제외한다.
subject_position_directive는 BG render prompt에서 제거한다.- 대체로
subject_clearance_directive만 허용한다. 예: 나중에 인물이 설 foreground floor area를 비워 둠. - scene_segments verbatim 주입을 중단하고, room geometry summary / persistent surface summary만 전달한다.
- 첫 wave에서는 prompt contract만 적용한다. LLM/VLM semantic gate는 결과를 본 뒤 후속으로 설계한다.
Reference lineage and audit metadata
- BG image 생성 때 실제 사용한 prior/anchor reference를 DB
reference_image_ids또는 checkpoint diagnostics에 남긴다. - scene image가 BG reference 없이 text-only로 간 경우를 audit에서 바로 볼 수 있어야 한다.
- S#4 같은 scene의
reference_image_ids=[]문제를 재현/확인할 수 있게 한다. - UI 표시 개선은 별도다. 이번 scope는 visual review에 필요한 lineage 기록이다.
- 이 wave의 audit 변경은 write-only diagnostics로 제한한다. 기존 reference 선택, planner output, adapter mode, scene generator behavior는 변경하지 않는다.
W21B-wave-2 — surface_role and exterior plate
surface_role후보:interior_room,exterior_plate,transition_zone,site_surface.- exterior/transition/site는 floor_plan이 없어도 plate가 필요할 수 있다. 옥상, 외부 계단, 마트 외부, 골목, deck이 여기에 해당한다.
surface_role은background_master_planoutput schema에서 직접 생성한다. dossier/overlay 단계 파생은 filter timing보다 늦다.- 분류는 LLM semantic decision으로 한다. literal outdoor keyword matching은 source of truth로 쓰지 않는다.
- W20F6의 indoor hard filter는
dep_bg_count와surface_role기준으로 완화한다. - place_group/sub_region DB schema는 아직 도입하지 않는다. 먼저 surface_role로 충분한지 검증한다.
W21B-wave-3 — same-space layout consistency
style_reference_new_space를 둘로 나눈다:same_physical_space_view와related_style_new_space.- same physical space는 fixed furniture, wall/window/counter/door positions를 유지한다.
- related style space는 같은 건물/가정 분위기만 공유하고 layout invent를 허용한다.
- 라우팅은 LLM 자유 판단보다 unit graph adjacency / anchor unit overlap 같은 deterministic signal을 우선한다.
- 위치는
shot_aware_bg_render_plan의 planner output 후 post-process/validation layer가 우선 후보이다. adapter는 최종 렌더 지시 소비자에 가깝다. surface_role은 coarse guard로 사용하고, unit graph adjacency / anchor overlap을 primary signal로 둔다. 따라서 W21B-wave-2 land가 wave-3의 strict prerequisite이다.
5. Acceptance 기준
W21B-wave-1의 cinematic tone 평가는 chain_bg/background plate PNG만 대상으로 한다. per-shot scene PNG의 cinematic tone은 W21A1 또는 별도 global tone wave의 acceptance이며, wave-1 평가에서 분리한다.
| 검증 축 | 통과 기준 | 실패 예 |
|---|---|---|
| Exterior plate | 옥상, 외부 계단, 마트 외부, 골목/deck 계열이 필요한 경우 1개 이상 plate가 생성된다. | W20E7처럼 exterior plate 0개 또는 floor_plan 파일만 있고 DB row가 없는 상태. |
| BG purity | BG plate에 사람/손/팔/얼굴/시신/혈흔/일시 prop이 보이지 않는다. | 옥탑방 BG에 팔이 있어 scene shot이 1인칭 팔처럼 따라 그림. |
| Same-space consistency | 같은 물리 공간의 derived BG가 냉장고/싱크대/창문/커튼 위치를 invent하지 않는다. | 한 BG는 오른쪽 냉장고, 다른 BG는 같은 위치에 커튼처럼 바뀜. |
| Cinematic BG tone | 실사 기반이면서 영화적 렌즈/색/질감이 살아 있다. documentary-flat이 아니다. | matter-of-fact location photo처럼 밋밋하거나 쇼룸/CG처럼 과하게 깨끗함. |
| Reference audit | BG/scene image가 어떤 reference를 썼는지 DB 또는 manifest에서 추적 가능하다. | 이미지는 reference를 쓴 듯한데 reference_image_ids=[]로 남음. |
6. Claude와 의논할 쟁점
- 합의: W21B-wave-1은 B0+B1+B4. tone/purity/audit를 묶는다.
- 합의: W21B-wave-2는 surface_role/exterior plate.
background_master_planoutput에서 직접 생성한다. - 합의: BG purity 첫 wave는 prompt contract만. LLM/VLM semantic gate는 결과를 본 뒤 후속 판단한다.
- 합의: reference_image_ids/audit gap은 W21B-wave-1에 포함한다.
- 합의: B3 deterministic router는 W21B-wave-2의 surface_role을 coarse guard로 사용하므로 wave-2 이후에 진행한다.
- 남은 구현 판단: B3 deterministic router의 정확한 함수 위치와 checkpoint schema bump 범위.
- 남은 구현 판단: entity-type-aware reference contract(W21D-small)를 W21B-wave-1 closure에 끼울지 별도 wave로 둘지.
Codex 갱신 의견: Claude 피드백을 반영해 첫 실행 단위는 BG tone + BG purity + reference audit이다. surface_role은 다른 검증 surface이므로 다음 wave로 분리한다.