obdelava slike
DESCRIPTION
Obdelava slike. (Pred)obdelava slike (Angl. Image Processing) Izboljšanje slike (Angl. Image Enhancement) Naloga: napraviti sliko (še) boljšo - potrebujemo model izboljšanja. Obnavljanje slike (Angl. Image Restoration) Naloga: napraviti sliko tako, kot je - PowerPoint PPT PresentationTRANSCRIPT
http://vision.fe.uni-lj.si/
Strojni vid
Stanislav Kovačič
Univerza v Ljubljani
Fakulteta za elektrotehniko
Osnovno o obdelavi slike
Laboratorij za strojni vid
Obdelava slikeObdelava slike• (Pred)obdelava slike (Angl. Image Processing)
• Izboljšanje slike (Angl. Image Enhancement)
Naloga: napraviti sliko (še) boljšo -
potrebujemo model izboljšanja. • Obnavljanje slike (Angl. Image Restoration)
Naloga: napraviti sliko tako, kot je
(naj bi) že bila - potrebujemo model poslabšanja.• Analiza slike (Angl. Image Analysis)
• Razgradnja slike (Angl. Image Segmentation)• Iskanje robov (Angl. Edge detection)• Iskanje oglišč (Angl. Corner detection)•....
(Pred)obdelava slike(Pred)obdelava slike
Naloga predobdelave:• Napraviti sliko bolj primerno za nadaljnjo obdelavo• V sistemih strojnega vida naj bi bilo predobdelave čim manj• Kakovost slike je potrebno zagotoviti že v času njenega nastanka
Op.:
Ko govorimo o predobdelavi slike, mogoče preveč razmišljamo o tem,
da bi bilo treba sliko popraviti.
PredobdelavaVhodna
slika
Izhodna
slika
Digitalna sDigitalna slika f(x,y)lika f(x,y)M
N
x
y
12
Piksel 12Okolica
3x3, 5x5, ...
Področje zanimanja
(Pred)obdelava slike(Pred)obdelava slike
• Točkovne operacije:
aritmetične in logične operacije: +, -, *, /, IN, ALI,...
včasih nastopajo samostojno, še pogosteje pa so
sestavni del sestavljenih operacij.
• Lokalne operacije:
linearno / nelinearno filtriranje “šuma”.
• Globalne operacije:
take, ki so rezultat celotne vsebine slike (histogram)
Točkovne operacijeTočkovne operacije
Spreminjanje svetlosti: IIzh = IVh + k
IVh – Vhodni nivoji svetlosti (sivosti)
IIzh – Izhodni nivoji svetlosti (sivosti)
IIzh IIzh
IVhIVh
Točkovne operacijeTočkovne operacije
Spreminjanje kontrasta: IIzh k . IVh
IIzh IIzh
IVh IVh
Točkovne operacijeTočkovne operacije
invertiranje upragovljenje
IVhIVh
IIzhIIzh
Točkovne operacijeTočkovne operacije
V splošnem:
acd
abcII VhIzh
)(
IVh – Vhodni nivoji svetlosti
IIzh – Izhodni nivoji svetlosti
d – maksimalna vhodna vrednost
c – minimalna vhodna vrednost
b – maksimalna izhodna vrednost
a – minimalna izhodna vrednost
Točkovne operacije
• Seštevanje slik:
predvsem, da popravimo razmerje signal / šum
• Odštevanje slik
detekcija premika (spremembe)
odštevanje ozadja
(npr. zaradi neenakomernosti osvetlitve).
Točkovne operacije
Seštevanje slik:
popravimo razmerje signal / šum
Seštejemo N zaporednih slik (stacionarnega) prizora.
V primeru, da je šum nekoreliran, Gaussov, s srednjo
vrednostjo nič in enako porazdeljen, se da na ta način
potlačiti šum za N
N
IIII N
....21
Nσσ I
HistogramljenjeHistogramljenje
•Slikovni element obravnavamo kot naključno spremenljivko.•Na podlagi histograma se da povedati marsikaj o kakovosti slike.•Popravljanje svetlosti, kontrasta, upragovljenje, ...•Ravnanje histograma:
Tiste svetlosti, ki so bolj prisotne, kvantiziraj bolj fino. •Določanje histograma:
Preslikaj svetlosti tako, da bodo ustrezno porazdeljene.
0
10000
20000
30000
40000
0 64 128 192 256
0
2000
4000
6000
8000
0 64 128 192 256
Ravnanje histogramaRavnanje histograma
Ravnanje histograma
primeru) diskretnem (v )(1
ti) verjetnosevporazdelit na(kumulativ )(1
y
vke)spremenlji n. zvezne (za )(1
)(1
)(
)()(
0
0
00
i
jji
x
xy
xpc
y
dxxpc
dxxpc
dy
dxxpc
dy
cyp
dxxpdyyp
YX
Ravnanje histogramaRavnanje histograma
0
2000
4000
6000
8000
0 64 128 192 2560
2000
4000
6000
8000
0 64 128 192 256
Določanje histogramaDoločanje histogramaDoločanje histograma
)T(x)()(
)()(
)(T(x) s
(y)p (x),p
11
0
0
yx
GsGy
sdyypyG
dxxp
YX
y
y
x
x
To se da realizirati v diskretnem primeru s pregledovalnimi tabelami.
T(x)
x
s
G(y)
y
s
UpragovljenjeUpragovljenje
Vhod: Sivinska slika Izhod:Binarna slika
t
Histogram
t
Lokalne operacijeLokalne operacije
• Zmanjšati nivo šuma• Gaussov šum• Impulzni šum (“poper in sol”)
• Linerano filtriranje (Gaussov filter)• Nelinearno filtriranje (medianin filter)
IIzh(i, j) =k l h(k,l) x IVh(i-k,j-l)
Lokalne operacijeLokalne operacije
Glajenje• Povprečenje
(“maska” 3x3, ipd.)
• Uteženo povprečenje 2 1
2 4 2
1 2 1
1
1 1 1
1 1 1
1 1 1
x 1/9
x 1/16
Lokalne operacijeLokalne operacije
• Gaussov filter
• Smiselno je izkoristiti ločljivost jedra
g(x,y) * f(x,y) = g(x) * g(y) * f(x,y)• Najprej filtriramo po stolpcih• Nato po vrsticah
1 4 6 4 1
Diskretna aproksimacija 1D Gaussa
( = 1)
x 1/16
Lokalne operacijeLokalne operacije
• Glajenje zamegli robove
• Ostrenje (angl. “unsharp masking”)
Zmanjšamo vpliv glajenja na robove
• Nelinearno filtriranje – mediana
• Zavedati se moramo, da filtriranje lahko zamakne robove
Lokalne operacijeLokalne operacije• Ostrenje (angl. “unsharp masking”)
Od originalne slike odštejemo njeno glajeno verzijo,
g(x,y) = fi(x,y) - fg(x,y)
K originalni sliki prištejemo določen delež g(x,y)
fo(x, y) = (1-k) • fi(x,y) + k • g(x,y)
Glajenjefi(x,y) g(x,y)fg(x,y)
+fo(x,y)
1 1
1 -8 1
1 1 1
1• Podoben rezultat dobimo s prištevanjem
ustreznega deleža Laplacea
Lokalne operacijeLokalne operacije• Filtriranje z mediano
vrednost slikovnega elementa nadomestimo z mediano
v izbrani okolici, npr. 3x3, 5x5, ipd.
5 5
4 1 4
4 5 4
1
okolica slikovnega elementa
• mediana: 1 1 4 4 4 4 5 5 5
5 5
4 4 4
4 5 4
1
Dobro odstranjuje impulzni šum
Iskanje robnih točk
- spremebe svetlosti (vrednosti) slike
- robne točke še niso obris
Iskanje robovIskanje robov
Robna točka
Iskanje robovIskanje robov
Robni operatorji• Večina operatorjev deluje na podlagi (numeričnega) odvajanja
Računanje prvih odvodov (gradienta) slike Računanje drugih odvodov (Laplace) slike (tudi LOG, DOG) Model robov (Hueckel)
Splošen postopek1) Filtriranje z Gaussovim filtrom primerne širine
2) Numerično odvajanje (npr. računanje gradienta)
3) Upragovljenje (po potrebi tanjšanje)
Iskanje robovIskanje robov
Nekateri najbolj znani robni operatorji• Robertsov operator• Prewittov operator• Sobelov operator• Cannyjev operator
• Iskanje prehodov skozi nič (Laplace Gaussa)• Razlika Gaussov (DOG – Diff. Of Gaussians)
Sobelov operatorSobelov operator
Vhod:
Sivinska slika
Izhod:
Slika robnih točk
-1 -2 -1
1 2 1
-1 1
-1 1
Sobel
-2 2
Iskanje robovIskanje robov
Nekateri drugi operatorjiNekateri drugi operatorji
Roberts
-1 -1 -1
1 1 1
-1 1
-1 1
Prewitt
-1 1
-1 0
0 +1
-1
0+1
0Gx
Gy
Gx
Gy
Izbira robnega operatorja ne sme odločilno
Vplivati na delovanje sistema.
Canny-jev operatorCanny-jev operator
Kriteriji (J. Canny, 1983):
• Dober odziv na rob v prisotnosti šuma
ugodno ramerje signal/šum• Dobra lokalizacija – maksimalen odziv na mestu
pravih robov• En odziv na robno točko
Canny-jev operatorCanny-jev operator
Postopek
• Filtriranje z Gaussovim filtrom primerne širine• Odvajanje v smeri x in y• Iskanje lokalnih maksimumov
(NMS, angl. Non-Maxima Suppression)• Upragovljenje s histerezo
(z dvema pragovoma, zgornjim in spodnjim)
Canny-jev operatorCanny-jev operator• Namesto slike odvajamo filter• Filtriramo z odvodom filtra• Upoštevamo lastnost ločljivosti filtra
),()()(
),()()(
),(),(
),(),(
),(),(
),(),(),(),((),(
yxfygxg
yxfygxg
yxfyxg
yxfyxg
yxfyxg
yxfyxgyxfyxgyxe
y
x
y
x
y
x
Canny-jev operatorCanny-jev operatorf - vhodna slika
g(x)*f g(y)*f
gy(y)*f gx(x)*f
Velikost
Smer
NMS
HTe – slika robov
Canny-jev operatorCanny-jev operator
Večločljivostni pristopVečločljivostni pristop
• Sliko filtriramo z več Gaussovimi filtri različnih širin• Dobimo isto sliko na različnih stopnjah
ločljivosti• Poiščemo robne točke na vseh stopnjah
ločljivosti• Združimo rezultate z vseh stopenj ločjivosti
Prostor ločljivostiProstor ločljivosti
• Ko postane širina (parameter) Gaussovega filtra zvezna
spremenljivka, govorimo o prostoru ločljivosti.• Večločljivostni pristopi in prostor ločljivosti (“scale space”)
imajo številne primere uporabe v:• Kodiranju / opisu slik • Razgradnji /segmentiranju slik • Poravnavanju slik• Razpoznavanju slik
• Tvorci teorije: P. Burt, E. Adelson, A. Witkin, P. Perona, J. Malik, T. Lindeberg, J. Koenderink, J. Weickert, ...
Prostor ločljivostiProstor ločljivostiPrehodi skozi nič
drugega odvoda
(Laplace) Gaussa
LoG, DoG
Iskanje oglišč (kotov)Iskanje oglišč (kotov)
• Izračunamo odvode (e) v smeri x in y• Izračunamo matriko C v neki okolici točke• Izračunamo lastni vrednosti matrike C
2
2
),(yyx
yxx
eee
eeeyxC
Iskanje oglišč (kotov)Iskanje oglišč (kotov)
• Točka (x,y) je oglišče, če sta obe lastni vrednosti dovolj veliki
MMMMyxC TT
2
1
0
0),(
Iskanje oglišč (kotov)Iskanje oglišč (kotov)
Houghov transformHoughov transform
Vhod:
slikaIzhod:
Hugh transform
y = k.x + n
Houghov transformHoughov transform
LiteraturaLiteratura
• R. Gonzalez, R. Woods, Digital Image Processing, Prentice Hall, 2002.
• M. Sonka, V. Hlavac, R. Boyle, Image Processing, Analysis, and Machine Vision, PWS Publishing, 1999.
• E. Trucco, A. Verri, Introductory Techniques for 3D Computer Vision, Prentice Hall, 1998.
• HyperMedia Image Processing Reference http://www.cee.hw.ac.uk/hipr/html/hipr_top.html