Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Élek detektálása Vámossy Zoltán 2004 (Gonzales, Woods, Forsyth, Rehg, Hanson, Trucco, Verri, Thrun, Bradski anyagai alapján)

Hasonló előadás


Az előadások a következő témára: "Élek detektálása Vámossy Zoltán 2004 (Gonzales, Woods, Forsyth, Rehg, Hanson, Trucco, Verri, Thrun, Bradski anyagai alapján)"— Előadás másolata:

1 Élek detektálása Vámossy Zoltán 2004 (Gonzales, Woods, Forsyth, Rehg, Hanson, Trucco, Verri, Thrun, Bradski anyagai alapján)

2 E. Trucco, A. Verri: Introductory techniques for 3-D Computer Vision (Prentice Hall 1998) Vámossy Zoltán (Umeai Egyetem – Finnország) előadásai alapján

3 Vámossy Zoltán IAR 2004 3 2. előadás n 4. fejezet (pp. 67-94) –Jellemzők detektálása (Feature detection) Élek (Edges) Sarokpontok (Corners) n 5. fejezet (pp. 95-121) –Jellemzők osztályozása (Feature classification) Vonalak – szakaszok (Lines) Görbék (Curves) Ellipszisek (Ellipses) Deformálható kontúrok (Deformable contours)

4 Vámossy Zoltán IAR 2004 4 Élek (edges) n Mit értünk él alatt? n Élek olyan pixelek, ahol, vagy ami körül a kép intenzitás-értékei erőteljesen megváltoznak

5 Vámossy Zoltán IAR 2004 5 Általános jellemzők #1: élek (edges) n A: Hirtelen mélységi változás (discontinuity) n B: Felület normálisának változása n C: Megvilágítás változása: árnyékok, világítás változás n D: Visszaverődésben változás: felület tulajdonság, jelek A C B D

6 Vámossy Zoltán IAR 2004 6 Miért fontosak számunkra az élek? n A legtöbb elem, objektum, vagy azok árnyékai éleket generálnak n Az élek megtalálásával sokszor az objektum alakját és helyét meg tudjuk határozni

7 Vámossy Zoltán IAR 2004 7 Tipikus élprofilok n Ugrás n Rámpa n Gerinc n Tető n Vonal

8 Vámossy Zoltán IAR 2004 8 Hogyan találhatunk éleket?

9 Vámossy Zoltán IAR 2004 9 Élkeresés 101 im = imread('bridge.jpg'); image(im); figure(2); bw = double(rgb2gray(im)); image(bw); gradkernel = [-1 1]; dx = abs(conv2(bw, gradkernel, 'same')); image(dx); colorbar; [dx,dy] = gradient(bw); gradmag = sqrt(dx.^2 + dy.^2); image(gradmag); colorbar colormap(gray(255)) colormap(default)

10 Vámossy Zoltán IAR 2004 10 Az éldetektálás lépései n Zajcsökkentés (Noise reduction) n Élkiemelés (Edge enhancement) n Éldetektálás (Edge detection) n Éllokalizálás (Edge localisation)

11 Vámossy Zoltán IAR 2004 11 Éldetektálók n Canny éldetektáló* n Roberts éldetektáló n Sobel éldetektáló* n Prewitt éldetektáló n Kirsch éldetektáló n Laplace éldetektáló és a LoG (Marr-Hildreth) n Susan él-, sarokpont detektáló n Haralick módszere *: a könyvben csak ez van

12 Vámossy Zoltán IAR 2004 12 Definiciók n Él-normális = merőleges az élre, a maximális intenzitás-változás iránya, N(i, j)  I(i, j) n Él-irány = az él iránya, merőleges a normálisra n Él-pozíció = ahol a képen elhelyezkedik az él n Él-erősség = megmutatja mennyire „jó” egy él. Nagy változás -> nagy erősség

13 Vámossy Zoltán IAR 2004 13 Él-irány, él-normális

14 Vámossy Zoltán IAR 2004 14 Változás detektálás n Kép deriváltja n Differenciáló szűrők Hátrafele differencia Előrehaladó differencia Központi differencia [-1 1] [1 -1] [-1 0 1]

15 Vámossy Zoltán IAR 2004 15 Deriváltak, differenciák 2D-ben n Definició n Közelítés n Konvoluciós magok

