İki resmi karşılaştırmak için CV_TM_CCORR_NORMED
ile eşleme şablonunu kullanıyorum ... Bu dönüşü yapmak ve değişmez olarak ölçeklendirmek istiyorum .. herhangi bir fikir? ölçek ve rotasyon Şablon eşleştirme
matchTemplate
ile
İki resmi karşılaştırmak için CV_TM_CCORR_NORMED
ile eşleme şablonunu kullanıyorum ... Bu dönüşü yapmak ve değişmez olarak ölçeklendirmek istiyorum .. herhangi bir fikir? ölçek ve rotasyon Şablon eşleştirme
matchTemplate
ile
Şablon eşleme iyi farklı değil mi .
openCV işlevini Features2D
Framework'den denemelisiniz. Örneğin SIFT
veya SURF
tanımlayıcıları ve FLANN
eşleştiricisi. Ayrıca, findHomography
yöntemine ihtiyacınız olacak.
Here, sahnede döndürülen nesneyi bulmak için iyi bir örnektir.
Güncelleme: Kısacası
, algoritma şudur: nesneye görüntünün 1.1
bulma keypoints. keypoints gelen 2.1 ayıklanıyor tanımlayıcıları
Maç tanımlayıcıları Eşleştirici
ederek sahne görüntüsünün keypoints bulma o keypoints
gelen tanımlayıcılar ayıklanıyor eşlemeleriniz
vardır farklı sınıflar Analiz FeatureDetectors, DescriptorExtractors ve DescriptorMatches öğelerini, bunlarla ilgili olarak okuyabilir ve sizin için uygun olanları seçebilirsiniz. sks.
Rotasyon
Her anahtar nokta için:
BRISK yöntem
kolay bir şablon ölçeği eşleşen yolları ve biliyorsanız (özellik algılama ve homographies yoluyla gitmekten daha dönel değişmez vardır görün değişmez Ölçek onun gerçekten sadece döndürülmüş ve ölçekler ama her şey sabittir). Gerçek nesne algılaması için yukarıda önerilen anahtar nokta tabanlı yaklaşımlar daha iyi çalışır.
Aynı şablonun olduğunu ve perspektif değişikliği olmadığını biliyorsanız, ölçek alanı algılama için bir görüntü piramidi alırsınız ve şablonlarınızı bu piramidin farklı düzeylerinde eşleştirin (örneğin SSD veya NCC). Piramidin daha yüksek (= daha düşük çözünürlük) seviyelerinde kaba eşleşmeleri bulmak ucuz olacaktır. Aslında çok ucuz olacak, aynı zamanda şablonunuzu kabaca düşük çözünürlük seviyelerinde de döndürebiliyorsunuz, ve şablonu daha yüksek çözünürlük seviyesine kadar izlediğinizde, daha hassas bir rotasyon adımı kullanıyorsunuz. Bu oldukça standart bir şablon eşleme tekniği ve pratikte iyi çalışıyor.
** Zaten eşyazımı kullanılan, teşekkür ederiz ve bunun yerine sörf I ilgi noktaları olarak köşeleri bulundu, Flann ile bu iş? Sörf ve eleme uzun zaman alabilir ve performansı azaltabilir ** – Storm2012
'İlgi çekici noktalar 'genel terimdir. Kenarları ve çoğunlukla köşeleridir. İlgi noktalarını nasıl buldunuz? OpenCV 'FeatureDetector's herhangi birini kullanabilir veya kendiniz yazabilirsiniz. Örneğin, "FAST", "STAR" var. Onlar basit ve hızlıdır. Fakat ilgi noktaları açısından bilgi tutmazlar. “SURF” ve “SIFT” daha yavaştır, ancak ilgi alanları hakkındaki bilgileri daha büyüktür (açıları). SIFT ve SURF, ölçek değişmez eşleşmeleri bulmanızı sağlar. Ancak, eşleştiriciniz için herhangi bir openCV detektörünü kullanabilirsiniz. //meta.stackexchange: Ayrıca bu yanıtı faydalı oldu ve/veya sorunuzu yanıt verdiyseniz –
Storm2012 @ size – Storm2012