동작 AI · 5-1 · 긴급 미션

CCTV 쓰레기 투기 — 사람을 막대 인형으로 바꿔 잡는다

새벽 두 시, 골목 CCTV에 누군가 캔을 던지고 사라졌다. 컴퓨터는 화면의 숫자 수백만 개에서 사람을 찾고, 사람을 관절 13개짜리 막대 인형으로 바꾸고, 막대 인형의 움직임을 숫자 몇 개(특징)로 줄여 "투기인가"를 가른다. 사람이 정한 규칙이 어디서 속는지, 학습이 무엇을 고치는지, 그리고 왜 "어디에 떨어졌나"가 가장 중요한 단서인지 끝까지 따라간다.

6,220,800풀HD CCTV 한 프레임의 숫자
26막대 인형 한 프레임의 숫자 (관절 13 × 2)
4개사람이 정한 동작 특징
60.7%"손목이 빠르면 투기" 규칙의 시험 정확도 (코드 2)
99.7%특징 4개 + 로지스틱 회귀의 시험 정확도 (코드 2)
2개Colab에서 바로 돌리는 코드
1신고

새벽 두 시의 신고 — "누가 버렸는지 보여 줘"

CCTV 관제실에는 화면이 수십 개다. 사람이 밤새 모든 화면을 지켜볼 수는 없다. 연구실이 받은 미션은 하나다. 쓰레기를 버리는 "동작"을 AI가 먼저 알아채게 하라.

[SYSTEM] 02:13 · CAM-07 골목 · 무단 투기 의심 신고 1건. 첨부: 영상 3초, 관제 기록 한 장.
박사
박사영상 한 편에 숫자가 몇백만 개야. 거기서 바로 "투기"를 찾으려 하면 길을 잃어. 순서를 정하자. 사람 찾기 → 막대 인형 → 움직임의 특징 → 판정.
조수
조수막대 인형이요? 얼굴은 안 남기고 뼈대만 남기는 거예요? 그럼 누가 누군지는 몰라도 되겠네요.
초파리 연구원
초파리 연구원함정이 하나 있어. 손을 세게 흔드는 사람이랑 캔을 던지는 사람, 손목만 보면 똑같이 빨라. 캔이 어디에 떨어졌는지까지 봐야 해.
연구실 로봇장면 여섯 가지와 시험 장면 300개를 준비했습니다. 규칙 두 개, 학습 모델 세 개를 붙여 보겠습니다.
왼쪽은 골목에서 캔을 던지는 막대 인형이 빨간 상자로 표시된 CCTV 화면, 오른쪽은 관제실 모니터의 경고 표시를 가리키는 관제 요원 막대 인형과 기뻐하는 박사, 초파리 연구원
관제실의 경고 화면. 이 장면에 이르는 길을 섹션 2~6에서 차례로 만든다.
섹션 2 · 3화면 → 사람 → 관절 13점

숫자 6백만 개에서 사람을 찾고, 자세를 숫자 26개로 줄인다

섹션 4 · 5시간 → 특징 4개 → 판정

46프레임의 움직임을 특징 4개로 요약하고 규칙과 학습을 비교한다

섹션 6 · 7관제실 → 한계

실시간 점수와 판정보류, 그리고 이 방법이 틀리는 곳

2화면은 숫자

CCTV 화면은 숫자다 — 이름표 없는 6백만 개

컴퓨터가 받는 것은 사진이 아니라 칸마다 빨강·초록·파랑의 세기(0~255)다. 보기 방식을 바꾸고 화면 위에 마우스를 올려 보자.

보기
칸 크기

초보자를 위한 풀이

풀HD CCTV 한 프레임은 가로 1,920 × 세로 1,080칸이고, 칸마다 빨강·초록·파랑 세 숫자가 있다. 1,920 × 1,080 × 3 = 6,220,800개. 초당 30프레임이면 1초에 1억 8,662만 개다. 이 숫자들 어디에도 "사람"이나 "쓰레기통"이라는 이름표는 없다. 그래서 첫 단계는 숫자 더미에서 무엇이 어디에 있는지부터 찾는 것이다. 사진이 숫자 행렬이 되는 과정은 4-2에서 자세히 다룬다.

3사람 찾기

사람을 찾고, 막대 인형으로 바꾼다 — 객체 검출과 포즈 추정

두 단계다. 먼저 객체 검출이 사람·쓰레기통·캔의 네모(바운딩 박스)를 찾는다. 이어서 포즈 추정이 사람 상자 안에서 관절 13곳의 좌표를 찾는다. 층을 켜고 꺼 보자.