16 Vámossy Zoltán IAR 2004 16 Kép deriváltak Image I

17 Vámossy Zoltán IAR 2004 17 Élnormális megjelenítése figure(5); hold on; image(smooth); colormap(gray(255)); [m,n] = size(gradmag); edges = (gradmag > 0.3 * gmax); inds = find(edges); [posx,posy] = meshgrid(1:n,1:m); posx2=posx(inds); posy2=posy(inds); gm2= gradmag(inds); sintheta = dx(inds)./ gm2; costheta = - dy(inds)./ gm2; quiver(posx2,posy2, gm2.* sintheta / 10, -gm2.* costheta / 10,0); hold off;

18 Vámossy Zoltán IAR 2004 18 Prewitt és Sobel éldetektálás n Kevésbé zajérzékeny (3x3 maszk jobban eltünteti a zajokat) n A nagyobb maszkméret miatt a meredek élek több pixel szélesen jelentkeznek n Főbb lépések –Input: Kép és küszöb –Képszűrés –Gradiens nagyság számolása –Küszöbölés

19 Vámossy Zoltán IAR 2004 19 Sobel operátor -1 -2 -1 0 0 0 1 2 1 -1 0 1 -2 0 2 -1 0 1 S1=S1=S 2 = Edge Magnitude = Edge Direction = S 1 + S 2 2 2 tan -1 S1S1 S2S2 Él-erősség, él-irány:

20 Vámossy Zoltán IAR 2004 20 Prewitt éldetektor imageblurredélek x átlagolás x irányban Differenciáló szűrő x irányban and results imageblurredélek y Átlagolás y irányban Differenciálás Y irányban and results

21 Vámossy Zoltán IAR 2004 21 Sobel éldetektáló imageblurredÉlek x átlagolás x irányban Differenciáló szűrő x irányban and results imageblurredélek y Átlagolás Y irányban Differenciáló szűrés y irányban and results

22 Vámossy Zoltán IAR 2004 22 Sobel éldetektáló Image I Threshold Edges

23 Vámossy Zoltán IAR 2004 23 Sobel éldetektáló

24 Vámossy Zoltán IAR 2004 24 Sobel éldetektáló

25 Vámossy Zoltán IAR 2004 25 Sobel maszk: összefoglalás Sobel maszk szeparálható! Éllel párhuzamos átlagolás

26 Vámossy Zoltán IAR 2004 26 Robert keresztoperátor 1 0 0 -1 0 1 -1 0 + vagy | I(x, y) - I(x+1, y+1) | + | I(x, y+1) - I(x+1, y) | [ I(x, y) - I(x+1, y+1) ] 2 + [ I(x, y+1) - I(x+1, y) ] 2 S =

27 Vámossy Zoltán IAR 2004 27 Robinson iránytű maszk -1 0 1 -2 0 2 -1 0 1 0 1 2 -1 0 1 -2 -1 0 1 2 1 0 0 0 -1 -2 -1 2 1 0 1 0 -1 0 -1 -2 1 0 -1 2 0 -2 1 1 -1 0 -1 -2 -1 0 -1 2 1 0 -1 -2 -1 0 0 0 1 2 1 -2 -1 0 -1 0 1 0 1 2

28 Vámossy Zoltán IAR 2004 28 További maszkok Frei & Chen

29 Vámossy Zoltán IAR 2004 29 Laplace n Ahol a gradiens maximális, ott a második derivált előjelet vált (0) n Elmosódott élek esetén pontosabb lokalizálás n Ebben az esetben csak az élek helyét tudjuk meghatározni, az irányát nem n Az operátor nem érzékeny az elforgatásra, izotrópikus n Zajérzékeny -> n Simítás előtte

30 Vámossy Zoltán IAR 2004 30 Gauss simítás + Laplace (LoG) n Zajra nagyon érzékeny éldetektálók esetében előbb simítást szoktak alkalmazni n Például Gauss szűrőt

31 Vámossy Zoltán IAR 2004 31 Gauss simítás n A Gauss szűrő  paraméterének hatása –  növekedésével több pixel kerül az átlagolásba –  növekedésével a kép jobban el lesz mosva –  növekedésével a zaj jobban el lesz távolítva

