Отпремање презентације траје. Молимо да сачекате

Отпремање презентације траје. Молимо да сачекате

Digitalna obrada slike Napredni kurs

Сличне презентације


Презентација на тему: "Digitalna obrada slike Napredni kurs"— Транскрипт презентације:

1 Digitalna obrada slike Napredni kurs
Lekcija XI Segmentacija slike

2 Uvodne napomene Dobrodošli na napredni kurs digitalne obrade slike!
Digitalna obrada slike i prateće oblasti su dio nauke koji je doživio ogroman napredak u posljednjih 20 godina. Stoga sam odlučio da kreiramo napredni kurs ovog predmeta koji će obuhvatiti neke od najnovijih dostignuća ili oblasti koje će potencijalno imati najveći uticaj u ovoj oblasti obrađenih na način koji je pogodan za studente postdiplomskih i doktorskih studija na ETF-u. Unaprijed smo se odlučili da i ovaj kurs ima 10 lekcija. Osnovni problem sa kojim smo se suočili je koje napredne lekcije odabrati.

3 Uvodne napomene Ono što u okviru ovog materijala dobijate je moj izbor naprednih lekcija a osnovni kriterijumi su bili lekcije nijesu obrađene u okviru osnovnog kursa (npr. filtriranje slike u boji je izostavljeno jer su date makar grube ideje kako se sprovodi iako je u ovoj oblasti postignut ogoman napredak posljednjih godina) relevantnost za praksu (recimo segmentacija, deskriptori, prepoznavanje oblika su ovdje prezentirani na srednjem nivou nijesu pokriveni u osnovnom kursu i važni su za praksu) nivo mog znanja iz pojedinih oblasti (prednost sam davao onim oblastima koje sam obrađivao u okviru mog naučno-istraživačkog rada, npr. watermarking i napredni statistički filtri) oblasti koje nude velike mogućnosti za dalji napredak u radu (npr. wavelet paketi, pretraživanje video materijala itd.)

4 Potreba za segmentacijom
U brojnim aplikacijama a prije svega industrijskim, sigurnosnim pa i medicini potrebno je omogućiti nenadgledano mašinsko prepoznavanje objekata. Mašine, nažalost, još uvijek ne postižu nivo prepoznavanja koji imaju ljudi kada sagledavaju sliku kao cjelinu. Međutim, kada mašine obrađuju pojedinačne objekte postižu izuzetno dobre rezultate. Postoje dokazi da u nekim od najsofisticiranijih aplikacija kao što su neke medicinske već danas mogu da prevaziđu eksperte ako sagledavaju pojedinačne objekte i ako znaju što u slici treba da traže.

5 Potreba za segmentacijom
Stoga je neophodno da se u sklopu prepoznavanja objekata ili unaprijed slika izdijeli (segmentira) u regione koji su slični po nekoj karakteristici. U okviru ove lekcije ćemo se upoznati sa nekim od najpoznatijih (možda ne i najnaprednijih) algoritama za segmentaciju. Segmentacione tehnike se dijele na: Lokalne metode koje se sastoje od procjene odnosa piksela i susjednih piksela, Globalne metode koje su zasnovane na globalnim karakteristikama slike (npr. histogramu) Tehnike zasnovane na spajanju, narastanju i dijeljenju regiona. Regioni se mogu spajati ako su susjedni i ako zadovoljavaju isto segmentaciono pravilo. Pojedini regioni se mogu podijeliti u subregione.

6 Matematička zapis segmentacije
Kod segmentacije se često koriste matematički zapisi iz teorije skupova. Neka je slika skup X segmentacija u regione Ri i=1,...,N na sljedeći način: Pretpostavka koje ćemo se držati (koja u nekim aplikacijama u praksi može biti ugrožena) je da se regioni sa različitim karakteristikama ne preklapaju. Naša je pretpostavka da postoji segmentaciono pravilo koje vrši segmentaciju slike. Mi ćemo proći kroz neke od pravila segmentacije.

