Föreläsning 1: Inledning till Digital signalbehandling i audio & video. Leif Sörnmo 11 mars 2009

Storlek: px
Starta visningen från sidan:

Download "Föreläsning 1: Inledning till Digital signalbehandling i audio & video. Leif Sörnmo 11 mars 2009"

Transkript

1 Föreläsning 1: Inledning till Digital signalbehandling i audio & video Leif Sörnmo 11 mars

2 Schema Föreläsningar: Måndag i sal E:2311 Fredag i sal E:2311 Övningar: Tisdag i sal E:2311 Fredag i sal E:2311 Observera att vissa veckor innefattar datorövning. Laborationer: Lab I: Musikkompression i sal E:2428 Lab II: Bildbehandling i sal E:2428 Anmälan enligt listor som anslås på anslagstavla 1 måndagen den 30/3. 2

3 Kurslitteratur Kursbok: S. K. Mitra, Digital Signal Processing, 3dje upplagan, McGraw-Hill, 2006, dvs boken från DigSig (ca 600:-). Notera att andra upplagan (2001) är möjlig att använda, men att sidreferenserna då inte stämmer. Övningsbok: S. K. Mitra, Digital Signal Processing Laboratory Using MATLAB, McGraw-Hill, 1999, (490:-) Kapitel: 7, 8, 9, 10. Övrigt: Föreläsningsanteckningar (kurshemsidan) Lösningskompendium (kurshemsidan) Datorövningar (kurshemsidan) Laborationshandledningar (kurshemsidan) Matlabkod (kurshemsidan) 3

4 Kursinnehåll V1: 1. Repetition av DigSig 2. Digital filterdesign I, kap. 9 V2: 1. Digital filterdesign II, kap , Algoritmer i signalprocessorer, kap , 11.5, V3: 1. Effekter av begränsad ordlängd, kap , Multirate-signalbehandling I, kap. 13, 14 V4: 1. Multirate-signalbehandling II, kap. 13, Audiosignalbehandling I V5: Audiosignalbehandling II V6: 1. 2D-signalbehandling 2. Videosignalbehandling V7: Repetition 4

5 Tentamen Godkänd kurs förutsätter att tentamen, som omfattar 6 uppgifter och har poängskalan 3 till 6, är godkänd, och att båda laborationerna är fullföljda. Slutbetyget är heltalsdelen av tentamenspoängen, dock högst 5. Tentamen äger rum den 26 maj, kl , lokal: E2311. Tillåtna hjälpmedel är kursboken (tabeller är inte nödvändiga). 5

6 Översikt av dagens föreläsning Tidsdiskreta signaler och system (repetition). Från analog till digital signal sampling. Digitala filterstrukturer. Digital signalbehandling i audio & video inledning 6

7 Tidsdiskreta signaler i tidsplanet En tidsdiskret signal är en serie värden som erhålls från diskreta mätningar (ofta gjorda i tiden) eller från sampling av en tidskontinuerlig signal. En tidsdiskret signal har definitionsmässigt avståndet 1 mellan samplen, utan enhet. Den snabbaste frekvens som kan representeras är vartannat värde +A och vartannat A. Denna frekvens har perioden 2, utan enhet. Eftersom frekvensen är 1/T så är den maximala normerade frekvensen 0.5, utan enhet. Det finns alltså inga Hertz eller sekunder i den digitala världen... 7

8 Tidsdiskreta (LTI) system i tidsplanet På samma sätt som ovan beskrivs ett tidsdiskret system med en serie av värden. Denna series kallas impulssvar h[n] och beskriver hur insignalen (gamla och nuvarande värde, dvs kausalt) ska viktas för att producera utsignalen. Utsignalen från ett tidsdiskret system fås genom att insignalen faltas med impulssvaret:. y[n] = h[n] x[n] 8

9 Tidsdiskreta (LTI) system i tidsplanet En vanlig grupp av tidsdiskreta LTI system är de med konstanta koefficienter och begränsad ordning som beskrivs av differensekvationen: y[n] = N k=1 d k d 0 y[n k] + M k=0 p k d 0 x[n k]. där max-värdet av M och N anger systemets ordning. Dessa två representationer, dvs. impulssvar och differensekvation, är ekvivalenta och begreppet filter kan användas för båda. 9

10 Tidsdiskreta (LTI) system i tidsplanet Filtret är av typen FIR om utsignalen y[n] bara beror av nuvarande och föregående sampel i insignalen x[n]: y[n] = M k=0 p k d 0 x[n k] = M k=0 h[k]x[n k]. Längden hos h[n] bestäms av antalet sampel x[n] som används. Filtret är IIR om y[n] beror av föregående sampel i y[n]: y[n] = N k=1 d k d 0 y[n k] + M k=0 p k d 0 x[n k] = k=0 h[k]x[n k]. Impulssvaret h[n] är oändligt eftersom y[n] i sin tur beror av föregående sampel i utsignalen. 10

11 Tidsdiskreta (LTI) system i tidsplanet Ett system är BIBO-stabilt om impulssvaret uppfyller N= h[n] <. 11

12 Tidsdiskreta signaler i frekvensplanet Discrete-time Fourier transform (DTFT) av signalen x[n] ges av X(e jω ) = n= x[n]e jωn. X(e jω ) är en komplex funktion som kan skrivas X(e jω ) = X(e jω ) e jθ(ω), där X(e jω ) kallas amplitudspektrum och θ(ω) = arg{x(e jω )} kallas fasspektrum. Ett spektrum utgör en ekvivalent beskrivning av en signal x[n]. Istället för att bygga upp x[n] genom att ange varje tidssampels amplitud kan den byggas upp genom att ange amplitud och fas för varje frekvens som ingår i x[n]. 12

13 Tidsdiskreta signaler i frekvensplanet, forts Spektrumet är unikt för de normerade frekvenserna { 0.5, 0.5} (eller motsvarande vinkelfrekvenserna ω = { π, π}). Spektrumet är periodiskt utanför detta intervall. Inom dessa intervall är magnitudspektrat en jämn funktion och fasspektrat en udda funktion. Samma sak representeras i båda halvorna. Inversa DTFT:n ges av x[n] = 1 2π π π X(ejω )e jωn dω. 13

14 Tidsdiskreta signaler i frekvensplanet, forts Discrete-time Fourier transform (DTFT): Oändligt lång tidsdiskret signal {, } kan ekvivalent representeras av kontinuerligt spektrum för det normerade frekvensintervallet { 0.5,0.5} eller motsvarande vinkelfrekvensintervall ω = { π, π}. Spektrat är periodiskt utanför detta intervall. Discrete Fourier transform (DFT): För en tidsdiskret signal av begränsad längd {0, N 1} så räcker det att DTFT samplas med N jämnt fördelade punkter (ω k = 2πk N, k = 0,..., N 1) i spektrumet för att signalen ska kunna representeras fullständigt. 14

15 Tidsdiskreta system i frekvensplanet DTFT:n av ett impulssvar h[n] kallas filtrets frekvenssvar och är, precis som DTFT:n av en signal, unikt i frekvensintervallet { 0.5,0.5} och periodiskt utanför: H(e jω ) = n= h[n]e jωn. Magnitud- och fasfunktion definieras p.s.s. som tidigare. Frekvenssvaret för ett LTI system med konstanta koefficienter och begränsad ordning kan skrivas H(e jω ) = Y (ejω ) Mk=0 X(e jω ) = p k e jωk Nk=0 d k e jωk. 15

16 z-transformen z-transformen av ett impulssvar kallas filtrets överföringsfunktion, H(z) = n= h[n]z n, och utgör en generalisering av DTFT:n med bättre konvergensegenskaper än DTFT:n och som ger enklare algebra. En oändligt lång tidsdiskret signal x[n] {, } kan ekvivalent representeras av X(z) i det komplexa talplanet. Om värden avläses på enhetscirkeln i detta talplan, dvs. z = e jω, så fås dess DTFT. 16

17 z-transformen och tidsdiskreta system Överföringsfunktionen för ett LTI system med konstanta koefficienter och begränsad ordning kan skrivas H(z) = Y (z) X(z) = p Mk=1 0 (1 ξ k z 1 ) d Nk=1 0 (1 λ k z 1 ) = p Mk=1 0 z N M (z ξ k ) d Nk=1 0 (z λ k ), där ξ k kallas nollställen och λ k kallas poler. BIBO-stabilitet motsvarar att polerna ligger inom enhetscirkeln. 17

18 Digital behandling av tidskontinuerliga signaler Mikrofon Sampling Analogt Antivikningsfilter Samplingsfrekvens S/H A/D Digital Signalbehandling Interpolation Analogt Rekonstruktionsfilter Uppspelningsfrekvens D/A Högtalare Analog signal Tidsdiskreta signaler Analog signal 18

19 Digital behandling av tidskontinuerliga signaler Vid sampling med perioden T (samplingsvinkelfrekvensen Ω T ) så kommer alla komponenter av typen x a,k (t) = Acos((Ω 0 + kω T )t + φ), k = 0, ±1, ±2,... att mappas på x[n] = x a,k (nt) = Acos(ω 0 n + φ) pga. att den tidsdiskreta signalen inte kan representera frekvenser (normerade till samplingsintervallet=samplings-frekvensen=1) större än 0.5. Alla komponenter av högre frekvenser kommer därmed att finnas kvar i den samplade signalen, men i skepnad av lägre frekvenser som ligger inom det tillåtna frekvensområdet detta fenomen kallas vikning. 19

20 Digital behandling av tidskontinuerliga signaler Insikten från föregående bild innebär att en tidskontinuerlig signal måste samplas dubbelt så snabbt som dess högsta frekvens. Om signalens högsta frekvens är Ω m måste den alltså samplas med åtminstone Ω T 2Ω m för att inte bli distorderad (Samplingsteoremet, se kap 4.2). Frekvensen Ω T /2, som motsvarar den normerade frekvensen 0.5, brukar kallas Nyqvist-frekvensen eller vikningsfrekvensen. Signalen är kritiskt samplad om Ω T /2 = Ω m och översamplad om Ω T /2 > Ω m. 20

21 Sampling av analog signal matematisk modell 21

22 Sampling och dess effekt i frekvensplanet 22

23 Sampling och vikningsdistorsion 23

24 Sampling och rekonstruktion av analog signal 24

25 Digital behandling av tidskontinuerliga signaler För att undvika vikning måste alltid ett analogt antivikningsfilter (dvs. lågpassfilter) användas före sampling för att spärra frekvenser över Nyqvist-frekvensen. P.s.s. måste ett analogt rekonstruktionsfilter användas för att mjuka till en tidsdiskret signal som överförts till tidskontinuerlig form. Analog filterdesign beskrivs i kap. 4.4 och 4.5 och kommer att beskrivas på Övning 1. 25

26 Digitala filterstrukturer Strukturen hos ett filter beskrivs ofta i form av ett blockdiagram som visar hur insignalen och filtrets interna variabler kombineras för att generera utsignalen. Pss som aa + ab kan beräknas med 2 mult och 1 add eller som a(a + b) med 1 mult och 1 add, så kan ett filter implementeras med olika antal additioner, multiplikationer och fördröjningar med olika beräkningskomplexitet som följd. Ett annat viktigt skäl till att analysera olika filterstrukturer är att kvantiseringsfel i aritmetik med begränsad precision kommer att slå igenom i olika grad hos utsignalen. 26

27 FIR-filterstrukturer Direktform betyder att viktfaktorerna i strukturen är identiska som koefficienterna i överföringsfunktionen. Kaskadform betyder att ett högre ordningens filter realiseras som en seriekoppling av flera första och andra ordningens överföringsfunktioner. Polyfasrealisering betyder att signalen delas upp i block om L sampel i L parallella grenar (mycket viktigt i denna kurs). 27

28 FIR-filterstrukturer 28

29 FIR-filter med linjär fas Notera att antalet multiplikationer väsentligen halveras pga. att filtrets impulssvar är symmetriskt. 29

30 Polyfasstruktur för FIR-filter Alla FIR-överföringsfunktioner, exempelvis H(z) =h[0] + h[1]z 1 + h[2]z 2 + h3]z 3 + h[4]z 4 + h[5]z 5 + h[6]z 6 + h[7]z 7 + h[8]z 8 kan struktureras i grupper med var L:te (här L = 2) sampel H(z) =(h[0] + h[2]z 2 + h[4]z 4 + h[6]z 6 + h[8]z 8 ) + z 1 (h[1] + h[3]z 2 + h[5]z 4 + h[7]z 6 ) där överföringsfunktionen kan skrivas med H(z) = E 0 (z 2 ) + z 1 E 1 (z 2 ) E 0 (z) = h[0] + h[2]z 1 + h[4]z 2 + h[6]z 3 + h[8]z 4 E 1 (z) = h[1] + h[3]z 1 + h[5]z 2 + h[7]z 3 30

31 Polyfasstruktur för FIR-filter används vid decimering av samplingsfrekvens (a) decimering med faktor M (b) ekvivalenta polyfasstrukturer varav den högra är mera effektiv i vissa tillämpningar 31

32 IIR-filterstrukturer Direktform betyder att viktfaktorerna i strukturen är identiska koefficienterna i överföringsfunktionen. Kaskadform betyder att ett högre ordningens filter realiseras som en seriekoppling av flera första och andra ordningens överföringsfunktioner. Parallellrealisering betyder att överföringsfunktionen delas upp med partialbråksuppdelning. 32

33 IIR-filterstrukturer (direkt, icke-kanonisk form) 33

34 Justerbara IIR filter Mha ett första ordningens filter kan justerbara hög- och lågpassfilter designas bas & diskant -kontroll. Notera att dessa filter är effektkomplementära, dvs att de tillsammans ger en förstärkning som är konstant för alla frekvenser (se sid och exemplet i figur 7.31). Mha ett andra ordningens filter kan justerbara bandpass- och bandspärrfilter designas. 34

35 Digital signalbehandling i audio & video GRUNDLÄGGANDE kunskaper digital filterdesign enligt specifikation snabba algoritmer som tex FFT aspekter vid implementering (speciellt ändlig ordlängd och dess implikationer) signalbehandling vid olika samplingsfrekvenser (eng. multirate signal processing ) filterbankar och dess nytta vid tex datakompression 35

36 Digital signalbehandling i audio & video några tillämpningar i AUDIO syntes, exvis den som förekommer i syntar effekter, exvis eko, efterklang, flanger, chorus, mm equalizer, dvs bas, diskant samt mer detaljerad kontroll kompression, exvis format som MP3 omvandling, exvis 1-bits A/D, samplingsfrekvens, mm 36

37 Digital signalbehandling i audio & video några tillämpningar i VIDEO två-dimensionell signalbehandling bildkompression, exvis format som JPEG signalbehandling i MPEG-video 37

38 Föreläsning 2: Digital filterdesign, mest om IIR-filter Leif Sörnmo 11 mars

39 Viktiga frågor som idag ges ett svar: I vilka termer specificeras vanligtvis ett digitalt filter? Hur kan vi uppnå dessa specifikationer? Är analog filterdesign nödvändig för digital filterdesign? Hur hänger design av filtertyperna låg-, hög-, bandpass och bandspärr ihop med varandra? 39

40 Översikt Allmänt om filterdesign (kap. 9.1) Bilinjär transformation för design av IIR filter (kap. 9.2) Design av IIR lågpassfilter (kap. 9.3, se också kap 4.4) Design av IIR-filter med högpass-, bandpass- och bandspärrkaraktäristik (kap. 9.4, 9.5) 40

41 Syftet med digital filter design Att bestämma en realiserbar överföringsfunktion G(z) så att den approximerar en given specifikation på frekvensfunktion. För ett IIR-filter är det dessutom viktigt att överföringsfunktionen G(z) är garanterat stabil. 41

42 Filterspecifikation Ett filters frekvensfunktion specificeras vanligen mha av magnitud- och/eller fasfunktion. I praktiken är dock specifikation av endast magnitudfunktionen det absolut vanligaste, och därför behandlas bara denna typ av design i kursen. Fasfunktionen kan vid behov justeras med ett seriekopplat allpassfilter ( all-pass phase equalizer ). Notera att ett filter även kan specificeras i termer av hur impulssvaret ska se ut (dvs i tidsplanet!). 42

43 Ideala filterspecifikationer Det finns fyra huvudtyper av ideala filter, nämligen: 43

44 Ideala filterspecifikationer 2 Impulssvaret för varje ideal filtertyp är icke-kausalt med oändlig längd och kan således inte realiseras. I praktiken specificeras magnitudfunktionen så att pass- och spärrband håller sig inom ett toleransintervall, och övergångszonen mellan pass- och spärrband har en viss bredd i frekvens (trunkering ger roll-off ). 44

45 Storheter vid filterspecifikation Passband: 1 δ p G(e jω ) 1 + δ p, ω ω p Spärrband: G(e jω ) δ s, ω ω s Övergångszonens bredd: ω = ω s ω p 45

46 En not om filterförstärkning Det är ofta önskvärt att det digitala filtret har en förstärkning som är lika med 1. Detta kan enkelt åstadkommas genom att introducera en skalfaktor K i överföringsfunktionen G(z) som är bestämd av K = 1 G max där G max = max 0 ω π G(ejω ). 46

47 Logaritmisk filterspecifikation En specifikation anges ofta som en dämpning uttryckt i logaritmerad form, dvs. angiven i decibel (db). G(ω) = 20log 10 G(e jω ), Maximalt rippel i passbandet, α p, och minimal dämpning i spärrbandet, α s, ges då av α p = 20log 10 (1 δ p ) respektive α s = 20log 10 δ s. 47

48 Hertz och normerad frekvens I praktiken vill vi specificera ett digitalt filter i onormerad frekvens (Hertz), uttryckt i passbandets kantfrekvens F p och spärrbandets kantfrekvens F s. Omräkning till normerad frekvens ω görs med ω = Ω = 2πF = 2πFT F T F T där F betecknar onormerad frekvens, F T samplingsfrekvensen (i Hertz), och T samplingsintervallets längd (i sekunder). 48

49 Hertz och normerad frekvens ett exempel Antag att ett högpassfilter ska designas med följande specifikationer: F p = 7 khz, F s = 3 khz och F T = 25 khz. Omräkning till normerad frekvens blir då: ω p = ω s = 2π = 0.56 π 2π = 0.24 π 49

