2026-11 · 작업 노트2026-11 · Project note
〈잔상〉을 고른 방법How Afterimage Was Chosen
따로 만든 이미지들을 하나의 질문으로 모은 기준과, 10월부터 쓴 자동 기획·생성 시스템.
How separate images were gathered around one question, and the automated planning and generation system used from October.
〈잔상〉은 한 화면에서 무엇이 남고 무엇이 먼저 사라지는지를 묻는 연작이다. 처음부터 연작으로 기획한 것은 아니다. 2026년 여름과 가을에 만든 이미지 가운데 같은 질문에 닿아 있는 것들을 나중에 한데 모았다.
질문
대상이 사라진 뒤에도 눈에 남는 상을 잔상이라 부른다. 그림자는 돌보다 먼저 도착하고, 빛은 발보다 먼저 계단참에 오른다. 가장자리는 가운데보다 먼저 잊힌다. 원인보다 흔적이 먼저 보이는 순간, 그리고 지워진 자리가 오히려 화면을 만드는 순간을 붙잡을 수 있는가.
방법
한 가지 도구로 만들지 않았다. 7월의 〈한강이 바다를 기억할 때〉는 FLUX.2 Klein 9B로, 8월 말의 여섯 점은 OpenAI 이미지 생성 모델로, 10월의 〈발보다 먼저 오른 빛〉은 로컬 ComfyUI와 FLUX.2 Klein 9B로 만들었다. 도구는 달라도 순서는 같다. 장면과 시점, 시간의 구조를 먼저 정하고, 기계가 내놓은 여러 결과를 나란히 놓고 비교한 뒤 한 장을 남긴다.
10월부터는 별도 작업용 PC에서 돌아가는 자동 기획·생성 시스템을 만들어 썼다.
- 기획: 예약 실행기가 2~4시간마다 깨어나, Claude Code에 작품 기획을 맡긴다. 기획은 정해진 JSON 형식으로 돌아온다. 제목, 출발 소재, 관찰, 의도, 이번 시안이 최근 기획 24개와 무엇이 다른지, 결과물에서 확인할 검토 질문 3~5개가 들어 있다.
- 순환: 다섯 가지 작품 갈래(언어와 이미지, 물과 기억, 몸과 재료, 생활과 문화, 그 밖의 조형 탐색)을 순서대로 한 번씩 돌고, 화풍 다섯 가지(빛과 색면, 대담한 평면, 겹친 콜라주, 표현적 붓질, 한 색의 명암)를 별도 축으로 돌린다. 같은 소재를 색이나 시드만 바꿔 반복하지 못하게 했다.
- 생성: ComfyUI에서 FLUX.2 Klein 9B로 1008 × 1424 잠재 이미지를 만들고 4x-UltraSharp로 키운다.
- 출력 검사: 전시용 CMYK JPG, 도록용 JPG, 보관용 PNG를 따로 만든다. 만든 뒤 파일을 다시 열어 픽셀, 색상 모드, DPI, ICC 프로파일을 검사하고, 하나라도 어긋나면 완료로 기록하지 않는다.
- 승인 분리: 기술 검사를 통과해도 작가 승인 항목은 비어 있는 채로 남는다. 형식이 맞는다고 작품이 되지는 않는다. 작품이 되는 것은 작가가 고른 것뿐이다.
아래는 출력 파일을 다시 열어 검사하는 함수의 앞부분이다. 규격이 하나라도 다르면 예외를 던지고, 그 실행은 완료로 기록되지 않는다.
def validate_file(path, role, layout):
"""Validate a finished derivative, including real pixels, DPI, and ICC."""
size, file_format, mode, dpi, space = _expected(role, layout)
with Image.open(path) as picture:
picture.verify()
with Image.open(path) as picture:
if picture.format != file_format:
raise ValueError(f"Wrong format for {role}: expected {file_format}")
if picture.size != size:
raise ValueError(f"Wrong size for {role}: expected {size}, got {picture.size}")
if picture.mode != mode:
raise ValueError(f"Wrong color mode for {role}: expected {mode}")
_dpi(picture.info.get("dpi"), dpi)
_profile(picture.info.get("icc_profile"), space, srgb=(space == "RGB"))
if any(key in picture.info for key in ("exif", "comment", "prompt", "workflow", "xmp")):
raise ValueError("Private source metadata must not be copied into derivatives")시도와 실패
규격에서 생긴 실패. FLUX.2는 이미지 크기를 16픽셀 격자에 맞춘다. 처음 정한 1024 × 1448은 실제로는 1024 × 1440으로 잘려, 전시 규격 비율과 어긋났다. 생성 크기를 1008 × 1424로 다시 정하고, 출력기는 비율 오차가 0.5%를 넘으면 자르거나 늘이지 말고 실패하도록 바꿨다.
기술 통과와 작품 사이의 간격. 검사를 모두 통과한 시안이 한 달에 187장 나왔지만, 그중 작품이 된 것은 한 장이다. 그래서 시스템은 끝까지 작가 승인 항목을 비워 둔다.
출품작이 세 번 바뀐 사흘. 한국디자인학회 가을 국제초대전 마감(10월 30일 16시)을 앞두고 고른 과정이 기록으로 남아 있다.
- 10월 28일 밤 생성된 〈발을 내리자 먼저 사라진 발〉을 먼저 출품작으로 승인하고 국영문 제목과 의도문까지 확정했다. 창 앞의 '발'(가림막)과 사람의 '발'이 같은 소리라는 데서 출발한 작업이다.
- 다른 방향도 비교했다. 극사실 시안 세 점 가운데 〈수위가 남긴 방〉을 골랐고(〈저녁의 공동수조〉는 인물 세부가 뭉개진 것이 검수 기록에 남았다), 극사실·그래픽 시안 27점을 비교표로 놓고 그 가운데 가상 도시 〈누마〉의 한 장면인 〈쓸모 곁에 둔 것〉을 골랐다.
- 8~9월 후보 전체를 큰 크기로 다시 비교해 그림 자체의 힘으로 〈밤은 두 개의 낮 사이에서 생겼다〉를 골랐다. 같은 시기의 〈답은 저절로 만들어지지 않았다〉는 8월 30일 초안의 은유가 너무 직접적이어서 9월 1일에 전면 재구성한 판이 있다.
- 마지막으로 작업용 PC에서 만든 결과 전체를 그림의 힘, 난해함, 사실감, 한국성, 예술성, 서사의 여러 기준으로 다시 비교했다. 서사가 가장 강한 〈발보다 먼저 오른 빛〉을 "제일 낫다"고 정해 10월 30일 새벽에 제출했다.