밤 골목 CCTV 화면. 빛나는 막대 인형이 오른팔을 뻗어 캔을 던지고, 캔은 점선을 따라 왼쪽 쓰레기통 쪽으로 날아간다

좌표는 그림(1402 × 1122)에서 관절 점을 직접 읽어 옮긴 값이다. 왼쪽 위가 (0, 0)이고 아래로 갈수록 y가 커진다. 사람을 마주 보므로 화면 왼쪽 팔이 "오른팔"이다.

층
왜 막대 인형인가
  • 작다: 자세 하나가 숫자 26개다. 같은 화면의 픽셀은 6백만 개가 넘는다.
  • 옷·조명에 덜 흔들린다: 검은 후드든 흰 셔츠든, 낮이든 가로등 아래든 팔의 각도는 같은 숫자로 나온다.
  • 얼굴을 남기지 않을 수 있다: 판정에 필요한 것은 동작이다. 관절만 저장하면 개인을 알아볼 정보를 줄일 수 있다.
대신 잃는 것
  • 물체: 막대 인형에는 캔도 쓰레기통도 없다. 그래서 객체 검출의 결과(캔의 위치)를 함께 들고 가야 한다. 섹션 5에서 이것이 결정적이다.
  • 가림과 어둠: 팔이 몸에 가리거나 너무 어두우면 관절을 못 찾거나 엉뚱한 곳에 찍는다.
  • 손의 모양: 13점에는 손가락이 없다. "쥐었나, 폈나"는 따로 봐야 한다.

실제로는 어떤 도구를 쓰나

객체 검출은 YOLO 계열 [R3]이, 포즈 추정은 OpenPose [R1]나 MediaPipe [R5]가 널리 쓰인다. 관절 번호 체계는 COCO 데이터셋의 17점 [R2]이 사실상 표준이다. 이 페이지는 COCO 17점 중 눈 두 점과 귀 두 점을 빼고, 머리를 코 한 점으로 대신한 13점을 쓴다.

4시간으로

막대 인형을 시간으로 펼친다 — 동작은 숫자의 줄이다

투기는 한 장면이 아니라 3초 동안의 움직임이다. 여섯 장면을 골라 보자. 노란 점선은 오른손목의 궤적, 아래 그래프는 손목 속도와 캔의 상태다.

장면

이 장면들은 어디서 왔나

여섯 장면은 실제 영상이 아니라 관절 각도를 시간에 따라 바꿔 만든 합성 데이터다. 키를 1로 잰 단위(키 1.7m 기준)를 쓰고, 던진 캔은 중력을 받아 포물선으로 날아간다. 코드 1의 함수와 이 그림은 같은 계산이다. 실제 영상이라면 섹션 3의 포즈 추정이 프레임마다 이 좌표를 만들어 준다.

5규칙 대 학습

특징 4개, 규칙 대 학습 — 빠른 팔이 곧 투기는 아니다

1,196개 숫자를 사람이 고른 특징 4개로 줄인다. 그다음 두 가지로 판정한다. 사람이 정한 규칙, 그리고 데이터로 배운 모델. 기준값을 움직여 규칙이 어디서 틀리는지 찾아보자.

규칙
손목 속도 기준2.0키/초

코드 2의 실험 — 시험 장면 300개, 탐지기 다섯 개

여섯 장면을 속도(×0.8~1.25)·위치·동작 크기(×0.75~1.25)를 바꿔 학습 600개, 시험 300개 만들고, 관절 좌표에 떨림(포즈 추정 오차)을 더했다. 정답은 결과로 정한다: 캔이 쓰레기통 밖 땅에 남으면 투기. 그래서 "멀리 던지기"도 세게 던져 통에 들어가면 정상이다(시험의 던지기 중 52%만 투기). 칸의 숫자는 그 장면을 투기로 판정한 비율이고, 정답과 5%p 넘게 다르면 빨갛게 표시했다.

규칙 1 (60.7%): 손 흔들기의 94%를 투기로 잡았다(헛경보). 천천히 떨어뜨린 투기는 98% 놓쳤다.

규칙 2 (76.7%): "놓았나"를 더해 손 흔들기 헛경보는 사라졌다. 그러나 떨어뜨리기는 여전히 놓치고, 통에 던져 넣은 정상 장면까지 투기로 잡는다.

