Ultralytics YOLO26 Kullanarak Örnek Segmentasyonu ve Takibi 🚀

Örnek Segmentasyonu Nedir?

Örnek segmentasyonu, bir görüntüdeki bireysel nesneleri piksel düzeyinde tanımlamayı ve ana hatlarını çizmeyi içeren bir bilgisayarlı görü görevidir. Pikselleri yalnızca kategoriye göre sınıflandıran anlamsal segmentasyonun aksine, örnek segmentasyonu her nesne örneğini benzersiz şekilde etiketler ve hassas bir şekilde çizer; bu da tıbbi görüntüleme, otonom sürüş ve endüstriyel otomasyon gibi ayrıntılı uzamsal anlayış gerektiren uygulamalar için onu kritik hale getirir.

Ultralytics YOLO26, YOLO modellerinin bilinen hız ve verimliliğini korurken hassas nesne sınırı algılama sağlayan güçlü örnek segmentasyonu yetenekleri sunar.

Ultralytics paketinde mevcut olan iki tür örnek segmentasyonu takibi vardır:

  • Sınıf Nesneleri ile Örnek Segmentasyonu: Her sınıf nesnesine net bir görsel ayrım için benzersiz bir renk atanır.

  • Nesne İzleri ile Örnek Segmentasyonu: Her iz, video kareleri boyunca kolay tanımlama ve takibi kolaylaştıran belirgin bir renkle temsil edilir.



Watch: Instance Segmentation with Object Tracking using Ultralytics YOLO26

Örnekler

Örnek BölütlemeÖrnek Segmentasyonu + Nesne Takibi
Ultralytics Örnek SegmentasyonuNesne Takibi ile Ultralytics Örnek Segmentasyonu
Ultralytics Örnek Segmentasyonu 😍Nesne Takibi ile Ultralytics Örnek Segmentasyonu 🔥
Ultralytics YOLO kullanarak örnek segmentasyonu
# Instance segmentation using Ultralytics YOLO26
yolo solutions isegment show=True

# Pass a source video
yolo solutions isegment source="path/to/video.mp4"

# Monitor the specific classes
yolo solutions isegment classes="[0, 5]"

InstanceSegmentation Argümanları

İşte InstanceSegmentation argümanlarını içeren bir tablo:

ArgümanTürVarsayılanAçıklama
modelstrNoneBir Ultralytics YOLO model dosyasına giden yol.
regionlist'[(20, 400), (1260, 400)]'Sayım bölgesini tanımlayan noktalar listesi.

You can also take advantage of track arguments within the InstanceSegmentation solution:

ArgümanTürVarsayılanAçıklama
trackerstr'botsort.yaml'Kullanılacak takip algoritmasını belirtir, örneğin bytetrack.yaml veya botsort.yaml.
conffloat0.1Tespitler için güven eşiğini belirler; daha düşük değerler daha fazla nesnenin takip edilmesine izin verir ancak hatalı pozitifleri içerebilir.
ioufloat0.7Çakışan tespitleri filtrelemek için Birleşim Üzerinde Kesişim (IoU) eşiğini belirler.
classeslistNoneSonuçları sınıf dizinine göre filtreler. Örneğin, classes=[0, 2, 3] sadece belirtilen sınıfları takip eder.
verboseboolTrueTakip edilen nesnelerin görsel bir çıktısını sağlayarak takip sonuçlarının görüntülenmesini kontrol eder.
devicestrNoneÇıkarım için cihazı belirtir (örneğin cpu, cuda:0 veya 0). Kullanıcıların model yürütme için CPU, belirli bir GPU veya diğer bilgi işlem cihazları arasında seçim yapmasına olanak tanır.

Üstelik, aşağıdaki görselleştirme argümanları da mevcuttur:

ArgümanTürVarsayılanAçıklama
showboolFalseEğer True ise, açıklamalı görüntüleri veya videoları bir pencerede görüntüler. Geliştirme veya test sırasında anında görsel geri bildirim için kullanışlıdır.
line_widthint or NoneNoneSınırlayıcı kutuların çizgi kalınlığını belirtir. None ise, çizgi kalınlığı otomatik olarak görüntü boyutuna göre ayarlanır. Netlik için görsel özelleştirme sağlar.
show_confboolTrueEtiketle birlikte her tespit için güven puanını görüntüler. Her bir tespit için modelin kesinliği hakkında fikir verir.
show_labelsboolTrueGörsel çıktıda her tespit için etiketleri görüntüler. Tespit edilen nesnelerin anında anlaşılmasını sağlar.

Örnek Segmentasyonu Uygulamaları

YOLO26 ile örnek segmentasyonunun çeşitli endüstrilerde birçok gerçek dünya uygulaması vardır:

Atık Yönetimi ve Geri Dönüşüm

YOLO26, farklı malzeme türlerini tanımlamak ve sınıflandırmak için atık yönetimi tesislerinde kullanılabilir. Model, plastik atıkları, kartonu, metali ve diğer geri dönüştürülebilir malzemeleri yüksek hassasiyetle segmentlere ayırabilir ve böylece otomatik sınıflandırma sistemlerinin atıkları daha verimli işlemesini sağlar. Bu, küresel olarak üretilen 7 milyar ton plastik atığın sadece yaklaşık %10'unun geri dönüştürüldüğü göz önüne alındığında özellikle değerlidir.

