손동작 인식
카메라 앞에서 취하는 25가지 손동작(스와이프, 엄지 들기, 정지 신호 등)을 인식합니다. 모델은 Jester 데이터셋으로 학습되었습니다. 비접촉 제스처 제어, 게임 입력에 활용합니다. 손 추적의 제스처 인식이 한 장면의 손 모양을 분류하는 것과 달리, 손동작 인식은 시간에 따른 움직임을 분류합니다.
명령
| 명령 | 설명 |
|---|---|
| 특정 손동작 여부 | 지정한 손동작이 임계값 이상의 확률로 감지되었는지 확인합니다. |
| 인식 결과 | 가장 높은 확률의 손동작 이름과 확률을 기록합니다. |
| 전체 결과 | 모든 인식 결과를 확률 순으로 JSON 에 기록합니다. |
설정
| 항목 | 설명 |
|---|---|
| 대상 손동작 | 특정 손동작 여부에서 감시할 손동작입니다. 25종 중에서 선택하며 기본값은 왼쪽 쓸기(Swiping Left)입니다. |
| 감지 임계값 (%) | 이 값 이상의 확률일 때 해당 손동작으로 판정합니다. 10~100, 기본값 50. |
출력 변수
| 항목 | 타입 | 값 |
|---|---|---|
| 손동작 이름 | 텍스트 | 가장 높은 확률로 인식된 손동작의 영문 이름. |
| 인식 확률 | 숫자 | 인식된 손동작의 확률, 0~100. |
| 손동작 일치 | 디지털 | 특정 손동작 여부에서 지정한 손동작이 임계값 이상으로 감지되면 참. |
| JSON 결과 | 텍스트 | 모든 인식 결과의 배열. |
JSON 출력
결과마다 label, confidence(0~100), 모델 클래스 번호 index를 담은 배열이며 확률이 높은 순서입니다.
[
{ "label": "Swiping Left", "confidence": 85, "index": 0 },
{ "label": "Thumb Up", "confidence": 10, "index": 1 }
]
손동작 25종
화면에는 한글 이름이 표시되고 변수와 JSON 에는 괄호 안의 영문 이름이 기록됩니다.
왼쪽 쓸기(Swiping Left), 오른쪽 쓸기(Swiping Right), 아래로 쓸기(Swiping Down), 위로 쓸기(Swiping Up), 손 밀기(Pushing Hand Away), 손 당기기(Pulling Hand In), 두 손가락 왼쪽(Sliding Two Fingers Left), 두 손가락 오른쪽(Sliding Two Fingers Right), 두 손가락 아래로(Sliding Two Fingers Down), 두 손가락 위로(Sliding Two Fingers Up), 두 손가락 밀기(Pushing Two Fingers Away), 두 손가락 당기기(Pulling Two Fingers In), 손 앞으로 굴리기(Rolling Hand Forward), 손 뒤로 굴리기(Rolling Hand Backward), 손 시계방향 회전(Turning Hand Clockwise), 손 반시계방향 회전(Turning Hand Counterclockwise), 손 펼쳐 확대(Zooming In With Full Hand), 손 모아 축소(Zooming Out With Full Hand), 두 손가락 확대(Zooming In With Two Fingers), 두 손가락 축소(Zooming Out With Two Fingers), 엄지 위로(Thumb Up), 엄지 아래로(Thumb Down), 손 흔들기(Shaking Hand), 정지 신호(Stop Sign), 손가락 두드리기(Drumming Fingers)