동작 AI · 5-5 · 최종 미션

"춤춰"에서 춤 영상으로 — 프롬프트가 조수의 춤이 되기까지

CCTV 골목의 막대 인형에서 시작한 미션의 마지막이다. "춤춰" 두 글자가 단어 주머니를 지나 막대 인형의 춤이 되고, 그 춤이 포즈 맵이 되어 조수의 모습을 입는다. 실제 영상을 프레임 단위로 열어 보고, 화면에 떠 있는 "동작 일치율 76.5%"가 무엇을 말하고 무엇을 말하지 않는지 따져 본다.

6단계"춤춰"에서 영상까지의 파이프라인
240프레임분석한 영상 (1280×720, 초당 24, 10초)
76.5%영상에 표시된 일치율 (240프레임 내내 같은 값)
−0.92초조수가 막대 인형보다 먼저 움직이는 어긋남 (코드 2)
77.6%같은 춤을 1초 늦게 따라 춘 관절 거리 점수 (코드 1)
100%어긋남만큼 시간을 맞춘 뒤의 점수 (코드 1)
1미션

최종 지령 — "춤춰 한 마디로 조수를 춤추게 하라"

5-4까지 막대 인형은 말을 알아듣고 춤을 췄다. 하지만 아직 뼈대뿐이다. 마지막 미션은 이 뼈대에 사람의 모습을 입혀 영상으로 만드는 것이다. 모델이 될 사람은 조수다.

[SYSTEM] 07:30 · 5-4 완료 보고 접수. 최종 지령: 프롬프트 → 춤 영상. 첨부: 조수 참조 이미지, 영상 한 편(10초), 컷 시트 두 장.
박사
박사조수 사진 한 장이 외모를, 막대 인형의 춤이 동작을 맡는다. 둘을 조건으로 영상 생성 모델이 프레임마다 조수를 새로 그리는 거야.
조수
조수영상을 보니 저는 아이돌 옷을 입고 있네요? 참조 이미지에서는 실험복인데… 그리고 화면에 "동작 일치율 76.5%"라고 떠 있어요. 이건 잘한 거예요, 못한 거예요?
초파리 연구원
초파리 연구원좋은 질문! 그 숫자가 어떻게 계산됐는지부터 확인해야 해. 영상을 프레임 단위로 뜯어보자. 그리고 우리가 직접 일치율을 재 보자.
연구실 로봇영상 240프레임 분석을 마쳤습니다. 숫자 칸은 처음부터 끝까지 한 번도 바뀌지 않았습니다.
분홍 머리에 남색 앞머리 줄, 양쪽 머리 경단, 흰 실험복과 연보라 후드, 청바지에 연보라 운동화를 신은 조수의 정면 전신
조수의 참조 이미지(캐릭터 시트 정면). 영상 속 의상과 다르다는 점은 섹션 3에서 다룬다.
2한 줄로

"춤춰"에서 영상까지 — 여섯 단계를 한 줄로

칸을 누르면 그 단계를 설명한다. 1~4단계는 이 시리즈에서 직접 만든 계산이고, 5~6단계는 주어진 영상이 보여 준다.

단계들어가는 것나오는 것이 시리즈의 편
1~2 말 깔때기"춤춰"공유 지도의 점 하나 (8칸)5-4 섹션 2·3
3 동작 생성지도의 점막대 인형 동작 (프레임 × 관절 13개)5-3 섹션 6, 5-4 섹션 5
4 포즈 맵관절 좌표검은 바탕의 색 막대 그림 (프레임마다)5-1 섹션 3의 반대 방향
5 포즈 기반 생성참조 이미지 + 포즈 맵조수가 그 자세를 한 프레임이 편 섹션 3
6 영상프레임들춤 영상이 편 섹션 4
3조수 그리기

포즈 맵에 조수를 입힌다 — 노이즈에서 프레임 꺼내기

포즈 기반 영상 생성 모델은 대부분 확산 모델이다. 무작위 노이즈에서 시작해 단계마다 조금씩 걷어 내며, "외모는 참조 이미지처럼, 자세는 포즈 맵처럼"이라는 두 조건을 참고한다. 막대를 옮겨 노이즈를 걷어 보자.

