23
JU UNIVERZITET U TUZLI MAŠINSKI FAKULTET ODSIJEK:PROIZVODNO MAŠINSTVO SEMINARSKI RAD IZ PREDMETA „MAŠINSKA VIZIJA“ Tema: Pronalaženje uzoraka na slici 0

Masinska vizija

Embed Size (px)

Citation preview

Page 1: Masinska vizija

JU UNIVERZITET U TUZLIMAŠINSKI FAKULTETODSIJEK:PROIZVODNO MAŠINSTVO

SEMINARSKI RAD IZ PREDMETA „MAŠINSKA VIZIJA“

Tema: Pronalaženje uzoraka na slici

STUDENT: PREGLEDAO:

0

Page 2: Masinska vizija

1.UVOD

Pronalaženje uzoraka je tehnika digitalne obrade slike za pronalaženje malih dijelova slike koji odgovaraju uzorku slike. Ona se može koristiti u proizvodnji kao dio kontrole kvalitete, načina za navigaciju mobilnih robota, ili kao način da se otkriju rubovi u slikama.Poklapanje uzoraka može se podijeliti između dva pristupa: na osnovu poklapanja i na osnovu poklapanja uzoraka. Pod uzorkom podrazumjevamo kvantitativni opis objekta ili dijela slike od interesa.Uzorak je sačinjen od jednog ili više deskriptora (osobina – features). Klase uzoraka ω1,ω2,…ωM su skupovi (familije) uzoraka koji dijele neke zajedničke osobine.Mašinsko prepoznavanje uzoraka uključuje tehnike grupisanja uzoraka u pripadajuće klase, bez ili sa što manje intervencije čovjeka.

1

Page 3: Masinska vizija

2. Segmentacija slikeTermin segmentacija slike se odnosi na grupu postupaka za podjelu slike na regione sa sličnim atributima. Od atributa se najčešće koristi osvjetljenost, kod monohromatskih slika, ili boja, kod slika u boji. U procesu segmentacije mogu se koristiti i druga obilježja: ivice, mjere teksture, itd. Iako je segmentacija najvažnija faza u analizi slike, do danas ne postoji teorijska osnova segmentacije. Većina postupaka segmentacije koji su prihvaćeni u praksi je heurističkog karaktera. Osim toga, ne postoji ni način za kvantitativnu procjenu koliko je postupak segmentacije dobar. Najčešće se koristi opisna kvalitativna definicija dobre segmentacije u kojoj se kaže da regioni dobijeni postupkom segmentacije treba da budu uniformni i homogeni u odnosu na neke karakteristike, kao što su nivo sivog (ton) ili tekstura. Unutrašnjost regiona treba da bude jednostavna i bez malih rupa, a granice regiona jednostavne, glatke i prostorno tačne. Susjedni regioni treba da budu dovoljno različiti po onom atributu po kome su uniformni.

Postoje različite metode segmentacije kao npr.:

Amplitudna segmentacija (amplitude tresholding) Obilježavanje komponenti (component labeling) Metode koje koriste granicu objekta Metode koje koriste unutrašnjost objekta Metode grupiranja(clusterin techniques) Segmentacija pokretnih objekata Segmentacija tekstura Segmentacija ekspertnim sustavima Segmentacija neuronskim mrežama

Na slici 1 prikazana je slikovito klasifikacija metoda segmentacije:

Slika 1.Klasifikacija segmentacije

2

Page 4: Masinska vizija

