Video analitik temelleri :
Video gözetlemede, video analitik ana ayrıştırılardan birisidir. Günümüzde farklı pazarlama terimleri, isimleri ve özellikleri kullanılmaktadır. Bu da video analitiğin anlaşılmasını zorlaştırmaktadır.
Video analitik ile ilgili tavsiye :
Video analitik performansı geniş bir yelpazede farklılık göstermektedir. Kullanılan satış terimlerini , iddialarını doğrulamanın kolay bir yolu yoktur. Kullanıcılar ve entegratörler kendi spesifik ortam koşullarında analitik kabiliyetleri koşturmalı ve test yapmalıdır. Çünkü en iyi video analitikler bile müşterinin gerçek test ortamında başarısız olabilir.(dinamik ışık koşulları, kötü hava koşulları)
İşlem maliyeti vs doğruluk değerleri :
Yüksek doğruluk oranında yüksek performanslı video analitik, yüksek işlem gücü ve maliyeti anlamına gelir. Istisnalar olsa da, genellikle video analitik doğruluk oranı arttıkça, işlem gücü maliyeti de artar. Örneğin, Video motion detection (VMD), yapay sinir ağları bazlı geliştirilmiş video analitiğe göre daha fazla hata yapar. Ancak VMD’nin gerektirdiği işlem gücü, yapay sinir ağları bazlı geliştirilmiş video analitiğin binde biridir veya daha azdır.
Donanım limitleri :
Video analitiğin gerçek zamanlı, yüksek hacimli doğası göz önüne alındığında, donanım kısıtlamaları video analitiğin koşturulmasında önemli bir faktördür. Çoğu zaman, düşük performanslı video analizler, kameraların, kayıt cihazının vb. donanım kısıtlamalarına uyacak şekilde seçilir.
Video analitik, “Bilgisayarlı Görüştür”.
Video analiz, nesneleri algılamak veya sınıflandırmak için görüntüleri işlemek için bilgisayarları kullanan bir teknolojidir. Görüntüyü anlamak, anlamlandırmak insanlar için basit bir görev olsa da, bilgisayarlar görüntüleri insanlar gibi “görmez”.
Burada bilgisayar çok basit bir SoC olabileceği gibi, bulut üzerinden büyük sunucular ile hizmet veren bir servis de olabilir.
Bir bilgisayar dijital olarak kodlanmış resme baktığında, piksellerin toplamıdır.

Bilgisayarlar çok sayıda resimden eş zamanlı olarak objeleri tespit edebilme avantajına sahiptir. Insanoğlu bu konuda daha az performanslı kalabilir. Bununla birlikte, bilgisayarların bir dezavantajı vardır, küçük çocukların bile kolaylıkla yapabildiği tespit, sınıflandırma gibi işlemler için önemli kaynaklar gerektirir.
Video analitik objeyi yansıtan piksellerdeki detayları özellikleri, pattern’leri bulmak için, resim ve videolara algoritma veya filtreler uygular. Burada objeden kasıt insan, yüz, araçtır. Özellikten kasıt maske takılı mı değil mi, araç özellikleri (renk, tip, marka vb) olabilir.
Temel görüntü analizi :
Video analitik objenin kenarlarını yansıtan, pixellerde farklılıkları bulabilmek için genellikle grayscale resimler kullanır. Grayscale resim elde etmek için binarization denilen bir işlem uygulanır.
Grayscale resimler, RGB/renkli resimlere göre daha küçüktürler. Her iki color space (renk uzayında da) benzer piksel sayısı bulunur. Herşeyin eşit olduğu durumda, küçük resimler daha az kaynak tüketimi yapar.

2 bitişik pikselin değerlerindeki büyük farklılıklar bir kenarı gösterir. eğer pikseller arası büyük bir fark yoksa kenarı elde edemeyiz.

Bu temel teknik, tüm video analitiğin çekirdeğidir ve özellikle klasik VMD (video motion detection) gibi basit olanlar tamamen bu tekniklere dayanır.
Video gözetlemede bilgisayarlı görüşün evrimi :
Video analitik için 4 ana analitik kategorisi bulunmaktadır.
- Video Motion Detection (VMD) : piksellerdeki değişimi tespit eder, objeleri değil.
- Heuristic(buluşsal) – insan operatör tarafından yapılan Kural tanımlarına göre VMD’yi filtreleyerek çalışır. (örneğin x px’den küçük objeler için alarm üretme, ya da sahnede 2 saniye boyunca değişiklik olursa alarm üretilsin gibi.)
- Geleneksel obje tespit : hybrid olarak çalışır. Insan operatör tarafından tanımlanan Kural ve makine öğrenmesi (bilgisayar eğitim resimleri kullanarak algoritmayı optimize eder)
- Derin öğrenme obje tespiti : eğitim verisi/resimleri bazında, bilgisayar tarafından üretilmiş algoritmayı kullanarak objeleri tespit eder.
Video Motion Detection (VMD) :
Vmd önceki frame ile sonraki frame’deki aynı pikseldeki değişikliği analiz eder. Eğer yeterince pikselde yeterli seviyede(hassasiyet) renk/contrast değişimi olduysa, kamera hareket tespiti yapıldı bilgisini tetikler. VMD objeleri tespit etmez.