7 Kompaktnost Često se podrazumijeva da je region kompaktan (postoje aplikacije gdje ova pretpostavka ne mora da bude zadovoljena). Region je kompaktan ako se između bilo koje dvije tačke koje pripadaju regionu može povući linija koja prolazi kroz tačke koje pripadaju regionu. Linija koja spaja tačke koje pripadaju regionu moraju proći preko susjednih piksela. Postoje dva tipa susjeda: N4 susjedi predstavljaju susjede po horizontali i vertikali. Za piksel (n,m) N4 susjedi su (n+1,m), (n-1,m), (n,m+1) i (n,m-1). N8 susjedi predstavljaju susjede koji mogu ići i po dijagonali. Pored N4 susjeda to su i tačke (n+1,m+1), (n+1,m-1), (n-1,m+1) i (n-1,m-1). Kod N4 susjeda rastojanje između piksela i susjeda je uvijek 1 a kod N8 susjeda pikseli koji ne pripadaju skupu N4 sudjeda su udaljeni .

8 Segmentacija zasnovana na pragu
Segmentacija zasnovana na pragu je globalne metode segmentacije. U jednom regionu se nalaze pikseli koji pripadaju jednoj zoni osvjetljaja. Bez gubitka opštosti pretpostavimo da imamo bimodalni histogram: Pretpostavljamo da svijetli dio pripada jednom regionu (objektu) a da tamni pripada drugom regionu (objektu). Prva intuitivna ideja o postavljanju praga koja često dobro radi je da je to minimum između dva maksimuma (određen na neki prihvatljiv način). Da bi se prag optimizovao potrebno je znati ponešto o gustinama raspodjele osvjetljaja jednog odnosno drugog regiona od interesa u slici.

9 Segmentacija - Prag - Primjer
Uzmimo primjer za segmentaciju (primjer ) iz knjige. Neka pozadina i objekt imaju poznatu funkciju gustine raspodjele: Neka su srednja vrijednost i varijansa osvjetljaja objekta jednaki: (m1,s1)=(60,10) i (m2,s2)=(40,5). Odrediti broj pogrešno klasifikovanih piksela ako je prag na polurazmaku između dva maksimuma u zavisnosti od procenta piksela koji pripadaju objektu kao i optimalni prag u zavisnosti od ove veličine. Neka objektu pripada p procenata piksela slike dok pozadini pripada 1-p procenata. Prag između dva maksimuma je 50 i piksel koji pripada objektu je pogrešno klasifikovan ako mu je osvjetlja manji od 50 dok je piksel koji pripada pozadini pogrešno klasifikovan ako mu je osvjetljaj manji od 50. Dakle broj pogrešno klasifikovanih piksela je:

10 Segmentacija – Prag - Primjer
Na primjer ako je p=0.5 dobija se da je procenat pogrešno klasifikovanih piksela 12.58% dok je za p=0.1 pogrešno klasifikovanih piksela 7.93%. Odredimo sada procenat pogrešno klasifikovanih piksela u zavisnosti od praga T koji se nalazi u granicama između 40T60. Dobija se:

11 Segmentacija – Prag - Primjer
Sada smo u prilici da odredimo optimalnu vrijednosti praga: Na primjer za p=0.1 optimalni prag je T=56.30 dok je za p=0.5 optimalni prag T=48.98. Procenat pogrešno klasifikovanih piksela za p=0.1 i optimalni prag je 5.18% dok je za p=0.5 i optimalni prag 12.45%. Uočava se smanjenje pogrešno klasifikovanih piksela u odnosu na poluintuitivnu tehniku ali isto tako se vidi da ni poluintuitivna tehnika ne produkuje značajno gore rezultate od ove koja zahtjeva potpuno poznavanje karakteristika i objekta i pozadine.

12 Adaptivni prag Najpoznatiji algoritam za adaptivni globalni prag je veoma prost. U pitanju je iterativna realizacija koja je neka vrsta analogije sa poznatim algoritmom dijeljenja intervala iz numeričke algebre. Koraci u algoritmu: Korak 1. Uzmi proizvoljan prag T. Korak 2. Nađi prosječan osvjetljaj dijela slike ispod praga (T1) i iznad praga (T2). Korak 3. Novi prag je T=(T1+T2)/2. Koraci 2 i 3 se ponavljaju određeni broj puta ili dok razlika između pragova u dvije uzastopne ne bude jako mala.

13 Adaptivni prag Za slučaj objekata na kontrasnoj pozadini ovo je najjefikasniji i zaprepašćujuće kvalitetan algoritam za određivanje praga. Naravno ne radi ako imamo složenije strukture u slici ali nam ipak rješava veliki broj praktičnih problema. Realizujte i testirajte uvedeni algoritam za adaptivno određivanje praga.

