h =[ ]

Like dokumenter
UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Utkast med løsningshint inkludert UNIVERSITETET I OSLO

UNIVERSITETET I OSLO. Dette er et løsningsforslag

Midtveiseksamen Løsningsforslag

Midtveiseksamen. INF Digital Bildebehandling

Norsk (English below): Guide til anbefalt måte å printe gjennom plotter (Akropolis)

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Obligatorisk oppgave 2 INF2310 Våren 2018

EKSAMEN. Bildebehandling og mønstergjenkjenning

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn

Repetisjon: Eksempel. Repetisjon: Aliasing. Oversikt, 26.februar Gitt. Alle signaler. Ettersom. vil alle kontinuerlig-tid signaler.

Løsningsforslag, Ukeoppgaver 9 INF2310, våren kompresjon og koding del I

Obligatorisk oppgave 1

UNIVERSITETET I OSLO

MAX MIN RESET. 7 Data Inn Data Ut. Load

UNIVERSITETET I OSLO

Prøve- EKSAMEN med løsningsforslag

UNIVERSITETET I OSLO

MAT-INF 2360: Obligatorisk oppgave 1

MAT-INF 2360: Obligatorisk oppgave 1

BIBSYS Brukermøte 2011 Live Rasmussen og Andreas Christensen. Alt på et brett? -om pensum på ipad og lesebrett

HØGSKOLEN I SØR-TRØNDELAG Avdeling for teknologi

UNIVERSITETET I OSLO

Oppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet.

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Trådløsnett med. Wireless network. MacOSX 10.5 Leopard. with MacOSX 10.5 Leopard

UNIVERSITETET I OSLO

MAT-INF 1100: Obligatorisk oppgave 1

UNIVERSITETET I OSLO

Slope-Intercept Formula

Løsningsforslag, Ukeoppgaver 9 INF2310, våren kompresjon og koding del I

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn

Gråtonehistogrammer. Histogrammer. Hvordan endre kontrasten i et bilde? INF Hovedsakelig fra kap. 6.3 til 6.6

Kartleggingsskjema / Survey

Start Here USB *CC * *CC * USB USB

Eksamensoppgaver til SOSANT1101. Regional etnografi: jordens folk og kulturelt mangfold. Utsatt skoleeksamen 12. desember 2013 kl.

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

Obligatorisk oppgave 2

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

TMA Kræsjkurs i Matlab. Oppgavesett 3 Versjon 1.2

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Du må håndtere disse hendelsene ved å implementere funksjonene init(), changeh(), changev() og escape(), som beskrevet nedenfor.

UNIVERSITETET I OSLO

INF Stikkord over pensum til midtveis 2017 Kristine Baluka Hein

Information search for the research protocol in IIC/IID

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

MAT-INF 1100: Obligatorisk oppgave 1

Obligatorisk oppgavesett 1 MAT1120 H16

Det matematisk-naturvitenskapelige fakultet

UNIVERSITETET I OSLO

5 E Lesson: Solving Monohybrid Punnett Squares with Coding

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Unit Relational Algebra 1 1. Relational Algebra 1. Unit 3.3

Oppgave 1 JK-flip-flop (Total vekt 20%)

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

i=1 t i +80t 0 i=1 t i = 9816.

Transkript:

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i IN 106 μ Introduksjon til signal- og bildebehandling Eksamensdag: Onsdag 30. mai - fredag 1. juni 2001 Tid for eksamen: 30. mai 2001 kl 09:00 1. juni 2001 kl 16.00 Oppgavesettet er på 7 sider. Vedlegg: Ingen Tillatte hjelpemidler: Kontroller at oppgavesettet er komplett f r du begynner å besvare sp rsmålene. Deler av denne eksamensoppgaven skal gj res ved å benytte programmer i XITE, spesielt xshow, og ved å bruke MATLAB programmer. Det anbefales at arbeidet med besvarelsen utf res ved Institutt for informatikk (Ifi), hvor både maskin- og programvare er tilrettelagt for å l se de oppgavene som er gitt. I eksamensperioden vil ekspedisjonen ved Ifi kunne formidle kontakt til kursansvarlige. Send ikke mail til en lærer. Bakerst i oppgavesettet finner du et lite bibliotek med nyttige MATLAB-funksjoner. Når du arbeider med lydsignaler, skal du bruke h retelefon. Resultatene skal presenteres i en skriftlig rapport der teori, utskrifter og figurer laget i MATLAB og bilder fra xshow vises. Det er en fordel om rapporten er laget med en egnet tekstbehandler, men deler som er teknisk vanskelige å produsere kan være håndtegnet. Besvarelsen leveres i form av en utskrift på papir, hvis ikke annet er spesifikt avtalt på forhånd. Det er bare den innleverte rapporten som bed mmes, ikke hjemmesider, programmer, resultat-filer eller annet som det måtte henvises til i rapporten. Eksamensbesvarelsen leveres i 2 like eksemplarer til Ifi's ekspedisjon innen oppgitt innleveringsfrist, hvis ikke utsettelse er innvilget av studieadministrasjonen på forhånd. Et tilfeldig utvalg av studentene vil i tillegg komme opp til muntlig eksamen, som avholdes fredag 22. juni 2001. Dersom sensor og faglærere ut fra en forel pig gjennomgang av de skriftlige besvarelsene f ler behov for å avklare noen tvilstilfeller, vil disse også bli innkalt til muntlig eksamen 22. juni. Varsel om muntlig eksamen blir gitt fredag 15. juni 2001. Den muntlige eksaminasjonen vil f rst og fremst dreie seg om punkter i det innleverte skriftlige arbeidet. Besvarelsen på oppgaven skal derfor være et selvstendig arbeid! (Fortsettes på side 2.)

