Oppgave 1 - Komme i gang med pikselmanipulasjon i Matlab
im = imread('mona.png');
[N M] = size(im);
out = zeros(N,M);
c = 2.5;
for i=2:N
for j=1:M
out(i,j) = c * ( im(i,j)-im(i-1,j) );
end
end
bias = 128;
image(out + bias); colormap(gray(256));
Oppgave 2 - Oppløsning og samplingsteoremet
- Rayleigh-kriteret: sin(t) = 1.22*lambda/D gir ca. 6.1*E-5. Siden for små t vil sin(t)=tan(t)=t, så y=s*tan(t)=0.305mm.
- Fra notat: y' = y*f/(s-f) = 3.08E-06m, altså ca 3.1mikrometer.
- T_0 = y' = ca 3.1 mikrometer. f_0 = 1/T_0 = ca 1/3.1 mikrometer^{-1} (altså ca 1/3.1 per mikrometer).
- Samplingsteoremet sier at man må ha mer enn 2 samples per periode. Altså må vi ha mindre enn 2 samples per 3.1mikrometer. Ts<1.54mikrometer
- 16mm/1.54mikrometer er ca. 5200, og 24mm/1.54mikrometer er ca. 7800, så vi må ha 5200x7800 sampler (ca. 38.5 megasamples)
- Vi ville ha halve oppløsningen, altså 3.1x2=6.2mikrometer mellom hvert punkt, mindre enn 3.1mikrometer mellom samplene, og 1/4 av alle samplene i oppgave e.
- Fra Rayleigh-kriteriet ser vi at en økning av D vil gi mindre minste avstand mellom punktspredere som kan skilles. Altså bedre oppløsning.
Oppgave 3 - Pikselstørrelse og anti-aliasing
Hver piksel ville bestått av middelverdien til 5x5=25 punkter, så resultatbildet ville blitt flatt (grått). Om samplene var kun 1x1 mikrometer ville bildet fortsatt vært flatt, men intensiteten ville vært avhengig av hvor pikslene starter.
Oppgave 5 - Lagringsbehov
Vi multipliserer og får
linjer x sampler per linje x bytes per pixel x bilder per sek x antall sekunder i 2 timer
altså
1080 x 1920 x 3 x 50 x 60x60x2 = 2.239.488.000.000
Dette er rundt 2086 gigabytes, eller rundt 2 terabytes. Kompresjon vil være av vesentlig betydning.
Oppgave 6 - Rekvantisering
Siden like mange forgrunn som bakgrunn, ville kvantiseringsterskelen bli lagt midt mellom 50 og 200, (50+200)/2 = 125. Rekonstruksjon hvor 0 ble gjort om til 50 og 1 til 200.