Élek detektálása Vámossy Zoltán 2004

Slides:



Advertisements
Hasonló előadás
ÉRDEKES PONTOK KINYERÉSE DIGITÁLIS KÉPEKEN. BEVEZETÉS  ALAPPROBLÉMA  Jellemzőpontok detektálása mindkét képen  Kinyert pontok megfeleltetése  Megfeleltetések.
Advertisements


Készítette: Boros Erzsi
Weblap szerkesztés HTML oldal felépítése Nyitó tag Záró tag Nyitó tag Záró tag oldalfej tözs.
A társadalmi tényezők hatása a tanulásra
Kvantitatív Módszerek
Minőség elejétől a végéig Abranet ™. ABRANET  •ABRANET TM egy új típusú porelszívásos csiszolóanyag.
Erőállóképesség mérése Találjanak teszteket az irodalomban
MATEMATIKA Év eleji felmérés 3. évfolyam
Humánkineziológia szak
Mellár János 5. óra Március 12. v
MI 2003/ A következőkben más megközelítés: nem közvetlenül az eloszlásokból indulunk ki, hanem a diszkriminancia függvényeket keressük. Legegyszerűbb:
6) 7) 8) 9) 10) Mennyi az x, y és z értéke? 11) 12) 13) 14) 15)
Műveletek logaritmussal
Matematika - 5. évfolyam © Kačmárová Fordította: Balogh Szilveszter.
Elektromos mennyiségek mérése
Az új történelem érettségiről és eredményeiről augusztus Kaposi József.
Koordináta transzformációk
Digitális képanalízis
Utófeszített vasbeton lemez statikai számítása Részletes számítás
Euklidészi gyűrűk Definíció.
A tételek eljuttatása az iskolákba
Mozgó Objektumok Detektálása és Követése Robotkamera Segítségével
VÁLOGATÁS ISKOLÁNK ÉLETÉBŐL KÉPEKBEN.
Védőgázas hegesztések
1. IS2PRI2 02/96 B.Könyv SIKER A KÖNYVELÉSHEZ. 2. IS2PRI2 02/96 Mi a B.Könyv KönyvelésMérlegEredményAdóAnalitikaForintDevizaKönyvelésMérlegEredményAdóAnalitikaForintDeviza.
Vámossy Zoltán 2004 (Mubarak Shah, Gonzales-Woods anyagai alapján)
Vámossy Zoltán 2006 Gonzales-Woods, SzTE (Kató Zoltán) anyagok alapján
Szűrés és konvolúció Vámossy Zoltán 2004
Küszöbölés Szegmentálás I.
Szerkezeti elemek teherbírásvizsgálata összetett terhelés esetén:
Sárgarépa piaca hasonlóságelemzéssel Gazdaság- és Társadalomtudományi kar Gazdasági és vidékfejlesztési agrármérnök I. évfolyam Fekete AlexanderKozma Richárd.
NOVÁK TAMÁS Nemzetközi Gazdaságtan
DRAGON BALL GT dbzgtlink féle változat! Illesztett, ráégetett, sárga felirattal! Japan és Angol Navigáláshoz használd a bal oldali léptető elemeket ! Verzio.
A közép- és emelt szintű vizsga tanári értékelése
Lineáris egyenletrendszerek (Az evolúciótól a megoldáshalmaz szerkezetéig) dr. Szalkai István Pannon Egyetem, Veszprém /' /
Matematikai alapok és valószínűségszámítás
szakmérnök hallgatók számára
A évi demográfiai adatok értékelése
Logikai szita Pomothy Judit 9. B.
Logikai szita Izsó Tímea 9.B.
A szemcsehatárok tulajdonságainak tudatos módosítása Szabó Péter János BME Anyagtudomány és Technológia Tanszék Anyagvizsgálat a gyakorlatban (AGY 4) 2008.
A szemcsehatárok tulajdonságainak tudatos módosítása
Az LPQI rész a Partner Az LPQI-VES társfinanszírozója: Dr. Dán András Az MTA doktora, BME VET Meddőenergia kompenzálás elmélete és alkalmazása.
LENDÜLETBEN AZ ORSZÁG A Magyar Köztársaság kormánya.
2007. május 22. Debrecen Digitalizálás és elektronikus hozzáférés 1 DEA: a Debreceni Egyetem elektronikus Archívuma Karácsony Gyöngyi DE Egyetemi és Nemzeti.
Matematika - 5. évfolyam © Kačmárová Fordította: Balogh Szilveszter.
7. Házi feladat megoldása
Érettségi jelentkezések és érettségi eredmények 2008 Tanévnyitó értekezlet Érettségi jelentkezések - érettségi eredmények augusztus 29.
A pneumatika alapjai A pneumatikában alkalmazott építőelemek és működésük vezérlő elemek (szelepek)
Kézmozdulat felismerő rendszer
Csurik Magda Országos Tisztifőorvosi Hivatal
A klinikai transzfúziós tevékenység Ápolás szakmai ellenőrzése
Tudományos Diákköri Konferencia BMF-NIK, IAR November 10.
Nyitott Kapuk 2010 Beiskolázási kérdőívek értékelése.
QualcoDuna interkalibráció Talaj- és levegövizsgálati körmérések évi értékelése (2007.) Dr. Biliczkiné Gaál Piroska VITUKI Kht. Minőségbiztosítási és Ellenőrzési.
Ágazati GDP előrejelző modell Foglalkoztatási és makro előrejelzés Vincze János Szirák, november 10.
TÁRSADALOMSTATISZTIKA Sztochasztikus kapcsolatok II.
1. Melyik jármű haladhat tovább elsőként az ábrán látható forgalmi helyzetben? a) A "V" jelű villamos. b) Az "M" jelű munkagép. c) Az "R" jelű rendőrségi.
Virtuális Méréstechnika Sub-VI és grafikonok 1 Makan Gergely, Vadai Gergely v
Mérés és adatgyűjtés laboratóriumi gyakorlat - levelező Sub-VI és grafikonok 1 Mingesz Róbert V
Differenciálszámítás
Kvantitatív módszerek
Mikroökonómia gyakorlat
> aspnet_regiis -i 8 9 TIPP: Az „Alap” telepítés gyors, nem kérdez, de később korlátozhat.
A KÖVETKEZŐKBEN SZÁMOZOTT KÉRDÉSEKET VAGY KÉPEKET LÁT SZÁMOZOTT KÉPLETEKKEL. ÍRJA A SZÁMOZOTT KÉRDÉSRE ADOTT VÁLASZT, VAGY A SZÁMOZOTT KÉPLET NEVÉT A VÁLASZÍV.
A TÁRSADALMI JÓL- LÉT KÉRDÉSEINEK ÖSSZEHASONLÍTÁSA EGYES SZOLGÁLTATÓ SZEKTOROKBAN Készítette: Folmegné Czirák Julianna
1 Az igazság ideát van? Montskó Éva, mtv. 2 Célcsoport Az alábbi célcsoportokra vonatkozóan mutatjuk be az adatokat: 4-12 évesek,1.
A Tantárgy címe Képfeldolgozás
Előadás másolata:

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

