YOLO Vision 2026:

손 키포인트 데이터셋#

소개#

Ultralytics Hand Keypoints 데이터셋은 높은 정확도와 일관성을 위해 Google MediaPipe 라이브러리를 사용하여 생성된, 각각 21개의 키포인트가 주석으로 지정된 26,768장의 손 이미지로 구성됩니다. 이 데이터셋은 포즈 추정 모델을 학습하기 위한 Ultralytics YOLO26 포맷과 호환됩니다.



Watch: Hand Keypoints Estimation with Ultralytics YOLO | Human Hand Pose Estimation Tutorial

Keypoints#

Hand keypoints landmark diagram with 21 points

각 손은 다음과 같이 21개의 키포인트로 주석이 달려 있습니다:

  1. 손목
  2. 엄지손가락 (4개 포인트)
  3. 검지손가락 (4개 포인트)
  4. 중지손가락 (4개 포인트)
  5. 약지손가락 (4개 포인트)
  6. 새끼손가락 (4개 포인트)

데이터셋 구조#

  • 전체 이미지: 26,768개 (훈련 세트 18,776개 / 검증 세트 7,992개).
  • 클래스: 1개 (손).
  • 키포인트: (x, y, visibility) 삼중항을 포함하여 손당 21개.
  • 다운로드 크기: 약 369 MB.

일반적인 손 랜드마크를 넘어선 커스텀 제스처 어휘가 필요한 경우, Ultralytics Platform을 사용하여 브라우저에서 직접 나만의 데이터셋에 라벨을 지정하고 학습할 수 있습니다.

응용 분야#

Hand Keypoints는 여러 실제 응용 분야를 지원합니다:

  • 제스처 인식: 인간-컴퓨터 상호작용 및 비접촉식 제어 인터페이스.
  • AR/VR 제어: 가상 객체와의 정밀한 상호작용.
  • 로봇 조작: 로봇 손의 세밀한 제어.
  • 의료: 의학적 진단을 위한 손 움직임 분석.
  • 애니메이션: 사실적인 손 움직임을 위한 모션 캡처.
  • 생체 인증: 손 기하학 기반 보안 시스템.

데이터셋 YAML#

데이터셋 구성은 YAML 파일을 사용하여 정의됩니다. 이 파일에는 데이터셋의 경로, 클래스 및 기타 관련 정보가 포함됩니다. Hand Keypoints 데이터셋의 경우, hand-keypoints.yaml 파일은 https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/hand-keypoints.yaml에서 유지관리됩니다.

ultralytics/cfg/datasets/hand-keypoints.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# Hand Keypoints dataset by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/pose/hand-keypoints
# Example usage: yolo train data=hand-keypoints.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── hand-keypoints ← downloads here (369 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: hand-keypoints # dataset root dir
train: images/train # train images (relative to 'path') 18776 images
val: images/val # val images (relative to 'path') 7992 images

# Keypoints
kpt_shape: [21, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx: [0, 1, 2, 4, 3, 10, 11, 12, 13, 14, 5, 6, 7, 8, 9, 15, 16, 17, 18, 19, 20]

# Classes
names:
  0: hand

# Keypoint names per class
kpt_names:
  0:
    - wrist
    - thumb_cmc
    - thumb_mcp
    - thumb_ip
    - thumb_tip
    - index_mcp
    - index_pip
    - index_dip
    - index_tip
    - middle_mcp
    - middle_pip
    - middle_dip
    - middle_tip
    - ring_mcp
    - ring_pip
    - ring_dip
    - ring_tip
    - pinky_mcp
    - pinky_pip
    - pinky_dip
    - pinky_tip

# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/hand-keypoints.zip

사용법#

이미지 크기 640으로 Hand Keypoints 데이터셋에서 YOLO26n-pose 모델을 100 에폭 동안 학습하려면 다음 코드 스니펫을 사용할 수 있습니다. 사용 가능한 인수에 대한 전체 목록은 모델 학습 페이지를 참조하세요.

훈련 예제
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n-pose.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="hand-keypoints.yaml", epochs=100, imgsz=640)

샘플 이미지 및 주석#

Hand Keypoints 데이터셋은 키포인트가 주석으로 달린 사람 손의 다양한 이미지 세트를 포함합니다. 다음은 데이터셋 이미지 예시와 해당 주석입니다:

Hand keypoints pose estimation dataset sample

  • 모자이크 처리된 이미지: 이 이미지는 모자이크 처리된 데이터셋 이미지로 구성된 학습 배치를 보여줍니다. 모자이킹은 학습 중에 여러 이미지를 하나의 이미지로 결합하여 각 학습 배치 내의 객체와 장면의 다양성을 높이는 데 사용되는 기술입니다. 이는 모델이 다양한 객체 크기, 종횡비 및 맥락에 일반화할 수 있는 능력을 향상시키는 데 도움이 됩니다.

이 예시는 손 키포인트 데이터셋에 포함된 이미지의 다양성과 복잡성, 그리고 학습 과정에서 모자이크(mosaicing)를 사용할 때의 이점을 보여줍니다.

인용 및 감사의 글#

연구 또는 개발 작업에 Hand Keypoints 데이터셋을 사용하는 경우, 다음 출처를 명시해 주시기 바랍니다:

인용

이 데이터셋에 사용된 이미지를 제공해 준 다음 출처에 감사드립니다:

이미지는 각 플랫폼에서 제공하는 해당 라이선스에 따라 수집 및 사용되었으며, 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제 라이선스에 따라 배포됩니다.

또한 Vision AI 연구에 큰 기여를 한 이 데이터셋의 제작자인 Rion Dsilva에게 감사를 표합니다.

FAQ#

  • yolo26n-pose.pt을 로드하고 model.train(data="hand-keypoints.yaml", epochs=100, imgsz=640)을 호출합니다. 전체 Python 및 CLI 스니펫은 위의 Train Example을 참고하고, 전체 인수 목록은 모델 Training 페이지를 참고하십시오.

  • 26,768장의 어노테이션된 이미지와 Google MediaPipe를 통해 생성된 손당 21개의 키포인트를 갖춘 Hand Keypoints 데이터셋은 포즈 추정 모델에 고급 포즈 추정 작업에 필요한 규모와 어노테이션 정확도를 제공합니다. 전체 랜드마크 분석에 대해서는 키포인트 섹션을 참조하세요.

  • Hand Keypoints는 제스처 인식, AR/VR 제어, 로봇 조작, 헬스케어 움직임 분석, 애니메이션, 생체 인증을 지원하며, 각각에 대한 자세한 내용은 응용 프로그램 섹션을 참조하세요.

  • 손 키포인트 데이터셋은 두 개의 하위 집합으로 나뉩니다:

    1. Train: 포즈 추정 모델 학습을 위한 18,776장의 이미지.
    2. Val: 모델 학습 중 검증 목적을 위한 7,992장의 이미지.

    이 구조는 포괄적인 학습 및 검증 프로세스를 보장합니다. 자세한 내용은 데이터셋 구조 섹션을 참조하세요.

  • 데이터셋 구성은 경로, 클래스 및 기타 관련 정보가 포함된 YAML 파일에 정의됩니다. hand-keypoints.yaml 파일은 hand-keypoints.yaml에서 찾을 수 있습니다.

    학습에 이 YAML 파일을 사용하려면 위 학습 예제에 표시된 대로 학습 스크립트나 CLI 명령어에서 지정하세요. 자세한 내용은 데이터셋 YAML 섹션을 참조하세요.

댓글