외모 인코더참조 이미지의 얼굴·머리·옷 특징을 뽑아, 그리는 동안 계속 참고하게 한다(ReferenceNet류)
포즈 가이더포즈 맵을 작은 합성곱 신경망으로 접어 노이즈 위에 더한다. "이 자리에 팔"이 처음부터 정해진다
시간 층앞뒤 프레임을 서로 참고하게 해 옷 색·머리카락이 깜빡이지 않게 한다

이 그림과 실제 생성의 차이

이 화면은 완성된 프레임(영상 속 조수)에 노이즈를 비율대로 섞어 "단계마다 남은 원래 신호의 몫"을 보여 준 것이다(√ᾱ 계산은 실제 확산 모델의 일정표를 따랐다). 실제 모델은 이미지를 작게 접은 잠재 공간에서 노이즈를 다루고, 단계마다 "여기서 노이즈는 이만큼"을 예측해 뺀다 [R1]. 참조 이미지와 포즈로 사람을 움직이는 구조는 Animate Anyone [R2] 계열이 대표적이다. 주어진 영상이 어떤 모델과 설정으로 만들어졌는지는 영상에 표기되어 있지 않다.

참조 이미지의 조수는 실험복을 입었지만 영상 속 조수는 아이돌 의상이다. 포즈 기반 생성은 참조 이미지의 외모를 그대로 옮기는 것이 원칙이므로, 영상은 아이돌 의상을 입은 다른 참조 이미지(예: 아래 "조수 솔로 12컷"과 같은 모습)로 만들었거나 글 프롬프트로 의상을 바꿨을 가능성이 있다. 어느 쪽인지는 영상만으로 알 수 없다.
아이돌 의상을 입은 조수가 혼자 춤추는 12컷: 손 흔들기, 가슴에 손 모으기, 한 바퀴 돌기, 뒷모습, 무릎 들기 등
조수 솔로 12컷. 영상 속 조수와 같은 의상이다.
4영상

영상 열어 보기 — 막대 인형 5초, 조수 5초

영상은 두 춤을 나란히가 아니라 앞뒤로 이어 붙였다(0~4.96초 막대 인형, 4.96~10초 조수). "나란히 보기"를 누르면 같은 파일을 두 화면에 띄워 같은 순간끼리 맞대 본다. 오른쪽 화면의 어긋남을 옮겨 두 춤이 맞는 순간을 찾아보자.

원본 그대로 (10초)
컷 시트 · 막대 인형 (컷 위치는 5초를 12칸으로 나눈 근사값, 누르면 그 순간으로)
1번째 컷 11번째 컷 21번째 컷 31번째 컷 41번째 컷 51번째 컷 61번째 컷 71번째 컷 81번째 컷 91번째 컷 101번째 컷 111번째 컷 12
컷 시트 · 조수
2번째 컷 12번째 컷 22번째 컷 32번째 컷 42번째 컷 52번째 컷 62번째 컷 72번째 컷 82번째 컷 92번째 컷 102번째 컷 112번째 컷 12
속도
보기

처음에는 소리가 꺼져 있다. "소리 켜기"로 음악을 들을 수 있다. 나란히 보기에서 어긋남을 0.9초 근처로 옮겨 보자.

4.96초장면이 바뀌는 곳 (119번 프레임, 코드 2)
−0.92초움직임 크기의 상관이 가장 큰 어긋남: 조수가 먼저 움직인다 (코드 2, 상관 0.48)
좌우 반전막대 인형은 화면 오른쪽을, 조수는 화면 왼쪽을 가리킨다 (컷 시트 7~8번과 4~5번)
음악 있음AAC 스테레오. 그림과 별개로 소리도 들어 있다
5일치율

"동작 일치율 76.5%"를 따져 보기

먼저 영상 속 숫자가 무엇인지 확인하고, 그다음 일치율을 직접 재 본다. 같은 춤도 어떻게 재느냐에 따라 숫자가 크게 달라진다.

확인한 것 (코드 2)결과뜻
숫자 칸이 프레임마다 바뀌나첫 프레임과의 픽셀 차이 최대 0.07240프레임 내내 76.5% 그대로다. 프레임마다 다시 계산한 값이 아니다
앞 장면과 뒤 장면의 일치율 상자같은 시각끼리 평균 차이 0.16같은 오버레이를 두 장면에 한 번씩 재생했다. 아래 분홍 막대의 출렁임도 장식이다
계산 방식 표기없음무엇과 무엇을, 어떤 점수로 비교했는지 영상만으로는 알 수 없다

