INF2310 vår 2018 - Løsningshint 1

Husk også gruppelærers ressursside, hvor det bl.a. finnes notater om -- og kode i -- Python: https://krisbhei.github.io/INF2310/main/main.html

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

  1. Rayleigh-kriteriet: sin(t) = 1.22*lambda/D gir ca. 6.1*E-5. Siden sin(t) = tan(t) = t  for små t, så er y = s*tan(t) = 0.305 mm.
  2. Fra notat: y' = y*f/(s-f) = 3.08E-06 m, altså ca 3.1 mikrometer.
  3. 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).
  4. Samplingsteoremet sier at man må ha mer enn 2 sampler per minste periode. Altså må vi ha mer enn 2 sampler per 3.08 mikrometer, altså Ts < 1.54 mikrometer.
  5. 16 mm / 1.54 mikrometer er ca. 10400, og 24 mm / 1.54 mikrometer er ca. 15600, så vi må ha 10400x15600 sampler (ca. 162 megasampler).
  6. Vi ville ha halve oppløsningen, altså 3.1 x 2 = 6.2 mikrometer mellom hvert punkt, mindre enn 3.1 mikrometer mellom samplene, og 1/4 av alle samplene i oppgave e.
  7. Fra Rayleigh-kriteriet ser vi at en økning av D vil gi mindre minste avstand mellom punktspredere som kan skilles. Altså bedre romlig 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 på bildeflaten pikselgriddet plasseres.

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 forgrunns- som bakgrunnspiksler, 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. Dette for å minimere den totale kvantiseringsfeilen.

Publisert 28. jan. 2018 13:03 - Sist endret 28. jan. 2018 13:03