Yoğunlaştırma algoritması - Condensation algorithm

yoğunlaştırma algoritması (Conikili Density Propagation) bir Bilgisayar görüşü algoritması. Ana uygulama, tespit etmek ve Izlemek dağınık bir ortamda hareket eden nesnelerin konturu. Nesne izleme, bilgisayarla görmenin en temel ve zor yönlerinden biridir ve genellikle nesne tanıma. Bir görüntüdeki hangi piksellerin bir nesnenin dış hatlarını oluşturduğunu belirleyebilmek önemsiz bir problemdir. Yoğunlaşma bir olasılık algoritması bu sorunu çözmeye çalışan.

Algoritmanın kendisi Isard tarafından ayrıntılı olarak açıklanmıştır ve Blake bir yayında International Journal of Computer Vision 1998 yılında.[1] Algoritmanın en ilginç yönlerinden biri, görüntünün her pikselini hesaplamamasıdır. Bunun yerine, işlenecek pikseller rastgele seçilir ve piksellerin yalnızca bir alt kümesi işlenir. Neyin hareket ettiğine dair birden fazla hipotez, yaklaşımın olasılıklı doğası tarafından doğal olarak desteklenir. Değerlendirme fonksiyonları büyük ölçüde bu alandaki önceki çalışmalardan gelir ve birçok standart istatistiksel yaklaşımı içerir. Bu çalışmanın orijinal kısmı, partikül filtre tahmin tekniklerinin uygulanmasıdır.

Algoritmanın yaratılmasında, Kalman filtreleme önemli arka plan karmaşası varlığında nesne takibini iyi yapmak için. Dağınıklığın varlığı, nesne durumu için olasılık dağılımları üretme eğilimindedir. çok modlu ve bu nedenle Kalman filtresi tarafından zayıf bir şekilde modellenmiştir. En genel haliyle yoğunlaştırma algoritması, nesnenin veya ölçümlerin olasılık dağılımları hakkında hiçbir varsayım gerektirmez.

Algoritmaya genel bakış

Yoğunlaştırma algoritması, bir nesnenin bir nesnenin biçimini tahmin etme problemini çözmeyi amaçlamaktadır. vektör zamanda , verilen gözlemler mevcut zaman dahil olmak üzere görüntülerde tespit edilen özelliklerin. Algoritma, duruma bir tahmin verir koşullu olasılık yoğunluğu faktörlü örneklemeye dayalı doğrusal olmayan bir filtre uygulayarak ve bir geliştirme olarak düşünülebilir. Monte-Carlo yöntemi.[1] önceki uyum ve ölçümlere dayalı olarak nesneler için olası uyum olasılığının bir temsilidir. Yoğunlaşma algoritması bir üretken model[2] model olduğu için ortak dağıtım nesnenin ve gözlemcinin.

Nesnenin mevcut zamandaki koşullu yoğunluğu ağırlıklı, zaman indeksli bir numune seti olarak tahmin edilir ağırlıklarla . N, seçilen numune setlerinin sayısını belirleyen bir parametredir. Bir gerçekleşme setten değiştirme ile örnekleme ile elde edilir olasılıkla karşılık gelen öğeye eşit .[1]

Nesne dinamiklerinin geçici bir Markov zinciri oluşturduğuna ve gözlemlerin bağımsız birbirlerinin dinamikleri ve yoğunlaştırma algoritmasının uygulanmasını kolaylaştırır. İlk varsayım, nesnenin dinamiklerinin tamamen koşullu yoğunluk tarafından belirlenmesine izin verir. . Sistem dinamiği modeli tarafından belirlenen algoritma için de seçilmelidir ve genellikle her ikisini de içerir belirleyici ve stokastik dinamikler.

Algoritma, zamanında başlatma ile özetlenebilir ve her seferinde üç adım t:

Başlatma

Önceki dağıtıma göre numune alarak ilk numune setini ve ağırlıklarını oluşturun. Örneğin, şu şekilde belirtin Gauss ve ağırlıkları birbirine eşit olarak ayarlayın.

