+ All Categories
Home > Documents > ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 ›...

ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 ›...

Date post: 07-Jul-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
63
ysledky ROZ2 - Cv. 1 - Dekonvoluce - v´ ysledky Adam Novoz´ amsk´ y, [email protected] Honza Kotera, [email protected] 27. ˇ ıjna 2011 Adam Novoz´ amsk´ y, [email protected] Honza Kotera, [email protected] ROZ2 - Cv. 1 - Dekonvoluce - v´ ysledky
Transcript
Page 1: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Adam Novozamsky, [email protected] Kotera, [email protected]

27. rıjna 2011

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 2: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Maska Gaussianu

1. D-dimenzionalnı Gaussova funkce:

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 3: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Maska Gaussianu

1. D-dimenzionalnı Gaussova funkce:

◮ f(x, y) =1

(2π)d/2|Σ|1/2e

[

1

2(x−µ)tΣ−1(x−µ)

]

d... pocet dimenzıd... vektor strednı hodnoty()t... transpozice vektoruΣ... kovariancnı matice-diagonalnı Σii = σ2

i

||... determinant

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 4: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce

1. |Σ|

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 5: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce

1. |Σ|

◮ det

(σ21 00 σ2

2

)= σ2

1σ22

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 6: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce

1. |Σ|

◮ det

(σ21 00 σ2

2

)= σ2

1σ22

2. (x− µ)tΣ−1(x− µ)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 7: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce

1. |Σ|

◮ det

(σ21 00 σ2

2

)= σ2

1σ22

2. (x− µ)tΣ−1(x− µ)

(x1 − µ1 x2 − µ2

)( σ21 00 σ2

2

)−1 (

x1 − µ1

x2 − µ2

)=

(x1 − µ1 x2 − µ2

)( 1/σ21 0

0 1/σ22

)(x1 − µ1

x2 − µ2

)=

(x1 − µ1

σ21

x2 − µ2

σ22

)(x1 − µ1

x2 − µ2

)=

(x1 − µ1)2

σ21

+(x2 − µ2)

2

σ22

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 8: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce - symetricka (izotropnı)

1. σx = σy = σ

0.1

0.1

0.2

0.2

0.3

0.4

x

y

−2 −1 0 1 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

Obrazek: {µx, µx, σ} = {0, 0, 0.6}

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 9: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce - symetricka (izotropnı)

1. σx = σy = σ

0.1

0.1

0.2

0.2

0.3

0.4

x

y

−2 −1 0 1 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

Obrazek: {µx, µx, σ} = {0, 0, 0.6}

◮ f(x, y) =1

2πσ2e−

(x− µx)2 + (y − µy)

2

2σ2

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 10: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce - asymetricka (anizotropnı)

1. σx 6= σy

0.1

0.1

0.2

0.2 0.30.4

x

y

−2 −1 0 1 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

Obrazek: {µx, µx, σx, σy} = {0, 0, 0.8, 0.4}

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 11: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

2D Gaussova funkce - asymetricka (anizotropnı)

1. σx 6= σy

0.1

0.1

0.2

0.2 0.30.4

x

y

−2 −1 0 1 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

Obrazek: {µx, µx, σx, σy} = {0, 0, 0.8, 0.4}

◮ f(x, y) =1

2πσxσye−

1

2

(x− µx)2

σ2x

+(y − µy)

2

σ2y

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 12: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Maska Gaussianu

function G = gauss(N, sigma)

npul = (N-1)/2;

[x, y] = meshgrid(-npul:npul);

G=1/(2*pi*sigma 2)*exp(-(x. 2 + y. 2)/(2*sigma 2));

G = G / sum(G(:));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 13: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Maska Gausianu

function G = gauss(N, sigma)

npul = (N-1)/2;

[x, y] = meshgrid(-npul:npul);

G=exp(-(x. 2 + y. 2)/(2*sigma 2));

G = G / sum(G(:));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 14: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

[x, y] = meshgrid(-3:3);

x = y =

-3 -2 -1 0 1 2 3 -3 -3 -3 -3 -3 -3 -3

-3 -2 -1 0 1 2 3 -2 -2 -2 -2 -2 -2 -2

-3 -2 -1 0 1 2 3 -1 -1 -1 -1 -1 -1 -1

