Top Banner
F12 21.04.09 INF 2310 1 INF 2310 – Digital bildebehandling SEGMENTERING VED TERSKLING Global histogram-basert terskling Variabel og multivariabel terskling GW: 10.3 (litt grundigere enn i boka) F12 21.04.09 INF 2310 2 Om pensum fra kap. 10 Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. I INF2310 foreleser vi bare om segmentering ved Kant-deteksjon (GW kap 10 – 10.2.7) – forelesning nr 7. Terskling (GW kap 10.3) – dagens forelesning (nr 12), men tar dette noe grundigere enn boka. Lenking av kanter (10.2.7), Hough-transform (10.2.7), region-basert segmentering (10.4), ”watershed” (10.5) og bevegelses-segmentering (10.6) tar vi i INF4300. F12 21.04.09 INF 2310 3 Hva er segmentering? Segmentering er en prosess som deler opp bildet i meningsfulle regioner. Segmentering er ett av de viktigste elementene i et komplett bildeanalyse- system. I segmentering får vi fram regioner og objekter som senere skal beskrives og gjenkjennes. I det enkleste tilfellet har vi bare to typer regioner: – Forgrunn – Bakgrunn Eksempel: finne symboler for OCR F12 21.04.09 INF 2310 4 Segmenterings-problemer Problemet blir banalt hvis vi bare har en objekt-region, og denne er homogen. Men vi har som regel flere objekter i bildet. Objektene er sjelden helt like, selv om de er av samme type. Ofte har vi flere typer/klasser av objekter samtidig. Belysningen kan variere over bildet. Refleksjon, farge etc. kan variere over objekter i bildet. Hva og hvor er objektet i dette bildet?
14

Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

Nov 02, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 1

INF 2310 – Digital bildebehandling

SEGMENTERING VED TERSKLING

Global histogram-basert tersklingVariabel og multivariabel terskling

GW: 10.3 (litt grundigere enn i boka)

F12 21.04.09 INF 2310 2

Om pensum fra kap. 10

• Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk.

• I INF2310 foreleser vi bare om segmentering ved – Kant-deteksjon (GW kap 10 – 10.2.7) – forelesning nr 7.– Terskling (GW kap 10.3) – dagens forelesning (nr 12),

men tar dette noe grundigere enn boka.• Lenking av kanter (10.2.7), Hough-transform (10.2.7),

region-basert segmentering (10.4), ”watershed” (10.5) og bevegelses-segmentering (10.6) tar vi i INF4300.

F12 21.04.09 INF 2310 3

Hva er segmentering?

• Segmentering er en prosess som deler opp bildet i meningsfulle regioner.

• Segmentering er ett av de viktigste elementene i et komplett bildeanalyse-system.

• I segmentering får vi fram regioner og objekter som senere skal beskrives og gjenkjennes.

• I det enkleste tilfellet har vi bare to typer regioner:– Forgrunn– Bakgrunn Eksempel:

finne symboler for OCR

F12 21.04.09 INF 2310 4

Segmenterings-problemer• Problemet blir banalt hvis vi bare har en objekt-region,

og denne er homogen.• Men vi har som regel

flere objekter i bildet.• Objektene er sjelden helt like,

selv om de er av samme type.• Ofte har vi flere typer/klasser

av objekter samtidig.• Belysningen kan variere

over bildet.• Refleksjon, farge etc. kan

variere over objekter i bildet. Hva og hvor er objektet i dette bildet?

Page 2: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 5

Hva er god segmentering?

Vi stiller fire krav til god segmentering:1. Segmenterte regioner bør være uniforme og homogene

mht. gråtone, tekstur eller andre egenskaper.2. Nabo-regioner av forskjellig klasse bør være signifikant

forskjellig mht. de samme egenskapene.3. Regioner bør være enkle, uten for mange hull.4. Region-grensene bør være enkle

(uten mange ”frynser”) og må være riktig plassert.

F12 21.04.09 INF 2310 6

To segmenterings-kategorier

• Vi skiller mellom to kategorier av metoder, basert påhhv. likhet og diskontinuitet mellom pikslene i bildet.

1. Ved terskling og region-basert segmentering får vi fram de pikslene som ligner hverandre.

Dette gir alle pikslene i objektet.2. Ved kant-basert segmentering finner vi

basis-elementer i omrisset til objektene:• Kant-punkter, linje-punkter, hjørne-punkter..• I neste steg:

• Tynner brede kanter• Lenker punktene sammen

F12 21.04.09 INF 2310 7

Terskling

• Hvis vi har grunn til å anta at objektene f.eks. er lysere enn bakgrunnen, kan vi sette en terskel T og lage oss et binært ut-bilde g(x,y) ved mappingen:

• Da har vi fått et ut-bilde g(x,y) med bare to mulige verdier.

• Med riktig valg av T vil nå alle piksler medg(x,y)=1 være objekt-piksler.

⎩⎨⎧

