Tentamen 19 december 003 Multimedia Informatie en Informatieverwerking Een tentamen is géén verslag: de vraag hoeft niet herhaald te worden. Graag korte antwoorden. Lange antwoorden waarin je je kennis spuit maar geen antwoord geeft op de vraag worden niet op prijs gesteld. Graag zoveel mogelijk beantwoording van de vragen in volgorde. opgave in de kantlijn. Zet altijd het nummer van de Voorzie elke blad van je naam en studienummer. SUCCES! 1 Imode Imode is een nieuwe digitale telefonie standaard. Een voordeel boven de bekende GSM standaard is een hogere bitrate (aantal bits dat per seconde van en naar de telefoon verzonden kan worden). Daarmee is het ontvangen van beeld en geluid in redelijke kwaliteit mogelijk. 1.a Omdat het scherm op een telefoon klein is, moeten vaak de beelden verkleind worden om op het scherm getoond te kunnen worden. Een eenvoudige manier om een beeld van 400 bij 400 pixels op een schermpje van standaard 10 pixels breed te tonen is om simpelweg te subsamplen. Simpelweg subsamplen leidt tot aliasing. In het boek is op pagina 43 te lezen: some frequency components in the original will get transformed into other frequencies. Geef een korte uitleg van het aliasing effect en leg daarbij uit welke frequenties in het origineel worden omgezet in welke andere frequenties? Het aliasing effect ontstaat als in het te bemonsteren signaal frequenties hoger dan een half maal de sample frequentie voorkomen. Deze hoge frequenties komen dan terug in het bemonsterde signaal als frequenties lager dan de halve sample frequentie. 1.b Wat moet je doen vóórdat je een beeld subsampled om het terug te brengen van 400 bij 400 tot 100 bij 100 pixels? Waarom wordt daarmee het aliasing effect vermeden? Van elk vierkantje van 4 4 pixels de gemiddelde waarde nemen en deze waarde als samplewaarde gebruiken. Hiermee worden de hoge frequenties (hoger dan de halve sample frequentie) onderdrukt en kunnen daarom geen aliasing meer tot gevolg hebben. 1.c Een Imode toestel geeft een gebruiker toegang tot het WWW. Webpagina s speciaal voor Imode zijn geschreven volgens de chtml (of ihtml) standaard. In figuur 1 zie je links het scherm van een (gesimuleerd) Imode toestel waarop via de UvA website het telefoonnummer van R. van den Boomgaard wordt opgevraagd. Dezelfde webpagina, maar dan zoals weergegeven met een standaard web browser (Mozilla) is rechts in hetzelfde figuur te zien. De chtml bron code voor deze pagina is: 1
Figure 1: Imode Zoek Resultaat <!DOCTYPE "-//W3C//DTD Compact HTML 1.0 Draft//En"> <html> <head> <title>universiteit van Amsterdam</title> </head> <body> <img src="/gfx/zoek.gif" alt="details" height="5" width="10"><br> van den Boomgaard, R. <p> <a href="mailto:rein@science.uva.nl">rein@science.uva.nl</a><br> <a href="tel:+310557560">+310557560</a><br> </p> </body> </html> Waarvoor staat en waar komt het mee overeen op het beeldscherm van het imode toestel? is een numeric character reference (zie blz 36 van boek) en is een aanduiding van een character uit de gebruikte karakterset. In het door een Imode gebruikte karakterset is het karakter een envelop symbool. 1.d Waarom is de weergave van in de webbrowser niet goed gegaan? Wat had de maker van de chtml pagina kunnen toevoegen om het zo mogelijk te verbeteren. De webbrowser kent kennelijk de Imode karakter set niet. De maker van de chtml pagina had een expliciete verwijzing naar de gebruikte karakterset moeten opnemen. Dan nog is het niet zeker dat die karakterset ook voor de webbrowser beschikbaar is. 1.e In vergelijking met standaard Html is er extra functionaliteit toegevoegd aan chtml waarvan een voorbeeld in het bovenstaande codefragment te vinden is. Welke extra functionaliteit is dat? Het tel: type in het a element. Vergelijkbaar met het mailto: type dat door standaard browsers wordt ondersteund om het email programma opdracht te geven een mailtje te componeren gericht aan het opgegeven mailadres. Voor een Imode telefoontoestel is dit natuurlijk een noodzakelijke uitbreiding.
1.f Imode toestellen hebben geen muis of cursor besturing, daarmee is de standaard browser manier om links te volgen, door het aanklikken van de link, niet mogelijk. Op welke manier zou jij Html uitbreiden zodat snelle navigatie via het toetsenbord(je) mogelijk wordt. speciale functie toetsen (die in chtml ook ondersteund worden) voor functies die in chtml elementen worden aangegeven. met cursor toetsen van link naar link in het chtml document springen (dit is ook al standaard in Html maar wordt niet goed door makers van webpagina s ondersteund). spraak herkenning Fouten analyse Beschouw een stereo geluidssignaal: linker signaal is l(t), rechter signaal is r(t) waarbij t de tijd is. Het linker en rechterkanaal geluid zijn bijna altijd ongeveer aan elkaar gelijk. Daarom wordt het geluid gerepresenteerd als een center signaal c(t) en een difference signaal d(t): c(t) = d(t) = l(t) + r(t) l(t) r(t).a Hoe kunnen we het linker en rechter geluidssignaal weer reconstrueren gegeven het center en difference signaal? Reconstructie is eenvoudig: ˆl(t) = c(t) + d(t) ˆr(t) = c(t) d(t).b Zowel linker als rechterkanaal worden gesampled op 44 khz en in bits gequantiseerd. Wat wordt hiermee de maximale quantisatie fout? Maximale quatisatiefout is de helft van quantisatie interval. Stel het totale bereik van het signaal van -1 tot +1, dan is quantisatiefout r = 1. De maximale fout in l is even groot. NB. de sample frequentie heeft niets van doen met de quantisatiefout..c Wat zijn de maximale fouten in het center en in het verschil signaal? We hebben c = 1 (l + r), met gelijke maximale fouten in l en r. De maximale fout in c is: c = 1 ( l + r) = r = l Kortom de signaal manipulatie voegt geen extra quantisatieruis toe. 3
.d Wat zijn de maximale fouten in de gereconstrueerde linker en rechter signalen? In de reconstructie ontbreekt de factor 1. Daarmee krijgen we: ˆr = c + d = l Kortom in de reconstructie is de quantisatieruis met een factor twee toegenomen..e Wat moet je doen om de fouten in de gereconstrueerde signalen niet groter te laten zijn dan de oorspronkelijke quantisatie fout? Het probleem wordt vermeden als we de signalen c = l + r d = r l gebruiken en deze representeren in 17 bits om hetzelfde quantisatie interval te behouden. 3 Categorische Informatie 3.a Waarom komen we lossy coderingstechnieken met name tegen in multimedia toepassingen? De data bestanden in multimedia toepassingen zoals beeld en geluid zijn veelal bestemd voor de reproductie van het beeld en geluid t.b.v. de waarneming door de mens. Daarom mogen we die informatie weggooien (en betere compressie bereiken) die voor de mens niet waarneembaar is. 3.b Beschouw een boodschapsalfabet met 8 verschillende codons, ieder met een frequentie van voorkomen: A B C D E F G H 0.10 0.30 0.0 0.0 0.10 0.05 0.03 0.0 Bereken de selectieve (of verwachte) informatie in het oversturen van 1 (willekeurig) codon. De selectieve informatie is gedefinieerd als N p i log p i =.59 3.c Construeer de Huffman binaire boom voor de codering. i=1 4
3.d Geef de binaire codering van de codons A,...,H Codon Bits Number of bits A 100 3 B 11 C 01 D 00 E 1011 4 F 10101 5 G 101001 6 H 101000 6 3.e Wat is de verwachte bitlengte per codon van een Huffman gecodeerde sequentie. De verwachte bitlengte is gelijk aan: N n i p i =.65 i=1 waarin n i het aantal bits is voor codon i en p i de kans van optreden van dat codon. 3.f Beschrijf hoe een gecodeerde sequentie van codons gedecodeerd kan worden. Waarom is dat proces gevoelig voor ruis? Wat is een oplossing daarvoor? Als er 1 bit is ontvangen, kijk of er een codon is gecodeerd met dat ene bit. Zoniet beschouw dan ook het volgende bit in de sequentie. Zijn de nu ontvangen bits gelijk aan een codon? Zo ja begin dan overniew (en schrijf het gedecodeerde codon naar file), zo nee beschouw dan ook het volgende bit, etc etc. (M.a.w. je volgt de Huffmanboom van de root node tot je in een leaf node aankomt). Dit proces is enorm gevoelig voor ruis. 1 verkeerd ontvangen bit kan de gehele boodschap onleesbaar maken. De oplossing is het toevoegen van redundantie om fouten te kunnen herkennen en herstellen. 4 Beeld 4.a Het scherm van een Mac heeft traditioneel een resolutie van 7 dpi (dots per inch). Gegeven een beeld dat op het scherm van een Mac 4 bij 3 inches groot is. Wat moet je doen om dit beeld ook een PC (met resolutie van 96 dpi) op dezelfde grootte van 4 bij 3 inch weer te geven? 4 3 inches op een Mac scherm komt overeen met 88 pixels. Dezelfde afmetingen op een PC scherm komt overeen met een beeld van 384 88 pixels. We moeten dus een beeld van 88 pixels vergroten tot een beeld van 384 88 pixels. Daarvoor moeten we interpoleren. 4.b Wat moet je doen om een beeld dat 4bij 3 inches groot wordt weergegeven op een PC scherm in dezelfde afmeting op een MAC te tonen? Ditmaal moeten we een beeld verkleinen: van 384 88 pixels naar 88 pixels. Dat betekend subsamplen en dus ook eerst de hoge frequenties onderdukken. 5
4.c Gegeven de grijswaarden in een klein deel van een beeld: w = 1 1 5 5 75 75 75 5 5 75 73 75 5 7 5 73 75 74 5 5 75 75 75 7 3 4 70 75 70 Geef de waarden van de convolutie van het beeld f met het masker 1 1 1 1 4 1 1 = voor alle onderstreepte pixels in het beeldfragment. 1 4 van links naar rechts levert dit: 4.69, 37.1, 61.69 en 74.31. 4.d Waarom is dit filter in staat om de ruis in een beeld te onderdrukken? We nemen steeds een (gewogen) gemiddelde over de pixel waarden in een kleine omgeving in een beeld. De ruis in de 9 pixels in een omgeving zal soms positief, soms negatief zijn. De som van de ruis zal dicht bij nul liggen (als we zouden middelen over zeer vele pixels zouden we de ruis volledig kunnen onderdrukken). 4.e Als de ruis bijdrage in elk pixel normaal verdeeld is en met verwachting 0 en standaard afwijking σ, wat wordt dan de standaard afwijking van de ruis in het resultaat beeld (na convolutie). De standaard afwijking in het gemiddelde van N metingen is N maal zo klein als de standaardafwijking in 1 meting. σ N = σ 1 N 1 5 Video 5.a Geef in het kort aan welke vormen van bemonstering (sampling) en quantisatie nodig zijn bij het maken van een video (met geluid). Video: spatiele bemonstering, temporele (tijd) bemonstering, kleur quatisatie Audio: temporele bemonstering, quantisatie 5.b Wat is de spatiele (ruimtelijke) frequentie van videobeelden, wat is de temporele (in de tijd gezien) frequentie van videobeelden en waardoor zijn die twee frequentie aan elkaar gerelateerd in een video sequentie? De spatiele frequenties zijn gerelateerd aan de spatiele afwisseling van donker en licht in 1 beeld. De temporele freqentie is gerelateerd aan de afwisseling van donker en licht gezien in 1 punt van het beeld als functie van de tijd. De twee frequenties zijn gekoppeld via de beweging van de objecten voor de camera, de beweging van de camera of een combinatie daarvan. 6
5.c MPEG gaat verder dan Motion JPEG (MJPEG) door het gebruik van inter frame compressie. Een medestudent komt op het idee om alle frames in een beeld eerst met JPEG te coderen en dan vervolgens die sequentie van gecomprimeerde databestanden te comprimeren via een MPEG achtige inter frame compressie techniek. Leg uit waarom dat geen goed idee is. Omdat door de JPEG codering van de beelden de localisering van de pixels in de beelden niet meer vastligt. Het is bij de interframe codering van groot belang dat we de waardes van dezelfde pixelposities kunnen volgen in de tijd. 5.d Je hebt de taak om een video camera aan te schaffen om de finish van het 100 m hardlopen voor heren vast te leggen, zodanig dat met een nauwkeurigheid van 1 mm de winnaar op de video is vastgelegd. Wat is de minimale frame rate (fps) van de aan te schaffen camera? (hint: het is heel wat meer dan de standaard 4 fps, hint: je mag aannemen dat de snelheid aan de finish ongeveer 10 meter per seconde is (dat is ongeveer de gemidddelde snelheid over 100 m), hint: je mag aannemen dat de spatiele resolutie van de camera voldoende is om een verschil van 1 mm aan de finish voldoende nauwkeurig vast te leggen). 6 Geluid 6.a Geef 4 voorbeelden van multimedia toepassingen waarin het gebruik van geluid van groot belang is. spellen, programmatuur voor kinderen (spellen maar ook educatief), programmatuur voor slechtzienden, video streaming, spraak interface van een routeplanner in de auto, interactieve taalcursus, (muziek) encyclopedie, etc, etc 6.b Waarom kan spraak efficienter worden gecodeerd dan muziek? Denk hierbij aan zowel technische, perceptieve als ook toepassings gerichte aspecten. Menselijke spraak bevat relatief veel stiltes. Die zijn zeer efficient te coderen. Menselijke spraak beslaat een kleiner frequentiegebied dan muziek. De gebruikelijke sample frequentie voor spraak is dan ook maar 8 KHz. Omdat we weten hoe het menselijke spraakgeluid tot stand komt, kunnen we ook een coderingstechniek ontwerpen die daar op afgestemd is. Het is veelal niet de bedoeling om een zo goed mogelijke weergave (Hifi) van het spraakgeluid te krijgen maar een goed verstaanbare weergave. 7
6.c Soms wil een radio ontvanger wel eens een bromtoon van 50 Hz produceren (de frequentie van de voedings wisselspanning). Hoewel die bromtoon hinderlijk hard kan zijn, beinvloed het slechts zelden de verstaanbaarheid van het radiojournaal. Waarom is dat zo? Vanwege het masking effect (zie blz 401) waarbij een dominante toon van een bepaalde frequentie het moeilijk maakt om geluid van soortgelijke frequentie duidelijk et onderscheiden. De 50 Hz bromtoon is echter ver verwijderd van de spraak frequentie van (ongeveer) 4 KHz. 6.d De geluids codering in een GSM telefoontje begint met een geluids bemonstering met een sample frequentie van 8 KHz. Waarom deze frequentie? Spraakfrequentie is om en nabij 4 KHz. Een twee maal zo hoge sample frequentie stelt ons dan in staat om het spraak signaal uit de samples te reconstrueren. 6.e Stel dat het geluidssignaal in een GSM telefoon in 8 bit wordt gequantiseerd. Wat is dan de bitrate van het ongecomprimeerde digitale geluidssignaal en hoe verhoudt zich dat tot de maximale bitrate van 13. Kbit per seconde van het GSM netwerk? 8000 samples van 8 bit per seconde is 64000 bit per seconde per seconde. Dat is dus ongeveer 5 keer meer dan het GSM netwerk aankan. Een compressie met een factor van meer dan 5 is dus nodig. 8