직접 재 보기 — 같은 안무, 다른 타이밍 (설명용 계산)

왼쪽은 5초 안무(손 흔들기 → 가리키기 → 팔 벌리고 무릎 → 두 팔 들기), 오른쪽은 같은 안무를 늦게 따라 추는 춤이다. 관절 거리 점수는 골반을 맞춘 뒤 관절마다 exp(−거리²/2·0.1²)의 평균, 팔다리 방향 점수는 뼈 8개 방향의 코사인 유사도 평균이다.

점수에 따라 바뀌는 조수의 표정
따라 추는 쪽의 늦음1.00초

코드 1의 결과

상황관절 거리 점수팔다리 방향 점수
같은 춤, 같은 시각100.0%100.0%
0.33초 늦게 따라 춤90.8%96.4%
1.0초 늦게 따라 춤77.6%87.8%
좌우가 뒤집힌 춤82.5%88.6%
1.0초 늦고 좌우도 뒤집힘78.7%86.5%
1.0초 늦은 춤을 15프레임 앞당겨 맞춤100.0%—
동적 시간 와핑(DTW)으로 맞춤99.6%—
좌우까지 뒤집힌 춤: 시간만 맞춤 / 좌우도 되돌림79.6% / 100.0%—

76.5%를 읽는 법

  1. 같은 춤도 1초 늦으면 77.6%가 된다. 코드 1의 예다. 영상 속 두 춤은 약 0.9초 어긋나 있고 좌우도 뒤집혀 있다. 76.5%가 이런 어긋남을 그대로 잰 숫자일 수도 있지만, 계산 방식이 표기되지 않아 확인할 수 없다.
  2. 점수 종류에 따라 숫자가 다르다. 같은 1초 늦음이 관절 거리로는 77.6%, 팔다리 방향으로는 87.8%다. 일치율을 말할 때는 무엇을 비교했는지를 함께 밝혀야 한다.
  3. 시간을 맞추면 달라진다. 어긋남을 찾아 맞추거나 동적 시간 와핑을 쓰면 같은 춤은 100%에 가까워진다. "춤을 잘 따라 했나"와 "같은 순간에 같은 자세였나"는 다른 질문이다.
6정리

막대 인형이 걸어온 길 — 미션 다섯 개를 한 장으로

CCTV 골목의 막대 인형 하나가 특징이 되고, 생성의 재료가 되고, 접혔다 펼쳐지고, 말과 짝을 지어, 마지막에 조수의 춤이 되었다. 카드를 누르면 그 편으로 간다.

시리즈를 꿰는 한 문장
  • 모든 것은 숫자다: CCTV 화면도, 관절도, 문장도 숫자로 바꾼 뒤에야 계산할 수 있다.
  • 좋은 표현이 절반이다: 특징 4개(5-1), 각도(5-2), 잠재 16개(5-3), 공유 지도(5-4)처럼 무엇으로 나타내느냐가 성능을 가른다.
  • 알아보기와 만들기는 같은 숫자를 다른 방향으로 쓴다: 투기를 잡던 막대 인형이 춤의 뼈대가 되었다.
끝까지 남는 질문
  • 숫자를 믿기 전에: 99.7%는 합성 데이터의 결과였고, 76.5%는 계산 방식이 표기되지 않았다. 숫자 옆에는 늘 "무엇을, 어떻게"가 있어야 한다.
  • 사람의 몫: 투기 판정의 최종 확인(5-1), 실존 인물 동작과 외모의 사용 동의(5-2·5-5)는 사람이 책임진다.

Colab 코드 — 이 페이지를 직접 실행해 보기

두 코드 모두 Colab에 기본으로 설치된 라이브러리만 쓴다. "노트북(.ipynb) 내려받기" 후 Colab에서 파일 → 노트북 업로드로 열거나, 복사해서 새 노트북 칸에 붙여 넣는다.

코드 1 · 동작 일치율은 어떻게 재나섹션 5와 연결 · numpy · CPU 약 5초

5초 안무를 만들고, 늦게 따라 추거나 좌우를 뒤집은 춤과 두 가지 점수로 비교한다. 시간 맞추기와 동적 시간 와핑(DTW)도 들어 있다. 내 데이터로 바꾸려면 dance_seq 대신 두 영상에서 포즈 추정으로 뽑은 관절 좌표(프레임, 13, 2)를 A와 B에 넣는다.

