Tentamen i Text- och bildbehandling (2D1378) onsdagen den 13 januari 1999, kl med lösningsidéer

Relevanta dokument
Lösningsidéer till Tentamen i Text- och bildbehandling (2D1378) fredagen den 24 oktober 2003, kl. 8 13

Tentamen i Text- och bildbehandling (2D1378) lördagen den 18 januari 2003, kl med lösningsidéer

Tentamen i Text- och bildbehandling (2D1378) måndagen den 21 oktober 2002, kl med lösningsidéer

Tentamen i Text- och bildbehandling (2D1378) onsdagen den 10 januari 2001, kl med lösningsidéer

Lösningsidéer till tentamen i Text- och bildbehandling (2D1378) torsdagen den 21 oktober 1999, kl. 8 13

Tentamen i Datorstöd för textbehandling, NA1060, lördagen den 12 maj 2000 kl 8 13 med lösningsidéer

Tentamen i Medieteknik (2D2020) måndagen den 23 oktober 2006 kl med lösningsidéer

Tentamen i Datorstöd för textbehandling, NA1060, lördagen den 6 maj 2000 kl 8 13 med lösningsidéer

Laboration 4: Digitala bilder

Tentamen i Datorstöd för textbehandling, NA1060, lördagen den 4 maj 2002 kl 8 13

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Tentamen Grundläggande programmering

DIGITAL RASTRERING. Sasan Gooran. 1/8/15 Grafisk teknik 1

3 Man kan derivera i Matlab genom att approximera derivator med differenskvoter. Funktionen cosinus deriveras för x-värdena på följande sätt.

Signal- och bildbehandling TSBB14

kl Tentaupplägg

DIGITAL RASTRERING. Sasan Gooran (HT 2003) Grafisk teknik 1

DIGITAL RASTRERING. DIGITALA BILDER (pixelbaserad) ppi (pixels per inch) Sasan Gooran (HT 2003)

Tentamen, Algoritmer och datastrukturer

Linköpings Tekniska Högskola Instutitionen för Datavetenskap (IDA) Torbjörn Jonsson, Erik Nilsson Lab 2: Underprogram

ORDLISTA WEBBDESIGN 100P

1. Betrakta en plan harmonisk elektromagnetisk våg i vakuum där det elektriska fältet E uttrycks på följande sätt (i SI-enheter):

7 Olika faltningkärnor. Omsampling. 2D Sampling.

TDDC74 Programmering: Abstraktion och modellering Tenta, kl 14 18, 11 juni 2014

TDDC74 Programmering: Abstraktion och modellering Tentamen, onsdag 9 juni 2016, kl 14 18

Programmering II (ID1019) :00-11:00

M0043M Integralkalkyl och Linjär Algebra, H14, Matlab, Föreläsning 1

Matriser och vektorer i Matlab

Linjär Algebra, Föreläsning 2

Luft. film n. I 2 Luft

Innehåll. Föreläsning 12. Binärt sökträd. Binära sökträd. Flervägs sökträd. Balanserade binära sökträd. Sökträd Sökning. Sökning och Sökträd

Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26

Rekursion och induktion för algoritmkonstruktion

Tentamen i Algoritmer & Datastrukturer i Java

Grafisk Teknik. Färg. Övningar med lösningar/svar. Sasan Gooran (HT 2013)

Moment 6.1, 6.2 Viktiga exempel Övningsuppgifter T6.1-T6.6

Uppgift 1 (vadå sortering?)

Signal- och bildbehandling TSBB03

KOMPLETTERANDE HEMTENTAMEN TDDB53

ppi = 72 ppi = 36 ppi = 18 DIGITAL RASTRERING DIGITALA BILDER (pixelbaserad) ppi (pixels per inch) Sasan Gooran (HT 2003)

Färgtyper. Färg. Skriva ut. Använda färg. Pappershantering. Underhåll. Felsökning. Administration. Index

Lektion 3 HTML, CSS och JavaScript

