Çıkarım
Ultralytics , eğitilmiş modelleri test etmek için bir çıkarım API'si sağlar. Hızlı doğrulama için tarayıcı tabanlı Test sekmesini veya programlı erişim REST API kullanın.
Test Sekmesi
Her model, tarayıcı tabanlı çıkarım için bir Test sekmesi içerir:
- Modelinize gidin
- Test sekmesine tıklayın
- Bir resim yükleyin veya örnekleri kullanın
- Tahminleri anında görüntüleyin
Resim Yükle
Sürükle ve bırak veya tıklayarak yükle:
- Desteklenen formatlar: JPG, PNG, WebP, GIF
- Maksimum boyut: 10 MB
- Otomatik çıkarım: Sonuçlar otomatik olarak görünür
Örnek Resimler
Hızlı test için yerleşik örnek görüntüleri kullanın:
| Resim | İçerik |
|---|---|
bus.jpg | Araçların bulunduğu sokak manzarası |
zidane.jpg | İnsanların bulunduğu spor sahnesi |
Sonuçları Görüntüle
Çıkarım sonuçları gösterimi:
- Sınıf etiketli sınırlayıcı kutular
- Her bir algılama için güven puanları
- Veri kümenize uygun sınıf renkleri
Çıkarım Parametreleri
Parametrelerle algılama davranışını ayarlayın:
| Parametre | Aralık | Varsayılan | Açıklama |
|---|---|---|---|
| Güven | 0,0-1,0 | 0.25 | Minimum güven eşiği |
| IoU | 0,0-1,0 | 0.45 | NMS IoU |
| Resim Boyutu | 32-1280 | 640 | Giriş boyutunu yeniden boyutlandır |
Güven Eşiği
Tahminleri güvenilirliğe göre filtrele:
- Daha yüksek (0,5+): Daha az sayıda, daha kesin tahminler
- Düşük (0,1-0,25): Daha fazla tahmin, biraz gürültü
- Varsayılan (0,25): Çoğu kullanım durumu için dengeli
IoU
Kontrol Maksimum Olmayan Bastırma:
- Yüksek (0,7+): Kutuların üst üste binmesine izin ver
- Düşük (0,3-0,45): Yakındaki algılamaları birleştir
- Varsayılan (0,45): Standart NMS
REST API
Programlı olarak erişim çıkarımında bulunma:
Kimlik Doğrulama
İsteklere API anahtarınızı ekleyin:
Authorization: Bearer YOUR_API_KEY
Uç nokta
POST https://platform.ultralytics.com/api/models/{model_slug}/predict
Talep
curl -X POST \
"https://platform.ultralytics.com/api/models/username/project/model/predict" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@image.jpg" \
-F "conf=0.25" \
-F "iou=0.45"
import requests
url = "https://platform.ultralytics.com/api/models/username/project/model/predict"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
files = {"file": open("image.jpg", "rb")}
data = {"conf": 0.25, "iou": 0.45}
response = requests.post(url, headers=headers, files=files, data=data)
print(response.json())
Yanıt
{
"success": true,
"predictions": [
{
"class": "person",
"confidence": 0.92,
"box": {
"x1": 100,
"y1": 50,
"x2": 300,
"y2": 400
}
},
{
"class": "car",
"confidence": 0.87,
"box": {
"x1": 400,
"y1": 200,
"x2": 600,
"y2": 350
}
}
],
"image": {
"width": 1920,
"height": 1080
}
}
Yanıt Alanları
| Alan | Tür | Açıklama |
|---|---|---|
success | boolean | Talep durumu |
predictions | dizi | Algılama listesi |
predictions[].class | dize | Sınıf adı |
predictions[].confidence | yüzmek | Algılama güvenilirliği (0-1) |
predictions[].box | nesne | Sınır kutusu koordinatları |
image | nesne | Orijinal görüntü boyutları |
Göreve Özgü Yanıtlar
Yanıt biçimi göreve göre değişir:
{
"class": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400}
}
{
"class": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400},
"segments": [[100, 50], [150, 60], ...]
}
{
"class": "person",
"confidence": 0.92,
"box": {"x1": 100, "y1": 50, "x2": 300, "y2": 400},
"keypoints": [
{"x": 200, "y": 75, "conf": 0.95},
...
]
}
{
"predictions": [
{"class": "cat", "confidence": 0.95},
{"class": "dog", "confidence": 0.03}
]
}
Hız Sınırları
Paylaşılan çıkarımın hız sınırları vardır:
| Plan | İstekler/Dakika | Talepler/Gün |
|---|---|---|
| Ücretsiz | 10 | 100 |
| Pro | 60 | 10,000 |
Daha yüksek sınırlar için, özel bir uç nokta dağıtın.
Hata İşleme
Sık görülen hata yanıtları:
| Kod | Mesaj | Çözüm |
|---|---|---|
| 400 | Geçersiz resim | Dosya formatını kontrol edin |
| 401 | Yetkisiz | API anahtarını doğrula |
| 404 | Model bulunamadı | Model slug'ını kontrol edin |
| 429 | Hız sınırlı | Bekle veya planı yükselt |
| 500 | Sunucu hatası | İsteği tekrar dene |
SSS
Videoda çıkarım yapabilir miyim?
API tek tek kareleri kabul eder. Video için:
- Çerçeveleri yerel olarak çıkar
- Her kareyi API'ye gönder
- Toplam sonuçlar
Gerçek zamanlı video için, özel bir uç nokta kullanmayı düşünün.
Açıklamalı görüntüyü nasıl elde edebilirim?
API, JSON tahminlerini döndürür. Görselleştirmek için:
- Tahminleri kullanarak yerel olarak kutular çizin
- Ultralytics kullanın
plot()yöntem:
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
results = model("image.jpg")
results[0].save("annotated.jpg")
Maksimum görüntü boyutu nedir?
- Yükleme sınırı: 10 MB
- Recommended: <5MB for fast inference
- Otomatik yeniden boyutlandırma: Görüntüler yeniden boyutlandırılır
imgszparametre
Büyük resimler, en boy oranı korunarak otomatik olarak yeniden boyutlandırılır.
Toplu çıkarım yapabilir miyim?
Mevcut API, her istek başına bir görüntüyü işler. Toplu iş için:
- Eşzamanlı istekler gönder
- Daha yüksek verim için özel bir uç nokta kullanın
- Büyük partiler için yerel çıkarımları dikkate alın