Signal- och Bildbehandling, TSBB14 Laboration 1: Kontinuerliga signaler

Relevanta dokument
Signal- och Bildbehandling, TSBB14. Laboration 2: Sampling och Tidsdiskreta signaler

Signal- och bildbehandling TSBB03

Signal- och Bildbehandling FÖRELÄSNING 4. Multiplikationsteoremet. Derivatateoremet

Signal- och bildbehandling TSBB03

Signal- och bildbehandling TSBB14

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

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

Signal- och bildbehandling TSBB14

Signal- och bildbehandling TSBB03, TSBB14

Spektrala Transformer

Laboration i tidsdiskreta system

Bildbehandling i frekvensdomänen

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

Signal- och bildbehandling TSBB14

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

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

DT1130 Spektrala transformer Tentamen

Medicinska Bilder, TSBB31. Lab3: Mätvärden på Medicinska Bilder

Signal- och bildbehandling TSBB03 och TSEA70

Signal- och bildbehandling TSEA70

Medicinska Bilder, TSBB31. Lab: Mätvärden på Medicinska Bilder

Grundläggande signalbehandling

2 Ortogonala signaler. Fourierserier. Enkla filter.

Signal- och bildbehandling TSBB14

Flerdimensionella signaler och system

DT1130 Spektrala transformer Tentamen

Bildbehandling i frekvensdomänen. Erik Vidholm

Välkomna till TSRT19 Reglerteknik Föreläsning 5. Sammanfattning av föreläsning 4 Frekvensanalys Bodediagram

Laboration i Fourieroptik

Medicinska Bilder, TSBB31. Lab: Mätvärden på Medicinska Bilder

Ulrik Söderström 20 Jan Signaler & Signalanalys

Signal- och bildbehandling TSEA70

Ulrik Söderström 19 Jan Signalanalys

Fouriermetoder MVE295 - bonusuppgifter

TSBB16 Datorövning A Samplade signaler Faltning

Spektrala Transformer

Digital Signalbehandling i Audio/Video

DT1130 Spektrala transformer Tentamen

Signal- och bildbehandling TSBB03

Signal- och bildbehandling TSEA70

Projekt 6. Fourieroptik Av Eva Danielsson och Carl-Martin Sikström

DT1130 Spektrala transformer Tentamen

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

Passiva filter. Laboration i Elektronik E151. Tillämpad fysik och elektronik UMEÅ UNIVERSITET Ulf Holmgren. Ej godkänd. Godkänd

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

TSKS21 Signaler, Information och Bilder Lab 2: Digitalisering

Signal- och bildbehandling TSEA70

Spektrala Transformer

Laboration i Fourieroptik

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

Tentamen ssy080 Transformer, Signaler och System, D3

Signaler några grundbegrepp

Projekt 3: Diskret fouriertransform

Spektrala Transformer

Signalanalys med snabb Fouriertransform

TSKS06 Linjära system för kommunikation Lab2 : Aktivt filter

2F1120 Spektrala transformer för Media Tentamen

Tentamen ssy080 Transformer, Signaler och System, D3

TEM Projekt Transformmetoder

Sammanfattning TSBB16

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

Laboration i Fourieranalys, TMA132 Signalanalys med snabb Fouriertransform

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

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

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

SF1635, Signaler och system I

Laboration i Fourieranalys för F2, TM2, Kf2 2011/12 Signalanalys med snabb Fouriertransform (FFT)

Signal- och bildbehandling TSEA70

Tillämpad Fysik Och Elektronik 1

Facit till Signal- och bildbehandling TSBB

x(t) = sin(ω 0 t) (1) b) Tillåt X(ω) att innehålla diracimpulser (en generalliserad funktion). Vilken signal x(t) har spektrumet X(ω)?

Frekvensplanet och Bode-diagram. Frekvensanalys

Hambley avsnitt

Bildbehandling i spatialdomänen och frekvensdomänen

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

EXEMPEL 1: ARTVARIATION FÖRELÄSNING 1. EEG frekvensanalys EXEMPEL 2: EEG