실행 결과 (2026-10-05 실행, numpy 2.4 · CPU). 난수를 쓰지 않아 언제 실행해도 같다.
코드 2 · 영상을 숫자로 뜯어보기 (OpenCV)섹션 4·5와 연결 · numpy, OpenCV · CPU 약 3초 · 영상 파일 필요

영상의 해상도·길이, 장면 전환, 일치율 숫자 칸의 변화, 두 장면의 시간 어긋남을 잰다. 섹션 4·5의 영상 분석 숫자가 여기서 나왔다. 영상 파일은 이 페이지에 들어 있는 것과 같은 match_score_video.mp4를 Colab에 올려 쓴다.

실행 결과 (2026-10-05 실행, numpy 2.4 · OpenCV 4.13 · CPU). 같은 영상이면 언제 실행해도 같다.

AI 응용 프롬프트 — 이 코드를 출발점으로 삼기

ChatGPT, Qwen, Claude 같은 AI 도우미에 붙여 넣는 프롬프트다. "복사"를 누르면 프롬프트 뒤에 고른 코드가 함께 붙는다. 〔 〕 안을 내 상황으로 바꿔 쓰면 된다.

함께 붙일 코드

AI의 답은 출발점일 뿐이다. 제안된 논문·수치·라이브러리 함수는 반드시 원문과 공식 문서로 확인한다. 실제 사람이 나오는 영상을 쓸 때는 촬영 동의와 개인정보 처리 규정을 먼저 확인한다.

용어 정리

본문의 노란 점선 밑줄과 같은 사전이다. 섹션 이름을 누르면 처음 나온 곳으로 간다.

비유 모음 — 그리고 비유가 틀리는 지점

비유는 이해의 첫걸음이지만 오해의 씨앗도 된다. 사람의 지각과 견준 비유에는 강도를 표시했다. 직접 실제로 같은 일을 한다는 근거가 있음 · 부분 일부 성질만 닮음 · 없음 대응하는 것이 알려지지 않음

개념일상 비유사람의 지각 비유비유가 틀리는 지점
포즈 기반 생성마네킹 자세를 잡아 두고 그 위에 옷을 입혀 사진 찍기부분 사람이 동작을 보고 그 동작을 하는 특정 인물을 떠올리는 것마네킹은 같은 옷이 그대로지만, 생성 모델은 프레임마다 옷과 얼굴을 새로 그려서 조금씩 달라질 수 있다
참조 이미지배우의 프로필 사진없음프로필 사진에 없는 뒷모습·손가락은 모델이 지어낸다. 지어낸 부분이 원래 사람과 다를 수 있다
포즈 맵무용 악보(안무 기록)없음안무 기록은 사람이 읽고 해석하지만, 포즈 맵은 관절 위치만 담는다. 표정·손가락·리듬은 빠진다
동작 일치율노래방 점수없음노래방 점수처럼 계산 방식이 감춰져 있으면 숫자만으로 잘했는지 알 수 없다. 무엇과 무엇을 어떻게 비교했는지가 먼저다
시간 맞추기 (DTW)박자가 밀린 두 사람의 춤 영상을 박자에 맞춰 다시 편집하기부분 사람은 박자가 조금 밀려도 "같은 춤"이라고 알아본다DTW는 순서를 바꾸지 않고 늘이고 줄일 뿐이다. 동작 순서가 바뀐 춤은 맞추지 못한다

저자 소개와 레퍼런스

E-1 저자 소개 · E-2 학술 레퍼런스 · E-3 그림과 숫자의 출처

E-1 저자 소개

안상선 ((주)M-Robo 대표)

한국전기안전공사, 매일경제신문을 거쳐 현재 매일경제 사외벤처 (주)M-Robo를 창업해 대표로 재직하고 있다. (주)M-Robo는 언론사 사내 벤처로 시작한 미디어 벤처로, 국민일보에 로봇기자(스톡봇)을 서비스 했으며, 한국인터넷진흥원, 한국언론진흥재단, 한국방송통신전파진흥원 등에서 다수의 프로젝트를 진행했다. 이후 자체 A.I 뉴스 신문인 Money-Robo를 서비스 중이다. 대표 재직 중 아시아오픈 데이터 해커톤 우승, 데이터창업 분야 공로로 행정안전부 장관상을 2회 수상했으며, 인공지능 및 블록체인 분야에 대한 5개 특허 발명 및 등록자이다. 저서로는 “AI범죄와 자기방어”가 있으며, 핀테크분야, 통계학, 인공지능 분야에 대해서 한국기술교육대학교 온라인평생교육원 이러닝 콘텐츠 개발을 진행했다. 최종학위는 경제학 박사(동국대, 미시수리경제학)이다. 국민대학교, 호서대학교 등 여러 대학교에서 데이터 및 인공지능과 관련한 과목을 강의하고 있다. 자세한 프로필