2.1.Tresholding (metoda praga) je najupotrebljavanija metoda segmentacije.Bazira se na homogenim regijama umjesto na konturama.Ona uporebljava amplitudnu segmentaciju da pronađe voxel sličnog intenziteta.Takva metoda se može okarakterzirati kao manualna,polu-automatska ili automatska ovisno o segmentacijskoj aplikaciji i definiranju koeficjenata praga.Neka tkiva i anatomske strukture obično su sličnih intenziteta pa se segmentacija pomoću praga najčešće primjenjuje kao ekstraktor kontura,ali kada imamo multi spektralne slike moguće je da samo regije našeg interesa imaju konstantan opseg intenziteta,što omogućava automatsku segmentaciju (npr.segmentacija kosti noge iz CT-a).Koeficjenti metode praga se dobivaju iz histograma intenziteta ručno ili upotrebljavajući neki algoritam koji pronalazi vrhove i udoline histograma.Kriterij kako odabrati koeficjente ovisi o aplikaciji segmentacije.Česti kriterij odabira je takav da rezultantna slika bude slična kao i originalna .Za tu svrhu razvijene su napredne metode bazirane na histogramima entropije i 2D histogramima,koji koriste informaciju prostora uz intenzitet pixela.Takvi algoritmi su se razvijalijali posljednjih godina,pritom je posebna pažnja posvećivala kvaliteti,izvedbi i adaptivnosti odnosa signal – šum.Također metode bazirane na mjerenjima,osim histograma,su se razvijale koristeći pritom statističku informaciju prostorne okoline intenziteta piksela.

2.2.Metoda grupiranja(clustering techniques):Segmentacija pomoću grupiranja je jedna od najstarijih tehnika segmentacije, jer se odavno

koristi za segmentaciju monokromatskih ili slika u boji. Neka je dan vektorx=[ x1 x2 , .. . , xN ] , koji predstavlja mjerenja karakteristika jednog piksela slikeu( j , k ). Mjerne veličine mogu biti tri komponente boje piksela, ili neka druga svojstva izračunata u malom prozoru oko promatranog piksela. Segmentacija treba grupirati vektore tako da značajke unutar jedne grupe budu uniformne. Takav proces podjele prema sličnosti vektora podataka naziva se grupiranje, a na slici 2 .prikazan je primjer grupiranja podataka u dvodimenzionalnom prostoru gdje su granice regije linearne funkcije.

Slika 2 .Grupiranje podataka u dvodimenzionalnom prostoru.

3

Page 5: Masinska vizija

Ova metoda je sa dosta primenjivana u segmentaciji multispektralnih satelitskih ili avionskih snimaka, pri čemu je osnovni cilj bio izdvajanje regija na površini zemlje koji sadrže isti tip poljoprivrednih kultura .Osnovni nedostatak ove metode je što ima veliku aritmetičku složenost.

2.3.Metoda izrastanja područja (region growing)

Osnovna ideja segmentacije pomoću izrastanja područja je grupiranje susjednih piksela sličnih osvjetljenosti i tako formiraju područja. Međutim, zbog raznih ograničenja, postupak grupiranja nije jednostavan. U jednom od najčešće korištenih postupaka segmentacije izrastanja područja postupak grupiranja počinje spajanjem po dva piksela iz iste vrste čije su osvjetljenosti iste. Tako se formiraju tzv. atomska područja(seed).

Prvo se promatraju dva susjedna područja R1 i R2 , čiji je broj rubnih pikselaP1 i P2 . Neka je sa C označena dužina zajedničke granice područja, a neka D predstavlja dužinu zajedničke granice gdje je razlika osvjetljenosti piksela sa obje strane granice manja od unaprijed

određenog praga e1 . Područja R1 i R2 se mogu spojiti u jedinstveno područje ako vrijedi:

Dmin (P1 , P2 )

>e2

gde je e2 konstanta čija je vrijednost najčešće 0.5. Postupak se nastavlja ispitivanjem svih atomskih područja, poslije čega se prelazi na ispitivanje područja većih dimenzija sve dok je spajanje moguće. Ovim postupkom spajanja omogućava se priključivanje manjih područja većem, ali se ne dozvoljava spajanje dva područja sličnih dimenzija. Postupak izrastanja područja prikazan je na slici 3.

Slika 3. Izrastanje područja

4

Page 6: Masinska vizija

2.4.Metoda dijeljenja i stapanja (split and merge)