특징 4개 + 로지스틱 회귀 (99.7%): 학습한 가중치는 [속도 −0.33, 놓음 1.16, 통과의 거리 3.93, 멀어짐 1.19]다. 손목 속도에는 오히려 작은 음수가 붙었다. 모델이 고른 가장 강한 단서는 "캔이 통 밖 땅에 남았나"다.

좌표를 그대로 넣은 MLP (92.3%): 던지는 "모양"은 배웠지만 통에 들어간 던지기에도 경보를 울렸다(헛경보 19개). 물체 좌표 2개를 더해도 좋아지지 않았다. 1,288개 숫자 속에서 "마지막 프레임의 캔 x좌표가 통 밖인가"를 학습 600개만으로 찾아내기는 어렵다.

이 결과를 읽는 법

  1. 특징을 잘 고르면 모델은 단순해도 된다. 99.7%는 "통 밖 거리"라는 특징이 정답의 정의와 거의 같기 때문이다. 대신 이 특징은 캔과 쓰레기통을 정확히 찾는 객체 검출에 전부 기대고 있다.
  2. 좌표를 그대로 학습하면 사람이 특징을 고를 필요는 없지만, 데이터가 훨씬 많이 필요하다. 실제 연구는 관절의 연결 구조를 그대로 쓰는 그래프 신경망(ST-GCN 등) [R4]으로 이 문제를 줄인다.
  3. 이 숫자는 합성 데이터의 결과다. 실제 골목 영상에서는 가림·어둠·여러 사람 때문에 모든 탐지기의 성적이 떨어진다. 숫자 자체보다 "어떤 장면에서 틀렸나"의 모양을 보자.
6관제실

라이브 관제실 — 프레임마다 다시 매기는 점수

코드 2의 로지스틱 회귀가 배운 가중치를 그대로 쓴다. 지금까지 본 프레임만으로 특징 4개를 다시 계산해 점수를 매긴다. 0.6 이상이면 경보, 0.4~0.6이면 판정보류로 사람에게 넘긴다.

투기 점수
장면

왜 판정보류를 두나

헛경보는 죄 없는 사람을 의심하게 만들고, 놓침은 단속을 무력하게 만든다. 두 실수의 무게가 다르므로 기준을 하나로 정하기 어렵다. 그래서 점수가 애매한 구간(여기서는 0.4~0.6)은 자동으로 판정하지 않고 관제 요원이 영상을 직접 보게 한다. AI는 "어느 화면을 먼저 볼지" 순서를 정해 주는 데까지 쓰고, 최종 판단과 책임은 사람이 진다. "무작위 장면"을 여러 번 눌러 통에 들어간 던지기, 약하게 던진 던지기를 찾아보자.

7한계

이 방법이 틀리는 곳, 그리고 다음 미션

막대 인형과 특징 4개는 이해하기 쉽고 가볍다. 그만큼 놓치는 것도 분명하다.

잘 되는 이유
  • 작은 데이터: 자세가 숫자 26개라 가볍고 빠르다. 관제실의 화면 수십 개를 동시에 볼 수 있다.
  • 설명할 수 있다: "캔이 통 밖에 남았고, 놓은 뒤 0.77만큼 멀어졌다"처럼 판정 이유를 숫자로 말할 수 있다.
  • 얼굴 없이: 동작만으로 판정하므로 저장하는 개인 정보를 줄이는 설계가 가능하다.
한계와 위험
  • 객체 검출에 기댄다: 가장 강한 특징이 "캔의 위치"다. 어두워서 캔을 못 찾으면 탐지기도 함께 무너진다.
  • 합성 데이터의 한계: 여기 장면은 여섯 종류뿐이다. 실제로는 쓰레기봉투를 내려놓기, 남의 쓰레기를 옮기기처럼 정의가 애매한 장면이 많다.
  • 법과 책임: 공공장소 CCTV는 개인정보 보호법의 영상정보처리기기 규정을 따른다. 설치 목적, 안내판, 보관 기간을 확인하고, AI의 판정만으로 처벌하지 않도록 사람이 최종 확인한다.
  • 편향: 특정 옷차림이나 체형에서 포즈 추정이 자주 틀리면, 그 사람들에게 헛경보가 몰릴 수 있다. 집단별 오류율을 따로 봐야 한다.
