Skip to content

ΠžΠ±Π·ΠΎΡ€ Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… сСгмСнтации экзСмпляров

БСгмСнтация экзСмпляров - это Π·Π°Π΄Π°Ρ‡Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ зрСния, которая Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ. Π’ этом руководствС прСдставлСн ΠΎΠ±Π·ΠΎΡ€ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ultralytics YOLO для Π·Π°Π΄Π°Ρ‡ сСгмСнтации экзСмпляров, Π° Ρ‚Π°ΠΊΠΆΠ΅ инструкции ΠΏΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅, ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ ΠΈ использованию этих Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… для обучСния Π²Π°ΡˆΠΈΡ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…

Ultralytics YOLO Ρ„ΠΎΡ€ΠΌΠ°Ρ‚

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠΊ датасСта, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ сСгмСнтации YOLO , выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  1. Один тСкстовый Ρ„Π°ΠΉΠ» Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅: КаТдоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π½Π°Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ тСкстовый Ρ„Π°ΠΉΠ» с Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈ Ρ„Π°ΠΉΠ» изобраТСния, ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ ".txt".
  2. По ΠΎΠ΄Π½ΠΎΠΉ строкС Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚: КаТдая строка Π² тСкстовом Ρ„Π°ΠΉΠ»Π΅ соотвСтствуСт ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ.
  3. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкС: КаТдая строка содСрТит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± экзСмплярС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°:
    • ИндСкс класса ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°: Π¦Π΅Π»ΠΎΠ΅ число, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π΅ класс ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 0 для Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, 1 для автомобиля ΠΈ Ρ‚.Π΄.).
    • Π“Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°: Π“Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²ΠΎΠΊΡ€ΡƒΠ³ области маски, Π½ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π° значСния ΠΎΡ‚ 0 Π΄ΠΎ 1.

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΠ΄Π½ΠΎΠΉ строки Π² Ρ„Π°ΠΉΠ»Π΅ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… сСгмСнтации выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

<class-index> <x1> <y1> <x2> <y2> ... <xn> <yn>

Π’ этом Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, <class-index> индСкс класса для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΈ <x1> <y1> <x2> <y2> ... <xn> <yn> это Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ маски сСгмСнтации ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… YOLO для ΠΎΠ΄Π½ΠΎΠ³ΠΎ изобраТСния с двумя ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, состоящими ΠΈΠ· 3-Ρ‚ΠΎΡ‡Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΈ 5-Ρ‚ΠΎΡ‡Π΅Ρ‡Π½ΠΎΠ³ΠΎ сСгмСнтов.

0 0.681 0.485 0.670 0.487 0.676 0.487
1 0.504 0.000 0.501 0.004 0.498 0.004 0.493 0.010 0.492 0.0104

НаконСчник

  • Π”Π»ΠΈΠ½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ряда Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ.
  • КаТдая ΠΌΠ΅Ρ‚ΠΊΠ° сСгмСнтации Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 3 Ρ‚ΠΎΡ‡ΠΊΠΈ xy: <class-index> <x1> <y1> <x2> <y2> <x3> <y3>

Набор Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ YAML

Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Ultralytics ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° YAML для опрСдСлСния Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ обнаруТСния. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° YAML, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ для опрСдСлСния Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… обнаруТСния:

# 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-seg # dataset root dir (absolute or relative; if relative, it's relative to default datasets_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)

# Classes (80 COCO classes)
names:
    0: person
    1: bicycle
    2: car
    # ...
    77: teddy bear
    78: hair drier
    79: toothbrush

Π‘Π°ΠΉΡ‚ train ΠΈ val поля ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡƒΡ‚ΠΈ ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ, содСрТащим ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅ изобраТСния соотвСтствСнно.

names прСдставляСт собой ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ ΠΈΠΌΠ΅Π½ классов. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ ΠΈΠΌΠ΅Π½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ порядку индСксов классов ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ„Π°ΠΉΠ»Π°Ρ… Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… YOLO .

