Intoduktion til Billedbehandling F13. Statistisk Grænseværdiafskæring. Segmentering



Relaterede dokumenter
Middelværdi og varians. Kovarians. korrelation = 0.02 korrelation = 0.7 korrelation = 1.0

PhD-kursus i Basal Biostatistik, efterår 2006 Dag 2, onsdag den 13. september 2006

Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:

Kursus Introduktion til Statistik. Forelæsning 7: Kapitel 7 og 8: Statistik for to gennemsnit, ( , ) Per Bruun Brockhoff

Note om Monte Carlo eksperimenter

DTU M.SC. SKRIFTLIG EKSAMEN Reviderede Spørgsmål

Forelæsning 6: Kapitel 7: Hypotesetest for gennemsnit (one-sample setup)

1 Start og afslutning. Help.

18 Multivejstræer og B-træer.

År: 2000 Kursusnr: Indledende Billedbehandling NAVN :... Underskrift :... Bord nr. :... Opgave

Rygtespredning: Et logistisk eksperiment

Matematikken bag Parallel- og centralprojektion

Statistik Lektion 1. Introduktion Grundlæggende statistiske begreber Deskriptiv statistik Sandsynlighedsregning

9.1 Egenværdier og egenvektorer

Skriftlig eksamen i Datalogi

Note til styrkefunktionen

Stikprøver og stikprøve fordelinger. Stikprøver Estimatorer og estimater Stikprøve fordelinger Egenskaber ved estimatorer Frihedsgrader

4. september π B = Lungefunktions data fra tirsdags Gennemsnit l/min

Den ideelle operationsforstærker.

statistik og sandsynlighed

i x-aksens retning, så fås ). Forskriften for g fås altså ved i forskriften for f at udskifte alle forekomster af x med x x 0

GPS og geometri - 1 Baggrund. lineære og ikke-lineære ligninger. Køreplan Matematik 1 - FORÅR 2007

19 Hashtabeller. Noter. PS1 -- Hashtabeller. Hashing problemet. Hashfunktioner. Kollision. Søgning og indsættelse.

Hypotese test. Repetition fra sidst Hypoteser Test af middelværdi Test af andel Test af varians Type 1 og type 2 fejl Signifikansniveau

Navn :... Underskrift :... Bord nr. :... Ogave

Reminder: Hypotesetest for én parameter. Økonometri: Lektion 4. F -test Justeret R 2 Aymptotiske resultater. En god model

Om at udregne enkeltstående hexadecimaler i tallet pi

P2-projektforslag Kombinatorik: grafteori og optimering.

DATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004

Normalfordelingen. Statistik og Sandsynlighedsregning 2

Statistik vejledende læreplan og læringsmål, efteråret 2013 SmartLearning

Modul 5: Test for én stikprøve

Vi kalder nu antal prøverør blandt de 20, hvor der ikke ses vækst for X.

Katalog: Magnetfelt ved højspændingskabler og -luftledninger

Lineære ligningssystemer

Billedanalyse, vision og computer grafik. NAVN :..Lærerne... Underskrift :... Bord nr. :...

Uge 48 II Teoretisk Statistik 27. november Numerisk modelkontrol af diskrete fordelinger: intro

Lodret belastet muret væg efter EC6

Tjek. lønnen. Et værktøj til at undersøge lokal løndannelse og ligeløn på offentlige arbejdspladser udgave Varenr. 7520

Bjælkeoptimering. Opgave #1. Afleveret: Version: 2 Revideret: Optimering, ressourcer og miljø. Anders Løvschal, s022365

Kapitel 8. Magnetiske felter - natur, måleenheder m.v. 1 Wb = 1 Tesla = Gauss m 2 1 µt (mikrotesla) = 10 mg (miligauss)

Fig. 1 Billede af de 60 terninger på mit skrivebord