Metoda spajanjaMetoda spajanja se koristi kada se uspoređena susjedna područja slična po nekim svojstima.Spajanje mora započeti iz uniformnog područja (grupa piksela koji su seed za daljnje spajanje).Postoje razne metode za odbir seed područja. Jedna metoda za odabir najprikladnijeg seed područja dijeli sliku u 2x2 ili 4x4 bloka i provjerava svaki blok.Druga metoda dijeli sliku u trake koje se dalje dijele u uže trake i tako dalje.U najgorem slučaju čvor(seed) će biti jedan piksel.Kada se čvor pronađe njegovi susjedi se spajaju dok ti susjedni ne prestanu zadovoljavati kriterije uniformnosti .Tada se područje izdvaja iz slike i sljedeći čvor počne stvarati novo uniformno područje.Treba naglasiti da je ovaj proces sekvencijalan,i ako se zahtjevaju detalji u segmentaciji tada će vrijeme proračuna biti dosta dugo. Štoviše,budući da u većini slučajeva proces spajanja dvaju područja mjenja vrijednost područja koje se mjeri,rezulutirano područje će ovisiti o algoritmu pretraživanja među susjedima ,i odabranom čvoru(seed-u).

Metoda razdvajanja:Ovi algoritmi počinju od cijele slike,koju dijele na podregije dok god podreučja(regije) nisu uniformna.Uobičajen kriterij zaustavljanja procesa razdvajanja je kad svojstva novog podjeljenog područja se ne razlikuju od onog originalnog područja od koje je nastao,za prag(treshold) koji smo zadali.Glavni problem s ovakvim tipom algoritma je problem odabira mjesta razdvajanja .Raniji algoritmi su upotrebljavali uobičajene dekompozicijske metode,što je zadovoljavajuće za neke slučajeve,ali u većini slučajeva razdvajanje se upotrebljava kao prva faza split/merge algoritma.

Izdvajanje područja pomoću kvartarnog stabla(quadtrees for region extraction)Važna metoda segmentacije slike koja se upotrebljava u spli/merge algoritmu je izdvajanje područja pomoću kvartarnog stabla. Slika4. prikazuje kvartarno stablo i njegovu vezu sa slikom. Primjećuje se da je ova metoda upotrebljena za algoritam razdvajanja područja koji dijeli sliku rekurzivno iz korjenskog čvora,koji je cijela slika na početku,do dijelova koji predstavljaju koherentno područje.

5

Page 7: Masinska vizija

Slika 4.Kvartarno stablo

Kvartarno stablo uvodi jedan tip dekompozicije na sliku.Da bi se segmentacijski proces završio on mora biti popraćen s fazom spajanja.Tu se sad pojavljuje problem pronalaženja graničnog susjeda danog čvora.(slika 5.)

Slika 5.Razdvajanje i spajanje s kvartnim stablom

Metodi razdvajanje i spajanja prethodio je algoritam koji su razvili Horwitz i Plavidis.On se bazirao na upotrebi segementacijskog stabla,koje je zapravo bilo kvartarno. Svaki

čvor,recimo k,u stablu odgovara kvadratnoj površini slike,u kojem se nalazi maksimumM k i

minimummk vrijednosti svjetline(ili neke druge vrijednosti koje su nam od interesa).

Algoritam započinje s presjekom čvorova grafa.To se sastoji od pet polja koji pohranjuju

svojstva čvorova:xk , yk , veličina, M k ,mk .

6

Page 8: Masinska vizija

Primjećuje se da je pohranjen samo presjek čvorova , a ne cijelo stablo. Za sliku rezolucije

NxN piksela teoretski je moguće da svako polje zahtjeva N2

ulaza,iako,u praktičnim slučajevima,gdje postoje područja,potreba je mnogo manja.

Spajanje se obavlja uspoređujući granične grupe od četiri čvora s uobičajenim roditeljem. Ako zadovoljavaju kriterij onda se zamjenjuju s roditeljskim čvorom. Slično razdvajenje se obavlja razbijanjem ne uniformnih čvorova u četiri dijela(dijeteta).Ovaj proces je ograničen struktirom stabla,tako da kad je gotovo ukupno razdvajanje i spajanje,konačni presjek čvorova mora biti grupiran u područja.