50 IIR filterstruktur Överföringsfunktionen för ett IIR-filter ges av H(z) = p 0 + p 1 z 1 + p 2 z p M z M d 0 + d 1 z 1 + d 2 z d N z N + Stränga specifikationer kan uppnås med små M och N Ej linjär fas Ej alltid stabilt 50

51 FIR filterstruktur Överföringsfunktionen för ett FIR-filter ges av H(z) = N n=0 h(n)z n + Kan designas med linjär fas, och kräver då ett symmetriskt eller antisymmetriskt impulssvar h(n), dvs h(n) = ±h(n n). + Alltid stabilt, även vid kvantisering av h(n):s koefficienter. Stränga krav leder till hög ordning N. 51

52 Jämförelse FIR-filter behöver N FIR multiplikationer per utsampel (dock, FIR-filter med linjär fas behöver bara (N FIR + 1)/2 mult per utsampel), medan IIR-filter behöver 2N IIR +1 mult/utsampel. För att uppfylla samma magnitudfunktion med FIR- som med IIR-filter krävs dock betydligt större ordning, N FIR >> 10N IIR, och därmed är FIR-filter mera beräkningskrävande. Detta samband gäller inte om IIR måste kompletteras med ett allpassfilter för att uppnå linjär fas. FIR har inga stabilitetsproblem vid tex begränsad precision. 52

53 Vanligaste designtekniken för digitala IIR-filter (denna föreläsning) 1. Transformera de digitala filterspecifikationerna till motsvarande för ett analogt prototyp-lågpassfilter. 2. Bestäm överföringsfunktionen H a (s) = P a(s) för det analoga D a (s) prototyp-lågpassfiltret (index a betecknar analog ). 3. Transformera H a (s) till den eftersökta digitala överföringsfunktionen H(z) = P(z) D(z). 53

54 Vanligaste designtekniken för digitala FIR-filter (nästa föreläsning) Direkt approximation av det önskade magnitudsvaret. Ofta med krav på linjär fas. Denna design av digitala FIR-filter har inget med analoga filter att göra. 54

55 Val av filterordning För IIR-filter ingår beräkning av den modellordning som krävs i designproceduren. För FIR-filter finns olika approximationer som typiskt är inverst beroende av övergångszonens bredd. Ju smalare och brantare övergångszon desto högre ordning, N. Denna design är bara vägledande och måste testas för att justeras rätt. 55

56 Varför designar man digitala IIR-filter med hjälp av analoga filter? De analoga metoderna är mycket bra. Lösningarna blir slutna uttryck. Stora tabeller kring de analoga filterna finns tillgängliga. Många tillämpningar behöver simulera analoga filter. 56

57 Transformation från s- till z-planet? Den bärande idén för den vanligaste IIR-designtekniken är att transformera (avbilda) s- till z-planet så att viktiga egenskaper hos det analoga filtrets magnitudfunktion bevaras. Vi kräver att en sådan transformation uppfyller följande villkor: att imaginära axeln (jω) i s-planet transformeras på enhetscirkeln i z-planet, och att ett stabilt analogt filter H a (s) transformeras på ett stabilt digitalt filter G(z). 57

58 Hur transformera från s- till z-planet? Bilinjär transformation är den vanligaste transformationen och definieras av s = 2 ( ) 1 z 1 T 1 + z 1. Det intressanta och eftersökta sambandet mellan G(z) och H a (s) ges av G(z) = H a (s) ( ) s= 2 1 z 1 T 1+z 1 58

59 Bilinjär transformation i grafiska termer Avbildning av s- till z-planet: 59

60 Bilinjär transformations egenskaper Transformationen är mycket olinjär eftersom hela den positiva imaginära axeln i s-planet (dvs., från Ω = 0 till ) avbildas på den övre delen av enhetscirkeln i z-planet (dvs., från z = 1 till 1); på liknande sätt för den negativa axeln. Den distorsion som förorsakas av bilinjär transformation kallas för frekvensförvridning ( frequency warping ). 60

61 Bilinjär transformation och frekvensaxeln Specifikt för s = jω, z = e jω och med T = 2 så har vi att jω = 1 e jω = j tan(ω/2), dvs Ω = tan(ω/2) 1 + e jω 61

62 Bilinjär transformation och filterkaraktäristik 62

63 Design med bilinjär transformation 1. Transformera ω p och ω s med Ω = tan(ω/2) för att bestämma de motsvarande analoga storheterna Ω p och Ω s (kap 9.2). 2. Designa det analoga filtret H a (s) med lämplig metod (kap 4.4, 4.5). 3. Bestäm det digitala filtret G(z) genom att transformera det analoga filtret H a (s) mha. (kap 9.2) G(z) = H a (s) ( ) s= 1 z 1 1+z 1 Fasen bevaras ej genom transformen. 63

64 IIR filterdesign med frekvenstransformation (HP,BP,BS) Spec. av G D (z) Prewarping av ω p och ω s till Ω p och Ω s Spec. av H D (s) Analog frekvenstransform (om HP,BP,BS) Spec. av H LP (s) Design av analogt LP prototypfilter H LP (s) Mitra 9.2 Mitra 4.5 Mitra 4.4 Mitra 9.4 G D (z) Bilinjär transform H D (s) Analog frekvens transform (om HP,BP,BS) Mitra 9.2 Mitra 4.5 Mitra 9.5 G D (z) Digital spektraltransform till LP (om HP,BP,BS) G LP (z) Bilinjär transform Mitra 9.5 Mitra

65 Exempel på IIR filterdesign som bygger på frekvenstransformation På tavlan: Design av ett digitalt lågpassfilter mha bilinjär transformation och analog filterdesign, enligt kap 9.3. Hemmavid: Design av de andra filtertyperna (högpass, bandpass och bandspärr) beskrivs i kap

66 Digital spektral transformation: LP-till-LP Transformera existerande LP-filter (med brytfrekvens ω c ) med z 1 = 1 αẑ ẑ α där α väljs så att den önskade brytfrekvensen ˆω c fås (se nedan). Observera olinjär frekvenstransformation! 66

67 Viktiga frågor som nu har ett svar: I vilka termer specificeras vanligtvis ett digitalt filter? Hur kan vi uppnå dessa specifikationer? Är analog filterdesign nödvändig för digital filterdesign? Hur hänger design av filtertyperna låg-, hög-, bandpass och bandspärr ihop med varandra? 67

68 Föreläsning 3: Digital FIR-filterdesign Leif Sörnmo 11 mars

69 Översikt Design av FIR-filter mha fönstermetoden; betoning på filter av standardtyperna lågpass, högpass, bandpass och bandspärr (kap 10.2). Kriteriebaserad design av FIR-filter med linjär fas, sk ekvirippelfilter ; denna design lämpar sig även för andra filter än standardtyperna (kap 10.3). Designexempel på ovannämnda FIR-filter (kap 10.5). 69

70 Impulssvar för idealt lågpassfilter h LP (n) = 1 2π π π H LP(e jω )e jωn dω h LP (n) = sin ω cn πn, n Idealt filter har skarpa kanter och nollfas. Detta ger oändlig längd och icke-kausalt impulssvar. 70

71 Impulssvar för idealt högpassfilter h HP (n) = 1 2π π π H HP(e jω )e jωn dω h HP (n) = 1 ω c π, n = 0 sin ω cn πn, n 0 71

72 Impulssvar för andra ideala filter bandpass, bandspärr, multiband Hilberttransformerare (= 90 o fasförskjutning av signalen) H HT (e jω ) = j, π < ω < 0 j, 0 < ω < π differentierare H DIF (e jω ) = jω, 0 < ω < π 72

73 Design av FIR-filter mha fönstermetoden (Windowed Fourier series) Ett impulssvar med oändlig längd måste, för att bli användbart, trunkeras (och skiftas åt höger för att bli kausalt). Trunkering förändrar det ideala hos magnitudfunktionen och introducerar ett oscillatoriskt beteende (rippel) Gibbs fenomen, se exemplet nedan för två olika filterlängder. e 1.5 d u t i 1 n g a 0.5 M Magnitude N = 20 N = ω / π 73

74 Gibbs fenomen som faltning Trunkering innebär att h d (n) multipliceras med ett rektangulärt fönster w(n): en operation som i frekvensplanet svarar mot att H d (e jω ) faltas med fönstrets Fourier-transform Ψ(e jω ). 74

75 Gibbs fenomen Antal rippel i såväl pass- som spärrband ökar med filterlängden samtidigt som varje rippels bredd minskar. Amplituden för det största ripplet är densamma för alla filterlängder (ca 11% av amplitudskillnaden mellan passband och spärrband i det ideala filtret). Samma oscillatoriska beteende uppträder i magnitudfunktion för andra typer av ideala filter. 75

76 Minskad inverkan av Gibbs fenomen Använd ett fönster w(n) (ej rektangulärt!) som på ett mjukt sätt minskar förekomsten av rippel; ett antal sådana fönster, såväl fixa som justerbara, kommer härnäst att behandlas. Specificera en tillräckligt stor övergångszon från pass- till spärrband i magnitudfunktionen. 76

77 Vanliga fixa fönster Hanning: Hamming: Blackman: w(n) = cos ( ) 2πn 2M+1 w(n) = cos ( ) 2πn 2M+1 w(n) = cos ( ) ( ) 2πn 2M cos 4πn 2M+1 där M n M gäller för alla fönster. 77

78 Egenskaper hos fixa fönster Magnitudfunktionen för alla typer av fönster karaktäriseras av dess huvudlob, centrerad kring ω = 0, och en rad sidolober. Ett fönsters prestanda vid filterdesign avgörs av huvudlobens bredd (uppmätt som avståndet mellan nollgenomgångarna närmast ω = 0) och sidolobernas amplitud (uppmätt som skillnaden i amplitud, vanligen i db, mellan huvudlob och största sidolob). 78

79 Magnitudfunktion för vanliga fixa fönster Magnitudfunktionen för de vanligaste fönstren, dvs rektangulärt, Hanning, Hamming och Blackman; M =

80 Egenskaper hos fixa fönster (forts) En ökning av huvudlobens bredd leder till att övergångszonens bredd också ökar. En minskning av sidlobernas amplitud leder till en förbättrad dämpning i spärrbandet. 80

81 Fönstring av idealt LP-filter samband 81

82 Justerbara fönster för FIR-filter design Det är ibland önskvärt att kunna justera sidlobernas amplitud ( ripplet ) och därför finns det fönster med en sådan frihetsgrad. De två vanligaste är Dolph-Chebyshev och Kaiser (se nedan). 0 Kaiserfönster, beta=2 0 Kaiserfönster, beta= magnitud (db) -30 magnitud (db) normerad frekvens normerad frekvens 82

83 Skattning av ordning på FIR-filter Ordningen bestäms med olika approximativa uttryck beroende på om filtret är designat med ett fixt fönster, se exvis ekv 10.3, eller justerbart fönster som tex Kaiser, se ekv

84 Trunkering minimerar kvadratfelet Vi vill bestämma den frekvensfunktion H t (e jω ), vars impulssvar h t (n) har den ändliga längden 2M + 1, som bäst approximerar den önskade frekvenssvaret H d (e jω ) utifrån det kvadratiska integralfelet Φ = 1 π 2π H t(e jω ) H d (e jω ) 2 dω π där Hur ska h t (n) väljas? H t (e jω ) = M n= M h t (n)e jωn. 84

85 Trunkering minimerar kvadratfelet, forts Med hjälp av av Parsevals relation kan vi skriva Φ = 1 2π = = π n= M n= M π H t(e jω ) H d (e jω ) 2 dω h t (n) h d (n) 2 h t (n) h d (n) 2 + M 1 n= h 2 d (n) + n=m+1 h 2 d (n). Om impulssvaret h t (n) väljs som h t (n) = h d (n) för M n M dvs trunkering av h d (n) så minimeras det kvadratiska felkriteriet! 85

86 FIR-filter design (ekvirippel): Parks-McClellans algoritm Ett annat sätt att konstruera FIR-filter efter en specifikation är att betrakta amplitudfunktionen för ett filtret som en funktion av ett antal parametrar och sedan matcha denna funktion till en mönsterfunktion för den filtertyp som önskas. Matchningen görs genom att skillnaden mellan funktionerna minimeras med baserat på ett kriterium. Strategin bygger in att filtret ska ha linjär fas och jämn amplitud (ekvirippel) i passband och spärrband. 86

87 Steg 1 Utnyttja den linjära fasstrukturen Ett FIR-filter med linjär fas kan ha udda eller jämn längd N + 1, och symmetriskt eller antisymmetriskt impulssvar. De fyra möjliga kombinationerna brukar betecknas med filter av typen 1, 2, 3 respektive 4. Notera: endast Typ 1 behandlas här, dvs udda längd och symmetriskt (se boken för övriga fall). 87

88 Steg 1, forts Utnyttja den linjära fasstrukturen Frekvensfunktionen för ett FIR-filter med linjär fas (Typ 1) ges av H(e jω ) = N n=0 = e jn 2 ω h(n)e jωn = (egenskapen h(n) = h(n n)) h ( ) N N/2 k=1 h ( ) N 2 k cos(ωk) Inför M = N 2, a(0) = h(m) och a(k) = 2h(M k),1 k M, så kan amplitudfunktionen H(ω) skrivas som en reell funktion i ω. H(ω) = M k=0 a(k) cos(ωk) 88

89 Steg 1, forts Utnyttja linjär fas strukturen Amplitudfunktionen kan för alla filtertyperna (1 4) skrivas som H(ω) = Q(ω)A(ω) där A(ω) = L k=0 ã(k) cos(ωk) För filtertyp 1 gäller att H(ω) = A(ω) då L = M, ã(k) = a(k) och Q(ω) = 1. För filtertyperna 2, 3 och 4 är dessa storheter annorlunda. 89

90 A(ω) som polynom i cos ω Använd binomialteoremet och bestäm realdelen för att få den eftersökta cos-termen cos(ωk) = Re { (cos ω + j sin ω) k} = Re Alltså: = = k/2 l=0 k/2 ( k l=0 ( k 2l 2l k l=0 ) (cos ω) k 2l ( 1) l (sin ω) 2l ( k ) (cos ω) k 2l ( 1) l (1 cos 2 ω) l = l ) (cos ω) k l (j sin ω) l k l=0 β l (cos ω) l A(ω) = L k=0 a(k) cos(ωk) A(ω) = L k=0 α(k)(cos ω) k 90

91 A(ω) som polynom i cos ω, forts Alltså A(ω) är ett polynom i cos ω av ordning L, A(ω) = L k=0 α(k)(cos ω) k och har L 1 extremvärden i intervallet 0 < ω < π, som utgör det sk ripplet. Ripplet blir snabbare för högre värden på L. Om vi väljer ordningen N så kommer vår amplitudfunktion H(ω) (= A(ω) för typ 1) att kunna beskrivas som ett polynom av ordning L = N/2. 91