Lab 1 Analog modulation

Upp gifter. c. Hjälp Bengt att förklara varför det uppstår en stående våg.

Hambley avsnitt

Laboration 3 Sampling, samplingsteoremet och frekvensanalys

Modellering av en Tankprocess

Transformer och differentialekvationer M3, 2010/2011 Ett par tillämpningar av Fourieranalys.

Elektronik 2018 EITA35

Datorövning: Fouriertransform med Python

Signal- och bildbehandling TSBB14

Lösning till tentamen i Medicinska Bilder, TSBB31, DEL 1: Grundläggande 2D signalbehandling

Spektrala Transformer

Denna våg passerar mikrofonen, studsar mot väggen och passerar åter mikrofonen efter tiden

Laboration 2: 1 Syfte. 2 Väntevärde och varians hos en s.v. X med fördelningen F X (x) MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08

TSDT15 Signaler och System

Laboration 5: Regressionsanalys. 1 Förberedelseuppgifter. 2 Enkel linjär regression DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08

Lab lanserade R.A. Moog Inc. en ny synt: Minimoog. Den var designad av Bill Hemsath och Robert Moog och kom att revolutionera musikhistorien.

Talets akustik repetition

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

IE1206 Inbyggd Elektronik

Mätningar med avancerade metoder

Bestäm uttrycken för följande spänningar/strömmar i kretsen, i termer av ( ) in a) Utspänningen vut b) Den totala strömmen i ( ) c) Strömmen () 2

4 Laboration 4. Brus och termo-emk

Transkript:

Signal- och Bildbehandling, TSBB14 Laboration 1: Kontinuerliga signaler Anders Gustavsson 1997, Maria Magnusson 1998-2018 Avdelningen för Datorseende, Institutionen för Systemteknik Linköpings Universitet Introduktion Denna laboration använder sig av programmet MATLAB. Dessutom används Kretslab, som är ett bibliotek av funktioner skrivna i MATLAB och utvecklat på ISY. Kretslab innehåller diverse funktioner för att definiera signaler och manipulera dem. Det man främst har gjort i Kretslab är att man i signalvektorn har lagt till extra information. Med denna kan man ge illusionen av att man jobbar med kontinuerliga signaler, trots att Matlab baseras på vektorer och matriser. De funktioner som finns i Kretslab-paketet skapar signaler och inkluderar den nödvändiga informationen. Vi kommer endast att använda ett fåtal av alla Kretslabs funktioner. 1 Laboration 1 1.1 Förberedelser inför laborationen Läs i kurslittera- Läs igenom hela laborationshandledningen noggrant. turen om fourierserier, fouriertransformen och faltning. Lös om möjligt förberedelseuppgifterna i labhandledningen innan laborationstillfället! De är markerade med en pekande hand. De ska också vävas in i rapporten, se nedan. 1.2 Rapport Skriv en rapport som redogör för era upptäckter under laborationen. Redogör för den teori som behövs och förklara orsaken till de upptäckter ni gjort. Tänk er att ni skriver rapporten för en person med samma bakgrund som ni, men som inte gjort laborationen eller laborationsförberedelserna. Skriv rapporten så att alla frågor ni kommer att svara på i det här labkompendiet på ett naturligt sätt kommer med i rapportens löpande text. 1

