ComfyUI 포즈 제어|SDPose·OpenPose와 깊이 조건 구별

ComfyUI 왕초보 가이드 27 / 29장 · 기준: ComfyUI 0.34.0 / 프런트엔드 1.49.6 · Windows x64 / NVIDIA RTX Portable. 다른 버전에서는 메뉴와 노드 표시가 다를 수 있습니다.

이 장의 실습 자료 ZIP 내려받기 (3.4MB)
JSON·입력 PNG·본문 원본 이미지를 담았습니다. 압축을 푼 뒤 본문에 적힌 파일을 선택하세요. 모델과 프로그램은 포함하지 않습니다. 본문의 WebP는 가벼운 표시용 사본이며, PNG의 작업 정보·투명도와 원본 픽셀 비교에는 ZIP 안의 PNG를 사용하세요.

참고 사진의 관절을 포즈 지도로 바꾸고, 양팔을 펼친 자세를 따라 새 옷의 인물을 생성합니다. 깊이는 포즈와 전달하는 정보가 어떻게 다른지 개념으로 살펴봅니다.

1. 만들 결과

16장 Canny는 옷과 얼굴의 윤곽선을 전달했습니다. 이번에는 관절 위치를 전달합니다. 참고 인물이 양팔을 옆 위로 펼친 자세와 발목 위치는 따라가되, 남색 상의는 주황색으로 바꿔 새 인물을 만듭니다.

① 참고 사진 · 양팔과 다리가 보이는 가상의 성인입니다.
① 참고 사진 · 양팔과 다리가 보이는 가상의 성인입니다. 그림을 누르면 큰 화면으로 열립니다.
② 실제 추출한 포즈 지도 · 어깨·팔꿈치·손목, 골반·무릎·발목을 색 선으로 연결했습니다.
② 실제 추출한 포즈 지도 · 어깨·팔꿈치·손목, 골반·무릎·발목을 색 선으로 연결했습니다. 그림을 누르면 큰 화면으로 열립니다.
③ 포즈 제어 1.0 · 팔을 펼친 자세를 따라 주황색 옷의 새 인물을 생성했습니다.
③ 포즈 제어 1.0 · 팔을 펼친 자세를 따라 주황색 옷의 새 인물을 생성했습니다. 그림을 누르면 큰 화면으로 열립니다.

포즈는 자세를 전달하는 조건입니다. 참고 인물의 얼굴·정체성·옷·손가락 모양을 그대로 복사하는 기능은 아닙니다. 이 실습은 사진을 부분 수정하는 인페인트가 아니라, 포즈 조건을 참고한 새 이미지 생성입니다.

설명용 흐름도
참고 사진 → SDPose가 관절 좌표 추출 → 포즈 지도를 PNG로 저장
포즈 PNG + SDXL용 포즈 ControlNet + 문장 → SDXL Base 생성 → 결과 PNG
용어쉬운 뜻·이 장의 예
포즈 · pose몸의 자세입니다. 예를 들어 양팔을 옆으로 펼치고 두 발로 서 있는 모습입니다.
포즈 지도 · pose map관절을 점, 관절 사이를 선으로 표시한 그림입니다. 선의 색은 관절 연결을 구별하는 표시이며 옷 색을 뜻하지 않습니다.
키포인트 · keypoint어깨·무릎처럼 기준이 되는 점의 위치입니다. POSE_KEYPOINT는 숫자 좌표 데이터, IMAGE는 눈으로 보는 그림 신호입니다.
전처리 · preprocessing생성에 넣기 좋게 입력을 먼저 바꾸는 작업입니다. 여기서는 사진 → 관절 좌표 → 포즈 지도를 만드는 과정입니다.
SDPose / OpenPoseSDPose는 이번에 사진에서 관절을 추출하는 모델입니다. 추출 결과를 OpenPose 형식의 색 선 지도로 그려, 그 형식을 받는 포즈 ControlNet에 넣습니다.
ControlNet strength포즈 조건을 생성에 반영하는 강도입니다. 관절 검출의 정확도나 품질 점수가 아닙니다. 16·17장의 제어 강도와 같은 역할입니다.
깊이 · depth카메라에서 가깝고 먼 관계입니다. 포즈의 관절 좌표와 다른 종류의 정보이며, 아래 선택 개념에서 차이를 살펴봅니다.