92 Önskad amplitudfunktion D(ω) Vi behöver nu bestämma koefficienterna α(0),..., α(l) så att amplitudfunktionen H(ω) matchar en önskad amplitudfunktion D(ω), t.ex. för ett lågpassfilter D(ω) = { 1 passband 0 spärrband med något lämpligt minimeringskriterium. 92

93 Steg 2 Minimeringskriterium Minimax-kriteriet (även känt som Chebyshev-kriteriet) går ut på att minimera det maximala, absoluta felet ε som erhålles med där ε = max ω R E(ω) E(ω) = W(ω)[ H(ω) D(ω)], över de frekvensintervall R där amplitudfunktionen D(ω) specificerats, dvs exkluderandes en eller flera övergångszoner mellan pass- och spärrband. W(ω) är en viktfunktion som är styckvis konstant över samma intervall som D(ω) och som viktar det tolererade ripplet så att det blir lika stort i alla intervall. 93

94 De önskade parametrarna För ett givet N (och därmed L) så söker vi L+2 okända variabler, dvs α(0), α(1),..., α(l) och ε och behöver således lika många ekvationer som beskriver felet för att lösa systemet. 94

95 Alterneringsteoremet För att en amplitudfunktion definierad som en linjärkombination av cosinusar, dvs H(ω) = L k=0 a(k)cos(ωk) ska vara den bästa, unika approximationen till D(ω), så är ett nödvändigt och tillräckligt villkor att E(ω) (genom H(ω)) åtminstone har L + 2 extremfrekvenser i de mängden R. Dessa extremfrekvenser är sådana att för ω 0 < ω 1 < < ω L+1, och E(ω i ) = E(ω i+1 ), i = 0,..., L + 1 ε = E(ω i ) = max ω R E(ω), i = 0,..., L + 1 Filtret måste således ha ekvirippelkaraktär. 95

96 Extremvärden hos A(ω) Utöver A(ω):s lokala min/max (L 1 st) finns extrempunkterna ω = 0, ω = π, ω = ω p och ω = ω s, dvs totalt L+3 extremvärden. OK att använda alterneringsteoremet. 96

97 Steg 3 Optimering Ett system med L + 2 ekvationer kan nu skapas genom att utvärdera minimeringskriteriet för L + 2 av extremfrekvenserna. E(ω i ) = W(ω i ) L k=0 α(k)(cos ω i ) k D(ω i ) = ( 1) i ε, 0 i L+1 ger de okända storheterna α(0),..., α(l) och ε, under förutsättning att extremvärdenas frekvenser är kända. Termen ( 1) i beror på den alternerande egenskapen hos amplitudfunktionen. Problemet är att extremfrekvenserna är okända... 97

98 Steg 3, forts Optimering Remez utbytesalgoritm är en mycket effektiv procedur för att bestämma extremvärdenas frekvenser ( extremfrekvenser ) hos det trigonometriska polynomet. Algoritmen startar med en försöksmängd med frekvenser R 0 = {ω0 0,..., ω0 L+1 } som sedan systematiskt byts ut mot nya tills den eftersökta mängden med extremfrekvenser erhålls. Utbytet sker iterativt på följande vis: 1. Lös ekvationssystemet på föregående sida. Lösningen har ett fel som oscillerar med amplituden ε k på mängden med extremfrekvenser R k för iteration k. 98

99 2. Beräkna A(ω i ) och interpolera mellan dessa extremfrekvenser för att få fram amplitudfunktionen i tillräckligt tätt antal punkter. 3. Sök frekvensaxeln för att se om, och ev. var, ε k+1 = max ω E k (ω) är större än felet ε k som beräknades i steg Om ε k+1 ε k är litet, avsluta proceduren. Om ej, bestäm extremfrekvenserna i R k+1 och gå till steg 1. Med extremfrekvenserna i R k tillgängliga så kan det eftersökta ekvirippelfiltret beräknas och designen avslutas! 99

100 Remez utbytesalgoritm I detta fall är ε k för litet. 100

101 Remez utbytesalgoritm exempel 101

102 Föreläsning 4: Algoritmer för DSP Leif Sörnmo 11 mars

103 Översikt Filterstrukturers beräkningsbarhet DFT och Goertzels rekursiva beräkningsalgoritm DFT och effektiv beräkning m.h.a. FFT 103

104 Beräkningsbarhet av filterstrukturer Ett digitalt filter kan beskrivas med ett antal differensekvationer som relaterar ut- till insignal. Filtret nedan kan t.ex. beskrivas med sex ekvationer: 104

105 Beräkningsbarhet av filterstrukturer, forts Ekvationerna är följande: w 1 (n) = x(n) αw 5 (n) w 2 (n) = w 1 (n) δw 3 (n) w 3 (n) = w 2 (n 1) w 4 (n) = w 3 (n) + εw 2 (n) w 5 (n) = w 4 (n 1) y(n) = βw 1 (n) + γw 5 (n) Hur möjliga är dessa att beräkna?? 105

106 Beräkningsbarhet av filterstrukturer, forts Ekvationerna är inte möjliga att beräkna p.g.a. att t.ex. beräkning av w 1 (n) kräver kunskap om w 5 (n) som först beräknas i näst sista steget; p.s.s. kräver beräkning av w 2 (n) kunskap om w 3 (n) som först beräknas i påföljande steg. Ekvationerna är ej beräkningsbara. Vi behöver en allmän metod för att avgöra ett filters beräkningsbarhet. 106

107 Matrisrepresentation Det tidigare ekvationssystemet kan uttryckas i matrisform som: w 1 (n) w 2 (n) w 3 (n) w 4 (n) w 5 (n) y(n) = + x(n) α δ ε β γ 0 w 1 (n 1) w 2 (n 1) w 3 (n 1) w 4 (n 1) w 5 (n 1) y(n 1) w 1 (n) w 2 (n) w 3 (n) w 4 (n) w 5 (n) y(n) 107

108 Kompakt matrisrepresentation Det tidigare ekvationssystemet kan kompakt uttryckas som: y(n) = x(n) + Fy(n) + Gy(n 1) y(n) = [ w 1 (n) w 2 (n) w 3 (n) w 4 (n) w 5 (n) y(n) ] T x(n) = [ x(n) ] T F = α δ ε α 0 β γ 0, G =

109 Kompakt representation och beräkningsbarhet Ett filter är beräkningsbart om alla element i och ovanför diagonalen i matrisen F är lika med noll. I vårt specifika fall: filtret är inte beräkningsbart eftersom flera element skilda från noll finns ovanför diagonalen. 109

110 Beräkningsbart filter - ändra ordningen! w 3 (n) w 5 (n) w 1 (n) w 2 (n) y(n) w 4 (n) = x(n) α δ γ β ε 0 0 w 3 (n 1) w 5 (n 1) w 1 (n 1) w 2 (n 1) y(n 1) w 4 (n 1) w 3 (n) w 5 (n) w 1 (n) w 2 (n) y(n) w 4 (n) 110

111 Precedensgrafen hjälpmedel för systematisk bedömning av beräkningsbarhet Filtret ovan kan ritas om till en s.k. precedensgraf där varje signalvariabel w i (n) representeras med en nod och varje multiplikation eller fördröjning med en gren. Resultatet blir då 111

112 Reducerad precedensgraf En reducerad precedensgraf erhålles om alla grenar tas bort som representerar fördröjningar eller utgår från ingångsnoden. För vårt tidigare exempel erhålls då 112

113 Gruppering av noder 1 Algoritm för gruppering av noder: Inkludera alla noder i en mängd { N 1 } som bara har utåtgående grenar. Inkludera alla noder i en mängd { N 2 } som bara har utåtgående grenar och som startar från noder i { N 1 }. o.s.v. Denna process avslutas när en mängd { N f } erhållits som bara innefattar inkommande grenar. 113

114 Gruppering av noder 2 Med denna gruppering av noder blir filtret beräkningsbart genom att först bestämma de signalvariabler som tillhör { N 1 }. Därefter bestäms de signalvariabler som tillhör { N 2 } baserat på det som redan bestämts i { N 1 }, o.s.v. För vårt tidigare exempel erhålls då { N 1 } = { w 3 (n), w 5 (n)} { N 2 } = { w 1 (n)} { N 3 } = { w 2 (n)} { N 4 } = { w 4 (n), y(n)} 114

115 Gruppering av noder 3 Grupperingen i noder och den sekvensiella strukturen i beräkningen av signalvariabler kan grafiskt representeras på följande vis: 115

116 Implementation av digitala filter I Matlab finns ett flertal funktioner för att simulera (=beräkna utsignalen från) filter med givna täljar- och nämnarpolynom. Några av dessa är filter - Direkt II t implementation filtfilt - Zero-phase using forward and backward filtering 116

117 Effektiva algoritmer är ett måste! Digital signalbehandling fick sitt definitiva genombrott när DFT:n kunde beräknas effektivt med FFT:n. Utvecklingen av effektiva (=snabba) versioner av en algoritm utgör en extremt viktig del i digital signalbehandling, och har haft en avgörande betydelse för framgångsrik komprimering av audiosignaler och video. 117

118 Diskreta Fouriertransformen (DFT) Beräkning av ett värde i DFT:n X(k) = X(e jω ) ω= 2πk N = N 1 n=0 x(n)e j2πkn/n, 0 k N 1 kräver N komplexa multiplikationer och N 1 komplexa additioner. För att beräkna alla N värdena behövs således N 2 komplexa multiplikationer och (N 1)N komplexa additioner. Man kan visa att det motsvarande antalet reella multiplikationer/additioner är 4N 2 /(4N 2)N. Slutsats: uppsnabbning av beräkningarna är helt nödvändig! 118

119 Goertzels algoritm för beräkning av DFT Motiv: vi vill beräkna DFT:n rekursivt för endast en viss frekvens X(k) så att multiplikationer kan tjänas! För ett givet k vill vi beräkna: X(k) = N 1 n=0 x(n)e j2πkn/n = x(0) + x(1)e j2πk/n + + x(n 1)e j2πk(n 1)/N Låt oss studera följande rekursion y k (n) = x(n) + e j2πk/n y k (n 1), n = 0,..., N med begynnelsevillkoren y k ( 1) = 0 och x(n) =

120 Goertzels algoritm för beräkning av DFT 2 Följaktligen y k (0) = x(0) + e j2πk/n y k ( 1) = x(0) y k (1) = x(1) + e j2πk/n y k (0) = x(1) + e j2πk/n x(0) y k (2) = x(2) + e j2πk/n y k (1) = x(2) + e j2πk/n x(1) + e j2πk2/n x(0). y k (N) = x(n) + e j2πk/n x(n 1) + + e j2πk(n 1)/N x(1) + e j2πkn/n x(0 Förlängning av y k (N) med e j2πkn/n = 1 ger y k (N) = x(0) + e j2πk/n x(1) + + e j2πk(n 1)/N x(n 1) som identifieras som definitionen på X(k), dvs X(k) = y k (N). Observera: Till skillnad från DFT:n så behöver endast en komplex exponential e j2πk/n beräknas i Goertzels algoritm. 120

121 Goertzels algoritm för beräkning av DFT 3 1 komplex multiplikation = 4 reella mult och 2 reella add 1 komplex addition = 2 reella add För varje enskild frekvens (dvs. DFT-sampel) krävs: N/N komplexa mult/add = 4N/4N reella mult/add För alla N frekvenserna krävs: 4N 2 /4N 2 reella mult/add, att jämföra med DFT:n som kräver 4N 2 /(4N 2)N reella mult/add, dvs färre add Så vad är egentligen vitsen med Goertzels algoritm? 121

122 Goertzels algoritm för beräkning av DFT 4 Detta är en effektivare struktur av Goertzels algoritm som kräver 2N +4/4N +4 reella mult/add för beräkning av enskild frekvens. 122

123 Snabba Fouriertransformen (FFT) Huvudidé: Dela upp DFT-summan successivt i DFT-summor med färre punkter så att periodicitet och symmetriegenskaper hos termen e j2πkn N kan utnyttjas effektivt. Resultat: Dramatisk uppsnabbning av DFT-beräkning, resulterandes i N log 2 N muliplikationer istället för de N 2 som krävs vid rakfram beräkning. 123

124 Snabba Fouriertransformen (FFT) 2 Låt oss göra en enkel uppdelning av DFTn, nämligen: X(k) = = = N 1 x(n)e j2πkn/n n=0 N 2 1 n=0 N 2 1 n=0 x(2n)e j2πk2n/n + N 2 1 n=0 x(2n)e j2πkn/n 2 + e j2πk/n x(2n + 1)e j2πk(2n+1)/n N 2 1 n=0 x(2n + 1)e j2πkn/n 2 dvs. summan av N/2-punkters DFT av x(2n) respektive x(2n+1) där den senare DFTn multipliceras med faktorn e j2πk/n. Denna DFT är periodisk med längden N/2. 124

125 Snabba Fouriertransformen (FFT) 3 Följaktligen kan vi då uttrycka X(k) som X(k) = X 0 ( k N/2 ) + e j2πk/n X 1 ( k N/2 ), 0 k N 1 där k N/2 = k modulo(n/2) och X 0 ( k N/2 ) N/2-punkters DFT av x 0 (n) = x(2n) X 1 ( k N/2 ) N/2-punkters DFT av x 1 (n) = x(2n + 1) z

126 Beräkning av DFT mha två N/2-punkters DFT Flödesgraf för fallet N =

127 Beräkning av DFT mha 4 N/4-punkters DFT För fallet N = 8 så är detta den maximala uppdelningen, eftersom en 2-punkters DFT är den minsta möjliga! 127

128 Uppdelning av DFT: antal multiplikationer I varje steg krävs 8 komplexa mult. vilket med tre steg kräver 24 komplexa mult. allmänt krävs N log 2 N komplexa mult. 128

129 Fjärilsberäkningen den grundläggande FFT-modulen Ψ r+1 (α) = Ψ r (α) + W l N Ψ r(β) Ψ r+1 (β) = Ψ r (α) + W l+(n/2) N Ψ r (β) = Ψ r (α) WN l Ψ r(β) 129

130 FFT decimering i tid Den uppdelning av DFT:n som är gjord här kallas ( decimeringi-tid ) X(k) = = N 1 x(n)e j2πkn/n n=0 N 2 1 n=0 x(2n)e j2πk2n/n + N 2 1 n=0 x(2n + 1)e j2πk(2n+1)/n där varannat insignal-sampel går till vardera grenen. 130

131 FFT decimering i frekvens En alternativ DFT-uppdelning är ( decimering-i-frekvens ) X(k) = = N 1 x(n)e j2πkn/n n=0 N 2 1 n=0 x(n)e j2πkn/n + N 2 1 n=0 x(n + N 2 )e j2πk(n+n 2 )/N där FFT istället beräknas för konsekutiva block vilket leder till olika ekvationer för att beräkna de jämna och udda samplen av DFT:n. 131

132 Beräkning av DFT i Matlab I exempel genomförs beräkningen av FFT för en sinussignal som har två olika frekvenser och visar därigenom på en viktig egenskap hos DFT:n. Missa inte att köra igenom detta exempel! 132

133 Föreläsning 5: Kvantisering Leif Sörnmo 11 mars

134 Översikt Talrepresentation och aritmetik, kap Digitala filter och effekten av ändlig ordlängd, kap Inverkan på pol- och nollställesplacering Inverkan på frekvensfunktion Inverkan på utsignalen 134

135 Talrepresentation (Kap. 11) Fixtal och flyttal är de två vanligaste sätten att representera ett binärt tal: Fixtal η: representeras antingen som heltal där 0 η 2 B 1 eller som bråkdel 0 η 1 2 B. Flyttal η: representeras som η = M 2 E där M kallas mantissa och E exponent. 135

136 Representation av negativa tal Representation av b-bitars fixtals bråkdel (såväl pos. som neg.): kan göras på följande tre olika sätt (alla lika för positiva tal): 1. tecken-magnitud: s = 0 η = b a i 2 i, i=1 s = 1 η = b a i 2 i komplement: som tecken-magnitud men där negativa tal istället representeras med komplementet komplement: som 1-komplement men där 1 adderas till den minst signifikanta biten (LSB). Vanligast! i=1 136

137 Hur många bitar krävs för decimal noggrannhet? Ett tal som har d decimaler har en nogrannhet på ± d. Om samma tal ska representeras binärt med b bitar så blir istället noggrannheten ±0.5 2 b. Följaktligen för att behålla samma noggrannhet mellan de olika sätten att representera ett tal så behövs: d = b b = dlog d bitar Alltså: 8 bitar 2.1 decimaler, 16 bitar 4.8, 32 bitar

138 Representation av decimaltal ett exempel Representera decimaltalet med 4 bitar m.h.a. 2-komplement (som innehåller en teckenbit och 3 decimalbitar), samt skatta antalet bitar som krävs för att representera detta decimaltal korrekt. Multiplicera med antalet tillgängliga bitar (förutom teckenbiten), dvs = , och avrunda till närmaste heltal neråt, dvs 7 som binärt är 0111 (dvs. största möjliga tal som kan representeras). Antalet bitar som krävs är således = bitar. 138

139 Fixtalsmultiplikation ett exempel Beräkna kvadraten på mha 2-komplementsaritmetik med en noggrannhet på 5 bitar. Produkten = innehåller två teckenbitar varav den vänstra kan tas bort, och där de 4 minst signifikanta bitarna av de övriga åtta skiftas bort. Slutresultatet blir därför = = , att jämföra med det exakta värdet som är

140 Fixtalsaddition ett exempel Beräkna ( ) och ( ) med 4 bitar. De ingående talen är binärt 0.25=0010, 0.5=0100 och 0.75=0110. Summa 1: =10100 som, om vi struntar i den mest vänstra biten, blir 0100=0.5. Summa 2: =01010 och därefter =10110 som, om vi struntar i den mest vänstra biten, blir 0110=

141 Flyttalsrepresentation IEEE standard Det sk ANSI/IEE-formatet är vanligast för flyttalsrepresentation och omfattar 32 eller 64 bitar. I ett 32 bitars ord ryms 8 bitar till exponent (E), 23 bitar till mantissa (M) och 1 teckenbit (S): Ett flyttal representeras som η = ( 1) S 2 E 127 M, 0 M 1. Exempel: för flyttalet så gäller att E = = 131, M = = 0.75 och S = 0. Följaktligen är η = ( 1) = =

142 Flyttalsrepresentation IEEE addition/multiplikation Vi utgår från två flyttal X 1 = M 1 2 E 1 och X 2 = M 2 2 E 2. Addition leder till X = X 1 + X 2 = (M 1 + M 2 2 E 2 E 1 ) 2 E 1 om vi antar att X 1 > X 2. Här måste vi göra exponenterna lika stora för båda flyttalen, och i detta fall är det X 2 som ändras eftersom det är det mindre. Multiplikation leder till X = X 1 X 2 = (M 1 M 2 ) 2 E 1+E

143 Kvantisering (Kap. 12) Värdet x kvantiseras med en funktion Q(x) till ett b-bitars värde medelst operationerna trunkering eller avrundning. 143

144 Kvantisering och digitala filter I samband med digitala filter finns flera frågor kring kvantisering. 1. Vad händer med ett filter när filterkoefficienter kvantiseras? IIR/FIR? 2. Hur påverkar kvantisering av insignalen systemet? Kommer kvantiseringsfelet på insignalen att förstärkas genom filtret? 3. Vad får kvantiseringen i det aritmetriska operationerna (t.ex. produkt) för effekt? 144

145 1. Kvantisering av filterkoefficienter Idealt så är en signals sampel och ett filters koefficienter angivna med oändlig precision; dock, dessa storheter måste i praktiken diskretiseras (ändlig precision) för att kunna implementeras i dator. Vad händer t.ex. med ett filters egenskaper när dess koefficienter representeras med ett ändligt antal bitar? 145

146 Kvantisering av filterkoefficienter, forts Ändlig ordlängd för att representera dess koefficienter påverkar ett filters: frekvensfunktion (dock, olika mycket påverkan beroende på den specifika filterstruktur som valts, dvs. direkt-form, kaskadkopplad, lattice, osv). stabilitet (gäller endast IIR-filter). Stabilitet som gäller vid oändlig ordlängd kan tyvärr inte garanteras vid ändlig ordlängd. 146

147 Elliptiskt IIR-filter (direkt-form) kvantisering antal bitar respektive 5 bitars kvantisering av filterkoefficienter. 147

148 Elliptiskt IIR-filter (kaskad) kvantisering Direkt-form (överst) och kaskadkopplad filterstruktur (under). 148

149 Ändlig ordlängd i IIR-filter ett exempel Ett bandpass IIR-filter har följande systemfunktion: H(z) = a 1 z 1 + a 2 z 2 där a 1 = och a 2 = Studera hur centerfrekvensen f c förändras om koefficienterna kvantiseras till 8 bitar! Okvantiserat: Nämnaren i H(z) kan skrivas om med polära koordinater (r, θ) som (1 2rcos(θ)z 1 + r 2 z 2 ) vilket ger att r = a 2 = och θ = arccos ( a ) 1 2r = o, och alltså blir centerfrekvensen f c = 11.25/360 = Kvantiserat: Eftersom a 1 är större än 1 så behöver de 8 bitarna användas så att 1 bit går till tecken, 1 bit till heltalsdelen och 6 bitar till bråkdelen av koefficienterna. 149

150 Ändlig ordlängd i IIR-filter ett exempel, forts Med två-komplements kvantisering så erhåller vi följande: a 1q = ( ) a 2q = som är liktydigt med a 1q = 125 = (att jämföra med ) 64 a 2q = 63 = (att jämföra med ) 64 Omräknat i polära koordinater blir de kvantiserade koefficienterna (r q, θ q ) = ( , o ) och därmed f c = (att jämföra med f c = ). 150

151 Ändlig ordlängd i IIR-filter polplaceringar Ett andra ordningens IIR-filter direkt form I och möjliga polplaceringar för 4 respektive 7 bitars kvantisering av filterkoefficienterna. 151

152 Ändlig ordlängd i IIR-filter polplaceringar 2 Ett andra ordningens IIR-filter sk kopplad form och möjliga polplaceringar för 4 respektive 7 bitars kvantisering av filterkoefficienterna. 152

153 Vilken struktur är minst känslig för kvantisering? H I (z) = z 2 z 2 Kz+L H II (z) = γz 2 z 2 (α+δ)z+(αδ βγ) H I (z) och H II (z) identiska om γ = 1, K = α + δ, L = αδ βγ. Ett svar på titelfrågan kan fås med simulering (som tidigare) eller genom matematisk analys. 153

154 Kvantisering: förflyttning av poler/nollställen 1 Betrakta ett polynom B(z) med enkla rötter: B(z) = N i=0 b i z i = N k=1 (z z k ) där b N = 1 som kan uttryckas i polär form z k = r k e jθ k. Kvantisering medför att b i förändras till b i + b i och således ˆB(z) = N i=0 (b i + b i )z i = B(z) + N i=0 ( b i )z i = N i=1 (z ẑ k ). 154

155 Kvantisering: förflyttning av poler/nollställen 2 För små förändringar b k så är ẑ k och z k nära varandra, varför ẑ k = z k + z k = (r k + r k )e j(θ k+ θ k ). Vidare, för mycket små förändringar b k så ẑ k (r k + r k )(1 + j θ k )e jθ k r k e jθ k + ( r k + jr k θ k )e jθ k om termer av högre ordning negligeras. Alltså: z k = ẑ k z k ( r k + jr k θ k )e jθ k 155

156 Kvantisering: förflyttning av poler/nollställen 3 Om alla koefficienterna b i för ett filter kan skrivas b i = f(α) där α = [ α 1 α R ] är en ny uppsättning variabler som beskriver filtret så kan propageringen av kvantiseringsfel mellan dessa variabeluppsättningar skrivas B = C α B = [ b 0 b N 1 ] T α = [ α 1 α R ] T b 0 b 0 b α 1 α α R b 1 b 1 b C = α 1 α α R b N 1 α 2... b N 1 α 1 b N 1 α R 156

157 Kvantisering: förflyttning av poler/nollställen 4 Om exempelvis K = 2r cos θ och L = r 2 så fortplantas fel enligt [ ] K = L [ 2cos θ 2rsin θ 2r 0 ] [ r θ ] 157

158 Vilken struktur är minst känslig för kvantisering? struktur I struktur II Ovan beskrivna analysteknik ger, efter diverse räknande, följande resultat: θ I = K 2rsin θ θ II = 1 r sin θ α + 1 r cos θ β. Slutsats: struktur I är känsligare för kvantisering om en pol ligger nära θ = 0 eller π, dvs. ett smalbandigt låg- eller högpassfilter. 158

159 Kvantisering av FIR-koefficienter (9.4.3) Ett filter h(n):s systemfunktion H(z) = N n=0 h(n)z n kan efter kvantisering beskrivas med Ĥ(z) = N n=0 (h(n) + e(n))z n = H(z) + E(z), dvs. en parallellkoppling av två system, varav det ena, E(z), beskriver felet förorsakat av kvantisering. En uppfattning om felets storlek fås genom följande omskrivningar: E(e jω ) N = n=0 e(n)e jωn N n=0 e(n) e jωn N n=0 e(n) (N+1) δ 2 där den sista olikheten bygger på antagandet om att avrundning leder till e(n) δ/2 (δ betecknar kvantiseringssteget). 159

160 Kvantisering av FIR-koefficienter ett exempel Logmagnitudfunktion okvantiserat 16 bitar 8 bitar Ekvirippel lågpassfilter, linjär fas designat med Parks-McClellans algoritm med specifikationer δ p = 0.01, δ s = (dvs 60 db). 160

161 Utsignalens varians vid kvantiserad insignal Kvantiseringsbrus med variansen σe 2 förstärks i ett filter H(e jω ) till π σv 2 = σ2 e 2π π H(ejω ) 2 dω Normerat till insignalvariansen blir detta σ 2 v,n = 1 2π π π H(ejω ) 2 dω = 1 2πj C H(z)H(z 1 )z 1 dz 161

162 Utsignalens varians vid kvantiserad insignal Eftersom H(z) kan partialbråksuppdelas i första och andra ordningens rationella, reella och stabila överföringsfunktioner H i (z) H(z) = så kan utsignalvariansen skrivas σ 2 v,n = R k=1 1 2πj C R i=1 H k (z)h k (z 1 )z 1 dz + 2 H i (z) R 1 R k=1 l=k+1 1 2πj C H k (z)h l (z 1 )z 1 dz där I i (dvs den andra integralen) finns givna i tabell 12.4 för olika kombinationer av H k (z) och H l (z) 1 H k (z)h l (z 1 )z 1 dz. 2πj C 162

163 Kvantisering vid aritmetriska operationer Ett generellt linjärt filter beskrivs av följande differensekvation y(n) = N k=1 d k y(n k) + M k=0 p k x(n k). Om alla sampel och koefficienter i denna ekvation representeras som fixtal med (b + 1)-bitars noggrannhet, så måste längden på de (2b + 1)-bitars produkter som resulterar trunkeras till (b + 1). Denna operation kan representeras med y(n) = N k=1 Q[d k y(n k)] + M k=0 Q[p k x(n k)]. 163

164 Modeller för kvantiseringsbrus (a) (c) (b) (a) IIR filter med oändlig noggrannhet, (b) olinjär modell för kvantiseringsbrus där felet ges av e(n) = Q[bx(n)] bx(n), samt (c) linjär modell för kvantiseringsbrus (här: efter produkt före nästa addition), se nästa sida. 164

165 Linjär, statistisk modell för kvantiseringsbrus Den linjära brusmodellen är vanligast och enklast att hantera matematiskt! I denna modell antas att kvantiseringsfelen e i (n) är additiva (efter produkter antingen före eller efter nästa addition) och med följande statistiska egenskaper: svagt stationär, vit process (vit process = samplena är sinsemellan okorrelerade), rektangelfördelad täthetsfunktion över kvantiseringsintervallet, okorrelerad med 1. insignalen till kvantiseraren, 2. med alla andra kvantiseringsprocesser, samt 3. med insignalen x(n). 165

166 Kvantiseringsbrusets varians För (b + 1)-bitars kvantisering och 2-komplements trunkering så kommer felet att vara 2 b e(n) 0. Tillsammans med antagandet om rektangelfördelning så ges kvantiseringsbrusets varians av σ 2 e = 2 2b 12. Hur summerar sig kvantiseringsbruset från varje enskild operation i filtrets utsignal? Antagandet om en linjär modell ger att det totala felet kan skrivas som e(n) = e 0 (n) + e 1 (n) + e 2 (n) + e 3 (n) + e 4 (n). 166

167 Linjär, statistisk modell för kvant.brus, forts För att bestämma variansen hos filtrets utsignal så använder vi följande samband mellan in- och utsignal (sid 688): σ 2 f = σ2 e 2π π π H f(e jω ) 2 dω = σ 2 e n= h f (n) 2. Med antaganden om okorrelerade felsignaler och rektangelfördelning, så ges det totala felet e(n):s varians av σ 2 e = σ 2 e 0 + σ 2 e 1 + σ 2 e 2 + σ 2 e 3 + σ 2 e 4 = 5 2 2b 12, och som för ett generellt filter blir σ 2 e = (M + N 1)2 2b

168 Linjär, statistisk modell för kvant.brus, forts Exempel: Vi ska bestämma den totala variansen för kvantiseringsbrusets i utsignalen om det digitala filtret definieras av H(z) = 1 1 az 1. Detta filter har impulssvaret h(n) = a n u(n) och således gäller att h f (n) = h(n). Utsignalens varians ges av σ 2 f = σ2 e = 2 2b 12 n= n=0 h f (n) 2 a 2n = 2 2b 12 ( 1 1 a 2 Detta resultat ska tolkas som att variansen ökar ju närmare polen, placerad vid z = a, kommer enhetscirkeln, och följaktligen måste vi då använda fler bitar för bibehållen varians. ). 168

169 Vad blir totala utsignalvariansen vid flera kvantiseringsbruskällor? Rita först upp filterstrukturen! Placera in kvantiseringsbruskällor efter varje produkt (före eller efter nästa addition). Vad blir överföringsfunktionen från var och en av bruskällorna? Sätt alla andra insignaler till noll. Använd sedan teorin för hur en brussignal går genom ett filter (partialbråksuppdela varje överföringsfunktion och använd tabell 12.4). Summera slutligen bidragen från varje kvantiseringsbruskälla. 169

170 Föreläsning 6: Multirate signalbehandling Leif Sörnmo 11 mars

171 Single-rate och multi-rate system I single-rate system så är samplingsfrekvensen den samma vid systemets ingång som utgång liksom vid alla interna noder. I många system är det dock fördelaktigt att använda olika samplingsfrekvens i olika delar av systemet multi-rate system. 171

172 Till vad nytta? Audio: omvandling av samplingsfrekvens mellan t.ex. digital radio 32 khz; CD 44.1 khz; DAT 48 khz. Audio: förändring av tonhöjd, t.ex. för kompensation av svaj eller falsksång. Video: omvandling av samplingsfrekvens mellan systemen NTSC och PAL. Även: effektiv implementering av filterbankar för kompression av olika signaler, t.ex. audio. 172

173 Översikt Uppsampling och nersampling (kap. 13.1) Filterdesign vid ändring av samplingsfrekvens decimering och interpolering (kap. 13.2) Ändring av samplingsfrekvens i flera steg (kap. 13.3) Polyfas-filterstrukturer (kap. 13.4) 173

174 Ändring av samplingsfrekvens: uppsampling Uppsamplaren ökar samplingsfrekvensen med en heltalsfaktor L från den ursprungliga signal x(n), x u (n) = x(n/l), n = 0, ±L, ±2L,... 0, för övrigt, dvs. genom påfyllning av nollor mellan samplen. Denna operation, som är linjär men inte tidsinvariant, representeras med följande blockdiagram: 174

175 Ändring av samplingsfrekvens: uppsampling 175

176 Frekvenstolkning av uppsampling (L = 2) X u (z) = = n= m= x u (n)z n = n= neven x(n/2)z n x(m)z 2m = X(z 2 ) X u (e jω ) = X(e jω2 ) 176

177 Frekvenstolkning av uppsampling Det blir L 1 extra kopior av in-spektrat i basbandet. Detta är ett resultat av nollorna som lagts in. Således, ett spektrum som är bandbegränsat till lågpassregionen ser inte ut som ett lågfrekvent spektrum efter uppsampling. Lågpassfiltrering tar bort kopiorna i spektrat och ersätter nollorna med interpolerade värden. 177

178 Ändring av samplingsfrekvens: nersampling Nersamplaren minskar samplingsfrekvensen med en heltalsfaktor M från den ursprungliga signal x(n), y(n) = x(nm), dvs. genom att bara välja var M:te sampel. Denna operation, som är linjär men inte tidsinvariant, måste genomföras med stor försiktighet för att inte leda till distorsion! 178

179 Ändring av samplingsfrekvens: nersampling 179

180 Nersampling och resulterande spektrum Vi vill bestämma hur spektrum förändrar sig vid nersampling. Detta kräver att vi introducerar en hjälpsignal x int (n) som är definierad för alla tidpunkter n, dvs. x int (n) = x(n), n = 0, ±M, ±2M,... 0, för övrigt, med vilken vi kan uttrycka z-transformen för x(n) Y (z) = = n= k= x(mn)z n = n= x int (k)z k M = X int (z 1/M ). x int (Mn)z n 180

181 Nersampling och resulterande spektrum, forts Efter diverse räkningar erhålls att z-transformen för x int (n) är X int (z) = 1 M där W M = e j2π/m. Följaktligen M 1 k=0 X(zW k M ), Y (z) = 1 M som i frekvensplanet ges av M 1 k=0 X(z 1/M W k M ) Y (e jω ) = 1 M M 1 k=0 X(e j(ω 2πk)/M ). Detta uttryck tolkas som att resulterande spektrum är en summa av M ursprungliga spektra men där bredden skalats om med faktorn 1/M och skiftats till olika lägen längs med frekvensaxeln. 181

182 Frekvenstolkning av nersampling Exempel för M = 2 där det ursprungliga spektrumet inte leder till överlappning efter det att nersampling gjorts. 182

183 Frekvenstolkning av nersampling vikning Exempel för M = 2 där det ursprungliga spektrumet är så pass brett att det leder till överlappning efter nersampling ett välkänt fenomen som kallas vikningsdistorsion. 183

184 Kaskadkoppling och samplingsfrekvens 184

185 Interpolering & decimering två byggblock Digital lågpassfiltrering är nödvändig vid såväl interpolering som decimering för att hantera de oönskade effekter som uppstår vid dessa två operationer. 185

186 Interpolering och filterdesign 186

187 Interpolering och filterdesign Specifikationerna på det lågpassfilter som krävs efter uppsampling vid interpolering (ta bort kopior) med faktorn L ges av H(e jω ) = L, ω ω c /L 0, π/l ω π, där övergångszonen, bestämd av ω c, är bred nog att tillåta en rimlig filterdesign. För decimering med M gäller samma resonemang för det filter som behövs före nedsampling (undvika vikning), dvs. H(e jω ) = 1, ω ω c /M 0, π/m ω π. 187

188 Interpolering och decimering Komplexitet Tidigare har vi sagt att IIR-filter är mer beräkningseffektiva i det att även om de kräver fler beräkningar per ordning så kan samma prestanda som för ett FIR-filter åstadkommas med så mycket lägre ordning att det lönar sig att använda IIR. Detta gäller i single-rate system. En intressant fråga är vilken av filtertyperna FIR och IIR som passar bäst i system där samplingsfrekvensen varierar. 188

189 Interpolering och decimering FIR-komplexitet Vid t.ex. decimering med faktorn M ges utsignalen från ett FIRfilter h(n) av y[n] = v(nm) = N 1 m=0 h(m)x(nm m). Från detta uttryck kan vi se att filtreringen baseras på var M:te sampel i insignalen. Detta gör att komplexiteten reduceras med en faktor M. 189

190 Interpolering och decimering IIR-komplexitet Om vi jämför med IIR-filter så ges utsignalen där av H(z) = V (z) X(z) = P(z) D(z) och beskrivs av en differensekvation för täljaren v[n] och en differensekvation för nämnaren w[n]. w(nm) = d 1 w(nm 1) d K w(nm K) + x(n) v(nm) = p 0 w(nm) + p 1 w(nm 1) + + p K w(nm K). Här ser vi att täljarekvationen kräver K + 1 multiplikationer men beräknas bara för var M:te sampel. Nämnarekvationen kräver K multiplikationer oavsett när den beräknas. 190

191 Interpolering och decimering FIR! Antal multiplikationer per filtrerat sampel för R M,FIR = N R M,FIR DEC = N/M R M,IIR = (2K + 1) R M,IIR DEC = K + (K + 1)/M FIR-filter leder till färre antal multiplikationer. På samma sätt sparas en faktor L i beräkning vid interpolation eftersom den uppsamplade signalen huvudsakligen består av nollor. 191

192 Decimering och interpolering i Matlab decimate decimering interp interpolering resample ändring av samplingsfrekvensen med faktorn L/M. 192

193 Decimering i två eller tre steg - skillnad? 193

194 Polyfasuppdelning av signal En signal kan ekvivalent representeras av M stycken nersamplade (med en faktor M) signaler 194

195 Polyfasstruktur för effektiv decimering och interpolering Vi har tidigare sett att alla FIR-filter kan realiseras i polyfasstruktur. I vissa fall är det också möjligt att realisera IIR-filter i polyfasstruktur. Denna struktur är lika komplex som direktstrukturerna men det visar sig att den är speciellt lämplig vid decimering och interpolering. 195

196 Polyfasstruktur för effektiv decimering och interpolering 196

197 Föreläsning 7: Filterbankar Leif Sörnmo 11 mars

198 Översikt Filterbankar (14) Uniform DFT-filterbank (14.1.2) L-bandsfilter, spec. halvbandsfilter (13.6) Quadrature mirror filter (QMF) -bank (14.2) 198

199 Vad är en filterbank? Analys-filterbank Syntes-filterbank Utsignalerna v 0 (n),..., v M 1 (n) från analys-filterbanken behandlas på lämpligt sätt, tex med en kodningsalgoritm, för att senare återskapas med syntes-filterbanken från ˆv 0 (n),...,ˆv L 1 (n). 199

200 Filterbank för kodning/avkodning av audiosignal Ofta innehåller en filterbank fler delband än vad den har som visas ovan, dvs. flera frekvensband kodas/avkodas. 200

201 Kodning/avkodning av audiosignal (56 kbit/s) Förstärkning för varje delbandsfilter (totalt 5 filter) Summan av alla delbandsfilters förstärkning, dvs nästan konstant 201

202 Kodning/avkodning av audiosignal (56 kbit/s), forts 202

203 Uniform DFT-filterbank (14.1.2) Lågpassfiltret H 0 (e jω ) överst har ω p och ω s runt π/m. 203

204 Uniform DFT-filterbank 2 De andra M 1 filtren fås genom att skifta prototypfiltret H 0 (e jω ) längs med frekvensaxeln i steg om 2πk/M, dvs. H k (e jω ) = H 0 (e jω e j2πk/m ), 0 k M 1. I tidsplanet ges impulssvaret för h k (n) av h k (n) = h 0 (n)e j2πkn/m, 0 k M 1. Om vi plottar H k (e jω ) för olika värde på k så erhålls diagrammet på föregående sida. Den resulterande filterbanken kallas uniform eftersom alla delbandsfilter ges av ekvidistanta frekvensskift av H 0 (e jω ), dvs. H k (e jω ) = H 0 (e j(ω 2πk/M) ) 204

205 Uniform DFT-filterbank med polyfasstruktur Detta är ett effektivt sätt att implementera DFT-filterbanken eftersom det visar sig att polyfasuppdelningen av H 0 (e jω ) kan användas också för att skapa de olika H k (e jω ). Hur de olika polyfaskomponenterna ska kombineras anges av en invers DFTmatris. 205

206 DFT analys-filterbank med polyfasstruktur 2 Vi utgår ifrån H 0 (z) uttryckt som ett M-bands polyfasfilter, dvs. H 0 (z) = M 1 l=0 z l E l (z M ) där E l (z) är den l:te polyfaskomponenten, E l (z) = e l (n)z n = n=0 h 0 (l + nm)z n, 0 l M 1 n=0 Polyfasform för filtren H k (z) erhölls med frekvensskift, som i z- planet svarar mot att z ersätts med ze j2πk/m, dvs. H k (z) = = M 1 l=0 M 1 l=0 z l e j2πkl/m E l (z M e j2πkm/m ) z l e j2πkl/m E l (z M ) 206

207 DFT analys-filterbank med polyfasstruktur 3 För specialfallet M = 2 så blir H 0 (z) = E 0 (z 2 ) + z 1 E 1 (z 2 ) och H 1 (z) blir H 1 (z) = 1 l=0 z l e j2πl/2 E l (z 2 e j2πk ) = E 0 (z 2 ) z 1 E 1 (z 2 ) 207

208 DFT analys-filterbank med polyfasstruktur 4 Z-transformen för alla M olika filter i banken kan skrivas som en produkt av två vektorer, och därefter samlas ihop i följande matrisekvation H 0 (z) H 1 (z). H M 1 (z) = e j2π/m... e j2π(m 1)/M e j2π(m 1)/M... e j2π(m 1)2 /M E 0 (z M ) z 1 E 1 (z M ). z (M 1) E M 1 (z M ) eller mera kompakt uttryckt som vektorer och matris, H(z) = MD 1 E(z). Anledningen till att matrisen D här skrivs som inverterad beror på att D definierar den M M matris som används vid beräkning av en DFT; se mera om detta på nästa sida. 208

209 DFT och IDFT i matrisform Transformparet för DFT:n ges av X(k) = M 1 n=0 x(n)e j2πnk/m x(n) = 1 M M 1 k=0 X(k)e j2πnk/m Med beteckningarna x = [ x(0) x(1)... x(m 1) ] T, X = [ X(0) X(1) X(M 1) ] T, och D = e j2π/m e j2π(m 1)/M e j2π(m 1)/M e j2π(m 1)2 /M så kan transformparet även uttryckas som X = Dx x = D 1 X 209

210 DFT analys-filterbank med polyfasstruktur prestanda För ett prototypfilter med N koefficienter så kräver denna typ av filterbank vid direkt implementering: N M multiplikationer polyfas-implementering: (M/2)log 2 M + N multiplikationer. Alltså, en dramatisk förbättring av prestanda! 210

211 DFT syntes-filterbank med polyfasstruktur 211

212 L-bandsfilter (13.6) Detta är en grupp av filter som är beräkningsmässigt attraktiva eftersom ett stort antal koefficienter är lika med noll, bevarar de ursprungliga samplens värde vid interpolering (dvs dessa går opåverkade genom interpolationsfiltret). Ett annat namn på dessa filter är Nyquistfilter. 212

213 Egenskaper hos L-bandsfilter Ett L-bandsfilters systemfunktion ges på polyfasform av H(z) = E 0 (z L ) + z 1 E 1 (z L ) + + z (k 1) E k 1 (z L ) + αz k + z (k+1) E k+1 (z L ) + + z (L 1) E L 1 (z L ) där en polyfaskomponent är konstant, dvs. E k (z L ) = αz k. Vid interpolering erhålls utsignalen som Y (z) = H(z)X(z L ), eller Y (z) = αz k X(z L ) + som i tidsplanet innebär att L 1 l=0 l k z l E l (z L )X(z L ) y(nl + k) = αx(n), dvs. insignalens sampel återfinns odistorderade i utsignalen, medan de övriga samplen i utsignalen interpoleras fram. 213

214 Impulssvar för L-bandsfilter Allmänt: h(ln) = α, n = 0 0, för övrigt. L = 3 214

215 Frekvenssvar för skiftade L-bandsfilter Om det är den första polyfaskomponenten E 0 (z L ) som är lika med α så kan man visa att L 1 k=0 H(zW k L ) = Lα. 215

216 Halvbandsfilter specialfall av L-bandsfilter Om L = 2 så kallas filtret för halvbandsfilter och ges då av H(z) = E 0 (z 2 ) + z 1 E 1 (z 2 ) = α + z 1 E 1 (z 2 ) där vi utnyttjat att E 0 (z 2 ) är den konstanta polyfaskomponenten, oftast vald med α = 2 1. Följaktligen är impulssvaret (varannat sampel) lika med h(2n) = 1 2, n = 0 0, för övrigt. För alla halvbandsfilter kan man visa att H(z) + H( z) = z 1 E 1 (z 2 ) z 1 E 1 (z 2 ) = 1 vilket har en intressant tolkning i frekvensplanet

217 Halvbandsfilter specialfall av L-bandsfilter Om vi sätter z = e jω så erhålls H(e jω ) + H( 1 e jω ) = H(e jω ) + H(e j(π ω) ) = 1 som kan tolkas enligt nedan (h(n) antas vara FIR med N = 11). obs! varannan nolla obs! reell funktion obs! skiftad obs! summan=1 h(n), N = 11 H(e jω ) H(e j(π ω) ) H(e jω ) + H(e j(π ω) ) Eftersom flera koefficienter (ibland uppåt 50%) är noll sparas många multiplikationer. (N = 101 ger endast 25 mult.) 217

218 Frekvenssvar för halvbandsfilter detaljbild 218

219 Linjär-fas L-bandsfilter (13.6.3) Lågpass, linjär-fas, L-bandsfilter med brytfrekvens ω = L π kan designas med fönstermetoden. Om h LP (n) = 0 för n = ±L, ±2L,... så är det ett s.k. Nyquist-filter. 219

220 Quadrature-mirror filter bank QMF-bank Samma samplingshastighet på in- och utsignalen. 220

221 QMF-bank överföringsfkn för analysdelen De två filtrerade signalerna bestäms av V 0 (z) = X(z)H 0 (z) respektive V 1 (z) = X(z)H 1 (z). Nedsampling med en faktor 2 leder till följande in-/utsamband (se föreläsning 6) U 0 (z) = 1 2 X(z1/2 )H 0 (z 1/2 ) X( z1/2 )H 0 ( z 1/2 ) U 1 (z) = 1 2 X(z1/2 )H 1 (z 1/2 ) X( z1/2 )H 1 ( z 1/2 ) som på matrisform blir [ ] U0 (z) = 1 [ H0 (z 1/2 ) H 0 ( z 1/2 ] [ ) X(z 1/2 ) U 1 (z) 2 H 1 (z 1/2 ) H 1 ( z 1/2 ) X( z 1/2 ) ] 221

222 QMF-bank egenskaper hos delbandssignaler efter lågpassfiltrering av insignal efter nersampling med faktorn 2 efter högpassfiltrering av insignal efter nersampling med faktorn 2 Observera att vikningsdistorsion introduceras 222

223 QMF-bank överföringsfkn för syntesdelen Utsignalerna från syntesdelen av filterbanken ges av följande samband (se föreläsning 6) som på matrisform blir Y (z) = G 0 (z)u 0 (z 2 ) + G 1 (z)u 1 (z 2 ) Y (z) = [ G 0 (z) G 1 (z) ] [ U 0 (z 2 ) U 1 (z 2 ) ] Notera att lågpassfiltret G 0 (z) eliminerar det mesta av frekvensinnehållet i π/2 ω π, medan högpassfiltret G 1 (z) eliminerar det mesta av innehållet i 0 ω π/2. Eftersom frekvenssvaren hos de två filtren överlappar så sker ingen total elimination. 223

224 QMF-bank total överföringsfunktion Tidigare samband kombinerade leder till överföringsfunktionen för hela QMF-banken Y (z) = [ G 0 (z) G 1 (z) ] 1 [ ] [ ] H0 (z) H 0 ( z) X(z) 2 H 1 (z) H 1 ( z) X( z) Detta uttryck kan också skrivas som där de två funktionerna Y (z) = T(z)X(z) + A(z)X( z) T(z) = 1 2 [G 0(z)H 0 (z) + G 1 (z)h 1 (z)] A(z) = 1 2 [G 0(z)H 0 ( z) + G 1 (z)h 1 ( z)] beskriver egenskaper m.a.p. överföring respektive vikning. 224

225 QMF-bank egenskaper För att eliminera vikningsdistorsion i filterbanken önskar vi att: A(z) = 0 Funktionen T(z) beskriver hur pass väl en signal kan rekonstrueras: vi säger att filterbanken åstadkommer perfekt rekonstruktion om dvs. en ren fördröjning. T(z) = z k Dessa två, mycket önskvärda egenskaper sammanfattas med 1 [ G0 (z) G 1 (z) ] [ ] [ ] H 0 (z) H 0 ( z) z k T =. 2 H 1 (z) H 1 ( z) 0 225

226 QMF-bank standardversionen Om vi väljer följande analys- och syntesfilter: H 0 (z) = H(z), H 1 (z) = H( z), G 0 (z) = H(z), G 1 (z) = H( z) så elimineras vikningsdistorsionen, dvs. A(z) = 0. Detta är synnerligen anmärkningsvärt eftersom samplingsteoremet inte uppfylls i någon av filterbankens grenar. Med dessa filter fås kravet på rekonstruktion via T(z) som H 2 (z) H 2 ( z) = z k som med antagandet att H(z) är ett FIR filter med linjär fas, dvs på formen H(z) = H(z)z (N 1)/2 där H(z) har noll-fas och N antas vara jämn, leder till H 2 (z) + H 2 ( z) =

227 QMF-bank standardversionen, forts Uttryckt i frekvensplanet blir detta H 2 (e jω ) + H 2 (e j(π ω) ) = 1. Alltså, den kvadrerade amplitudfunktionen A 2 (e jω ) är ett halvbands lågpassfilter medan A 2 (e j(π ω) ) är ett halvbands högpassfilter (dvs. en filtertyp som vi redan stött på!). Eftersom dessa två filterfunktioner är varandras spegelbilder i frekvensen ω = π 2 så kallas de kvadraturspegelfilter. 227

228 Tvåkanals QMF-bank med polyfasstruktur Om H 0 (z) antas ha polyfasstruktur, dvs H 0 (z) = E 0 (z 2 ) + z 1 E 1 (z 2 ) så ges analysfiltren av (kom ihåg H 1 (z) = H 0 ( z)) [ ] [ ] [ H0 (z) 1 1 E0 (z = 2 ] ) H 1 (z) 1 1 z 1 E 1 (z 2 ) och syntesfiltren av (kom ihåg G 1 (z) = G 0 ( z)) [ G0 (z) G 1 (z) ] = [ E 0 (z 2 ) z 1 E 1 (z 2 )] [ En filterbank med denna struktur kan med de samband som gäller vid kaskadkoppling för filter och upp-/nersampling göras beräkningsmässigt mera effektiv. ]. 228

229 Tvåkanals QMF-bank med polyfasstruktur, forts Vilken av dessa två filterbankar är mest beräkningseffektiv? 229

230 Föreläsning 8a: Perceptuell kodning av digital audio Leif Sörnmo 11 mars

231 Översikt Vilka fysiologiska insikter utnyttjas vid perceptuell kodning? Byggblock i en audiokodare Vad är MPEG? 231

232 Varför audiokompression? Dramatisk ökning av nätverksbaserad musik på senare år i form av internetradio och musikaffär för (legal) nerladdning, t.ex. Apples itunes Music Store. Bärbara musikspelare (MP3) med krav på att rymma hela musiksamlingar på tiotusentals låtar. Audio synkat till video, inklusive digital TV. 232

233 Systemkrav vid audiokompression Kompressionsgraden vanligen uttryckt i bithastighet för att uppnå en viss ljudkvalitet är naturligt nog det viktigaste kriteriet vid systemdesign. Möjlighet att uppnå olika ljudkvalitet för olika tillämpningar. Komplexitet hos kodare och, i synnerhet, avkodare. Fördröjning är framförallt viktig vid tvåvägskommunikation. Graden av redigerbarhet, dvs hur pass enkelt och noggrant kan man adressera sig i sekvensen av audiosampel? 233

234 Blockschema för kodare och dekodare kodare dekodare 234

235 Perceptuell modell Den avgörande frågan är Hur mycket brus kan vi introducera i en audiosignal utan att det märks? Svaret kan till stor del hittas inom området psykoakustik, dvs. det vetenskapliga område som beskriver sambandet mellan en akustisk händelse och hur det uppfattas av människoörat. Begreppet maskering är här centralt och exploateras för att uppnå en god kompressionsgrad. 235

236 Vad är maskering? Maskering beskriver den effekten som uppstår när ett svagt men likväl hörbart ljud inte längre hörs därför att ett starkare ljud inträffar samtidigt (eller nästan samtidigt). Maskeringseffekten beror på såväl tids- som frekvensegenskaper hos det starkare och det svagare ljudet. 236

237 Maskering i frekvensplanet vid tystnad Diagrammet visar tröskeln under vilken en svagare signal maskeras i frekvens av en starkare signal. Tre olika frekvenser hos den maskerande signalen anges, nämligen 250 Hz, 1 khz och 4 khz. 237

238 Maskering i frekvensplanet amplitudberoende Notera att maskeringseffekten är amplitudberoende och att den maskerar ett större frekvensområde när ljudet blir starkare. 238

239 Maskering i tidsplanet En svagare signal maskeras såväl före som efter en starkare signal i tiden en effekt som medger en begränsad tidsupplösning hos system för audiokompression. 239

240 Perceptuell audiokodning byggblock Filterbanken delar upp insignalen i lämpligt antal spektrala komponenter, som därefter kodas utifrån den kunskap som finns inbyggd i modellen för perception (läs maskering). 240

241 Perceptuell audiokodning extra byggblock Bättre kompressionsgrad kan uppnås med linjär prediktor för att ta bort redundans i signalen. Kodningen av stereosignaler kan göras mera effektiv än kodningen av två monosignaler pga den korrelation som existerar mellan de båda kanalerna. 241

242 Vilka egenskaper ska en filterbank ha? Val av frekvensupplösning. Låg eller hög? Likformiga eller ej likformiga frekvensband? Är egenskapen perfekt rekonstruktion önskvärd? Hur ska fönsterfunktionen se ut, dvs det fönster som extraherar ett block med sampel för analys av filterbanken? Fix eller adaptiv filterbanksstruktur? Den senare typen resulterar i bättre prestanda vad gäller kodningen av starka, transienta förlopp, men kräver då en mer komplex struktur. 242

243 Olika typer av filterbankar Uniform DFT-filterbank. Filterbank baserad på quadrature mirror filters (QMF). Filterbank baserad på diskreta cosinustransformen (DCT). Polyfasfilterbank. Wavelet-filterbankar (ingår ej i kursen). 243

244 Flerkanals QMF-filterbank 244

245 Hur kvantifieras ljudkvalitet? Subjektivt: Mean Opinion Score (MOS) är ett mått för subjektiv bedömning av tal&musik; definieras av en skala från 1 till 5. Begränsning: beroende på åldersgrupp, bakgrundsljudnivån i testrum, justering av ljudnivån, anläggningens kvalitet för återgivning, m.m. Objektivt: analys av den elektriska signalen som kommer direkt ut ur kodaren, och där bakgrundsljud adderats till enligt lämplig matematisk modell. Ett vanligt mått är det s.k. Perceptual Audio Quality Measure (PAQM) som dock inte beskrivs närmare i denna kurs. 245

246 Vad är MPEG? Moving Picture Experts Group (MPEG), etablerad 1988, är en arbetsgrupp inom ISO/IEC (International Standards Organization/International Electrotechnical Commission) som producerar internationella standarder för kompression, dekompression, och behandling av video och audio. Det finns f.n. tre typer av MPEG audiokodare, nämligen: 1. MPEG-1 Lager I/II/III, 2. MPEG-2 AAC (Advanced Audio Coding), och 3. MPEG-4 standarden som inkorporerar MPEG-2 AAC. 246

247 MPEG-1 Lager I och II 192 kbit/s (I), 128 kbit/s (II) 32, 44.1 och 48 khz polyfasfilterbank, 32 subband, fixt fönster Bitstream: kvantiseringsnivå för varje delband, skalfaktor för varje delband samt kvantiserade och normerade delbandssampel. 247

248 MPEG-1 Lager III (MP3) 248

249 Hur undvika blockeffekt Vid kodning av signalen sker en uppdelning i block, vilka sedan behandlas i filterbanken. Därefter kvantiseras resulterande samplen i utsignalen och skickas iväg. I avkodaren beräknas den inversa operation mha syntesfilterbanken och det rekonstruerade signalblocket läggs till i slutet av föregående signal. Eftersom varje block behandlas separat så kan blockkanteffekter uppstå i signalen. Denna effekt yttrar sig som en hörbar, periodisk störning uppstå i den rekonstruerade signalen. Botemedel: pre- och postfiltrering, som dock tyvärr reducerar förstärkningen och introducerar en lågpasseffekt vid kanterna. 249

250 Varför fungerar inte en talkodare lika bra för audiosignaler? En talkodare bygger på principer som är direkt relaterade till talapparaten, tex tonande ljud som a och icke-tonande som s. En audiokodare måste kunna hantera en rad olika signaler och måste därför bygga på mer generella designprinciper, lämpligen baserade på människans hörsel. 250

251 Sagt om audiokompression The art of perceptual audio coding is still in between research (with a solid scientific foundation) and engineering (where it is important that things work even if nobody knows why). citat från bokkapitlet av K. Brandenburg 251

252 Föreläsning 8b: Ljudeffekter i musik mha digital signalbehandling Leif Sörnmo 11 mars

253 Översikt Efterklang kortfattad bakgrund Algoritmer för efterklang Algoritmer för flanger, phasing, bas, diskant, mm 253

254 Varför är efterklang så intressant? Efterklang uppstår när ljud reflekteras mot olika ytor och delas vanligen upp i tidig och sen efterklang. Efterklang är en viktig beståndsdel för vår perception och förväntas vara på ett visst sätt beroende på om vi befinner oss i en konsertlokal, på stan eller i skogen. Efterklangens karaktär påverkar alltså vår rumsliga uppfattning, men även andra egenskaper som ljudstyrka och klangfärg. Efterklang måste nästan jämt introduceras i musik för att inte göra den torr och livlös! Å andra sidan, för mycket

255 Tidig och sen efterklang Tidig efterklang (även benämnt som eko) inträffar direkt efter det ursprungliga ljudet och uppfattas inte som separata ljudhändelser. Sen efterklang är vanligen förekommande i konsertlokaler och större kyrkor och definierar en bakgrundsambiens som distinkt skiljer sig från den tidiga efterklangen. Den sena efterklangens karaktär är framförallt avgörande om en konsertlokal bedöms ha bra akustik eller ej. 255

256 Hur kan efterklang simuleras? Fysikalisk ansats: att så noggrant som möjligt simulera hur ljudet fortplantar sig från källan till lyssnaren genom att först mäta upp rummets akustiska egenskaper. Denna ansats är ofta synonym med att man mäter upp ett rums impulssvar. Perceptuell ansats: att, på något sätt, reproducera de viktigaste egenskaperna i efterklangen så att det låter bra! 256

257 Impulssvar för ett trapphus Notera att båda typer av efterklang kan urskiljas; det tidiga omfattar knappt de första 100 millisekunderna. 257

258 Enklast möjliga algoritm för ekomodellering y(n) = x(n) + αx(n R), dvs H(z) = 1 + αz R 258

259 Enkel algoritm för multipla ekon y(n) = N 1 k=0 α k x(n kr), H(z) = N 1 k=0 α k z kr = 1 αn z NR 1 αz R 259

260 Enkel algoritm för multipla ekon, forts Detta filter brukar kallas kamfilter eftersom dess magnitudfunktion har taggar som på en kam: Den resulterande ekoeffekt är tyvärr undermålig. 260

261 Enkel algoritm för multipla ekon allpassfilter H(z) = α + z R, α < αz R 261

262 Tandfilter Den lågpassfiltrering som i verkligheten sker av efterklangen kan modelleras med följande filter H(z) = z R 1 z R G(z), där G(z) är ett FIR eller IIR lågpassfilter. Flera sådana filter, H(z), kan naturligtvis kaskadkopplas för att på så sätt ge en tätare ekodensitet. 262

263 Simulering av tvåkanaligt (binauralt), tidigt eko Schemat nedan tar en monosignal och producerar en stereosignal som har en stark spatiell effekt, bestående av direktljud och sex reflektioner varav tre används i varje kanal. Ekotiderna varierar mellan 10 och 80 ms. H LP (z) är ett enpols lågpassfilter med f c = 2 khz som simulerar riktningsinformation. 263

264 Datorros algoritm för efterklang 264

265 Algoritmer för kombinerat tidig/sen efterklang Schroeder, 1970 Moorer, 1979 I båda blockdiagrammen ovan ingår två delar vilka simulerar tidig resp. sen efterklang; den sena efterklangen modelleras väsentligen av filtret R(z) som har en exponentiellt avklingande envelopp. Parametern g reglerar balansen mellan tidig och sen efterklang. 265

266 Flanger -effekten Detta är en effekt som skapas genom att låta ljudet fördröjas (om än mycket lite) på ett tidsvariabelt sätt, definierat av y(n) = x(n) + αx(n β(n)) där fördröjningen β(n) varierar mellan 0 och R med frekvensen ω 0, β(n) = R 2 (1 cos(ω 0n)) Vad göra om β(n) inte är ett heltal, eller om samplingsfrekvensen är låg? 266

267 Chorus -effekten Chorus-effekten bygger på flanger-effekten genom att flera flangers med olika fördröjning och variationsmönster kombineras, dvs 267

268 Phasing -effekten Denna effekt erhålles genom att till originalsignalen lägga en amplitudskalad, bandspärrsfiltrerad signal. Resultatet blir att utsignalens fas varierar kraftigt och därmed får ett svävande ljud. 268

269 Bas, diskant och equalizers Ett första steg i designen av filter för bas- och diskantkontroll, såväl som equalizers, är följande första-ordningens filter H LP (z) = 1 α z 1 1 αz 1, H HP(z) = 1 + α 2 1 z 1 1 αz 1 Båda filtrens 3-dB brytfrekvens ω c bestäms av α på följande vis ( ) 2α ω c = arccos 1 + α 2 Vidare, om vi inför A 1 (z) = α z 1 1 αz 1 269

270 Bas, diskant och equalizers 2...så kan dessa filter istället skrivas som H LP (z) = 1 2 (1 A 1(z)), H HP (z) = 1 2 (1 + A 1(z)) En baskontroll kan enkelt åstadkommas med följande struktur G bas (z) = K 2 (1 A 1(z)) (1 + A 1(z)) Pss fås en diskantkontroll med följande struktur G disk (z) = 1 2 (1 A 1(z)) + K 2 (1 + A 1(z)) Filtren G bas (z) och G disk (z) har frekvenskaraktäristiker som påminner om en hylla (med variabel höjd) och kallas därför ibland shelving filter, se illustrerande diagram på nästa sida. 270

271 Bas, diskant och equalizers 3 Diskantkontrollen åstadkoms genom att byta koefficienter i den övre och undre grenen så att den övre följaktligen har K/2. 271

272 Föreläsning 9: 2D-signalbehandling Leif Sörnmo 11 mars

273 Tillämpningar Bild- och videokompression (JPEG, MPEG) Medicinsk bildbehandling (MR, CT) Mönsterigenkänning (fingeravtryck) 273

274 Översikt Linjära transformer Diskreta cosinustransformen (JPEG) Wavelettransformen (JPEG2000) 2-D filtrering 274

275 Linjära transformer 1-D Definition: om x är en N 1 vektor och T en N N matris så definierar för k = 0,..., N 1, y(k) = N 1 n=0 t(k, n)x(n) alt. y = Tx den linjära transformen av x. Matrisen T är oftast ortonormal vilket innebär att TT H = I och följaktligen T 1 = T H. Raderna i T kallas ofta för basfunktioner. 275

276 1-D DFT Vi har redan stött på denna typ av transform i samband med DFT:n där T = D (se sid 802 i Mitra) och y = Dx där d(k, n) = 1 e j2πkn/n (notera att denna definition av d(k, n) N skiljer sig något från bokens pga av normeringsfaktorn som gör att D blir ortonormal). D = e j2π/n... e j2π(n 1)/N e j2π(n 1)/N... e j2π(n 1)2 /N 276

277 1-D DCT Den 1-D diskreta cosinustransformen ges av X(k) = N 1 n=0 π(2n + 1)k x(n)cos( ) k = 0,1,..., N 1 2N För alla k kan DCT beräknas med hjälp av y = Cx där C = cos( π(1) 2N ) cos( π(1)(n 1) 2N. cos(π(2+1) 2N )... cos(π(2(n 1)+1)..... ) cos( π(2+1)(n 1) 2N )... cos( π(2(n 1)+1)(N 1) 2N ) 2N ) 277

278 DCT 1D-basfunktioner Basfunktioner för en 8-punkters DCT; numret i cirkeln relaterar sig till raden i transform-matrisen C. 278

279 1-D transformrepresentation En signal med längden N kan representeras som en linjärkombination av lika många basfunktioner. Vikterna i linjärkombinationen är den nya representationen av signalen och talar om hur de N basfunktionerna ska viktas för att summeras till den ursprungliga signalen. För DFT gäller att en signal exakt kan representeras av lika många frekvenser (jämnt fördelade över 2π). Vikterna i linjärkombinationen utgör ett spektrum och talar om hur frekvenserna (med fas) ska kombineras för att bygga upp signalen. 279

280 DCT kontra DFT DCT:n packar oftast energin i färre transformkoefficienter än vad DFT:n gör. Detta beror på att DFT:n förutsätter att den analyserade signalen är periodisk en utvidgning av existerande sampel enligt nedan. Eftersom den periodiska signalen kan innehålla språng så kommer fler koefficienter att krävas för att representera signalen, något som alltså är ofördelaktigt vid kompression. 280

281 DCT kontra DFT, forts DCT:n kan beräknas genom att ta den ursprungliga N-punkters signalen och förlänga den genom spegling, se nedan, så att en 2N-punkters signal erhålles. DCT:n erhålls väsentligen genom att ta de N första punkterna i den resulterande 2N-punkters DFT:n. Till skillnad från beräkningen av DFT:n så blir inte sprången lika uttalade här och ger därför bättre energipackning. 281

282 Basfunktioner: sinus och wavelets Ett alternativ till att mappa på basfunktioner av samma längd som signalen (och som dessutom är peridiska) är att använda basfunktioner med kortare längd (wavelets). Olika dilatation av dessa wavelets beskriver olika skalning av grundfrekvensen och representerar olika frekvenser. 282

283 Kontinuerliga wavelettransformen En mängd basfunktioner ( wavelets ) kan genereras från en moderwavelet ψ a,b (x) som translateras och skalas: ψ a,b (x) = 1 ( x b ψ a a Den kontinuerliga wavelettransformen W(a, b) av funtionen f(x) definieras då som W(a, b) = ) f(x)ψ a,b(x)dx 283

284 Dyadiska wavelettransformen Det är vanligt att man begränsar möjligheterna till translation och skalning genom att sätta a = 2 k och b = 2 k l vilket leder till att ψ k,l = 2 k/2 ψ(2 k t l). Den resulterande transformen blir dyadisk med en upplösning som representeras av 2 k. k=1 k=2 k=3 t 284

285 Haar-basfunktioner (dyadisk wavelet) 285

286 Haar-basfunktioner 286

287 Dyadiska DWT:n filterbank-tolkning Waveletkoefficienterna utgörs av de olika filternas utsignaler. Valet av wavelets (och därmed filter) kan göras på många olika vis men filterna blir alltid speglade i frekvensled. Exakt som analysdelen i en QMF-bank. 287

288 Haar-basfunktioner (olika detaljbeskrivningar) x(t) x 8 (t) y 8 (t) x 7 (t) y 7 (t) x 6 (t) y 6 (t) Amplitude x 5 (t) x 4 (t) y 5 (t) y 4 (t) x 3 (t) y 3 (t) x 2 (t) y 2 (t) x 1 (t) y 1 (t) x 0 (t) y 0 (t) Time (ms) Time (ms) 288

289 DWT Houstons skyline (analys) Notera att antalet sampel i plottarna minskar med en faktor två från nedre högra hörnet till övre vänstra (svårt att se pga av heldragna linjer) 289

290 DWT Houstons skyline (analys) Observera: lika många sampel i båda representationerna! 290

291 DWT Houstons skyline (syntes) Notera att antalet sampel i plottarna minskar med en faktor två från nedre högra hörnet till övre vänstra (svårt att se pga av heldragna linjer) 291

292 Linjära transformer 2-D Den 2-dimensionella transformen är definierad som G(m, n) = N 1 i=0 N 1 k=0 F(i, k)t(i, k, m, n) där F och G är N N matriser definierade av F(i, k) respektive G(m, n). T(i, k, m, n) kan tolkas som en N 2 N 2 matris med N rader där varje rad innehåller N stycken blockmatriser som är N N. Blocken indexeras mha m, n och elementen i varje blockmatris med i, k. 292

293 Linjära transformer separabel 2-D En 2-dimensionell transform sägs vara separabel om den kan delas upp i en produkt av radvisa och kolumnvisa komponenter, Eftersom vi kan skriva G(m, n) = T(i, k, m, n) = T r (i, m)t c (k, n) N 1 i=0 N 1 k=0 T r (i, m)f(i, k)t c (k, n) betyder detta att transformen kan beräknas i två steg, en radvis operation följd av en kolumnvis operation på den matris som resulterar från det första steget (eller vice versa). 293

294 Linjära transformer symmetrisk 2-D En 2-dimensionell transform sägs vara separabel och symmetrisk om de radvisa och kolumnvisa komponenterna är identiska, dvs. T r (i, m) T c (i, m) T(i, m), T(i, k, m, n) = T(i, m)t(k, n) och kan beräknas i två steg eftersom G(m, n) = alternativt G = TFT. N 1 i=0 N 1 k=0 T(i, m)f(i, k)t(k, n) Den 2-dimensionella DFT:n är både separabel och symmetrisk och kan därför beräknas med G = DFD, och följaktligen, eftersom D är ortonormal, ges den inversa transformen av F = D H GD H. 294

295 2-D DCT Den 2-D diskreta cosinustransformen definieras av N 1 N 1 ( ) ( π(2i + 1)m π(2k + 1)n G(m, n) = F(i, k)cos cos 2N 2N i=0 k=0 ) DCT:n kan också beräknas mha följande matrismultiplikation G = CFC där elementen i C definieras av C(i, m) = cos ( ) π(2i+1)m 2N. Vi noterar att DCT:n är reell. 295

296 DCT 2D-basfunktioner (basmatriser) Resulterande blockmatriser om de olika raderna i C (se föreg. bild) multipliceras med varandra. Dessa 8 8 blockmatriser viktas ihop med lämpliga koefficienter för att ge den rekonstruerade bilden. 296

297 Haar-transformen (wavelet) 2D-basfunktioner Bättre hantering av kanter fås med denna Haartransformen. 297

298 JPEG kompression Bilden delas först upp i färgkomponenter Varje färgkomponent i bilden delas sedan upp i makroblock (8x8 pixlar) där varje pixel till exempel representeras med 8 bitar med värden mellan 0 och 255. Dessa värden måste justeras att ligga kring 128 eftersom basfunktionerna i DCT är symmetriska kring noll. 298

299 JPEG kompression Varje makroblock transformeras mha 2-D DCT G(m, n) till en matris som anger hur de 8x8 stycken basmatriserna (varje 8x8 pixlar) ska viktas ihop för att återskapa den ursprungliga bilden. G(m,n) Lågfrekvens-basmatriserna är de som betyder mest för bilden. 299

300 JPEG kompression Kvantisering av en koefficient G(m, n) görs mha en kvantiseringstabell (se nedan) där Q(m, n) representerar elementet med index (m, n). Följande uttryck används för att beräkna varje kvantiserad koefficient G(m, n): G(m, n) = G(m, n) Q(m, n) Q(m,n) 300

301 JPEG kompression ett exempel Bilder komprimerade med JPEG-algoritmen för 0.5 bitar resp bitar per pixel. 301

302 Wavelet-baserad bildkompression Bygger på samma principer som filterbankstolkningen av 1-D DWT. Eftersom 2-D DWT är separabel motsvaras den av en 1-D DWT i varje riktning. Detta betyder filtrering och nedsampling i både x- och y-led. Hela bilden processas i ett block. 302

303 1-level 2D-DWT 303

304 3-level 2D-DWT Finessen är att de många nollorna kan kodas effektivt. 304

DigSig AV. Repetition. Leif Sörnmo 10 maj 2007

DigSig AV. Repetition. Leif Sörnmo 10 maj 2007 DigSig AV Repetition Leif Sörnmo 10 maj 2007 1 Syftet med digital filterdesign Att bestämma en realiserbar överföringsfunktion G(z) så att den approximerar en given specifikation på frekvensfunktion. För

Läs mer

Innehåll. Innehåll. sida i

Innehåll. Innehåll. sida i 1 Introduktion... 1.1 1.1 Kompendiestruktur... 1.1 1.2 Inledning... 1.1 1.3 Analogt/digitalt eller tidskontinuerligt/tidsdiskret... 1.2 1.4 Konventioner... 1.3 1.5 Varför digital signalbehandling?... 1.4

Läs mer

DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1. Frekvensfunktioner FREKVENSSVAR FÖR ETT TIDSDISKRET SYSTEM. x(n)= Asin(Ωn)

DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1. Frekvensfunktioner FREKVENSSVAR FÖR ETT TIDSDISKRET SYSTEM. x(n)= Asin(Ωn) DIGITALA FILTER TILLÄMPAD FYSIK OCH ELEKTRONIK, UMEÅ UNIVERSITET 1 Frekvensfunktioner x(n)= Asin(Ωn) y(n) H(z) TILLÄMPAD FYSIK OCH ELEKTRONIK, UMEÅ UNIVERSITET 2 FREKVENSSVAR FÖR ETT TIDSDISKRET SYSTEM

Läs mer

Spektrala Transformer

Spektrala Transformer Spektrala Transformer Kurssammanfattning Fyra kärnkoncept Sampling Faltning Poler och nollställen Fouriertransform Koncept #1: Sampling En korrekt samplad signal kan rekonstrueras exakt, dvs ingen information

Läs mer

FÖRELÄSNING 13: Analoga o p. 1 Digitala filter. Kausalitet. Stabilitet. Ex) på användning av analoga p. 2 filter = tidskontinuerliga filter

FÖRELÄSNING 13: Analoga o p. 1 Digitala filter. Kausalitet. Stabilitet. Ex) på användning av analoga p. 2 filter = tidskontinuerliga filter FÖRELÄSNING 3: Analoga o p. Digitala filter. Kausalitet. Stabilitet. Analoga filter Ideala filter Butterworthfilter (kursivt här, kommer inte på tentan, men ganska bra för förståelsen) Kausalitet t oh

