Data Annotation
Veri açıklama, ham verilere sınıflar, kutular, maskeler ve kilit noktalar gibi gerçek referans bilgileri ekler. Göreve göre açıklama türlerini, dosya biçimlerini ve otomatik açıklamayı ele alır.
Veri anotasyonu, denetimli öğrenme modellerinin verilerden öğrenebilmesi için ham verilere, örneğin bir görüntüye sınıf adı, her nesnenin çevresine bir kutu veya çokgen, vücut üzerine anahtar noktalar ya da bir metin aralığına etiket gibi temel gerçek bilgileri ekleme işlemidir. Veri etiketleme ile eş anlamlıdır; bilgisayarlı görü ekipleri kutu ve maskeler gibi çizilmiş geometriler için genellikle anotasyon terimini kullanır. Bir anotasyon iki bölümden oluşur: kişinin veya modelin çizdiği geometri ya da etiket ve bunu eğitim için saklayan dosya biçimi.
Göreve Göre Anotasyon Türleri#
Modelin üretmesi gereken çıktı, anotatörlerin ne çizeceğini belirler. Ayrıntı zaman alır; bu nedenle ekipler, modelin ihtiyaç duyduğu bilgiyi içeren en basit anotasyon türünü seçer.
- Sınıf etiketleri: Görüntü sınıflandırma için görüntü başına bir sınıf; bu sınıf genellikle görüntüyü içeren klasörün adı, yani ImageNet tarzı sınıflandırma veri kümelerinin klasör düzeni olarak saklanır.
- Sınırlayıcı kutular: Nesne algılama için nesne başına bir kutu ve sınıf. YOLO biçimi, görüntü başına bir metin dosyasına nesne başına bir
class x_center y_center width heightsatırı yazar; koordinatlar görüntü boyutuna göre 0–1 aralığında normalize edilir. COCO JSON,[x_min, y_min, width, height]değerlerini piksel cinsinden saklar; Pascal VOC XML ise iki köşenin piksel koordinatlarını saklar. - Yönlendirilmiş kutular: Hava görüntülerindeki gemiler ve araçlar gibi döndürülmüş nesnelere uyan dört köşe noktası; yönlendirilmiş sınırlayıcı kutu algılama için kullanılır.
- Çokgenler ve maskeler: Örnek segmentasyonu için nesnelerin dış hatları veya anlamsal segmentasyon için her piksele atanmış bir sınıf. YOLO ve COCO, çokgenleri köşe noktası listeleri olarak saklar; COCO ayrıca kalabalık bölgelerin maskelerini çalışma uzunluğu kodlaması (RLE) biçiminde saklar.
- Anahtar noktalar: Poz tahmini için her anatomik işaret noktasına ait x, y konumu ve görünürlük bayrağı. COCO kişi anotasyonlarında 17 anahtar nokta bulunur ve her biri etiketlenmemiş, etiketlenmiş ama gizli ya da görünür olarak işaretlenir.
Anotasyon hassasiyeti en çok küçük nesneler için önemlidir. 20 × 20 piksellik bir kutuyu yatayda 3, dikeyde 3 piksel kaydırmak, kutunun özgün kutuyla olan kesişim/birleşim oranını (IoU) 0,57'ye düşürür. Bu nedenle gerçek nesneyle eşleşen bir tahmin, COCO ortalama ortalama hassasiyetinde (mAP) ortalaması alınan 0,60 ile 0,95 arasındaki 10 IoU eşiğinin 8'inde hatalı sayılır. Her sınıfı tanımlayan ve kısmen gizlenmiş nesnelerin kutularının ne kadar sıkı çizileceği gibi sınır durumlarını açıklığa kavuşturan yazılı yönergeler, binlerce anotasyonun tutarlılığını sağlar.
Görüntülerin Ötesinde Anotasyon#
- Video: Çoklu nesne takibi için her karedeki kutular veya maskeler, her nesneyi zaman içinde takip eden iz kimlikleriyle birbirine bağlanır.
- Lidar ve 3B: Sürüş ve robotikte 3B nesne algılama için nokta bulutlarında merkez, boyut ve yön açısı belirtilen küboidler kullanılır.
- Metin: Adlandırılmış varlık tanıma (NER) için karakter konumları ve varlık türüyle işaretlenmiş metin aralıkları ya da duygu analizi gibi görevlerde belge başına bir etiket.
- Ses: Konuşma tanıma için döküm veya konuşmacı kimlikleri içeren zaman damgalı bölümler.
- Model tercihleri: Anotatörler iki model yanıtından daha iyisini seçer ve insan geri bildiriminden pekiştirmeli öğrenme (RLHF) için kullanılan karşılaştırma verilerini üretir.
Otomatik Anotasyon#
Model destekli anotasyon, insanların inceleyip düzelttiği model önerileriyle başlar. Bir algılayıcı, zaten bildiği sınıflar için kutular önerir; Meta'nın Segment Anything modeli gibi istemlenebilir segmentasyon modeli, kutuyu veya tıklamayı maskeye dönüştürerek çokgeni köşe köşe çizme gereğini ortadan kaldırır. Ultralytics paketindeki auto_annotate işlevi bu iki adımı birleştirir: YOLO26 algılayıcısı nesneleri bulup sınıflandırır; Ultralytics paketinde çalışan SAM 2.1 ise her kutuyu YOLO segmentasyon biçiminde kaydedilen bir çokgene dönüştürür.
from pathlib import Path
from ultralytics.data.annotator import auto_annotate
from ultralytics.utils import ASSETS
# Detect objects in the bundled sample images, then turn each box into a SAM 2.1 polygon
auto_annotate(data=ASSETS, det_model="yolo26n.pt", sam_model="sam2.1_b.pt", output_dir="auto_labels")
# Read the annotation file written for the bus image
rows = Path("auto_labels/bus.txt").read_text().splitlines()
print(f"{len(rows)} objects annotated")
print(rows[0][:80])bus.txt içindeki her satır, COCO sınıf indeksini ve ardından çokgenin 0–1 aralığında normalize edilmiş x, y köşe koordinatlarını içerir; böylece anotatör satırı inceleyip düzelttikten sonra eğitim için hazır olur. Varsayılan güven eşiği olan 0,25'in altındaki algılamalara anotasyon eklenmez; bu nedenle kaçırılan nesnelerin elle çizilmesi gerekir.
Veri Anotasyonu ve İlgili Terimler#
- Veri etiketleme: Eş anlamlı bir terimdir; e-postayı spam olarak işaretlemek gibi, öğelerin tamamına sınıf etiketi vermek için daha sık kullanılır.
- Veri artırma: Mevcut temel gerçek verilerin çeşitliliğini artırmak için anotasyonlu görüntüleri ve anotasyonlarını birlikte dönüştürür; örneğin yatay çevirme sırasında kutu koordinatlarını da yansıtır.
- Yarı denetimli öğrenme: Model, etiketsiz verileri kendisi anotasyonlar ve insan incelemesi olmadan sahte etiket adı verilen, güven düzeyi yüksek tahminleriyle eğitim yapar.
- Sentetik veri: Anotasyonları, her nesnenin tam konumunu ve dış hatlarını bilen oluşturucu tarafından sağlanan, işlenmiş veya üretilmiş görüntüler.