Yinelemeli prosedür

  1. Değiştirme ile örnek setten zamanlar olasılıkla bir farkındalık yaratmak .
  2. Öğrenilen dinamikleri uygulayın yeni bir küme oluşturmak için bu yeni kümenin her bir öğesine .
  3. Mevcut gözlemi dikkate almak için , Ayarlamak her eleman için .

Bu algoritma, olasılık dağılımını verir izlenen nesnenin ortalama konumunu ve diğerini hesaplamak için doğrudan kullanılabilir anlar izlenen nesnenin.

Bunun yerine kümülatif ağırlıklar, daha verimli bir örnekleme elde etmek için kullanılabilir.[1]

Uygulama hususları

Nesne izleme gerçek zamanlı bir hedef olabileceğinden, algoritma verimliliğinin dikkate alınması önemli hale gelir. Yoğunlaştırma algoritması, Kalman filtrelemesi için gerekli olan Ricatti denkleminin hesaplama yoğunluğu ile karşılaştırıldığında nispeten basittir. Parametre Numune setindeki numune sayısını belirleyen, performansa karşı verimlilikte açıkça bir değiş tokuş yapacaktır.

Algoritmanın verimliliğini artırmanın bir yolu, nesnenin şeklini temsil etmek için düşük serbestlik dereceli bir model seçmektir. Isard 1998 tarafından kullanılan model, B-spline'lar spline'ların belirli konfigürasyonlarla sınırlı olduğu. Uygun konfigürasyonlar, nesnenin farklı pozlarda ve farklı pozlarda birden çok görünümden kontur kombinasyonlarının analitik olarak belirlenmesiyle bulundu. temel bileşenler Analizi (PCA) deforme olan nesnede.

Isard ve Blake, nesne dinamiklerini modeller ikinci dereceden fark denklemi deterministik ve stokastik bileşenlerle:

nerede devletin ortalama değeridir ve , sırasıyla dinamik modelin deterministik ve stokastik bileşenlerini temsil eden matrislerdir. , , ve üzerinden tahmin ediliyor Maksimum olasılık tahmini nesne tipik hareketleri gerçekleştirirken.[1][3]

Gözlem modeli doğrudan verilerden tahmin edilemediğinden, tahmin etmek için varsayımların yapılmasını gerektirir. Isard 1998, nesneyi görünmez hale getirebilecek karmaşanın bir Poisson rastgele süreci mekansal yoğunluklu ve herhangi bir gerçek hedef ölçümünün tarafsız ve normal olarak standart sapma .

Temel yoğunlaştırma algoritması, zaman içinde tek bir nesneyi izlemek için kullanılır. Bir sahnedeki birden çok nesneyi aynı anda izlemek için birden çok nesnenin olası durumlarını açıklamak için yoğunlaştırma algoritmasını tek bir olasılık dağılımı kullanarak genişletmek mümkündür.[4]

Dağınıklık, nesne olasılık dağılımının birden çok zirveye bölünmesine neden olabileceğinden, her tepe noktası, nesne konfigürasyonu hakkında bir hipotezi temsil eder. Düzeltme, birden çok zirvenin etkilerini azaltmak için izleme tamamlandıktan sonra hem geçmiş hem de gelecek ölçümlere dayalı olarak dağılımı şartlandırmanın istatistiksel bir tekniğidir.[5] Düzeltme, gelecekteki ölçümler hakkında bilgi gerektirdiğinden gerçek zamanlı olarak doğrudan yapılamaz.

Başvurular

Algoritma, vizyona dayalı olarak kullanılabilir robot lokalizasyonu mobil robotlar.[6] Ancak olay yerindeki bir nesnenin konumunu izlemek yerine, kamera platformunun konumu izlenir. Bu, ortamın görsel bir haritası verildiğinde kamera platformunun küresel olarak yerelleştirilmesine olanak tanır.