2. 준비물

기존 SDXL Base와 새 모델 두 개를 사용합니다. 이 가이드 기준 버전에는 SDPose Keypoint Extractor와 SDPose Draw Keypoints가 기본 노드로 들어 있어 별도 커스텀 노드 설치가 필요 없습니다.

모델공식 파일·다운로드 위치설치 폴더 안에 넣을 곳선택할 노드처음 사용
SDXL Base 1.0sd_xl_base_1.0.safetensorsComfyUI\models\checkpoints체크포인트 로드4장
SDXL용 포즈 ControlNetxinsir-openpose-sdxl-1.0.safetensorsComfyUI\models\controlnet컨트롤넷 모델 로드27장
관절 추출용 SDPosesdpose_wholebody_fp16.safetensorsComfyUI\models\checkpoints체크포인트 로드 → SDPose Keypoint Extractor27장
  1. 탐색기에서 목적지 폴더를 먼저 엽니다. 다른 창에서 받은 모델 파일을 복사해 목적지 창에 붙여 넣습니다. 파일을 복사한 뒤 경로 문자를 다시 복사하지 않습니다.
  2. ComfyUI에서 편집 → 노드 정의 새로고침 후 해당 로더에서 파일을 선택합니다. 목록이 갱신되지 않으면 현재 작업을 저장하고 F5로 새로고침합니다.
파일용도
ch27-extract.json (ZIP) A단계: 참고 사진에서 포즈 지도를 만드는 일반 워크플로
ch27-reference.png (ZIP) A단계 입력 사진. ComfyUI/input에 넣거나 LoadImage에서 업로드합니다.
ch27-pose.json (ZIP) B단계: 포즈 지도를 따라 새 이미지를 만드는 기본 워크플로
ch27-pose-map.png (ZIP) B단계 입력 지도. A단계에서 실제 추출한 결과와 같은 픽셀입니다.

JSON은 노드·연결·설정 파일이며 모델이나 사진 자체를 모두 포함하지 않습니다. 준비물 PNG 두 개는 ComfyUI/input에 넣습니다. 링크를 눌렀을 때 글이나 그림만 열리면 링크를 오른쪽 클릭 → 다른 이름으로 링크 저장을 사용하고 .json·.png 확장명을 유지합니다.

3. 따라 하기

A. 참고 사진에서 포즈 지도 만들기

  1. Ctrl+O로 ch27-extract.json을 엽니다. 관절을 읽을 참고 이미지 노드에서 ch27-reference.png를 선택합니다. 목록에 없으면 업로드할 파일 선택으로 받은 사진을 지정합니다.
  2. 관절 추출 전용 · SDPose 로더에서 sdpose_wholebody_fp16.safetensors를 선택합니다. 이 로더의 MODEL과 VAE는 이미지 → 관절 좌표에 연결되어 있습니다. SDXL Base를 이 칸에 선택하지 않습니다.
  3. 이미지 → 관절 좌표의 batch_size는 1입니다. 이번에는 사람 한 명이 화면 전체에 있어 bboxes(사람별 사각형 범위) 입력은 비워 둡니다.
  4. 관절 좌표 → 몸통 포즈 지도에서 draw_body·draw_head는 true, draw_hands·draw_face·draw_feet는 false, stick_width는 8, score_threshold는 0.3을 유지합니다. 손목·발목까지의 몸 관절을 사용하고 손가락·발가락·얼굴의 촘촘한 점은 생략한 구성입니다.
  5. 상단 배치 수 1에서 실행을 누릅니다. 포즈 지도 저장에 검은 바탕과 색 선이 나오면 참고 사진의 관절 위치와 대조합니다. 양팔이 위쪽으로 펼쳐지고, 무릎과 발목이 같은 쪽에 있어야 합니다.
  6. 지도는 ComfyUI/output/guide/ch27_extract_…png에 저장됩니다. 다음 단계에서는 이 파일을 LoadImage에 업로드하거나, 같은 추출 결과인 첨부 ch27-pose-map.png를 사용합니다. 이미지 크기는 1024×1024입니다.