Inkludera MATLAB -figurer från laborationen i rapporten. De har ofta ett bra förklaringsvärde. Glöm inte att hänvisa till dem i texten. Vi rekommenderar att rapporten är skriven i ett ordbehandlingsprogram, t ex word. Lämna in rapporten senast två veckor framåt! Komplettering kommer att krävas om rapporten innehåller fel, eller saknar viktiga delar. 1.3 Start av laboration Börja med att logga in och öppna ett terminal-fönster från bakgrunden. Ge därefter följande kommandon. module add prog/matlab/8.1 matlab & Ge sedan följande kommandon i matlab-fönstret: addpath( /site/edu/bb/signalbild/kretslabsbb ); startup 1.4 Fourierserier Vi ska börja med att studera hur deltonerna i en fourierserie är kopplade till signalformen. Skapa en fourierserie genom: > x=fouser( pulse(t,-0.25,0.25)+pulse(t,0.75,1.25),1); Fouser-kommandots andra argument anger periodtiden T. Första argumentet tar en sträng som definierar signalens utseende i intervallet [0, T ]. Plotta signalen genom: > signal(x) Signalen kommer att se ut som i Fig. 1. Amplitud- och fasspektra fås plottade genom: > spect(x) och de ser ut som i Fig. 2. FRÅGA 1: Vad är grundvinkelfrekvensen för signalen x? 2

Vi kan nu manipulera signalen genom att manipulera dess fourierserie. Vi börjar med att ta bort den 0:te deltonen. Vi tar bort den 0:te deltonen och plottar signalen: > x1=remtone(x,[0]); > signal(x1) Vi skapar ett nytt fönster, och plottar den gamla signalen som jämförelse: > figure(2) > signal(x) FRÅGA 2: Hur påverkade borttagandet av 0:te deltonen ursprungssignalen? Inkludera ordet medelvärde i ditt svar. Kom ihåg att spara undan viktiga MATLAB -figurer från laborationen till rapporten! Ni behöver bara ha spara figurer för att åskådliggöra resonemang, inte redovisa varje enskilt steg i laborationen. 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 Time (s) Figure 1: En periodisk fyrkant-signal, med perodtiden 1 sekund. 3

0.7 First tone frequency f = 1 Hz, ω = 2π 1 rad/s 0.6 0.5 Amplitude 0.4 0.3 0.2 0.1 0 0 5 10 15 20 25 30 Tone number 150 Phase 100 50 0 0 5 10 15 20 25 30 Tone number Figure 2: Amplitud- och fasspektrum för signalen i Fig. 1. Vi ska nu studera vad som händer om man tar bort alla övertoner över en visst deltonsvärde. Börja med att göra figur 1 till det aktiva fönstret igen: > figure(1) Sedan använder vi kommandot remtone för att ta bort övertoner. Vi kan behålla de tre första deltonerna i signalen och studera deras bidrag genom: > x4=remtone(x, all,4); > signal(x4) som tar bort alla deltoner från och med delton 4 och plottar den nya signalen. Upprepa förfarandet ovan och ta bort alla deltoner från och med t ex: 2:a, 6:e, 8:e och 200:e deltonen. Kom ihåg att det går att använda piltangenterna för att få tillbaka tidigare skrivna kommandon. Om det är svårt att se någon skillnad mellan de olika plottarna, använd då kommandot figure för att öppna ett nytt fönster, så ni lättare kan jämföra plottarna. FRÅGA 3: Tag ett lämpligt antal plottar så att ni kan visa hur fyrkantvågen byggs upp av deltoner i rapporten. Hur många plottar har ni sparat? 4

