Yayın: 29 Nisan 2022
Birkaç gün önce Tesla'nın tam oto sürüş modülünün navigasyon panelini gördüm ve gerçek dünyanın panelde ne kadar doğru bir şekilde tasvir edildiğine şaşırdım. Binalar, araçlar, yayalar ve hatta ağaçlar bu sanal dünyada tamamen yeniden oluşturulmuş ve oto pilot modeline beslenmişti.
Bu modülün yaptığını yeniden oluşturmaya karar verdim, yani gerçek dünyada çekilen bir videonun analiz edilmesi ve videodaki hareketli nesnelerin belirlenmesi.
Tesla bunun için muhtemelen makine öğrenimini kullanıyor, ancak aşağıdaki 3 nedenle daha basit bir yaklaşım benimsemek istiyorum:
Yukarıda, Eugene Yan tarafından güzel bir şekilde ifade edilmiş bir ifade. Bir veri sorununu çözmeye çalıştığımızda, her zaman basit sezgilerle başlamak ve makul bir doğruluk elde edilip edilmediğini görmek, daha karmaşık modellere geçmeden önce iyi bir fikir olacaktır.
Bir videoda hareketli nesneleri tanımlayan bir model eğitmek mümkün olabilir, ancak modelin eğitim için etiketli verilere ihtiyacı olacaktır. Etiket oluşturmak maliyetli (ve sıkıcı) bir egzersizdir ve bunu mümkün olduğunca kaçınmak istiyorum.
Makine öğrenimi, verideki desenleri tanır. Veri bilimcisi bir problem için bir çözüm (desenler) hakkında zaten bir fikre sahipse ve bu çözüm kolayca test edilebiliyorsa, veri üzerinde basit sezgileri denemek her zaman harika bir fikir olacaktır (ve daha eğlencelidir). Bu şekilde, genellikle bir siyah kutu olan bir tahmin modeli yerine açıklayıcı bir model elde edebiliriz.
İlk olarak, videonun karelerine ayırıyoruz ve her bir karedeki her pikselin rengini izleyerek hareketli nesneleri belirlemeye çalışıyoruz. Bir renk, Kırmızı, Yeşil ve Mavi (RGB) ölçeklerinin bir kombinasyonu tarafından temsil edilir. Bu üçlü renkler, 0 ile 255 arasında bir sayı ile temsil edilir. Gördüğümüz renklerin, görüntülerin ve videoların sadece büyük matrisler olduğuna şaşırıyor musunuz? (RGB'ler, pikseller).
Bir hareketli nesne, bir çerçevedeki bir pikselin renginde önemli bir değişiklik olduğunda belirlenir. Örneğin, bir pikselin RGB'si mor (180, 70, 250) dan yeşil (40, 200, 120) e ve tekrar mora (40, 200, 120) değiştiğinde, kameramız sabit olduğu sürece, bir nesnenin o pikselden geçtiğini rahatlıkla söyleyebiliriz. Bir pikselin rengini çerçeve çerçeve izleyerek, bir renk değişikliğini gözlemlediğimizde bir "hareketli nesne" olarak etiketleyebiliriz.
Bir hareketli nesne algılandığında, o pikselin rengini nesneyi vurgulamak için yeşile değiştiriyoruz. Ayrıca, vurgulanan nesneleri kolayca görmek için videoyu gri tonlamalı hale getiriyoruz. Aşağıdaki video, bu mantığın videoları nasıl işlediğini ve hareketli nesneleri nasıl bulduğunu gösteriyor. Oldukça havalı değil mi?
Bir videoda her pikselin rengini inceleyerek kural tabanlı bir hareketli nesne tanımlayıcısı oluşturduk. Bu model, araçları, yayaları ve hatta feribotları tanımlamak için iyi çalışır. Ancak, bu modelin bazı sınırlamaları vardır; sabit bir kameraya gereksinimi vardır ve makul bir piksel rengi değişim eşiği belirlemek gerekir. Eşik çok düşükse, bir nehrin dalgalarını hareketli nesneler olarak tanımlarız, ancak çok büyükse, evcil hayvanlar gibi bazı küçük hareketli nesneleri kaçırabiliriz.
İşte modelin kodu.
İyi kodlamalar!
Bu iş İngilizce'den ChatGPT ile çevrilmiştir. Herhangi bir belirsizlik durumunda İletişim sayfasından bana ulaşabilirsiniz.
Yorum bırak
Yorumlar
Diğer işlere bak
2024/06/03
Kango: Kanji Tahmin Oyunu
2024/07/24
Lingo: Türkiye'nin En Popüler Ücretsiz Online Kelime Oyunu
2024/04/29
Druggio
2024/01/28
Tetris
2022/03/15
Hava Durum Tahmini
2022/02/09
Ev Fiyatlari Tahmini
2021/12/01
Japonya Ilac Veri Bankasi
2021/09/20
Japonca Yazi Siniflandirmasi
2021/09/01
Seyahat Talep Tahmini