32 Vámossy Zoltán IAR 2004 32 Gauss simítás + Laplace (LoG) n Alkalmazhatjuk közvetlenül a Gauss szűrő Laplace-át – második derivált r szerint (Laplacian of Gaussian) – LoG n Mexikói kalap

33 Vámossy Zoltán IAR 2004 33 LoG - Marr Hildreth éldetektáló n Robusztus n Simított kép deriváltját közelíti n A 0 átmeneteket kell vizsgálni n Stabilabb zérushelyek jelölik az éleket, mert nem meredek éleknél is pontos

34 Vámossy Zoltán IAR 2004 34 Marr Hildreth éldetektor n Gauss simítás n Laplace  gradiens (derivált)  Laplace

35 Vámossy Zoltán IAR 2004 35 Marr Hildreth éldetektor n (LoG) számítása

36 Vámossy Zoltán IAR 2004 36 LoG Filter X Y

37 Vámossy Zoltán IAR 2004 37 Zéró átmenetek detektálása n Négy eset: –{+,-} –{+,0,-} –{-,+} –{-,0,+} n Zéró átmenetek (slope) számítása {a, -b} -> |a+b|. n Éldetektálás –zéróátmenet nagyságának küszöbölése

38 Vámossy Zoltán IAR 2004 38 LoG szeparálhatóság n Hasonlóan a Gauss szűrőhöz –A kétdimenziós Gauss szűrő két egydimenzióssá alakítható n 2 szorzás 2 n szorzás

39 Vámossy Zoltán IAR 2004 39 LoG szeparálhatóság n 2 szorzás 4n szorzás

40 Vámossy Zoltán IAR 2004 40 Szeparálhatóság Image g xx (x)g(x)g(x) g yy (y)g(y)g(y) + Image g(x)g(x)g(y)g(y) + Gauss szűrő LoG szűrő

41 Vámossy Zoltán IAR 2004 41 LoG példa

42 Vámossy Zoltán IAR 2004 42 LoG példa

43 Vámossy Zoltán IAR 2004 43 Canny éldetektor n John Canny, “Finding Edges and Lines in Images”, Master’s Thesis, MIT, June 1983. –“Optimális” maszk – Gaussian szűrő –Non-maximum suppression – eltávolítja a maximumra merőleges élgyanús pontokat –Hysteresis thresholding – hosszabb kontúrok készítése –Subpixel accuracy (eredetiben nincs) – subpixeles pontosság

44 Vámossy Zoltán IAR 2004 44 Ideális éldetektáló Milyen kritériumoknak kell megfelelnie egy ideális éldetektálónak? n Megbízható –mindent valódi élt detektál –nem detektál hibás éleket (zajos kép) n Az éleket pontosan lokalizálja n Minden élt pontosan egyszer jelez

45 Vámossy Zoltán IAR 2004 45 Canny éldetektor n Elsősorban lépcsős élekre n A kép Gauss-zajjal terhelt n Három lépést tartalmaz Kiemelés Nonmax_suppressionHysteres._thresh. Input Image Output: Kontúrok listái

46 Vámossy Zoltán IAR 2004 46 I. Canny élkiemelő Az élkiemelő elemei: 1. (Lineáris) konvolúció Gauss szűrővel 2. Gradiens számolás 3. Normális és erősség (nagyság) számítás

47 Vámossy Zoltán IAR 2004 47 I. Canny élkiemelő - megjegyzés 1.lépés: Konvolúció n J = I  G –I = eredeti kép (image) –G = Gauss szűrő magja (kernel) –Nagyobb szűrő jobban csökkenti a zajt, lassabb, de kevésbé lokalizálja jól az éleket!

48 Vámossy Zoltán IAR 2004 48 I. Canny élkiemelő Minden I(i, j) pixelre kiszámoljuk a parciális deriváltakat 2. lépés: Derivált számítás n Megjegyzés: Konvolúció alkalmazása (A kép és a Gauss fgv. konvolúciójának első deriváltja ekvivalens a kép és a Gauss fv. első deriváltjának konvolúciójával. Zajszűrés és éldetektálás kombinálható.)

49 Vámossy Zoltán IAR 2004 49 Canny éldetektor – Gauss deriváltja

