obdelava slike

42
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

Upload: mahon

Post on 17-Jan-2016

69 views

Category:

Documents


0 download

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 Presentation

TRANSCRIPT

Page 1: Obdelava slike

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

Page 2: Obdelava slike

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)•....

Page 3: Obdelava slike

(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

Page 4: Obdelava slike

Digitalna sDigitalna slika f(x,y)lika f(x,y)M

N

x

y

12

Piksel 12Okolica

3x3, 5x5, ...

Področje zanimanja

Page 5: Obdelava slike

(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)

Page 6: Obdelava slike

Točkovne operacijeTočkovne operacije

Spreminjanje svetlosti: IIzh = IVh + k

IVh – Vhodni nivoji svetlosti (sivosti)

IIzh – Izhodni nivoji svetlosti (sivosti)

IIzh IIzh

IVhIVh

Page 7: Obdelava slike

Točkovne operacijeTočkovne operacije

Spreminjanje kontrasta: IIzh k . IVh

IIzh IIzh

IVh IVh

Page 8: Obdelava slike

Točkovne operacijeTočkovne operacije

invertiranje upragovljenje

IVhIVh

IIzhIIzh

Page 9: Obdelava slike

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

Page 10: Obdelava slike

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

Page 11: Obdelava slike

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

Page 12: Obdelava slike

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

Page 13: Obdelava slike

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

Page 14: Obdelava slike

Ravnanje histogramaRavnanje histograma

0

2000

4000

6000

8000

0 64 128 192 2560

2000

4000

6000

8000

0 64 128 192 256

Page 15: Obdelava slike

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

Page 16: Obdelava slike

UpragovljenjeUpragovljenje

Vhod: Sivinska slika Izhod:Binarna slika

t

Histogram

t

Page 17: Obdelava slike

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)

Page 18: Obdelava slike

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

Page 19: Obdelava slike

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

Page 20: Obdelava slike

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

Page 21: Obdelava slike

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

Page 22: Obdelava slike

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

Page 23: Obdelava slike

Iskanje robnih točk

- spremebe svetlosti (vrednosti) slike

- robne točke še niso obris

Iskanje robovIskanje robov

Robna točka

Page 24: Obdelava slike

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)

Page 25: Obdelava slike

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)

Page 26: Obdelava slike

Sobelov operatorSobelov operator

Vhod:

Sivinska slika

Izhod:

Slika robnih točk

-1 -2 -1

1 2 1

-1 1

-1 1

Sobel

-2 2

Page 27: Obdelava slike

Iskanje robovIskanje robov

Page 28: Obdelava slike

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.

Page 29: Obdelava slike

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

Page 30: Obdelava slike

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)

Page 31: Obdelava slike

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

Page 32: Obdelava slike

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

Page 33: Obdelava slike

Canny-jev operatorCanny-jev operator

Page 34: Obdelava slike

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

Page 35: Obdelava slike

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

Page 36: Obdelava slike

Prostor ločljivostiProstor ločljivostiPrehodi skozi nič

drugega odvoda

(Laplace) Gaussa

LoG, DoG

Page 37: Obdelava slike

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

Page 38: Obdelava slike

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),(

Page 39: Obdelava slike

Iskanje oglišč (kotov)Iskanje oglišč (kotov)

Page 40: Obdelava slike

Houghov transformHoughov transform

Vhod:

slikaIzhod:

Hugh transform

y = k.x + n

Page 41: Obdelava slike

Houghov transformHoughov transform

Page 42: Obdelava slike

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