>≤

=TyxfTyxf

yxg),( hvis 1),( hvis 0

),(

f

g

F12 21.04.09 INF 2310 8

Flernivå terskling

• Har vi flere klasser av objekter med forskjellig intensitet, så kan vi utvide dette til M gråtone-intervaller ved hjelp av M-1 terskler.

• Terskling er et spesialtilfelle av klassifikasjon.• Jfr. histogram-utjevning med noen få gråtoner.

⎪⎪⎩

⎪⎪⎨

−≤≤−

≤≤≤≤

=

− 1),(hvis1...

),(hvis1),(0hvis0

),(

1

21

1

GyxftM

tyxfttyxf

yxg

M

Page 3: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 9

Kategorier av tersklings-metoderInteraktive og automatiske:• I interaktiv terskling vises bildet fram, og brukeren

prøver seg gjerne fram til han/hun finner den subjektivt beste terskelen.

• I automatisk terskling trengs ingen bruker-interaksjon, og heller ingen subjektiv vurdering.

• Mange bruker begrepet ”automatisk” for å implisere at brukeren ikke trenger å spesifisere parametere til tersklings-rutinen.

• I denne forstand finnes det egentlig ingen automatiske metoder for valg av ”optimal” terskel. Det er alltid innebygde parametre i algoritmene.

• ”Optimal” er ofte et misbrukt ord.

F12 21.04.09 INF 2310 10

Basis - terskling• Anta at et bilde har to

intensitets-områder: forgrunn og bakgrunn.

• Histogrammet vil da vise to topper, gjerne med et ”dal-søkk” mellom.

• Avhengig av hvor mye forgrunn vi har i forhold til bakgrunn, kan det hende vi ikke ser to topper.

• Hvor skal vi legge terskelen?

F12 21.04.09 INF 2310 11

Eksempel – bimodalitet i lokale vinduer

Unimodal

Bimodal, skjevt forhold

Bimodal, ca 1:1

F12 21.04.09 INF 2310 12

To Gauss-fordelinger• To Gauss-fordelinger med

samme standardavvik, σ.• D = µ2-µ1

• Like a priori sannsynligheter.• D avgjør om vi ser to topper.

• Ulike a priori sannsynlighet.• D avgjør om vi ser to topper.

• Veldig ulike sannsynligheter.• Selv ved stor verdi for D

ser vi ikke to topper.

0

0,032

0 8 16 24 32 40 48 560

0,032

0 8 16 24 32 40 48 56

D=µ2-µ1=2σ D=µ2-µ1=3σ

0

0,05

0 8 16 24 32 40 48 560

0,05

0 8 16 24 32 40 48 56

0

0,04

0 8 16 24 32 40 48 560

0,04

0 8 16 24 32 40 48 56

Page 4: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 13

Fordelinger, standardavvik og varians • En Gauss-fordeling (normalfordeling) er gitt ved

• middelverdien µ• variansen σ2:

• Varians: σ2,

• Standardavvik: σ

2

2

2

)(

21)( σ

µ

πσ

−−

=x

ezp

F12 21.04.09 INF 2310 14

Betydningen av σ• Hvis pikselverdiene til et objekt i et bilde er normalfordelt

med middelverdi µ og standardavvik σ så vil 68% av pikselverdiene ligge i intervallet <µ- σ, µ+ σ>.

• 95% av pikselverdiene ligger i intervallet <µ- 2σ, µ+ 2σ>.• 99% av pikselverdiene ligger i intervallet <µ- 3σ, µ+ 3σ>.

Andel av fordelingen innenfor intervallet

F12 21.04.09 INF 2310 15

Histogram, normalisert, skalert• Et eksempel:• To Gauss-fordelinger

– bakgrunn : µ1 = 16 , σ1 = 3– forgrunn : µ2 = 36 , σ2 = 8

• Normaliserte histogrammer:

• Skalerer med a priori sannsynligheter, f.eks. P1 =0.2, P2 = 1-P1 = 0.8

• Dette kan forskyve både– minimum i bildets histogram– skjæringspunktet mellom fordelingene

0

0,04

0 8 16 24 32 40 48 56

0

0,15

0 8 16 24 32 40 48 56

F12 21.04.09 INF 2310 16

Klassifikasjons-feil ved terskling

- Bakgrunn - Forgrunn

Terskel t

Forgrunn som feilklassifiseressom bakgrunn med terskelen t Bakgrunn som feilklassifiseres

som forgrunn med terskelen t

Page 5: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 17

Klassifikasjonsfeil ved terskling• Anta at histogrammet er en sum av to fordelinger b(z) og f(z),

b og f er normaliserte bakgrunns- og forgrunns-histogrammer.• La F og B være a priori sannsynlighet for bakgrunn og

forgrunn (B+F=1)• Det normaliserte histogrammet til bildet kan da skrives

• Sannsynlighetene for å feilklassifisere et piksel, gitt en terskelverdi t,finner vi fra de normaliserte fordelingene:

)()()( zfFzbBzp ⋅+⋅=

∫∞

∞−

=

=

tF

t

B

dzzbtE

dzzftE

)()(

)()(

F12 21.04.09 INF 2310 18

Den totale feilen• Vi har funnet andelen feilklassifikasjon i hver fordeling.• Den totale feilen finner vi ved å multiplisere med

a priori sannsynlighetene for forgrunn og bakgrunn:

• Legges terskelen veldig høyt eller veldig lavt, blir feilen stor.

• Det er rimelig å anta at feilen har et minimum for en bestemt verdi t =T.

∫ ∫∞−

+=

⋅+⋅=t

t

FB

dzzbBdzzfF

tEBtEFtE

)()(

)()()(

F12 21.04.09 INF 2310 19

Finn den T som minimerer feilen

• Deriverer E(t) mhp. t vha. Leibnitz regel (se neste foil) for derivasjon av integraler.

• Setter den deriverte lik 0 og får:

• Merk at dette er en generell løsning som gir minst feil.

• Det er ingen restriksjoner mht. fordelingene b og f !!

∫ ∫∞−

∞+=

t

tdzzbBdzzfFtE )()()(

)()(0)( TbBTfFdt

tdE ⋅=⋅⇒=

VIKTIG !!!

F12 21.04.09 INF 2310 20

Leibnitz’ regel• Hvordan deriverer vi integralet

• Der integrasjonsgrensene er avhengig av derivasjonsparameteren? Leibnitz’ regel sier:

• I vårt tilfelle har vi to integraler:

• For det første integralet finner vi at:a(λ) =-∞ (derivert = 0), b(λ) = t (derivert = 1), f(x;λ)=f(z) (uavhengig av t)

• For det andre integralet har vi:a(λ) = t (derivert = 1), b(λ) = ∞ (derivert = 0), f(x;λ)=b(z) (uavhengig av t)

• Dermed har vi til sammen:

∫=)(

)();()(

λ

λλλ

b

adxxfI

∫ ∫∞−

∞+=

t

tdzzbBdzzfFtE )()()(

)()(0)( TbBTfFdt

tdE ⋅=⋅⇒=

( ) ( ) ∫ ∂∂+−=

)(

)(

);();()();()()( λ

λ λλλλ

λλλλ

λλ

λλ b

adxxfaf

ddabf

ddb

ddI

Page 6: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 21

Terskling av to Gauss-fordelinger

• Anta at bakgrunns- og forgrunns-intensitetenefølger hver sin Gauss-fordeling, b(z) og f(z),slik at det normaliserte histogrammet kan skrives som

• F og B er a priori sannsynligheter for for- og bakgrunn• µB og µF er middelverdiene for bakgrunn og forgrunn. • σB

2 og σF2 er variansen for bakgrunn og forgrunn.

2

2

2

2

2)(

2)(

22)( F

F

B

B x

F

x

B

eFeBzp σµ

σµ

πσπσ

−−−−

+=

F12 21.04.09 INF 2310 22

Optimal løsning – to Gauss-fordelinger

• Vi vet at optimal løsning ligger der hvor

• Vi setter inn for b(z) og f(z):

• Vi kan stryke √2π og ta logaritmen:

• Dette gir en annengrads-ligning i T:

• Vi kan altså få to løsninger for T.

)()( TbBTfF ⋅=⋅2

2

2

2

2)(

2)(

22B

B

F

F T

B

T

F

eBeF σµ

σµ

πσπσ

−−−−

=

( ) ( )⎟⎟⎠

⎞⎜⎜⎝

⎛−−=⎟⎟

⎞⎜⎜⎝

⎛−−

BB

B

FF

F BTFTσσ

µσσ

µ ln2

ln2 2

2

2

2

( ) ( ) 0ln22 22222222222 =⎟⎟⎠

⎞⎜⎜⎝

⎛+−+−+−

B

FFBBFFBBFFBFB F

BTTσσσσµσµσσµσµσσ

F12 21.04.09 INF 2310 23

To terskler – når kan det skje?• Hvis standardavvikene i de to Gauss-fordelingene er forskjellige

– og skjæringspunktene mellom fordelingene (skalert med a priori sannsynlighet) ligger innenfor gråtoneskalaen i bildet

• En terskelverdi for hvert skjæringspunkt.

• Det er bare mellomde to tersklene at flertallet av pikslene er bakgrunnspiksler!

0

0,032

0 8 16 24 32 40 48 56

F12 21.04.09 INF 2310 24

Hvor ligger optimal terskel?• Vi har en annengradsligning i T:

• Hvis standard-avvikene i de to fordelingene er like (σB= σF= σ > 0) får vi en enklere ligning:

• Hvis a priori sannsynlighetene F og B er omtrent like har vi en veldig enkel løsning:

( ) ( ) 0ln22 22222222222 =⎟⎟⎠

⎞⎜⎜⎝

⎛+−+−+−

B

FFBBFFBBFFBFB F

BTTσσσσµσµσσµσµσσ

⎟⎠⎞

⎜⎝⎛

−++=

=⎟⎠⎞

⎜⎝⎛+−+−−

BFT

FBT

FB

FB

FBFBFB

ln)(2

)(

0ln2))(()(2

2

2

µµσµµ

σµµµµµµ

c

2)( FBT µµ +=

Page 7: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 25

Hvis vi nå bare antar at P1=P2

• Et lite eksempel:• For = µ1 = 20 og µ2= 44,

med σ1 = σ2 = 8, så vil T = (µ1+µ2)/2= 32 være en OK terskel, selv om P1 =0.6 ≠ P2.

• For P1 =0.9 ≠ P2vil feilen bli ganske stor.

0

0,032

0 8 16 24 32 40 48 56

0

0,05

0 8 16 24 32 40 48 56

F12 21.04.09 INF 2310 26

Eksempel: To cosinus-fordelinger• Anta mørke objekter på lys bakgrunn, og fordelinger gitt ved:

• Med z0=1, a=1 for objektene, og z0=3, a=2 for bakgunnen:

• Hvis 1/3 av alle pikslene er objekt-pikslerblir de skalerte fordelingene slik:

• La oss finne – terskelverdien, T, som gir minst mulig total feil– andelen feilklassifiserte objektpiksler,

Eo(T), ved denne terskelverdien.

( )

⎪⎩

⎪⎨⎧ +≤≤−⎥⎦

⎤⎢⎣⎡ −

=ellers

azzazforzzazp

0

)()(2

cos4)( 00

0 ππ

0

1

0 1 2 3 4 5

0

0,25

0,5

0 1 2 3 4 5

F12 21.04.09 INF 2310 27

To cosinus-fordelinger – del II• Vi skal finne den terskelen T som gir minst mulig feil, dvs:

• Andelen feilklassifiserte objektpiksler finner ved å integrere forgrunnsfordelingen (substituerer y=z-1)

( ) ( )

( ) ( ) ( ) ( ) ( )⎪⎩

⎪⎨⎧−

=⇒−±=−

⇒⎥⎦⎤

⎢⎣⎡ −=⎥⎦

⎤⎢⎣⎡ −

⎥⎦⎤

⎢⎣⎡ −

⎟⎠⎞

⎜⎝⎛ −=⎥⎦

⎤⎢⎣⎡ −

=

35

1

43

21

43cos

21cos

43cos

8311

21cos

431

)()(

umuligTTTTT

TT

TpPTpP bboo

ππππ

ππππ

( )

075.0231

21

3sin

2sin

21

2

2sin

4

2cos

421cos

41

32

1

32

2

35

≈⎟⎟⎠

⎞⎜⎜⎝

⎛−=⎟

⎠⎞

⎜⎝⎛ −=

⎟⎠⎞

⎜⎝⎛

=

⎥⎦⎤

⎢⎣⎡=⎥⎦

⎤⎢⎣⎡ −= ∫∫

πππ

ππ

ππππ

y

dyydzzE

F12 21.04.09 INF 2310 28

Terskling, to Poisson-fordelinger

• Poisson-fordelingen er gitt ved:

• Skjæringspunktet mellom to skalerte fordelinger er gitt ved:

• Og terskel-verdien som gir minst mulig feil blir da:

• For (µ1,P1)=(32,0.4), (µ2,P2) =(40,0.6) finner vi at T≈34.

( )

( ) ( )

( )

( )

⎟⎟⎠

⎞⎜⎜⎝

⎟⎟⎠

⎞⎜⎜⎝

⎛+−

=

⎟⎟⎠

⎞⎜⎜⎝

⎛+−=⎟⎟

⎞⎜⎜⎝

⎟⎟⎠

⎞⎜⎜⎝

⎛=⎟⎟

⎞⎜⎜⎝

=

==

−−

1

2

2

112

2

212

1

2

2

1

1

2

11

22

ln

ln

lnln

!!

2,1,!

)|(

12

12

µµ

µµ

µµµµ

µµ

µµ

µω

µµ

µµ

µ

PP

T

PPT

ePP

TeP

TeP

ix

exp

T

TT

xi

ii

0

0,05

0 8 16 24 32 40 48 56

Page 8: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 29

En enkel tersklings-algoritme• Start med terskel-verdi t = middelverdien til alle pikslene i bildet.

– Finn middelverdien (µ1(t)) av alle piksler som er mørkere enn terskelen– Finn middelverdien (µ2(t)) av alle piksler som er lysere enn terskelen.

• La ny terskel-verdi være

• Gjenta de to punktene ovenfor til terskelen ikke flytter seg mer.• Dette kalles Ridler og Calvard’s metode • Dette gjøres i algoritmen på side 742 i GW.

– Hvilke betingelser må være oppfylt for at metoden skal virke?– Når vil denne metoden svikte?

( ))()(21

21 ttt µµ +=

F12 21.04.09 INF 2310 30

Samme algoritme: bruk histogrammet!

• Når vi skal terskle et ukjent bilde, kjenner vi ikke µB eller µF (og heller ikke σB og σF )

• Vi kan iterativt estimere µB og µF fra bildets histogramgitt den terskelen tk vi bruker:

• Merk at estimatene µ1(tk) og µ2(tk) finnes fra trunkerte fordelinger (trunkert ved terskelen tk)

[ ]⎥⎥

⎢⎢

⎡+=+=∑∑

∑∑

+=

+=

=

=+ 1

1

1

1

0

0211

)(

)(

)(

)(21)()(

21

G

ti

G

tit

i

t

ikkk

k

k

k

k

ip

iip

ip

iipttt µµ

F12 21.04.09 INF 2310 31

Bruk histogrammet mer effektivt!

• Oppgave 10.26: Reformulér algoritmen i 10.2.3 slik at vi bruker normalisert histogram istedenfor pikselverdier:– Det har vi allerede gjort!

• Ny oppgave: Bruk kumulativt histogram og kumulativ middelverdi:

• Husk at P1(i) er det kumulative normaliserte histogrammet:

⎥⎦

⎤⎢⎣

⎡−−+=

⎥⎥

⎢⎢

⎡+=∑∑

∑∑

+=

+=

=

=+ )(1

)()()(

21

)(

)(

)(

)(21

111

1

1

1

0

01

k

k

k

kG

ti

G

tit

i

t

ik tP

ttPt

ip

iip

ip

iipt

k

k

k

k µµµ

)1()1(),()1()(

)()1()(

1

11

−−=+−=

+−=

GPGiipii

ipiPiPµµµµ

F12 21.04.09 INF 2310 32

Otsu’s metode - motivasjon• Anta at vi har et gråtonebilde med G gråtoner,

med normalisert histogram p(i).• Anta at bildet inneholder to populasjoner av piksler,

slik at pikslene innenfor hver populasjon er noenlunde like, mens populasjonene er forskjellige.

• Målsetting:Vi vil finne en terskel T slik at hver av de to klassene

som oppstår ved tersklingen blir mest mulig homogen, mens de to klassene bli mest mulig forskjellige.

– Klassene er homogene: variansen i hver av de to klassene er minst mulig.

– Separasjonen mellom klassene er stor: avstanden mellom middelverdiene er størst mulig.

Page 9: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 33

Otsu’s metode – enkle begreper• A posteriori sannsynlighet for de to klassene er:

• Middelverdien for gråtoner i de to klassene er:

• Variansen innenfor de to klassene er:

∑∑−

+==

−===1

112

01 )(1)()( ,)()(

G

ti

t

itPiptPiptP

∑∑∑ ∑

∑∑

∑∑∑

=

=

= =−

+=

+=

==

=

≡−−=

−==

≡==

1

0

1

0

12

1

0 01

1

1

12

010

01

)(

)(,

)(1)(

)()()(

)(

)()(

)()(,)()(

)(

)()(

G

i

G

i

G

i

t

iG

ti

G

ti

t

it

i

t

i

ip

iiptPt

tPiipiip

ip

iipt

iipttPt

ip

iipt

µµµµ

µµµ

[ ] [ ]

[ ] [ ] )()()(1

1)(

)()()(

)()()(

1)(

)()()(

22

12

1

12

222

21

11

02

121

iptitPtP

iptit

iptitPtP

iptit

G

ti

t

i

µµ

σ

µµ

σ

−−

=−

=

−=−

=

+=

=

F12 21.04.09 INF 2310 34

Otsu’s metode – litt grundigDen totale variansen i intensitetsfordelingen

kan selvsagt deles i to ved

I hver summasjon kan vi addere og subtrahere klassens a posteriori middelverdi

( ) ( ) )()( 21

1

2

0

2 ipiipiG

ti

t

iTot ∑∑

+==

−+−= µµσ

( ) ( )ipiG

iTot

21

0

2 ∑−

=

−= µσ

[ ] [ ]

[ ] [ ] [ ][ ]

[ ] [ ] [ ][ ] )()()(2)()()()(

)()()(2)()()()(

)()()()()()(

2

1

12

21

12

21

12

10

1

2

01

2

01

21

122

2

011

2

ipttiiptipti

ipttiiptipti

ipttiiptti

G

ti

G

ti

G

ti

t

i

t

i

t

i

G

ti

t

iTot

µµµµµµ

µµµµµµ

µµµµµµσ

−−+−+−+

−−+−+−=

−+−+−+−=

∑∑∑

∑∑∑

∑∑

+=

+=

+=

===

+==

F12 21.04.09 INF 2310 35

Otsu’s metode – litt grundig IIFørste ledd i hver av de to siste linjene på forrige foil kan uttrykkes ved

definisjonene av σ12(t) og σ2

2(t).Andre ledd kan uttrykkes ved P1(t) og P2(t), siden µ, µ1(t) og µ2(t) er

uavhengige av summasjonsvariabelen i. Altså får vi

De to summene bakerst faller bort, fordi

Totalvariansen i bildet er summen av σW(t) og σB(t) !

( ) ( ) [ ]

( ) ( ) [ ] )()()(2)()()()(

)()()(2)()()()(

1

1222

22

222

0111

21

211

2

iptittPtttP

iptittPtttP

G

ti

t

iTot

∑−

+=

=

−−+−++

−−+−+=

µµµµµσ

µµµµµσσ

[ ]

[ ] .0)()()()()()()()()(

.0)()()()()()()()()(

2222

1

1

1

12

1

12

11110 0

10

1

=−=−=−

=−=−=−

∑ ∑∑

∑ ∑∑−

+=

+=

+=

= ==

tPttPtiptiipipti

tPttPtiptiipipti

G

ti

G

ti

G

ti

t

i

t

i

t

i

µµµµ

µµµµ

( ) ( ) ( ) ( ) 221

221

21

221

211

2 )()(1)()()()()(1)()( BWTot ttPttPtttPttP σσµµµµσσσ +=−−+−+−+=

F12 21.04.09 INF 2310 36

Otsu’s metode:• Ønsker å minimere σW

2(t) og samtidig maksimere σB2(t)

• Siden σTot2 er konstant: finn t som maksimerer σB

2(t).• Uttrykket for σB

2(t) kan skrives som (se nederst t.h., forrige foil):

• Otsu’s metode: Søk etter maksimalverdien av σB2(t)

for alle verdier av t der 0 < P1(t)< 1.

( ) ( )

[ ] [ ]

[ ] ( ) [ ]

[ ] 1)(0,)()())(1)(()()(

))(1)(()()()()(1)()(

)(1)()(

)()()(

))(1()(1)()(

)()(

))(1()()()()(

2

2

11

21

11

2111

21

1

21

1

21

1

2

11

2

1

12

212

12

≤≤=−

−=

−+−+−−=

−+−−+−=

−⎥⎦

⎤⎢⎣

⎡−

−−+⎥

⎤⎢⎣

⎡−=

−−+−=

ttttPtPtPt

tPtPtPttPtPtPt

tPtPt

tPtPt

tPtPttP

tPt

tPttPtt

Tot

B

B

ησ

σηµµ

µµµµ

µµµµµµ

µµµµµ

µµµµσ

Page 10: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 37

Otsu’s metode; oppsummering• Gitt et NxM pikslers bilde med G gråtoner.• Finn bildets histogram, h(k), k= 0,1,2,..,G-1.• Finn bildets normaliserte histogram:

• Beregn kumulativt normalisert histogram:

• Beregn kumulativ middelverdi, µ(k):

• Beregn global middelverdi, µ:

• Beregn variansen mellom klassene, σB2(k):

• Finn terskelen der σB2(k) har sitt maksimum.

• Beregn separabilitetsmålet, η(t):

1...,,2,1,0,)()(0

−=≡∑=

Gkiipkk

[ ]))(1)(()()()(

11

212

tPtPtPttB −

−= µµσ

1)(0,)()( 2

2

≤≤= tttTot

B ησ

ση

1...,,2,1,0,)()( −== GkMN

khkp

1...,,2,1,0,)()(0

1 −==∑=

GkipkPk

i

∑−

=

≡1

0

)(G

iiipµ

F12 21.04.09 INF 2310 38

Terskling i Matlab• I Matlab kan vi implementere iterativ terskling ved:

>> T=0.5*(double(min(f(:))) + double(max(f(:))));>> done = false;>> while ~done

g = f >= T;Tnext = 0.5*(mean(f(g)) + mean(f(~g)));done = abs(T – Tnext) < 0.5;T = Tnext;

end

• Funksjonskallet T=graythresh(f) finner Otsu-terskelen, dvs. den terskelverdien T som maksimerer σB

2 for bildet f.

F12 21.04.09 INF 2310 39

Effekten av a priori sannsynlighet• Total tersklingsfeil mot log10(P1/P2)

for fire verdier av µ2-µ1 = Dσ:

D = 1 D = 2 D = 3 D = 4

• Feilen øker raskt vedlog10(P1/P2) ≈ 1

• => Otsu’s metode bør bare brukes når 0.1<P1/P2<10.

• Det samme gjelder for Ridler & Calvard.• Det finnes gode alternativer !

F12 21.04.09 INF 2310 40

”Minimum feil” terskling

• Kittler og Illingworth (1985) beregner et kriterium for alle mulige terskelverdier:

• For hver t-verdi estimeres alle fem parametrene. • Beregn J(t) for alle t og finn minimum, eller finn løsning iterativt.• Kriterie-funksjonen har lokale minima ved endene av gråtoneskalaen.• En uheldig start-verdi i et iterativt søk kan gi meningsløs terskelverdi. • Bruk Otsu’s terskelverdi som start-verdi i et iterativt søk.

[ ][ ])(ln)()(ln)(2

)(ln)()(ln)(21)(

2211

2211

tPtPtPtPttPttPtJ

+−++= σσ

Page 11: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 41

En sammenligning

• For PB =0.9, PF =0.1, µB = 20, µF= 44, σF = σB = 8:

• Otsu’s terskel (venstre) gir signifikant feilterskling.• Kittler og Illingworth’s terskel (høyre) er OK.

Kriteriefunksjoner: σB2(t) og J(t)

0

0,05

0 8 16 24 32 40 48 56

0

0,05

0 8 16 24 32 40 48 56

F12 21.04.09 INF 2310 42

Effekten av støy i bildet• Gitt to-nivå gråtonebilde

– G=256.– A priori sannsynligheter ≈ 0.5.

• Støy=> Mister bimodalitet.

• Global terskling => Mange feilklassifiserte piksler.

• Støyfjerning + terskling:+ Bimodalt histogram

=> bedre terskling– Blurring av bildet

=> feil langs objekt-kanten.

F12 21.04.09 INF 2310 43

Bruk av kant-informasjon• Hvordan kan vi unngå problemene som følger av at objekt

og bakgrunn har ulik a priori sannsynlighet?– Bruk bare piksler som ligger på eller nær overgangen mellom

objekt og bakgrunn.– Forholdet mellom a priori sannsynligheter blir da ≈ 1.

• Hvordan gjør vi det?– Bruk en gradient-estimator, og terskle resultatet.– Bruk en Laplace-operator (nullgjennomgang), og utvid resultatet.

• Dette er egentlig en sirkelslutning:– For å forbedre tersklingen av objektet trenger vi objektets omriss.– For å avgrense omrisset trenger vi en terskling.

F12 21.04.09 INF 2310 44

Eksempel I• Gitt et bilde f(x,y) der objekt-arealet er relativt lite.• Beregn et kantbilde

– Enten gradient-magnitude eller absoluttverdi av Laplace.• Terskle kantbildet med en høy terskel.

-> ”maske-bilde” GT(x,y)• Finn histogram av

f(x,y) • GT(x,y)• Finn optimal terskel

med f.eks. Otsu.• Anvend på f(x,y).• Nær perfekt

resultat.

Page 12: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 45

Eksempel II• Vi ønsker å finne de lyse strukturene i f(x,y).• Vanskelig histogram:

– Otsu ->”feil” terskelverdi

• Beregn abs(Laplace)• Terskle (høy percentil)

-> ”maske-bilde” GT(x,y)

• Finn histogram av f(x,y) • GT(x,y).

• Finn optimal terskel med f.eks. Otsu.

• Anvend på f(x,y).

F12 21.04.09 INF 2310 46

Variabel belysning• I tillegg til støy kan vi ha ujevn belysning.• Feilfri global terskling er da ikke mulig uten bruk av

– Støyfjerning i bildet– Bruk av kant-informasjon– Dette virker ikke alltid.

• Fjern lave frekvenser i bildet.• Variabel terskling.

– Oppdeling av bildet– Lokalt adaptiv terskling

• Et helt annerledes alternativ:– Dividér bildet med bilde av homogen flate med samme belysning.

F12 21.04.09 INF 2310 47

Generalisering til fler-nivå• Ridler & Calvard’s metode kan generaliseres til M terskler:

• Nytt sett terskelverdier beregnes til alle terskler er stabile– dvs til alle differansene |tn,k – tn,k-1|, 1≤n≤M, er mindre enn ∆T.

• Prosedyren konvergerer vanligvis raskt.

2)1,1(),(

2),1(),0(

,,,11,

,2,1,11,1

−++=

++=

−+

+

Gtttt

tttt

kMkMkMkM

kkkk

µµ

µµ

M

F12 21.04.09 INF 2310 48

Flernivå Otsu-terskling• Vi kan skrive variansen mellom klassene σB

2(t) som

• Deriverer og setter δσB2(t)/δt =0. Dette gir en løsning ved

• Dette kan skrives som µ1(T) + µ2(T) = 2T • Vi ser altså en sammenheng mellom Ridler & Calvard og Otsu.• Det samme gjelder for flernivå terskling (se forrige foil).

[ ] [ ] 201

1

21

1

0

2

02

)(

)(

)(

)(µσ −+=

∑∑

∑∑

+=

+=

=

=G

ti

G

tit

i

t

iB

ip

iip

ip

iip

Tip

iip

ip

iipG

Ti

G

TiT

i

T

i 2)(

)(

)(

)(1

1

1

1

0

0 =+∑∑

∑∑

+=

+=

=

=

Page 13: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 49

Global, variabel eller adaptiv?

• Global terskling : – Samme verdi for T over hele bildet.

• Variabel terskling: – Verdien av T varierer over bildet.

• Lokalt adaptiv terskling: – T beregnes fra bildets lokale egenskaper (µ, σ, ...)

F12 21.04.09 INF 2310 50

Adaptiv terskling ved interpolasjon

• Globale terskler gir ofte dårlig resultat.• Globale metoder kan benyttes lokalt.• Dette virker ikke der vinduet bare inneholder en klasse !• Oppskrift:

– NIVÅ I: Del opp bildet i del-bilder.• For del-bilder med bi-modalt histogram:

– Finn lokal terskelverdi Tc(i,j) og tilordne den til senterpikselet (i,j) i del-bildet.

• For del-bilder med uni-modalt histogram: – Finn lokal terskelverdi ved interpolasjon.

– NIVÅ II: Piksel-for-piksel interpolasjon:• Gå gjennom alle piksel-posisjoner

– bestem adaptiv terskelverdi T(x,y) ved interpolasjon mellom de lokale terskelverdiene Tc(i,j).

• Terskle så hvert piksel (x,y) i bildet i terskelverdiene T(x,y).

F12 21.04.09 INF 2310 51

Adaptiv terskling• Lokale endringer i bakgrunn

og kontrast kan håndteres.– kan skyldes ujevn belysning/bakgrunn.

• Man kan bruke – Overlappende vinduer– ikke-overlappende vinduer

• Størrelsen på vinduene kan være avgjørende ...

F12 21.04.09 INF 2310 52

En enkel adaptiv metode ...• En metode som benytter det dere lærte

i forelesningen om gråtonetransformer:• Beregn middelverdi og standardavvik

innenfor et glidende (w x w) vindu over hele bildet. • Nieblack’s metode: Sett den lokale terskelverdien til

• La ut-bildet være gitt ved

• Ex.: for w = 31, k = - 0.8 :

),(),(),( jikjijit σµ +=

⎩⎨⎧

>≤

=),(),( hvis 1),(),( hvis 0

),(jitjifjitjif

jig

Page 14: Om pensum fra kap. 10 · Om pensum fra kap. 10 • Kapittel 10 i boka introduserer et stort og viktig tema, terskling, men dekker det noe overfladisk. • I INF2310 foreleser vi bare

F12 21.04.09 INF 2310 53

Samforekomst-matriser• Vi har sett 2-D histogrammer fra to kanaler i fargebilder.• Samforekomst-matriser er også 2-D histogrammer.

– Engelsk: ”Gray Level Cooccurrence matrix” forkortet GLCM.

• De viser hvor mange forekomster vi har av at – et piksel har gråtone i samtidig som– en nabo i avstand d og retning θ har gråtone j.

• Vi kan skrive dette som h(i,j|d,θ).– For (d,θ) = (1,0) betrakter vi første nabo i x-retning– For (d,θ) = (1,π/2) betrakter vi første nabo i y-retning

• Vi kan legge sammen slike matriser fra flere retninger:0.5*[h(i,j|d=1,θ=0) + h(i,j|d=1,θ=π/2)]gir en samforekomst-matrise i begge retninger (x og y).

F12 21.04.09 INF 2310 54

GLCM-terskling• Anta at vi har en samforekomst-matrise c(i,j|d,θ).• Finn den terskelverdi i bildet som gir færrest mulig antall

overganger fra 0 til 1 eller 1 til 0 horisontalt og vertikalt i bildet etter terskling.

• Antall overganger fra 0 til 1

• Antall overganger fra 1 til 0

• Minst kompleksitet: Finn den T som minimerer Obf + Ofb

∑ ∑−

+= =

=1

1 0

),|,(G

Ti

T

jbf djicO θ

i

∑ ∑=

+=

=T

i

G

Tjfb djicO

0

1

1

),|,( θ

0G-1

j

bb bf

fb ff

T

T

G-1

F12 21.04.09 INF 2310 55

Hva med ”Dalmatineren” ...

Ved å bruke en segmentering basert på

flere skalaer kan vi (nesten) håndtere

”Dalmatiner-bildet”

Ved å inkludere tekstur-informasjon kan vi også håndtere

et godt kamuflert ekorn.

F12 21.04.09 INF 2310 56

Oppsummering terskling• Gitt to vilkårlig fordelinger f(z) og b(z) vil den

terskelverdien som minimerer feilen alltid ligge i skjæringspunktet der

• Ridler og Calvard’s metode er en enkel algoritme.– Hvilke betingelser må være oppfylt for at den skal virke?

• Otsu’s metode maksimerer separasjon mellom to normalfordelte klasser.

• Nieblack’s metode gir lokalt adaptiv terskel basert på middelverdi og standardavvik i løpende vindu.

• Samforekomst-matriser kan også brukes til terskling.

)()(0)( TbBTfFdt

tdE ⋅=⋅⇒=