지도에서 볼 곳왜 보는가
어깨 → 팔꿈치 → 손목팔이 꺾이는 방향과 끝나는 위치가 사진과 맞는지 봅니다. 팔을 몸 뒤로 숨긴 사진은 시작 예제로 피합니다.
골반 → 무릎 → 발목좌우가 바뀌거나 다리가 다른 사람에게 연결되지 않았는지 봅니다.
목·머리 위치얼굴 세부 점을 꺼도 머리의 기준점은 남아 있습니다. 손이나 배경을 머리로 잘못 읽지 않았는지 봅니다.
포즈 지도의 의미몸통은 실제 몸의 테두리가 아니라 관절 사이의 연결선입니다. 가슴·허리 폭을 그대로 나타내는 선이 아닙니다.
A단계 JSON의 노드·설정·연결
설정할 노드입력값
관절을 읽을 참고 이미지 · 입력 사진입력 파일 = ch27-reference.png
관절 추출 전용 · SDPose체크포인트 = sdpose_wholebody_fp16.safetensors
이미지 → 관절 좌표batch_size = 1
관절 좌표 → 몸통 포즈 지도draw_body = true
draw_hands = false
draw_face = false
draw_feet = false
stick_width = 8
face_point_size = 3
score_threshold = 0.3
draw_head = true
포즈 지도 저장 · ch27_extract파일명 접두사 = guide/ch27_extract
현재 작업의 노드·연결 목록 · 노드 5개와 연결 5개

제공 JSON에 이미 들어 있는 노드와 연결입니다. 실수로 선을 바꿨을 때 이 목록과 대조하세요. 이름이 같은 노드는 역할·파일명으로 구별합니다.

노드 역할검색할 기술 이름
관절을 읽을 참고 이미지 · 입력 사진LoadImage
관절 추출 전용 · SDPoseCheckpointLoaderSimple
이미지 → 관절 좌표SDPoseKeypointExtractor
관절 좌표 → 몸통 포즈 지도SDPoseDrawKeypoints
포즈 지도 저장 · ch27_extractSaveImage
순서출발 출력도착 입력
1관절 추출 전용 · SDPose
모델 →
이미지 → 관절 좌표
모델
2관절 추출 전용 · SDPose
VAE →
이미지 → 관절 좌표
vae
3관절을 읽을 참고 이미지 · 입력 사진
이미지 →
이미지 → 관절 좌표
이미지
4이미지 → 관절 좌표
keypoints →
관절 좌표 → 몸통 포즈 지도
keypoints
5관절 좌표 → 몸통 포즈 지도
이미지 →
포즈 지도 저장 · ch27_extract
이미지

B. 같은 자세로 새 옷의 인물 생성하기

  1. Ctrl+O로 ch27-pose.json을 엽니다. 추출한 포즈 지도 노드에서 ch27-pose-map.png를 선택합니다. A단계에서 만든 PNG를 직접 쓸 때는 이 노드의 업로드 버튼으로 ch27_extract_…png를 지정합니다. 여기에 원래 인물 사진을 넣지 않습니다.
  2. SDXL용 포즈 ControlNet은 xinsir-openpose-sdxl-1.0.safetensors, 그림 생성용 · SDXL Base는 sd_xl_base_1.0.safetensors를 선택합니다.
  3. 새 옷·장면 · 긍정은 주황색 긴팔 상의·회색 운동 바지·흰 운동화를 입은 성인 한 명을 설명합니다. 팔을 펼치라는 문장은 넣지 않았습니다. 기본 실습에서는 문장을 유지해 포즈 지도의 영향을 봅니다.
  4. 자세 반영 · strength는 1.0, start_percent는 0.0, end_percent는 1.0으로 둡니다. 포즈 조건을 생성의 처음부터 끝까지 사용합니다.
  5. 포즈 지도와 같은 비율의 width·height는 모두 1024, batch_size는 1입니다. 포즈를 따르는 새 이미지의 seed 2026102702, 생성 후 제어 fixed, steps 30, CFG 5, dpmpp_2m·karras, denoise 1.0을 유지합니다.
  6. 실행을 한 번 누르고 포즈 제어 결과 저장에 이미지가 나올 때까지 기다립니다. ComfyUI/output/guide/ch27_pose_…png에서 주황색 상의와 팔·다리 자세를 확인합니다.