50 Vámossy Zoltán IAR 2004 50 Canny éldetektor – első két lépés

51 Vámossy Zoltán IAR 2004 51 I. Canny élkiemelő n 3. lépés: Erősség és normális meghatározás n Élerősség számítás (minden pixelre): n Élnormális (orientáció) számítás:

52 Vámossy Zoltán IAR 2004 52 I. Canny élkiemelő - outputja n E s = élerősség (milyen jó az él, a gradiens nagyságával arányos) n E o = élorientáció (milyen irányba mutat) –A normálist tartalmazza

53 Vámossy Zoltán IAR 2004 53 II. Non-max Suppression n Élek ott vannak, ahol a gradiensnek lokális maximuma van n A Non-maxima suppression (nem maximumok elnyomása) célja: –Fals élpontok eltávolítása, amelyek az élre merőleges irányban vannak –Egy vastagságú élekké zsugorítás

54 Vámossy Zoltán IAR 2004 54 II. Non-max Suppression-algoritmus 1. Minden (i, j)-re határozzuk meg azt a d k (0 , 45 , 90 , 135  ) irányt, ami legjobban közelíti az E O (i, j) élnormálist 2. Ha E s (i,j) < legalább egy szomszédjánál a d k irányokban, akkor I N (i,j) = 0 legyen (elnyomás), egyébként I N (i, j) = E s (i,j) Eredmény: I N (i, j) vékonyított éleket tartalmazó kép a nem maximumok eltávolítása után

55 Vámossy Zoltán IAR 2004 55 III. Canny – harmadik lépés oka Fig 4.5 Élkiemelő - balról jobbra  =3,  =2,  =1

56 Vámossy Zoltán IAR 2004 56 III. Hysteresis thresholding n Miért szükséges a hysteresis küszöbölés?  Ha a küszöb túl alacsony, akkor fals élpontok maradnak A küszöb felett, illetve alatt is lehet maximum erősség Ha az élek értéke a küszöb körül ingadozik, akkor sok szakadás lehet

57 Vámossy Zoltán IAR 2004 57 Példa

58 Vámossy Zoltán IAR 2004 58 Canny, alacsony threshold

59 Vámossy Zoltán IAR 2004 59 Canny, magas threshold

60 Vámossy Zoltán IAR 2004 60 n Definiáljunk két thresholdot n Minden I N (i, j) élpontra –1. Keressük meg a következő I N (i, j) élpontot, hogy –2. I N (i, j)-től kiindulva kövessük a lokális maximumok láncát az élnormálisokra merőleges irányban mindaddig, amíg Jelöljünk meg minden maglátogatott pontot (lista) n Tehát ha a felső küszöbnél nagyobb, akkor vegyük fel élnek n Ha az alsó küszöb alatt van, akkor nem él n Ha a kettő között van, akkor vegyük fel élnek, ha egy szomszédos pixel élhez tartozik III. Hysteresis thresholding

61 Vámossy Zoltán IAR 2004 61 III. Hysteresis thresholding n Eredmény: A kapcsolódó élpixelek listái

62 Vámossy Zoltán IAR 2004 62 Canny eredmények ‘Y’ or ‘T’ csatlakozási probléma a Canny operátornál

63 Vámossy Zoltán IAR 2004 63 Canny: Sarok effektus

64 Vámossy Zoltán IAR 2004 64 n Marr-Hildreth és Canny éldetektorok –Gauss simítás –Derivált számítás x és y irányokban –Gradiens nagyság meghatározás –Gradiens nagyság küszöbölés n Marr-Hildreth és Canny különbségek –Marr-Hildreth másodrendű deriváltat használ –Marr-Hildreth a zéró átmenetek nagyságát küszöböli LoG és Canny összehasonlítás

65 Vámossy Zoltán IAR 2004 65 Marr-Hildreth operátor Image 2g(x)2g(x) Find zero-crossings compute slope Threshold

66 Vámossy Zoltán IAR 2004 66 Canny Image g x (x,y) Gradiens nagyság g y (x,y) Gradiens irány Non-maximum suppression Hysteresis thresholding

67 Vámossy Zoltán IAR 2004 67 Élpontosítás más módszerei