Läs mer

Implementering av digitala filter

Implementering av digitala filter Kapitel 9 Implementering av digitala filter Som vi sett i kapitel 8 kan det behövas ett mycket stort antal koefficienter för att representera ett digitalt filter. Detta gäller i synnerhet FIR filter. Det

Läs mer

DT1130 Spektrala transformer Tentamen

DT1130 Spektrala transformer Tentamen DT Spektrala transformer Tentamen 72 Tentamen består av fem uppgifter där varje uppgift maximalt ger 4 p. Normalt gäller följande betygsgränser: E: 9 p, D:.5 p, C: 4 p, B: 6 p, A: 8 p Tillåtna hjälpmedel:

Läs mer

Resttentamen i Signaler och System Måndagen den 11.januari 2010, kl 14-19

Resttentamen i Signaler och System Måndagen den 11.januari 2010, kl 14-19 Resttentamen i Signaler och System Måndagen den 11.januari 2010, kl 14-19 Tillåtna hjälpmedel: Valfri miniräknare (utan möjlighet till trådlös kommunkation). Valfri litteratur, inkl. kursböcker, formelsamlingar.

Läs mer

Tentamen i TMA 982 Linjära System och Transformer VV-salar, 27 aug 2013, kl

Tentamen i TMA 982 Linjära System och Transformer VV-salar, 27 aug 2013, kl Tentamen i TMA 982 Linjära System och Transformer VV-salar, 27 aug 2013, kl 8.30-12.30 Examinatorer: Lars Hammarstrand och Thomas Wernstål Tentamen består av två delar (Del I och Del II) på sammanlagt