실제 ComfyUI 화면 · 포즈 지도와 ControlNet을 사용한 생성 작업입니다.
실제 ComfyUI 화면 · 포즈 지도와 ControlNet을 사용한 생성 작업입니다. 그림을 누르면 큰 화면으로 열립니다.
핵심 연결역할
SDPose MODEL·VAE + 참고 IMAGE → SDPoseKeypointExtractor사진에서 관절 좌표를 찾습니다. 이 모델은 포즈를 읽는 A단계에서만 씁니다.
POSE_KEYPOINT → SDPoseDrawKeypoints → SaveImage숫자 좌표를 검은 바탕의 색 선 PNG로 바꿉니다.
포즈 지도 IMAGE + 포즈 CONTROL_NET → ControlNetApplyAdvanced어떤 자세를 참고할지 생성 조건에 넣습니다.
긍정·부정 CLIPTextEncode → ControlNetApplyAdvanced → KSampler제어를 거친 긍정과 부정 두 출력을 KSampler에 연결합니다. 문장 노드에서 KSampler로 바로 연결하면 포즈 조건을 우회합니다.
SDXL MODEL + 빈 LATENT → KSampler → VAEDecode새 인물을 생성하고 SDXL 로더의 VAE로 이미지로 바꿉니다. SDPose 로더의 MODEL·VAE를 B단계에 섞지 않습니다.
B단계 JSON의 전체 프롬프트·설정·연결
설정할 노드입력값
추출한 포즈 지도 · 입력 사진입력 파일 = ch27-pose-map.png
SDXL용 포즈 ControlNet제어 모델 = xinsir-openpose-sdxl-1.0.safetensors
그림 생성용 · SDXL Base체크포인트 = sd_xl_base_1.0.safetensors
자세 반영 · strength강도 = 1.0
시작 = 0.0
종료 = 1.0
포즈 지도와 같은 비율 · 1024×1024너비 = 1024
높이 = 1024
배치 크기 = 1
포즈를 따르는 새 이미지seed = 2026102702
생성 후 제어 = fixed
steps = 30
CFG = 5.0
sampler = dpmpp_2m
scheduler = karras
denoise = 1.0
포즈 제어 결과 저장 · ch27_pose파일명 접두사 = guide/ch27_pose
입력할 프롬프트 전문

새 옷·장면 · 긍정

full body studio photograph of one adult woman, front view, standing, wearing a plain orange long sleeve sweatshirt, gray sports trousers and white sneakers, entire body visible from head to shoes, centered, simple light gray background, soft even lighting, realistic anatomy

피할 표현 · 부정

text, watermark, logo, multiple people, extra arms, extra legs, extra fingers, fused limbs, malformed hands, deformed anatomy, cropped head, cropped feet, out of frame, blurry, low quality
현재 작업의 노드·연결 목록 · 노드 10개와 연결 13개

제공 JSON에 이미 들어 있는 노드와 연결입니다. 실수로 선을 바꿨을 때 이 목록과 대조하세요. 이름이 같은 노드는 역할·파일명으로 구별합니다.

