ROZ II cv. 01 Dekonvoluce KM - FJFI - ČVUT

Podobné dokumenty
ROZ II cv. 01 Dekonvoluce KM - FJFI - ČVUT

ROZ1 - Cv. 3 - Šum a jeho odstranění ÚTIA - ZOI

NPGR032 CVIČENÍ III. Šum a jeho odstranění teorie&praxe. Adam Novozámský (novozamsky@utia.cas.cz)

NPGR032 Cv úvod

ROZ1 - Cv. 2 - Fourierova transformace ÚTIA - ZOI

Klasifikace a rozpoznávání. Extrakce příznaků

Metody rekonstrukce obrazu a

AVDAT Vektory a matice

ZADÁNÍ ZKOUŠKOVÉ PÍSEMNÉ PRÁCE Z PŘEDMĚTU LINEÁRNÍ ALGEBRA PRO IT. Verze 1.1A

MĚŘENÍ A ANALÝZA ELEKTROAKUSTICKÝCH SOUSTAV NA MODELECH. Petr Kopecký ČVUT, Fakulta elektrotechnická, Katedra Radioelektroniky

HLEDÁNÍ HRAN. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

Program SMP pro kombinované studium

ROZ1 - Cv. 1 - Zobrazenэ snэmku a zсklady Matlabu

AVDAT Náhodný vektor, mnohorozměrné rozdělení

FILTRACE VE FOURIEROVSKÉM SPEKTRU

Jedná se o soustavy ve tvaru A X = B, kde A je daná matice typu m n,

Stochastické signály (opáčko)

Číslicové zpracování signálů a Fourierova analýza.

Hough & Radon transform - cvičení

Matematika 2 (Fakulta ekonomická) Cvičení z lineární algebry. TU v Liberci

1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15

SIGNÁLY A SOUSTAVY, SIGNÁLY A SYSTÉMY

MATEMATICKÉ PRINCIPY VÍCEROZMĚRNÉ ANALÝZY DAT

Vlastnosti a modelování aditivního

Fouriérova transformace, konvoluce, dekonvoluce, Fouriérovské integrály

Vold-Kalmanova řádová filtrace. JiříTůma

Univerzitní licence MATLABu. Pište mail na: se žádostí o nejnovější licenci MATLABu.

Poznámky k Fourierově transformaci

Úvod do Matlabu. Praha & EU: Investujeme do vaší budoucnosti. 1 / 24 Úvod do Matlabu

A7B31ZZS 4. PŘEDNÁŠKA 13. října 2014

Zpracování obrazů. Honza Černocký, ÚPGM

Náhodné vektory a matice

1 LPC. Jan Černocký, FIT VUT Brno, 15. května 2007

Matematika I A ukázkový test 1 pro 2014/2015

DEFINICE Z LINEÁRNÍ ALGEBRY

Stavový model a Kalmanův filtr

Filtrace obrazu ve frekvenční oblasti

Teorie náhodných matic aneb tak trochu jiná statistika

Předzpracování obrazů v prostoru obrazů, operace v lokálním sousedství

Konvoluční model dynamických studií ledvin. seminář AS UTIA

AKM CVIČENÍ. Opakování maticové algebry. Mějme matice A, B regulární, potom : ( AB) = B A

Modelování systémů a procesů (11MSP) Bohumil Kovář, Jan Přikryl, Miroslav Vlček. 8. přednáška 11MSP pondělí 20. dubna 2015

KTE / PPEL Počítačová podpora v elektrotechnice

Všechno, co jste kdy chtěli vědět o maticích, ale báli jste se zeptat

Čtvercové matice. Čtvercová matice je taková matice, jejíž počet řádků je roven počtu jejích sloupců

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH

Příklady k prvnímu testu - Matlab

MATrixLABoratory letný semester 2004/2005

AVDAT Mnohorozměrné metody metody redukce dimenze

HODNOST A DETERMINANT MATICE, INVERZNÍ MATICE

Příklad elektrický obvod se stejnosměrným zdrojem napětí

HODNOST A DETERMINANT MATICE, INVERZNÍ MATICE

NALG 001 Lineární algebra a geometrie 1, zimní semestr MFF UK Doba řešení: 3 hodiny

Vektorový prostor. Př.1. R 2 ; R 3 ; R n Dvě operace v R n : u + v = (u 1 + v 1,...u n + v n ), V (E 3 )...množina vektorů v E 3,

Rovinná úloha v MKP. (mohou být i jejich derivace!): rovinná napjatost a r. deformace (stěny,... ): u, v. prostorové úlohy: u, v, w

Přijímací zkoušky z matematiky pro akademický rok 2018/19 NMgr. studium Učitelství matematiky ZŠ, SŠ

Matematika B101MA1, B101MA2

Fourierovské metody v teorii difrakce a ve strukturní analýze