Föreläsning 14 och 15: Diffraktion och interferens i gitter, vanliga linser, diffraktiv optik och holografi

6. Matriser Definition av matriser 62 6 MATRISER. En matris är ett rektangulärt schema av tal: a 11 a 12 a 13 a 1n a 21 a 22 a 23 a 2n A =

Det är principer och idéer som är viktiga. Skriv så att du övertygar rättaren om att du har förstått dessa även om detaljer kan vara felaktiga.

Föreläsning 5: Kardinalitet. Funktioners tillväxt

Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här:

TAIU07 Matematiska beräkningar med Matlab

Tentamen i Grundläggande Programvaruutveckling, TDA548

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

if (n==null) { return null; } else { return new Node(n.data, copy(n.next));

Uppgift 1 (grundläggande konstruktioner)

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING. Övningstentamen 1

Datalogi, grundkurs 1. Lösningsförslag till tentamen

1. Ge en tydlig förklaring av Dopplereffekt. Härled formeln för frekvens som funktion av källans hastighet i stillastående luft.

2D1310 Programmeringsteknik Tentamen (1p) lördag 29 april 2000 kl 14-17

Vad skall vi gå igenom under denna period?

TDDC74 Programmering: Abstraktion och modellering Tentamen, onsdag 19 oktober 2016, kl 14 18

Inför prov 1 i webbdesign

Matriser och Inbyggda funktioner i Matlab

Att styla webbsidor. Nivå. Uppgiften

Föreläsning 7: Antireflexbehandling

Tentamen i Våglära och optik för F

Hjälpmedel: Typgodkänd räknare, Physics Handbook, Mathematics Handbook.

Gauss Linsformel (härledning)

Bedömning av kontrollskrivning, EDA016 Programmeringsteknik

Tentamen i matematik. f(x) = ln(ln(x)),

Laboration 1 Fysik

Så skapas färgbilder i datorn

Föreläsning 5: Dynamisk programmering

Några saker till och lite om snabbare sortering

Tentamen TNM061, 3D-grafik och animering för MT2. Onsdag 20/ kl SP71. Inga hjälpmedel

Utformning av enkla dokument med datorstöd

Programmeringsuppgift Game of Life

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Högskolan i Skövde (SK, JS) Svensk version Tentamen i matematik Lösningsförslag till del I

TENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13:15

Tentamen'('Datastrukturer,'algoritmer'och'programkonstruktion.'

HI1024 Programmering, grundkurs TEN

5. Elektromagnetiska vågor - interferens

Textsträngar från/till skärm eller fil

TDP Regler

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Introduktion till MATLAB

1. (a) (1p) Undersök om de tre vektorerna nedan är linjärt oberoende i vektorrummet

λ = T 2 g/(2π) 250/6 40 m

Datalogi, grundkurs 1

Ljuskällor. För att vi ska kunna se något måste det finnas en ljuskälla

INFORMATIK - MED SYSTEMVETENSKAPLIG INRIKTNING, GRK/A (1-30 HP)

Föreläsning 3-4 Innehåll

Projekt bå gbro. Inledande ingenjörskurs Högskoleingenjörsprogrammet i byggteknik

Tentamen i Grundläggande Programvaruutveckling, TDA548

Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,

Bildbehandling, del 1

Tentamen i Programmering

OPTIK läran om ljuset

Övning 9 Tenta

Övning 1 Dispersion och prismaeffekt

Transkript:

IPLab, Nada, KTH 1999-01-13 1 Tentamen i Text- och bildbehandling (2D1378) onsdagen den 13 januari 1999, kl. 14 19 med lösningsidéer Hjälpmedel: räknedosa Fråga om något verkar oklart. Ange tydligt på omslaget vilken linje du tillhör. Vi behöver bl.a. kunna särskilja KTH och SU. Av 56 möjliga poäng ger 26 säkert betyg 3 (G), 37 säkert betyg 4, 41 säkert betyg VG och 47 säkert betyg 5. 1 (6) Förklara följande begrepp och termer (komplettera gärna med exempel). Du ska dels beskriva begreppet, dels avgränsa det från närliggande begrepp. (Varje felaktig eller utelämnad förklaring ger 1 p avdrag. Uppgiften ger dock minst 0 p.) a. blinda fläcken b. cedilj c. histogramutjämning d. horunge e. linjärer f. moaré g. OCR h. punktoperation i. tvålinjesiffra 2 (Strängsökning) Sökning enligt Boyer-Moore kan beskrivas så här: function BM :integer; var i,j,k :integer; begin i:=m; j:=m; repeat if s(i)=p(j) then begin i:=i-1; j:=j-1; end else begin k:=max(delta1(s(i)),delta2(j)); i:=i+k; j:=m; end; until (i>n) or (j=0); if j=0 then BM:=i+1 else BM:=n+1; end (* BM *); 2a (3) Konstruera vektorerna delta1 och delta2 för mönstren ABAC, CDBABA och ABAAB. Glöm inte att behandla tecken i alfabetet som inte ingår i mönstret. 2b (2) 2c (2) Visa sökning efter mönstret ABAAB i texten AAACBBBAABAAB. I en variant av BM enligt Horspool använder man inte vektorn delta2. Diskutera med hjälp av exemplen ovan hur delta1 och algoritmen behöver modifieras för att fungera i detta fall. 3a (2) (Typografiska tumregler) Redogör för hur horisontella streck av olika längd (-, och ) används. 3b (2) Redogör för hur olika citatteckenliknade tecken används (,,,, ', ",» och «). 3c (2) Vad är och hur används avstavningsanvisning (mjukt bindestreck), hårt bindestreck och bindeblank (hårt blanktecken)? 4a (2) 4b (3) 5a (1) 5b (3) (Radplanering) Hur går radplanering (uppdelning av stycke i rader) till i vanliga ordbehandlare såsom MSWord? Du ska inte gå in på hur programmet hittar avstavningspunkter i ord. Beskriv motsvarande radplanering i TeX. (Märkspråk) Vad är attribut i SGML? Förklara följande fragment ur en DTD. <!ELEMENT HR O EMPTY> <!ATTLIST HR align (left right center) #IMPLIED noshade (noshade) #IMPLIED size NUMBER #IMPLIED width CDATA #IMPLIED >

IPLab, Nada, KTH 1999-01-13 2 5c (3) 6a (2) 6b (3) 7a (3) 7b (2) 7c (2) 7d (3) I CSS (Cascading Style Sheet) är H1 { font: 12pt/14pt helvetica } en regel och H1 i denna regel kallas selektordel. Ange för varje selektordel nedan vad som ska gälla för ett avsnitt HTML-kod för att en CSS-regel med denna selektordel ska gälla för avsnittet. A.A #A A, B A.A A#A A B DIV SPAN.A (Bildlagring) Flera bildformat, bl.a. gif, använder»indexerade färger». Vad innebär det? Flera bildformat, bl.a. gif, använder följdlängdskodning. Beskriv något sätt att följdlängdskoda bilder med mer än 2 färger. (Rastrering) Rita upp rasterpunkten för ett rationellt raster med rastervinkeln 45 grader och 73 grånivåer. Visa tydligt att planet täcks av sådana rasterpunkter. Vilken rastertäthet motsvarar detta raster vid 600 exponeringspunkter per tum? En tillverkare (Optronics) annonserar f.n. att de kan åstadkomma högklassig rastrering vid 1 000 exponeringspunkter per tum. På vilket sätt är detta anmärkningsvärt? I Postscript kan man styra rastreringen med operatorn setscreen: frekvens vinkel tröskelvärdesprocedur setscreen Förklara hur operatorn fungerar. Vilket blir resultatet vid rastrering på en utmatningsenhet med 300 exponeringspunkter per tum av en bild med bildvärdet 0,3 (där 1 är vitt) med ett raster som åstadkoms med 50 0 {2 copy lt {pop} {exch pop} ifelse} setscreen. Proceduren beräknar minimum av sina två operander. 8a (3) (Geometrisk operation) Vid en geometrisk operation ges ju bildvärdet för en bildpunkt i den nya bilden av värdet i motsvarande punkt i den gamla bilden. Detta värde räknas ut genom någon sorts interpolation mellan bildpunkter i den gamla bilden. Beskriv två interpolationsmetoder som används i sådana sammanhang. 8b (3) Demonstrera en av metoderna du anger i 8a genom att förminska bilden t.v. till 40 %. 10 20 40 70 110 20 50 80 60 40 30 80 70 60 50 40 80 80 70 60?? 20 90 70 50 30?? 9 (3) (Färghantering) Beräkning av färgkoordinater för ett färgprov med refektansen f (λ ) kan göras genom att man bildar R= f r d ( λ) ( λ) λ G = f( λ) g( λ) dλ B= f b d ( λ) ( λ) λ Hur har man fått fram de tre funktionerna r, g och b? Visa att två färgprov kan se lika ut i en belysning medan de ser olika ut i en annan belysning. 0,4 0,2 0,0 b r g r 400 500 600 700 [nm] Lycka till!

IPLab, Nada, KTH 1999-01-13 3 1 a. blinda fläcken Område i näthinnan där synnerven lämnar ögat och som saknar synceller. b. cedilj Diakritiskt tecken som bl.a. används i bokstaven ç. c. histogramutjämning Tonförändring av en bild som ger den nya bilden ett jämnare histogram. Vissa varianter av histogramutjämning bygger på att vissa bildpunkter som i den gamla bilden har samma värde får olika värden i den nya. d. horunge Första eller sista rad i stycke som står ensam nederst eller överst i spalt eller på sida. e. linjärer Teckensnittsfamilj utan seriffer. f. moaré Oönskade mönster (interferens) när mönster överlagras. g. OCR Teckenigenkänning (optical character recognition). Att från bilder av ett dokument avgöra viken text det innehåller. h. punktoperation Bildbehandlingsoperation där varje bildpunkt i den nya bilden beräknas bara ur motsvarande bildpunkt i den gamla bilden. i. tvålinjesiffra Vanliga siffror som står på baslinjen och är höga som versaler i motsats till fyrlinjesiffror som i vissa fall når ned som understaplar och i vissa fall bara går upp till x-höjd. 2a delta1 A B C * delta2 A B A C 1 2 0 4 7 6 5 1 delta1 A B C D * delta2 C D B A B A 0 1 5 4 6 11 10 9 4 7 1 2b 2c delta1 A B * delta2 A B A A B 1 0 5 7 6 5 6 1 AAACBBBAABAAB ABA AB ABAAB ABAAB function BMH :integer; var i,j,k :integer; begin i:=m; j:=m; k:=m; repeat if s(i)=p(j) then begin i:=i-1; j:=j-1; end else begin k:= k+delta(s(k)); i:=k; j:=m; end; until (i>n) or (j=0); if j=0 then BMH:=i+1 else BMH:=n+1; end (* BM *); Alla komponenter i delta initieras till m. Därefter görs for j:=1 to m-1 do delta(p(j)):=m-j;

IPLab, Nada, KTH 1999-01-13 4 3a Här nämns vanliga användningar av de olika strecken i svenska och engelska. - kort streck bindestreck vid avstavning bindestreck i vissa sammansatta ord t.ex. Tarras-Valberg mellan grupper i numrering t.ex. 1999-01-12 minustecken i programspråk o.d. halvlångt streck minustecken i text t.ex. (a+b) tillstreck t.ex. 9 11 pratminus tankstreck i svenska t.ex. Hon ville åtminstone inte då säga något mer. långt streck tankstreck i engelska 3b och citat i svenska med citat i engelska med och innercitat i svenska med innercitat i engelska med apostrof t.ex. Va sa han? isn t ' fot och minut (både tid och vinkel) i vissa programspråk kring strängar eller tecken " tum och sekund (både tid och vinkel) i vissa programspråk kring strängar eller tecken» och «citat i svenskan med»» (mindre vanligt och ej rekommendabelt med» «) 3c avstavningsanvisning (mjukt bindestreck) tecken som markerar möjlig avstavningspunkt, när avstavning görs visas avstavningsanvisningen som bindestreck och radbyte och annars visas den ej hårt bindestreck bindestreck som visas som vanligt bindestreck men raden får ej brytas vid detta bindeblank (hårt blanktecken) blanktecken vid vilket raden ej får brytas, i t.ex. MSWord har dessutom tecknet fix bredd (1/4 fyrkant)

IPLab, Nada, KTH 1999-01-13 5 4a 4b Radbrytningarna bestäms i ordning från styckets början utan hänsyn till resten av stycket. Så många ord som möjligt tas med utan att något ord går ut i högermarginalen. Om avstavningsfunktionen är aktiv och raden är en viss sträcka kortare än spalten erbjuds användaren att avstava det första ord som ej ryms. För varje rad kan man beräkna en»dålighet» baserat på radens sträck- och krympbarhet och dess längd i förhållande till spaltens. Av de 2^(antalet ord 1) att dela upp stycket i rader väljs de ut där ingen rads dålighet överstiger parametern pretolerance. Om minst en sådan uppdelning finns väljs den bästa av dem. Annars letar man reda på möjliga avstavningspunkter och bland de 2^(antal ord + antal avstavningsmöjligheter 1) möjligheterna att dela upp stycket väljs de ut där ingen rads dålighet överstiger parametern tolerance. Om minst en sådan uppdelning finns väljs den bästa av dem. Annars skrivs ett meddelande om att stycket inte kan radplaneras. Metoden tar på detta sätt hänsyn till hela stycket. I valet mellan olika radfall beaktas dels summan av dåligheterna, dels andra faktorer såsom antalet avstavningar, starkt olika sträckning av intilliggande rader m.m. 5a 5b Attribut är information som kopplas till ett element utan att vara del av innehållet. Elementet måste inledas explicit med <HR> men behöver inte avslutas explicit med </HR> och det är dessutom tomt (kan inte ha något innehåll) och får därmed inte avslutas. Elementtypen HR har fyra attribut, inget behöver anges. Attributet align får ges något av värdena left, right eller center och noshade får ges värdet noshade. Attributet size får ges ett talvärde och width får ges ett värde av typ CDATA, en följd av tecken som inte tolkas. 5c A <A> </A>.A <element CLASS=A> </element> #A <element ID=A> </element> A, B både i <A> </A> och i <B> </B> A.A A#A A B DIV SPAN.A <A CLASS=A> </A> <A ID=A> </A> <A><B> </B></A> <DIV> </DIV> <SPAN CLASS=A> </SPAN> 6a 6b Istället för att i varje bildpunkt lagra färgen med 16 bitar (tusentals färger) eller 24 bitar (miljontals färger) lagrar man varje bildpunkt som ett index till en färgtabell där färgen beskrivs. Oftast är index 8 bitar och färgtabellen rymmer då 256 färger. Har bilden fler färger än platser i färgtabellen kastar man viss färginformation och approximerar med närmaste färg i tabellen eller använder rastrering dvs. ser till att medelfärgen i varje område blir rätt. För en tvåfärgsbild är varannan följd av den ena färgen. Man måste bestämma första följdens färg. För flerfärgsbilder lagrar man för varje följd både färg och följdlängd. Ofta har man också kod för följd av blandade färger av viss längd. Exempel: Indexerade färger med tabellstorlek 127; låt n x där 0 n 127 betyda en följd om n+1 bildpunkter med färgindex x och n x1 x2 xm betyda de m bildpunkterna med färgindex x1 x2 xm där 128 n 255 och m=n 127.

IPLab, Nada, KTH 1999-01-13 6 7a För att komma från en punkt i en rasterpunkt till motsvarande punkt i intilliggande rasterpunkt förflyttar man sig m steg horisontellt och n steg vertikalt. Vinkeln är arctan n/m och antalet gråtoner är m^2+n^2+1. Här är alltså m=n=6. Med exponeringspunkttätheten p exponeringspunkter per längdenhet blir rastertätheten p/sqrt(m^2+n^2) rasterpunkter per längdenhet. Rastertätheten blir alltså 600/sqrt(6^2+6^2)=600/sqrt(72) 71 [per tum]. 7b 7c 7d Högklassigt raster anses innebära ungefär 133 rasterpunkter per tum och omkring 200 toner. Som framgår av tabellen går detta inte att åstadkomma med 1 000 exponeringspunkter per tum och periodiskt raster. n 5 6 10 11 12 antal toner 51 73 201 243 289 rastertäthet [per tum] 142 118 71 64 59 För 133 rasterpunkter per tum och 200 toner krävs normalt 1 900 exponeringspunkter per tum. Parametern frekvens är rastertätheten i per tum, vinkel är rastervinkeln i grader, tröskelvärdesprocedur styr rasterpunktens form. Proceduren tar två koordinater från stacken, x och y, i intervallet 1..+1 och ger ett tal i samma intervall. Proceduren anropas för varje exponeringspunkt och dessa svärtas i ordning efter det returnerade tröskelvärdet. Med 300 exponeringspunkter per tum, rastervinkeln 0 grader och 50 rasterpunkter per tum blir varje rasterpunkt 6*6 exponeringspunkter. Tröskelvärdena blir som nedan t.v. floor(0,3*37)= 11 exponeringspunkter ska vara vita. De högsta svärtas först. Området består alltså av rasterpunkter med utseendet nedan t.h. 0,83 0,5 0,17 0 0,17 0,83 0,83 0,5 0,17 0 0,17 0,17 0,83 0,5 0,17 0 0 0 0,83 0,5 0,17 0,17 0,17 0,17 0,83 0,5 0,5 0,5 0,5 0,5 0,83 0,83 0,83 0,83 0,83 0,83

IPLab, Nada, KTH 1999-01-13 7 8a 8b Några vanliga metoder är närmaste granne, bilinjär interpolation och bikubisk interpolation. En punkt i den nya bilden g(x;y) är värdet i motsvarande punkt i den gamla bilden f(p;q) som fås genom den interpolerande funktionen f*(p;q). Vid närmaste granne är f*(p;q)=f(floor(p);floor(q)). Vid bilinjär interpolation är f*(p;q)=a+bx+cy+dxy där koefficienterna bestäms genom interpolation i (p;q), (p;q+1), (p+1;q) och (p+1;q+1). Enklast blir det med närmaste granne enligt ovan. 10 20 40 70 110 20 50 80 60 40 30 80 70 60 50 40 80 80 70 60 30 70 20 90 70 50 30 20 70 9 Försökspersoner ser två belysta ytor. Den ena (provytan) belyses med monokromatiskt ljus av våglängden λ och den andra (referensytan) med en blandning av ljus från tre monokromatiska ljuskällor med standardiserade våglängder (i rött, grönt och blått våglängdsområde). Försökspersonen reglerar intensiteten på de tre ljuskällorna så att referensytan överensstämmer med provytan. Negativt värde innebär att ljuset leds över till provytan. Kurvorna är medelvärden för ett stort antal försökspersoner. Färgkoordinaterna för ljuset från en yta med reflektansen f(λ ) som belyses med ljuset h(λ ) fås av R = f (λ )h(λ )r(λ )dλ G = f (λ )h(λ )g(λ )dλ B = f (λ )h(λ )b(λ )dλ. Ett färgprov f 1 som enbart reflekterar våglängden λ 1 och ett färgprov f 2 som reflekterar både λ 1 och λ 2 är lika i en belysning h 1 som bara innehåller vågländen λ 1 men olika i belysningen h 2 som innehåller våglängderna λ 1 och λ 2.