막대 인형 필름 띠와 관절 번호표, 특징 막대그래프 앞에서 기뻐하는 조수와 지휘봉으로 설명하는 박사
다음 미션 예고 · 막대 인형의 움직임이 특징이 되는 장면
박사
박사잡는 건 됐어. 이제 거꾸로 가 보자. 특징을 보고 "투기"라고 알아보는 대신, "던지기"라는 말을 주면 막대 인형이 던지는 동작을 만들어 내게 할 수는 없을까?
조수
조수알아보는 AI에서 만드는 AI로요? 그럼 동작 데이터가 엄청 많이 필요하겠네요.
초파리 연구원
초파리 연구원그게 5-2의 미션이야. 같은 특징 표에서 화살표 방향만 뒤집으면 돼.

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

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

코드 1 · 막대 인형 장면을 만들고 특징 4개 뽑기섹션 3~5와 연결 · numpy, matplotlib · CPU 1초 미만

관절 각도로 막대 인형을 그리는 함수(fk), 여섯 장면, 특징 4개를 계산한다. 섹션 5 위쪽 표와 같은 숫자가 나온다. 내 데이터로 바꾸려면 clip()이 돌려주는 관절 좌표 자리에 포즈 추정 도구가 낸 좌표를 넣고, 사람 키가 1이 되도록 나눈다.

실행 결과 (2026-10-05 실행, numpy 2.4 · matplotlib 3.10 · CPU). 난수를 쓰지 않아 언제 실행해도 같다. 그래프 두 장(장면별 손목 속도, 던지기의 네 프레임)도 함께 나온다.
코드 2 · 규칙 대 학습 — 투기 탐지기 다섯 개 비교섹션 5·6과 연결 · numpy, scikit-learn · CPU 약 20초

장면을 바꿔 가며 학습 600개·시험 300개를 만들고 규칙 2개, 로지스틱 회귀, MLP 2개를 비교한다. 섹션 5의 실험표와 섹션 6 관제실의 가중치가 이 출력에서 바로 만들어진다.

실행 결과 (2026-10-05 실행, numpy 2.4 · scikit-learn 1.8 · CPU). 데이터 시드를 고정했지만 라이브러리 버전에 따라 MLP의 숫자는 조금 바뀔 수 있다.

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

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

함께 붙일 코드

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

용어 정리

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

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

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

개념일상 비유사람의 지각 비유비유가 틀리는 지점
객체 검출사진 속 사람마다 포스트잇을 붙이기부분 한눈에 "저기 사람이 있다"를 알아채는 것포스트잇은 사람이 정확히 붙이지만, 검출기는 확신도와 함께 틀린 상자도 낸다
포즈 추정사진 위에 철사 인형을 겹쳐 놓기부분 점 몇 개의 움직임만 보고도 걷는 사람을 알아보는 능력(점광원 보행)사람은 가려진 팔도 짐작하지만, 포즈 추정은 가려지면 엉뚱한 곳에 점을 찍거나 빼먹는다
특징범인 몽타주의 "키·옷차림·걸음걸이" 항목없음몽타주 항목은 사람이 고른다. 좌표를 그대로 학습하는 모델은 항목을 스스로 만든다(섹션 5의 MLP)
규칙 기반"뛰는 사람은 수상하다"는 경비원의 어림짐작없음경비원은 맥락을 보고 어림짐작을 고치지만, 규칙은 정한 조건 밖의 장면에서 그대로 틀린다
판정보류심판의 비디오 판독 요청없음비디오 판독은 드물게 쓰지만, 보류 구간을 넓히면 관제 요원의 일이 다시 늘어난다

저자 소개와 레퍼런스

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] Cao, Z., Simon, T., Wei, S.-E., & Sheikh, Y. (2017). Realtime multi-person 2D pose estimation using part affinity fields. CVPR 2017, 7291–7299. arXiv:1611.08050 — 섹션 3 (포즈 추정)
  2. [R2] 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, 740–755. arXiv:1405.0312 — 섹션 3 (관절 17점 체계)
  3. [R3] Redmon, J., Divvala, S., Girshick, R., & Farhadi, A. (2016). You only look once: Unified, real-time object detection. CVPR 2016, 779–788. arXiv:1506.02640 — 섹션 3 (객체 검출)
  4. [R4] Yan, S., Xiong, Y., & Lin, D. (2018). Spatial temporal graph convolutional networks for skeleton-based action recognition. AAAI 2018. arXiv:1801.07455 — 섹션 5 (골격 기반 행동 인식)
  5. [R5] Lugaresi, C., Tang, J., Nash, H., McClanahan, C., Uboweja, E., Hays, M., Zhang, F., Chang, C.-L., Yong, M. G., Lee, J., Chang, W.-T., Hua, W., Georg, M., & Grundmann, M. (2019). MediaPipe: A framework for building perception pipelines. arXiv:1906.08172 — 섹션 3