14 Segmentacija sa više pragova
Naravno, postoji mogućnost da se regioni segmentiraju na osnovu više pragova odnosno da se slika izdijeli na više regiona na osnovu praga. Npr. tačka (k,l)Ri ako Ti-1f(k,l)Ti gdje je f(k,l) osvjetljaj slike dok su T odgovarajući pragovi. Ponekad se histogram ne može koristiti da bi davao dobre pragove posebno za objekte koji imaju izrazite promjene osvjetjaja u okolini ivica. Stoga se ponekad koristi modifikovani histogram: Odziv detektora ivica. Realizujte ovaj modifikovani histogram!!!

15 Algoritmi za spajanje, razdvajanje i uvećanje regiona
Nakon inicijalne segmentacije koja može biti obavljena i supervizijski (korisnik zada nekoliko tačaka koje zasigurno pripadaju odgovarajućim regionim) često se vrši dodatna segmentacija preostalih tačaka ili regiona na osnovu nekih pravila: slični susjedni regioni se spajaju (merging) veliki regioni koji posjeduju karakteristike više regiona dijele regioni bivaju uvećani susjednim tačakama koje imaju slične karakteristike Sve navedene operacije se obavljaju na osnovu nekih karakteristika regiona. Najjednostavnije takve karakteristike su srednja vrijednost i varijansa.

16 Spajanje regiona na osnovu srednje vrijednosti i varijanse
Pretpostavimo da smo dobili inicijalnu grupu regiona slike Ri, i=1,...,Q. Sumnjamo da pojedini susjedni regioni mogu da predstavljaju isti region koji je zbog primjenjene tehnike segmentacije (recimo tehnike segmentacije koja započinje od nekoliko nasumično izabranih tačaka) koji je greškom izdijeljen na dva. Da bi spojili ove regione možemo računati neke statističke karakteristike regiona i ako su te statističke karakteristike susjednih regiona bliske izvršiti njihovo spajanje. Najednostavnije je to uraditi sa srednjom vrijednošću i varijansom.

17 Spajanje regiona Neka su srednja vrijednosti i standardna devijacija:
Obično se usvaja pravilo da se dva susjedna regiona (Ri i Rj) mogu spojiti ako važi Uslov se provjerava za oba regiona i za l=i i za l=j i mora oba puta biti zadovoljen. Broj elemenata koji pripada regionu (kardinalnost regiona) Parametar algortima (konstanta) koja se usvaja. Neki poluiskustveni savjet je k[2,5].

18 Spajanje regiona - Detalji
Spajanje regiona se može koristiti i za segmentaciju jer se može krenuti od nekoliko tačaka ili malih regiona koji se mogu selektovani na neki supervizijski način i postepenim narastanjem tih regiona spajanjem sa susjednim tačkama koje zadovoljavaju neki kriterijum dobiti segmentirana slika. Srednja vrijendosti i standardna devijacija (varijansa) nijesu jedine karakterstike koje se mogu upotrijebiti u ovoj proceduri ali su zaigurno najjednostavnije. Prilikom spajanja regiona treba rekalkulisati srednju vrijednost i varijansu za dobijeni “spojeni” region.

19 Relaksacioni algoritmi
Ne može se uvijek donijeti odluka o pripadnosti nekog piksela regionu samo na osnovu osvjetljaja već se mora posmatrati i interakcija piksela iz jednog regiona i drugog regiona. Pretostavljamo da imamo Q podregiona i da posmatramo piksel slike. Formiramo vektor pk (vektor povjerenja) sa vjerovatnoćama da taj piksel pripada nekom od Q regiona slika: pk(i), i=1,2,...,Q: pk(1)+pk(2)+...+pk(Q)=1. k u indeksu je oznaka piksela. Određivanje ovih vjerovatnoća sa segmentacijom na osnovu relaksacionog pravila je obično iterativna procedura. Najčešće se za ove namjene koristi histogram.