ИспользованиС

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

from ultralytics import YOLO

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

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

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

Ultralytics YOLO ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… для Π·Π°Π΄Π°Ρ‡ сСгмСнтации экзСмпляров. Π’ΠΎΡ‚ список Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ…:

  • COCO: Π²ΡΠ΅ΠΎΠ±ΡŠΠ΅ΠΌΠ»ΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… для обнаруТСния, сСгмСнтации ΠΈ создания надписСй ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π±ΠΎΠ»Π΅Π΅ 200 тысяч ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌΡƒ спСктру ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ.
  • COCO8-seg: ΠšΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΠ΅ подмноТСство COCO ΠΈΠ· 8 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для быстрого тСстирования обучСния ΠΌΠΎΠ΄Π΅Π»ΠΈ сСгмСнтации, идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ CI ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ процСсса Π² ultralytics Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅.
  • COCO128-seg: мСньший Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… для Π·Π°Π΄Π°Ρ‡ сСгмСнтации экзСмпляров, содСрТащий подмноТСство ΠΈΠ· 128 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ COCO с аннотациями ΠΊ сСгмСнтации.
  • Carparts-seg: спСциализированный Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π° ΡΠ΅Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ автомобиля, идСально подходящий для Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Он Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΠΈ с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌΠΈ аннотациями ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².
  • Crack-seg: Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для сСгмСнтации Ρ‚Ρ€Π΅Ρ‰ΠΈΠ½ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… повСрхностях. Он Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для обслуТивания ΠΈ контроля качСства инфраструктуры ΠΈ позволяСт ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ изобраТСния для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ слабыС мСста Π² структурС.
  • Package-seg: Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для сСгмСнтации Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² ΠΈ Ρ„ΠΎΡ€ΠΌ. Он особСнно ΠΏΠΎΠ»Π΅Π·Π΅Π½ для логистики ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ складов, помогая Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ систСмы для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ сортировки ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ собствСнного Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…

Если Ρƒ вас Π΅ΡΡ‚ΡŒ собствСнный Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ сСгмСнтации с Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ Ultralytics YOLO , ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ соотвСтствуСт Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ Π²Ρ‹ΡˆΠ΅ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ "Π€ΠΎΡ€ΠΌΠ°Ρ‚Ultralytics YOLO ". ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠΉΡ‚Π΅ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Π² Π½ΡƒΠΆΠ½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΈ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΡƒΡ‚ΠΈ, количСство классов ΠΈ ΠΈΠΌΠ΅Π½Π° классов Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ YAML.

ΠŸΠ΅Ρ€Π΅Π½ΠΎΡ ΠΈΠ»ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² этикСток

Π€ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… COCO Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ YOLO

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΠ· популярного Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… COCO Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ YOLO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° ΠΊΠΎΠ΄Π°:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

from ultralytics.data.converter import convert_coco

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

Π­Ρ‚ΠΎΡ‚ инструмСнт конвСртирования ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для прСобразования Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… COCO ΠΈΠ»ΠΈ любого Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ COCO Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ultralytics YOLO .

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, совмСстим Π»ΠΈ Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, с вашСй модСлью ΠΈ ΡΠΎΠ±Π»ΡŽΠ΄Π°Π΅Ρ‚ Π»ΠΈ ΠΎΠ½ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ соглашСния ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹ для обучСния ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ обнаруТСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

АвтоматичСская аннотация

АвтоаннотированиС - ваТная функция, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… сСгмСнтации с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ обнаруТСния. Она позволяСт быстро ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ Π°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ большоС количСство ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Π½Π΅ прибСгая ΠΊ Ρ€ΡƒΡ‡Π½ΠΎΠΉ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅, Ρ‡Ρ‚ΠΎ экономит врСмя ΠΈ силы.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… для сСгмСнтации с использованиСм ΠΌΠΎΠ΄Π΅Π»ΠΈ обнаруТСния