Eksamen iin106, Onsdag 30. mai - fredag 1. juni 2001 Side 2 Oppgave 1 Filtrering Vi skal se på bildet /hom/in106/img/blod.tiff (og blod.img på XITE-format), som er et elektronmikroskopbilde. Du skal jobbe på en rad i bildet. Dataene fra den utvalgte raden skal du betrakte som et en-dimensjonalt signal. Hvilken rad du skal jobbe med, avhenger av din f dselsdato. Hvis vi skriver f dselsdatoen på formen dd.mm.åå, skal du se på to rader gitt ved x=40+dd og x=50+dd. (Vi ser på to rader fordi det kan være tilfeldige utslag i enkeltrader. Du b r se på begge radene, men i besvarelsen trenger du bare vise plott for en av de to radene.) a) Lag et plott av dataene i den utvalgte raden. Forklar hva du ser i 1D i forhold til bildet i 2D. b) Gitt et filter med impulsrespons h =[0.0156 0.0938 0.2344 0.3125 0.234 0.0938 0.0156] Plott absoluttverdien til frekvensresponsen til filteret og forklar hva slags filter dette er. c) Filtrer signalet vha. funksjonen firfilt i MATLAB (tilgjengelig i dspfirst toolbox) og vis et plott av originalen og det filtrerte signalet i samme plott. Velg et delsegment av lengde f.eks. 200 som du plotter. Du velger selv startpunktet for delsegmentet. Hvordan er det filtrerte signalet i forhold til originalen? d) Hvordan kan du lage en ikke-kausal variant av det filtrerte signalet basert på firfiltfunksjonen? Lag en ikke-kausal variant av det filtrerte signalet og plott resultatet sammen med originalen for samme delsekvens som over. e) Tenk deg at du har tilgjengelig en hardware-implementasjon av et FIR-filter med filterlengde 3, FILT3(x,h3) der h3 =[abc], dvs. du har kun et filter av lengde 3. Hvordan kan du bruke dette til å implementere filteret med impulsrespons gitt i 1a)? f ) Segmentering av signalet. Bildet blod.tiff er et elektronmikroskopbilde av blod. De lyse objektene er blodlegemer og blodplater. En rad i bildet kan betraktes som et signal med noen interessante objekter (de h ye verdiene). Tenk deg at vi er interessert i å finne kantene eller overgangene mellom objektene (h ye verdier) og bakgrunnen. Du skal nå pr ve å finne de sterkeste kontrastene i signalet, dvs.overgangene fra bakgrunn til blodlegemer og -plater. Foreslå en fremgangsmåte for å gj re dette. Kombiner gjerne flere enkle operasjoner sammen i en liten algoritme og test denne imatlab. Plott originalen og ditt resultat. (Fortsettes på side 3.)