VMD avantajları :
VMD hem geliştirme hem de işlem gücü (computation power) açısından düşük gereksinimlere sahiptir. Genellikle ücretsizdir ve IP kameralarda default olarak gelir.
Minimal ışık değişikliğinin olduğu ortamlarda eğer çok fazla hareket yoksa, VMD doğru çalışabilir.
VMD dezavantajları :
Vmd hataya oldukça açıktır ve dinamik sahnelerde çoğunlukla yanlış alarm üretir. Çünkü VMD hareketin doğru obje olup olmadığını tespit edemez.
VMD dış ortamda oldukça zorlanır, sürekli olarak yanlış alarmlara sebebiyet verir.
Heuristic (buluşsal) analitik :
Heuristic filtreler, VMD’ye eklenir. Işlem gücü maliyetini düşük tutarken, false alarmları azaltmayı hedefler. Analitik sağlayıcıları, tipik olarak kamera üreticileri bazı false alarmları azaltabilmek için bir takım opsiyonlar ve filtreler sağlar.
En yaygın filtreler :
- piksel değişimi hassasiyeti,
- hareketin süresi,
- hareketin yönü,
- minimum ve maksimum boyut,

Heuristic analitikte objeyi doğru tespit edebilmek için yaygın olarak yapılanlardan birisi “yükseklik-genişlik oranıdır”. Yükseklik genişlik oranı ile obje tipi tespit edilebilir. (insan , araç)

Heuristic (buluşsal) yaklaşımın avantajları :
Heuristic analitik, VMD’ye benzerdir. Programlaması nispeten kolaydır ve işlem gücü olarak (computationally) çok fazla kaynak gerektirmez. Ancak VMD’ye göre de daha hassastır.

VMD ile kıyaslandığında ışık değişimi vb koşullarda daha az yanlış alarm oluşur.
Heuristic (Buluşsal) dezavantajları :
Insan operatör tarafından kodlanması , obje boyutlarının tanımlanmasını gerektirir. Yalnızca tanımlanmış olan özellik veya değişkenleri tespit edebilir,bu noktada limitlidir.
Heuristic analitikte, eğer obje preset beklentisini karşılamazsa yanlış sınıflandırma yapmaya açıktır. Örneğin sürünen bir insan, hayvan ya da araç olarak sınıflandırılabilir.

Heuristic filtreler ince ayarlamalar gerektirir, çok sayıda deneme yanılma testi gerektirebilir.
Makine Öğrenmesi :
Makine öğrenimi, video analizde buluşsal yöntemlerin ötesindeki bir sonraki adımdır. Bir insan, bilgisayarın neye bakacağını söyleyen önceden programlanmış talimatlar sağlarken, bilgisayar, potansiyel olarak buluşsal modellerde düşünülenden çok daha fazla değişken kullanarak algoritmayı optimize eder. Bu nedenle, makine öğrenimi analitiği genellikle hesaplama açısından daha karmaşık ve daha doğrudur.
Örneğin, bir bilgisayara programlanarak yürüyen bir kişinin nasıl algılanacağı anlatılır.
Tanımlayıcı parametreler:
• Yüksekliğinin değeri genişliğinden büyük olmalıdır.
• Kolların ve bacakların algılanabilen hareketi olmalıdır.
• Rastgele değil öngörülebilir hareket olmalı
• Biraz renk ve doku çeşitliliği olmalıdır (kıyafetleri temsil eder)
Algoritma daha sonra video ile beslendiğinde, bu parametreleri arayacak ve eğer bunlardan yeterli miktarda bulursa, videonun yürüyen bir kişi içerdiğine karar verecektir.
Denetimli ve Denetimsiz Öğrenme (Supervised & Unsupervised Learning) :
Birçok video gözetleme analitiği geliştirme aşamasında denetimli öğrenmeyi kullanır. Supervised /denetimli öğrenme, eğitim verilerinin etiketlendiği anlamına gelir ve bilgisayar, nesneleri algılamak için hangi ayrıntıların/değerlerin kullanılacağına karar verir. Düzgün etiketlenmiş görüntüler, makine öğreniminin doğru nesneleri algılaması için çok önemlidir.
Analize bağlı olarak, görüntülere daha fazla anlam ve bilgi ekleyerek bağlam sağlamak için bir veya daha fazla etiket kullanılabilir. Bu, hayvan resimlerinin bu şekilde etiketlenebileceği ve ayrıca hayvan türü olarak etiketlenebileceği anlamına gelir.