-3 -2 -1 0 1 2 3 0 0 0 0 0 0 0

-3 -2 -1 0 1 2 3 1 1 1 1 1 1 1

-3 -2 -1 0 1 2 3 2 2 2 2 2 2 2

-3 -2 -1 0 1 2 3 3 3 3 3 3 3 3

x. 2 + y. 2 =

18 13 10 9 10 13 18

13 8 5 4 5 8 13

10 5 2 1 2 5 10

9 4 1 0 1 4 9

10 5 2 1 2 5 10

13 8 5 4 5 8 13

18 13 10 9 10 13 18

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 15: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Maska Gausianu

2 4 6 8 10

1

2

3

4

5

6

7

8

9

10

11

(3.1) gauss(11,5)

5 10 15 20

2

4

6

8

10

12

14

16

18

20

(3.2) gauss(21,7)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 16: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

1. definice SNR:

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 17: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

1. definice SNR:

◮ SNR = 10 log

(D(f)

D(n)

)

D(f) ≈ σ2f D(n) ≈ σ2

n;

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 18: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

1. definice SNR:

◮ SNR = 10 log

(D(f)

D(n)

)

D(f) ≈ σ2f D(n) ≈ σ2

n;

2. Odvozenı

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 19: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

1. definice SNR:

◮ SNR = 10 log

(D(f)

D(n)

)

D(f) ≈ σ2f D(n) ≈ σ2

n;

2. Odvozenı

SNR

10= log

(D(f)

D(n)

)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 20: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

1. definice SNR:

◮ SNR = 10 log

(D(f)

D(n)

)

D(f) ≈ σ2f D(n) ≈ σ2

n;

2. Odvozenı

SNR

10= log

(D(f)

D(n)

)

◮ 10

SNR

10 =D(f)

D(n)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 21: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

1. definice SNR:

◮ SNR = 10 log

(D(f)

D(n)

)

D(f) ≈ σ2f D(n) ≈ σ2

n;

2. Odvozenı

SNR

10= log

(D(f)

D(n)

)

◮ 10

SNR

10 =D(f)

D(n)

◮ D(n) =D(f)

10

SNR

10

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 22: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

1. definice SNR:

◮ SNR = 10 log

(D(f)

D(n)

)

D(f) ≈ σ2f D(n) ≈ σ2

n;

2. Odvozenı

SNR

10= log

(D(f)

D(n)

)

◮ 10

SNR

10 =D(f)

D(n)

◮ D(n) =D(f)

10

SNR

10

◮ σn ≈

√√√√√σ2f

10

SNR

10

...napoveda funkcı: var(), randn()

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 23: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Bıly sum

function W = whiteNoise(I, SNR)

MinI = min(I(:));

MaxI = max(I(:));

S = sqrt(var(I(:))/(10 (SNR/10)));

W = I + S*randn(size(I));

W(W<MinI) = MinI;

W(W>MaxI) = MaxI;

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 24: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Poskozenı obrazku

function D = demage(I, H, SNR)

D = conv2(I,H);

D = whiteNoise(D, SNR);

50 100 150 200 250

50

100

150

200

250

(3.3) demage(I,kruh(7,15),20)

50 100 150 200 250

50

100

150

200

250

(3.4) demage1(I,kruh(7,15),20)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 25: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Poskozenı obrazku

function D = demage1(I, H, SNR)

D = conv2(I,H,’same’)./conv2(ones(size(I)),H,’same’);

D = whiteNoise(D, SNR);

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 26: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Rozmazanı obrazku - kruhem

50 100 150 200 250

50

100

150

200

250

(3.5) demage(I,kruh(7,15),12)

50 100 150 200 250

50

100

150

200

250

(3.6) fr. spektrum pri SNR=100

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 27: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Rozmazanı obrazku - kruhem

50 100 150 200 250

50

100

150

200

250

(3.7) demage(I,kruh(7,15),12)

50 100 150 200 250

50

100

150

200

250

(3.8) fr. spektrum pri SNR=100

◮ D=demage(I,kruh(7,15),100);

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 28: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Rozmazanı obrazku - kruhem

50 100 150 200 250

50

100

150

200

250

(3.9) demage(I,kruh(7,15),12)