Läs mer

Laplace, Fourier och resten varför alla dessa transformer?

Laplace, Fourier och resten varför alla dessa transformer? Laplace, Fourier och resten varför alla dessa transformer? 1 Bakgrund till transformer i kontinuerlig tid Idé 1: Representera in- och utsignaler till LTI-system i samma basfunktion Förenklad analys! Idé

Läs mer

TIDSDISKRETA SYSTEM SYSTEMEGENSKAPER. Minne Kausalitet Tidsinvarians. Linjäritet Inverterbarhet Stabilitet. System. Tillämpad Fysik och Elektronik 1

TIDSDISKRETA SYSTEM SYSTEMEGENSKAPER. Minne Kausalitet Tidsinvarians. Linjäritet Inverterbarhet Stabilitet. System. Tillämpad Fysik och Elektronik 1 TIDSDISKRETA SYSTEM TILLÄMPAD FYSIK OCH ELEKTRONIK, UMEÅ UNIVERSITET 1 SYSTEMEGENSKAPER x[n] System y[n] Minne Kausalitet Tidsinvarians Linjäritet Inverterbarhet Stabilitet TILLÄMPAD FYSIK OCH ELEKTRONIK,

Läs mer

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University Exempelsamling Grundläggande systemmodeller Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University Version: 0.11 September 14, 2015 Uppgifter markerade med (A)

