Etkileşimli Nesne Algılama: Gradio & Ultralytics YOLO11 🚀
Etkileşimli Nesne Algılamaya Giriş
Bu Gradio arayüzü, nesne algılama işlemini gerçekleştirmek için kolay ve etkileşimli bir yol sağlar. Ultralytics YOLO11 model. Kullanıcılar görüntüleri yükleyebilir ve gerçek zamanlı algılama sonuçları elde etmek için güven eşiği ve kesişim-üzerinde-birleşme (IoU) eşiği gibi parametreleri ayarlayabilir.
İzle: Gradio ile Entegrasyon Ultralytics YOLO11
Nesne Algılama için Neden Gradio Kullanılmalı?
- Kullanıcı Dostu Arayüz: Gradio, kullanıcıların herhangi bir kodlama gereksinimi olmadan görüntü yüklemeleri ve algılama sonuçlarını görselleştirmeleri için basit bir platform sunar.
- Gerçek Zamanlı Ayarlamalar: Güven ve IoU eşikleri gibi parametreler anında ayarlanabilir, böylece anında geri bildirim ve tespit sonuçlarının optimizasyonu sağlanır.
- Geniş Erişilebilirlik: Gradio web arayüzüne herkes tarafından erişilebilir, bu da onu gösteriler, eğitim amaçları ve hızlı deneyler için mükemmel bir araç haline getirir.
Gradio Nasıl Kurulur
Arayüz Nasıl Kullanılır
- Görüntü Yükle: Nesne algılama için bir görüntü dosyası seçmek üzere 'Görüntü Yükle' üzerine tıklayın.
- Parametreleri Ayarlayın:
- Güven Eşiği: Nesneleri tespit etmek için minimum güven seviyesini ayarlamak için kaydırıcı.
- IoU Eşiği: Farklı nesneleri ayırt etmek için IoU eşiğini ayarlamak için kaydırıcı.
- Sonuçları Görüntüle: Algılanan nesneleri ve etiketlerini içeren işlenmiş görüntü görüntülenecektir.
Örnek Kullanım Durumları
- Örnek Resim 1: Varsayılan eşiklerle otobüs algılama.
- Örnek Görüntü 2: Varsayılan eşik değerleriyle bir spor görüntüsü üzerinde algılama.
Kullanım Örneği
Bu bölümde Ultralytics YOLO11 modeli ile Gradio arayüzünü oluşturmak için kullanılan Python kodu sağlanmaktadır. Sınıflandırma görevlerini, algılama görevlerini, segmentasyon görevlerini ve anahtar nokta görevlerini destekler.
import gradio as gr
import PIL.Image as Image
from ultralytics import ASSETS, YOLO
model = YOLO("yolo11n.pt")
def predict_image(img, conf_threshold, iou_threshold):
"""Predicts objects in an image using a YOLO11 model with adjustable confidence and IOU thresholds."""
results = model.predict(
source=img,
conf=conf_threshold,
iou=iou_threshold,
show_labels=True,
show_conf=True,
imgsz=640,
)
for r in results:
im_array = r.plot()
im = Image.fromarray(im_array[..., ::-1])
return im
iface = gr.Interface(
fn=predict_image,
inputs=[
gr.Image(type="pil", label="Upload Image"),
gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
],
outputs=gr.Image(type="pil", label="Result"),
title="Ultralytics Gradio",
description="Upload images for inference. The Ultralytics YOLO11n model is used by default.",
examples=[
[ASSETS / "bus.jpg", 0.25, 0.45],
[ASSETS / "zidane.jpg", 0.25, 0.45],
],
)
if __name__ == "__main__":
iface.launch()
Parametreler Açıklama
Parametre Adı | Tip | Açıklama |
---|---|---|
img |
Image |
Nesne algılamanın gerçekleştirileceği görüntü. |
conf_threshold |
float |
Nesneleri tespit etmek için güven eşiği. |
iou_threshold |
float |
Nesne ayrımı için kesişim-üzerinde-birleşme eşiği. |
Gradio Arayüz Bileşenleri
Bileşen | Açıklama |
---|---|
Görüntü Girişi | Tespit için görüntüyü yüklemek için. |
Sürgüler | Güven ve IoU eşiklerini ayarlamak için. |
Görüntü Çıktısı | Algılama sonuçlarını görüntülemek için. |
SSS
Gradio'yu nesne algılama için Ultralytics YOLO11 ile nasıl kullanabilirim?
Gradio'yu nesne algılama için Ultralytics YOLO11 ile kullanmak için aşağıdaki adımları takip edebilirsiniz:
- Gradio'yu yükleyin: Şu komutu kullanın
pip install gradio
. - Arayüz Oluşturun: Gradio arayüzünü başlatmak için bir Python kodu yazın. Ayrıntılar için belgelerde verilen kod örneğine başvurabilirsiniz.
- Yükleyin ve Ayarlayın: Görüntünüzü yükleyin ve gerçek zamanlı nesne algılama sonuçları almak için Gradio arayüzünde güven ve IoU eşiklerini ayarlayın.
İşte referans için minimal bir kod parçacığı:
import gradio as gr
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
def predict_image(img, conf_threshold, iou_threshold):
results = model.predict(
source=img,
conf=conf_threshold,
iou=iou_threshold,
show_labels=True,
show_conf=True,
)
return results[0].plot() if results else None
iface = gr.Interface(
fn=predict_image,
inputs=[
gr.Image(type="pil", label="Upload Image"),
gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
],
outputs=gr.Image(type="pil", label="Result"),
title="Ultralytics Gradio YOLO11",
description="Upload images for YOLO11 object detection.",
)
iface.launch()
Ultralytics YOLO11 nesne tespiti için Gradio kullanmanın faydaları nelerdir?
Ultralytics YOLO11 nesne tespiti için Gradio'yu kullanmak çeşitli avantajlar sunar:
- Kullanıcı Dostu Arayüz: Gradio, kullanıcıların herhangi bir kodlama çabası olmadan görüntü yüklemeleri ve algılama sonuçlarını görselleştirmeleri için sezgisel bir arayüz sağlar.
- Gerçek Zamanlı Ayarlamalar: Güven ve IoU eşikleri gibi algılama parametrelerini dinamik olarak ayarlayabilir ve etkilerini anında görebilirsiniz.
- Erişilebilirlik: Web arayüzüne herkes erişebilir, bu da onu hızlı deneyler, eğitim amaçları ve gösteriler için kullanışlı hale getirir.
Daha fazla ayrıntı için bu blog yazısını okuyabilirsiniz.
Gradio ve Ultralytics YOLO11 adreslerini eğitim amacıyla birlikte kullanabilir miyim?
Evet, Gradio ve Ultralytics YOLO11 birlikte eğitim amaçlı olarak etkin bir şekilde kullanılabilir. Gradio'nun sezgisel web arayüzü, öğrencilerin ve eğitimcilerin gelişmiş programlama becerilerine ihtiyaç duymadan Ultralytics YOLO11 gibi son teknoloji derin öğrenme modelleriyle etkileşime girmesini kolaylaştırır. Gradio, farklı parametrelerin algılama performansı üzerindeki etkisini anlamaya yardımcı olan anında görsel geri bildirim sağladığından, bu kurulum nesne algılama ve bilgisayarla görme alanındaki temel kavramları göstermek için idealdir.
YOLO11 için Gradio arayüzünde güven ve IoU eşiklerini nasıl ayarlayabilirim?
YOLO11 için Gradio arayüzünde, sağlanan kaydırıcıları kullanarak güven ve IoU eşiklerini ayarlayabilirsiniz. Bu eşikler, tahmin doğruluğunu ve nesne ayrımını kontrol etmeye yardımcı olur:
- Güven Eşiği: Nesneleri tespit etmek için minimum güven seviyesini belirler. Gerekli güveni artırmak veya azaltmak için kaydırın.
- IoU Eşiği: Üst üste binen nesneleri ayırt etmek için kesişim-over-union eşiğini ayarlar. Nesne ayrımını hassaslaştırmak için bu değeri ayarlayın.
Bu parametreler hakkında daha fazla bilgi için parametrelerin açıklanması bölümünü ziyaret edin.
Gradio ile Ultralytics YOLO11 kullanmanın bazı pratik uygulamaları nelerdir?
Ultralytics YOLO11 adresini Gradio ile birleştirmenin pratik uygulamaları şunlardır:
- Gerçek Zamanlı Nesne Algılama Gösterileri: Nesne algılamanın gerçek zamanlı olarak nasıl çalıştığını göstermek için idealdir.
- Eğitim Araçları: Nesne algılama ve bilgisayarla görme kavramlarını öğretmek için akademik ortamlarda kullanışlıdır.
- Prototip Geliştirme: Prototip nesne algılama uygulamalarını hızlı bir şekilde geliştirmek ve test etmek için etkilidir.
- Topluluk ve İşbirlikleri: Geri bildirim ve işbirliği için modelleri toplulukla paylaşmayı kolaylaştırmak.
Benzer kullanım örnekleri için Ultralytics bloguna göz atın.
Bu bilgilerin dokümantasyon içinde sağlanması, Ultralytics YOLO11 adresinin kullanılabilirliğini ve erişilebilirliğini artırmaya yardımcı olacak ve her uzmanlık seviyesindeki kullanıcılar için daha ulaşılabilir hale getirecektir.