Для автоаннотирования Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Ultralytics Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ auto_annotate ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

from ultralytics.data.annotator import auto_annotate

auto_annotate(data="path/to/images", det_model="yolo11x.pt", sam_model="sam_b.pt")
АргумСнт Π’ΠΈΠΏ По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ОписаниС
data str трСбуСтся ΠŸΡƒΡ‚ΡŒ ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ, содСрТащСму Ρ†Π΅Π»Π΅Π²Ρ‹Π΅ изобраТСния для Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ сСгмСнтации.
det_model str 'yolo11x.pt' YOLO траСктория ΠΌΠΎΠ΄Π΅Π»ΠΈ обнаруТСния для ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ обнаруТСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.
sam_model str 'sam2_b.pt' ΠŸΡƒΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ SAM для сСгмСнтации (ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈ SAM, SAM2 ΠΈ mobile_sam).
device str '' Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ устройство (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 'cuda:0', 'cpu' ΠΈΠ»ΠΈ '' для автоматичСского опрСдСлСния устройства).
conf float 0.25 YOLO ΠΏΠΎΡ€ΠΎΠ³ достовСрности обнаруТСния для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ слабых ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΉ.
iou float 0.45 ΠŸΠΎΡ€ΠΎΠ³ IoU для Π½Π΅ максимального подавлСния для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ ящиков.
imgsz int 640 Π’Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ для измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ (Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΊΡ€Π°Ρ‚Π΅Π½ 32).
max_det int 300 МаксимальноС количСство ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ для экономии памяти.
classes list[int] None Бписок индСксов классов для обнаруТСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, [0, 1] для Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΈ вСлосипСда).
output_dir str None ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ сохранСния Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ './labels' ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡƒΡ‚ΠΈ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ).

Π‘Π°ΠΉΡ‚ auto_annotate Ѐункция ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΡƒΡ‚ΡŒ ΠΊ вашим изобраТСниям, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ для задания ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ обнаруТСния, Ρ‚.Π΅. YOLO11, YOLOv8 ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ сСгмСнтации, Ρ‚.Π΅, SAM, SAM2 ΠΈΠ»ΠΈ MobileSAMустройство, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для сохранСния Π°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ².

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ возмоТности ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, Π°Π²Ρ‚ΠΎΠ°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя ΠΈ усилия, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для создания высококачСствСнных Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… сСгмСнтации. Π­Ρ‚Π° функция особСнно ΠΏΠΎΠ»Π΅Π·Π½Π° для исслСдоватСлСй ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с большими коллСкциями ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ позволяСт ΠΈΠΌ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈ ΠΎΡ†Π΅Π½ΠΊΠ΅ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, Π° Π½Π΅ Π½Π° Ρ€ΡƒΡ‡Π½ΠΎΠΌ Π°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.

Визуализация Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ ΠΊ Π½Π°Π±ΠΎΡ€Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ часто Π±Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΊ Π½Π°Π±ΠΎΡ€Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² ΠΈΡ… ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π’ Ultralytics для этого прСдусмотрСна слуТСбная функция:

from ultralytics.data.utils import visualize_image_annotations

label_map = {  # Define the label map with all annotated class labels.
    0: "person",
    1: "car",
}

# Visualize
visualize_image_annotations(
    "path/to/image.jpg",  # Input image path.
    "path/to/annotations.txt",  # Annotation file path for the image.
    label_map,
)

Π­Ρ‚Π° функция рисуСт ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π°ΠΌΠΊΠΈ, ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ классов ΠΈ настраиваСт Ρ†Π²Π΅Ρ‚ тСкста для Π»ΡƒΡ‡ΡˆΠ΅ΠΉ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, помогая Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки Π² Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° обучСния.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ масок сСгмСнтации Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ YOLO

