Signaler, inormation & bilder, öreläsning Michael Felsberg Computer Vision Laboratory epartment o Electrical Engineering michael.elsberg@liu.se Översikt signalbehandling (bildbehandling) en digitala bilden, ärgtabeller kontinuerlig ouriertransorm och FT sampling diskret altning, cirkulär Lågpassiltrerande altningskärnor Teori: Kap., 3.-3.8, 3. Bygger på Maria Magnussons öreläsningar En bild är en signal : (t) är en unktion som beror av tiden t. : (x,y) är en unktion som beror av de spatiella (rums-) koordinaterna x och y. Ex) y sin x y y svart y vitt Fig.. För en digital bild gäller En digital bild är en samplad -unktion. Samplen kallas pixlar (pixels, picture elements). Antalet pixlar = bildens storlek. Vanliga storlek: 5x5= 8 =.5 Mpixel. H, 9x8 = Mpixel Otast är samplen kvantiserade i intervallet [,55]. essa värden översätts via en ärgtabell i datorn till gråskalevärden, dvs ->svart och 55->vitt eller indexerade ärger (pseudo-ärg, ärgtabell)
För en digital bild gäller Ibland är samplen lyttalsvärden. essa transormeras till intervallet [,55] och vidare via ärgtabell i datorn En äkta ärgbild har 3 st värden per pixel e transormeras var ör sig till intervallet [,55] Sedan vidare ut på datorns röda, gröna respektive blåa kanal Vilket möjliggör 56 3 =67776 6,8 miljoner ärger Flyttalsvärden i intervallet [,] kan gamma-korrigeras -> γ I vissa all inns det en järde kanal ör transparensen, s.k. alakanal et kan även användas andra ärgmodeller, t ex YCbCr (Y: luminans, Cb: blådierens, Cr: röddierens) PET-bild av hjärna Pseudo-ärgbild Äkta ärgbild gråskalebild Bildstorlek: 7x pixlar Bildstorlek: 7x pixlar pixelormaktor : zoom zoom
Vanlig gråskaleärgtabell gamma transormation Pixelvärde (x,y) Linjär transormation : : : 55: R 55 G 55 B 55 Ut på skärmen 56 ärger I denna kursen jobbar vi mest med gråskaleärgtabellen. Pseudo-ärgtabell Pixelvärde (x,y) godtycklig transormation : : : 55: R G B??? Ut på skärmen 56 ärger Ex ) En PET-bild kan visa var det är aktivitet i hjärnan. Hög aktivitet kan visas röd och låg aktivitet kan visas blå. Ex) Användbart t ex när vi vill visa negativa värden blå och positiva värden röda. gamma transormation Linjär transormation Äkta ärgtabell : : : 55: R 55 Ut på skärmens röda kanal Pixelvärde [ r (x,y), g (x,y), b (x,y)] Linjär transormation : : : 55: G 55 Ut på skärmens gröna kanal Linjär transormation : : : 55: Över 6 miljoner ärger B 55 Ut på skärmens blåa kanal kontinuerlig ouriertransorm j xu yv y Fu, v ye dx dy ouriertransorm 3.3 j xu yv Fu, v y Fu, ve du dv invers ouriertransorm 3. 3
ouriertransormen är separabel en kan beräknas örst i ena ledden och sen i andra ledden: F j xu yv u, v ye F dx dy jyv jxu ye dy e dx 3.3 ouriertransorm i y - led v Fouriertransormen av en reell unktion är hermitisk F Realdelen är jämn och imaginärdelen är udda. F u, v F u, v et går att visa på liknande sätt som ör. u, v F u, v Fu, v F u, v Amplitudspektrum är symmetriskt i origo. 3.7 se Fig. 3. En bild med amplitudspektrum Amplitudspektrum är spegelsymmetriskt e låga rekvenserna dominerar Realdel och Imaginärdel av Fouriertransormen Realdelen är jämn Imaginärdelen är udda Fig. 3. Fig. 3.
Teorem och samband Teoremen ör -ouriertransorm, bl a skalnings-, altnings-, translations- och derivata-teoremet gäller även i. -unikt teorem ör generell linjär transorm: Teorem och samband Separabla unktioner ger separabel ouriertransorm: y gxhy Fu, v Gu H v rotation som specialall: FT Pythonkommando: F = np.t.t() F j nk / N ml / M k, l n, m e n, m MN Obs: i Python F N M n m N M j nk / N ml / M F k, l e k l Sparas i row-major ormat Notera dock att den symmetriska varianten ota är att öredra i bild-sammanhang: F = np.t.tshit(np.t.t(np.t.itshit())) k, l F[l,k] och n, m [m, n] Teorem och samband Teoremen ör FT motsvarar kontinuerliga allet. Notera att multiplikation i FT-domänen motsvarar cirkulär altning i spatialdomänen. 5
Fig. 3.5a sampling av (x,y) Ingen vikningsdistorsion! sampling av (x,y) Vikningsdistorsion! Fig. 3.3 Fig. 3. Illustration vikningsdistortion 6
Fig. 3.5b size: x8 size: x8 Samband mellan samplad kontinuerlig ouriertransorm och FT Fig. 3.7 oändlig periodisk, periodisk, periodisk Relationen mellan kontinuerlig rekvens u, v och diskret rekvens k, l står i (3.3). N, M är antalet u k N sampelpunkter och är sampelavståndet. 3.3 v l M g g altning x y h y hx, y, d d Kontinuerlig 3.5 y h y hx, y, Linjär diskret 3.7 g, N M y h N y hx, y N, Cirkulär diskret 3.8 linjär diskret altning g y h y hx, y, Spegla h i x- och y-axeln = rotera 8 o. Glid med den speglade h över. Multiplicera och summera överlappande värden. etta ger g. skillnad till Python: signal.convolved() korrelation - - - - * = - - - - - y y gx y h, 7
Bildstorlek vid linjär diskret altning valid : Värden utanör inbilden anses odeinierade => Utbilden blir mindre än inbilden. ull : Värden utanör inbilden anses vara => Utbilden blir större än inbilden. Eller lika stor om de extra värdena slängs ( same ) Fig. 3.8 Vad är ouriertransormen av? Sätt dirac-spikar d(x,y)=d(x)d(y) på varje element i altningskärnan. Antag sampelavstånd. etta ger hx d x d xd d y Tag kontinuerlig Fouriertransorm H Byt / ju ju u, v e e v t x, y, u, v, T / cos u / cos u / Lågpassiltrerande altningskärna i x-led (u-led) cos u här y x / v Fig. 3. u Lågpassiltrerande altningskärna i y-led (v-led) cos v här Fig. 3. y v x u / 8
Lågpassiltrerande altningskärna i x- och y-led (u- och v-led) cos u cos v här = /6 * / / ämpar höga rekvenser Fig. 3. Mer lågpassiltrerande altningskärna i x- och y-led (u- och v-led) ucos v 6 cos binomialilter 66 här (approx. Gauss-ilter) 6 36 6 = 66 6 /56 * /6 /6 Fig. 3. Lågpassiltrering Jämör med Fig. 3.3 * 6 66 6 36 6 66 6 /56 Lågpassiltrering i Fourierdomänen Jm Fig. 3.3 9
Filtrering via multiplikation i FTdomänen ger cirkulär altning cirkulär altning kan örberäknas Sker via multiplikation i ourierdomänen. Utbilden blir lika stor som inbilden. g N h N m g n h m nn.59 n cirkulär altning och N N operation, dvs h där N noterar betecknar modulo kan uppattas som periodiskt upprepad eller cirkulär. et gäller : FTg N h m G k H k Bevis inns i kompendiet ör den intresserade. Python : signal.tconvolve() Fig. 3.9 cirkulär altning Ex) Linjär och Cirkulär altning * * = = Alltså: För att cirkulär altning ska ge samma resultat som vanlig linjär altning kan zero-padding behövas. Inbild Medelvärdesbildande altningskärna Storlek 5x5 Utbild eter linjär altning Utbild eter cirkulär altning