Vámossy Zoltán (Umeai Egyetem – Finnország) előadásai alapján 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 This is the lecture 2 in Computer vision and it will include… <switch slide>

2. előadás 4. fejezet (pp. 67-94) 5. fejezet (pp. 95-121) Jellemzők detektálása (Feature detection) Élek (Edges) Sarokpontok (Corners) 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)

Élek (edges) Mit értünk él alatt? Élek olyan pixelek, ahol, vagy ami körül a kép intenzitás-értékei erőteljesen megváltoznak What is an edge? Does anyone know what an edge is? The definition is ” Edges are pixels at or around which the image values undergo a sharp variation”. <switch slide>

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

Miért fontosak számunkra az élek? A legtöbb elem, objektum, vagy azok árnyékai éleket generálnak Az élek megtalálásával sokszor az objektum alakját és helyét meg tudjuk határozni So, why are we interested in edges? Why do we want to locate edges in a scene? ” Most elements like solid objects, shadows etc create edges”. By using edges, it is possible to find out what an object looks like and locate it.

Tipikus élprofilok Ugrás Rámpa Gerinc Tető Vonal

Hogyan találhatunk éleket?

É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)

Az éldetektálás lépései Zajcsökkentés (Noise reduction) Élkiemelés (Edge enhancement) Éldetektálás (Edge detection) Éllokalizálás (Edge localisation) Noise reduction: If you look at the left image, you can see that it is full of noise. By removing the noise (right image) things become much clearer and more easy to detect. Edge enhancement: A filter where its output is large at true edges and low elsewhere. That means a high intensity value at true edges and low intensity value where there is not an edge. Edge localisation: This step decides which values that belong to an edge and which values are noise.