노드 역할검색할 기술 이름
추출한 포즈 지도 · 입력 사진LoadImage
SDXL용 포즈 ControlNetControlNetLoader
그림 생성용 · SDXL BaseCheckpointLoaderSimple
새 옷·장면 · 긍정CLIPTextEncode
피할 표현 · 부정CLIPTextEncode
자세 반영 · strengthControlNetApplyAdvanced
포즈 지도와 같은 비율 · 1024×1024EmptyLatentImage
포즈를 따르는 새 이미지KSampler
완성 이미지 복원VAEDecode
포즈 제어 결과 저장 · ch27_poseSaveImage
순서출발 출력도착 입력
1그림 생성용 · SDXL Base
CLIP →
새 옷·장면 · 긍정
clip
2그림 생성용 · SDXL Base
CLIP →
피할 표현 · 부정
clip
3새 옷·장면 · 긍정
조건 →
자세 반영 · strength
긍정
4피할 표현 · 부정
조건 →
자세 반영 · strength
부정
5SDXL용 포즈 ControlNet
컨트롤넷 →
자세 반영 · strength
컨트롤넷
6추출한 포즈 지도 · 입력 사진
이미지 →
자세 반영 · strength
이미지
7그림 생성용 · SDXL Base
모델 →
포즈를 따르는 새 이미지
모델
8자세 반영 · strength
긍정 →
포즈를 따르는 새 이미지
긍정
9자세 반영 · strength
부정 →
포즈를 따르는 새 이미지
부정
10포즈 지도와 같은 비율 · 1024×1024
잠재 데이터 →
포즈를 따르는 새 이미지
잠재 입력
11포즈를 따르는 새 이미지
잠재 데이터 →
완성 이미지 복원
잠재 데이터
12그림 생성용 · SDXL Base
VAE →
완성 이미지 복원
vae
13완성 이미지 복원
이미지 →
포즈 제어 결과 저장 · ch27_pose
이미지

C. 자세가 따라왔는지 확인하기

사진과 지도를 같은 크기로 놓고 손목 높이 → 팔꿈치 방향 → 어깨 높이 → 무릎·발목 위치 순서로 봅니다. 옷 색만 바뀌었다고 포즈 제어에 성공한 것은 아닙니다. 반대로 얼굴이 달라진 것은 이 실습의 실패 기준이 아닙니다. 같은 사람을 보존하는 설정을 사용하지 않았기 때문입니다.

목표 지도 · 양팔이 옆 위로 향하고 두 다리는 아래로 뻗어 있습니다.
목표 지도 · 양팔이 옆 위로 향하고 두 다리는 아래로 뻗어 있습니다. 그림을 누르면 큰 화면으로 열립니다.
기본 결과 · 주요 관절의 위치와 팔을 펼친 방향을 확인합니다.
기본 결과 · 주요 관절의 위치와 팔을 펼친 방향을 확인합니다. 그림을 누르면 큰 화면으로 열립니다.

원본 포즈 지도와 결과 PNG: 포즈 지도 (ZIP) · 기본 생성 결과 (ZIP) . 선과 살의 테두리가 정확히 겹칠 필요는 없지만, 어깨·팔꿈치·손목의 방향은 같은 자세로 읽혀야 합니다. 몸 관절만으로 손가락 모양과 얼굴 세부까지 정확하게 지정할 수는 없습니다.

선택 실습 · 같은 조건에서 포즈 제어 끄고 비교하기

제어 0 비교용 JSON (ZIP) 을 열어 같은 포즈 PNG·모델을 선택하고 실행합니다. 기본과 비교 파일은 ControlNet strength와 저장 접두사만 다르고, 문장·seed·생성 설정·연결은 같습니다. 0은 지도를 전달하지 않는 대조군입니다.

제어 0 · 같은 문장·seed에서도 목표 포즈에 묶이지 않은 결과입니다.
제어 0 · 같은 문장·seed에서도 목표 포즈에 묶이지 않은 결과입니다. 그림을 누르면 큰 화면으로 열립니다.
제어 1.0 · 포즈 지도 쪽 자세를 따라갑니다.
제어 1.0 · 포즈 지도 쪽 자세를 따라갑니다. 그림을 누르면 큰 화면으로 열립니다.

