Bilgisayarlı görü projelerinde hız tahmini için Ultralytics YOLOv8
Bilgisayarlı görü projelerinde hız tahmini için Ultralytics YOLOv8 modelini nasıl kullanabileceğini keşfet. Basit bir kod örneğiyle kendin dene.
Abirami Vina6 dakikalık okuma
Muhtemelen hepimiz hız sınırı trafik işaretlerini görmüşüzdür. Bazılarımız hız sınırı ihlali nedeniyle otomatik olarak gönderilen bir bildirimi postayla veya e-postayla almış bile olabilir. Yapay zekâ (AI) destekli trafik yönetim sistemleri, bilgisayarlı görü sayesinde hız ihlallerini otomatik olarak belirleyebilir. Hız tahmini ve yol güvenliğini artırma amacıyla sokak lambalarına ve otoyollara yerleştirilen kameraların kaydettiği gerçek zamanlı görüntüler kullanılır.
Hız tahmini yalnızca otoyol güvenliğiyle sınırlı değildir. Spor, otonom araçlar ve çeşitli diğer uygulamalarda da kullanılabilir. Bu makalede, bilgisayarlı görü projelerinde hız tahmini için Ultralytics YOLOv8 modelini nasıl kullanabileceğini ele alacağız. Ayrıca kendin deneyebilmen için bir kod örneğini adım adım inceleyeceğiz.
Hız tahmini trafik yönetimini kolaylaştırır#
Dünya Sağlık Örgütü'ne (WHO) göre, her yıl trafik kazalarında yaklaşık 1,16 milyon kişi hayatını kaybediyor ve hız yapmak bu kazalara yol açan başlıca etkenlerden biri. Ayrıca 20 ila 50 milyon kişi daha ölümcül olmayan yaralanmalara maruz kalıyor; bunların çoğu engellilikle sonuçlanıyor. Hız tahmini kazaları önlemeye, hayat kurtarmaya ve yollarımızı güvenli ve verimli tutmaya yardımcı olduğundan trafik güvenliğinin önemi göz ardı edilemez.
Bilgisayarlı görüyle hız tahmini, nesnelerin ne kadar hızlı hareket ettiğini hesaplamak için video karelerindeki nesneleri algılamayı ve izlemeyi içerir. Ultralytics YOLOv8 gibi modeller, araçlar gibi nesneleri art arda gelen karelerde tanımlayıp izleyebilir. Sistem, gerçek dünyadaki mesafeleri ölçmek için kalibre edilmiş kameralar veya referans noktaları kullanarak bu nesnelerin katettiği mesafeyi ölçer. Nesnelerin iki nokta arasında hareket etmesinin ne kadar sürdüğünü hesaplayarak mesafe-zaman oranıyla hızlarını belirler.

Şekil 1. Ultralytics YOLOv8 modeliyle hız tahmini.
Yapay zekâyla bütünleşik hız tahmin sistemleri, hız yapanları yakalamanın yanı sıra trafik hakkında tahminlerde bulunmak için de veri toplayabilir. Bu tahminler, sinyal zamanlamalarını ve kaynak dağılımını optimize etmek gibi trafik yönetimi görevlerini destekleyebilir. Trafik düzenleri ve tıkanıklık nedenlerine ilişkin bilgiler, trafik yoğunluğunu azaltacak yeni yollar planlamak için kullanılabilir.
Hız tahmininin diğer sektörlerdeki uygulamaları#
Hız tahmini uygulamaları yolları izlemenin ötesine geçer. Sporcuların performansını izlemek, otonom araçların çevrelerindeki nesnelerin hızını anlamasına yardımcı olmak ve şüpheli davranışları tespit etmek gibi amaçlarla da kullanılabilir. Bir nesnenin hızını ölçmek için kameranın kullanılabildiği her yerde bilgisayarlı görüyle hız tahmininden yararlanılabilir.
Hız tahmininin kullanıldığı bazı alanlara örnekler:
- Tesla'nın otonom otomobilleri, çarpışmaları önlemek için görsel tabanlı hız tahmini kullanır.
- Akıllı şehirler, yürüme hızlarını izlemek ve kentsel hareketliliği ve güvenliği artırmak için yaya yürüyüş analizi üzerine araştırmalar yapıyor. Bu sistemler sürücüleri yayaların varlığı konusunda uyarabilir ve kazaları önleyebilir.
- Hayvan davranışlarını izleme sistemleri, hayvanların hareketlerini takip etmek ve sıkıntı veya hastalık belirtilerini tespit etmek için hız tahmininden yararlanır.