Läs mer

DT1130 Spektrala transformer Tentamen

DT1130 Spektrala transformer Tentamen DT3 Spektrala transformer Tentamen 3 Tentamen består av fem uppgifter där varje uppgift maximalt ger 4 p. Normalt gäller följande betygsgränser: E: 9 p, D:.5 p, C: 4 p, B: 6 p, A: 8 p Tillåtna hjälpmedel:

Läs mer

RÄKNEEXEMPEL FÖRELÄSNINGAR Signaler&System del 2

RÄKNEEXEMPEL FÖRELÄSNINGAR Signaler&System del 2 t 1) En tidskontinuerlig signal x( t) = e 106 u( t) samplas med sampelperioden 1 µs, varefter signalen trunkeras till 5 sampel. Den så erhållna signalen får utgöra insignal till ett tidsdiskret LTI-system

Läs mer

DT1130 Spektrala transformer Tentamen

DT1130 Spektrala transformer Tentamen DT3 Spektrala transformer Tentamen 5 Tentamen består av fem uppgifter där varje uppgift maximalt ger p. Normalt gäller följande betygsgränser: E: 9 p, D:.5 p, C: p, B: 6 p, A: 8 p Tillåtna hjälpmedel:

Läs mer

DT1120/DT1130 Spektrala transformer Tentamen