Eksamen iin106, Onsdag 30. mai - fredag 1. juni 2001 Side 3 Oppgave 2 Analyse av talesignal Du skal i denne oppgaven arbeide med lydfilen /hom/in106/img/female.wav. a) Les inn lydfilen female.wav vha. funksjonen wavread. Bruk funksjonen soundsc til å h re på signalet (Husk h retelefoner!) Se MATLAB-verkt ykassen for anbefalinger om avspilling av lyd. b) Lag et plott av spektrogrammet til signalet. Forklar hva spektrogrammet viser i forhold til lyden du h rer. c) Effekten av samplingsfrekvens. Så lenge vi jobber i MATLAB er vi begrenset til å studere diskrete signaler. Vi kan da ikke studere overgangen fra kontinuerlig til diskret signal (og tilbake til kontinuerlig igjen), men du skal nå studere effekten av å resample et diskret signal ned til lavere samplingsrate. Lag en liten MATLAB-funksjon signal2 = downsamp(signal1,n) som plukker ut bare hvert n-te sampel fra det originale signalet signal1. Hvis signal1 inneholder N sampler, skal signal2 altså inneholde N/n sampler (i heltallsverdi). Bruk funksjonen til å resample lydsignalet slik at samplingsraten halveres f rst en gang og så ytterligere en gang. Bruk f.eks. funksjonen subplot til å vise det originale lydsignalet og de resamplede signalene på samme skala/i samme plott. Det er mulig å h re på det resamplede signalet, med det kreves ikke at du skal gj re dette nå. Hvis du vil h re på det resamplede signalet, skal du IKKE benytte MATLABs funksjoner sound eller soundsc, disse håndterer ikke ulik samplingsfrekvens slik som manualen sier. Du må istedet lagre signalet som en.wav-fil og spille det av fra andre programmer (enten fra PC eller ved å legge det på WEB slik som du gjorde i Obligatorisk oppgave 2). d) Plott spektrogrammet for de resamplede signalene og dr ft hva de viser sammenlignet med originalsignalet. e) Rekonstruksjon av det resamplede signalet. I MATLAB lar det seg ikke gj re å konvertere det diskrete signalet til et kontinuerlig signal, men du skal nå pr ve å rekonstruere et signal med samme samplingsrate som originalen fra de resamplede signalene. Pr v å rekonstruere de resamplede signalene med ulike valg av interpolasjonsfunksjon ved hjelp av tilgjengelige MATLAB-funksjoner. Plott de rekonstruerte signalene sammen med originalen. Når du har rekonstruert det resamplede signalet til samme samplingsrate som originalen, kan du h re på signalet vha. soundsc i MATLAB. Hvordan har resamplingen og ulike valg av interpolasjonsfunksjoner påvirket hvordan lydsignalet h res ut? (Fortsettes på side 4.)

Eksamen iin106, Onsdag 30. mai - fredag 1. juni 2001 Side 4 Oppgave 3 Bilder og histogrammer Anta at vi har et 512 512 bilde med 256 trinn i gråtoneskalaen. Bildet inneholder i utgangspunktet bare en bakgrunn med en klar trend, slik at intensiteten er jevnt kende fra venstre til h yre kant av bildet. Anta at vi skriver din f dselsdato som ddmmyyyy, og lar bakgrunnsintensiteten ke fra 100+dd ved venstre kant til 100+dd+63 ved h yre kant av bildet. a) Forklar og skissér hvordan histogrammet og det normaliserte histogrammet for et slikt bilde ser ut. b) Anta nå at en m rk tekst legges oppå denne bakgrunnen. Tekst-pikslene dekker 1/4 av bildet, og hvert tekst-piksel har en gråtone som er L gråtonetrinn lavere enn den lokale bakgrunnen. Hvilken verdi L 0 må vi ha for L for at det skal være mulig å terskle resultat-bildet helt feilfritt med en global terskel? c) Skissér det normaliserte histogrammet for L L 0,ogforL>L 0. Beregn og indikér på den siste skissen hvor terskelen må plasseres for at færrest mulig piksler skal bli feil-klassifisert ved tersklingen. d) Hvordan ser histogrammet ut dersom vi adderer gaussisk st y med middelverdi = 0ogengitt varians til både tekst og bakgrunn? e) Vi har bestemt oss for å terskle bildet og så medianfiltrere resultatet. Men vi er usikre på hvilken terskel som er best. Derfor terskler vi bildet med alle mulige terskler, median-filtrerer hvert av de binære bildene og summerer resultatene. Diskuter om dette er lurt. (Fortsettes på side 5.)

Eksamen iin106, Onsdag 30. mai - fredag 1. juni 2001 Side 5 Oppgave 4 Entropi-terskling Anta at vi har gitt et konkret bilde med G trinn i gråtoneskalaen, og med normalisert histogram p(i),i [0,G 1]. Vi har sett at 1. ordens entropi H = i p i log(p i ) er et uttrykk for informasjonsinnhold i enkelt-piksler. Anta at vi beregner entropien separat for de delene av histogrammet som er under og over terskelverdien t H 1 (t) = H 2 (t) = t i=0 G 1 i=t+1 a) Beregn og plott funksjonen p(i) P 1 (t) log [ ] p(i) P 1 (t) [ ] p(i) p(i) P 2 (t) log P 2 (t) t, P 1 (t)= p(i) i=0, P 2 (t)= A(t) =H 1 (t)+h 2 (t) G 1 i=t+1 for bildet /hom/in106/img/lite-blod.tiff (eller lite-blod.img i XITE bilde format), og terskle bildet med den gråtoneverdien der A(t) har sitt maksimum. Gj r rede for eventuelle forbehold du må ta. Vil histogramutjevning påvirke plasseringen av terskelen eller utseendet av det binære bildet? b) Beregn og plott funksjonen B(t) =min{h 1 (t),h 2 (t)} Gir maksimal-verdien av B(t) en bedre terskel? c) Vis hvordan beregningene av H 1 (t) og H 2 (t) kan effektiviseres. p(i) Oppgave 5 Kompresjon og koding a) Implementer en algoritme i MATLAB som utf rer run-length transformen radvis eller kolonne-vis i resultat-bildet fra en av tersklingene fra oppgaven ovenfor. Anta at du starter i vre venstre hj rne, og at f rste piksel på toppen av en ny kolonne f lger direkte etter siste piksel i forrige kolonne (f rste piksel i ny rad f lger rett etter siste piksel i forrige rad). b) Beregn det gjennomsnittlige antall bytes per piksel etter radvis eller kolonnevis transform. c) Forklar kort hvordan du ville implementere Huffmann-koding av sekvensen av l pelengder fra det binære bildet. d) Hvordan vil du beregne antall bits per piksel etter Huffmann-koding av l pelengdene? (Fortsettes på side 6.)

