Skip navigation

Mintakeresés

Előismeret

A ponthalmazok tárgyalásánál láttuk, hogy a kulcspont+leíró alapú párosítással meg tudunk keresni sík felületű objektumokat 3D színtér vetített képén. Ez viszont abban az esetben igaz, ha maga a 2D sík objektum elegendően nagy méretű és textúrázott, vagyis a mintázatán elegendő számú kulcspontot lehet találni. Ez a gyakorlatban nem mindig teljesül. Két esetet is megvizsgálunk, ami más megközelítést igényel.

Pénzérmék keresése kulcspont párosítással

A példatár Mintakereses_penzermek mappájában 6 fotót találunk egy asztallapról, amelyen többféle pénzérme található, némelyik egymással átfedve. Szeretnénk megkeresni a 200 forintos érmék előlapjait. Ehhez az egyik képből kivágott erme_minta_200_elolap.jpg mintát használjuk.

A mintakeresésre kipróbálhatjuk például a korábbi ocv_pair_homography_crosscheck.py példaprogramot. Az AKAZE detektor 107 és 280 kulcspontot detektál. További szűrést nem végzünk, így 107 potenciális párunk van. A RANSAC ezek számát 8-ra csökkenti. Sajnos jól láthatóan nem megfelelő a párosítás, így az eredmény hibás.

Potenciális párok:

RANSAC outlier párok:

RANSAC inlier pontpárok:

A többi képre sem kapunk használható eredményt. Más megközelítés kell!

Ennek a megközelítésnek az is hátránya, hogy a minta többszöri előfordulásakor is csak egy találatot kapnánk. A módszert ráadásul alaposan megzavarja a minta többszöri előfordulása.

Feladatok

Oldjuk meg a mintakeresést képponthasonlósági mértékekkel!

  • A kisebb mintát csúszóablak technikával toljuk végig a képen.
  • Számítsuk ki minden pozícióban a lefedett terület képpontpárjai alapján a hasonlóságot és jegyezzük fel.
  • Válasszuk ezek közül a legjobbat, vagy egy küszöb feletti értékkel rendelkezőket (többszörös minta-előfordulást feltételezve).

A megoldáshoz használhatjuk az OpenCV matchTemplate() függvényét. Ennek használati módjáról itt látunk példákat:

Megjegyezzük, hogy ez a megközelítés csak eltolás invarianciát tud kezelni, ami gyakorlati esetekben ritkán elegendő.

  • Legalább forgás, de mellette skála invariancia is kellene.
  • Ezt úgy tudjuk megoldani, hogy a keresett mintának előállítunk többféle méret és orientáció példányát, és mindegyiket keressük. Ez viszont jelentősen megnöveli a számításigényt.

Autó embléma keresése

Még nehezebb a feladat autókon történő márka embléma kereséskor. Maga a mintázat sokszor stilizált, nagyon kis méretű, és a fényviszonyok (megcsillanás, árnyék) jelentősen ronthatják a képen megjelenő előfordulását.

  • Próbáljunk Mercedes szimbólumot keresni a Mintakereses_auto mappa képein!
  • Keressünk alkalmas minta képet, például az interneten!
  • Készüljünk fel arra is, hogy nem biztos, hogy Mercedes látható a képen!

Termosztát keresés

Keressük meg a termosztát előfordulását a képeken! Az LCD kijelző értelemszerűen más információt mutat a sablon és a színtér képen.

  • Képi adatok a Mintakereses_termosztat mappában.
  • Sablon kép: thermo01_template.jpg.
  • Színtér képek: Proj kezdetű JPG fájlok.