INF2310 vår 2017 - UKEOPPGAVER 5

Denne oppgåva vil omhandle grunnleggjande filtrering, middelverdifiltrering og medianfiltrering.

English version.

Oppgåve 1 - 1D-konvolusjon av to filtre

Gitt to 1D filtere

w = [1 2 1]

og

f = [1 3 4 3 4]

Utfør konvolusjonen av f med w for hand, ved bruk av alle versjonar vi diskuterte i forelesninga:

a)

full mode (hint: resultatet skal ha lengde 7).

b)

valid mode (hint: resultatet skal ha lengde 3).

c)

same mode med nullutviding (hint: resultatet skal ha lengde 5).

Oppgave 2 - 2D-konvolusjon

Konvolver 2D-filteret w:

1 1 1
1 1 1
1 1 1

med 2D-bildet f:

2 5 3 1
0 2 3 3
0 7 6 3
6 0 6 5

Utfør konvolusjonen av f med w for hand, ved bruk av alle versjonar vi diskuterte i forelesninga:

a)

full mode (hint: resultatetbildet skal ha størrelse 6x6).

b)

valid mode (hint: resultatetbildet skal ha størrelse 2x2).

c)

same mode med nullutviding (hint: resultatetbildet skal ha størrelse 4x4).

Oppgave 3 - Middelverdifiltrering

Anta at vi glatter et bilde ved å konvolvere det med eit 3x3-middelverdifilter. Vidare glatter vi resultatet ein gang til med det same 3x3 middelverdifilteret. Altså har vi konvolvert eit bilete f med eit middleverdifilter w to ganger.

a)

Kva for filter vil gi samme resultat ved kun ein konvolusjon?

b)

Er dette filteret separabelt, og i tilfelle det er det, kva filtre kan ein separere det i?

c)

Gir ein vilkårlig kombinasjon (f.eks. sum) av separable filtre eit nytt separabelt filter?

d)

Gir ein konvolusjon av vilkårlige separable filtre eit separabelt filter?

Oppgave 4 - Bilderandproblemet

Diskuter fordeler og ulemper ved speilende indeksering (symmetrical padding) og sirkulær indeksering (circular padding).

Oppgave 5 - Medianfiltrering

Gitt følgende binære 7x10-bilde av bokstavene "iQ":

0 0 0 0 0 0 0 0 0 0
0 1 0 1 1 1 1 1 0 0
0 0 0 1 0 0 0 1 0 0
0 1 0 1 0 0 0 1 0 0
0 1 0 1 0 0 0 1 0 0
0 1 0 0 1 1 1 1 1 0
0 0 0 0 0 0 0 0 0 0

 

Medianfiltrer dette bildet for hånd når du trunkere ut-bildet til størrelse 5x8 ved å ikke beregne responsen langs bilderanden og bruker hvert av følgende naboskaper:

a)

Sentrert 3x3-naboskap:

     
     
     


b)

Sentrert 1x3-naboskap:

     


c)

Sentrert 3x1-naboskap:

 
 
 


 

d)

Bruk resultatene fra deloppgave a), b), c) til å begrunne at 3x3-medianfilteret, d.v.s. medianfilteret med naboskapet i deloppgave 1, ikke kan separeres i 1x3-medianfilteret og 3x1-medianfilteret, altså medianfiltrene med naboskapene i deloppgave b) og c)?
Husk: Vi kaller et (muligens ikke-lineært) filter separabelt dersom filtreringen kan utføres som to sekvensielle 1D-filtreringer.

Oppgave 6 - Et smartere median-basert filter?

Medianfiltrering med kvadratiske naboskap gir ikke ønsket verdi for hjørnepiksler og piksler i tynne linjer.

Undersøk om det følgande 5x5 filteret tar betre vare på hjørner og tynne linjer, og kombinasjonen av dei. Filteret er slik at resultatet i (x, y) er

\(g[x, y] = \mathrm{median}\{\min\{\mathcal{A}_2(x, y)\}, \min\{\mathcal{A}_1(x, y)\}, f[x, y], \max\{\mathcal{A}_1(x, y)\}, \max\{\mathcal{A}_2(x, y)\}\}\)

der

  • \(f[x, y]\) er pikselverdien til (x,y) i inn-bildet (grøn),
  • \(\mathcal{A}_1(x, y)\) er dei 8 pikslene med 8-tilkoblet avstand 1 fra (x,y) (raud),
  • \(\mathcal{A}_2(x, y)\) er dei 16 pikslene med 8-tilkoblet avstand 2 til (x,y) (blå)

Du kan prøve filteret på dei følgjande testbileta (ignorer bilderandproblemet).

a) Hjørne

0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 1
0 0 0 0 1 1 1 1
0 0 0 0 1 1 1 1
0 0 0 0 1 1 1 1

 

b) Tynn linje

0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0

 

c) Ein kombinasjon av eit hjørne og ei tynn linje

0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
Publisert 21. feb. 2017 16:07 - Sist endret 21. feb. 2017 19:39