20 Vjerovatnoće kod relaksacionog algoritma
Pretpostavimo da svaki region od interesa odgovara jednom maksimumu histograma. Neka su ovi maksimumi na pozicijma osvjetljaja mi, i=1, 2, ..., Q. Neka je osvetljaj slike u posmatranoj tački f(m,l). Inicijalne vjerovatnoće se mogu sračunati kao: Ovdje je vjerovatnoća da piksela pripada nekom regionu obrnuto proporcionalan rastojanju osvjetljaja od maksimuma histograma koji odgovara određenom regionu.

21 Naredni koraci relaksacionog algoritma
U narednim iteracijama se vrši rekalkulisanje vektora povjerenja uz uvođenje funkcije kompatibilnosti r(i,j) koja se obično definiše na u domenu [-1,1]. Naime velika je vjerovatnoća da susjedni pikseli pripadaju istoj klasi (istom regionu) ili da pripadaju kompatibilnim regionima (recimo ‘more’ i ‘čamac’). Stoga se za svaku kombinaciju regiona Ri i Rj susjednih piksela definiše funkcija kompatibilnosti sa sljedećim pravilima:

22 Promjena vektora povjerenja
Neka su našem pikselu sa labelom k susjedni pikseli sa labelama l. Rezultujuća promjena povjerenja (odnosno vjerovatnoće) pk(i) u n-tom koraku algoritma je: Vektor povjerenja se u novoj iteraciji računa kao: mjera uticaja piksela l na naš piksel k. Usvaja se

23 Relaksacioni algoritam - završnica
Procedura se zaustavlja kada u dva uzastopna koraka algoritma dobijemo sličan vektor povjerenja za sve piksele slike i tada piksele pridružujemo onim regionima koji imaju najveću vrijednost povjerenja za dati piksel. Očekuje se da se dobiju relativno veliki povezani homogeni regioni a da će mali regioni sa šumom biti pridruženi većim regionima. Osnovni problem kod algoritma je izbor r(i,j). Ako se izabere pogrešno algoritam neće konvergirati. Po pravilu se usvaja da su susjedni pikseli oni po N4 susjedima. Jedna iskustvena formula za izbor r(i,j) je data na narednom slajdu.

