피파 한 줄 정리: ControlNet은 선·깊이·자세·스케치 같은 구조 조건을 프롬프트에 더해, 말로는 모호한 공간 배치를 시각적으로 지정해.
머릿속 모형: 영화감독이 대역 배우의 팔을 들고 고개를 기울여 한 발 앞으로 내딛는 정확한 자세를 만든 뒤 실루엣을 찍는다고 하자. 화가에게 그 실루엣을 주며 “이 자세 그대로 숲속의 중세 기사로 그려”라고 한다. 실루엣은 구조를, 문장은 내용을 정한다. ControlNet이 하는 일이야.
텍스트 옆에 구조 조건 더하기
텍스트는 무엇을 그릴지는 잘 전달하지만 정확히 어디에 어떤 모양으로 놓을지는 모호하다. ControlNet은 생성 과정에 명시적인 시각 안내를 추가해 사물의 위치와 형태를 지정한다. 모델은 구조를 따라가면서 문장이 정한 대상과 스타일을 입힌다.
구조 신호의 종류
제어 종류 담는 정보 알맞은 용도 ────────────────────────────────────────────────────────────── Canny Edge 가장자리와 윤곽 날카로운 형태 고정 Depth Map 카메라와의 거리 3차원 공간 배치 Pose (OpenPose) 뼈대와 관절 위치 사람의 자세 Normal Map 표면의 방향 조명과 맞는 표면 Segmentation 의미별 영역 하늘·땅·건물 장면 배치 Scribble/Sketch 거친 손그림 안내 빠른 구도 초안 Lineart 깨끗한 선화 삽화와 만화
작동 원리의 큰 그림
ControlNet은 주 확산 모델을 따라가는 병렬 신경망처럼 작동한다. 구조 이미지를 처리해 특징 맵을 만들고, 매 노이즈 제거 단계마다 주 모델에 주입한다. 결과적으로 세 신호가 동시에 작용한다.
- 텍스트 프롬프트: 장면이 무엇인지 정한다.
- 제어 신호: 어디에 어떤 구조로 놓을지 정한다.
- 무작위 노이즈: 구체적인 시각 해석의 변주를 만든다.
제어 강도
- 낮음 0.2–0.4: 구조 이미지는 제안에 가깝고 모델이 미적으로 벗어날 수 있다.
- 중간 0.5–0.7: 구조를 분명히 따르면서 자연스럽게 해석할 여지를 남긴다.
- 높음 0.8–1.0: 신호를 엄격히 따르지만, 입력 구조가 어설프면 결과도 뻣뻣하거나 부자연스러울 수 있다.
핵심 정리
- 텍스트 조건 옆에 가장자리, 깊이, 자세 같은 구조 조건을 추가한다.
- 윤곽은 형태, 깊이는 3차원 배치, 포즈는 몸의 위치를 제어한다.
- 강도는 구조 충실도와 창의적 자유 사이의 균형을 정한다.
- 여러 제어 신호를 겹쳐 여러 축을 동시에 고정할 수 있다.
- 공간 정밀도에는 프롬프트를 쉰 번 고치는 것보다 거친 구조 그림 하나가 낫다.