Transformace obrazu 99725 Josef Pelikán KSVI MFF UK Praha email: Josef.Pelikan@mff.cuni.cz WWW: http://cgg.ms.mff.cuni.cz/~pepca/
Transformace 2D obrazu dekorelace dat potlačení závislosti jednotlivých vzorků (pixelů) spektrální analýza a syntéza spektrální prostor: frekvence obsažené v signálu (obrazovém, zvukovém) nejčastěji ortogonální (nebo unitární) transformace projekce do některé ortogonální (unitární) baze spojité i diskrétní formy transformace
Skalární součin Vektorový prostor se skalárním součinem, : reálné nebo komplexní funkce na intervalu T: f, g = f( x) g( x) dx posloupnosti reálných nebo komplexních čísel: a, b = ai b reálné nebo komplexní matice: A, B = aij b T i i, j i ij
Ortogonální systém Systém U jestliže platí: = { u u u }, 2, 3,... u m, u = n je ortogonální, c > pro m = n m jinak Systém U je ortonormální, jestliže platí: u, u = δ m n m n ( )
Úplný ortogonální systém Ortogonální systém úplný, jestliže: U = { u u u }, 2, 3,... je ) v prostoru konečné dimenze je bazí 2) v prostoru nekonečné dimenze lze každý prvek a aproximovat libovolně přesně částečným součtem: i= a A u i i
Ortogonální transformace Výpočet koe cientů pro aproximaci prvku ortogonálním systémem: min Ai i= a A u i i Optimální koe cient: A i = c a, u i i Transformace T: a A i { }
Separabilní 2D transformace diskrétní transformace v prostoru R M potřebuje O(M 2 2 ) násobení a sčítání M koe cientů, každý M násobení A = a k, l u k, l i, j ij M k= l= ( ) ( ) jestliže je systém U separabilní, je třeba jen O(M(M)) operací ij u k, l = v k w l ( ) ( ) ( ) ij i j
Separabilní 2D transformace systémy { v i } a { w j } musí být samy také ortogonální často se pro čtvercové matice používá v i = w i separabilní transformace se provádí ve dvou krocích jeden krok transformuje sloupce, druhý řádky maticový zápis: A = V a W v = A W = V A w
Odvození A = a k, l u k, l = i, j ij M k= M l= ( ) ( ) = a k, l v k w l = k= M l= ij ( ) ( ) ( ) i = v k a k, l w l = v k A k ( ) ( ) ( ) ( ) ( ) i j k= l= k= M = w l a k, l v k = w l A l j ( ) ( ) ( ) ( ) ( ) j i l= k= l= M i j j w i v
Komplexní Fourierova řada 2πnt 2πnt 2πnt exp i = cos i sin T T T n = Komplexní funkce g s periodou T : g( t) A n nt = An exp 2 π i T n= T 2 nt = g( t) 2 π exp T T T 2 i dt
Spojitá Fourierova transformace Komplexní funkce g s konečnou energií komplexní spektrální funkce G(f) G f = g t exp 2π f t i dt ( ) ( ) ( ) g t = G f exp 2π f t i df ( ) ( ) ( )
Příklad spojité FT g obdélník. impuls: /2 /2 g G f = sinc π f = ( ) ( ) sin π π f f ( ) G(f) amplituda: fáze: π 3 2 2 3 π
Diskrétní Fourierova transform. Baze: f n ( ) k = 2πkn exp i ; k, n < Unitární transformace: G k = g n f n ( ) ( ) ( ) n= g n = G k f n ( ) ( ) ( ) k= k k
Rychlé algoritmy výpočtu DFT využívají vlastnosti komplexně sdružených koe cientů: G k G = k 2 2 princip rozděl a panuj (Cooley 65). FFT : ko cienty se rozdělí na sudé a liché (=2M) každá skupina se spočítá algoritmem FFT M výpočet výsledku pomocí násobení a sčítání složitost D FFT je O( log 2 ), při paralelní HW implementaci O(log 2 )
Schema rychlé DFT (FFT) x ±n y x ± y exp 2πn i M...... M (M)...... FFT M FFT M......
Diskrétní sinová transformace Pro obrazová data s korelačním koe cientem <.5 Baze: { s ( n ) ( k ) ( n ) k n } k = 2 π < sin ;, Unitární transformace: G k = g n s n ( ) ( ) ( ) n= g n = G k s n ( ) ( ) ( ) k= k k
Diskrétní cosinová transformace Pro obrazová data s velkým korelačním koe cientem Baze: C c n = C ( ) k k k Unitární transformace: π( 2n ) k cos ; k, n < 2 G k = C g n c n ( ) ( ) ( ) k n= g n = C G k c n ( ) ( ) ( ) k= k k k C k pro k = = 2 jinak
Příklad D cosinové baze c c c 2 c 3 c 4 c 5 c 6 c 7 c 8 c 9 c c c 2 c 3 c 4 c 5
Schema rychlé DCT g g g 2 C/4 C/4 C/4 S/8 S3/8 C/4 C/8 G G 2 G m = 4 G G 4 G 2 m = 8 g 3 C3/8 G 3 G 6 g 4 g 5 g 6 g 7 C/4 C/4 C/4 C/4 S/6 C/6 S5/6 C5/6 S3/6 S3/6 S7/6 S7/6 G G 5 G 3 G 7
Diskrétní Hartleyova transform. Reálný ekvivalent diskrétní Fourierovy transformace Baze: h n ( ) k = cas ; k, n < Unitární transformace: 2πkn G k = g n h n ( ) ( ) ( ) n= g n = G k h n ( ) ( ) ( ) k= k k casx = sinx cosx
Rademacherovy funkce (922) Ortogonální neúplný systém funkcí na, : R R R 2 R 3 R 4
Walshovy funkce (923) Zúplněný systém Rademacherových funkcí: W W W 2 W 3 W 4 W 5 W 6 W 7
Hadamardovo uspořádání Uspořádání podle kmitočtu a rekurzivní dekompozice: W W W 2 W 3 W 4 W 5 W 6 W 7 Walsh H H H 2 H 3 H 4 H 5 H 6 H 7 Hadamard
Hadamardova transformace Pro obrazová data s velkým korelačním koe cientem Baze: { H ( n ) ( ) b( k n) k n } k = <, ;, Unitární transformace: G k = g n H n ( ) ( ) ( ) n= g n = G k H n ( ) ( ) ( ) k= k k b k, n = ( ) i= k i n i binární rozvoje
Rychlá Hadamardova transform. g g g 2 G G G 2 8 m = 4 8 8 G G G 2 m = 8 g 3 G 3 8 G 3 g 4 8 G 4 g 5 8 G 5 g 6 8 G 6 g 7 8 G 7
Hadamardova maticová transf. Rekurentní de nice Hadamardovy transformace v maticové podobě (jen pro =2 k ): H 2 = 2 H 2 = 2 H H H H Transformace maticí H: T T G = Hg g = GH
Haarova ortonormální baze A. Haar (99): n Pro k < = 2 lze jednoznačně nalézt čísla p, q tak, že platí: k p = 2 q p < n q 2 p Baze na, : Hr x ( ) Hr x = ( ) k = p 2 q q 2 p x < 2 2 2 2 p x < jinde 2 2 p q q 2 2 p p
Haarova baze pro =6 Hr Hr ± Hr 8 Hr 9 ±2 2 Hr 2 Hr 3 ± 2 Hr Hr Hr 4 Hr 5 ±2 Hr 2 Hr 3 Hr 6 Hr 4 Hr 7 Hr 5
Haarova transformace dobře reprezentuje lokální změny obrazu většina bazických funkcí má velmi omezený nosič nejjednodušší wavelet hierarchická rekurzivní de nice, všechny prvky baze lze získat z jediné funkce dilatací a posunutím rychlá transformace O(log 2 ): sčítání, odčítání a násobení 2 p/2
Slantova transformace S 2 2 = Rekurentní de nice Slantovy transformace: S 4 3 5 5 5 3 5 5 3 5 3 5 5 2 = Slantova baze obsahuje po částech lineární funkce
Rekurentní de nice Slantovy tr. S 2 = 2 a2 b2 a2 b2 I b2 a2 b2 a2 I 2 2 I I 2 2 S S a = 3 2 4 b 2 2 2 = 2 2 4
Konec Další informace: A. Jain: Fundamentals of Digital Image Processing, PrenticeHall, 989, 3288 W. Pratt: Digital Image Processing, 2nd edition, J. Wiley, ew York, 99, 9326 S. Haykin: An Introduction to Analog and Digital Communications, J. Wiley, ew York, 989