Oversigt. Course 02402/02323 Introducerende Statistik. Forelæsning 3: Kontinuerte fordelinger. Per Bruun Brockhoff

Eksempel på logistisk vækst med TI-Nspire CAS

Vejledning til Photofiltre nr. 117 Side 1

Robusthed i geometriske algoritmer

En ny vej - Statusrapport juli 2013

Benyttede bøger: Statistisk fysik 1, uredigerede noter, Per Hedegård, 2007.

Et eksempel på en todimensional normalfordeling Anders Milhøj September 2006

Navn :... Underskrift :... Bord nr. :... Ogave

Differentialregning Infinitesimalregning

Forelæsning 8: Inferens for varianser (kap 9)

En oversigt over udvalgte kontinuerte sandsynlighedsfordelinger

Substitutions- og indkomsteffekt ved prisændringer

Formelsamling Matematik C

Detektion af vesikler i celler. Bachelorprojekt

Susanne Ditlevsen Institut for Matematiske Fag susanne

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Deskriptiv statistik. Version 2.1. Noterne er et supplement til Vejen til matematik AB1. Henrik S. Hansen, Sct. Knuds Gymnasium

Billedbehandling til analyse af frøsundhed i spinat

Indholdsfortegnelse. Indledning...2. Tidsplan...2. Målgruppe...3. Spørgeskema...3. Kode eksempler...5. Procesbeskrivelse...7. Evaluering...

Økonometri 1. Dagens program. Den simple regressionsmodel 15. september 2006

Tjek. lønnen. Et værktøj til at undersøge ligeløn på arbejdspladser inden for det grønne område og transportsektoren udgave Varenr.

Kapitel 3 Centraltendens og spredning

Dosisovervågning af stråleudsatte arbejdstagere - Resultater for 2002

Introduktion. Jan Brown Maj, 2010

Simpel Lineær Regression: Model

Stx matematik B december Delprøven med hjælpemidler

Teoretisk Statistik, 9 marts nb. Det forventes ikke, at alt materialet dækkes d. 9. marts.

Faglige delmål og slutmål i faget Matematik. Trin 1

P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2.

Kønsmainstreaming af HK-KL-overenskomst kvantitativ del

Kvantitative Metoder 1 - Efterår Dagens program

Statistik i basketball

Patientforflytninger i seng

Kvantitative Metoder 1 - Forår Dagens program

Fup og fakta om danskernes brug af sovemedicin og beroligende midler

Boksforsøg nr. 76. Sammenligning af slagtekyllingefoder fra PPH, ØA, Ewers og DLG. Kort udgave

Økonomisk analyse af forskellige strategier for drægtighedsundersøgelser

Blue Reef. Skov og Naturstyrelsen. Påvirkning på sedimenttransportforhold - Dansk resumé. Dansk resumé

November 2010 ATEX INFO Kennet Vallø. INFO om ATEX

Løsninger til kapitel 1

Værktøjshjælp for TI-Nspire CAS Struktur for appendiks:

DANSK / EUROPÆISK STANDARD DS/EN 1838

02402 Løsning til testquiz02402f (Test VI)

Generelt er korrelationen mellem elevens samlede vurdering i forsøg 1 og forsøg 2 på 0,79.

Stor fremgang i friværdierne i 2015 især i dele af landet

To samhørende variable

Lektion 6 Logaritmefunktioner

Newtons afkølingslov

Grådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.

Vejledning i brug af Gym-pakken til Maple

ØVELSE 3A. I SAS kan man både bruge {}, [] og () som paranteser til index.

Sandsynlighedsregning: endeligt udfaldsrum (repetition)

Uge 10 Teoretisk Statistik 1. marts 2004

Valgkampens og valgets matematik

Miniprojekt i Programmering (MIP) for DAT2 og SW2, Forår 2012

Dagens Temaer. Test for lineær regression. Test for lineær regression - via proc glm. k normalfordelte obs. rækker i proc glm. p. 1/??

