Ultralytics YOLO27:
Get Started

Bộ dữ liệu Dog-Pose#

Giới thiệu#

Bộ dữ liệu Dog-Pose của Ultralytics là bộ dữ liệu chất lượng cao, quy mô lớn, được tuyển chọn chuyên biệt cho tác vụ ước tính keypoint ở chó, cung cấp 6,773 hình ảnh huấn luyện và 1,703 hình ảnh xác thực.



Xem: Cách huấn luyện model Ultralytics YOLO trên dataset ước tính tư thế chó Stanford | Hướng dẫn từng bước

Mỗi hình ảnh được gán nhãn gồm 24 keypoint, mỗi keypoint có 3 chiều (x, y, visibility), khiến bộ dữ liệu này trở thành tài nguyên giá trị cho nghiên cứu và phát triển nâng cao trong lĩnh vực thị giác máy tính.

Ultralytics Dog-Pose display image

Nếu cần một giống chó cụ thể hoặc một loài động vật khác, Ultralytics Platform hỗ trợ tải lên, gán nhãn và huấn luyện model keypoint tùy chỉnh trên dữ liệu của riêng bạn mà không cần quản lý hạ tầng.

Cấu trúc dataset#

  • Tổng số hình ảnh: 8,476 (6,773 train / 1,703 val), cùng các tệp nhãn định dạng YOLO tương ứng.

  • Keypoint: 24 keypoint mỗi con chó, với các bộ ba (x, y, visibility).

  • Dung lượng tải xuống: ~337 MB.

  • Bố cục:

    datasets/dog-pose/
    ├── images/{train,val}
    └── labels/{train,val}

YAML của dataset#

Tệp YAML được dùng để xác định cấu hình bộ dữ liệu. Tệp này bao gồm đường dẫn, thông tin chi tiết về keypoint và các thông tin liên quan khác. Với bộ dữ liệu Dog-Pose, tệp dog-pose.yaml có tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dog-pose.yaml.

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

# Dogs dataset http://vision.stanford.edu/aditya86/ImageNetDogs/ by Stanford
# Documentation: https://docs.ultralytics.com/datasets/pose/dog-pose
# Example usage: yolo train data=dog-pose.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── dog-pose ← downloads here (337 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: dog-pose # dataset root dir
train: images/train # train images (relative to 'path') 6773 images
val: images/val # val images (relative to 'path') 1703 images

# Keypoints
kpt_shape: [24, 3] # number of keypoints, number of dims (2 for x,y or 3 for x,y,visible)

# Classes
names:
  0: dog

# Keypoint names per class
kpt_names:
  0:
    - front_left_paw
    - front_left_knee
    - front_left_elbow
    - rear_left_paw
    - rear_left_knee
    - rear_left_elbow
    - front_right_paw
    - front_right_knee
    - front_right_elbow
    - rear_right_paw
    - rear_right_knee
    - rear_right_elbow
    - tail_start
    - tail_end
    - left_ear_base
    - right_ear_base
    - nose
    - chin
    - left_ear_tip
    - right_ear_tip
    - left_eye
    - right_eye
    - withers
    - throat

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

Cách sử dụng#

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

Ví dụ huấn luyện
from ultralytics import YOLO

# Tải model
model = YOLO("yolo26n-pose.pt")  # tải model đã huấn luyện trước (được khuyến nghị khi huấn luyện)

# Huấn luyện model
results = model.train(data="dog-pose.yaml", epochs=100, imgsz=640)

Hình ảnh mẫu và annotation#

Dưới đây là một số hình ảnh trong bộ dữ liệu Dog-Pose cùng với các chú thích tương ứng:

Dog pose estimation dataset mosaic training batch
  • Ảnh ghép Mosaic: Hình ảnh này minh họa một batch huấn luyện được tạo từ các ảnh mosaic của bộ dữ liệu. Mosaic là kỹ thuật được sử dụng trong quá trình huấn luyện, 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 đối tượng và bối cảnh trong mỗi batch huấn luyện. Kỹ thuật 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à ngữ cảnh khác nhau.