비교할 때는 양쪽 손목이 어디까지 올라갔는지부터 보세요. 이 대조는 포즈 조건이 전달됐는지 알아보는 실험입니다. 제어 0 이미지를 실패한 기본 결과로 배포하지 않았습니다. 기본 실습으로 돌아갈 때는 ch27-pose.json을 다시 엽니다. 제어 0 전체 PNG (ZIP)

선택 개념 · Canny, 포즈, 깊이는 무엇을 다르게 전달하나요?
조건전달하는 정보잘 맞는 용도
Canny 윤곽밝기가 급격히 바뀌는 경계선. 옷 주름이나 배경 선도 들어갈 수 있습니다.컵 테두리·얼굴 방향처럼 선으로 드러나는 형태 참고
포즈 지도사람의 관절 위치와 연결. 옷 색·재질·배경 표면은 대부분 빠집니다.같은 몸짓에 다른 옷이나 화풍을 적용
깊이 지도이미지 안의 가까움·멀어짐을 나타내는 상대적인 값. 사람뿐 아니라 물체·배경의 면도 담을 수 있습니다.앞의 사람과 뒤의 벽, 탁자 위 물체의 공간 배치 참고

예: 팔을 카메라 쪽으로 뻗으면 2D 포즈 지도에서는 팔꿈치와 손목이 가까이 겹칠 수 있습니다. 깊이 지도는 손이 몸통보다 앞에 있다는 구조를 추가로 표현할 수 있습니다. 다만 한 장에서 추정한 깊이는 실제 센티미터 거리와 같다고 볼 수 없습니다.

깊이 지도는 보통 밝고 어두운 값으로 보여 주지만 밝은 쪽이 가까운지 먼지는 전처리와 모델 규약에 따라 확인해야 합니다. 사진을 흑백으로 바꾼다고 깊이 지도가 되지 않습니다. 그림의 검은 옷이 반드시 먼 물체인 것도 아닙니다.

실제로 깊이 조건을 생성에 사용하려면 깊이를 추정하는 전처리와 SDXL에 맞는 깊이 제어 모델을 짝지어야 합니다. 포즈 ControlNet에 깊이 지도를 넣는 것은 이 장의 검증된 조합이 아닙니다. 여기서는 세 조건의 차이를 이해하고, 기본 실습은 포즈 제어 한 가지로 완성합니다.

D. 다른 사진으로 다시 사용할 때

  1. A단계 JSON에서 참고 사진을 바꿉니다. 먼저 사람 한 명의 손목·발목이 잘 보이고 몸이 잘리지 않은 사진을 고릅니다. 여러 명이 있거나 겹친 장면은 이번 기본 구성의 범위가 아닙니다.
  2. 추출한 지도를 원본과 대조합니다. 팔이 잘못 연결되거나 한쪽 다리가 사라졌다면 생성 강도를 올리지 말고 사진 선택·관절 추출부터 바로잡습니다.
  3. B단계의 LoadImage를 새 지도 PNG로 바꿉니다. 출력 비율을 지도와 맞추고, 원하는 옷·장면을 문장에 적습니다. 지도와 반대되는 자세를 동시에 요구하지 않습니다.
  4. 선택한 값을 그래프 → 내보내기로 일반 JSON에 보관합니다. 참고 사진과 실제 사용할 포즈 PNG도 함께 보관합니다. PNG 지도만 있으면 다음 생성 때 SDPose 추출을 매번 반복할 필요는 없습니다.

4. 정상 결과 확인

확인할 것완성 기준
전처리 성공1024×1024 지도에 한 사람의 주요 관절이 있고 참고 사진의 팔·다리 방향과 맞습니다. 검은 이미지 파일만 저장됐다고 성공 처리하지 않습니다.
제어 전달새 결과의 양팔이 지도처럼 옆 위로 펼쳐지고, 무릎·발목 위치가 같은 자세로 읽힙니다.
새 문장 반영남색 참고 상의와 달리 주황색 상의가 나타납니다. 참고 사진의 색상을 그대로 복사할 필요는 없습니다.
인물·경계사람이 한 명이고 머리·손·발이 화면 안에 있습니다. 여분의 팔·다리, 몸과 분리된 손, 부자연스러운 접힘이 없는지 봅니다.
보존 범위얼굴 동일성·정확한 손가락·옷 주름을 고정한 작업이 아닙니다. 주요 관절 위치가 목표와 맞는지를 먼저 판단합니다.