강의

  • 안상선 (2025). 「비즈니스를 위한 데이터 과학」 강의안. 한국열린사이버대학교 인공지능융합학과.
  • 안상선 (2025). [K-디지털] 인공지능 자연어 처리. STEP(스마트직업훈련플랫폼), 한국기술교육대학교 온라인평생교육원.
  • 안상선 (2024). [K-디지털] 핀테크 데이터 분석 기초. STEP(스마트직업훈련플랫폼), 한국기술교육대학교 온라인평생교육원.

STEP 강의 바로가기: link.step.or.kr/1qyVoJ · link.step.or.kr/M9na9N · link.step.or.kr/brqEyc
사이트 개편으로 접속이 원활하지 않을 경우에는 www.step.or.kr로 접속 바랍니다.

논문과 발표

  • 안상선 (2025). 국민노후보장패널데이터를 활용한 가구지출 예측 모델 연구: 인공지능 모델 기반 접근. 「미래사회」, 16(2). 원문
  • 안상선 (2025). 국민노후보장패널데이터를 활용한 가구지출 예측 모델 연구: 인공지능 접근. 국민노후보장패널 학술대회 발표자료(2025.05.13), 국민연금공단 국민연금연구원. 발표자료
  • 안상선 (2025). SNS 텍스트 기반 마약 의심 거래 탐지 알고리즘에 대한 연구: 패턴 및 맥락 분석을 중심으로. 「미래사회」, 16(1). 원문
  • 안상선 (2024). 금융분야의 이상탐지 모델 보안을 위한 통계 기반의 적대적 데이터 대응 방안: 실증적 분석과 시뮬레이션 결과. 「미래사회」, 15(3). 원문
  • 안상선 (2024). 인공지능을 활용한 가상 캐릭터 특성 기반 SNS 포스팅 탐지 솔루션. 2024 Summer Newmedia Party 포스터 발표(2024.06.19), 서울미디어대학원대학교.
  • 안상선 (2024). 산업재해 패널 데이터를 활용한 머신러닝 모델. 제10회 산재보험패널 학술대회 포스터 발표(2024.05.17), 근로복지공단 근로복지연구원.
  • 안상선 (2024). 가상 자산 시계열 데이터의 분석과 예측: 시계열 모델 및 인공지능 모델의 비교, 개선점 제시. 「미래사회」, 15(1). 원문

E-2 학술 레퍼런스

  1. [R1] Ho, J., Jain, A., & Abbeel, P. (2020). Denoising diffusion probabilistic models. Advances in Neural Information Processing Systems 33. arXiv:2006.11239 — 섹션 3
  2. [R2] Hu, L., Gao, X., Zhang, P., Sun, K., Zhang, B., & Bo, L. (2024). Animate Anyone: Consistent and controllable image-to-video synthesis for character animation. CVPR 2024. arXiv:2311.17117 — 섹션 2·3
  3. [R3] Cao, Z., Simon, T., Wei, S.-E., & Sheikh, Y. (2017). Realtime multi-person 2D pose estimation using part affinity fields. CVPR 2017. arXiv:1611.08050 — 섹션 2 (포즈 맵의 색 막대 형식)
  4. [R4] Sakoe, H., & Chiba, S. (1978). Dynamic programming algorithm optimization for spoken word recognition. IEEE Transactions on Acoustics, Speech, and Signal Processing, 26(1), 43–49. doi:10.1109/TASSP.1978.1163055 — 섹션 5 (동적 시간 와핑)
  5. [R5] Lin, T.-Y., Maire, M., Belongie, S., Hays, J., Perona, P., Ramanan, D., Dollár, P., & Zitnick, C. L. (2014). Microsoft COCO: Common objects in context. ECCV 2014. arXiv:1405.0312 — 섹션 5 (관절 거리 기반 점수 OKS의 출처)