Notera också överslängen som blir vid diskontinuiteterna. Denna översläng kallas Gibbs fenomen. Gibb sa att det krävs ett oändligt antal deltoner för att slippa överslängen. Så fort en begränsning av antalet deltoner görs, så fås ett rippel i närheten av diskontinuiteter. Detta rippel ökar i frekvens när antalet deltoner ökar, men överslängens storlek är konstant. Gibb visade att den största överslängens amplitud är konstant, cirka 9% av diskontinuitetens höjd, oberoende av antalet deltoner. Den försvinner dock när antalet termer i fourierserieutvecklingen blir oändligt många. FRÅGA 4: I våra plottar försvinner Gibbs-överslängen när antalet deltoner blir för högt. Detta beror på att representationen av signalen i datorn inte är tillräckligt noggrann. Ungefär vid vilken delton ser Gibbs-överslängen ut att vara bara hälften så stor som den borde? FRÅGA 5: Vi har nu sett hur de låga deltonerna bidrar till signalprofilen. Svarar de mot de långsamma mjuka förändringarna eller de snabba kantiga förändringarna? Nu ska vi ta bort några av de lägre deltonerna istället. Vi använder återigen kommandot remtone. I detta fall anger vi vilka toner vi vill ta bort, genom att ange en vektor med deltonsnumren på de toner som ska tas bort. > y=remtone(x,[0 1 2 3]); > signal(y) FRÅGA 6: Hur bidrar de höga deltonerna till signalprofilen? Jämför med ert tidigare svar angående de låga deltonerna. Observera att det vi ovan kallat deltoner eller övertoner direkt svarar mot en viss vinkelfrekvens. Vi skulle alltså lika gärna kunna prata om att vi tar bort alla vinkelfrekvenskomponenter över en viss vinkelfrekvens, när vi säger att vi tar bort alla deltoner över ett visst deltonsnummer. 1.5 Ett icke-linjärt system Vi ska som ett exempel på fourierseriens styrka vid signalanalys studera vad som händer när en ljudsignal passerar en förstärkare. I förstärkarsammanhang så hör man ofta termen distorsion nämnas. Den typ av distorsion 5

som de flesta kommit i kontakt med, är den ljudförvrängning som sker när man ökar ljudvolymen på hemma-stereon. Distorsion är ett mått på hur olinjär förstärkaren är. Den ideala förstärkaren är helt linjär, dvs den förstärker amplituden hos signalen på ett signaloberoende sätt. En ickelinjär förstärkare förstärker signalen beroende på signalvärde, se Fig. 3. x(t) linjär förstärkare A x(t) x(t) ickelinjär förstärkare A(x(t)) x(t) Figure 3: Den linjära förstärkaren förstärker insignalen med en konstant, medan den icke-linjära förstärker signalen på ett signalberoende vis. En mycket kraftig distorsion fås då förstärkaren bottnar, vilket innebär att förstärkaren inte kan leverera den nödvändiga maximala nivån på utsignalen. Man brukar referera till detta som klippning, dvs förstärkaren klipper av topparna i signalen. Detta uppstår då man har mycket hög volym i ljudanläggningar, t ex hårdrocksgitarrer. Vi börjar med att definiera den oklippta signalen: > y=fouser( sin(pi*t),2); > figure(1) > signal(y) Vi definierar en signal som är klippt genom: > yk=fouser( min(0.6,abs(sin(pi*t)))*sign(sin(pi*t)),2); > figure(2) > signal(yk) FRÅGA 7: Beskriv skillnaden i signalerna utseende! Vi ska nu studera de tillhörande fourierserierna genom att använda kommandot spect. > figure(3) > spect(y) > figure(4) > spect(yk) FRÅGA 8: Vad är skillnaden mellan de två signalernas fourierserier? Vad ger den klippta signalens kanter för effekt i amplitudspektrum? 6

Om vi skapar en signalvektor direkt i MATLAB, så kan vi lyssna på hur den oklippta och den distorderade signalen låter. > t=0:0.04:500; > y=sin(pi*t); > yk=min(0.6,abs(sin(pi*t))).*sign(sin(pi*t)); Eftersom signalerna nu är skapade i ren MATLAB så kan vi inte använda KretslabSBBs signal-kommando för att plotta dem. Istället får de plottas med MATLAB :s eget plotkommando: > subplot(2,1,1),plot(t,y) > axis([0 10-1 1]) > subplot(2,1,2),plot(t,yk) > axis([0 10-1 1]) Vi ser här ett exempel på hur axis-kommandot kan användas för att skala om plotten. Vi kan lyssna på den oklippta signalen genom kommandot sound som inte fungerar på datorerna i labbet utan körs på en speciell dator: > sound(1.1*y) (Vi ökar amplituden lite (med 1.1) för att få lagom ljudstyrka.) Sedan lyssnar vi på den distorderade: > sound(yk) Om det är svårt att höra någon skillnad så kan ni sätta ihop signalvektorerna, så att ljudet kommer i en följd: > sound([1.1*y yk 1.1*y yk 1.1*y yk 1.1*y yk]) FRÅGA 9: Hör ni nu någon skillnad mellan de olika signalerna? Vilken signal låter mjukast? Vilken låter mest vass? Är det samma tonhöjd? Bör det vara samma tonhöjd? 7

