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

Hough & Radon transform - cvičení

AVDAT Vektory a matice

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í.

Stochastické signály (opáčko)

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

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

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

FILTRACE VE FOURIEROVSKÉM SPEKTRU

Program SMP pro kombinované studium

Náhodné vektory a matice

Příklady k prvnímu testu - Matlab

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

Stavový model a Kalmanův filtr

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

Vlastnosti a modelování aditivního

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

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

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

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

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

Poznámky k Fourierově transformaci

Statistické vyhodnocení zkoušek betonového kompozitu

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

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

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

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

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

Pravděpodobnost a aplikovaná statistika

AVDAT Mnohorozměrné metody metody redukce dimenze

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

DEFINICE Z LINEÁRNÍ ALGEBRY

Filtrace obrazu ve frekvenční oblasti

AVDAT Geometrie metody nejmenších čtverců

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

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

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

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

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

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

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

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

Téma 22. Ondřej Nývlt

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

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH

APLIKACE DWT PRO POTLAČENÍ ŠUMU V OBRAZE

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

MATrixLABoratory letný semester 2004/2005

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

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

Matematika B101MA1, B101MA2

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

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

STANOVENÍ SPOLEHLIVOSTI GEOTECHNICKÝCH KONSTRUKCÍ. J. Pruška, T. Parák

Pasivní Koherentní Lokace. Duben 2008

Integrální transformace obrazu

Charakterizují kvantitativně vlastnosti předmětů a jevů.

KGG/STG Statistika pro geografy

Numerické metody a programování

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

Kreslení grafů v Matlabu

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

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

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

15 Maticový a vektorový počet II

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

2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC

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

Inovace bakalářského studijního oboru Aplikovaná chemie

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

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

Příklady k druhému testu - Matlab

Rovnovážné modely v teorii portfolia

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ů

HODNOST A DETERMINANT MATICE, INVERZNÍ MATICE

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

6. Lineární regresní modely

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

HODNOST A DETERMINANT MATICE, INVERZNÍ MATICE

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.

Operace s obrazem. Biofyzikální ústav LF MU. Projekt FRVŠ 911/2013

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

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

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,

6. ZÁKLADY STATIST. ODHADOVÁNÍ. Θ parametrický prostor. Dva základní způsoby odhadu neznámého vektoru parametrů bodový a intervalový.

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

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

Základy algoritmizace a programování

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

Aplikovaná numerická matematika - ANM

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

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

Transkript:

ROZ II cv. 01 Dekonvoluce KM - FJFI - ČVUT ZS Ú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 / 40

Kontakty Adam Novozámský: novozamsky@utia.cas.cz Jitka Kostková: kostkova@utia.cas.cz UTIA místnost 23 3 / 40

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 / 40

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 / 40

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 smerodatne odchylce Sigma % N je velikost matice, defaultne 3*S+1 6 / 40

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 2 Σ diagonální kovarianční matice Σ ii = σ i determinant 7 / 40

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

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

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

Maska Gaussiánu naprogramujte generovaní masky anizotropního 2D Gaussiánu function M = gauss2ani(s1, S2, N) % M = gauss2 (S1, S2 [,N]) - vraci normovanou % 2D gaussovku o smerodatnych odchylkach S1 a S2 % N je velikost matice, defaultne 3*max(S1*S2)+1 11 / 40

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

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

Maska Gaussiánu function M = gauss2(s, N) % M = gauss2 (S [,N]) - vraci normovanou 2D % gaussovku o smerodatne odchylce 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 / 40

Maska Gaussiánu function M = gauss2ani(s1,s2, N) % M = gauss2 (S1, S2 [,N]) - vraci normovanou % 2D gaussovku o smerodatnych odchylkach S1 a S2 % N je velikost matice, defaultne 3*max(S1*S2)+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 / 40

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: F 2 N 2 u, v Pokud je signál nekorelovaný => F 2 = σ f 2 Kdyby šum byl bílý => N 2 = σ n 2 Odvození σ n : SNR 10 = log σ f 2 σ n 2 10SNR 10 = σ f 2 σ n = nápověda funkcí: var(), rand() σ f 2 10 SNR 10 σ n 2 σ n 2 = σ 2 f 10 SNR 10 16 / 40

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

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 / 40

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 / 40

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 / 40

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

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

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); R = bilysum(r, SNR); end ubírá jas v okrajích >> tvoří rámeček Jak ho odstranit? 23 / 40

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,'same')./conv2(ones(size(i)),h,'same'); R = bilysum(r, SNR); end 24 / 40

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

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

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 / 40

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 / 40

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 / 40

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 / 40

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 vzniknou nuly, kterými se v inverzním filtru blbě dělí. 31 / 40

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

Inverzní filtr 33 / 40

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 34 / 40

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() R u, v = H u, v H u, v 2 + 1 SNR 35 / 40

Wienerův filtr naprogramujte Wienerův filtr function u = wiener (z, h, SNR) % U = wiener (z, h, SNR) provede Wienerův % filtr na obrázek z, který byl poškozen % maskou h 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 36 / 40

Wienerův filtr damage(l,ones(1,7),100) damage(l,ones(1,7),50) damage(l,ones(1,7),30) damage(l,ones(1,7),10) 37 / 40

Praktické příklady Snažte se určit typ poškození u obrázků focus1.png, focus2.png a fokus3.png, tak aby na nich bylo možné přečíst text. 38 / 40

Praktické příklady PSF = ones(1,26); PSFN = PSF / sum(psf(:)); SNR = 20; damage2(m, PSFN, SNR); wiener(bn, PSFN, SNR); wiener(bn, PSF, 1/SNR); 39 / 40

Praktické příklady PSF = eye(13); PSFN = PSF / sum(psf(:)); SNR = 30; damage2(m, PSFN, SNR); wiener(bn, PSFN, SNR); wiener(bn, PSF, 1/SNR); 40 / 40

Praktické příklady PSF = kruh(7,15); PSFN = PSF / sum(psf(:)); SNR = 40; damage2(m, PSFN, SNR); wiener(bn, PSFN, SNR); wiener(bn, PSF, 1/SNR); 41 / 40

Děkuji za pozornost