E-3 그림과 숫자의 출처

  • 조수 캐릭터 시트, 표정 시트, 컷 시트 두 장, 조수 솔로 12컷, 춤 영상은 저자가 만든 자료다
  • 섹션 4·5의 영상 분석 숫자는 코드 2로 영상을 직접 측정한 값이다. 컷 시트의 시각은 5초를 12칸으로 나눈 근사값이다
  • 섹션 5의 일치율 계산은 설명용으로 만든 안무로 한 것이며, 영상 속 76.5%를 다시 계산한 것이 아니다
  • 섹션 3의 노이즈 그림은 완성된 프레임에 노이즈를 섞어 보인 것이다. 실제 생성 과정을 녹화한 것이 아니다

교육자를 위한 TIP

강사, 실무 OJT 담당자, 튜터를 위한 운영 안내다. 시간은 예상치이므로 실제 수업에 맞춰 조정한다. 이 편은 시리즈 정리 수업으로도 쓸 수 있다.

대상5-1~5-4를 마친 대학생·직장인. 생성 영상과 "AI 점수"를 업무에서 다루는 기획자·실무자
선수 지식5-1의 포즈 추정, 5-4의 말 → 동작, 확산 모델의 기본 생각(노이즈를 걷어 낸다)
학습 목표① 프롬프트에서 영상까지 여섯 단계를 순서대로 설명한다 ② 참조 이미지와 포즈 맵이 각각 무엇을 정하는지 말한다 ③ 일치율 같은 숫자를 볼 때 "무엇을, 어떻게 비교했나"를 묻고, 시간 어긋남이 점수를 어떻게 바꾸는지 예를 든다
예상 시간읽기 30~40분 · 영상 시연 20분 · Colab 실습 25분 (코드 1 12분, 코드 2 13분)

운영안 세 가지

강의형 50분

시리즈 정리 중심

도입 5분(섹션 1) → 섹션 2 여섯 단계 10분 → 섹션 4 영상 나란히 보기 10분 → 섹션 5 일치율 실험 12분 → 섹션 6 시리즈 지도 8분 → 확인 문제 5분.

실무 OJT 90분

점수 검증 중심

섹션 4·5 25분 → 팀별로 "우리 업무의 AI 점수"를 하나 골라 무엇을 어떻게 비교했는지 역추적하기 25분 → 코드 2로 영상 직접 측정 20분 → 섹션 3의 의상 차이로 생성물 표시·동의 토론 20분.

1:1 튜터링

수준별 진도

입문자는 섹션 2·4·6만. 중급자는 코드 1의 score_dist를 손으로 한 프레임만 계산해 보게 하고, DTW의 표 채우기를 3 × 3으로 따라가게 한다.

섹션별 운영 포인트

섹션멈춰서 물어볼 질문조작 팁
2 한 줄로"이 중 어느 단계가 이 시리즈에서 직접 계산한 것이고, 어느 단계가 주어진 영상인가?"칸을 하나씩 눌러 아래 설명의 마지막 문장을 읽는다
3 조수 그리기"참조 이미지는 실험복인데 왜 영상은 아이돌 의상일까?"단계를 0 → 25로 끌고, 아래 솔로 12컷과 비교한다
4 영상"두 춤의 회전은 몇 초에 일어나나?"나란히 보기에서 어긋남을 0 → 0.9초로 옮긴다
5 일치율"같은 춤인데 왜 77.6%인가? 100%로 만들려면?"늦음 1.0초에서 "시간 맞추기"를 누른다
6 정리"다섯 편에서 가장 중요했던 숫자 하나를 고른다면?"카드를 눌러 해당 편으로 돌아가 본다

흔한 오해 Top 5

오해바른 설명보여 줄 장면
"춤춰"라고 하면 AI가 춤을 이해해서 영상을 만든다여러 단계가 숫자를 넘겨받는 흐름이다. 말 → 지도의 점 → 관절 좌표 → 포즈 맵 → 프레임섹션 2
영상에 뜬 일치율은 믿을 만한 측정값이다이 영상의 76.5%는 240프레임 내내 같은 값이고 계산 방식이 표기되지 않았다섹션 5 위 표
일치율이 낮으면 춤을 못 따라 한 것이다같은 춤도 1초 늦으면 77.6%다. 타이밍과 좌우를 맞추면 100%가 된다섹션 5 직접 재 보기
참조 이미지의 모습이 그대로 나온다원칙은 그렇지만 참조에 없는 부분(뒷모습 등)은 지어내고, 이 영상처럼 의상이 다를 수도 있다섹션 3 아래 노트
포즈 맵만 있으면 누구든 춤추게 할 수 있으니 문제없다실존 인물의 외모로 영상을 만들 때는 본인 동의와 생성물 표시가 필요하다섹션 6 "사람의 몫"

