Skip navigation

SIFT jellemződetektor

A SIFT jellemződetektor bemutatása

A SIFT (Scale Invariant Feature Transform) az egyik leggyakrabban használt és hivatkozott jellemzőpont detektor. Ebben a leckében röviden áttekintjük a SIFT működését. A teljes algoritmus megértéséhez javasoljuk a Lowe eredeti cikkének tanulmányozását.

A SIFT detektor fontosabb lépései

  1. Konvolváljuk a szürkeárnyalatos képet egy σ paraméterű Gauss-függvénnyel különböző skálafaktor mellett. Képezzük ezeknek a simított képeknek a különbségét (Difference of Gaussians - DoG). A jellemzőpontok a skálatérben a DoG képeken egy 3×3×3 környezet maximumaiban lesznek.
  2. Küszöböljük az értékeket.
  3. Elimináljuk az élválaszokat (csak a sarokpontok érdekesek számunkra).
  4. A lokális orientációhoz határozzuk meg a domimáns gradiens irányt. Az így kapott skála és orientáció minden pont esetében meghatároz egy lokális koordináta-rendszert, tehát minden pont rendelkezik egy (x,y,σ,ϕ) koordinátával (ahol σ az skálaértéket, ϕ az orientációt jelöli).
  5. A jellemzőpont leírásához tekintsünk egy 16×16-os környezetet, amelyet tovább 4×4-es blokkokra osztunk.
  6. Számítsunk a blokkokban 8-irányú irányhisztogramot.
  7. Alkalmazzunk Gauss súlyozást a középpont körül, amelynek szórása 0.5σ (ahol σ a pont skálaértéke)
  8. Előáll egy 128 elemű jellemzővektor.