Ultralytics kullanılarak Hız Tahmini YOLO11 🚀
Hız Tahmini Nedir?
Hız tahmini, genellikle bilgisayarla görme uygulamalarında kullanılan, belirli bir bağlam içinde bir nesnenin hareket oranını hesaplama işlemidir. Artık Ultralytics YOLO11 adresini kullanarak, trafik ve gözetim gibi görevler için çok önemli olan mesafe ve zaman verilerinin yanı sıra nesne izlemeyi kullanarak nesnenin hızını hesaplayabilirsiniz. Hız tahmininin doğruluğu, çeşitli uygulamaların verimliliğini ve güvenilirliğini doğrudan etkileyerek akıllı sistemlerin ve gerçek zamanlı karar verme süreçlerinin ilerlemesinde önemli bir bileşen haline getirir.
İzle: Ultralytics YOLO11 kullanarak Hız Tahmini
Blogumuza Göz Atın
Hız tahmini hakkında daha derin bilgiler için blog yazımıza göz atın: Ultralytics Bilgisayarla Görme Projelerinde Hız Tahmini için YOLO11
Hız Tahmininin Avantajları?
- Verimli Trafik Kontrolü: Doğru hız tahmini, trafik akışını yönetmeye, güvenliği artırmaya ve karayollarındaki tıkanıklığı azaltmaya yardımcı olur.
- Hassas Otonom Navigasyon: Kendi kendine giden arabalar gibi otonom sistemlerde, güvenilir hız tahmini güvenli ve doğru araç navigasyonu sağlar.
- Geliştirilmiş Gözetim Güvenliği: Gözetim analitiğindeki hız tahmini, olağandışı davranışların veya potansiyel tehditlerin belirlenmesine yardımcı olarak güvenlik önlemlerinin etkinliğini artırır.
Gerçek Dünya Uygulamaları
Ulaşım | Ulaşım |
---|---|
Ultralytics YOLO11 kullanarak Yolda Hız Tahmini | Ultralytics YOLO11 kullanarak Köprü Üzerinde Hız Tahmini |
YOLO11 Örneği Kullanarak Hız Tahmini
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("Path/to/video/file.mp4")
assert cap.isOpened(), "Error reading video file"
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
video_writer = cv2.VideoWriter("speed_management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Define speed region points
speed_region = [(20, 400), (1080, 404), (1080, 360), (20, 360)]
speed = solutions.SpeedEstimator(
show=True, # Display the output
model="yolo11n-pose.pt", # Path to the YOLO11 model file.
region=speed_region, # Pass region points
# classes=[0, 2], # If you want to estimate speed of specific classes.
# line_width=2, # Adjust the line width for bounding boxes and text display
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if success:
out = speed.estimate_speed(im0)
video_writer.write(im0)
if cv2.waitKey(1) & 0xFF == ord("q"):
break
continue
print("Video frame is empty or video processing has been successfully completed.")
break
cap.release()
cv2.destroyAllWindows()
Hız Tahminidir
Hız bir tahmin olacaktır ve tamamen doğru olmayabilir. Ayrıca, tahmin GPU hızına bağlı olarak değişebilir.
Argümanlar SpeedEstimator
İsim | Tip | Varsayılan | Açıklama |
---|---|---|---|
model | str | None | Ultralytics YOLO Model Dosyasının Yolu |
region | list | [(20, 400), (1260, 400)] | Sayım bölgesini tanımlayan noktaların listesi. |
line_width | int | 2 | Sınırlayıcı kutular için çizgi kalınlığı. |
show | bool | False | Video akışının görüntülenip görüntülenmeyeceğini kontrol etmek için bayrak. |
Argümanlar model.track
Tartışma | Tip | Varsayılan | Açıklama |
---|---|---|---|
source | str | None | Resimler veya videolar için kaynak dizini belirtir. Dosya yollarını ve URL'leri destekler. |
persist | bool | False | Video dizileri boyunca kimlikleri koruyarak nesnelerin kareler arasında kalıcı olarak izlenmesini sağlar. |
tracker | str | botsort.yaml | Kullanılacak izleme algoritmasını belirtir, örn, bytetrack.yaml veya botsort.yaml . |
conf | float | 0.3 | Algılamalar için güven eşiğini ayarlar; düşük değerler daha fazla nesnenin izlenmesine izin verir ancak yanlış pozitifler içerebilir. |
iou | float | 0.5 | Çakışan algılamaları filtrelemek için Birlik üzerinde Kesişim (IoU) eşiğini ayarlar. |
classes | list | None | Sonuçları sınıf dizinine göre filtreler. Örneğin, classes=[0, 2, 3] yalnızca belirtilen sınıfları izler. |
verbose | bool | True | İzleme sonuçlarının görüntülenmesini kontrol ederek izlenen nesnelerin görsel bir çıktısını sağlar. |
SSS
Ultralytics YOLO11 kullanarak nesne hızını nasıl tahmin edebilirim?
Ultralytics YOLO11 ile nesne hızını tahmin etmek, nesne algılama ve izleme tekniklerini birleştirmeyi içerir. Öncelikle, YOLO11 modelini kullanarak her karedeki nesneleri tespit etmeniz gerekir. Ardından, zaman içindeki hareketlerini hesaplamak için bu nesneleri kareler boyunca izleyin. Son olarak, hızını tahmin etmek için nesnenin kareler arasında kat ettiği mesafeyi ve kare hızını kullanın.
Örnek:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video/file.mp4")
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("speed_estimation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize SpeedEstimator
speed_obj = solutions.SpeedEstimator(
region=[(0, 360), (1280, 360)],
model="yolo11n.pt",
show=True,
)
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
im0 = speed_obj.estimate_speed(im0)
video_writer.write(im0)
cap.release()
video_writer.release()
cv2.destroyAllWindows()
Daha fazla ayrıntı için resmi blog gönderimize bakın.
Trafik yönetiminde hız tahmini için Ultralytics YOLO11 kullanmanın faydaları nelerdir?
Hız tahmini için Ultralytics YOLO11 adresinin kullanılması trafik yönetiminde önemli avantajlar sunmaktadır:
- Gelişmiş Güvenlik: Aşırı hızı tespit etmek ve yol güvenliğini artırmak için araç hızlarını doğru bir şekilde tahmin edin.
- Gerçek Zamanlı İzleme: Trafik akışını ve sıkışıklığını etkili bir şekilde izlemek için YOLO11'in gerçek zamanlı nesne algılama özelliğinden yararlanın.
- Ölçeklenebilirlik: Modeli uç cihazlardan sunuculara kadar çeşitli donanım kurulumlarına dağıtarak büyük ölçekli uygulamalar için esnek ve ölçeklenebilir çözümler sağlar.
Daha fazla uygulama için hız tahmininin avantajları bölümüne bakın.
YOLO11, aşağıdaki gibi diğer yapay zeka çerçeveleri ile entegre edilebilir mi? TensorFlow veya PyTorch?
Evet, YOLO11, TensorFlow ve PyTorch gibi diğer yapay zeka çerçeveleriyle entegre edilebilir. Ultralytics , YOLO11 modellerini ONNX, TensorRT ve CoreML gibi çeşitli formatlara aktarmak için destek sağlayarak diğer makine öğrenimi çerçeveleriyle sorunsuz birlikte çalışabilirlik sağlar.
Bir YOLO11 modelini ONNX formatına aktarmak için:
Dışa aktarma kılavuzumuzda modelleri dışa aktarma hakkında daha fazla bilgi edinin.
Ultralytics YOLO11 kullanılarak yapılan hız tahmini ne kadar doğrudur?
Ultralytics YOLO11 kullanılarak yapılan hız tahmininin doğruluğu, nesne takibinin kalitesi, videonun çözünürlüğü ve kare hızı ve çevresel değişkenler gibi çeşitli faktörlere bağlıdır. Hız tahmincisi güvenilir tahminler sağlarken, kare işleme hızı ve nesne tıkanıklığındaki farklılıklar nedeniyle %100 doğru olmayabilir.
Not: Her zaman hata payını göz önünde bulundurun ve mümkün olduğunda tahminleri yer gerçeği verileriyle doğrulayın.
Daha fazla doğruluk geliştirme ipucu için Argümanlar SpeedEstimator
bölüm.
Neden TensorFlow Object Detection API gibi diğer nesne algılama modelleri yerine Ultralytics YOLO11'i seçmelisiniz?
Ultralytics YOLO11, TensorFlow Object Detection API gibi diğer nesne algılama modellerine göre çeşitli avantajlar sunar:
- Gerçek Zamanlı Performans: YOLO11, yüksek hız ve doğruluk sağlayan gerçek zamanlı algılama için optimize edilmiştir.
- Kullanım Kolaylığı: Kullanıcı dostu bir arayüzle tasarlanan YOLO11, model eğitimini ve dağıtımını basitleştirir.
- Çok yönlülük: Nesne algılama, segmentasyon ve poz tahmini dahil olmak üzere birden fazla görevi destekler.
- Topluluk ve Destek: YOLO11, geliştiricilerin ihtiyaç duydukları kaynaklara sahip olmalarını sağlayan aktif bir topluluk ve kapsamlı belgelerle desteklenmektedir.
YOLO11'in faydaları hakkında daha fazla bilgi için ayrıntılı model sayfamızı inceleyin.