24 r(i,j) formula Neophodno je rkl(i,j) normalizovati na interval [-1,1].
Broj piksela u slici Neophodno je rkl(i,j) normalizovati na interval [-1,1]. Naravno ovo je samo jedna moguća varijanta koja obično obezbjeđuje konvergenciju a ujedno i ovo je samo jedan mogući algoritam gdje smo regione segmentirali na osnovu histograma. Probajte da realizujete relaksacioni algoritam (ovo je veliki izazov i javno publikovanih programa koji realizuju ovaj algoritam ili nema ili ih ima mali broj.

25 Označavanje regiona Naredni popularni segmentacioni problem je označavanje regiona odnosno dodjeljivanje jedinstvene labele (obično broja) koji regionu odgovara. Obično se koristi kod slika gdje se neki važni detalji pojavljuju kao mali kompaktni regionu razdvojeni u odnosu na ostale regione. Najpopularniji algoritam za ovu svrhu se naziva grassfire (travnati požar) koji simulira situaciju da se požar pojavio u jednoj tački i da se proširio u svim pravcima do granica objekta. Pored ovoga postoje shrinking operacije i brojni drugi slični algoritmi koji se mogu koristiti za brojanje objekata kao i za određivanje površine objekata u pikselima itd.

26 Označavanje regiona Mi ćemo ovdje demonstrrirati tri ovakva algoritma. Prvi je simulacija (relativno nekorektno) grassfire-a. clear N=100; [n,m]=meshgrid(1:N,1:N); E=zeros(N,N); E1=abs(n-10)<3 & abs(m-20)<4; E2=abs(n-40)<2 & abs(m-80)<5; E3=abs(n-75)<4 & abs(m-85)<3; E4=(m-55).^2+(n-73).^2<5^2; E=E1|E2|E3|E4; imshow(E) Crtež se sastoji od tri pravougaonik a i jednog “kruga”.

27 elseif(n==1 & E(n,m-1)==1) G(n,m)=G(n,m-1); elseif(m==1 & E(n-1,m)==1)
G=zeros(N,N); cur=1; for n=1:N for m=1:N if(E(n,m)==1) if(n==1 & m==1) G(n,m)=cur; elseif(n==1 & E(n,m-1)==1) G(n,m)=G(n,m-1); elseif(m==1 & E(n-1,m)==1) G(n,m)=G(n-1,m); elseif(E(n-1,m)==1 | E(n,m-1)==1 | E(n-1,m-1)==1 | E(n-1,m+1)==1) G(n,m)=max([G(n-1,m) G(n,m-1) G(n-1,m-1) G(n-1,m+1)]); else G je matrica sa prepoznatim objektima, svi elementi jednog objekta bi trebali da imaju isti broj. Procedura je jednostavna za tačku koja pripada objektu provjeravamo da li prethodni piksel (bilo po horizontali, vertikali ili dijagonali) pripada objektu. Ako pripada usvaja se njegova labela a ako ne usvaja se da je to početak novog objekta. Za novi objekat labela je veća za jedan od prethodne.

28 Završnica prvog algoritma
Prethodni algoritam ne radi dobro za sliku zadatu na sljedeći način: E=zeros(N,N); E1=abs(m-50)<30 & abs(n-50)<30; E2=abs(m-40)<25 & abs(n-50)<25; E=E1-E2; cur=cur+1; G(n,m)=cur; end end end end pcolor(G),shading interp Zbog čega i za koje objekte predmetni algoritam neće raditi korektno. Verzija grassfire algoritma koji radi korektno za svaku sliku data je na naredna dva slajda. Realizacija nešto komplikovanija.

29 Grassfire verzija 2 – test slika
clear N=100; [n,m]=meshgrid(1:N,1:N); E=zeros(N,N); E1=abs(n-10)<3 & abs(m-20)<4; E2=abs(n-40)<2 & abs(m-80)<5; E3=abs(n-75)<4 & abs(m-85)<3; E4=(m-55).^2+(n-73).^2<5^2; E=E1|E2|E3|E4; Ex=zeros(N,N); E1=abs(m-50)<10 & abs(n-50)<10; E2=abs(m-48)<8 & abs(n-50)<8; Ex=E1-E2; E=E|Ex; G=comp_separ(E);

30 Grassfire verzija 2 - funkcija
function Z=comp_separ(A) [M,N]=size(A); T=zeros(M,N); Z=zeros(M,N); P=A; komp=1; for m=1:M for n=1:N if(P(m,n)==1) T(m,n)=1; vt=sum(sum(T)); Ind=1; while(Ind==1) T=imdilate(T,ones(3))&P; vt1=sum(sum(T)); if(vt1==vt) Ind=0; Z=Z+T*komp; komp=komp+1; P=P-T; else,vt=vt1; end end end end end tekuće identifikovani objekat rezultat sa labelama matrica iz koje eliminišemo jedan po jedan detektovani objekat redni broj detektovane komponente Ako u dvije uzastopne iteracije nema promjene objekta smatramo da smo ga kompletnog obuhvatili i ažuriramo Z, P i komp. kada naiđemo na prvu tačku koja pripada novom objektu Ključni korak uvećavamo zonu u svim pravcima pomoću dilatacije. Protumačite sami a o dilataciji će više riječi biti kasnije.

31 Grassfire verzija 2 primjer
Kada prethodnu funkciju primjenimo na sliku sa slajda 29 dobićemo sliku G koja sa različitim bojama označava pojedine regione a maksimalna vrijednost ove slike je broj prepoznatih regiona. Prethodno opisani algoritam (onaj sa slajdova 26-28) neće ispravno raditi za ovaj naš slučaj. Konačno posljednji algoritam koji će ovdje biti objašnjen funkcioniše na principu rekurzije pa stoga može biti relativno spor.

32 Grassfire ver.3 - Rekurzija
Ova realizacija polazi od binarne slike. U petlji se prolazi kroz sliku i svakom pikselu koji pripada objektu dodijeli redni broj (od jedan na više). Ova vrijednost se naziva labelom. Zatim se u narednoj iteraciji svakom pikselu koji pripada objektu pridruži maksimalna vrijednost labele po svim pravcima u odnosu da dati piksel. Iteracije se ponavljaju sve dok u dvije susjedne iteracije nema promjena labele kod objekata.

33 Grassfire Ver3. - Realizacija
function G=labeling(E) [M,N]=size(E); G=zeros(M,N); spoc=sum(sum(G)); tek=1; for m=1:M for n=1:N if(E(m,n)) G(m,n)=tek; tek=tek+1; end while stek>spoc spoc=stek; G=max(max(G,[zeros(M,1),G(:,1:M-1)]), [G(:,2:N),zeros(M,1)]).*E; G=max(max(G,[zeros(1,N);G(1:M-1,:)]), [G(2:M,:);zeros(1,N)]).*E; stek=sum(sum(G)); end Ključni dio funkcije u kome se se vrši maksimiziranje labela iz susjedstva ali samo za tačke koje pripadaju objektima, protumačite ovaj dio koda sami. Kako sada na osnovu ove funkcije prebrojati objekte?

34 Teksture Teksture su ponavljajući obrazci koji se srijeću u mnogim oblastima života ali prevashodno u industrijskim aplikacijam: Građevinarstvu Drvoj industriji Tekstilnoj industriji itd Teksture se kreiraju i u komercijalni grafičkim softverima radi postizanja posebnih efekata: na primjer oblaci koji predstvljaju nebo, zmijska koža itd.

35 Teksture - Primjene U tekstilnoj industriji senzor može da snima platno i da prepozna ugroženost (neispravnost) nekog obrasca koji se pojavljuje na platnu. U duvanskoj industrijina osnovu nekih elemanata na snimku lista može se procijeniti kvalitet sirovine. U šumarstvu na osnovu snimka šume može se procijentiti tip drveća koje se u šumi pojavljuje, detektovati sječa šume, bolesti itd. Ovdje smo samo naveli neke moguće primjene detekcije tekstura. Očigledno je detekcija odnosno deskripcija tekstura izuzetzno važna oblast.

36 Teksture - Standard Kako bi se tehnike za ocjenu tekstura poredile na fer način došlo se do spiska standardnih tekstura. Standardne teksture su gruisane u tzv. digitalizovanom Brodatzovom albumu tekstura. Album se može kupiti mada je veliki broj tekstura iz ovog albuma javno dostupan i može se kao takav koristiti. U okvitru albuma nalaze se primjeri svih karakterističnih teksturnih oblika.

37 Brodatzov album - Primjer
Primjer četiri teksture iz Brodatzovog albuma.

38 Prepoznavanje tekstura
Prepoznavanje tekstura se obavlja preko nekih karakteristika koje se mogu detektovati u teksturnoj slici. Te karakteristike se nazivaju teksturnim deskriptorima. Postoje tri velike grupe teksturnih deskriptora (napominjemo da sve mogu iti lokalne i globalne odnosno da se mogu evaluirati na čitavoj slici ili njenim djelovima): Statistički deskriptori Strukturni deksriptori Spektralni deskriptori

39 Statistički deskriptori
Statistički deskriptori su obično vezani za histogram slike. Na osnovu histograma određuju se odgovarajuće statistike – prije svega momenti i mjere vezane za funkciju gustine raspodjele slike. Neka je pf(k) funkcija gustine raspodjele slike procjenjena na osnovu histograma gdje osvjetljaj slike može uzeti vrijednsoti k[0,N-1] gdje je N broj nivoa osvjetljaja. Na osnovu procjene funkcije gustine raspodjele može se definisati 5 osnovnih statističkih deskriptora.

40 Osnovni statistički deskriptori
Srednja vrijednost (mjera prosječnog osvjetljaja): Varijansa (mjera koliko slika “odstupa od prosječnog osvjetljaja”): “Nakrivljenost” (skewness – pokazatelj simetričnosti histograma, manja za “simetričnije” histograme):

41 Osnovni statistički deskriptori
Kurtozis (mjera impulsivnosti slike, ako slika ima pdf kao Gausov šum onda je kurtozis nule, ako slika je bliža uniformnoj raspodjeli kurtozis je negativan, dok ako je slika sa rijetnim ali bitno različitim vrijednostima u odnosu na neku normalnu raspodjelu kurtozis je pozitivan): Pored ovoga često se koristi i entropija definisana kao: Entropija ima ulogu sličnu varijansi ali ne potpuno istu. U primjenama se kod m3 i m4 često izostavljaju multiplikativne konstant 1/s3 i 1/s4.

42 Strukturni deskriptori
U praksi je razvijen ogroman broj strukturnih deskriptora. Ovi deskriptori pokušavaju da opišu kako se slika ponaša lokalno. Ovdje ćemo pomenuti 3 grupe strukturnih deskriptora: Histogramske sivo-skalirane razlike Statistike pokretne dužine Matrica kopojavljivanja Na narednim slajdovima (kao i naredne nedjelje) biće objašnjeni neki od deskriptora koji pripadaju ovim grupama.

43 Histogram sivoskaliranih razlika
Za dati vektor pomjeraja definiše se funkcija (slika): Sa ovom slikom (gd(k,l)) koja pokazuje koliko se naša slika lokalno mijenja (vektor pomjeraja je uobičajeno mali a možemo u okviru iste tehnike koristiti i nekoliko različitih vektora pomjeraja) možemo odrediti sve deksriptore koji postoje kod standardne slike (histograma). Srednja vrijednost: histogram sivoskaliranih razlika

44 Deskriptori sa sivoskaliranim razlikama
Mala srednja vrijednost ukazuje na “grubu” teksturu sa detaljima čija je veličina veća ili jednaka od vektora pomjeraja. Ako se d prikaže u polarnim koordinatama kao (r,q) ili sračunamo srednju vrijednost za fiksno q, mq, dobijamo informaciju usmjerenosti teksture. Varijansa i kontrast: “Determinističke” teksture obično imaju malu varijansu dok “stohastičke” obično imaju veliku.

45 Sivoskalirane razlike
Posljednji deskriptor zasnovan na sivoskaliranim razlikama kojeg ćemo uvesti je entropija: Sivoskalirane razlike predstavljaju veoma jednostavne deskriptore koji nam ipak daju značajne informacije o prostornoj organizaciji slike. Ostale teksturne deskriptore upoznaćemo na narednom času. Za vježbu realizujte sve teksturne deskriptore zasnovane na sivoskaliranim razlikama plus realizujte njihove forme za slučaj fiskiranog ugla q.

46 Pitanja, zadaci i miniprojekti
Napišite program koji za sliku koja predstavlja objekat na kontrasnoj pozadini na neki vama prihvatljiv način estimira funkcije gustine raspodjele osvjetljaja objekta i pozadine (na osnovu histograma) i postavlja optimalan prag za takve funkcije gustine raspodjele (radi jednostavnosti odraditi algoritam za Gausovske raspodjele). Zatim primjeniti dati program na nekoliko sliku sa objektima i kontrasnom pozadinom. Formirajte neki zaključak. Realizujte algoritam za adaptivno određivanje pragova i uporediti sa gore opisanim algoritmom. Napisati algoritam i izvršiti njegovo poređenje sa gorenavedenim algoritmima koji određuje prag na osnovu pozicije minimuma između dva maksimuma na histogramu.

47 Pitanja, zadaci i miniprojekti
Zadajte dvije tačke u slici. Napisati algoritam koji nalazi najbližu putanju preko N4 susjeda između ove dvije tačke a zatim preko N8 susjeda. Napisati program koji za datu sliku i dvije tačke koje pripadaju istom objektu (recuimo bijelom dijelu u binarnoj slici) nalazi najbližu putanju između objekata u smislu N4 odnosno N8 susjeda. Realizovati višenivoski algoritam za segmentaciju slike. Napisati program koji vrši spajanje zadatih regiona u slici ako zadovoljavaju uslove odgovarajuće uslove zadate na osnovu varijanse i srednje vrijednosti. Realizujte program za relaksacioni algoritam.

48 Pitanja, zadaci i miniprojekti
Napisati C ili C++ programe koji vrše sva tri algoritma za označavanje regiona. Iskoristiti svu moć ovih programskih jezika i uporedite brzinu realizacije u odnosu na MATLAB. Diskutujte prednosti i mane tri uvedena algoritma za označavanje regiona. Procijenite njihovu računsku složenost. Pokušajte da dođete do što većeg broja tekstua Brodatzovog digitalizovanog albuma korišćenjem Interneta. Realizujte sve uvedene statističke teksturne deskriptore. Realizujte sve uvedene deskriptore tekstune deskritpore vezane za sivoskalirane razlike.

49 Pitanja, zadaci i miniprojekti
Pronađite podatke o drugim algoritmima za globalnu segmentaciju regiona (npr. Otsu algoritam), realizujte ga i uporedite sa predstavljanim jednostavnim algoritmom za segmentaciju na osnovu globalnog praga.


Скинути ppt "Digitalna obrada slike Napredni kurs"

Сличне презентације


Реклама од Google