Yoğunlaştırma algoritmasının uzantıları da ayrıca insan hareketlerini tanıma görüntü dizilerinde. Yoğunlaştırma algoritmasının bu uygulaması, olası insan-bilgisayar etkileşimleri aralığını etkiler. Tahtaların bölgelerini yazdırmak veya kaydetmek için seçme gibi eylemleri kontrol etmek için bir kullanıcının bir beyaz tahtadaki basit hareketlerini tanımak için kullanılmıştır.[7] Aynı sahnede birden fazla arabayı izlemek için başka uzantılar da kullanıldı.[8]

Yoğunlaştırma algoritması ayrıca yüz tanıma bir video dizisinde.[9]

Kaynaklar

Yoğunlaştırma algoritmasının bir uygulaması C bulunabilir Michael Isard’ın web sitesi.

Bir uygulama MATLAB bulunabilir Mathworks Dosya Değişimi.

Kullanarak uygulama örneği OpenCV kütüphane şurada bulunabilir: OpenCV forumları.

Ayrıca bakınız

  • Partikül filtresi - Yoğunlaştırma, Örnekleme Önemi Yeniden Örnekleme (SIR) tahmininin kontur izlemeye uygulanmasıdır

Referanslar

  1. ^ a b c d e Isard, M .; Blake, A (Ağustos 1998). "YOĞUŞMA - görsel izlemenin koşullu yoğunluk yayılımı". International Journal of Computer Vision. 29 (1): 5–28. doi:10.1023 / A: 1008078328650.
  2. ^ Sminchisescu, C .; Kanaujia, A .; Metaxas, D.N. (Kasım 2007). "BM3E: Görsel İzleme için Ayrımcı Yoğunluk Yayılımı". Örüntü Analizi ve Makine Zekası için IEEE İşlemleri. 29 (11): 2030–2044. CiteSeerX  10.1.1.78.1751. doi:10.1109 / tpami.2007.1111. PMID  17848782.
  3. ^ Blake, Andrea; Isard, Michael; Reynard, David (Ekim 1995). "Konturların görsel hareketini izlemeyi öğrenmek". Yapay zeka. 78 (1–2): 179–212. doi:10.1016/0004-3702(95)00032-1.
  4. ^ Koller-Meier, Esther B .; Ade, Frank (28 Şubat 2001). "Yoğunlaştırma algoritmasını kullanarak birden çok nesneyi izleme". Robotik ve Otonom Sistemler. 34 (2–3): 93–105. doi:10.1016 / s0921-8890 (00) 00114-7.
  5. ^ Isard, Michael; Blake, Andrew (28 Mayıs 2006). Yoğuşma için yumuşatma filtresi. Bilgisayar Bilimlerinde Ders Notları. 1406. s. 767–781. doi:10.1007 / BFb0055703. ISBN  978-3-540-64569-6.
  6. ^ Dellaert, F .; Burgard, W .; Fox, D .; Thrun, S. (1999). "Sağlam, vizyona dayalı mobil robot yerelleştirmesi için YOĞUŞMA algoritmasını kullanma". Bilgisayarla Görme ve Örüntü Tanıma. 2: 588–594. doi:10.1109 / CVPR.1999.784976. ISBN  0-7695-0149-4.
  7. ^ Black, M.J .; Jepson, A.D. (14 Nisan 1998). "Yoğunlaştırma algoritmasını kullanarak zamansal yörüngelerin tanınması". Otomatik Yüz ve Hareket Tanıma: 16–21. CiteSeerX  10.1.1.154.1402. doi:10.1109 / AFGR.1998.670919. ISBN  0-8186-8344-9.
  8. ^ Meier, E.B .; Ade, Frank (1999). "YOĞUŞMA algoritmasını kullanarak aralık görüntülerinde arabaları izleme". Akıllı Ulaşım Sistemleri: 129–134. doi:10.1109 / ITSC.1999.821040. ISBN  0-7803-4975-X.
  9. ^ Zhou, Shaohua; Krueger, V .; Chellappa, R. (21 Mayıs 2002). "Videodan yüz tanıma: YOĞUŞMA yaklaşımı". Otomatik Yüz ve Hareket Tanıma: 221–226. doi:10.1109 / AFGR.2002.1004158. ISBN  0-7695-1602-5.