E-3 그림과 숫자의 출처

  • 장면 그림(골목 CCTV, 관제실, 특징 연구실)은 저자가 직접 만든 픽셀아트다
  • 섹션 3의 관절 좌표는 골목 그림에서 직접 읽어 옮긴 값이고, 검출 상자의 확신도(0.94 등)는 설명용 예시값이다
  • 섹션 4~6의 장면은 모두 합성 데이터다. 섹션 5 실험표와 섹션 6 가중치만 실제 학습(코드 2) 결과다

교육자를 위한 TIP

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

대상영상 AI를 처음 접하는 대학생·직장인. 공공 안전, 시설 관리, 매장 운영에서 CCTV 분석 도입을 검토하는 실무자
선수 지식사진이 숫자 행렬이라는 것(4-2), 좌표와 거리 계산(피타고라스), 정확도의 뜻
학습 목표① CCTV 영상 → 객체 검출 → 포즈 추정 → 특징 → 판정의 흐름을 설명한다 ② 규칙과 학습이 각각 어떤 장면에서 틀리는지 예를 든다 ③ 헛경보와 놓침, 판정보류, 개인정보를 함께 고려한 운영안을 제시한다
예상 시간읽기 35~45분 · 애니메이션 시연 20분 · Colab 실습 25분 (코드 1 10분, 코드 2 실행 1분 + 해석 14분)

운영안 세 가지

강의형 50분

개념 중심

도입 5분(섹션 1 신고) → 섹션 2·3 화면에서 막대 인형까지 12분 → 섹션 4 여섯 장면 8분 → 섹션 5 규칙 기준값 실험 10분 → 섹션 6 관제실 10분 → 확인 문제 5분.

실무 OJT 90분

도입 검토 중심

섹션 1·3 15분 → 섹션 5 실험표를 우리 현장의 헛경보 비용으로 다시 읽기 20분 → 섹션 6 판정보류 구간 정하기 토론 15분 → 섹션 7 법·편향 점검표 만들기 15분 → 코드 2 실행·해석 25분.

1:1 튜터링

수준별 진도

입문자는 섹션 2·3·5 위쪽 표·6만. 중급자는 코드 1의 features 함수를 손으로 따라가게 한 뒤, 새 특징(예: 손과 쓰레기통의 최소 거리)을 하나 더해 코드 2에서 성적을 비교하게 한다.

섹션별 운영 포인트

섹션멈춰서 물어볼 질문조작 팁
2 화면은 숫자"숫자 6백만 개 중 사람은 어디에 있나?""숫자로 보기"에서 칸 크기를 64 → 16으로 줄여 본다
3 사람 찾기"막대만 남기면 무엇을 잃고 무엇을 지키나?"프라이버시 모드를 켠 채로 다음 섹션으로 넘어간다
4 시간으로"손 흔들기와 던지기의 그래프는 어디가 다른가?"두 장면을 번갈아 눌러 노란 선의 높이를 비교한다
5 규칙 대 학습"기준값을 어디에 두면 여섯 장면을 모두 맞힐 수 있나?"슬라이더를 끝까지 움직여 "없다"를 확인하고 실험표로 넘어간다
6 관제실"점수가 갑자기 오르는 프레임에서 무슨 일이 있었나?"떨어뜨리기를 재생하며 캔이 땅에 닿는 순간 멈춘다
7 한계"AI가 경보를 울렸다면 바로 과태료를 매겨도 될까?"판정보류와 사람의 최종 확인을 연결한다

흔한 오해 Top 5

오해바른 설명보여 줄 장면
AI가 CCTV 화면을 사람처럼 "본다"숫자 격자를 받아 단계마다 계산한다. 사람·쓰레기통이라는 이름표는 검출 모델이 붙인다섹션 2 "숫자로 보기"
빠르게 팔을 휘두르면 투기다손 흔들기도 빠르고, 떨어뜨리기는 느리다. 결과(물체가 어디 남았나)가 더 강한 단서다섹션 5 규칙 1
정확도 99.7%면 현장에서도 99.7%다합성 데이터의 결과다. 실제 영상에서는 가림·어둠·여러 사람 때문에 떨어진다섹션 5 아래 설명 3
좌표를 통째로 넣는 딥러닝이 늘 더 낫다데이터가 적으면 잘 고른 특징 몇 개가 이길 수 있다섹션 5 실험표의 MLP 두 줄
막대 인형만 저장하면 개인정보 문제가 없다위험을 줄일 뿐 없애지 않는다. 걸음걸이로 사람을 알아볼 수도 있고, 설치·보관 규정은 그대로 지켜야 한다섹션 3 프라이버시 모드, 섹션 7

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