Otonom Araçlar

Sürücüsüz arabalarda, örnek segmentasyonu yayaları, araçları, trafik işaretlerini ve diğer yol unsurlarını piksel düzeyinde tanımlamaya ve izlemeye yardımcı olur. Çevrenin bu hassas şekilde anlaşılması, navigasyon ve güvenlik kararları için kritiktir. YOLO26'nın gerçek zamanlı performansı, onu bu zaman açısından kritik uygulamalar için ideal hale getirir.

Tıbbi Görüntüleme

Örnek segmentasyonu, tıbbi taramalarda tümörleri, organları veya hücresel yapıları tanımlayabilir ve ana hatlarını çizebilir. YOLO26'nın nesne sınırlarını hassas bir şekilde çizme yeteneği, onu tıbbi teşhis ve tedavi planlaması için değerli kılar.

Şantiye İzleme

Şantiyelerde, örnek segmentasyonu ağır makineleri, işçileri ve malzemeleri takip edebilir. Bu, ekipman konumlarını izleyerek ve işçilerin tehlikeli alanlara girdiği anları tespit ederek güvenliği sağlamaya yardımcı olurken, aynı zamanda iş akışını ve kaynak tahsisini optimize eder.

Not

Soruların için, Ultralytics Sorun Bölümü veya aşağıda belirtilen tartışma bölümünde sorularını paylaşmaktan çekinme.

SSS

Ultralytics YOLO26 kullanarak nasıl örnek segmentasyonu yapabilirim?

Ultralytics YOLO26 kullanarak örnek segmentasyonu yapmak için, YOLO modelini YOLO26'nın segmentasyon sürümü ile başlat ve video karelerini bu modelden geçir. İşte basitleştirilmiş bir kod örneği:

import cv2

from ultralytics import solutions

cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

# Video writer
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("instance-segmentation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# Init InstanceSegmentation
isegment = solutions.InstanceSegmentation(
    show=True,  # display the output
    model="yolo26n-seg.pt",  # model="yolo26n-seg.pt" for object segmentation using YOLO26.
)

# Process video
while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        print("Video frame is empty or processing is complete.")
        break
    results = isegment(im0)
    video_writer.write(results.plot_im)

cap.release()
video_writer.release()
cv2.destroyAllWindows()

Örnek segmentasyonu hakkında daha fazla bilgiyi Ultralytics YOLO26 kılavuzunda bulabilirsin.

Ultralytics YOLO26'da örnek segmentasyonu ile nesne takibi arasındaki fark nedir?

Örnek segmentasyonu, bir görüntüdeki bireysel nesneleri tanımlar ve ana hatlarını çizer, her nesneye benzersiz bir etiket ve maske verir. Nesne takibi, bunu video kareleri boyunca nesnelere tutarlı kimlikler atayarak genişletir ve aynı nesnelerin zaman içinde sürekli izlenmesini kolaylaştırır. YOLO26'nın uygulamasında olduğu gibi birleştirildiğinde, kesin sınır bilgilerini korurken videolardaki nesne hareketini ve davranışını analiz etmek için güçlü yeteneklere sahip olursun.

Neden Mask R-CNN veya Faster R-CNN gibi diğer modeller yerine örnek segmentasyonu ve takibi için Ultralytics YOLO26 kullanmalıyım?

Ultralytics YOLO26, Mask R-CNN veya Faster R-CNN gibi diğer modellere kıyasla gerçek zamanlı performans, üstün doğruluk ve kullanım kolaylığı sunar. YOLO26, görüntüleri tek geçişte (tek aşamalı algılama) işler, bu da onu yüksek hassasiyeti korurken önemli ölçüde daha hızlı hale getirir. Ayrıca, kullanıcıların modelleri, veri setlerini ve eğitim hatlarını verimli bir şekilde yönetmelerine olanak tanıyan Ultralytics Platform ile sorunsuz entegrasyon sağlar. Hem hız hem de doğruluk gerektiren uygulamalar için YOLO26 en uygun dengeyi sağlar.

Ultralytics tarafından sağlanan, örnek segmentasyonu ve takibi için YOLO26 modellerini eğitmeye uygun herhangi bir veri seti var mı?

Evet, Ultralytics, COCO-Seg, COCO8-Seg (hızlı test için daha küçük bir alt küme), Package-Seg ve Crack-Seg dahil olmak üzere YOLO26 modellerini örnek segmentasyonu için eğitmeye uygun çeşitli veri setleri sunar. Bu veri setleri, örnek segmentasyonu görevleri için gereken piksel düzeyinde açıklamalarla birlikte gelir. Daha özel uygulamalar için, Ultralytics formatını izleyen özel veri setleri de oluşturabilirsin. Tam veri seti bilgileri ve kullanım talimatları Ultralytics Veri Setleri belgelerinde bulunabilir.

Yorumlar