50 100 150 200 250

50

100

150

200

250

(3.10) fr. spektrum pri SNR=100

◮ D=demage(I,kruh(7,15),100);

◮ F= fftshift(log(abs(fft2(D))+1));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 29: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Rozmazanı obrazku - Gaussianem

50 100 150 200 250

50

100

150

200

250

(3.11) demage(I,gauss(15,7),20)

50 100 150 200 250

50

100

150

200

250

(3.12) fr. spektrum

zobr(fftshift(log(abs(fft2(demage(I,gauss(15,7),20)))+1)));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 30: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Rozmazanı obrazku - pohybem

50 100 150 200 250

50

100

150

200

250

(3.13) horizontalnım:demage(I,ones(25,1),12)

50 100 150 200 250

50

100

150

200

250

(3.14) vertikalnım:demage(I,ones(1,25),12)

50 100 150 200 250

50

100

150

200

250

(3.15) diagonalnım:demage(I,eye(25),12)

50 100 150 200 250

50

100

150

200

25050 100 150 200 250

50

100

150

200

250

50 100 150 200 250

50

100

150

200

250

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 31: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

100 200 300 400 500 600 700 800 900 1000 1100

50

100

150

200

250

300

350

400

450

500

550

hornı radek - demage(I,gauss(11,3),SNR)dolnı radek - demage(I,gauss(21,7),SNR)SNR = 50, 20, 10, 5

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 32: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. konvoluce:

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 33: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. konvoluce:

◮ (f ∗ g)(t) =∫∞

−∞f(τ)g(t− τ)dτ

∗ : L1xL1 → L1

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 34: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. konvoluce:

◮ (f ∗ g)(t) =∫∞

−∞f(τ)g(t− τ)dτ

∗ : L1xL1 → L1

2. konvolucnı teorem:

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 35: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. konvoluce:

◮ (f ∗ g)(t) =∫∞

−∞f(τ)g(t− τ)dτ

∗ : L1xL1 → L1

2. konvolucnı teorem:

◮ F(f ∗ g) = [F(f)].[F(g)] = F.G

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 36: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. odvozenı:

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 37: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. odvozenı:

◮ Z = U.H

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 38: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. odvozenı:

◮ Z = U.H

◮ → U =Z

H

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 39: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

1. odvozenı:

◮ Z = U.H

◮ → U =Z

H

◮ → u = F−1

(Z

H

)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 40: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr

function u = inverse(z, h)

Z = fft2(z);

H = fft2(h, size(z,1), size(z,2));

U = Z ./ H;

u = abs(ifft2(U));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 41: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr - SNR = 90, 80, 70; K=kruh(7,13);

100 200 300 400 500 600 700 800

50

100

150

200

250

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 42: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Inverznı filtr - SNR = 60; K=kruh(7,13);

50 100 150 200 250

50

100

150

200

250

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 43: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. zıskany odhad ma mıt minimalnı odchylku od originalu

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 44: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. zıskany odhad ma mıt minimalnı odchylku od originalu◮ E(‖ f ′ − f ‖2−→ min) strednı kvadraticka chyba

E...strednı hodnotaf ′...odhadf ...original

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 45: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. zıskany odhad ma mıt minimalnı odchylku od originalu◮ E(‖ f ′ − f ‖2−→ min) strednı kvadraticka chyba

E...strednı hodnotaf ′...odhadf ...original

2. ma to byt linearnı filtr, tedy to ma byt nasobenı ve frekvencnıoblasti

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 46: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. zıskany odhad ma mıt minimalnı odchylku od originalu◮ E(‖ f ′ − f ‖2−→ min) strednı kvadraticka chyba

E...strednı hodnotaf ′...odhadf ...original

2. ma to byt linearnı filtr, tedy to ma byt nasobenı ve frekvencnıoblasti

◮ F ′ = G.RG...je zasumeny obrazekR...je transformacnı matice

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 47: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. odvozen filtr:

R(u, v) =1

H(u, v)

|H(u, v)|2

|H(u, v)|2 + Sn(u, v)/Sf (u, v)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 48: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. odvozen filtr:

R(u, v) =1

H(u, v)

|H(u, v)|2

|H(u, v)|2 + Sn(u, v)/Sf (u, v)