Općeniti algoritam za razdvajanje i spajanje može se opisati na sljedeći način:

1.Definiraj početnu segmentaciju u područja,kriterij homogenosti,i piramidalnu strukturu.

Slika 6.Presjek(cutset )je skup čvorova koji pokrivaju cijelu sliku

2.Ako područje R piramidalne strukture nije homogeno,podijeli ga na četiri dijela(dijeteta),ako se bilo koje dijete sa istim roditeljem može spojiti u jednu homogenu regiju,spoji ih.Ako se nijedno područje ne može spojiti niti podijeliti idi na korak (3)3.Ako postoje bilo koja dva granična područja Ri,Rj(iako su drukčijeg piramidalnog nivoa ili ako nemaju istog roditelja),a da se mogu spojiti u homogeno područje,spoji ih4.Spoji mala područja s najsličnijim graničnim područjem ako je potrebno eliminirati veličinom male područja. U nastavku je dat primjer raspoznavanja znakova na registarskim tablicama (rad od Anđela Martinovića). U sklopu ovog rada razvijen je i sistem pod nazivom LPRS (License PlateRecognition System). Sistem je u potpunosti razvijen u programskom jeziku C#, a za svoje pokretanje zahtijeva Windows platformu na kojoj je instaliran Microsoft .NET Framework2.0. Dijelovi sistema se oslanjaju na AForge.NET biblioteke. AForge.NET je framework dizajniran za razvojne programere i istraživače iz područja računalnog vida i umjetne inteligencije. Navedene biblioteke se isporučuju zajedno s programskim sistemom u vidu DLL datoteka.

2.5.Opis funkcionisanja programa

7

Page 9: Masinska vizija

Slika 7. Glavno sučelje programa

Pri pokretanju programa korisnika dočekuje sučelje slično onome sa slike 7. Glavniizbornik omogućuje učitavanje slike s diska te pokretanje procesa prepoznavanjaregistarske tablice. Središnji dio prozora prikazuje učitanu sliku, te prikaz detekcije rubova,horizontalne i vertikalne projekcije slike.Klikom na opciju „Detect plate“ iz izbornika „Tools“ pokreće se proces prepoznavanja tablice. Postupak je u potpunosti automatiziran. Ukoliko postoji spremljena konfiguracija neuronske mreže, korisnik će o tome biti obaviješten jednostavnom porukom. Ako neuronska mreža još ne postoji, ona će biti stvorena i spremljena na disk, a korisnika će se informirati o obavljenoj akciji.

8

Page 10: Masinska vizija

Slika 8. Rezultat procesa prepoznavanja

Slika 8. prikazuje formu koja se prikaže nakon procesa prepoznavanja. U gornjemdijelu je prikazana prepoznata traka unutar koje se nalazi registarska tablica. S lijeve stranese nalaze detektirana tablica nakon binarizacije i njena horizontalna projekcija. Središnjidio forme zauzimaju dinamički generirane kontrole koje prikazuju sva detektirana slovanakon procesa odrenivanja medijalne osi, njihove karakteristične značajke, te liste mogućihznakova. Konačni rezultat programa je prikazan s desne strane, i prikazuje prepoznateznakove na tablici nakon sintaksne analize (Napomena: sintaksna analiza pokušavazadovoljiti sintaksne uzorke. Nezadovoljavajući nizovi znakova se ne odbacuju, već seprikazuju u cijelosti.).

3.Analiza i interpretacijaAnaliza i interpretacija podrazumijevaju otkrivanje, identifikaciju i razumijevanje uzorakaod interesa, slika 9. Automatska analiza slike mora biti u mogućnosti da pokaže određenstepen inteligencije:1. mogućnost izdvajanja značajnih informacija iz mase irelevantnih detalja,2. mogućnost učenja na osnovu uzoraka i generalizacije naučenog tako da se možeprimijeniti u novim, drugačijim okolnostima,3. sposobnost zaključivanja iz nekompletnih informacija.

9

Page 11: Masinska vizija

Slika 9. Blok shema procesa analize i interpretacije slike