Éldetektálók Canny éldetektáló* Roberts éldetektáló Sobel éldetektáló* Prewitt éldetektáló Kirsch éldetektáló Laplace éldetektáló és a LoG (Marr-Hildreth) Susan él-, sarokpont detektáló Haralick módszere *: a könyvben csak ez van There are many different kinds of edge detection algorithms but most of them give the same result. The book concentrate on two of them and those are Canny and Sobel. These are two of the most common algorithms in Computer Vision.

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

Él-irány, él-normális

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

Deriváltak, differenciák 2D-ben Definició Közelítés Konvoluciós magok

Kép deriváltak Image I

É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;

Prewitt és Sobel éldetektálás Kevésbé zajérzékeny (3x3 maszk jobban eltünteti a zajokat) A nagyobb maszkméret miatt a meredek élek több pixel szélesen jelentkeznek 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 The sobel algorithm takes an image and a sigma as input. It first performs noise reduction using a gaussian kernel and then it is filtered with a another, special kernel. Then calculate the gradient magnitude. If the magnitude for each pixel is greater than a threshold, tao, mark the pixel as an edge.

Sobel operátor -1 -2 -1 0 0 0 1 2 1 -1 0 1 -2 0 2 S1= S2 = -1 -2 -1 0 0 0 1 2 1 -1 0 1 -2 0 2 S1= S2 = Él-erősség, él-irány: Edge Magnitude = Edge Direction = S1 + S2 2 tan-1 S1 S2

Prewitt éldetektor image blurred élek x image blurred élek y átlagolás x irányban Differenciáló szűrő x irányban and results image blurred élek y Átlagolás y irányban Differenciálás Y irányban results and

Sobel éldetektáló image átlagolás x irányban blurred Élek x Differenciáló szűrő x irányban and results image blurred élek y Átlagolás Y irányban Differenciáló szűrés y irányban results and

Sobel éldetektáló Threshold Edges Image I

Sobel éldetektáló

Sobel éldetektáló

Sobel maszk: összefoglalás Sobel maszk szeparálható! Éllel párhuzamos átlagolás

Robert keresztoperátor 1 0 0 -1 0 1 -1 0 + S = [ I(x, y) - I(x+1, y+1) ]2 + [ I(x, y+1) - I(x+1, y) ]2 vagy S = | I(x, y) - I(x+1, y+1) | + | I(x, y+1) - I(x+1, y) |

Robinson iránytű maszk -1 0 1 -2 0 2 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 2 0 -2 1 1 -1 -1 0 -1

További maszkok Frei & Chen

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

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

Gauss simítás 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

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

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

Marr Hildreth éldetektor Gauss simítás Laplace  gradiens (derivált)  Laplace

Marr Hildreth éldetektor (LoG) számítása

LoG Filter Y X

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

LoG szeparálhatóság Hasonlóan a Gauss szűrőhöz A kétdimenziós Gauss szűrő két egydimenzióssá alakítható n2 szorzás 2n szorzás

LoG szeparálhatóság n2 szorzás 4n szorzás

Szeparálhatóság Gauss szűrő Image g(x) g(y) + LoG szűrő gxx(x) g(x) gyy(y) g(y)

LoG példa

LoG példa

Canny éldetektor 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

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

Canny éldetektor Elsősorban lépcsős élekre A kép Gauss-zajjal terhelt Három lépést tartalmaz Input Image Kiemelés Nonmax_suppression Hysteres._thresh. The Canny Edge detector consists of three steps. An enhancder, supression and thresholding. It takes as input a normal image. Output: Kontúrok listái

I. Canny élkiemelő Az élkiemelő elemei: (Lineáris) konvolúció Gauss szűrővel Gradiens számolás Normális és erősség (nagyság) számítás

I. Canny élkiemelő - megjegyzés 1.lépés: Konvolúció 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!

I. Canny élkiemelő 2. lépés: Derivált számítás Minden I(i, j) pixelre kiszámoljuk a parciális deriváltakat 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ó.)

Canny éldetektor – Gauss deriváltja

Canny éldetektor – első két lépés

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

I. Canny élkiemelő - outputja Es = élerősség (milyen jó az él, a gradiens nagyságával arányos) Eo = élorientáció (milyen irányba mutat) A normálist tartalmazza The output is a strength image which shows how good the edges are. The strangth image are built up by the gradient so so bigger the change, the bigger value. The orientation image shows in what direction the edge is heading.Remember that the orientation image contains the normal with respect to the edges in point(i,j)