2. Sn(u, v)/Sf (u, v) ≈ SNR−1

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 49: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. odvozen filtr:

R(u, v) =1

H(u, v)

|H(u, v)|2

|H(u, v)|2 + Sn(u, v)/Sf (u, v)

2. Sn(u, v)/Sf (u, v) ≈ SNR−1

3. C.C = |C|2

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 50: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Definice Wienerova filtru

1. odvozen filtr:

R(u, v) =1

H(u, v)

|H(u, v)|2

|H(u, v)|2 + Sn(u, v)/Sf (u, v)

2. Sn(u, v)/Sf (u, v) ≈ SNR−1

3. C.C = |C|2

◮ Matlab funkce: conj()

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 51: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Wieneruv filtr

function R = wiener(g, h, SNR)

H = fft2( h, size(g,1), size(g,2));

W = conj(H) ./ (abs(H). 2 + 1/SNR);

FI = fft2(g) .* W;

R = abs(ifft2(FI));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 52: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Wieneruv filtr - SNR = 60, 50, 40; K=kruh(7,13);

100 200 300 400 500 600 700 800

50

100

150

200

250

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 53: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Urcete typ poskozenı u obrazku yiXX.pgm a vylepsete je

1. Pouzijte tyto prıkazy:

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 54: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

Urcete typ poskozenı u obrazku yiXX.pgm a vylepsete je

1. Pouzijte tyto prıkazy:◮ m1 = log(abs(fft2(f). 2));

m2 = real(fft2(m1));

mi = min(m2(:));

m3 = m2 < 0.9*mi;

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 55: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y1XX.pgm - urcenı druhu poskozenı

20 40 60 80 100 120

20

40

60

80

100

120

(3.19) zobr(fftshift(m1));

20 40 60 80 100 120

20

40

60

80

100

120

(3.20) zobr(fftshift(m3));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 56: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y1XX.pgm - urcenı druhu poskozenı

20 40 60 80 100 120

20

40

60

80

100

120

(3.21) zobr(fftshift(m1));

20 40 60 80 100 120

20

40

60

80

100

120

(3.22) zobr(fftshift(m3));

◮ ⇒ vertikalnı poskozenı - ones(10,1)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 57: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y1XX.pgm - zobr(wiener(y1XX,ones(10,1),XX));

20 40 60 80 100 120

20

40

60

80

100

120

(3.23) y120

20 40 60 80 100 120

20

40

60

80

100

120

(3.24) y130

20 40 60 80 100 120

20

40

60

80

100

120

(3.25) y150

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 58: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y2XX.pgm - urcenı druhu poskozenı

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.26) zobr(fftshift(m1));

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.27) zobr(fftshift(m3));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 59: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y2XX.pgm - urcenı druhu poskozenı

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.28) zobr(fftshift(m1));

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.29) zobr(fftshift(m3));

◮ ⇒ obrazky jsou rozostrene jinou implementacı kruhu (sodchylkami hranice), takze zde nam to moc nechodı :(

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 60: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y3XX.pgm - urcenı druhu poskozenı

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.30) zobr(fftshift(m1));

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.31) zobr(fftshift(m3));

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 61: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y3XX.pgm - urcenı druhu poskozenı

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.32) zobr(fftshift(m1));

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.33) zobr(fftshift(m3));

◮ ⇒ diagonalnı poskozenı - eye(14)

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 62: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

y3XX.pgm - zobr(wiener(y1XX,ones(10,1),XX));

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.34) y320

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.35) y330

20 40 60 80 100 120 140

20

40

60

80

100

120

140

(3.36) y350

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Page 63: ROZ2 - Cv. 1 - Dekonvoluce - výsledkyzoi.utia.cas.cz › files › NPGR032 › NPGR032_05_457982_vysledky.pdf · V´ysledky Rozmaz´an´ı obr´azku - pohybem 50 100 150 200 250

Vysledky

ROZ2 - Cv. 1 - Dekonvoluce - vysledky

Adam Novozamsky, [email protected] Kotera, [email protected]

27. rıjna 2011

Adam Novozamsky, [email protected] Honza Kotera, [email protected]

ROZ2 - Cv. 1 - Dekonvoluce - vysledky


Recommended