1.6 Fouriertransformen Vi börjar med att studera den icke-periodiska signalen: x(t) = Π(2t) = { 1, t < 1/4, 0, annars. (1) FRÅGA 10: Vad är fouriertransformen av signalen x(t) ovan? FRÅGA 11: Hur räknar man ut argumentet till ett komplext tal? Skriv upp formler som täcker de fyra möjliga kvadranterna som ett komplext tal kan tillhöra. Tips: Se förberedelsehäftet. För att definiera x(t) och dess fouriertransform X(ω) i KretslabSBB skriver man: > x=in( pulse(t,-0.25,0.25), t ); > X=foutr(x); Först definieras alltså signalen i tidsdomänen, därefter fouriertransformeras signalen. Vi följer konventionen att beteckna den tidsberoende funktionen med små bokstäver och den tillhörande fouriertransformen med stor bokstav. Signalens tidsutseende och fouriertransform studeras på samma sätt som tidigare: > signal(x) > spect(x) Notera att vi arbetar med frekvens, inte vinkelfrekvens, i denna laboration. Spect-kommandot plottar amplitudspektrum och fasspektrum dvs X och arg(x). Det finns olika metoder att skala axlarna på i MATLAB. Vi visade förut axis-kommandots funktion. Ett annat sätt är att använda KretslabSBBs inbyggda funktion i spectkommandot: > spect(x,20) som begränsar plotten av spektrumet från 0Hz till max-frekvensen 20Hz. 8

FRÅGA 12: När vi arbetade med fourierserier så hade vi en fyrkant-formad periodisk signal och nu har vi en enstaka fyrkant-puls. Har den tidigare fourierserien och denna fouriertransformen några likheter? Verkar deras amplituder avta på liknande sätt? Överrensstämmer deras fas? När vi nu ska manipulera fouriertransformen så måste vi använda lite andra metoder. Vi kan inte ta bort deltoner som svarar mot en viss frekvens, utan måste ta bort alla delar inom ett visst frekvensområde. Detta gör vi genom att använda ett filter. Ett lågpassfilter är, som namnet antyder, ett filter som låter de lågfrekventa delarna passera. Ett högpassfilter låter de högfrekventa delarna passera och ett bandpassfilter låter frekvenser inom ett visst intervall passera. Vi börjar med att undersöka hur ett lågpassfilter fungerar. > Ylp=lp(X,5); > spect(ylp,20) FRÅGA 13: Vad tror ni andra argumentet, dvs 5, i lp-kommandot betyder? Hur ser amplitudspektrum ut efter denna lågpassfiltrering? (Fasen här ser bitvis konstig ut, men den är ointressant då amplituden är 0.) Vi använder den inversa fouriertransformen för att ta fram den tidsberoende funktionen, och sedan plotta den. > ylp=ifoutr(ylp); > signal(ylp) FRÅGA 14: Finns det likheter mellan det tidigare försöket då vi använde fourierserien och tog bort övertoner? FRÅGA 15: Vilken del i signalprofilen skulle ni påstå att den lågfrekventa delen svarar mot? 9

FRÅGA 16: Ändra gränsfrekvensen i exemplet ovan och tag ett lämpligt antal plottar så att ni kan visa hur fyrkantpulsen byggs upp av olika frekvenser i rapporten. Hur många plottar har ni sparat? FRÅGA 17: För att understryka likheterna mellan fourierserier och fouriertransformen så undersöker vi vad effekten blir av att applicera ett högpassfilter på signalen. > Yhp=hp(X,5); > yhp=ifoutr(yhp); > signal(yhp) Är detta i analogi med det försök där vi tog bort vissa toner med lågt tonnummer när vi arbetade med fourierserier? 1.7 Skalningsteoremet FRÅGA 18: Hur lyder skalningsteoremet? Vi ska nu undersöka en signal som är skalad i förhållande till signalen i ekvation (1) och jämföra de båda signalernas spektrum: > x=in( pulse(t,-0.25,0.25), t ); > X=foutr(x); > x1=in( pulse(t,-0.5,0.5), t ); > X1=foutr(x1); > figure(1) > signal(x) > figure(2) > signal(x1) > figure(3) > spect(x,20) > figure(4) > spect(x1,20) 10

FRÅGA 19: Tag med dessa plottar i er rapport och hänvisa till den när ni beskriver effekten av skalningsteoremet. Skriv redan nu vad skalningsteoremet säger om vad som händer med fouriertransformen då en signal blir bredare! 1.8 Translationsteoremet Translation, eller skiftning av signalen, påverkar signalens fas. > x=in( pulse(t,-0.25,0.25), t ); > X=foutr(x); > x2=in( pulse(t,-0.3,0.2), t ); > X2=foutr(x2); > figure(1) > signal(x) > figure(2) > signal(x2) > figure(3) > spect(x,20) > figure(4) > spect(x2,20) Translationsteoremet säger att om F[x(t)] = X(f) så gäller att F[x(t a)] = e j2πaf X(f) dvs en translation med a av en signal ger en fasförändring med a2πf av dess Fouriertransform. FRÅGA 20: Vad är a i vårt fall? FRÅGA 21: Fasen kan vara lite svårtolkad. Dels får man diskontinuiteter på grund av att signalens amplitudspektrum inte kan vara negativt och dels begränsar plot-funktionen fasen till att ligga i vinkelintervallet 170 till 190 grader. Kan du se att x2:s fasspektrum erhålls om en rät linje a2πf adderas till x:s fasspektrum? 11

FRÅGA 22: Hur påverkas amplitudspektrum vid translation enligt ditt experiment och stämmer detta överens med translationsteoremet? Visa genom att ta absoultbelopp av fouriertransformen: e j2πaf X(f) =... 1.9 Faltning och filtrering Vi ska avslutningsvis studera faltning och dess beteende i frekvensdomänen. Vi börjar med att studera faltningen mellan två funktioner. FRÅGA 23: Beräkna faltningen (x x)(t) och skissa svaret för x(t) = { 1, t < 1/2, 0, annars. (2) Tips: Se lektionsuppgift 3.1. Vi kan nu verifiera faltningen genom att utföra faltningen i KretslabSBB: > x=in( pulse(t,-0.5,0.5), t ); > yfalt=output(x,x); > signal(yfalt) FRÅGA 24: Stämde svaret i förberedelseuppgiften med KretslabSBBs svar? Definiera en ny, bredare puls och en ny faltning: > h=in( pulse(t, -1, 1), t ); > signal(h) > yfalt1=output(x,h); > signal(yfalt1) FRÅGA 25: Skissa x, h, yfalt och yfalt1 nedan. Jämför yfalt1 med yfalt och förklara yfalt1:s utseende utgående från x, h och yfalt. (Du behöver alltså inte räkna här, bara visa att du har en känsla för hur faltning fungerar!) 12

Vi ska nu som avslutning på denna laboration titta på en uppmätt signal från ett ekolod och sedan falta och filtrera den. Ladda och studera signalen: > load uppg132 > signal(x) FRÅGA 26: Kan ni se något som ser ut som en sinuspuls (alltså inte sinusvåg)? Att det kan vara svårt att se sinuspulsen beror på att den är kraftigt störd av brus. Signalen kommer som sagt var från ett ekolod, se Fig. 4. En båt färdas på havet. På båten finns ett ekolod vars sändare sänder ut en period av en sinusformad våg, en sinuspuls, vid tidpunkten 0. Sinuspulsen färdas ner i vattnet tills den stöter på ett fiskstim. Den reflekteras i fiskstimmet och vänder åter mot båten där den tas emot av ekolodets mottagare. På sin vandring i vattnet har den blivit kraftigt störd av brus. Den tid det går från det att pulsen sänds ut till dess den kommer åter är proportionell mot avståndet mellan båten och fiskstimmet. Studera amplitud- och fasspektra: Utsänd sinuspuls: 0 ekolodets sändare: ekolodets mottagare: t Mottagen sinuspuls störd med brus: 0 t Figure 4: Funktionen hos ett ekolod. > spect(foutr(x)); FRÅGA 27: Hur är amplituden X(f) (och därmed också energin X(f) 2 ) fördelad över frekvensaxeln? Är det mest energi i de låga, mellersta eller höga frekvenserna? 13

Eftersom signalen är så dominerad av brus är det ungefär så här som brus ser ut i fourierdomänen. Det kan vara bra att komma ihåg! Vi definierar nu ett enkelt filter: > h=in( 10*pulse(t,-0.05,0.05), t ); som är en rektangelpuls med bredden 0.1 0ch höjden 10. Ofta kallar man denna typ av filter för medelvärdesbildande filter. Anledningen till detta finns illustrerat i Fig. 5. När filtret h(t) = 1 B A Π ( t ) B A faltas på den brusiga signalen x() fungerar det som lokalt medelvärdesbildande. I faltningsläget som är illustrerat i figuren beräknas ju y(t) = 1 B A B+t A+t dvs medelvärdet i intervallet [A + t, B + t]. Vi faltar signalen x med vårt filter h: x(λ) dλ h(t λ) 1/(B A) x( λ) medelvärdet i intervallet [t+a,t+b] t+a t+b y(t) λ t Figure 5: Funktionen hos ett medelvärdesbildande filter. > y=output(x,h); > signal(y) FRÅGA 28: Vad är resultatet? 14

FRÅGA 29: Variera filtret h:s utbredning, dvs byt ut -0.05, 0.05 och 10 i kommandot som definierar filtret. Observera att det gäller att 10 = 1/[0.05 ( 0.05)]. Försök att få fram ett optimalt värde, dvs så att sinuspulsen blir så tydlig som möjligt. FRÅGA 30: Vad händer om filtret blir för brett och vad händer om filtret blir för smalt? FRÅGA 31: Fouriertransformera h, x och y till H, X och Y. Plotta H, X och Y. Vilket förhållande ska gälla mellan H, X och Y enligt faltningsteoremet och stämmer det med det ni ser? Titta bara på magnituden, amplitudspektrum. Fasspektrum är svårtolkad. Till sist ska vi förbättra ekolod-signalen med hjälp av lågpassfiltrering. FRÅGA 32: I Fig. 6 och Fig. 7 visas en sinuspuls och dess frekvensspektrum. Vilken periodtid T har sinuspulsen? FRÅGA 33: Om denna signal hade varit störd med liknande brus som ekolodsignalen och ni hade tillgång till ett idealt lågpassfilter, vilken (ungefärlig) gränsfrekvens f g skulle ni då välja? FRÅGA 34: Titta nu på er filtrerade ekolod-signal y. Vilken ungefärlig periodtid T har sinuspulsen? 15

FRÅGA 35: Använd nu Fig. 6 och Fig. 7 samt skalningsteoremet för att hitta en lämplig gränsfrekvens f g till ett idealt lågpassfilter för ekolod-signalen: Utför lågpassfiltreringen: > Ylp=lp(X,fg); > ylp=ifoutr(ylp); > signal(ylp); FRÅGA 36: Blev resultatet bra? Plotta det och bifoga rapporten! 1 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1 5 0 5 Time (s) Figure 6: En period av en sinusformad våg, en sinuspuls. 1.5 Filter characteristics or signal spectrum Magnitude 1 0.5 0 0 1 2 3 4 5 Frequency: f (Hz) = ω/2π (rad/s) 100 50 Phase 0 50 100 0 1 2 3 4 5 Frequency: f (Hz) = ω/2π (rad/s) Figure 7: Frekvensspektrum för signalen i Fig. 6 16