─░├žeri─če ge├ž

Poz Tahmini Veri K├╝melerine Genel Bak─▒┼č

Desteklenen Veri K├╝mesi Formatlar─▒

Ultralytics YOLO Bi├žim

YOLO poz modellerini e─čitmek i├žin kullan─▒lan veri seti etiket format─▒ a┼ča─č─▒daki gibidir:

  1. G├Âr├╝nt├╝ ba┼č─▒na bir metin dosyas─▒: Veri k├╝mesindeki her g├Âr├╝nt├╝n├╝n, g├Âr├╝nt├╝ dosyas─▒yla ayn─▒ ada ve ".txt" uzant─▒s─▒na sahip kar┼č─▒l─▒k gelen bir metin dosyas─▒ vard─▒r.
  2. Nesne ba┼č─▒na bir sat─▒r: Metin dosyas─▒ndaki her sat─▒r g├Âr├╝nt├╝deki bir nesne ├Ârne─čine kar┼č─▒l─▒k gelir.
  3. Sat─▒r ba┼č─▒na nesne bilgisi: Her sat─▒r, nesne ├Ârne─či hakk─▒nda a┼ča─č─▒daki bilgileri i├žerir:
    • Nesne s─▒n─▒f─▒ indeksi: Nesnenin s─▒n─▒f─▒n─▒ temsil eden bir tamsay─▒ (├Ârne─čin, ki┼či i├žin 0, araba i├žin 1, vb.).
    • Nesne merkezi koordinatlar─▒: Nesnenin merkezinin x ve y koordinatlar─▒, 0 ile 1 aras─▒nda olacak ┼čekilde normalle┼čtirilir.
    • Nesne geni┼čli─či ve y├╝ksekli─či: Nesnenin geni┼čli─či ve y├╝ksekli─či, 0 ile 1 aras─▒nda olacak ┼čekilde normalle┼čtirilir.
    • Nesne anahtar noktas─▒ koordinatlar─▒: Nesnenin 0 ile 1 aras─▒nda olacak ┼čekilde normalle┼čtirilmi┼č anahtar noktalar─▒.

─░┼čte poz tahmini g├Ârevi i├žin etiket format─▒n─▒n bir ├Ârne─či:

Dim = 2 ile bi├žimlendirin

<class-index> <x> <y> <width> <height> <px1> <py1> <px2> <py2> ... <pxn> <pyn>

Dim = 3 ile bi├žimlendirin

<class-index> <x> <y> <width> <height> <px1> <py1> <p1-visibility> <px2> <py2> <p2-visibility> <pxn> <pyn> <p2-visibility>

Bu formatta, <class-index> nesne i├žin s─▒n─▒f─▒n indeksidir,<x> <y> <width> <height> s─▒n─▒rlay─▒c─▒ kutunun koordinatlar─▒ ve <px1> <py1> <px2> <py2> ... <pxn> <pyn> anahtar noktalar─▒n─▒n piksel koordinatlar─▒d─▒r. Koordinatlar bo┼čluklarla ayr─▒lm─▒┼čt─▒r.

Veri k├╝mesi YAML bi├žimi

Ultralytics ├žer├ževesi, Tespit Modellerinin e─čitimi i├žin veri k├╝mesini ve model yap─▒land─▒rmas─▒n─▒ tan─▒mlamak ├╝zere bir YAML dosya bi├žimi kullan─▒r. Burada bir alg─▒lama veri k├╝mesini tan─▒mlamak i├žin kullan─▒lan YAML format─▒n─▒n bir ├Ârne─či yer almaktad─▒r:

# 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: ../datasets/coco8-pose  # dataset root dir
train: images/train  # train images (relative to 'path') 4 images
val: images/val  # val images (relative to 'path') 4 images
test:  # test images (optional)

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

# Classes dictionary
names:
  0: person

Bu train ve val alanlar─▒ s─▒ras─▒yla e─čitim ve do─črulama g├Âr├╝nt├╝lerini i├žeren dizinlerin yollar─▒n─▒ belirtir.

names s─▒n─▒f adlar─▒ndan olu┼čan bir s├Âzl├╝kt├╝r. ─░simlerin s─▒ras─▒, YOLO veri k├╝mesi dosyalar─▒ndaki nesne s─▒n─▒f─▒ indekslerinin s─▒ras─▒ ile e┼čle┼čmelidir.

(─░ste─če ba─čl─▒) noktalar simetrikse, insan veya y├╝z├╝n sol-sa─č taraf─▒ gibi flip_idx'e ihtiya├ž duyar. ├ľrne─čin, y├╝z i┼čaretinin be┼č anahtar noktas─▒n─▒ varsayarsak: [sol g├Âz, sa─č g├Âz, burun, sol a─č─▒z, sa─č a─č─▒z] ve orijinal indeks [0, 1, 2, 3, 4] ise flip_idx [1, 0, 2, 4, 3] olur (sadece sol-sa─č indeksini, yani 0-1 ve 3-4'├╝ de─či┼čtirin ve bu ├Ârnekte burun gibi di─čerlerini de─či┼čtirmeyin).

Kullan─▒m

├ľrnek

from ultralytics import YOLO

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

# Train the model
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco8-pose.yaml model=yolov8n-pose.pt epochs=100 imgsz=640

Desteklenen Veri Setleri

Bu b├Âl├╝mde Ultralytics YOLO format─▒yla uyumlu olan ve poz tahmin modellerini e─čitmek i├žin kullan─▒labilecek veri k├╝meleri ├Âzetlenmektedir:

COCO-Poz

  • A├ž─▒klama: COCO-Pose, b├╝y├╝k ├Âl├žekli bir nesne alg─▒lama, segmentasyon ve poz tahmini veri k├╝mesidir. Pop├╝ler COCO veri setinin bir alt k├╝mesidir ve insan pozu tahminine odaklan─▒r. COCO-Pose, her insan ├Ârne─či i├žin birden fazla anahtar nokta i├žerir.
  • Etiket Format─▒: ─░nsan pozlar─▒ i├žin anahtar noktalarla birlikte yukar─▒da a├ž─▒klanan Ultralytics YOLO format─▒yla ayn─▒d─▒r.
  • S─▒n─▒f Say─▒s─▒: 1 (─░nsan).
  • Anahtar Noktalar: Burun, g├Âzler, kulaklar, omuzlar, dirsekler, bilekler, kal├žalar, dizler ve ayak bilekleri dahil 17 kilit nokta.
  • Kullan─▒m ┼čekli: ─░nsan poz tahmin modellerini e─čitmek i├žin uygundur.
  • Ek Notlar: Veri k├╝mesi zengin ve ├že┼čitlidir, 200 binden fazla etiketli g├Âr├╝nt├╝ i├žerir.
  • COCO-Pose hakk─▒nda daha fazla bilgi edinin

COCO8-Poz

  • A├ž─▒klama: Ultralytics COCO8-Pose, 4'├╝ e─čitim ve 4'├╝ do─črulama i├žin olmak ├╝zere COCO train 2017 setinin ilk 8 g├Âr├╝nt├╝s├╝nden olu┼čan k├╝├ž├╝k ama ├žok y├Ânl├╝ bir poz alg─▒lama veri k├╝mesidir.
  • Etiket Format─▒: ─░nsan pozlar─▒ i├žin anahtar noktalarla birlikte yukar─▒da a├ž─▒klanan Ultralytics YOLO format─▒yla ayn─▒d─▒r.
  • S─▒n─▒f Say─▒s─▒: 1 (─░nsan).
  • Anahtar Noktalar: Burun, g├Âzler, kulaklar, omuzlar, dirsekler, bilekler, kal├žalar, dizler ve ayak bilekleri dahil 17 kilit nokta.
  • Kullan─▒m ┼čekli: Nesne alg─▒lama modellerini test etmek ve hata ay─▒klamak veya yeni alg─▒lama yakla┼č─▒mlar─▒n─▒ denemek i├žin uygundur.
  • Ek Notlar: COCO8-Pose, ak─▒l sa─čl─▒─č─▒ kontrolleri ve CI kontrolleri i├žin idealdir.
  • COCO8-Pose hakk─▒nda daha fazla bilgi edinin

Kaplan Pozu

  • A├ž─▒klama: Ultralytics Bu hayvan pozu veri k├╝mesi, bir YouTube videosundan elde edilen 263 g├Âr├╝nt├╝den olu┼čmaktad─▒r; 210 g├Âr├╝nt├╝ e─čitim i├žin, 53 g├Âr├╝nt├╝ ise do─črulama i├žin ayr─▒lm─▒┼čt─▒r.
  • Etiket Format─▒: Yukar─▒da a├ž─▒klanan Ultralytics YOLO format─▒yla ayn─▒d─▒r, hayvan pozu i├žin 12 anahtar noktas─▒ vard─▒r ve g├Âr├╝n├╝r boyut yoktur.
  • S─▒n─▒f Say─▒s─▒: 1 (Kaplan).
  • Anahtar Noktalar: 12 kilit nokta.
  • Kullan─▒m ┼čekli: Hayvan pozu veya insan temelli olmayan di─čer pozlar i├žin idealdir.
  • Tiger-Pose hakk─▒nda devam─▒n─▒ oku

Kendi veri setinizi ekleme

Kendi veri setiniz varsa ve bunu Ultralytics YOLO format─▒ndaki poz tahmin modellerini e─čitmek i├žin kullanmak istiyorsan─▒z, yukar─▒da "Ultralytics YOLO format─▒" alt─▒nda belirtilen formata uygun oldu─čundan emin olun. Ek a├ž─▒klamalar─▒n─▒z─▒ gerekli bi├žime d├Ân├╝┼čt├╝r├╝n ve YAML yap─▒land─▒rma dosyas─▒nda yollar─▒, s─▒n─▒f say─▒s─▒n─▒ ve s─▒n─▒f adlar─▒n─▒ belirtin.

D├Ân├╝┼čt├╝rme Arac─▒

Ultralytics pop├╝ler COCO veri seti format─▒ndaki etiketleri YOLO format─▒na d├Ân├╝┼čt├╝rmek i├žin kullan─▒┼čl─▒ bir d├Ân├╝┼čt├╝rme arac─▒ sa─člar:

├ľrnek

from ultralytics.data.converter import convert_coco

convert_coco(labels_dir="path/to/coco/annotations/", use_keypoints=True)

Bu d├Ân├╝┼čt├╝rme arac─▒ COCO veri setini veya COCO format─▒ndaki herhangi bir veri setini Ultralytics YOLO format─▒na d├Ân├╝┼čt├╝rmek i├žin kullan─▒labilir. Bu ara├ž use_keypoints parametresi, d├Ân├╝┼čt├╝r├╝len etiketlere anahtar noktalar─▒n (poz tahmini i├žin) dahil edilip edilmeyece─čini belirtir.



Created 2023-11-12, Updated 2024-06-02
Authors: glenn-jocher (8)

Yorumlar