Если Ρƒ вас Π΅ΡΡ‚ΡŒ маски сСгмСнтации Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ сСгмСнтации YOLO :

from ultralytics.data.converter import convert_segment_masks_to_yolo_seg

# For datasets like COCO with 80 classes
convert_segment_masks_to_yolo_seg(masks_dir="path/to/masks_dir", output_dir="path/to/output_dir", classes=80)

Π­Ρ‚Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ изобраТСния масок Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ сСгмСнтации YOLO ΠΈ сохраняСт ΠΈΡ… Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

ЧАБВО Π—ΠΠ”ΠΠ’ΠΠ•ΠœΠ«Π• Π’ΠžΠŸΠ ΠžΠ‘Π«

КакиС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ultralytics YOLO для сСгмСнтации экзСмпляров?

Ultralytics YOLO ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСсколько Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… для сСгмСнтации экзСмпляров, ΠΏΡ€ΠΈ этом основным Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ являСтся собствСнный Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ultralytics YOLO . КаТдоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π½Π°Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ тСкстовый Ρ„Π°ΠΉΠ» с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅, сСгмСнтированной Π½Π° нСсколько строк (ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ строкС Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚), с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ индСкса класса ΠΈ Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚. Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹Π΅ инструкции ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… YOLO ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠžΠ±Π·ΠΎΡ€ Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… сСгмСнтации ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Как ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… COCO Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ YOLO ?

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΉ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ COCO Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ YOLO осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ инструмСнтов Ultralytics . Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ convert_coco функция ΠΈΠ· ultralytics.data.converter ΠΌΠΎΠ΄ΡƒΠ»ΡŒ:

from ultralytics.data.converter import convert_coco

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

Π­Ρ‚ΠΎΡ‚ скрипт ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ вашСго Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… COCO Π² Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ YOLO , Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈΡ… ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΌΠΈ для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ YOLO . Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠŸΠ΅Ρ€Π΅Π½ΠΎΡ ΠΈΠ»ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠΊ.

Как ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ YAML-Ρ„Π°ΠΉΠ» для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Ultralytics YOLO ?

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ YAML-Ρ„Π°ΠΉΠ» для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ YOLO с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ultralytics, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΠΈ ΠΊ Π½Π°Π±ΠΎΡ€Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΈΠΌΠ΅Π½Π° классов. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ YAML:

path: ../datasets/coco8-seg # dataset root dir
train: images/train # train images (relative to 'path')
val: images/val # val images (relative to 'path')

names:
    0: person
    1: bicycle
    2: car
    # ...

Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»ΠΈ ΠΏΡƒΡ‚ΠΈ ΠΈ ΠΈΠΌΠ΅Π½Π° классов Π² соотвСтствии с вашим Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ Π€ΠΎΡ€ΠΌΠ°Ρ‚ YAML Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ….

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ функция автоаннотирования Π² Ultralytics YOLO ?

АвтоматичСская аннотация Π² Ultralytics YOLO позволяСт Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ сСгмСнтации для вашСго Π½Π°Π±ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ обнаруТСния. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сокращаСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Ρ€ΡƒΡ‡Π½ΠΎΠΌ ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ auto_annotate Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

from ultralytics.data.annotator import auto_annotate

auto_annotate(data="path/to/images", det_model="yolo11x.pt", sam_model="sam_b.pt")  # or sam_model="mobile_sam.pt"

Π­Ρ‚Π° функция Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ процСсс аннотирования, дСлая Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ быстрым ΠΈ эффСктивным. Для получСния Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ справочник ΠΏΠΎ Π°Π²Ρ‚ΠΎΠ°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ.

πŸ“… Π‘ΠΎΠ·Π΄Π°Π½ΠΎ 1 Π³ΠΎΠ΄ Π½Π°Π·Π°Π΄ ✏️ ОбновлСно 0 Π΄Π½Π΅ΠΉ Π½Π°Π·Π°Π΄

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