DT1120/DT1130 Spektrala transformer Tentamen DT/DT3 Spektrala transformer Tentamen 86 Tentamen består av fem uppgifter där varje uppgift maximalt ger 4 p. Normalt gäller följande betygsgränser: E: 9 p, D:.5 p, C: 4 p, B: 6 p, A: 8 p Tillåtna hjälpmedel:

Läs mer

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University

Exempelsamling Grundläggande systemmodeller. Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University Exempelsamling Grundläggande systemmodeller Klas Nordberg Computer Vision Laboratory Department of Electrical Engineering Linköping University Version: 0.1 August 25, 2015 Uppgifter markerade med (A) är

Läs mer

REGLERTEKNIK Laboration 5

REGLERTEKNIK Laboration 5 6 SAMPLADE SYSTEM 6. Sampling av signaler När man använder en dator som regulator, kan man endast behandla signaler i diskreta tidpunkter. T.ex. mäts systemets utsignal i tidpunkter med visst mellanrum,

Läs mer

1. Vi har givet två impulssvar enligt nedan (pilen under sekvenserna indikerar den position där n=0) h 1 (n) = [ ]

1. Vi har givet två impulssvar enligt nedan (pilen under sekvenserna indikerar den position där n=0) h 1 (n) = [ ] TEKNISKA HÖGSKOLAN I LUND Institutionen för elektro- och informationsteknik Kurskod: ESS00 Tentamen i Digital Signalbehanding Datum: 0 5 Time period: 08.00 3.00 Bedömning: Sex uppgifter. Varje uppgift

Läs mer

DT1130 Spektrala transformer Tentamen

DT1130 Spektrala transformer Tentamen DT3 Spektrala transformer Tentamen 6 Tentamen består av fem uppgifter där varje uppgift maximalt ger 4 p. Normalt gäller följande betygsgränser: E: 9 p, D:.5 p, C: 4 p, B: 6 p, A: 8 p Tillåtna hjälpmedel:

Läs mer

Vad gör vi när vi bara har en mätserie och ingen elegant matematisk funktion? Spektrum av en samplad signal. Trunkering i tiden

Vad gör vi när vi bara har en mätserie och ingen elegant matematisk funktion? Spektrum av en samplad signal. Trunkering i tiden Vad gör vi när vi bara har en mätserie och ingen elegant matematisk funktion? 1 Spektrum av en samplad signal Samplingsprocessen kan skrivas som Fouriertranformen kan enligt linjäritetsoch tidsskiftsatsen

Läs mer

Tentamen i ESS 010 Signaler och System E3 V-sektionen, 16 augusti 2005, kl 8.30 12.30

Tentamen i ESS 010 Signaler och System E3 V-sektionen, 16 augusti 2005, kl 8.30 12.30 Tentamen i ESS 00 Signaler och System E3 V-sektionen, 6 augusti 2005, kl 8.30 2.30 Examinator: Mats Viberg Tentamen består av 5 uppgifter som vardera ger maximalt 0 p. För godkänd tentamen fordras ca 20

Läs mer

Teori... SME118 - Mätteknik & Signalbehandling SME118. Johan Carlson 2. Teori... Dagens meny

Teori... SME118 - Mätteknik & Signalbehandling SME118. Johan Carlson 2. Teori... Dagens meny Tidigare har vi gått igenom Fourierserierepresentation av periodiska signaler och Fouriertransform av icke-periodiska signaler. Fourierserierepresentationen av x(t) ges av: där a k = 1 T + T a k e jkω

Läs mer

Tentamen ssy080 Transformer, Signaler och System, D3

Tentamen ssy080 Transformer, Signaler och System, D3 Tentamen ssy080 Transformer, Signaler och System, D3 Examinator: Ants R. Silberberg oktober 009 kl. 4.00-8.00 lokal: Johanneberg Förfrågningar: Ants Silberberg, tel. 808 Lösningar: Anslås torsdag okt.

Läs mer

Kompletterande räkneuppgifter i Spektrala Transformer Komplex analys, sampling, kvantisering, serier och filter Laura Enflo & Giampiero Salvi

Kompletterande räkneuppgifter i Spektrala Transformer Komplex analys, sampling, kvantisering, serier och filter Laura Enflo & Giampiero Salvi Kompletterande räkneuppgifter i Spektrala Transformer Komplex analys, sampling, kvantisering, serier och filter & Giampiero Salvi Komplex analys Om man endast använder den reella tallinjen är det inte

Läs mer

Elektronik 2018 EITA35

Elektronik 2018 EITA35 Elektronik 218 EITA35 Föreläsning 1 Filter Lågpassfilter Högpassfilter (Allpassfilter) Bodediagram Hambley 296-32 218-1-2 Föreläsning 1, Elektronik 218 1 Laboration 2 Förberedelseuppgifter! (Ingen anmälan

Läs mer

Föreläsning 6: Spektralskattning: icke parametriska metoder. Leif Sörnmo 4 oktober 2009

Föreläsning 6: Spektralskattning: icke parametriska metoder. Leif Sörnmo 4 oktober 2009 Föreläsning 6: Spektralskattning: icke parametriska metoder Leif Sörnmo 4 oktober 2009 1 Metoder för spektralskattning icke-parametriska korrelogram, periodogram fönstring, medelvärdesbildning minimum-varians

Läs mer

Kan vi beskriva ett system utan någon fysikalisk kännedom om systemet?

Kan vi beskriva ett system utan någon fysikalisk kännedom om systemet? Kan vi beskriva ett system utan någon fysikalisk kännedom om systemet? 1 Om svaret på frågan är ja så öppnar sig möjligheten att skapa en generell verktygslåda som fungerar för analys och manipulering

Läs mer

Spektrala Transformer

Spektrala Transformer Spektrala Transformer Tidsdiskreta signaler, kvantisering & sampling Tidsdiskreta signaler Tidskontinuerlig signal Ex: x(t) = sin(ωt) t är ett reellt tal ω har enheten rad/s Tidsdiskret signal Ex: x(n)

Läs mer

Signal- och bildbehandling TSBB03

Signal- och bildbehandling TSBB03 Tentamen i Signal- och bildbehandling TSBB3 Tid: 28-5-29 kl. 8-2 Lokal: TER2 Ansvarig lärare: Maria Magnusson besöker lokalen kl. 9. och.4 tel 73-84 38 67 Hjälpmedel: Räknedosa, medskickad formelsamling,

Läs mer

TSBB16 Datorövning A Samplade signaler Faltning

TSBB16 Datorövning A Samplade signaler Faltning Name: ID number: Passed: LiU-ID: Date: TSBB16 Datorövning A Samplade signaler Faltning Utvecklad av Klas Nordberg Computer Vision Laboratory, Linköping University, Sweden 24 augusti 2015 Introduktion Denna

Läs mer

DIGITALA FILTER DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1

DIGITALA FILTER DIGITALA FILTER. Tillämpad Fysik Och Elektronik 1 DIGITALA FILTER TILLÄMPAD FYIK OCH ELEKTRONIK, UMEÅ UNIVERITET 1 DIGITALA FILTER Digitala filter förekommer t.ex.: I Photoshop och andra PC-programvaror som filtrerar. I apparater med signalprocessorer,

Läs mer

Elektronik. Dataomvandlare

Elektronik. Dataomvandlare Elektronik Dataomvandlare Johan Wernehag Institutionen för elektro- och informationsteknik Lunds universitet 2 Översikt Analoga och digitala signaler Nyquistteorem Kvantiseringsfel i analog-till-digital

Läs mer

TSDT15 Signaler och System

TSDT15 Signaler och System TSDT5 Signaler och System DATORUPPGIFTER VÅREN 03 OMGÅNG Mikael Olofsson, mikael@isy.liu.se Efter en förlaga av Lasse Alfredsson February, 03 Denna uppgiftsomgång behandlar faltning samt system- & signalanalys

Läs mer

GRUNDKURS I SIGNALBEHANDLING (454300), 5sp Tentamen

GRUNDKURS I SIGNALBEHANDLING (454300), 5sp Tentamen GRUNDKURS I SIGNALBEHANDLING (454300), 5sp Tentamen 26.02013 kursens övningsuppgifter eller gamla tentamensuppgifter, eller Matlab-, Scilab- eller Octave- programmerbara kalkylatorer eller datorer. 1.

Läs mer

Tentamen ssy080 Transformer, Signaler och System, D3

Tentamen ssy080 Transformer, Signaler och System, D3 Tentamen ssy080 Transformer, Signaler och System, D3 Examinator: Ants R. Silberberg 19 oktober 2011 kl. 08.30-12.30 sal: Hörsalsvägen Förfrågningar: Ants Silberberg, tel. 1808 Lösningar: Anslås torsdag

Läs mer

Signal- och bildbehandling TSEA70

Signal- och bildbehandling TSEA70 Tentamen i Signal- och bildbehandling TSEA70 Tid: 000-03-8 kl. 4-8 Lokaler: Garnisonen Ansvariga lärare: Olle Seger, Maria M Seger besöker lokalerna kl 500 och 700 tel 070/33 79 48 Hjälpmedel: Räknedosa,

Läs mer

Elektronik Dataomvandlare

Elektronik Dataomvandlare Elektronik Översikt Analoga och digitala signaler Dataomvandlare Pietro Andreani Institutionen för elektro- och informationsteknik Lunds universitet Nyquistteorem Kvantiseringsfel i analog-till-digital

Läs mer

Laplace, Fourier och resten varför alla dessa transformer?

Laplace, Fourier och resten varför alla dessa transformer? Laplace, Fourier och resten varför alla dessa transformer? 1 Vi har sett hur ett LTI-system kan ges en komplett beskrivning av dess impulssvar. Genom att falta insignalen med impulssvaret erhålls systemets

Läs mer

Spektrala Transformer

Spektrala Transformer Spektrala Transformer Tidsdiskreta signaler, kvantisering & sampling Tidsdiskreta signaler Tidskontinuerlig signal Ex: x(t) = sin(ωt) t är ett reellt tal ω har enheten rad/s Tidsdiskret signal Ex: x(n)

Läs mer

Syntes av digitala filter

Syntes av digitala filter Kapitel 8 Syntes av digitala filter 8. Digitala filter I kapitel 7 hade vi sambandet (7.8) för ett linjärt system, enligt vilket utsignalens z-transform är insignalens transform multiplicerad med systemets

Läs mer

Sammanfattning TSBB16

Sammanfattning TSBB16 Sammanfattning TSBB16 Frekvensfunktion =H(omega) Kombinationen av amplitud och faskarakteristik är unik. H(ω) = D(ω) e^jψ(ω)=y(t)/x(t). Detta är frekvensfunktionen. H(ω)=utsignal/insignal D(ω) = H(ω).

Läs mer

System. Z-transformen. Staffan Grundberg. 8 februari 2016

System. Z-transformen. Staffan Grundberg. 8 februari 2016 Z-transformen 8 februari 2016 Innehåll Z-transformen Tidsdiskreta LTI-system Överföringsfunktioner Frekvensegenskaper Z-transformen Z-transformen av en tidsdiskret signal y[n] ges av Y (z) = Z[y] = y[n]z

Läs mer

Försättsblad till skriftlig tentamen vid Linköpings universitet G33(1) TER4(63)

Försättsblad till skriftlig tentamen vid Linköpings universitet G33(1) TER4(63) Försättsblad till skriftlig tentamen vid Linköpings universitet Datum för tentamen 2017-01-07 Sal (2) G33(1) TER4(63) Tid 8-12 Kurskod TSBB16 Provkod TEN2 Kursnamn/benämning Provnamn/benämning Institution

Läs mer

Frekvensplanet och Bode-diagram. Frekvensanalys

Frekvensplanet och Bode-diagram. Frekvensanalys Frekvensplanet och Bode-diagram Frekvensanalys Signaler Allt inom elektronik går ut på att manipulera signaler genom signalbehandling (Signal Processing). Analog signalbehandling Kretsteori: Nod-analys,

Läs mer

AD-DA-omvandlare. Mätteknik. Ville Jalkanen. ville.jalkanen@tfe.umu.se 1

AD-DA-omvandlare. Mätteknik. Ville Jalkanen. ville.jalkanen@tfe.umu.se 1 AD-DA-omvandlare Mätteknik Ville Jalkanen ville.jalkanen@tfe.umu.se Inledning Analog-digital (AD)-omvandling Digital-analog (DA)-omvandling Varför AD-omvandling? analog, tidskontinuerlig signal Givare/

Läs mer

TSRT91 Reglerteknik: Föreläsning 5

TSRT91 Reglerteknik: Föreläsning 5 TSRT9 Reglerteknik: Föreläsning 5 Martin Enqvist Reglerteknik Institutionen för systemteknik Linköpings universitet Föreläsningar / 23 Inledning, grundläggande begrepp. 2 Matematiska modeller. Stabilitet.

Läs mer

Signal- och bildbehandling TSEA70

Signal- och bildbehandling TSEA70 Tentamen i Signal- och bildbehandling TSEA70 Tid: 2003-08-22 kl. 4-8 Lokaler: G36 Ansvarig lärare: Maria Magnusson Seger besöker lokalen kl. 6.00. tel 0702/33 79 48 Hjälpmedel: Räknedosa, OH-film, medskickad

Läs mer

Digital Signalbehandling i Audio/Video

Digital Signalbehandling i Audio/Video Digital Signalbehandling i Audio/Video Institutionen för Elektrovetenskap Laboration 1 (del 2) Stefan Dinges Lund 25 2 Kapitel 1 Digitala audioeffekter Den här delen av laborationen handlar om olika digitala

Läs mer

Signal- och Bildbehandling, TSBB14. Laboration 2: Sampling och rekonstruktion. DFT.

Signal- och Bildbehandling, TSBB14. Laboration 2: Sampling och rekonstruktion. DFT. Signal- och Bildbehandling, TSBB4 Laboration : Sampling och rekonstruktion. DFT. Maria Magnusson, 7-8 Avdelningen för Datorseende, Institutionen för Systemteknik, Linköpings Universitet Laboration. Förberedelser

Läs mer

Övningar med Digitala Filter med exempel på konstruktion och analys i MatLab

Övningar med Digitala Filter med exempel på konstruktion och analys i MatLab Övningar med Digitala Filter med exempel på konstruktion och analys i MatLab Eddie Alestedt Vt-2002 Digitala filter Digitala filter appliceras på samplade signaler och uppvisar helt andra egenskaper än

Läs mer

Elektronik Dataomvandlare

Elektronik Dataomvandlare Elektronik Översikt Analoga och digitala signaler Dataomvandlare Pietro Andreani Institutionen för elektro- och informationsteknik Lunds universitet Nyquistteorem Kvantiseringsfel i analog-till-digital

Läs mer

Signal- och bildbehandling TSBB14

Signal- och bildbehandling TSBB14 Tentamen i Signal- och bildbehandling TSBB Tid: 3-5-3 Lokaler: TER Ansvarig lärare: Maria Magnusson besöker lokalen kl. 8.5 och.3 tel 73-8 38 67 Hjälpmedel: Räknedosa, medskickad formelsamling, OH-film,

Läs mer

Digitala filter. FIR Finit Impulse Response. Digitala filter. Digitala filter. Digitala filter

Digitala filter. FIR Finit Impulse Response. Digitala filter. Digitala filter. Digitala filter Digitala filter Digitala filter FIR Finit Impulse Response Digitala filter förekommer t.ex.: I Matlab, Photoshop oh andra PCprogramvaror som filtrerar. I apparater med signalproessorer, t.ex. mobiltelefoner,

Läs mer

Signal- och bildbehandling TSBB03

Signal- och bildbehandling TSBB03 Tentamen i Signal- och bildbehandling TSBB03 Tid: 2004-06-0 kl. 8-2 Lokaler: Garnisonen Ansvarig lärare: Maria Magnusson Seger besöker lokalen kl. 9.00 och 0.45. tel 073-804 38 67 Hjälpmedel: Räknedosa,

Läs mer

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna 15-18, 30/11-12/

Uppsala Universitet Matematiska Institutionen Bo Styf. Sammanfattning av föreläsningarna 15-18, 30/11-12/ Uppsala Universitet Matematiska Institutionen Bo Styf Transformmetoder, 5 hp ES, gyl, Q, W 0-0-9 Sammanfattning av föreläsningarna 5-8, 30/ - / 0. Z-transformen ska avslutas och sedan blir det tentaförberedelser.

Läs mer

Tentamen i Signaler och kommunikation, ETT080

Tentamen i Signaler och kommunikation, ETT080 Inst. för informationsteknologi Tentamen i Signaler och kommunikation, ETT080 2 juni 2006, kl 14 19 Skriv namn och årskurs på alla papper. Börja en ny lösning på ett nytt papper. Använd bara en sida av

Läs mer

Diskreta signaler och system

Diskreta signaler och system Kapitel 7 Diskreta signaler och system I detta kapitel diskuteras grundläggande teori för diskreta signaler och system. För diskreta signaler introduceras z-transformen, som ligger som grund för representationen

Läs mer

Föreläsning 10, Egenskaper hos tidsdiskreta system

Föreläsning 10, Egenskaper hos tidsdiskreta system Föreläsning 10, Egenskaper hos tidsdiskreta system Reglerteknik, IE1304 1 / 26 Innehåll Kapitel 18.1. Skillnad mellan analog och digital reglering 1 Kapitel 18.1. Skillnad mellan analog och digital reglering

Läs mer

Flerdimensionella signaler och system

Flerdimensionella signaler och system Luleå tekniska universitet Avd för signalbehandling Magnus Sandell (reviderad av Frank Sjöberg) Flerdimensionell signalbehandling SMS033 Laboration 1 Flerdimensionella signaler och system Syfte: Den här

Läs mer

i(t) C i(t) = dq(t) dt = C dy(t) dt y(t) + (4)

i(t) C i(t) = dq(t) dt = C dy(t) dt y(t) + (4) 2 Andra lektionen 2. Impulssvar 2.. En liten krets Beräkna impulssvaret för kretsen i figur genom att beräkna hur y(t) beror av x(t). R x(t) i(t) C y(t) Figur : Första ordningens lågpassfilter. Utsignalen

Läs mer

Lösningar till Övningsuppgifter

Lösningar till Övningsuppgifter Lösningar till Övningsuppgifter Digital Signal Processing Övningar med svar och lösningar Mikael Swartling Nedelko Grbic Bengt Mandersson rev. 07 Department of Electrical and Information Technology Lund

Läs mer

Bildbehandling i frekvensdomänen

Bildbehandling i frekvensdomänen Uppsala Tekniska Högskola Signaler och system Handledare: Mathias Johansson Uppsala 2002-11-27 Bildbehandling i frekvensdomänen Erika Lundberg 800417-1602 Johan Peterson 790807-1611 Terese Persson 800613-0267

Läs mer

TSKS21 Signaler, Information och Bilder Lab 2: Digitalisering

TSKS21 Signaler, Information och Bilder Lab 2: Digitalisering TSKS21 Signaler, Information och Bilder Lab 2: Digitalisering Mikael Olofsson 8 februari 2017 Fyll i detta med bläckpenna Laborant Personnummer Datum Godkänd 1 1 Allmänt Denna laboration syftar till att

Läs mer

Spektrala Transformer

Spektrala Transformer Spektrala Transformer Fouriertransformer Fourier Gif mig en wågform och jag skola skrifva den som en summa af sinuswågor! Jean-Baptiste Fourier 1768-1830 Fouriertransformen Transformerar kontinuerliga

Läs mer

Försättsblad till skriftlig tentamen vid Linköpings universitet KÅRA T1 T2 U2 U4

Försättsblad till skriftlig tentamen vid Linköpings universitet KÅRA T1 T2 U2 U4 Försättsblad till skriftlig tentamen vid Linköpings universitet Datum för tentamen 2016-10-28 Sal (5) KÅRA T1 T2 U2 U4 Tid 8-12 Kurskod TSBB16 Provkod TEN2 Kursnamn/benämning Provnamn/benämning Grundläggande

Läs mer

Spektrala Transformer

Spektrala Transformer Spektrala Transformer Fouriertransformer Fourier Gif mig en wågform och jag skola skrifva den som en summa af sinuswågor! Jean-Baptiste Fourier 768-830 Fouriertransformen Transformerar kontinuerliga signaler

Läs mer

LUNDS TEKNISKA HÖGSKOLA Inst. for Elektro- och Informationsteknik. SIGNALBEHANDLING I MULTIMEDIA, ETI265 Inlämningsuppgift 1 (av 2), Task 1 (out of 2)

LUNDS TEKNISKA HÖGSKOLA Inst. for Elektro- och Informationsteknik. SIGNALBEHANDLING I MULTIMEDIA, ETI265 Inlämningsuppgift 1 (av 2), Task 1 (out of 2) LUNDS TEKNISKA HÖGSKOLA Inst. for Elektro- och Informationsteknik SIGNALBEHANDLING I MULTIMEDIA, ETI65 Inlämningsuppgift (av ), Task (out of ) Inlämningstid: Inlämnas senast kl 7. fredagen den 5:e maj

Läs mer

Impulssvaret Betecknas h(t) respektive h(n). Impulssvaret beskriver hur ett system reagerar

Impulssvaret Betecknas h(t) respektive h(n). Impulssvaret beskriver hur ett system reagerar 6 Sjätte lektionen 6.1 Transformvärlden 6.1.1 Repetera Rita upp en tankekarta över följande begrepp där du anger hur de hänger ihop och hur de betecknas. Vad beskriver de? Impulssvaret Amplitudsvaret (frekvensgången)

Läs mer

Musikeffekter med signalprocessor

Musikeffekter med signalprocessor Musikeffekter med signalprocessor Realtidsimplementation på plattformen C6416T DSK LARS BACKEFELDT SVEN JACOBSSON HAMPUS MALMBERG HAMPUS EKSTRAND EMIL LINDQVIST JOHAN TOFT Kandidatarbete vid institutionen

Läs mer

Ulrik Söderström 20 Jan Signaler & Signalanalys

Ulrik Söderström 20 Jan Signaler & Signalanalys Ulrik Söderström ulrik.soderstrom@tfe.umu.se 20 Jan 2009 Signaler & Signalanalys Sinusspänning Sinus och cosinus samma form men fasförskjutna Fasförskjutning tidsfördröjning Sinus och cosinus är väldigt

Läs mer

Signalanalys med snabb Fouriertransform

Signalanalys med snabb Fouriertransform Laboration i Fourieranalys, MVE030 Signalanalys med snabb Fouriertransform Den här laborationen har två syften: dels att visa lite på hur den snabba Fouriertransformen fungerar, och lite om vad man bör

Läs mer

Övningsuppgifter. Digital Signal Processing. Övningar med svar och lösningar. Mikael Swartling Nedelko Grbic Bengt Mandersson. rev.

Övningsuppgifter. Digital Signal Processing. Övningar med svar och lösningar. Mikael Swartling Nedelko Grbic Bengt Mandersson. rev. Övningsuppgifter Digital Signal Processing Övningar med svar och lösningar Mikael Swartling Nedelko Grbic Bengt Mandersson rev. 17 Department of Electrical and Information Technology Lund University Introduktion

Läs mer

Signaler några grundbegrepp

Signaler några grundbegrepp Kapitel 2 Signaler några grundbegrepp I detta avsnitt skall vi behandla några grundbegrepp vid analysen av signaler. För att illustrera de problemställningar som kan uppstå skall vi först betrakta ett

Läs mer

2F1120 Spektrala transformer för Media Tentamen

2F1120 Spektrala transformer för Media Tentamen F Spektrala transformer för Media Tentamen 68 Tentamen består av fem uppgifter där varje uppgift maximalt ger p. Normalt gäller följande betygsgränser: :9 p, : p, 5: 7 p Tillåtna hjälpmedel: räknare, formelblad

Läs mer

DT1120 Spektrala transformer för Media Tentamen

DT1120 Spektrala transformer för Media Tentamen DT Spektrala transformer för Media Tentamen 77 Tentamen består av fem uppgifter där varje uppgift maximalt ger 4 p. Normalt gäller följande betygsgränser: 3:9 p, 4: 3 p, 5: 7 p Tillåtna hjälpmedel: räknare,

Läs mer

Kryssproblem (redovisningsuppgifter).

Kryssproblem (redovisningsuppgifter). Uppsala Universitet Matematiska Institutionen Bo Styf Transformmetoder, 5 hp ES, gyl, Q, W 212-1-29 Kryssproblem (redovisningsuppgifter). Till var och en av de tio lektionerna hör två problem som du ska

Läs mer

Signal- och bildbehandling TSBB14

Signal- och bildbehandling TSBB14 Tentamen i Signal- och bildbehandling TSBB4 Tid: -5-8 Lokaler: TER3 Ansvarig lärare: Maria Magnusson besöker lokalen kl. 8.45 och.45 tel 8336, 73-84 38 67 Hjälpmedel: Räknedosa, medskickad formelsamling,

Läs mer

Elektronik. Viktor Öwall, Digital ASIC Group, Dept. of Electroscience, Lund University, Sweden-

Elektronik. Viktor Öwall, Digital ASIC Group, Dept. of Electroscience, Lund University, Sweden- Analogt och Digital Bertil Larsson Viktor Öwall Analoga och Digitala Signaler Analogt Digitalt 001100101010100000111110000100101010001011100010001000100 t Analogt kontra Digitalt Analogt få komponenter

Läs mer

Föreläsning 1: Signaler, matriser och processer. Leif Sörnmo 28 augusti 2009

Föreläsning 1: Signaler, matriser och processer. Leif Sörnmo 28 augusti 2009 Föreläsning 1: Signaler, matriser och processer Leif Sörnmo 28 augusti 2009 1 Optimal Signalbehandling kontra Digital Signalbehandling? stokastisk modellering av signalen, metoddesign baserad på signalens

Läs mer

SF1635, Signaler och system I

SF1635, Signaler och system I SF65, Signaler och system I Tentamen tisdagen 4--4, kl 8 Hjälpmedel: BETA Mathematics Handbook. Formelsamling i Signalbehandling rosa), Formelsamling för Kursen SF65 ljusgrön). Obs : Obs : Obs : Obs 4:

Läs mer

Ulrik Söderström 19 Jan Signalanalys

Ulrik Söderström 19 Jan Signalanalys Ulrik Söderström ulrik.soderstrom@tfe.umu.se 9 Jan 200 Signaler & Signalanalys l Sinusspänning Sinus och cosinus samma form men fasförskjutna Fasförskjutning tidsfördröjning Sinus och cosinus är väldigt

Läs mer

Spektralanalys - konsten att hitta frekvensinnehållet i en signal

Spektralanalys - konsten att hitta frekvensinnehållet i en signal Spektralanalys - konsten att hitta frekvensinnehållet i en signal Bengt Carlsson, Erik Gudmundson och Marcus Björk Systems and Control Dept. of Information Technology, Uppsala University 7 november 013

Läs mer

Vad gör vi när vi bara har en mätserie och ingen elegant matematisk funktion?

Vad gör vi när vi bara har en mätserie och ingen elegant matematisk funktion? Vad gör vi när vi bara har en mätserie och ingen elegant matematisk funktion? 1 Ett problem med Fourier- och Laplacetransformen är att de kräver att signalen som skall transformeras kan skrivas som en

Läs mer

Signal- och bildbehandling TSEA70

Signal- och bildbehandling TSEA70 Tentamen i Signal- och bildbehandling TSEA70 Tid: 00-05-8 kl. -8 Lokaler: G, G Ansvarig lärare: Maria Magnusson Seger besöker lokalen kl. 5 och 7. tel Hjälpmedel: Räknedosa, OH-film, medskickad formelsamling

Läs mer

Filter. Mätteknik. Ville Jalkanen, TFE, UmU. 1

Filter. Mätteknik. Ville Jalkanen, TFE, UmU. 1 Filter Mätteknik Ville Jalkanen, TFE, UmU ville.jalkanen@umu.se 1 Decibel (db) Förstärkningen anges ofta i decibel (db) A V(dB) = 20 log 10 A V Exempel: En A V = 10 ggr motsvaras av 20 log 10 10 = 20 db

Läs mer

7. Sampling och rekonstruktion av signaler

7. Sampling och rekonstruktion av signaler Arbetsmaterial 5, Signaler&System I, VT04/E.P. 7. Sampling och rekonstruktion av signaler (Se också Hj 8.1 3, OW 7.1 2) 7.1 Sampling och fouriertransformering Man säger att man samplar en signal x(t) vid

Läs mer

( ), så kan du lika gärna skriva H ( ω )! ( ) eftersom boken går igenom laplacetransformen före

( ), så kan du lika gärna skriva H ( ω )! ( ) eftersom boken går igenom laplacetransformen före Några allmänna kommentarer gällande flera av lösningarna: Genomgående används kausala signaler och kausala system, vilket innebär att det är den enkelsidiga laplacetransformen som används. Bokens författare

Läs mer

Miniräknare och en valfri formelsamling i signalbehandling eller matematik. Allowed items: calculator, DSP and mathematical tables of formulas

Miniräknare och en valfri formelsamling i signalbehandling eller matematik. Allowed items: calculator, DSP and mathematical tables of formulas LUNDS TEKNISKA HÖGSKOLA Institutionen för Elektro- och Informationsteknik Tentamen 08-05-3 SIGNALBEHANDLING i MULTIMEDIA, EITA50 Tid: 08.00-3.00 Sal: Vic A Hjälpmedel: Viktigt: Miniräknare och en valfri

Läs mer

Miniräknare, formelsamling i signalbehandling.

Miniräknare, formelsamling i signalbehandling. LUNDS TEKNISKA HÖGSKOLA Inst. för Elektro- och Informationsteknik Tentamen 05-0-4 DIGITAL SIGNALBEHANDLING, ESS040 Tid: 4.00 9.00 Sal: Sparta B, D Hjälpmedel: Miniräknare, formelsamling i signalbehandling.

Läs mer

Projekt 1 (P1) Problembeskrivning och uppdragsspecifikation

Projekt 1 (P1) Problembeskrivning och uppdragsspecifikation Projekt 1 (P1) Problembeskrivning och uppdragsspecifikation Etapp 1 Problem med mätsignalen m.a.p. sampling, vikning och spektraltäthet Problembeskrivning Uppdragsgivaren överväger att skaffa nya A/D-omvandlare

Läs mer

Tillämpning av komplext kommunikationssystem i MATLAB

Tillämpning av komplext kommunikationssystem i MATLAB (Eller: Vilken koppling har Henrik Larsson och Carl Bildt?) 1(5) - Joel Nilsson joelni at kth.se Martin Axelsson maxels at kth.se Sammanfattning Kommunikationssystem används för att överföra information,

Läs mer

Laboration i Fourieranalys, TMA132 Signalanalys med snabb Fouriertransform

Laboration i Fourieranalys, TMA132 Signalanalys med snabb Fouriertransform Laboration i Fourieranalys, TMA132 Signalanalys med snabb Fouriertransform Den laborationen har syften: dels att visa lite hur den snabba Fouriertransformen fungerar, och lite om vad man den an dels att

Läs mer

Optimal Signalbehandling Datorövning 1 och 2

Optimal Signalbehandling Datorövning 1 och 2 Institutionen för Elektro- och Informationsteknik Lunds Universitet Lunds Tekniska Högskola Optimal Signalbehandling Datorövning 1 och 2 Leif Sörnmo Martin Stridh 2011 Department of Electrical and Information

Läs mer

TSDT18/84 SigSys Kap 4 Laplacetransformanalys av tidskontinuerliga system. De flesta begränsade insignaler ger upphov till begränsade utsignaler

TSDT18/84 SigSys Kap 4 Laplacetransformanalys av tidskontinuerliga system. De flesta begränsade insignaler ger upphov till begränsade utsignaler 9 Stabilitet för energifria LTI-system Marginellt stabilt system: De flesta begränsade insignaler ger upphov till begränsade utsignaler Kap 2, bild 4 h t h( t) dt /< < t gäller för marginellt stabila LTI-system

Läs mer

Kompletterande material till föreläsning 5 TSDT08 Signaler och System I. Erik G. Larsson LiU/ISY/Kommunikationssystem

Kompletterande material till föreläsning 5 TSDT08 Signaler och System I. Erik G. Larsson LiU/ISY/Kommunikationssystem ompletterande material till föreläsning 5 TSDT8 Signaler och System I Erik G. Larsson LiU/ISY/ommunikationssystem erik.larsson@isy.liu.se November 8 5.1. Första och andra ordningens tidskontinuerliga LTI

Läs mer

Yrkeshögskolan Novia Utbildningsprogrammet i elektroteknik

Yrkeshögskolan Novia Utbildningsprogrammet i elektroteknik Grunderna i programmeringsteknik 1. Vad är Känna till nämnda programmering, begrepp. Kunna kompilera högnivå språk, och köra program i det i kompilering, kursen använda tolkning, virtuella programmeringsspråket.

Läs mer

2 Laborationsutrustning

2 Laborationsutrustning Institutionen för data- och elektroteknik 2002-02-11 1 Inledning Denna laboration syftar till att illustrera ett antal grundbegrepp inom digital signalbehandling samt att närmare studera frekvensanalys

Läs mer

Institutionen för data- och elektroteknik 2004-03-22 Tillämpad digital signalbehandling Veckoplanering för signalbehandlingsteorin

Institutionen för data- och elektroteknik 2004-03-22 Tillämpad digital signalbehandling Veckoplanering för signalbehandlingsteorin Institutionen för data- och elektroteknik 2004-03-22 Veckoplanering för signalbehandlingsteorin Allmänt Erfarenheten från tidigare år säger att kursen upplevs som svår. Detta tror jag beror, inte på att

Läs mer

Introduktion Digitala filter. Filter. Staffan Grundberg. 12 maj 2016

Introduktion Digitala filter. Filter. Staffan Grundberg. 12 maj 2016 12 maj 216 Innehåll Introduktion Första ordningens system Andra ordningens system Fördröjning Allmänt om filter Butterworthfilter Första ordningens system Andra ordningens system Fördröjning Allmänt om

Läs mer