3.1. Uzorci i klase uzorakaPod uzorkom ćemo podrazumijevati kvantitativni opis objekta ili dijela slike od interesa.Uzorak je sačinjen od jednog ili više deskriptora (osobina - features). Klase uzorakaω1,ω2,…ωMsu skupovi (familije) uzoraka koji dijele neke zajedničke osobine.Mašinsko prepoznavanje uzoraka uključuje tehnike grupisanja uzoraka u pripadajućeklase, bez ili sa što manje intervencije čovjeka.Deskriptori koji čine uzorak se uobičajeno zapisuju u formi vektora:

x=[x1

x2

xn]

Primjer:Posmatrajmo tri vrste (klase) cvijeća iris koje se razlikuju po dužini i. Usvojimo dvadeskriptora:

x=[x1

x2]Predstavljajući uzorke u vektorskom prostoru, Slika 10, vidimo da postoje lako i teškoseparabilne klase: uzorci koji predstavljaju iris setosa se vrlo lako razdvoje od preostale dvijevrste, dok je razdvajanje iris virginica i iris versicolor na osnovu odabranih obilježja veomateško. Jasno je da stepen separabilnosti jako zavisi od izbora deskriptora.

10

Page 12: Masinska vizija

Slika 10. Klase uzoraka predstavljene u vektorskom prostoru deskriptora

Ako se potpisi koriste za opis objekata, svaki objekat će biti predstavljen jednodimenzionalnim signalom,slika 10. Odmjervanjem ovog signala potpisa možemoformirati uzorak:

x=¿

11

Page 13: Masinska vizija

Slika 11. Potpis objekta

Klase su sad predstavljene “oblacima” u n-dimenzionalnom vektorskom prostoru (uzorci su vektori u n-dimenzionalnom vektorskom prostoru). Umjesto korištenja vrijednosti potpisa, možemo izračunati prvih n momenata potpisa i njih koristiti kao deskriptore uzorka.U navedenim primjerima su za deskriptore korištene kvantitativne mjere nekih osobina.Ako se uzme u obzir da i relacije između pojedinih osobina određuju pripadnost nekoj odklasa, riječ je o strukturalnom pristupu klasifikaciji. Pri klasifikaciji je veoma važan izbor odgovarajućih deskriptora koji će omogućiti separaciju klasa.

3.2. Klasifikacija na osnovu korelacijePronalaženje podslike w(x, y) dimenzija J × K u slici f (x, y) dimenzija M × N korelacijom:

c (s ,t )=∑x

∑y

f ( x , y )w ( x−s , y−t ) , s=0,1,2 ,…, M−1 ,t=0,1,2 ,…. ,N−1

se zasniva na činjenici da je vrijednost korelacije maksimalna kada se u slici f (x, y) pronađedio koji je najsličniji traženoj podslici w( x, y). Sama operacija korelacije koja je veoma slična konvoluciji ilustrovana je na slici 12. Podslika w( x, y) u obliku prozora se pomijera preko slike u kojoj se traži poklapanje i nakon svakog pomaka se računa data korelaciona suma. Jedina razlika u odnosu na konvoluciju je što se ne vrši obrtanje prozorske funkcije. Treba napomenuti da se tačnost određivanja poklapanja gubi u regionima blizu rubova slike.

12

Page 14: Masinska vizija

Slika 12. Postupak određivanja korelacije

Loša osobina ovog metoda je ta što je vrijednost korelacije zavisna od vrijednostisvjetline (ako se nivoi svjetline povećaju dva puta, dva puta se poveća i vrijednost korelacije).Ovo se prevazilazi korištenjem korelacionih koeficijenata umjesto korelacije:

γ ( s , t )=∑x∑y

[ f ( x , y )−f−( x , y )][w ( x−s , y−t )−w− ]

{∑x∑y

[ f ( x , y )−f ( x , y )− ]2∑x∑y

[w( x−s , y−t )−w− ]2}

12

, s=0,1,2 , .. . , M−1 ,t=0,1,2 , .. . ,N−1