Eksamen iin106, Onsdag 30. mai - fredag 1. juni 2001 Side 6 Oppgave 6 Konvolusjon a) Lag en gradient-operator som kan estimere gradient-komponenten g x, i x-retning i et digitalt bilde ved konvolusjonen (symbolet betegner her konvolusjon) [1 1] T [1 1] [1 1] T [1 1] og en tilsvarende operator for å finne gradient-komponenten i y-retning, g y. Gradientkomponentene skal være positive for kanter der intensiteten ker fra venstre mot h yre og nedenfra og oppover i bildet. Vis hvordan filtermaskene blir for de to operatorene. b) Spiller det noen rolle hvilken rekkef lge konvolusjonene i utrykket ovenfor utf res i? Forklar kort. c) Hvordan kan du enkelt utvide operatorene ovenfor til å bli 5 5 eller 7 7? d) Gitt to sammensatte konvolusjons-operatorer: 1: g 2 x + g2 y, der g x finnes ved operatoren [1 1] T [1 1] [1 1] T [1 1] [1 1] T [1 1] [1 1] T [1 1] og g y finnes ved operatoren [1 1] T [1 1] [1 1] T [1 1] [1 1] T [1 1] [1 1] [ 1 1] T 2: h x + h y, der h x finnes ved operatoren [1 1] T [1 1] [1 1] T [1 1] [1 1] T [1 1] [1 1] T [1 1] og h y finnes ved operatoren [1 1] T [1 1] [1 1] [ 1 1] T [1 1] T [1 1] [1 1] [ 1 1] T Hvilke to vanlige bildebehandlingsoperatorer svarer dette til? Diskuter generelle fordeler og ulemper ved den praktiske bruken av de to operatorene. e) Vis hvordan du kan sette sammen elementer fra operatorene ovenfor til en 7 7 LoG-operator, og at denne filtreringen kan betraktes som differansen mellom to lavpass-filtreringer. Lykke til! (Fortsettes på side 7.)

Eksamen iin106, Onsdag 30. mai - fredag 1. juni 2001 Side 7 MATLAB toolbox Here is a small set of useful hints and functions in MATLAB. Printing a figure: choose 'Print' on the figure menue. Choose 'Print to file' and print it using the IFI print programme if direct printing does not work. If the figure is in color and you do not have access to a color printer, you can print in greylevels on a regular printer. You can then describe what you saw on the screen compared to the paper print of the figure. Several curves on the same plot: plot(x1); hold; plot(x2); % x1 and x2 will now appear in the same plot Use hold one more time to release the plot such that your next plot is on a new figure. plot(x1(201:400)); Plot only parts of a signal Read and display a tiff image: r=imread('bilde.tiff'); imshow(r); Conversion between TIFF and XITE image format: use biff2tiff and tiff2biff. Filtering: you are recommended to use the function firfilt (available from the dspfirst toolbox). Local operations in 1D in MATLAB can be performed by: x2 = nlfilter(x,[3 1], 'max'); See MATLAB documentation or help for the function nlfilter. Frequency response: use the function freqz(h,1,zz); Given two set of index values t1=[1:1:100] and t2=[1:5:100] If signalinn is defined for indexes t2, you can interpolate by nyttsignal = interp1(t2,signalinn,t1,method); Try help interp1 to see different options for method. Plot of two signals defined for different indexes t1 and t2: plot(t1,signal1); plot(t2,signal2); Reading sound files on.wav format: [mysound,fs,nbits] =wavread('/hom/in106/myfile.wav'); To play sound from MATLAB, we recommend that you use a SOLARIS workstation at IFI. If you use a different type of computer, you must make sure that you know how to play the sound. On a SOLARIS workstation, start the program gaintool from the unix prompt. Choose the option jack and plug in your headphones in the correct plug at the back of the computer. soundsc(mysound); should now work if the earphones are correctly attached.