결정
〈발보다 먼저 오른 빛〉은 10월 20일 09시 45분에 생성된 시안이다. 기획이 함께 적어 둔 검토 질문을 실제 결과물 앞에서 하나씩 확인했다.
검토 기준
1. 화면에서 현대 공동주택의 계단, 센서등, 올라가는 사람의 동작이
글자 없이 구체적으로 식별되는가?
2. 들린 발을 중심으로 위쪽의 밝은 빈자리와 아래쪽으로 뻗는 그림자가
서로 반대 방향의 시간 관계를 만드는가?
3. 인디고 한 색의 명암만으로 계단의 깊이와 조명의 작동 범위가
분명히 구분되는가?
4. 최근 시안의 손 중심 근접 구도나 사물의 접기·열기·뒤집기 구조와 다른
독자적인 계단 공간 구성이 보이는가?
연작에 남긴 작품을 묶어 보면 세 갈래로 나뉜다.
- 흔적이 원인보다 먼저 보이는 것: 〈그림자가 먼저 도착한 곳〉, 〈발보다 먼저 오른 빛〉
- 가림이나 지움이 오히려 화면을 만드는 것: 〈불투명하게 남을 권리〉, 〈남기지 않은 것이 화면을 만든다〉
- 사라지는 속도가 서로 다른 것: 〈이미지는 서로 다른 속도로 잊는다〉, 〈한강이 바다를 기억할 때〉
남은 질문
이 연작에서 잔상은 두 가지로 읽힌다. 화면 안에 끝까지 남아 있는 것, 그리고 많은 생성 결과 가운데 작가가 남긴 것. 고르지 않은 시안들도 지워지지 않고 보관되어 있다. 고르는 일 자체가 작업이라면, 버린 시안은 이 연작의 어디에 놓여야 하는가. 연작은 아직 진행 중이다.
Afterimage is a series that asks what stays in an image and what disappears first. It was not planned as a series. Images made in the summer and autumn of 2026 that touched the same question were gathered together afterwards.
Question
An afterimage is what stays in the eye after its object is gone. A shadow arrives before its stone; light reaches the landing before the foot. Edges are forgotten before the centre. Can an image hold the moment when a trace is seen before its cause, or when what was erased is what builds the picture?
Method
No single tool was used. When the Han River Remembers the Sea (July) was made with FLUX.2 Klein 9B, the six works from late August with an OpenAI image model, and The Light That Climbed Before the Step (October) with local ComfyUI and FLUX.2 Klein 9B. The order of work stays the same: set the scene, viewpoint and structure of time; lay the machine's results side by side; keep one.
From October I used an automated planning and generation system running on a separate workstation.
- Planning: A scheduler wakes every two to four hours and hands the brief to Claude Code. The plan comes back in a fixed JSON form: title, starting material, observation, intent, how this draft differs from the last 24 plans, and three to five review questions to check against the output.
- Rotation: Five strands of work (language and image; water and memory; body and material; daily life and culture; other formal studies) take turns, and five painting styles rotate on a separate axis, so the same subject cannot return with only a new colour or seed.
- Generation: ComfyUI with FLUX.2 Klein 9B produces a 1008 × 1424 latent image, upscaled with 4x-UltraSharp.
- Output checks: Exhibition CMYK JPEG, catalogue JPEG and archival PNG are made separately, then reopened to check pixels, colour mode, DPI and ICC profile. Any mismatch means the run is not recorded as complete.
- Approval kept apart: Even after every technical check, the artist-approval field stays empty. Passing the format does not make a work; only what the artist chooses does.
Below is the start of the function that reopens each output file. If any specification differs it raises an exception, and the run is not recorded as complete.
def validate_file(path, role, layout):
"""Validate a finished derivative, including real pixels, DPI, and ICC."""
size, file_format, mode, dpi, space = _expected(role, layout)
with Image.open(path) as picture:
picture.verify()
with Image.open(path) as picture:
if picture.format != file_format:
raise ValueError(f"Wrong format for {role}: expected {file_format}")
if picture.size != size:
raise ValueError(f"Wrong size for {role}: expected {size}, got {picture.size}")
if picture.mode != mode:
raise ValueError(f"Wrong color mode for {role}: expected {mode}")
_dpi(picture.info.get("dpi"), dpi)
_profile(picture.info.get("icc_profile"), space, srgb=(space == "RGB"))
if any(key in picture.info for key in ("exif", "comment", "prompt", "workflow", "xmp")):
raise ValueError("Private source metadata must not be copied into derivatives")Attempts and failures
A failure in the format. FLUX.2 snaps image sizes to a 16-pixel grid. The first size, 1024 × 1448, was silently cropped to 1024 × 1440, breaking the exhibition aspect ratio. The generation size was reset to 1008 × 1424, and the exporter was changed to fail, rather than crop or stretch, whenever the ratio is off by more than 0.5%.
The gap between passing and being a work. In a month, 187 drafts passed every check; one became a work. That is why the system always leaves the artist-approval field empty.
Three days, three changes of mind. The record survives of choosing a work for the Korea Society of Design Science autumn invitational, due at 4 p.m. on 30 October.
- As the Blind Came Down, One Foot Disappeared First, generated on the night of 28 October, was approved first, with Korean and English titles and statements settled. It starts from the Korean word bal, which names both a hanging blind and a foot.
- Other directions were compared. Of three photoreal drafts, The Room the Water Left was chosen (the review log noted smeared figure details in Evening at the Shared Cistern), and from a sheet of 27 photoreal and graphic drafts, Beside What Is Useful, a scene from the fictional city Numa.
- All candidates from August and September were compared again at full size, and Night Formed Between Two Days was picked for its sheer visual force. The Answer Was Never Automatic from the same period exists in a version rebuilt on 1 September because the 30 August draft's metaphor was too direct.
- Finally, everything made on the workstation was compared on several axes: pictorial force, difficulty, realism, sense of place, artistry and narrative. The Light That Climbed Before the Step, strongest in narrative, was judged "the best" and submitted early on 30 October.

Decision
The Light That Climbed Before the Step was generated at 09:45 on 20 October. The review questions written by its plan were checked one by one against the actual image.
Review questions
1. Can the apartment stairwell, the sensor light and the climbing figure
be identified concretely, without any lettering?
2. Around the raised foot, do the lit empty landing above and the shadow
stretching below form opposing movements in time?
3. Does a single indigo tone alone separate the depth of the stairs
from the reach of the light?
4. Is the stairwell composition distinct from recent drafts built on
close-ups of hands or on folding, opening and turning objects?
Grouped together, the works kept in the series fall into three strands.
- A trace seen before its cause: Where the Shadow Arrived First, The Light That Climbed Before the Step
- Concealment or erasure that builds the image: The Right to Remain Opaque, What Was Not Kept Makes the Image
- Things fading at different speeds: The Image Forgets at Different Speeds, When the Han River Remembers the Sea
Open questions
In this series an afterimage reads two ways: what stays in the image to the end, and what the artist kept from many generated results. The drafts not chosen are archived, not deleted. If choosing is itself the work, where in this series do the rejected drafts belong? The series is ongoing.