gdje suf ,w , srednje vrijednosti. Korelacioni koeficijenti su skalirani u opseg od –1 do 1, neovisno o promjeni u amplituda f (x, y) i w(x, y) .Iako je izvršena normalizacija korelacionih koeficijenata tako da su oni neosjetljivi na promjenu amplitude, normalizacija koja bi korelaciju učinila otpornom na promjenu veličine i rotacije je teška, (rotiranje slike da bi se pronašao položaj koji daje najveći korelacioni koeficijent je računski zahtjevno, kao i skaliranje po veličini). Iako se korelacija može računati u frekvencijskom domenu, zbog malih dimenzija uzorka efikasnije je računanje uprostornom domenu.

3.3. Pronalaženje uzorka unutar slikeNajbolji način raspoznavanja nekog uzorka unutar slike ilustriran je slijedećim primjerom. Na slici 13. s lijeve i desne strane vidimo slike u sivoj skali (engl. grayscale), dimenzija 16x16 piksela. Uzorak koji želimo pronaći zapravo je područje piksela oko jednog centralnog piksela. Posmatramo ga kao primjerak dimenzija NxN, gdje je N neparan broj kako bi centar

13

Page 15: Masinska vizija

primjerka ujedno bio i centar uzorka. Na lijevoj slici prikazan je uzorak dimenzija 5x5 piksela koji je potrebno pronaći na desnoj slici.

Slika 13. Pronalaženje uzorka unutar slike

Za pronalazak uzorka potrebno je centar primjerka, odnosno centralni piksel postaviti na sve piksele desne slike. Ukoliko se centralni piksel postavi na rubni piksel, primjerak će prelaziti rub slike, te se nad graničnim pikselima mora izvršiti dopunjavanje nulama (engl. zero padding). Tako se dobiva slika na slici, veličine primjerka. Kako bi pronašli odgovarajući primjerak koriste se funkcije za kriterij najboljeg preklopa, npr. sumiranje apsolutne razlike preklopa dviju slika.

ZaključakMetoda pronalaženja uzoraka na slici se može koristiti u proizvodnji kao dio kontrole kvalitete , za navigaciju mobilnih robota ili kao način da se otkriju rubovi u slikama kao što je navedeno u uvodu. Ova metoda nalazi primjenu u problematici automatskog prepoznavanja registarskih tablica , glavni problem jest kako računalu predočiti tablicu. Čovjeku je to jednostavan posao, dok računaru registarska tablica ne znači ništa više od skupa piksela. Formalno, računalu se predaje jednostavna dvodimenzionalna funkcija f (x, y) , gdje su x i y prostorne koordinate pojedine tačke na slici, a f je intenzitet svjetla u toj tački. Još jedna značajna primjena ove metode je u pronalaženju ključnih tačaka lica radi lakše identifikacije.

14

Page 16: Masinska vizija

Literatura:

1. http://elektronika.jazbina.com/stari%20sajt/44%20-%20DOSlike/Dosl11.pdf

2. Rad od Anđela Martinovića sa Fakulteta za elektrotehniku i računarstvo, Zagreb

3. http://dsp.etfbl.net/dip/predavanja/10aanaliza.pdf

4. http://hotlab.fer.hr/images/50009024/diplomski-3257-kukic.pdf

15

Page 17: Masinska vizija

Sadržaj1. Uvod................................................................................................................................. 1 2. Segmentacija slike........................................................................................................... 2 2.1.Tresholding................................................................................................................ 3 2.2. Metoda grupiranja.................................................................................................... 3 2.3.Metoda izrastanja područja....................................................................................... 4 2.4. Metoda dijeljenja i stapanja...................................................................................... 5 2.5. Primjer prepoznavanja znakova na registarskim tablicama...................................... 83. Analiza i interpretacija .................................................................................................... 9 3.1. Uzorci i klase uzoraka................................................................................................ 10 3.2. Klasifikacija na osnovu korelacije.............................................................................. 12 3.3. Pronalaženje uzoraka unutar slike............................................................................ 13Zaključak.............................................................................................................................. 14Literatura............................................................................................................................. 15

16