Q1. 풀HD(1920 × 1080) 컬러 CCTV 한 프레임의 숫자는 몇 개인가? 관절 13점 막대 인형과 견주면 몇 분의 1인가?

1920 × 1080 × 3 = 6,220,800개. 막대 인형은 13 × 2 = 26개이므로 6,220,800 ÷ 26 ≈ 239,262, 약 24만분의 1이다.

Q2. 오른손목이 한 프레임(1/15초) 사이에 (−0.20, 0.80)에서 (−0.32, 0.88)로 움직였다. 손목 속도는 몇 키/초인가?

거리 = √(0.12² + 0.08²) ≈ 0.144. 1/15초 동안이므로 0.144 × 15 ≈ 2.16 키/초. 규칙 1의 기준 2.0을 넘는다.

Q3. 규칙 2(손목 속도 > 2.0 그리고 물체를 놓음)가 놓치는 투기 장면과, 잘못 잡는 정상 장면을 하나씩 들어라.

놓침: 발밑에 떨어뜨리기(손목이 느리다). 헛경보: 세게 던졌지만 통 안에 들어간 던지기(빠르고 놓았지만 투기가 아니다).

Q4. 로지스틱 회귀의 가중치에서 손목 속도에 −0.33이 붙었다. "빠를수록 투기가 아니다"라는 뜻인가?

아니다. 다른 특징(특히 통 밖 거리)이 함께 들어간 상태에서의 몫이다. 통 밖 거리가 이미 투기를 거의 설명하므로, 속도는 손 흔들기처럼 빠르지만 정상인 장면을 조금 눌러 주는 역할만 남았다. 가중치 하나만 떼어 해석하면 안 된다.

Q5. 관제실 점수가 0.52라면 시스템은 무엇을 해야 하나? 기준을 0.5 하나로 정할 때와 무엇이 다른가?

판정보류(0.4~0.6)이므로 자동 판정하지 않고 관제 요원에게 영상을 넘긴다. 기준을 하나로 두면 0.52는 곧바로 투기 경보가 되어, 애매한 장면의 헛경보가 그대로 사람에게 돌아간다.

Colab 과제

기본

코드 1에 다섯 번째 특징 "캔을 놓은 순간 손과 쓰레기통의 가로 거리"를 더한다. 여섯 장면에서 이 값을 표로 만들고, 넣기와 떨어뜨리기를 가르는 데 도움이 되는지 두 문장으로 설명한다.

도전

코드 2의 make_dataset에서 학습 장면 수를 100 → 25 → 400으로 바꿔 로지스틱 회귀와 "관절+물체+MLP"의 시험 정확도를 비교한다. 데이터 양에 따라 두 방식의 차이가 어떻게 변하는지 그래프로 보고한다.

난이도 조절과 더 배우기

입문자섹션 4의 그래프와 섹션 5의 실험표는 "어느 장면에서 틀렸나"만 읽어도 충분하다
심화MediaPipe로 직접 찍은 짧은 영상(동의를 받은 연기)에서 관절 좌표를 뽑아 코드 1의 features에 넣어 보게 한다
다음 편5-2 알아보기에서 만들기로 — 같은 특징 표에서 화살표 방향을 뒤집어 동작을 만들어 낸다

미션 5-1 완료!

「5-1 CCTV 쓰레기 투기」 편을 끝까지 읽었어요. 연구실 식구들이 한마디씩 정리해 드립니다.

검은 후드에 모자를 쓴 투기자 막대 인형의 여섯 자세. 캔과 쓰레기봉투를 들고 있다가 던지고 달아난다
박사
박사투기범을 잡는 길을 끝까지 왔어요.
  • 화면은 숫자 6백만 개, 막대 인형은 26개
  • 빠른 팔은 투기의 증거가 아니다
  • 가장 강한 단서는 "캔이 어디에 남았나"
조수
조수애매하면 사람이 다시 본다! 판정보류, 기억할게요.
초파리 연구원
초파리 연구원다음은 거꾸로야. 알아보던 AI가 동작을 만들어 낸다고!