II. Non-max Suppression Élek ott vannak, ahol a gradiensnek lokális maximuma van 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 There can still be local maximas (i.e. false edges), get rid of these false edges by supressing the candidates. It is done by supressing the edges to one pixel.

II. Non-max Suppression-algoritmus 1. Minden (i, j)-re határozzuk meg azt a dk (0, 45, 90, 135) irányt, ami legjobban közelíti az EO(i, j) élnormálist 2. Ha Es(i,j) < legalább egy szomszédjánál a dk irányokban, akkor IN(i,j) = 0 legyen (elnyomás), egyébként IN(i, j) = Es(i,j) Eredmény: IN(i, j) vékonyított éleket tartalmazó kép a nem maximumok eltávolítása után The image IN is a new image which contains the thinned edges.

III. Canny – harmadik lépés oka Fig 4.5 Show Fig. 4.5 The figure shows the strength image after supression. Élkiemelő - balról jobbra =3, =2, =1

III. Hysteresis thresholding 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 The last step in the edge detection is to threshold out false edges. Using a normal threshold may cause problems. Does anyone know why we can’t apply a regular threshold? If you choose a threshold which is too low, there will still be some false edges left. A real edge might have a value below or obove the edge. With a normal threshold, this edge will be set to zero and then lost. Therefore, apply Hysteres threshold.

Példa

Canny, alacsony threshold

Canny, magas threshold

III. Hysteresis thresholding Definiáljunk két thresholdot Minden IN(i, j) élpontra 1. Keressük meg a következő IN(i, j) élpontot, hogy 2. IN(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) Tehát ha a felső küszöbnél nagyobb, akkor vegyük fel élnek Ha az alsó küszöb alatt van, akkor nem él Ha a kettő között van, akkor vegyük fel élnek, ha egy szomszédos pixel élhez tartozik

III. Hysteresis thresholding Eredmény: A kapcsolódó élpixelek listái

Canny eredmények ‘Y’ or ‘T’ csatlakozási probléma a Canny operátornál

Canny: Sarok effektus

LoG és Canny összehasonlítás 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 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

Marr-Hildreth operátor Image 2g(x) Find zero-crossings compute slope Threshold

Canny gx(x,y) gy(x,y) Gradiens nagyság Image Non-maximum suppression Hysteresis thresholding gy(x,y) Gradiens irány

Élpontosítás más módszerei

Ö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

Ötlet 2: Élkövetés Következő pont: Merőleges a gradiensre Használjunk Hysteresis-t

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

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

SUSAN algoritmus A SUSAN jelentése: smallest univalue segment assimilating nucleus.

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

SUSAN algoritmus Az ugrásszerű átmenet elkerülése, stabilabb eredményt ad (táblázat!)

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

Felületi modell alkalmazása 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 Haralick bi-cubic modellje: Legkisebb négyzetek módszerével illesztünk kétparaméteres polinomot Adott pixel élpont ha: Második derivált 0 Harmadik derivált negatív f(x, y)=k1+ k2x+ k3y+ k4x2+ k5xy+ k6y2+ k7x3+ k8x2y+ k9xy2+ k10y3 keressük a felületet ilyen alakban (1)

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

Haralick éldetektora Változó behelyettesítéssel (1) x = r sinθ, y = r cosθ: c0 = k1 c1 = k2 sinθ + k3 cosθ c2 = k4(sinθ)2 + k5sinθcosθ + k6(cosθ)2 c3 = k7(sinθ)3 + k8(sinθ)2cosθ + k9sinθ(cosθ)2 + + k10(cosθ)3 Második derivált 0, harmadik negatív, -> c3 < 0 és |c2 / 3c3| < r0

ki-k számítása maszkkal (Shah könyv)

Haralick algoritmusa Keressük k1 k2 k3 k4 k5 k6 k7 k8 k9 k10 értéket a legkisebb négyzetek módszerével, vagy az előző konvolúciós maszkokkal Kiszámoljuk θ, sinθ, cosθ Kiszámoljuk c2 = k4(sinθ)2 + k5sinθcosθ + k6(cosθ)2 Kiszámoljuk c3 = k7(sinθ)3 + k8(sinθ)2cosθ + k9sinθ(cosθ)2 + k10(cosθ)3 Ha c3 < 0 és |c2 / 3c3| < r0, akkor élpont