Download de presentatie
2
Technische Informatica
Computer Vision Presentatie titel Technische Informatica Rotterdam, 00 januari 2007
3
Les 6 Hoofdstukken 2.6 Filters 2.7 Morfologische operatoren
4
Filters In digitale signaalverwerking spelen filters een fundamentele rol om de ingangs- signalen te bewerken Voor beeldbewerking worden die gebruikt in het ruimtelijk domein en het frequentie-domein Bij ruimtelijk domein wordt de data van het beeld bewerkt met convolutie Bij frequentie domein wordt de data van het beeld bewerkt met Fourrier-transformatie Alleen ruimtelijk domein wordt behandeld
5
Convolutie Definitie Convolutie(samenvouwen): toepassing van een wiskundige functie op elk punt van elk lokaal gebied in een beeld; De operatie wordt gedefinieerd door een masker dat voor elke omgeving specificeert hoeveel punten het bevat en hoe de corresponderende beeldpunten de berekeningen beïnvloeden Een uitleg in sheets: Dit geldt voor 1 discrete functie
6
Convolutie
7
Convolutie
8
Convolutie
9
Convolutie
10
Convolutie
11
Convolutie
12
Convolutie
13
Convolutie
14
Convolutie
15
Convolutie Enzovoort tot n = 9
16
Convolutie
17
Convolutie
18
Convolutie Gegeven de 2 discrete functies f en g Z gehele getallen
Dan is de convolutie van f met g Hierin is h het uitgangssignaal De rechte haken geven aan dat we met discrete signalen te maken hebben
19
Convolutie Voor een filter is f de filter-functie en g de grijswaarde-functie (beeld) Voor een beeld is een filter een vierkante matrix en het bereik van f: Dit wordt ook wel filter-masker genoemd De enige afwijking met formule 2.43 is het teken , dat is positief (spiegel)
20
Convolutie Meestal zijn de filters punt symmetrisch
De convolutie van een grijs-waarde beeld I met een filter-matrix F en uitvoerbeeld I’ kan worden geformuleerd worden als: I’=F I met = symbool convolutie In fig is de applicatie te zien van een gemiddeld filter van 1 punt in het beeld
21
Convolutie Alle elementen die grijs zijn worden vermenigvuldigd en opgeteld ( ook de middelste) 3*1/9 7*1/9 1*1/9 2*1/9 9*1/9 0*1/9 5*1/9
22
Convolutie De som van alle waarden: ( 3*1/9 ) + ( 7*1/9 ) + ( 1*1/9 )+
( 7*1/9 ) + ( 2*1/9 ) + ( 9*1/9 )+ (7*1/9 ) + ( 0*1/9 ) + ( 5*1/9 )= 45/9=5 Het getal 5 (gefilterd) wordt ingevuld op de plaats van het getal 2 (origineel) Een algemene applicatie van een vierkant filter is in algoritme 17 gegeven De randen van de matrix vormen een probleem Evenals de uitgangsmatrix , die bevat floating point getallen
23
Convolutie Later volgt de oplossing voor dit probleem
24
Filter masker Er worden 3*3 filters gebruikt
Laag-doorlaatfilters halen hoge frequenties weg ( egalisatie en ruisonderdrukking) Hoog-doorlaatfilters halen lage frequenties weg (detectie van contouren) Laag-doorlaatfilters zijn: Gemiddeld filter Gauss filter Een voorbeeld van een gemiddeld filter is in fig 1 op volgende sheet te zien
25
Filter masker
26
Filter masker Het filter masker voor gemiddeld filter is:
Het filter masker voor een Gauss filter is:
27
Filter masker Het Gauss filter is gebaseerd op de 2 dimensionale cirkel symmetrische Gauss-functie ( statistiek) Gekozen wordt σ=1 als de variantie , x=1 en y=0.1 Dit filter is efficient omdat er factoren 2 en 4 ,16 in de matrix voorkomen (schuifoperatie) Het resultaat van filtering voor fig 2.22 is in fig 2.23 te zien voor Gemiddeld en Gauss filter
28
Filter masker
29
Filter masker Om beter het verschil te zien tussen een gemiddeld filter en een Gauss filter moet een 5*5 filter masker worden gebruikt ( kost meer rekentijd) De mate van egalisatie hangt af van de factor σ. Hoe groter σ hoe groter de matrix moet worden
30
Filter masker Meerdere keren uitvoeren van een Gauss filter leidt niet tot een betere egalisatie Het maken van een groter filter geeft betere benaderingen De zogenaamde edge-filters ( hoog-doorlaat filters) hebben gemeen dat ze zijn gebaseerd op de ruimtelijke grijswaarde gradient (verloop) Ze bepalen de contouren van een figuur Zie Laplace operatoren zijn onafhankelijk van de richting Sobel en Prewit operatoren zijn afhankelijk van de richting
31
Filter masker Laplace benadert de som van
2 varianten zijn hieronder gegeven:
32
Filter masker Het resultaat van fig 2.22 is te zien in fig 2.24
De Prewit en Sobel filters zijn richtinggevoelig Het filter masker voor de detectie van de vertikale randen is met index x
33
Filter masker Dan wordt het verloop in horizontale richting berekend
Het filter masker voor de detectie van de horizontale randen is met index y Dan wordt het verloop in vertikale richting berekend Het filtermasker voor Prewit is: Het resultaat van Prewit van fig 2.22 is in fig 2.25 gegeven
34
Filter masker Bij Sobel is het centrum van de figuur belangrijker
35
Filter masker Het resultaat van Sobel van fig 2.22
is in fig 2.26 gegeven
36
Practische beschouwingen
Een probleem met filters : Een filtermasker van (2k+1)*(2k+1) kan niet gebruikt worden voor een k-pixel brede rand van het beeld Oplossing: negeren of pixels op 0 zetten van de rand een extra rand maken met dezelfde waarde als de rand van het orgineel (duurder) De uitgang is niet langer 8 bit grijswaarden ( groter dan 255) Alle laagdoorlaatfilters hebben floating point getallen door de delingen
37
Practische beschouwingen
Daarom moet dit geconverteerd worden naar gijswaarden. In algoritme 18 is die conversie gegeven Alleen absolute waarden worden bekeken Prewitt en Sobel zijn richting afhankelijk Om een resultaat te krijgen voor beide richtingen moeten de gefilterde uitgangen Mx en My worden samengevoegd
38
Practische beschouwingen
1 mogelijkheid is: Een andere mogelijkheid is: In fig 2.27 is het verschil te zien ( is niet veel) Daarom 2.47 gebruiken
39
Practische beschouwingen
Laplace is richting onafhankelijk maar is gevoelig voor ruis Daarom een afvlak filter gebruiken voor de Laplace operatie zie fig 2.28 voor verschil gefilterd Laplace en Sobel
40
Morfologische operatoren
Morfologische operatoren veranderen de vorm van het object afhankelijk van de omgeving De operatoren zijn nuttig voor de analyse van beelden en worden gebruikt voor contourherkenning, verwijderen van ruis ,beeld verbeteren en beeldsegmentatie De basisoperaties: erosie (versmallen) en dilatie ( verbreden) Er zijn 2 datasets: Het beeld dat geerodeerd of gedilateerd moet worden Een gestructureerd element (ook wel kernel genoemd)
41
Morfologische operatoren
De datasets worden behandeld als een verzameling coordinaten Er wordt alleen over positieve binaire beelden gesproken ( achtergrond wit =0 en voorgrond zwart=1) Het gestructureerd element bepaalt het effect van de dilatie We nemen een voorbeeld van een 3x3 matrix als gestructureerd element De coordinaatpunten zijn: { (-1,-1),(0,-1),(1,-1), (-1,0), (0,0), (1,0), (-1,1), (0,0), (1,1) } 1 (0,0)
42
Morfologische operatoren
Voor het berekenen van de dilatie van een binair beeld door een gestructureerd element beschouwen we elk van de achtergrond pixels (input) Voor ieder input pixel plaatsen we het gestructureerd beeld eroverheen. De oorsprong (0,0) valt samen met input pixel Als tenminste 1 pixel van het gestructureerd element samenvalt met een voorgrond pixel , dan wordt de input pixel gelijk aan de voorgrond pixel
43
Morfologische operatoren
Structuur-element: Orgineel: Na dilatie: 1 (0,0) 1 1
44
Morfologische operatoren
Structuur-element: Orgineel: Na erosie: 1 1 1
45
Morfologische operatoren
Het effect van het gestructureerde element op een binair beeld:
46
Morfologische operatoren
Voorbeelden van operatoren: Binary image morphology: (a) original image; (b) dilation; (c) erosion ; (d) majority; (e) opening; (f) closing.
47
Algemene definitie De binaire beelden moeten eerst in een verzameling geplaatst worden De verzameling I komt overeen met een grijswaarde beeld I en is gedefinieerd als: I :=q op de plaats p(u,v). Bijv als q=1 p(2,6):=1 met q =de grijswaarde ( bij binair 0 of 1) Het optellen van een verzameling A met een element x є Z2 is gedefinieerd als:
48
Algemene definitie Op grond van deze definitie zijn erosie en dilatie gebaseerd Gegeven 2 verzamelingen dan is dilatie (verwijden): En erosie ( vernauwen): Door herformulering van 2.50 kan worden afgeleid dat dilatie is de vectoroptelling van A met alle elementen van B:
49
Algemene definitie a,b,p zijn vectoren , A,B zijn verzamelingen
Er is een vector a є A en een vector b є B waarvoor geldt: p= a+b Dit is gelijk aan : Er is een vector b є B waarvoor geldt: p-b є A Om voor erosie ook vectoroptellingen te maken, dienen nog 2 definities te worden geintroduceerd
50
Algemene definitie De reflectie van een verzameling A:
Het complement Ac van de verzameling A: Men kan bewijzen dat : Met de erosie worden de achtergrond pixels verbreed. Verg 2.54 kan dan ook als vectoroptelling geschreven worden
51
Algemene definitie Hieruit volgt:
52
Dilatie en Erosie Met de operatoren dilatie en erosie wordt de beeldverzameling I en het gestructureerd element A gebruikt A is een vierkante matrix met oneven lengte n= 2k+1, k> ≥1 A= {p | p є { -k,….,k} x {-k,….,k}} De toepassing van een morfologische operator is het schuiven van een n*n venster over het beeld en de nodige berekeningen uitvoeren.
53
Dilatie en Erosie Samengevat:
Een dilatie wil zeggen dat voor elk pixel i(u,v) wordt bekeken of het gestructureerd element overeenkomt met tenminste 1 pixel binnen het overlappend oppervlakte Afhankelijk van het resultaat wordt de waarde q toegekend aan pixel I’(u,v) Dit komt overeen met de OF-functie
54
Dilatie en Erosie Een erosie wil zeggen dat voor elk pixel I’(u,v) wordt bekeken of de overlap van alle pixels overeenkomen met het beeld I Afhankelijk van het resultaat wordt de waarde q toegekend aan pixel I’(u,v) Dit komt overeen met de EN-functie
55
Dilatie en Erosie
56
Dilatie en Erosie
57
Dilatie en Erosie Een voorbeeld van erosie(links) en dilatie (rechts) is in fig 2.29 gegeven
58
Opening en Closing De morfologische operatoren opening en closing worden samengesteld uit de erosie en dilatie De operatie opening is gedefinieerd als de combinatie van erosie en dilatie Een voorbeeld voor opening is bij niet perfecte segmentatie De erosie verwijdert geisoleerde pixels De opvolgende dilatie vergroot de andere gebieden tot hun orginele grootte
59
Opening en Closing Closing is de duale operatie
Hier is het doel van dilatie om geisoleerde gaten in een gebied te sluiten. Opeenvolgende erosies verkleinen het gebied tot de oorspronkelijke grootte
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.