Notat. Demografi- & Budgetmodellen (DBM) Struktur og Metode SOCIAL OG SUNDHED. Dato: 23. Februar 2015

Transkript:

Intoduktion til Billedbehandling F13 I industriel billedbehandling er segmentering ofte den hyppigste operation. Ofte er billederne simple og objekterne findes ved en grænseværdiafskæring. Støj i segmenteringen kan ofte filtreres bort ved brug af morfologiske operationer. Thresholding Simpel segmentering Split and merge Region growing Hvis objektformerne er kendte kan en (implicit) segmentering i visse tilfælde foretages ved Hough-transformation ud fra detekterede kantpunkter. Den mest anvendte metode er at finde en (eller evt. flere) grænseværdier ved analyse af et histogram (f.eks. over intensiteten). Se noter kapitel 6 for metoder hertil. Generelt er segmentering en meget vanskelig operation og simpel grænseværdiafskæring vil kun sjældent kunne anvendes. 1 3 Statistisk Grænseværdiafskæring Segmentering Et segment er et sammenhængende område i billedplanet som besidder en fælles egenskab, f.eks. at intensiteten er nogenlunde konstant og væsentlig forskellig fra intensiteten i omegnen til segmentet. Alternative egenskaber er farve- eller tekstur-konstans. Segmentering og kantdetektion er duale processer. Kanterne udgør ideelt grænserne mellem segmenterne. Metoderne til segmentering er væsenlig forskellig fra metoder til kantdetektion. Ofte er segmentering en global proces, der ikke kan opnås ved lokale beregninger. En variant er at lade brugeren bestemme et antal træningsområder, hvori intensiteten modelleres, f.eks. med minimal og maksimal værdi eller ved middelværi og varians. Hvis billedet er i farver benyttes kan middelværdivektoren og kovariansmatricen estimeres. En pixel kan klassificeres som hørende til samme population som elementerne i træningsområdet hvis Mahalanobis-afstanden er tilstrækkelig lille. Sandsynligheden for klassetilhørsforholdet er: P(x) = 1 (2π) n/2 C 1/2e 1 2 (x µ)t C 1 (x µ) hvor x er farvevektoren i pixelen og n er antallet af farveelementer. Lad nu 0 < p < 1 være an sandsynlighedstærskel svarende til kravet: P(x) > p 2 4