A2B31SMS 11. PŘEDNÁŠKA 4. prosince 2014

Statistické vyhodnocení zkoušek betonového kompozitu

6. Lineární regresní modely

Matematika I A ukázkový test 1 pro 2011/2012. x + y + 3z = 1 (2a 1)x + (a + 1)y + z = 1 a

MKI Funkce f(z) má singularitu v bodě 0. a) Stanovte oblast, ve které konverguje hlavní část Laurentova rozvoje funkce f(z) v bodě 0.

AVDAT Geometrie metody nejmenších čtverců

Pasivní Koherentní Lokace. Duben 2008

while cyklus s podmínkou na začátku cyklus bez udání počtu opakování while podmínka příkazy; příkazy; příkazy; end; % další pokračování programu

Operace s obrazem I. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.

1 Zobrazení 1 ZOBRAZENÍ 1. Zobrazení a algebraické struktury. (a) Ukažte, že zobrazení f : x

Šum a jeho potlačení. Michal Švanda. Astronomický ústav MFF UK Astronomický ústav AV ČR. Spektroskopie (nejen) ve sluneční fyzice LS 2011/2012

Integrální transformace obrazu

Základy maticového počtu Matice, determinant, definitnost

Pravděpodobnost a aplikovaná statistika

11MAMY LS 2017/2018. Úvod do Matlabu. 21. února Skupina 01. reseni2.m a tak dále + M souborem zadané funkce z příkladu 3 + souborem skupina.

Numerické metody a programování

KTE/TEVS - Rychlá Fourierova transformace. Pavel Karban. Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni

P 1 = P 1 1 = P 1, P 1 2 =

Téma 22. Ondřej Nývlt

Komplexní analýza. Laplaceova transformace. Martin Bohata. Katedra matematiky FEL ČVUT v Praze

Lineární a adpativní zpracování dat. 3. Lineární filtrace I: Z-transformace, stabilita

2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC

15 Maticový a vektorový počet II

Časové řady, typy trendových funkcí a odhady trendů

