İçeriğe geç

Ultralytics YOLO11 🚀 Kullanarak Hız Tahmini

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. Kullanma Ultralytics YOLO11 Artık mesafe ve zaman verilerinin yanı sıra nesne tak ibini kullanarak nesnelerin hızını hesaplayabilirsiniz, bu da trafik izleme ve gözetleme gibi görevler için çok önemlidir. 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 kilit bir bileşen haline gelir.



İzle: Kullanarak Hız Tahmini Ultralytics YOLO11

Blogumuza Göz Atın

Hız tahmini hakkında daha derin bilgiler için blog yazımıza göz atın: Ultralytics YOLO11 for Speed Estimation in Computer Vision Projects

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
Yol Üzerinde Hız Tahmini Ultralytics YOLO11 Köprü Üzerinde Hız Tahmini Ultralytics YOLO11
Yol Üzerinde Hız Tahmini Ultralytics YOLO11 Köprü Üzerinde Hız Tahmini Ultralytics YOLO11
Hız Bir Tahmindir

Hız bir tahmin olacaktır ve tamamen doğru olmayabilir. Ayrıca, tahmin GPU hızına ve çevresel faktörlere bağlı olarak değişebilir.

Ultralytics YOLO kullanarak Hız Tahmini

# Run a speed example
yolo solutions speed show=True

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

# Pass region coordinates
yolo solutions speed region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"
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("speed_management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))

# speed region points
speed_region = [(20, 400), (1080, 400), (1080, 360), (20, 360)]

# Initialize speed estimation object
speedestimator = solutions.SpeedEstimator(
    show=True,  # display the output
    model="yolo11n.pt",  # path to the YOLO11 model file.
    region=speed_region,  # pass region points
    # classes=[0, 2],  # estimate speed of specific classes.
    # line_width=2,  # adjust the line width for bounding boxes
)

# Process video
while cap.isOpened():
    success, im0 = cap.read()

    if not success:
        print("Video frame is empty or processing is complete.")
        break

    results = speedestimator(im0)

    # print(results)  # access the output

    video_writer.write(results.plot_im)  # write the processed frame.

cap.release()
video_writer.release()
cv2.destroyAllWindows()  # destroy all opened windows

SpeedEstimator Argümanlar

İşte bir tablo SpeedEstimator Argümanlar:

Tartışma 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.

Bu SpeedEstimator çözümünün kullanılmasına izin verir track Parametreler:

Tartışma Tip Varsayılan Açıklama
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.
device str None Çıkarım için cihazı belirtir (örn, cpu, cuda:0 veya 0). Kullanıcıların CPU, belirli bir GPU veya model yürütme için diğer hesaplama cihazları arasında seçim yapmasına olanak tanır.

Ayrıca, aşağıdaki görselleştirme seçenekleri de desteklenmektedir:

Tartışma Tip Varsayılan Açıklama
show bool False Eğer True, 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_width None or int None Sınırlayıcı kutuların çizgi genişliğini belirtir. Eğer Noneçizgi genişliği görüntü boyutuna göre otomatik olarak ayarlanır. Netlik için görsel özelleştirme sağlar.

SSS

Ultralytics YOLO11 adresini 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.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
speedestimator = solutions.SpeedEstimator(
    region=[(0, 360), (1280, 360)],
    model="yolo11n.pt",
    show=True,
)

while cap.isOpened():
    success, im0 = cap.read()
    if not success:
        break
    results = speedestimator(im0)
    video_writer.write(results.plot_im)

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 adresini 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ı etkin bir şekilde izlemek için YOLO11'un 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 gibi diğer yapay zeka çerçeveleri ile entegre edilebilir mi? TensorFlow veya PyTorch?

Evet, YOLO11 , TensorFlow ve PyTorch gibi diğer AI çerçeveleriyle entegre edilebilir. Ultralytics , YOLO11 modellerini aşağıdaki gibi çeşitli formatlara aktarmak için destek sağlar ONNX, TensorRTve CoreMLDiğer makine öğrenimi çerçeveleri ile sorunsuz birlikte çalışabilirlik sağlar.

Bir YOLO11 modelini ONNX formatına aktarmak için:

yolo export --weights yolo11n.pt --include onnx

Dışa aktarma kılavuzumuzda modelleri dışa aktarma hakkında daha fazla bilgi edinin.

Ultralytics YOLO11 adresini kullanarak hız tahmini ne kadar doğrudur?

Ultralytics YOLO11 adresini kullanarak 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.

📅1 yıl önce oluşturuldu ✏️ 6 gün önce güncellendi

Yorumlar