Şekil 2. Hız tahmini, bir kişinin yürüme hızını ölçebilir.
Bilgisayarlı görüyle hız tahmininin faydaları#
Görüntü tabanlı hız tahmin sistemleri, daha yüksek doğrulukları, maliyet etkinlikleri ve esneklikleri nedeniyle geleneksel sensör tabanlı yöntemlerin yerini alıyor. LiDAR gibi pahalı sensörlere dayanan sistemlerin aksine bilgisayarlı görü, hızı gerçek zamanlı izleyip analiz etmek için standart kameralar kullanır. Hız tahminine yönelik bilgisayarlı görü çözümleri mevcut trafik altyapısına entegre edilebilir. Ayrıca bu sistemler, genel trafik akışını ve güvenliğini iyileştirmek için araç türünü tanıma ve trafik düzenlerini analiz etme gibi çeşitli karmaşık görevleri yerine getirecek şekilde tasarlanabilir.
Kendin dene: Ultralytics YOLOv8 ile hız tahmini#
Artık hız tahmini ve uygulamalarını net biçimde anladığımıza göre, kod aracılığıyla hız tahminini bilgisayarlı görü projelerine nasıl entegre edebileceğine daha yakından bakalım. Hareket eden araçları algılayıp hızlarını Ultralytics YOLOv8 modeliyle tahmin edeceğiz.
Bu örnekte internetten indirilen, yoldaki araçların yer aldığı bir video kullanılıyor. Aynı videoyu veya konuyla ilgili başka bir videoyu kullanabilirsin. Ultralytics YOLOv8 modeli her aracı algılayıp izler; hız tahmin aracı ise videonun kare hızını ve piksel başına metre ölçeğini kullanarak izlenen her aracın birkaç kare boyunca ne kadar hareket ettiğini hıza dönüştürür.
Başlamadan önce, bu örnekte mesafe hesabının yaklaşık olduğunu ve tahmini piksel başına metre değeriyle çarpılan Öklid piksel mesafesine dayandığını belirtmek önemlidir. Kamera kalibrasyonu hesaba katılmadığından hız tahmini tamamen doğru olmayabilir.
1. Adım: Ultralytics paketini yükleyerek başlayacağız. Komut istemini veya terminali açıp aşağıda gösterilen komutu çalıştır.
pip install ultralyticsYükleme sürecine ilişkin adım adım talimatlar ve en iyi uygulamalar için Ultralytics Kurulum kılavuzumuza göz at. YOLOv8 için gerekli paketleri yüklerken herhangi bir sorunla karşılaşırsan Yaygın Sorunlar kılavuzumuzda çözümler ve faydalı ipuçları bulabilirsin.
2. Adım: Ardından gerekli kütüphaneleri içe aktaracağız. OpenCV kütüphanesi video işlemeyi yönetmemize yardımcı olacak.
import cv2
from ultralytics import solutionsAdım 3: Bu adımda, OpenCV'nin VideoCapture modülünü kullanarak giriş video dosyasını açacağız. Videonun genişliğini, yüksekliğini ve saniyedeki kare sayısını (fps) da çıkaracağız.
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))Adım 4: Burada, hız tahminine ilişkin nihai sonuçlarımızı kaydetmek için video yazıcısını başlatacağız. Çıkış video dosyası “speed_estimation.avi” olarak kaydedilecek.
video_writer = cv2.VideoWriter("speed_estimation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))Adım 5: Şimdi hız tahmin nesnesini Ultralytics YOLOv8 modeli ve videonun kare hızıyla başlatabiliriz. meter_per_pixel değeri sahnenin gerçek dünya ölçeğini belirler; bu nedenle kamera kurulumuna uyacak şekilde ayarlayabilirsin.
speed_obj = solutions.SpeedEstimator(
model="yolov8n.pt",
fps=fps,
meter_per_pixel=0.05,
show=True,
)Projene en uygun modeli anlamak için desteklediğimiz tüm modellere göz at.
Adım 6: Betiğin temel işlevi videoyu kare kare işler. Her kareyi okuruz; hız tahmin aracı nesneleri algılayıp izler, hızlarını tahmin eder ve çıkış videosuna yazılan açıklama eklenmiş kareyi döndürür.
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or video processing has been successfully completed.")
break
results = speed_obj(im0)
video_writer.write(results.plot_im)Adım 7: Son olarak video yakalama ve yazıcı nesnelerini serbest bırakır, tüm OpenCV pencerelerini kapatırız.
cap.release()
video_writer.release()
cv2.destroyAllWindows()Adım 8: Betiğini kaydet. Terminalden veya komut isteminden çalışıyorsan betiği aşağıdaki komutla çalıştır:
python your_script_name.pyGörsel tabanlı hız tahmininin zorlukları#
Bilgisayarlı görüyle hız tahmini uygularken karşılaşılan zorlukları anlamak da önemlidir. Yağmur, sis veya kar gibi olumsuz hava koşulları yolun görünürlüğünü engelleyerek sistemde sorunlara yol açabilir. Benzer şekilde, diğer araçların veya nesnelerin neden olduğu örtüşmeler bu sistemlerin hedef aracın hızını doğru izlemesini ve tahmin etmesini zorlaştırabilir. Gölgelere veya güneş parlamasına yol açan kötü aydınlatma koşulları da hız tahmini görevini daha da karmaşıklaştırabilir.
Bir diğer zorluk da hesaplama gücü ile ilgilidir. Hızı gerçek zamanlı tahmin etmek için yüksek kaliteli trafik kameralarından gelen çok miktarda görsel veriyi işlememiz gerekir. Tüm bu işlemleri gerçekleştirmek ve gecikme olmadan hızlı çalışmayı sağlamak için çözümün pahalı donanımlar gerektirebilir.
Bir de gizlilik konusu var. Bu sistemlerin topladığı veriler; kişinin araç markası, modeli ve plaka bilgileri gibi, izni olmadan elde edilmiş olabilecek ayrıntıları içerebilir. Bazı modern HD kameralar araç içindeki yolcuların görüntülerini bile yakalayabilir. Bu tür veri toplama, son derece dikkatli ele alınması gereken ciddi etik ve hukuki sorunlara yol açabilir.
Geleceğe hızla ilerlerken#
Hız tahmini için Ultralytics YOLOv8 modelini kullanmak, pek çok kullanım alanına yönelik esnek ve verimli bir çözüm sunar. Zorlu koşullarda doğruluk ve gizlilik sorunlarının ele alınması gibi zorluklar olsa da avantajları önemlidir. Bilgisayarlı görü destekli hız tahmini, eski yöntemlere kıyasla daha uygun maliyetli, uyarlanabilir ve hassastır. Ulaşım, spor, gözetim ve sürücüsüz araçlar gibi çeşitli sektörlerde kullanışlıdır. Tüm avantajları ve uygulamalarıyla geleceğin akıllı sistemlerinin önemli bir parçası olması muhtemeldir.
Yapay zekâyla ilgileniyor musun? Topluluğumuzla bağlantı kur! GitHub depomuzu inceleyerek, yapay zekâyı sağlık hizmetleri ve tarım gibi çeşitli sektörlerde yenilikçi çözümler geliştirmek için nasıl kullandığımız hakkında daha fazla bilgi edin. Bizimle iş birliği yap, yenilik yap ve öğren!
Yazan
Yorumlar
Soru sor, sonuçlarını paylaş veya başka birine yardım et.