[ n. Konvoluce. = 0 jinak. 0 jinak. Užitečné signály (diskrétní verze) Jednotkový skok 1 pro n = 0

Množinu všech matic typu m n nad tělesem T budeme označovat M m n (T ), množinu všech čtvercových matic stupně n nad T pak M n (T ).

Časové řady, typy trendových funkcí a odhady trendů

Arnoldiho a Lanczosova metoda

Úlohy k přednášce NMAG 101 a 120: Lineární algebra a geometrie 1 a 2,

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

MĚŘENÍ ÚHLOVÝCH KMITŮ ZA ROTACE

n = 2 Sdružená distribuční funkce (joint d.f.) n. vektoru F (x, y) = P (X x, Y y)

Nosné desky. 1. Kirchhoffova teorie ohybu tenkých desek (h/l < 1/10) 3. Mindlinova teorie pro tlusté desky (h/l < 1/5)

11 Analýza hlavních komponet

APLIKACE DWT PRO POTLAČENÍ ŠUMU V OBRAZE

Aplikovaná numerická matematika - ANM

(Cramerovo pravidlo, determinanty, inverzní matice)

Základy algoritmizace a programování

Matice. Předpokládejme, že A = (a ij ) je matice typu m n: diagonálou jsou rovny nule.

VI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku

ČTVERCOVÉ MATICE. Čtvercová matice je taková matice, kde počet řádků je roven počtu jejích sloupců. det(a) značíme determinant čtvercové matice A

TENSOR NAPĚTÍ A DEFORMACE. Obrázek 1: Volba souřadnicového systému

Transkript:

ROZ II cv. 01 Dekonvoluce KM - FJFI - ČVUT ZS 2013 ÚTIA - ZOI zoi.utia.cas.cz

Kontakty Ústav teorie informace a automatizace AV ČR, v.v.i. http://www.utia.cas.cz Zpracování obrazové informace http://zoi.utia.cas.cz 2 / 44

Kontakty Adam Novozámský: novozamsky@utia.cz UTIA místnost 23 3 / 44

Organizace cvik teorie + řešení úkolů docházka: http://zoi.utia.cas.cz >> For students >> Lecture courses (CZ) >> ROZ2 >> Materiály >> Přidat studenta 4 / 44

Matlab Na UTIA není možné používat serverovou licenci z ČVUT Stáhnout balík souborů na cvičení: http://zoi.utia.cas.cz/roz2/studijni-materialy 5 / 44

Maska Gaussiánu naprogramujte generovaní masky symetrického 2D Gaussiánu function M = gauss2(s, N) % M = gauss2 (S [,N]) - vraci normovanou % symetrickou 2D gaussovku o rozptylu Sigma % N je velikost matice, defaultne 3*S+1 6 / 44

Maska Gaussiánu D-dimenzionální Gaussova funkce: 1 f x, y = 2π d 2 Σ 1 2 e 1 2 x μ t Σ 1 x μ d počet dimenzí μ vektor střední hodnoty t transpozice vektoru Σ diagonální kovarianční matice Σ ii = σ 2 i determinant 7 / 44

Maska Gaussiánu 2D Σ det σ 1 2 0 0 σ 2 2 = σ 1 2 σ 2 2 = σ 1 σ 2 = σ 1 4 x μ t Σ 1 x μ x 1 μ 1 x 2 μ 2 σ 1 2 0 0 σ 2 2 1 x1 μ 1 x 2 μ 2 = = x 1 μ 1 x 2 μ 2 1 σ1 2 0 0 1 σ2 2 x 1 μ 1 x 2 μ 2 = = x 1 μ 1 σ 1 2 x 2 μ 2 σ 2 2 x 1 μ 1 x 2 μ = x 1 μ 1 2 2 σ 2 + x 2 μ 2 1 σ 2 = 2 2 σ 1 σ 2 μ 1 μ 2 = 0 = = x 1 2 +x 2 2 σ 1 2 8 / 44

2D Gaussova funkce symetrická (izotropní) σ x σ y = 0.6 μ x μ y = 0 9 / 44

2D Gaussova funkce asymetrická (anizotropní) 0.6 = σ x σ y = 0.2 μ x μ y = 0 10 / 44

Maska Gaussiánu naprogramujte generovaní masky symetrického 2D Gaussiánu function M = gauss2(s, N) % M = gauss2 (S [,N]) - vraci normovanou % symetrickou 2D gaussovku o rozptylu Sigma % N je velikost matice, defaultne 3*S+1 11 / 44

Maska Gaussiánu gauss2(5, 11) gauss2(7, 21) 12 / 44

Maska Gaussiánu gauss2ani(7, 3, 20) gauss2ani(10, 20, 60) 13 / 44

Maska Gaussiánu function M = gauss2(s, N) % M = gauss2 (S [,N]) - vraci normovanou 2D % gaussovku o rozptylu S % N je velikost matice, defaultne 3*S+1 if nargin >= 2 R = (N-1) / 2; else R = 3*S; end [X, Y] = meshgrid( -R:R); M = (1/(2*pi*S^2))*exp( -(X.^2 + Y.^2)/(2 * S.^2)); M = M / sum(m(:)); end 14 / 44

Maska Gaussiánu function M = gauss2ani(s1,s2, N) % M = gauss2ani (S1, S2 [,N]) - vraci normovanou 2D gaussovku o % rozptylu S1, S2 % N je velikost matice, defaultne 3*S+1 if nargin >= 3 R = (N-1) / 2; else R = 3*max(S1,S2); end [X, Y] = meshgrid( -R:R); M=(1/(2*pi*S1*S2))*exp((-1/2)*((X.^2/S1.^2)+(Y.^2/S2.^2))); M = M / sum(m(:)); end 15 / 44

Přidání bílého šumu Signal-to-noise ratio (SNR) - míra šumu v obraze SNR = 10 log (D(f)/D(n)) [db] D(f) rozptyl nezašuměného signálu D(n) rozptyl šumu Ve frekvenční oblasti je SNR definována takto: N 2 F 2 u, v Kdyby šum byl bílý => N 2 = σ n 2 Pokud je signál nekorelovaný => F 2 = σ f 2 Odvození σ n : SNR 10 = log σ 2 f 2 σ 10SNR = σ f 2 2 n σ σ n 2 = n σ n = nápověda funkcí: var(), rand() σ f 2 10 SNR 10 σ 2 f 10 SNR 10 16 / 44

SNR u lena.pgm 20 db 10 db 0 db 17 / 44

Přidání bílého šumu naprogramujte funkci, která přidá do obrázku bílý šum function R = bilysum(i, SNR) % R = bilysum(i, SNR) prida bily sum o danem % SNR do obrazku I 18 / 44

Přidání bílého šumu function R = bilysum(i, SNR) % R = bilysum(i, SNR) prida bily sum o danem % SNR do obrazku I MinI = min(i(:)); MaxI = max(i(:)); S = sqrt(var(i(:))/(10^(snr/10))); R = I + S*randn(size(I)); R(R<MinI) = MinI; R(R>MaxI) = MaxI; end 19 / 44

Poškození obrázku naprogramujte funkci, která poškodí obrázek přidá bílý šum a poté obrázek rozmaže function R = damage(i, H, SNR) % R = damage(i, H, SNR) rozmaze obrazek I s konvolucni % maskou H a prida do nej bily sum o danem SNR 20 / 44

Maska Gaussiánu damage(l, eye(7), 20) damage(l, ones(1,10), 20) 21 / 44

Maska Gaussiánu damage2(l, eye(7), 20) damage2(l, ones(1,10), 20) 22 / 44

Poškození obrázku function R = damage2(i, H, SNR) % R = damage(i, H, SNR) rozmaze obrazek I s konvolucni % maskou H a prida do nej bily sum o danem SNR R = conv2(i,h); R = bilysum(r, SNR); end ubírá jas v okrajích >> tvoří rámeček Jak ho odstranit? 23 / 44

Poškození obrázku function R = damage(i, H, SNR) % R = damage(i, H, SNR) rozmaze obrazek I s konvolucni % maskou H a prida do nej bily sum o danem SNR R = conv2(i,h,'same')./conv2(ones(size(i)),h,'same'); R = bilysum(r, SNR); end 24 / 44

FT Poškozeného obrázku damage2(l, eye(7), 50) Proč tam jsou ty pruhy? damage2(l, ones(1,10), 50) 25 / 44

FT Poškozeného obrázku damage2(l, kruh(7,15), 50) Proč tam jsou ty vzory? damage2(l, gauss2(4,10), 50) 26 / 44

Proč jsou ve FFT ty periodické vzory u poškozených obrázků? Z konvolučního teorému vyplívá, že konvoluce je násobení ve frekvenční oblasti. Konvoluční jádra mají ve FFT nulové body: ones(1,10) eye(4,10) kruh(7,15) gauss2(4,10) 27 / 44

Poškození obrázku horní řádek: damage(l,gauss2(3,11),snr) dolní řádek: damage(l,gauss2(7,21),snr) kde SNR = 50, 20, 10, 5 28 / 44

Inverzní filtr konvoluce: f g t = f τ g t τ dτ : L 1 L 1 L 1 konvoluční teorém: F f g = F f F g = F G odvození Inverzního filtru: Z = U H U = Z H u = F 1 Z H naprogramujte Inverzní filtr: function u = inverznifiltr (z, h) % u = inverznifiltr (z, h) zaostří obrázek z % rozmazaný maskou h pomocí inverzního fitru 29 / 44

Inverzní filtr function u = inverznifiltr (z, h) % u = inverznifiltr (z, h) zaostří obrázek z % rozmazaný maskou h pomocí inverzního fitru Z = fft2(z); H = fft2 (h, size(z,1), size(z,2)); U = Z./ H; u = abs(ifft2(u)); end 30 / 44

Inverzní filtr C = conv2(l, ones(1,7)) inverznifiltr(c,ones(1,7)) Pro rozmazání (hlavně pohybem) je třeba použít velikost masky, která je nesoudělná s velikostí obrázku (např. 7). Jinak ve fourierce nafouklé na celý snímek vzníknou nuly, kterými se v inverzním filtru blbě dělí. 31 / 44

Inverzní filtr C = conv2(l, ones(1,7)) inverznifiltr(c,ones(1,7)) Pro rozmazání (hlavně pohybem) je třeba použít velikost masky, která je nesoudělná s velikostí obrázku (např. 7). Jinak ve fourierce nafouklé na celý snímek vzníknou nuly, kterými se v inverzním filtru blbě dělí. 32 / 44

Inverzní filtr damage2(l,ones(1,7),100) damage2(l,ones(1,7),50) damage2(l,ones(1,7),30) damage2(l,ones(1,7),10) Přidání šumu má fatální vliv na Inverzní filtr!! Nedá se v praxi moc použít!! 33 / 44

Inverzní filtr 34 / 44

Wienerův filtr Definice: získaný odhad má mít minimální odchylku od originálu: E( f f 2 ) min střední kvadratická chyba - E střední hodnota - f odhad - f originál má to být lineární filtr, tedy to má být násobení ve frekvenční oblasti F = G R - G zašuměný obrázek - R transformační matice 35 / 44

Wienerův filtr byla odvozena tato transformační matice: R u, v = 1 H u, v H u, v 2 H u, v 2 + S n u, v S f u, v S n u, v S f u, v SNR 1 H H = H 2 Matlab funkce: conj() 36 / 44

Wienerův filtr naprogramujte Wienerův filtr function u = wiener (z, h, SNR) % U = wiener (Img, M, SNR) provede Wienerův % filtr na obrázek Img, který byl poškozen % maskou M a zašumňen bílým šumem o daném SNR H = fft2( h, size(img,1), size(img,2)); W = conj(h)./ (abs(h).^2 + 1/SNR); Z = fft2(z).* W; u = abs(ifft2(z)); end 37 / 44

Wienerův filtr damage2(l,ones(1,7),100) damage2(l,ones(1,7),50) damage2(l,ones(1,7),30) damage2(l,ones(1,7),10) 38 / 44

Praktické příklady Určete typ počkození u obrázků yixx.pgm a vylepšete je 39 / 44

Děkuji za pozornost