2011-01-27 26 views
5

Şablon eşleştirmesini 360 derece yapmalıyım.template rotation ile eşleştiriliyor

Çoğunlukla şablon 80 * 120'dir ve görüntü 640 * 480 gri tonlamalıdır (8 bit).

Döndürme için oldukça iyi çalışan opencv cvmatchtemplate kullanıyorum.

Dönen şablonu çeşitli açılardan denedim ve cvmatchtemplate yapıp çalışıyorum, çok fazla zaman harcıyor.

Normal şablon eşleşmesi için 12 ms ve 360 ​​derece 50 ms'den daha az gereklidir.

+0

Tam olarak ne elde etmeye çalışıyorsunuz? Belki bir şablon eşleştirmesine alternatif var ... Şablon sık sık değişiyor mu? Değilse, onları döndürüp kaydedebilir ve sonra döndürülen şablonları kullanabilirsiniz. Daha hızlı olmalı ... ve eğer (tekrarlanan) şablonun kendisi çok uzun sürerse, başka bir yöntem kullanmayı düşünmelisiniz ... Herhangi bir örnek resim var mı? – evident

cevap

0

Arama, Reddy ve Chatterji, Görüntü İşleme IEEE Transactions on "çeviri, rotasyon ve ölçek değişmez görüntü kaydı için bir FFT tabanlı tekniği" bir göz atın veya "bileşik korelasyon filtreleri". Bu iyi bir başlangıç ​​noktasıdır: http://www.opticsinfobase.org/abstract.cfm?URI=ao-31-23-4773. "Correlation Pattern Recognition" kitabını bulabiliyorsanız bölüm 6.2, karma filtreleri de açıklar.

Ana fikir, görüntülerinizi döndürerek oluşturulan şablonları almanız ve tek bir sentetik şablon oluşturmanızdır. Sen A Ulaşabildiğiniz şablonlardan üretilen katsayı matristir forma

Ax = c 

lineer denklem sistemini formüle yapıyoruz. x, belirleyeceğiniz sentetik şablon ve c bir kısıtlama vektörüdür. Kısıtlamalar 'a bazı şablonlar ve ise reddedebilir.

Sorun, çok fazla şablonu bir arada birleştirdiğinizde, eşleşen performansı kaybetmeye başlamanızdır. Elbette, sentetik şablonlarınızı kullanmayı planladığınız resimlerle ilgili ek bilgilerinize bağlı olarak, bu sorunun üstesinden gelmenin yolları vardır.

4

Şablonunuzu ve görüntünüzü kutupsal koordinatlara dönüştürürseniz, çeviriyi çevirmiş gibi yapabilirsiniz. Bu çok daha hızlı olmalı çünkü tek bir dönüşümdür - bunu verimli bir şekilde uygulayabilirsiniz.

360 derece için iyi bir sonuç elde etmeyi beklemenin zor olduğunu düşünüyorum. Bu dönüşüm sırasında şablon değişmiş olmalı. Eğer sadece birkaç derece olsaydı, değişmesi daha az olasıdır.

"sentetik diskriminant fonksiyonları" için Google Akademik'teki 1996'da