Mahalanobis-afstanden Vi tager logaritmen og får: p 0 = ln(p) < ln(p(x)) = ln((2π) n/2 ) ln( C 1/2 ) 1 2 (x µ)t C 1 (x µ) eller (x µ) t C 1 (x µ)+ln( C)+nln(2π) < 2p 0 Ovenstående metode klassificerer pixels individuelt. For ikke-trivielle billeder må man derfor forvente meget støj i klassifikationen (mange og usammenhængende segmenter). Metoden er generel, idet feature-vektoren x kan indeholde såvel farver (egentlige data) som beregnede størrelser, herunder teksturmål etc. Hvis segmenteringen er specificeret ved flere/mange træningsområder for forskellige typer af objekter kan metoden let tilpasses således at pixels klassificeres til det træningsområde der ligner bedst. Metoden er, med diverse modifikationer, ofte central i mange af de segmenteringsalgoritmer, der benyttes i praksis. 5 7 Givet p, µ og C 1 fra træningen kan grænseværdiafskæringen altså foretages ved: Simpel segmentering I stedet for at klassificere pixels enkeltvis er den enkelste metode at klassificere disse efter lighed med deres nærmeste naboer. Lad hvor x t C 1 x yx < T T = 2ln(p) ln( C ) nln(2π) µ t C 1 µ y = 2µ t C 1 Vi ser at acceptgrænsen kan beskrives ved at 2.ordens polynomium i elementerne/farverne i x. ens(i, J) = { 1 hvis I J < T 0 ellers hvor T er en brugerangiven grænseværdi. En simpel segmentering er: 1 procedure segment(i,j) 2 integer segnr; 3 if (ens(i[x][y],i[x-1][y])) begin 4 if (ens(i[x][y],i[x][y-1])) 5 segnr := merge(x,y); 6 else segnr := Seg[x-1][y]; 7 end else if (ens(i[x][y],i[x][y-1])) 8 segnr := Seg[x][y-1]; 9 else segnr := newseg(); 10 Seg[x][y] := segnr; 11 end 6 8

Hvor mange segmenter er der i billedet? Ved segmentforening merge(x,y) er det nødvendigt at gå rette i allerede tildelte segmentnumre. Dette sker ved at opretholde en liste over samtlige segmenter. 1 typedef struct { int nr, next; } elem; 2 elem *segtable; Antag at funktionen newseg() initialiserer segmenttabellens indgange nr hhv. next med det ny segmentnummer hhv. konstanten -1. 9 11 Segmentfletning: 1 int merge(x,y) int x,y; begin 2 int seg1, seg2, temp, index; Her er histogrammet for billedet. Hvor mange segmenter er det? 3 seg1 = segtable[seg[x-1][y]].nr; 4 seg2 = segtable[seg[x][y-1]].nr; 5 if (seg1!= seg2) begin 6 if (seg1 > seg2) begin 7 temp = seg1; seg1 = seg2; seg2 = temp; 8 end 9 segtable[seg2].nr = seg1; 10 index = seg2; 11 while (segtable[index].next!= -1) begin 12 index = segtable[index].next; 13 segtable[index].nr= seg1; 14 end 15 segtable[index].next = segtable[seg1].next; 16 segtable[seg1].next = seg2; 17 end 18 return(seg1); 19 end 10 12

Tre simple segmenteringen ved nabosammmenligninger med grænseværdierne 3, 5 og 10. Over- og Under segmentering Mange segmenteringer resulterer i alt for mange segmenter, hvoraf de fleste er få pixels store og typisk ligger i rampeformede kantområder. Antallet at segmenter er 8590, 5405, og 2672. 13 En simpel segmentoprydning foretages ofte som sidste element i en segmentering og består i iterativt at forene det mindste segmenet med det bedst lignende nabosegment. Stopkriteriet er ofte en minimal segmentstørrelse. 15 Split-segmentering Den simple segmentering er ikke fremragende mht. kvalitet, men er særdeles hurtig, bl.a. fordi den kun kræver ét gennemløb af billedet. En anden metode til generering af en initiel (over-) segmentering er ved konstruktion af et quad-tree for billedet. Dette opdeles iterativt i 4 delbilleder indtil et homogenitetsmål for hvert delbillede er opfyldt. Vi skal se andre og bedre segmenteringen. Fælles for de fleste er at de oversegmentere billedet og nødvendiggør en efterfølgende fletning og segmentoprydning. Ofte er de (lidt) bedre metoder til initiel segmentering væsentlig mere beregningskrævende. 14 16

Homogenitetsmål Simple mål for homogeniteten af et (del-) billede eller segment er: Variansen σ 2 Maksimal minus minimal intensitetsværdi Entropien af intensitetsfordelingen Kvadratfejlen ved approksimation med en plan intensitetsflade Rækkefølgen af segmentfletninger af afgørende. Af beregningsmæssige årsager foretages fletningen uden look-ahead ved iterativ minimering af et mål: En suboptimal strategi er iterativt at minimere segmenteringsmålet S. Alternativt (og simplere) kan segmenter der minimerer målet M(A, B) vælges til fletning. Stopkriteriet er ofte en grænseværdi på lighedsmålet M(A, B). Dette kan være vanskeligt at angive en god grænseværdi. Summen af gradientstørrelser for intensiteten 17 19 Merge-segmentering En initiel segmentering reducerer antallet af segmenter, såledan at hvert startsegment med sikkerhed er homogent. Ved fletning benyttes en nabograf, der indeholder kanter mellem alle nabosegmenter, og som er tilknyttet et numerisk mål M(A, B) for ligheden mellem to segmenter A og B. En optimal segmentering kan defineres som den, hvor summen S af lighedsmål M(A, B) over alle kanter for slutsegmenteringen er minimal. For stort set alle mål M vil S have multiple minima. Det kan vises at bestemmelse af det globale minimum er NP-komplet. Vejen fra en initiel segmentering til den endelige er afhængig af den rækkefølge hvori segmenter flettes. Det er sjældet tilfældet at iterativ minimering, ved fletning af de segmenter der minimerer M(A, B) leder til det globale minimum. 18 Eksempel på fletning: C A B D E C A Nabograf B D E Nabograf efter fletning B = B U E C D Den initielle segmentering består af segmenterne A, B, C, D og E, svarende til segmenteringsmålet: M 0 = M(A, B)+M(B, C)+M(B, D)+M(B, E)+M(C, D)+M(D, E) Ved foreninen B = B E fås målet: M B E = M(A, B ) + M(B, C) + M(B, D) + M(C, D) Reduktionen i segmenteringsmålet er: M = M B E M 0 A B 20

Strategi for segmentfletning Den løbende opdatering er: En typisk overordnet strategi for segmentfletning består i 3 faser: 1. Flet store segmenter så gode stabile kerneområder dannes. Ofte flettes kun ganske få segmenter i denne fase. 2. Generel fletning på basis af nabo-segment-lighedsmål. Dette er her det store arbejde ligger. 3. Segmentoprydning: flet alle små segmenter med bedst lignende nabosegment, dog således at flossede segmentgrænser undgås hvis muligt. I denne fase flettes ofte 50-90 procent af segmenterne. 21 µ ny = nµ + x n + 1 σ ny = n(σ2 µ 2 ) + x 2 n + 1 Den ny pixel inkluderes i segmentet hvis: x µ 2 σ 2 < T hvor T er en grænseværdi, f.eks. 4.0 µ ny Mere avanceret kan testen omfatte krav til gradientstørrelsen i pixelen etc. Seed-growing, som beskrevet ovenfor, giver ofte dårlige resultater, er beregningskrævende, og benyttes sjældent. Eksempel på anvendelse er i watershed-segmentering. 23 Seed growing Seed-growing benyttes oftes ved interaktiv segmentering hvor brugeren angiver et punkt i et objekt og programmet uvider dette segment indtil ingen nye pixels kan tilføjes. Alternativt kan startpixels vælges tilfældigt fra områder med lille kontrast. Groningen foretages iterativt pixel for pixel. En nabopixel til segmentet inkluderes hvis pixelens farve ligger tæt på segmentets farve. For at minimere omkostningerne ved beregning af statistik for segmentet omfatter denne ofte kun middelværdi og varians: Lad x være intensiteten i en ny pixel, og lad n, µ og σ være antal pixels i segmentet samt segmentets middelværdi og varians. 22 Watershed segmentering Et vandskæl er en topografisk linie der adskiller områder, hvor nedbør vil flyde mod forskellige bassiner. Ved segmentering vil vi gerne opnå overensstemmelse mellem kanter og segmentgrænser. Opfat derfor gradientstørrelsen af intensitetsfunktionen som et bjerglandskab. De lokale minima vil udgøre bunden af bassinerne. Vandskællene er bestemt af de punkter, hvor gradientstørrelsen er lokalt maksimal, dvs. i kantpunkterne. Mellem disse punkter vil nedbør flyde i gradientens retning mod et bassin. Hvert segment er bestemt af det punkt, der udgør bassinbunden, samt de pixels, hvor nedbør vil flyde mod bassinbunden. 24

Intensitet Vandskæl Metode 3: Som metode 2, men hvor der benyttes lister af pixels med samme værdi. Iterativt inkluderes usegmenterede pixels, som er naboer til en segmenetede pixel, og som har værdi k + 1 som er 1 større end den maksimale værdi i segmentet. Metoden simulerer at bassinerne fyldes op, og kan implementeres forholdsvist effektivt. Pixels med konstant værdi, placeret på en bakkekam, og som potentielt kan tilhøre 2 segmenter klassificeres efter det segment, der ligger nermest. Bassinbunde 25 27 Metode 1: Klassificerer alle pixels ved at simulere, hvorledes vandet flyder, indtil dette har nået et punkt med gradientstørrelse nul. Denne metode er ineffektiv. Metode 2: Brug en seed-growing algoritme, hvor bassinbundene udgør startpunkterne. Disse detekteres som de pixels hvor gradientstørrelsen G σ I = 0. Kriteriet for tilføjelse af nabopixels er, at gradienten i naboen er rettet mod segmentet. Gradientretninger omkring segment For at undgå at støj ikke forårsager en uhæmmet oversegmentering bør gradienter beregnes (som sædvanligt) under brug af lavpas-filtrering. Benyttes en Gauss vil valget af σ angive afvejningen mellem under-og oversegmentering. En variant er at segmentere billedet gentagende gange for forskellige σ-værdier, og at bestemme den endelige segmentering ud fra stabiliteten af de enkelte segmenter som fkt. af skala. Bassinbund Watershed-algoritmen resulterer som regel i en oversegmentering og kræver en efterfølgende fletningspassage. Betragtet som initiel segmentering er watershedmetoden fremragende men beregningskravende. Vandskæl 26 28

Eksempel: Gaborfiltre Mange segmenteringsmetoder benytter, ud over pixelbaseret data som intensitet eller farve, også størrelser, som er beregnet lokalt. Dette vil typisk omfatte teksturmålinger. Metoder til karakterisering af tekstur er ikke del af kurset, men... Tekstur er Et semi-lokalt mål for intensitetsfladens opførsel. Et statistisk mål for regulariteten i data. Lige så svær at definere som kunst. Gaborfilteret er et produkt af en Gauss og en sinus, og er et særdeles anvendeligt filter til karakterisering af den lokale tekstur. Antag, for menhed, at Gaussen er rotationssymmetrisk: Gabor = 1 [ 2πσ exp 1 2 2 x y ( )] x 2 + y 2 σ 2 exp [ 2πi(ω x x + ω y x ) ] = cos(v)x + sin(v)y = cos(v)y sin(v)x Tænk på tekstiler, bølger på vandet, en murstensvæg, bladene på et træ etc. etc. Da har vi 5 parametre: Skala σ; Frekvenser ω x og ω y ; og orientering v. Filteret er komplekst. Ofte reduceres filtersvaret til længden af den komplekse vektor. 29 31 Det eksisterer et hav af teksturmål baseret på f.eks. Analyser af fourierspektret Foldninger med teksturfiltre, f.eks. Gaborfiltre Statistiske mål, f.eks. Co-occurence matricer Analyser af filtersvar i skalarum En typisk anvendelse omfatter 3-5 skalaer, 4 eller 8 orienteringer og 4-8 frekvenser. Dette giver en teksturfeaturevektor med lengde mellem 48 og 320, og omfatter tilsvarende mange komplekse filtreringer. Selv for få sampelværdier er omfanget af beregninger derfor voldsomt. Hurtigere metoder, f.eks. brug af Co-occurence matricer er beskrevet i de fleste lærebøger. En god ny bog er: etc. etc. Tinku Acharya, Ajoy K. Ray: Image Processing, principles and applications; Wiley 2005. Da teksturer ofte er orienterede, forkommer med en given frekvens på en given skala etc. benyttes ofte en vektor af teksturmål. Læs selv. 30 32

Næste gang: Segmentering Segmentering ved K-means EM-algoritmen Opsamling 33