확인 문제 (해설은 눌러서 펼치기)

Q1. 초당 24프레임, 10초 영상의 프레임 수는? 장면 전환이 119번 프레임이면 몇 초인가?

24 × 10 = 240프레임. 119 ÷ 24 ≈ 4.96초.

Q2. 관절 거리가 0.1일 때 그 관절의 점수 exp(−d²/2σ²)는? (σ = 0.1)

exp(−0.01 / 0.02) = exp(−0.5) ≈ 0.607. 거리가 σ만큼 벌어지면 그 관절은 약 61점이다.

Q3. 같은 춤을 1초 늦게 따라 췄다. 프레임끼리 그대로 비교한 점수와, 15프레임 앞당겨 비교한 점수는? (코드 1)

그대로 77.6%, 앞당겨 맞추면 100.0%. 늦음이 "틀림"으로 잡혔던 것이다.

Q4. 영상의 76.5%가 프레임마다 계산된 값이 아니라는 것은 어떻게 알았나?

숫자 칸의 픽셀이 240프레임 내내 첫 프레임과 거의 같고(차이 최대 0.07), 두 장면의 일치율 상자가 같은 시각끼리 거의 같았다(평균 차이 0.16). 같은 오버레이를 두 번 재생한 것이다.

Q5. 포즈 기반 생성에서 참조 이미지와 포즈 맵이 각각 정하는 것은? 섹션 3의 노이즈 그림에서 어느 단계가 어느 조건의 몫인가?

참조 이미지는 외모(얼굴·머리·옷), 포즈 맵은 자세. 노이즈를 걷는 초반(큰 윤곽)은 포즈 맵이, 후반(얼굴·장식·무늬)은 참조 이미지가 크게 일한다.

Colab 과제

기본

코드 1에서 σ를 0.05, 0.1, 0.2로 바꿔 "1.0초 늦게 따라 춤"의 관절 거리 점수를 비교한다. σ가 점수에 어떤 영향을 주는지, 일치율을 발표할 때 σ도 밝혀야 하는 이유를 두 문장으로 쓴다.

도전

MediaPipe로 이 영상의 두 장면에서 관절 좌표를 뽑아(조수 장면은 실패하는 프레임도 기록) 코드 1의 score_dist와 best_shift로 실제 일치율을 계산한다. 시간을 맞추기 전과 후의 점수, 좌우를 되돌린 점수를 76.5%와 비교해 보고한다.

난이도 조절과 더 배우기

입문자섹션 4의 나란히 보기와 섹션 5의 "시간 맞추기" 버튼 하나면 이 편의 핵심을 얻는다
심화Animate Anyone 논문의 구조도를 섹션 3의 표(외모 인코더·포즈 가이더·시간 층)와 짝지어 발표하게 한다
시리즈 복습섹션 6의 다섯 카드 숫자(60.7% → 99.7%, 44.2% → 0.0%, 99.8%, 1.90 → 0.01, 76.5%)가 각각 무엇을 쟀는지 한 줄씩 설명하게 한다

모든 미션 완료!

「5-5 "춤춰"에서 춤 영상으로」까지, 미션 다섯 개를 모두 마쳤어요. 연구실 식구들의 마지막 한마디입니다.

두 팔을 활짝 든 아이돌 의상의 조수
박사
박사새벽 두 시 골목에서 시작해 여기까지 왔어요.
  • 막대 인형으로 알아보고(5-1)
  • 뒤집어 만들고(5-2), 접었다 펴고(5-3)
  • 말과 짝지어(5-4), 춤추는 영상으로(5-5)
조수
조수제가 춤추는 영상이 나왔어요! …다음엔 일치율을 어떻게 쟀는지 꼭 같이 적어 달라고 할게요.
초파리 연구원
초파리 연구원미션 완수! 이제 진짜로 자도 돼. 처음 화면에서 완료 표시 잊지 마!