5. 자주 생기는 문제

증상확인할 곳·해결
SDPose 노드가 없어요이 장은 기준 버전에 포함된 SDPoseKeypointExtractor·SDPoseDrawKeypoints를 사용합니다. 모델 파일만 넣어도 노드가 생기는 것은 아닙니다. 기존 버전의 기능을 확인하고, 우선 제공 포즈 PNG와 B단계 JSON으로 기본 생성은 이어갈 수 있습니다.
heatmap_head 관련 오류가 나요A단계 로더에 SDXL Base를 선택했는지 봅니다. 관절 추출에는 sdpose_wholebody_fp16.safetensors가 필요합니다.
모델 목록에 파일이 없어요SDPose와 SDXL Base는 models/checkpoints, 포즈 ControlNet은 models/controlnet입니다. 파일 이름·폴더를 확인하고 노드 정의를 새로고침합니다.
지도가 검거나 관절이 빠져요사람이 너무 작거나 가려져 있을 수 있습니다. 한 명의 전신이 잘 보이는 입력으로 시작하고 draw_body가 true인지 봅니다. score_threshold를 낮추면 잘못 추정한 점도 나타날 수 있어 무조건 낮추지 않습니다.
포즈와 전혀 다른 자세가 나와요LoadImage에 인물 사진 대신 색 선 지도 PNG를 넣었는지, strength가 0인지 봅니다. KSampler의 긍정·부정이 ControlNetApplyAdvanced 출력을 거치는지도 확인합니다.
팔이 찌그러지거나 가로로 늘어나요지도와 생성 크기의 비율을 맞춥니다. 기본은 둘 다 1024×1024입니다. 복잡한 겹침이나 잘못 추출된 점은 먼저 입력 단계에서 수정합니다.
손가락이나 얼굴이 원본과 달라요기본 지도는 손목까지의 몸 관절을 제어하고 세밀한 손·얼굴 점을 사용하지 않습니다. 포즈 제어와 얼굴 보정은 다른 목표입니다. 얼굴만 다듬을 필요가 있으면 24장의 보정 판단을 참고합니다.
강도를 더 높이면 항상 정확해지나요?그렇지 않습니다. 잘못된 지도나 서로 충돌하는 조건도 더 강하게 반영될 수 있습니다. 먼저 지도·연결·호환성을 보고, 그다음 17장처럼 strength 또는 적용 구간을 하나씩 바꿉니다.
SD1.5용 openpose 파일을 써도 되나요?이 실습은 SDXL Base와 SDXL용 포즈 ControlNet 조합입니다. openpose라는 이름이 같아도 SD1.5용 파일로 바꾸지 않습니다.
GPU 메모리가 부족해요배치 수 1에서 시작하고 다른 GPU 작업을 정리합니다. A단계에서 포즈 PNG를 만든 뒤 B단계로 나눠 진행하세요. 크기를 줄이면 지도와 출력의 비율을 함께 맞추고 결과를 다시 판단합니다.
공식 참고 자료

xinsir · SDXL용 포즈 ControlNet · Comfy-Org · SDPose 배포 · ComfyUI · SDPose 노드 구현. 이 장의 메뉴·설정과 결과는 가이드 기준의 설치된 노드로 구성했습니다.

준비 단계에서 PC 정보가 헷갈린다면 GPU·메모리 등 내 컴퓨터 사양 확인 방법을 함께 참고하세요. 이 장의 결과와 작업 JSON을 보관한 뒤 다음 실습으로 넘어가면 다시 비교하기 쉽습니다.