Beeldverwerking Prof. dr. ir. W. Philips Didactisch materiaal bij de cursus Academiejaar Tel: 09/ Fax: 09/
© W. Philips, Universiteit Gent, versie: 23/11/ b. 2 Copyright notice This powerpoint presentation was developed as an educational aid to the renewed course “Image processing” (Beeldverwerking), taught at the University of Gent, Belgium as of This presentation may be used, modified and copied free of charge for non-commercial purposes by individuals and non-for-profit organisations and distributed free of charge by individuals and non-for-profit organisations to individuals and non-for-profit organisations, either in electronic form on a physical storage medium such as a CD-rom, provided that the following conditions are observed: 1.If you use this presentation as a whole or in part either in original or modified form, you should include the copyright notice “© W. Philips, Universiteit Gent, ” in a font size of at least 10 point on each slide; 2.You should include this slide (with the copyright conditions) once in each document (by which is meant either a computer file or a reproduction derived from such a file); 3. If you modify the presentation, you should clearly state so in the presentation; 4.You may not charge a fee for presenting or distributing the presentation, except to cover your costs pertaining to distribution. In other words, you or your organisation should not intend to make or make a profit from the activity for which you use or distribute the presentation; 5. You may not distribute the presentations electronically through a network (e.g., an HTTP or FTP server) without express permission by the author. In case the presentation is modified these requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the presentation, and can be reasonably considered independent and separate works in themselves, then these requirements do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the presentation, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. In particular note that condition 4 also applies to the modified work (i.e., you may not charge for it). “Using and distributing the presentation” means using it for any purpose, including but not limited to viewing it, presenting it to an audience in a lecture, distributing it to students or employees for self-teaching purposes,... Use, modification, copying and distribution for commercial purposes or by commercial organisations is not covered by this licence and is not permitted without the author’s consent. A fee may be charged for such use. Disclaimer: Note that no warrantee is offered, neither for the correctness of the contents of this presentation, nor to the safety of its use. Electronic documents such as this one are inherently unsafe because they may become infected by macro viruses. The programs used to view and modify this software are also inherently unsafe and may contain bugs that might corrupt the data or the operating system on your computer. If you use this presentation, I would appreciate being notified of this by . I would also like to be informed of any errors or omissions that you discover. Finally, if you have developed similar presentations I would be grateful if you allow me to use these in my course lectures. Prof. dr. ir. W. Philips Department of Telecommunications and Information ProcessingFax: University of GentTel: St.-Pietersnieuwstraat 41, B9000 Gent, Belgium
© W. Philips, Universiteit Gent, versie: 23/11/ b. 3 Overzicht Plaats-frequentieanalyse en -ontbindingen Principes Redundante en niet-redundante subbanddecompositie Subbanddecomposities voor beelden Quadrature mirror filters (Daubechies) Verband met wavelets Ruisonderdrukking wavelet shrinkage multischaal technieken Bayesiaanse technieken en Markov-randomvelden Ruisonderdrukking bij video
Waveletgebaseerde restauratie Quadrature mirror filters
© W. Philips, Universiteit Gent, versie: 23/11/ b. 5 De Daubechies filters I. Daubechies heeft filters afgeleid met de volgende eigenschappen “Compact support”: de impulsresponsen van de analyse- en reconstructiefilters hebben een eindige lengte (d.w.z. zijn exact 0 buiten een bepaald interval) voordeel: filtermaskers van beperkte grootte snelle berekeningen De frequentiekarakteristieken van de hoog- en laagdoorlaatfilters zijn elkaars spiegelbeeld de totale mogelijke signaalbandbreedte wordt gelijkmatig verdeeld over de uitgangssignalen Ze maken de niet-redundante filterbank een orthogonale transformatie energiebehoud: de som van de energieën van de uitgangssignalen is gelijk aan de energie van het ingangssignaal de hoogdoorlaat filteruitgang is identiek nul voor voldoend gladde signalen (=veeltermen met voldoend lage graad) Opmerking: in de praktijk past men de filters toe op een eindig interval [0, N [ van het ingangssignaal men moet randeffecten op een elegante manier opvangen
© W. Philips, Universiteit Gent, versie: 23/11/ b. 6 Frequentiekarakteristiek (m = 4) frequenties waar aliasing optreedt De frequentiekarakteristieken zijn inderdaad elkaars spiegelbeeld De filterkarakteristieken zijn niet erg “steil” De onderbemonstering na de analysefilters veroorzaakt aliasing in de uitgangssignalen In de reconstructiestappen worden de uitgangssignalen na opdrijven bemonsteringsfrequentie en filteren weer samengevoegd De aliascomponenten verdwijnen hier weer (heffen elkaar op)
Waveletgebaseerde restauratie Wavelets
© W. Philips, Universiteit Gent, versie: 23/11/ b. 8 Verband met wavelets xxx xxxx xxx xxx xxx xxxx xxx xxxx x frequentie tijd volgnummer n k De basisfuncties kn ( t ) worden discrete wavelets genoemd Ze zijn (circulair) verschoven versies van elkaar: Het reconstructieproces is lineair Het gereconstrueerd signaal is een lineaire functie van de uitgangsmonsters A k,n :
© W. Philips, Universiteit Gent, versie: 23/11/ b. 9 Opmerking Voor een orthogonale transformatie zijn de basisfuncties orthogonaal (zie vroeger): de coefficienten A k,n zijn gelijk aan het scalair product van het signaal x ( t ) en de basisfuncties Dit geldt ook voor een Daubechies wavelet-transformatie
© W. Philips, Universiteit Gent, versie: 23/11/ b. 10 Equivalente analysefilterbank Besluit: de wavelets zijn tijdsverschoven versies van de tijdsinversen van de impulsresponses van de analysefilters g (3) ( t ) 8 g(t)g(t) g (2) ( t ) 2 4 x(t)x(t) h (3) ( t ) 8 Filterbankvisie: Waveletvisie:
© W. Philips, Universiteit Gent, versie: 23/11/ b. 11 Opmerkingen Terminologie de laagdoorlaat basisfunctiesworden discrete schalingsfuncties of vaderwavelets genoemd en de corresponderende A kn schalingscoëfficiënten of approximatiecoëfficiënten demo: daubwavelets.xls De wavelets zijn ruwweg in de tijd en amplitude geschaalde versies van eenzelfde moederwavelet De wiskundigen definiëren wavelets meestal in het continu domein de continue wavelets zijn exact geschaalde versies van de moederwavelet de hoogdoorlaat basisfunctiesworden discrete wavelets genoemd en de corresponderende A Kn waveletcoëfficiënten of detailcoëfficiënten
© W. Philips, Universiteit Gent, versie: 23/11/ b. 12 Op diepere niveaus (grotere k ) zijn de basisfuncties (en de impulsresponsen) “langer” dan de op minder diepe niveau’s: de lengte van de basisfunctiesis ruwweg m 2 k- 1 k= 4:8 basisfuncties t= 64 t= 32 k= 2: 16 basisfuncties Voorbeeld: QMF-wavelets J= 3 en N= 64 k= 1:32 basisfuncties k= 3:8 basisfuncties zijn er minder basisfuncties: op niveau k zijn er N / 2 k basisfuncties
Appendix 1 Afleiding Daubechies filtercoefficienten Zelfstudie: Begrijpen maar niet reproduceren
© W. Philips, Universiteit Gent, versie: 23/11/ b. 14 Conventie: De analysefilters zijn anticausaal: ze gebruiken enkel toekomstige waarden van de ingang Conventies en notaties Naamgeving: Voorwaartse transformatie=analysefilterbank; inverse transformatie=reconstructiefilterbank g(t)g(t) h(t)h(t) x(t)x(t) 22 b (0) b (1) b (2) b (3) b (4) … t: …. n :01234 …. b (0) b (2) b (4) … t: 024 …. n :012 …. De gesubsampelde signalen hebben een andere bemonsteringsfrequentie we gebruiken de bemonsteringsindex n i.p.v. de tijd t
© W. Philips, Universiteit Gent, versie: 23/11/ b. 15 Toepassing op eindig interval Een eindig aantal monsters: enkel x (0) … x ( N - 1) gekend We wensen N uitgangsmonsters te berekenen waaruit we de N ingangs- monsters eenduidig kunnen reconstrueren g(t)g(t) h(t)h(t) x(t)x(t) 22 De formules voor x g ( n ) en x h ( n ) bevatten in het algemeen ook waarden x ( j ) voor j< 0 en j N, b.v.: x h ( N/ 2-1)= h (0) x ( N- 2)+ h ( - 1) x ( N- 1)+ h ( - 2) x ( N ) + … men moet veronderstellingen maken omtrent de ontbrekende x ( n ) nuluitbreiding: de ontbrekende monsters zijn nul periodieke uitbreiding: x ( n ) =x ( n ’) met n ’ =n mod N periodieke convolutie (cfr. filteren via de FFT) … We beperken ons tot periodieke uitbreiding ( eenvoudigste formules)
© W. Philips, Universiteit Gent, versie: 23/11/ b. 16 Matrixformulering ( m= 4) … Filterformules als g ( k ) = 0 voor k [1 -m,0] Periodieke uitbreiding:
© W. Philips, Universiteit Gent, versie: 23/11/ b. 17 … Matrixformulering Het verband tussen de monsterwaarden van de uitgangssignalen en de monsterwaarden van het ingangssignaal kan als een matrix-vector product worden geschreven: y=H N t x In de praktijk wenst men dikwijls dat H N een orthogonale matrix is: H N H N t =H N t H N =I y x HNtHNt
© W. Philips, Universiteit Gent, versie: 23/11/ b. 18 Vereisten voor orthogonaliteit Door uitrekenen van H t H en vergelijken met de éénheidsmatrix vindt men gemakkelijk de voorwaarden waaronder H orthogonaal is: b.v. voor m =4: Interpretatie: de impulsresponsen g ( t ) en h ( t ) van de filters hebben energie gelijk aan 1 de impulsresponsen g ( t ) en h ( t ) staan loodrecht op alle over een even aantal monsters circulair verschoven versies van g ( t ) en h ( t ), d.w.z. ze staan loodrecht op g ( t- 2 c ) en h ( t- 2 c ) voor alle c 0 voor q ( t )= g ( t ), h ( t ) en voor c 0 7 vergelijkingen voor 8 onbekenden minstens 1 vrijheidsgraad over g 2 (0) +g 2 (-1) +g 2 (-2) +g 2 (-3) = 1 h 2 (0) +h 2 (-1) +h 2 (-2) +h 2 (-3) = 1 h (0)g(0)+ h (-1) g (-1)+ h (-2) g (-2)+ h (-3) g (-3)=0 g (0) g (-2) +g (-1) g (-3) = 0 h (0) h (-2) +h (-1) h (-3) = 0 g (0) h (-2) +g (-1) h (-3) = 0 h (0) g (-2) +h (-1) g (-3) = 0
© W. Philips, Universiteit Gent, versie: 23/11/ b. 19 Quadrature mirror filters… Bij QMF-filters legt men als bijkomende voorwaarde op dat de frequentiekarakteristieken van beide filters elkaars spiegelbeeld zijn we gaan uit van een bemonsteringsperiode T= 1 gewenste symmetrie: symmetrieas voldoende (maar niet nodige) voorwaarde voor symmetrie: h ( n )=(-1) 1 -m-n g (1 -m-n ) Stel l= 1 -m-k afleiding niet in detail te kennen
© W. Philips, Universiteit Gent, versie: 23/11/ b. 20 Orthogonaliteitsvoorwaarden: g 2 (0) +g 2 (-1) +g 2 (-2) +g 2 (-3) = 1 -g (-3) g (0) +g ( - 2)g(-1) -g (-1) g (-2) +g (0) g (-3)=0 g (0) g (-2) +g (-1) g (-3) = 0 h (0) h (-2) +h (-1) h (-3) = 0 g (0) h (-2) +g (-1) h (-3) = 0 h (0) g (-2) +h (-1) g (-3) = 0 Vereisten voor orthogonaliteit bij QMF Voor h ( t )=(-1) 1 -t-m g (1 -t-m ) vereenvoudigen de orthogonaliteitsvoorwaarden; b.v. voor m =4: h (0) =-g (-3) h (-1) =g (-2) h (-2) =-g (-1) h (-3) =g (0) voldaan als eerste vgl. voldaan is linkerlid = g (-3) g (-1) +g (-2) g (0) ; voldaan als vierde vgl. voldaan is linkerlid = - g (0) g (-1) +g (-1) g (0) = 0 automatisch voldaan linkerlid = - g (-3) g (-2) +g (-2) g (-3) = 0 automatisch voldaan Besluit: na het opleggen van de orthogonaliteitsvoorwaarde en de QMF- voorwaarde blijven er in het geval m= 4 toch nog twee vrijheidsgraden over automatisch voldaan afleiding niet in detail te kennen
© W. Philips, Universiteit Gent, versie: 23/11/ b. 21 Daubechies filters Bij de Daubechies filters gebruikt men de overblijvende vrijheidsgraden om het hoogdoorlaatfilter een nul-respons te doen produceren op signalen x ( t ) van de vorm x ( t ) =t p, p= 0,1,2, … en dit voor zoveel mogelijk waarden van p Opmerkingen: het linkerlid van de laatste formule is het zogenaamde p- de orde moment van de impulsrepons g ( t ) voor p= 0, 1, … P en willekeurige n extra voorwaarden voor g ( t ): voor p= 0, 1, … P (controleer) vele praktische signalen kunnen stuksgewijs goed benaderd worden door veeltermen; als de graad van die veeltermen voldoende laag is dan zal het hoogdoorlaat signaal x g ( n ) voor de meeste n nul zijn interessant voor ruisonderdrukking, compressie, …
© W. Philips, Universiteit Gent, versie: 23/11/ b. 22 Voorbeeld: Daubechies m= 4 Orthogonaliteitsvoorwaarden g 2 (0) +g 2 (-1) +g 2 (-2) +g 2 (-3) = 1 g (0) g (-2) +g (-1) g (-3) = 0 Momenten: p= 0 g (0) +g (-1) +g (-2) +g (-3) = 0 p= 1 - g (-1) - 2 g (-2) - 3 g (-3) = 0 Opmerking: de oplossing is niet volledig uniek; als men de impulsresponsen met -1 vermenigvuldigt of in de tijd omkeert, krijgt men andere oplossingen
© W. Philips, Universiteit Gent, versie: 23/11/ b. 23 Opmerkingen De Daubechies filters met m coëfficiënten heten “de Daubechies- m filters” Verband met notaties in Numerical Recipes: h ( -n )= c n De analyse- en recontructieformules blijven gelden als het ingangssignaal (en dus ook de uitgangssignalen) oneindig lang zijn (]- , + [ i.p.v. [0, N- 1[)
© W. Philips, Universiteit Gent, versie: 23/11/ b. 24 Opmerkingen In de praktijk gebruikt men toch dikwijls nuluitbreiding (d.w.z. gewone i.p.v. periodieke convolutie) of evenperiodieke uitbreiding orthogonaal verband tussen x ’ en y Interpretatie: dit is equivalent met periodieke convolutie op een met nullen uitgebreide versie x ’ van x Nadeel: men berekent meer uitgangsmonsters dan nodig oplossing 2: bereken N+m- 2 uitgangsmonsters y ( n ), n= 0 … N+m- 2 Probleem: de transformatiematrix H N is dan echter niet meer orthogonaal oplossing 1: men kan de laatste rijen van H N aanpassen zodat H N toch orthogonaal wordt
© W. Philips, Universiteit Gent, versie: 23/11/ b. 25 Reconstructieformules Omdat de transformatiematrix H hier orthogonaal is: y=H t x x=Hy x y Corresponderende reconstructieformule:
© W. Philips, Universiteit Gent, versie: 23/11/ b. 26 Reconstructie-procedure + g ’( t ) h ’( t ) x(t)x(t) x h (0) x h (1) … x g (0) x g (1) … 2 2 x h (0)0 x h (1)0 … x g (0)0 x g (1)0 … Reconstructieformule: bvb.: m= 6, n= 10 behalve aan de randen g’ ( t ) =g ( -t ) x g (0) 0 x g (1) 0 x g (1) 0 … Dit geldt ook voor t oneven (controleer!)
© W. Philips, Universiteit Gent, versie: 23/11/ b. 27 Randeffecten + g ’( t ) h ’( t ) x(t)x(t) x h (0) x h (1) … x g (0) x g (1) … 2 2 x h (0)0 x h (1)0 … x g (0)0 x g (1)0 … Bovenstaande reconstructie geldt niet aan de randen van [ 0,N- 1 [ Formule die overal correct is: metde periodieke uitbreiding van g ’( t ) ende periodieke uitbreiding van h ’( t )
© W. Philips, Universiteit Gent, versie: 23/11/ b. 28 Opmerkingen Bij alle orthogonale filterparen zijn de reconstructiefilters op een tijdsinversie na gelijk aan de analysefilters (zoals bij de Daubechies QMF filters) In de praktijk gebruikt men dikwijls andere dan de Daubechies wavelets men wenst dikwijls dat de impulsrepsons h ( n ) symmetrisch is: h ( n )= h ( c-n ) voor een bepaalde c orthogonaliteit onmogelijk dikwijls wenst men dat m oneven is; Daubechies- m filters hebben echter altijd een even aantal coëfficiënten het is niet altijd nodig dat zowel de analyse- als de reconstructiefilters een impulsrespons met eindige lengte hebben
Appendix Alternatieve afleiding verband tussen wavelets en filterbanken
© W. Philips, Universiteit Gent, versie: 23/11/ b. 30 De wavelet-basisfuncties … De uitgangen van een filterpaar kunnen worden berekend als het scalair product van het ingangssignaal x ( t ) met basisfuncties g n ( t ) en h n ( t ) Deze basisfuncties zijn cyclisch in de tijd verschoven versies van de reconstructie-impulsresponsen g ’( t ) en h ’( t ) (= ook: kolommen van H t ) de laagdoorlaat basisfuncties h n ( t ) worden schalingsfuncties of vaderwavelets genoemd; de hoogdoorlaat basisfuncties g n ( t ) worden wavelets genoemd samen vormen alle basisfuncties een orthonormale basis g(t)g(t) h(t)h(t) x(t)x(t) 22
© W. Philips, Universiteit Gent, versie: 23/11/ b. 31 … De wavelet-basisfuncties grotere tijdverschuiving (4 n ) op diepere niveaus g(n)g(n) h(n)h(n) xh(n)xh(n) 22 h(t)h(t) 2 Ook de uitgangen op de diepere niveaus van een (redundante of niet- redundante) recursieve ontbinding kunnen worden berekend als het scalair product van het ingangssignaal x ( t ) met wavelet basisfuncties Deze basisfuncties zijn hier ingewikkelder van vorm (zie volgende slide) met schalingsfuncties wavelets
© W. Philips, Universiteit Gent, versie: 23/11/ b. 32 Uitwerking voor niet-redundant geval basisfuncties ook op diepere niveau’s cyclisch verschoven versies van elkaar g(n)g(n) h(n)h(n) xh(n)xh(n) 22 h(t)h(t) 2 Analoog voor de schalingsfuncties: afleiding niet te kennen stel j= 2 n-k als functies van k : periode N /2 sommatie over één periode van een periodieke functie is onafhankelijk van beginpunt van de sommatie zelfde sommatiegrenzen voor j als voor k
© W. Philips, Universiteit Gent, versie: 23/11/ b. 33 De wavelet-basisfuncties Notaties: aantal niveau’s in de ontbinding: J wavelet basisfuncties j niveau’s diep in de filterbank: schalingsfuncties j niveau’s diep in de filterbank: Wegens de orthogonaliteit gelden de volgende reconstructieformules in termen van dezelfde basisfuncties Analyseformules in termen van basisfuncties waveletbasisfuncties demo: daubwavelets.xls J soorten waveletbasisfuncties 1 soort schalingsfunctie