COCO12-Formats Veri Kümesi#
Giriş#
Ultralytics COCO12-Formats veri kümesi, desteklenen 12 görüntü formatı uzantısında görüntü yüklemeyi doğrulamak için tasarlanmış özel bir test veri kümesidir. Görüntü yükleme işlem hattının kapsamlı şekilde test edilmesini sağlamak amacıyla her biri farklı bir formatta kaydedilmiş 12 görüntü (6 eğitim, 6 doğrulama) içerir.
Bu veri kümesi şu amaçlar için son derece değerlidir:
- Görüntü formatı desteğini test etme: Yaygın görüntü formatlarının doğru şekilde yüklendiğini doğrulama
- CI/CD işlem hatları: Format uyumluluğunun otomatik olarak test edilmesi
- Hata ayıklama: Formatlara özgü sorunları eğitim işlem hatlarında izole etme
- Geliştirme: Yeni format eklemelerini veya değişikliklerini doğrulama
Ultralytics Platform üzerinde veri kümelerini yönettiğinde, bu formatlardan herhangi birindeki görüntüler otomatik olarak işlenir—manuel dönüştürme gerekmez.
Desteklenen Formatlar#
Veri kümesi, ultralytics/data/utils.py içinde tanımlanan desteklenen 12 format uzantısının her biri için bir görüntü içerir:
| Biçim | Uzantı | Açıklama | Eğitim/Doğrulama |
|---|---|---|---|
| AVIF | .avif | AV1 Görüntü Dosyası Formatı (modern) | Eğit |
| BMP | .bmp | Bitmap - sıkıştırılmamış raster formatı | Eğit |
| DNG | .dng | Digital Negative - Adobe RAW formatı | Eğit |
| HEIC | .heic | Yüksek Verimli Görüntü Kodlama | Eğit |
| JPEG | .jpeg | Tam uzantılı JPEG | Eğit |
| JPG | .jpg | Kısa uzantılı JPEG | Eğit |
| JP2 | .jp2 | JPEG 2000 - tıbbi/jeo-uzamsal | Doğrulama |
| MPO | .mpo | Çoklu Görüntü Nesnesi (stereo görüntüler) | Doğrulama |
| PNG | .png | Taşınabilir Ağ Grafikleri | Doğrulama |
| TIF | .tif | Kısa uzantılı TIFF | Doğrulama |
| TIFF | .tiff | Etiketli Görüntü Dosyası Formatı | Doğrulama |
| WebP | .webp | Modern web görüntüsü formatı | Doğrulama |
Veri Kümesi Yapısı#
coco12-formats/
├── images/
│ ├── train/ # 6 images (avif, bmp, dng, heic, jpeg, jpg)
│ └── val/ # 6 images (jp2, mpo, png, tif, tiff, webp)
├── labels/
│ ├── train/ # Corresponding YOLO format labels
│ └── val/
└── coco12-formats.yaml # Dataset configurationVeri Kümesi YAML'i#
COCO12-Formats veri kümesi, veri kümesi yollarını ve sınıf adlarını tanımlayan bir YAML dosyası kullanılarak yapılandırılır. Resmî coco12-formats.yaml dosyasını Ultralytics GitHub deposunda inceleyebilirsin.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO12-Formats dataset (12 images testing all supported image formats) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco12-formats
# Example usage: yolo train data=coco12-formats.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco12-formats ← downloads here (1 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: coco12-formats # dataset root dir
train: images/train # train images (relative to 'path') 6 images
val: images/val # val images (relative to 'path') 6 images
test: # test images (optional)
# Classes
names:
0: person
1: bicycle
2: car
3: motorcycle
4: airplane
5: bus
6: train
7: truck
8: boat
9: traffic light
10: fire hydrant
11: stop sign
12: parking meter
13: bench
14: bird
15: cat
16: dog
17: horse
18: sheep
19: cow
20: elephant
21: bear
22: zebra
23: giraffe
24: backpack
25: umbrella
26: handbag
27: tie
28: suitcase
29: frisbee
30: skis
31: snowboard
32: sports ball
33: kite
34: baseball bat
35: baseball glove
36: skateboard
37: surfboard
38: tennis racket
39: bottle
40: wine glass
41: cup
42: fork
43: knife
44: spoon
45: bowl
46: banana
47: apple
48: sandwich
49: orange
50: broccoli
51: carrot
52: hot dog
53: pizza
54: donut
55: cake
56: chair
57: couch
58: potted plant
59: bed
60: dining table
61: toilet
62: tv
63: laptop
64: mouse
65: remote
66: keyboard
67: cell phone
68: microwave
69: oven
70: toaster
71: sink
72: refrigerator
73: book
74: clock
75: vase
76: scissors
77: teddy bear
78: hair drier
79: toothbrush
# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/coco12-formats.zipGereksinimler#
Manuel bir kurulum gerekmez. OpenCV çoğu formatı doğrudan okur ve Ultralytics, AVIF, HEIC ve HEIF için Pillow'a başvurur. AVIF, Pillow 11.3 veya daha yenisi tarafından yerel olarak çözülür; bu nedenle AVIF dosyaları yüklenemezse Pillow'u yükselt ve HEIC/HEIF kod çözme işlemi ilk kullanımda hafif pi-heif paketini otomatik olarak kurar.
Kullanım#
COCO12-Formats veri kümesi (1 MB), eğitimi ilk kez başlattığında otomatik olarak indirilir. COCO12-Formats veri kümesi üzerinde bir YOLO modeli eğitmek için aşağıdaki örnekleri kullan:
from ultralytics import YOLO
# Load a pretrained YOLO model
model = YOLO("yolo26n.pt")
# Train on COCO12-Formats to test 12 supported image formats
results = model.train(data="coco12-formats.yaml", epochs=1, imgsz=640)Formata Özgü Notlar#
AVIF (AV1 Görüntü Dosyası Formatı)#
AVIF, mükemmel sıkıştırma sunan, AV1 video codec bileşenini temel alan modern bir görüntü formatıdır. OpenCV AVIF desteğinden yoksun olduğunda Ultralytics, ekstra paket gerektirmeden bunu Pillow 11.3 veya daha yenisi aracılığıyla çözer.
DNG (Digital Negative)#
DNG, TIFF tabanlı, Adobe'un açık RAW formatıdır. Test amacıyla veri kümesi, .dng uzantısına sahip TIFF tabanlı dosyalar kullanır.
JP2 (JPEG 2000)#
JPEG 2000, geleneksel JPEG'e göre daha iyi sıkıştırma ve kalite sunan, dalgacık tabanlı bir görüntü sıkıştırma standardıdır. Tıbbi görüntüleme (DICOM), jeo-uzamsal uygulamalar ve dijital sinemada yaygın olarak kullanılır. Hem OpenCV hem de Pillow tarafından yerel olarak desteklenir.
MPO (Çoklu Görüntü Nesnesi)#
MPO dosyaları stereoskopik (3D) görüntüler için kullanılır. Veri kümesi, format testi için .mpo uzantısına sahip standart JPEG verilerini depolar.
HEIC / HEIF (Yüksek Verimli Görüntü Dosyası Formatı)#
Hem .heic hem de .heif uzantıları aynı ISO/IEC 23008-12 kapsayıcısına başvurur. Kural gereği .heic, HEVC ile kodlanmış HEIF dosyalarını (Apple aygıtlarının ürettiği varyant) belirtirken .heif daha geniş kapsamlı uzantıdır.
Ultralytics, her ikisinin kodunu da ultralytics/utils/patches.py içindeki OpenCV → Pillow geri dönüş mekanizmasıyla çözer; bu mekanizma ilk kullanımda pi-heif (hafif, yalnızca kod çözme amaçlı) paketini otomatik olarak kurar — okuma için manuel kurulum gerekmez. HEIC/HEIF dosyalarını kendin üretmek (ör. örnek görüntüleri yeniden kodlamak) için kodlayıcıları içeren tam pillow-heif paketini kur:
pip install pillow-heifKullanım Alanları#
CI/CD Testi#
from ultralytics import YOLO
def test_image_formats():
"""Test that 12 supported image formats load correctly."""
model = YOLO("yolo26n.pt")
results = model.train(data="coco12-formats.yaml", epochs=1, imgsz=64)
assert results is not NoneFormat Doğrulama#
from pathlib import Path
from ultralytics.data.utils import IMG_FORMATS
# Verify all dataset formats are supported
dataset_dir = Path("datasets/coco12-formats/images")
found_formats = {f.suffix[1:].lower() for f in dataset_dir.rglob("*.*")}
assert found_formats <= IMG_FORMATS, f"Unsupported formats: {found_formats - IMG_FORMATS}"Atıflar ve Teşekkürler#
Araştırmanda COCO veri kümesini kullanıyorsan lütfen şu kaynağa atıfta bulun:
@misc{lin2015microsoft,
title={Microsoft COCO: Common Objects in Context},
author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Doll{\'a}r},
year={2015},
eprint={1405.0312},
archivePrefix={arXiv},
primaryClass={cs.CV}
}SSS#
COCO12-Formats veri kümesi, Ultralytics YOLO eğitim işlem hatlarında görüntü formatı uyumluluğunu test etmek için tasarlanmıştır. Desteklenen 12 görüntü formatının (AVIF, BMP, DNG, HEIC, JP2, JPEG, JPG, MPO, PNG, TIF, TIFF, WebP) doğru şekilde yüklenmesini ve işlenmesini sağlar.
Farklı görüntü formatlarının kendine özgü özellikleri vardır (sıkıştırma, bit derinliği, renk uzayları). Tüm formatların test edilmesi şunları sağlar:
- Sağlam görüntü yükleme kodu
- Çeşitli veri kümeleri arasında uyumluluk
- Formata özgü hataların erken tespiti
Hiçbiri manuel kurulum gerektirmez. AVIF, Pillow 11.3 veya daha yenisi tarafından yerel olarak çözülür ve HEIC/HEIF kod çözme işlemi ilk kullanımda
pi-heifpaketini otomatik olarak kurar. HEIC/HEIF dosyalarını kendin yazman gerekiyorsa yalnızca tampillow-heifpaketini kur.



