Kameralı Hız Belirleme

Kamera ile hız belirlemek (bir tür radar) konusunda öğrenciler ya da meraklılar için basit bir HALCON kodu ile yardımcı olmak istedim. Kameralı hız belirleme konusunda bir çok yaklaşım olabilir. En sık kullanılan yaklaşım, ardışıl olarak alınan 2 görüntü arasında, farklılıkları belirlemek, (bu farklılıklar genellikle yer değiştiren nesneler, yani araçlardır) ve bu farklılıktan kaynaklanan yer değiştirme mesafesini bulup, arada geçen zamana bölmek suretiyle hızın elde edilmesidir.

Örnek olması açısından, şirketimizin balkonundan cep telefonumla sokaktan geçen araçlarn resimlerini çektim. (Normalde, kullanılan endüstriye kameralar, resim ile birlikte resmin alındığı hassas zaman bilgisini de verirler. Konuyla ciddi ilgilenenler o tür kameralar bulmalıdır. örneğin iDS imaging ürünleri)  Ben cep telefonumla çektiğim için, ortalama 2 sn bekledim. (Yani, umarım) Tabii elim sabit olmadığı için kamera biraz titredi 🙂 Yine de tüm bunlar, yoldan geçen güzelim twingonun hızını iyi kötü belirlemem için engel teşkil etmedi.

İşte aldığım resimler ve işte bunları işleyen HALCON kodu.

Aslında buradan rar dosyasını da indirebilirsiniz.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Programın çalıştırılması ile oluşan ekran görüntüsü ise

 

 

 

 

 

 

 

 

Programın çalışma şekli.

Program aslında thresholding ile, lacivert renkli nesneleri arar. Görüntü renkli kamera ile alındığı için, önce RGB kanallarına ayırıyor resmi. Sonra HSV değerlerini buluyor. Threshold işlemlerini HSV kanallarında yapıyor.

Bir kere aracı bulduktan sonra, gerisi zaten 4 işlem. Anlatmaya gerek yok.

İdealde, bunun gibi sadece özel bir renge göre radar yapılmaz tabii 🙂

İdealde olması gereken, iki resmin karşılaştırılıp, aradaki farkı oluşturan noktalardan araçlar bulunup hız belirleme yapılmasıdır. check_difference isimli HALCON örneği incelemeye değer güzel bir çalışmadır mesela.

Konuyla ilgilenenlere kolay gelsin diyorum. İlgi alaka olursa, daha profesyonel olarak konuya yaklaşımları da irdeleyebiliriz.