YOLO Vision 2026:

Tập dữ liệu Tiger-Pose#

Giới thiệu#

Ultralytics giới thiệu bộ dữ liệu Tiger-Pose, một tập hợp đa dạng được thiết kế cho các tác vụ ước lượng tư thế (pose estimation). Bộ dữ liệu này bao gồm 263 hình ảnh lấy từ một video YouTube, với 210 hình ảnh được phân bổ để huấn luyện và 53 hình ảnh để xác thực. Đây là một tài nguyên tuyệt vời để kiểm thử và khắc phục sự cố cho các thuật toán ước lượng tư thế.

Mặc dù có tập huấn luyện tương đối nhỏ gọn với 210 hình ảnh, bộ dữ liệu Tiger-Pose vẫn đảm bảo tính đa dạng, giúp nó phù hợp để đánh giá các pipeline huấn luyện, phát hiện các lỗi tiềm ẩn, và đóng vai trò là một bước chuẩn bị có giá trị trước khi làm việc với các bộ dữ liệu lớn hơn cho tác vụ ước lượng tư thế.

Sau khi pipeline của bạn huấn luyện thành công trên tập dữ liệu nhỏ này, hãy thay thế bằng các điểm đặc trưng (keypoints) của động vật hoặc đối tượng của riêng bạn và mở rộng quy mô huấn luyện trên Ultralytics Platform mà không cần rời khỏi trình duyệt.

Cấu trúc tập dữ liệu#

  • Tổng số hình ảnh: 263 (210 train / 53 val).
  • Keypoint: 12 điểm mỗi con hổ (không có cờ hiển thị).
  • Dung lượng tải xuống: ~49.8 MB.
  • Cấu trúc thư mục: Các keypoints định dạng YOLO được lưu trữ trong labels/{train,val} cùng với các thư mục images/{train,val}.


Watch: Train an Ultralytics YOLO Pose Model on the Tiger-Pose Dataset

YAML tập dữ liệu#

Tệp YAML đóng vai trò là phương tiện để chỉ định các chi tiết cấu hình của một bộ dữ liệu. Nó bao gồm các dữ liệu quan trọng như đường dẫn tệp, định nghĩa lớp và các thông tin liên quan khác. Cụ thể, đối với tệp tiger-pose.yaml, bạn có thể xem Tệp cấu hình bộ dữ liệu Ultralytics Tiger-Pose.

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

# Tiger Pose dataset by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/pose/tiger-pose
# Example usage: yolo train data=tiger-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── tiger-pose ← downloads here (49.8 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: tiger-pose # dataset root dir
train: images/train # train images (relative to 'path') 210 images
val: images/val # val images (relative to 'path') 53 images

# Keypoints
kpt_shape: [12, 2] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)
flip_idx: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

# Classes
names:
  0: tiger

# Keypoint names per class
kpt_names:
  0:
    - nose
    - head
    - withers
    - tail_base
    - right_hind_hock
    - right_hind_paw
    - left_hind_paw
    - left_hind_hock
    - right_front_wrist
    - right_front_paw
    - left_front_wrist
    - left_front_paw

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

Cách sử dụng#

Để huấn luyện model YOLO26n-pose trên bộ dữ liệu Tiger-Pose trong 100 epoch với kích thước ảnh là 640, bạn có thể sử dụng các đoạn mã sau. Để có danh sách toàn diện các tham số có sẵn, hãy tham khảo trang Huấn luyện của model.

Ví dụ về Training
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="tiger-pose.yaml", epochs=100, imgsz=640)

Hình ảnh mẫu và chú thích#

Dưới đây là một số ví dụ về hình ảnh từ tập dữ liệu Tiger-Pose, cùng với các chú thích tương ứng:

Tiger pose estimation dataset mosaic training batch
  • Hình ảnh Mosaiced: Hình ảnh này minh họa một batch huấn luyện bao gồm các hình ảnh từ tập dữ liệu đã được áp dụng kỹ thuật Mosaic. Mosaic là một kỹ thuật được sử dụng trong quá trình huấn luyện nhằm kết hợp nhiều hình ảnh thành một hình ảnh duy nhất để tăng sự đa dạng của các đối tượng và bối cảnh trong mỗi batch huấn luyện. Điều này giúp cải thiện khả năng tổng quát hóa của model đối với các kích thước đối tượng, tỷ lệ khung hình và bối cảnh khác nhau.

Ví dụ này cho thấy sự đa dạng và phức tạp của các hình ảnh trong tập dữ liệu Tiger-Pose cũng như những lợi ích của việc sử dụng kỹ thuật Mosaic trong quá trình huấn luyện.

Ví dụ về Inference#

Sau khi huấn luyện, hãy tải checkpoint tốt nhất của bạn lên và chạy suy luận (inference) trên các hình ảnh hoặc video mới — hãy xem trang Dự đoán để biết danh sách đầy đủ các tham số.

Ví dụ về Inference
from ultralytics import YOLO

# Load a model
model = YOLO("path/to/best.pt")  # load a tiger-pose trained model

# Run inference
results = model.predict(source="https://youtu.be/Gc6K5eKrTNQ", show=True)

Trích dẫn và Ghi nhận#

Ultralytics phát hành các chú thích (annotations) của bộ dữ liệu Tiger-Pose theo Giấy phép AGPL-3.0. Video nguồn vẫn tuân theo các điều khoản gốc, cần được xem xét trước khi sử dụng hoặc phân phối lại các khung hình được trích xuất.

Câu hỏi thường gặp#

  • Bộ dữ liệu Ultralytics Tiger-Pose được thiết kế cho các tác vụ ước lượng tư thế, bao gồm 263 hình ảnh lấy từ một video YouTube. Bộ dữ liệu được chia thành 210 hình ảnh huấn luyện và 53 hình ảnh xác thực, rất phù hợp để kiểm thử, huấn luyện và tinh chỉnh các thuật toán ước lượng tư thế.

  • Tải yolo26n-pose.pt và gọi model.train(data="tiger-pose.yaml", epochs=100, imgsz=640) — hãy xem phần Ví dụ huấn luyện ở trên để có các đoạn mã Python và CLI đầy đủ, cùng với trang Huấn luyện để xem danh sách toàn diện các tham số.

  • Tệp tiger-pose.yaml định nghĩa đường dẫn bộ dữ liệu, các thư mục hình ảnh train/val, một lớp duy nhất (tiger), và kpt_shape: [12, 2] — 12 keypoints cho mỗi thể hiện không có cờ hiển thị (visibility flag). Xem Tệp cấu hình bộ dữ liệu Ultralytics Tiger-Pose để biết cấu hình chính xác.

  • Tải checkpoint đã huấn luyện của bạn (ví dụ: path/to/best.pt) và gọi model.predict(source=..., show=True) — hãy xem phần Ví dụ suy luận ở trên để có các đoạn mã Python và CLI đầy đủ, và trang Dự đoán để có danh sách toàn diện các tham số.

  • Với tổng cộng 263 hình ảnh (210 train / 53 val), 1 class, 12 keypoints mỗi instance và dung lượng tải xuống ~49.8 MB, Tiger-Pose đủ nhỏ để quản lý nhanh chóng nhưng vẫn đủ đa dạng để kiểm tra tính hợp lệ của pipeline training pose và xác định các lỗi trước khi làm việc với các bộ dữ liệu lớn hơn.

Bình luận