68 Vámossy Zoltán IAR 2004 68 Ötlet 1: Bilineáris interpoláció Használjunk bilineáris interpolációt szubpixeles pontosság érdekében Gradiens csökkenés: olyan pont keresése, ami maximalizálja S-t

69 Vámossy Zoltán IAR 2004 69 Ötlet 2: Élkövetés Következő pont: Merőleges a gradiensre Használjunk Hysteresis-t

70 Vámossy Zoltán IAR 2004 70 SUSAN algoritmus n Konturkeresés nem differenciáló operátorral n Smith és Brady ötlete (http://www.fmrib.ox.ac.uk/~steve/susan/susan/node1.html)

71 Vámossy Zoltán IAR 2004 71 SUSAN algoritmus n A maszk közepén levő pont a nucleus (középpont) n Az USAN egy rövidítés, jelentése: univalue segment assimilating nucleus

72 Vámossy Zoltán IAR 2004 72 SUSAN algoritmus n A SUSAN jelentése: smallest univalue segment assimilating nucleus.

73 Vámossy Zoltán IAR 2004 73 SUSAN algoritmus n A nucleus és a maszkban lévő pontok eltérése alapján megjelölés: n A hasonló intenzitásúak száma n A területen levő élek meghatározása az élválasz függvénnyel történik (g geometriai küszöb)

74 Vámossy Zoltán IAR 2004 74 SUSAN algoritmus n Az ugrásszerű átmenet elkerülése, stabilabb eredményt ad (táblázat!)

75 Haralick felületi modellje Éldetektálás az intenzitásfelületre illesztett térbeli polinommmal

76 Vámossy Zoltán IAR 2004 76 Felületi modell alkalmazása n Facet model: Felületi modellt tételezünk fel – közelítjük az intenzitás felületet általában térbeli polinommal és ebből határozunk meg éleket n Haralick bi-cubic modellje: 1. Legkisebb négyzetek módszerével illesztünk kétparaméteres polinomot 2. Adott pixel élpont ha: 1.Második derivált 0 2.Harmadik derivált negatív f(x, y)=k 1 + k 2 x+ k 3 y+ k 4 x 2 + k 5 xy+ k 6 y 2 + k 7 x 3 + k 8 x 2 y+ k 9 xy 2 + k 10 y 3 keressük a felületet ilyen alakban (1)

77 Vámossy Zoltán IAR 2004 77 Haralick éldetektora n Irány menti deriváltak adott θ irányban: n A gradiens szöge a pozitív y tengellyel (0, 0)-ban:

78 Vámossy Zoltán IAR 2004 78 Haralick éldetektora n Változó behelyettesítéssel (1) x = r sinθ, y = r cosθ: n c 0 = k 1 n c 1 = k 2 sinθ + k 3 cosθ n c 2 = k 4 (sinθ) 2 + k 5 sinθcosθ + k 6 (cosθ) 2 n c 3 = k 7 (sinθ) 3 + k 8 (sinθ) 2 cosθ + k 9 sinθ(cosθ) 2 + + k 10 (cosθ) 3 n Második derivált 0, harmadik negatív, -> c 3 < 0 és |c 2 / 3c 3 | < r 0

79 Vámossy Zoltán IAR 2004 79 k i -k számítása maszkkal (Shah könyv)

80 Vámossy Zoltán IAR 2004 80 Haralick algoritmusa 1. Keressük k 1 k 2 k 3 k 4 k 5 k 6 k 7 k 8 k 9 k 10 értéket a legkisebb négyzetek módszerével, vagy az előző konvolúciós maszkokkal 2. Kiszámoljuk θ, sinθ, cosθ 3. Kiszámoljuk c 2 = k 4 (sinθ) 2 + k 5 sinθcosθ + k 6 (cosθ) 2 4. Kiszámoljuk c 3 = k 7 (sinθ) 3 + k 8 (sinθ) 2 cosθ + k 9 sinθ(cosθ) 2 + k 10 (cosθ) 3 5. Ha c 3 < 0 és |c 2 / 3c 3 | < r 0, akkor élpont


Letölteni ppt "Élek detektálása Vámossy Zoltán 2004 (Gonzales, Woods, Forsyth, Rehg, Hanson, Trucco, Verri, Thrun, Bradski anyagai alapján)"

Hasonló előadás


Google Hirdetések