Hayvanlar dataseti, zürafalar dataseti. Hayvan, Hayvan türü |
Denetimli öğrenme, Classification ve Regression problemlerinde kullanılır.
Denetimsiz öğrenme, Clustering olarak bilinen kümelemede kullanılır.
Denetimsiz öğrenmede, veri/resim etiketlenmez ve bilgisayar objelerin nasıl gruplandırılacağına karar verir. Bununla birlikte, insan araç sınıflandırması problemini çözmek istediğimizde, insan araç snıflandırması yerine objeleri renklerine göre ayrıştırabilir. Bu tip durumlarla karşılaşılabilir.

Eğer denetimsiz öğrenme çıktısı bekleneni sağlıyorsa, dataset içinde binlerce, onbinlerce veri setinin etiketlenmesi iş yükünü kaldırır.
Haar ve HOG :
Haar ve HOG tabanlı makine öğrenmesi analitikleri, insan tanımlı filtreler olmaları , ancak nesneleri algılamak için zıt stratejiler kullanmaları bakımından benzerdir. Haar önce özellikleri, sonra kenarları bulur. HOG, önce kenarları ve ardından özellikleri bulur.
Haar :
Haar, obje tespiti için kullanılan en eski makine öğrenmesi metotlarından birisidir. Işlemsel olarak verimlidir, yaygın olarak IP kameralar tarafından kullanılır. Haar, objede kenar ve çizgi tespitinde çok iyidir ve heuristic cascade sınıflandırıcılar kullanır.


Haar kenarları bularak çalışır bu yüzden iyi aydınlatılmış objelere ihtiyaç duyar.
Haar ile ilgili http://turk-iot.com/yuz-tespit-teorisi-ve-opencv-ile-yuz-tespit-calismasi/ yazısında daha fazla detay bulabilirsiniz.
HOG :
HOG, makine öğrenmesinde tespit için yaygın diğer metottur. HOG ; Histogram of oriented gradients anlamına gelmektedir ve resimde kenar-köşeleri tespit ederek objeyi tespit etmeye çalışır
Özellik tanımlayıcıları, basitleştirilmiş görüntüye uygulanır ve kenarları bulmak için özellikler kullanılarak otomobili, kişileri veya plaka gibi belirli ayrıntıları algılamak üzere programlanabilir. Bu nedenle, HOG, bazı görevlerde Haar’dan daha doğru olabilir ve Haar’a kıyasla aydınlatma ve açılardan kaynaklanan hatalardan daha az etkilenir.
Makine öğrenmesi avantajları :
Makine öğrenimi analitiği, bilgisayar tarafından optimize edilmiştir ve insan tarafından programlanmış buluşsal yöntemlerden daha fazla özellik kullanır. Önceki görünümlerle veya programlanmış örneklerle eşleşmediklerinde nesneleri algılamada daha doğru olduğu anlamına da gelir. Bu nedenle, makine öğrenimi analitiği, bir kişinin ayakta mı, koşuyor mu, oturuyor mu vb. olup olmadığını tespit etmede buluşsal yöntemlerden daha iyidir.
Makine öğrenimi, VMD ve buluşsal yöntemlerden daha fazla işlem gerektirir, ancak genellikle kameralar ve NVR’ler gibi daha düşük işlem gücüne sahip cihazlarda desteklenecek kadar verimlidir. Ayrıca, derin öğrenmeye göre daha düşük gereksinimleri vardır ve çoğu uygulama için GPU’lara gerek yoktur.
Makine öğrenmesi dezavantajları :
Makine öğrenmesi geliştirme maliyeti daha yüksektir.
Eğitim için çok sayıda veri/resime ihtiyaç duyar.
VMD ve Buluşsal analitik tiplerine göre daha komplekstir.
IP kamera üzerinde desteklenmesi maliyetleri arttırır.
Doğruluk oranını arttırmak için makine öğreniminin ötesinde, analitik sağlayıcıları derin öğrenme teknolojisini kullanmaya başlamıştır.
Kaynak : video analytic bookipvm 2021