Ví dụ này cho thấy sự đa dạng và phức tạp của hình ảnh trong bộ dữ liệu Dog-Pose cũng như lợi ích của việc ghép ảnh mosaic trong quá trình huấn luyện.

Trích dẫn và lời cảm ơn#

Nếu sử dụng bộ dữ liệu Dog-Pose trong nghiên cứu hoặc phát triển, vui lòng trích dẫn bài báo sau:

Trích dẫn
@inproceedings{khosla2011fgvc,
  title={Novel dataset for Fine-Grained Image Categorization},
  author={Aditya Khosla and Nityananda Jayadevaprakash and Bangpeng Yao and Li Fei-Fei},
  booktitle={First Workshop on Fine-Grained Visual Categorization (FGVC), IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2011}
}
@inproceedings{deng2009imagenet,
  title={ImageNet: A Large-Scale Hierarchical Image Database},
  author={Jia Deng and Wei Dong and Richard Socher and Li-Jia Li and Kai Li and Li Fei-Fei},
  booktitle={IEEE Computer Vision and Pattern Recognition (CVPR)},
  year={2009}
}

Chúng tôi xin ghi nhận đóng góp của nhóm Stanford trong việc tạo và duy trì tài nguyên quý giá này cho cộng đồng thị giác máy tính. Để biết thêm thông tin về bộ dữ liệu Dog-Pose và những người tạo ra bộ dữ liệu, hãy truy cập trang web Stanford Dogs Dataset.

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

  • Bộ dữ liệu Dog-Pose có 6,773 hình ảnh huấn luyện và 1,703 hình ảnh xác thực, được gán nhãn 24 keypoint để ước tính tư thế chó. Bộ dữ liệu được thiết kế để huấn luyện và xác thực model với Ultralytics YOLO26, hỗ trợ các ứng dụng như phân tích hành vi động vật, theo dõi thú cưng và nghiên cứu thú y. Các chú thích toàn diện của bộ dữ liệu khiến bộ dữ liệu trở nên lý tưởng để phát triển model ước tính tư thế chó có độ chính xác cao.

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

  • Với tổng cộng 8,476 hình ảnh (6,773 train / 1,703 val) bao quát nhiều giống chó và tư thế khác nhau, cùng 24 keypoint gồm 3 chiều (x, y, visibility) cho mỗi chú thích, bộ dữ liệu Dog-Pose cung cấp cho model độ bao phủ tình huống thực tế cần thiết cho các ứng dụng như theo dõi thú cưng và phân tích hành vi. Để biết thêm về các tính năng và cách sử dụng, xem phần Giới thiệu bộ dữ liệu.

  • Ghép ảnh mosaic kết hợp nhiều hình ảnh Dog-Pose thành một hình ảnh huấn luyện, tăng sự đa dạng về tư thế, kích thước và nền của chó mà model tiếp nhận trong mỗi bước, nhờ đó cải thiện khả năng khái quát hóa sang ngữ cảnh và tỷ lệ mới, đồng thời giảm overfitting. Xem phần Hình ảnh mẫu và chú thích để tham khảo hình ảnh ví dụ.

  • Có thể tìm tệp YAML của bộ dữ liệu Dog-Pose tại https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/dog-pose.yaml. Tệp này xác định cấu hình bộ dữ liệu, bao gồm đường dẫn, lớp, thông tin chi tiết về keypoint và các thông tin liên quan khác. YAML chỉ định 24 keypoint với 3 chiều cho mỗi keypoint, phù hợp cho các tác vụ ước tính tư thế chi tiết.

    Để sử dụng tệp này với các script huấn luyện YOLO26, chỉ cần tham chiếu tệp trong lệnh huấn luyện như minh họa trong phần Cách sử dụng. Bộ dữ liệu sẽ tự động được tải xuống khi sử dụng lần đầu, giúp việc thiết lập trở nên đơn giản.

    Để tìm hiểu thêm về model keypoint, xem tài liệu tác vụ Ước tính tư thế.

Bình luận