Ekstrakcija planarne slike iz cilindri£nih projekcija...

54

Transcript of Ekstrakcija planarne slike iz cilindri£nih projekcija...

Page 1: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Univerzitet u Sarajevu

Elektrotehni£ki fakultet

Odsjek za automatiku i elektroniku

Ekstrakcija planarne slike iz cilindri£nihprojekcija kori²tenjem vi²e kamera

Zavr²ni rad

- Prvi ciklus studija -

Student:Neira Pulo

Mentor:Doc.dr Emir Soki¢, dipl.ing.el.

Sarajevo,septembar 2018.

Page 2: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Doc.dr Emir Soki¢, dipl.ing.el.Odsjek za automatiku i elektronikuSarajevo, 02.01.2018.

Postavka zadatka zavr²nog rada I ciklusa:

Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera

Prilikom vizuelne inspekcije nerijetko se javlja potreba za analizom ispravnosti naljepnicana cilindri£nim oblicima (�a²ama, konzervama i sl.). Jedan od na£ina kako se to moºeuraditi bez rotacije ºeljenih objekata i linijskih kamera je slikanje objekta iz vi²e uglova savi²estrukim kamerama. Naredni problem predstavlja formiranje zajedni£ke (originalne)slike koja predstavlja fuziju pojedina£nih slika, uzetih kao 2D prikaz 3D projekcije origi-nalne slike na cilindri£nu povr²inu. U ovom zavr²nom radu je potrebno na osnovu vi²eslika objekta uzetih iz razli£itih uglova izvr²iti rekonstrukciju planarne slike naljepnice nacilindri£nom objektu.

Koncept i metode rje²avanja:Rad se sastoji iz sljede¢ih cjelina:

• pregled literature,

• teorijske osnove projekcionih transformacija,

• analize na£ina kalibracije kamere,

• ekstrakcija regija od interesa na slici i transformacija u odgovaraju¢i koordinatnisistem sa i bez laserskih referenci,

• pregled metoda uparivanja karakteristi£nih ta£aka,

• implementacija odgovaraju¢ih algoritama u C++/OpenCV okruºenju,

• analize eksperimentalnih rezultata (ta£nost, brzina izvr²avanja).

Polazna literatura:

[1] Batchelor, Bruce G., and Paul F. Whelan. Intelligent vision systems for industry.Springer Science & Business Media, 2012.

[2] Torras, Carme, ed. Computer vision: theory and industrial applications. Sprin-ger Science & Business Media, 2012.

[3] Demant, Christian, C. Demant, and Bernd Streicher-Abel. Industrial imageprocessing. Springer-Verlag, 1999.

i

Page 3: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

ii

[4] Szeliski, Richard. Computer vision: algorithms and applications. Springer Sci-ence & Business Media, 2010.

[5] Sonka, Milan, Vaclav Hlavac, and Roger Boyle. Image processing, analysis, andmachine vision. Cengage Learning, 2014.

[6] Russ, John C. The image processing handbook. CRC press, 2016.

[7] Costa, Luciano da Fontoura Da, and Roberto Marcondes Cesar Jr. Shapeanalysis and classi�cation: theory and practice. CRC Press, Inc., 2000.

[8] Costa, Corrado, et al. "Shape analysis of agricultural products: a review ofrecent research advances and potential application to computer vision." Food andBioprocess Technology 4.5 (2011): 673-692.

Doc.dr Emir Soki¢, dipl.ing.el.

Page 4: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Univerzitet u SarajevuElektrotehni£ki fakultetOdsjek za automatiku i elektroniku

Izjava o autenti£nosti radova

Zavr²ni radI ciklus studija

Ime i prezime: Neira PuloNaslov rada: Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjem vi²e kameraVrsta rada: Zavr²ni rad I ciklusa studijaBroj stranica: 51

Potvr�ujem:

• da sam pro£itala dokumente koji se odnose na plagijarizam, kako je to de�niranoStatutom Univerziteta u Sarajevu, Eti£kim kodeksom Univerziteta u Sarajevu ipravilima studiranja koja se odnose na I i II ciklus studija, integrirani studijskiprogram I i II ciklusa i III ciklus studija na Univerzitetu u Sarajevu, kao iuputama o plagijarizmu navedenim na web stranici Univerziteta u Sarajevu;

• da sam svjesna univerzitetskih disciplinskih pravila koja se ti£u plagijarizma;

• da je rad koji predajem potpuno moj, samostalni rad, osim u dijelovima gdje je tonazna£eno;

• da rad nije predat, u cjelini ili djelimi£no, za stjecanje zvanja na Univerzitetu uSarajevu ili nekoj drugoj visoko²kolskoj ustanovi;

• da sam jasno nazna£ila prisustvo citiranog ili parafraziranog materijala i da sam sereferirala na sve izvore;

• da sam dosljedno navela kori²tene i citirane izvore ili bibliogra�ju po nekom odpreporu£enih stilova citiranja, sa navo�enjem potpune reference koja obuhvatapotpuni bibliografski opis kori²tenog i citiranog izvora;

• da sam odgovaraju¢e nazna£ila svaku pomo¢ koju sam dobila pored pomo¢imentora i akademskih tutora/ica.

Sarajevo, 26. septembar 2018.

Neira Pulo

iii

Page 5: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

iv

Saºetak

Kombinovanjem ra£unarske inteligencije i digitalizovanih vizuelnih informacija mogu¢e jevr²iti vizuelnu inspekciju. U ovom radu predstavljeni su mogu¢i na£ini ekstrakcije 2Dnaljepnice sa cilindri£nog objekta. U tu svrhu, analizirana je projekciona transforma-cija, preslikavanje ta£aka iz kalibracione ravni u cilindri£nu, problem kalibracije kamere,segmentacija slike, detekcija i uparivanje ta£aka od interesa te povezivanje zna£ajki. Ueksperimentalnom dijelu rada opisani su mogu¢i na£ini mapiranja i odre�ivanja korespo-dentnih ta£aka u kojima se vr²i preslikavanje. Tako�er, predstavljena je aplikacija kojaomogu¢ava ispravljanje cilindri£ne naljepnice. Aplikacija se sastoji od dobivanja per-spektivne transformacije slike, te od implementacije matematskog modela koji opisujezavisnost ta£aka kalibracione ravni i cilindi£nih koordinata unutar cilindri£ne povr²i.

Abstract

By combining computer intelligence and digitized visual information, it is possible to per-form a visual inspection. This paper presents possible ways of extraction of a 2D labelfrom a cylindrical object. For this purpose, the projective transformation, the mapping ofthe calibration points from the plane to the cylinder, camera calibration problem, imagesegmentation, detection and pairing of interest points, and linking features were analyzed.The experimental part describes the possible ways of mapping and determining the cor-respondent points in which the mapping is performed. Also, an application has beenintroduced that allows to untwist cylindrical labels. The application consists of obtaininga perspective image transformation, and of the implementation of a mathematical mo-del that describes the dependence of calibrating plane points and cylindrical coordinateswithin the cylindrical surface.

Page 6: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Sadrºaj

Popis slika vi

1 Uvod 1

2 Uvod u projekcione transformacije 42.1 Projekciona geometrija i transformacija 2D ravni . . . . . . . . . . . . . . 42.2 Uklanjanje perspektivne distorzije sa slike projekcionim transformacijama . 52.3 Dekompozicija projekcionih transformacija . . . . . . . . . . . . . . . . . . 7

2.3.1 Izometrija . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.3.2 Transformacija sli£nosti . . . . . . . . . . . . . . . . . . . . . . . . 72.3.3 A�na transformacija . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.4 Projekciona geometrija i transformacija 3D prostora . . . . . . . . . . . . . 82.5 Algoritam direktne linearne transformacije . . . . . . . . . . . . . . . . . . 8

3 Preslikavanje ta£aka iz kalibracione ravni u cilindri£nu 10

4 Problem kalibracije kamere 144.1 CCD kamera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144.2 Pin-hole model kamere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144.3 Izvori distorzije . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164.4 Distorzija so£iva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5 Segmentacija slike 195.1 Metoda praga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

5.1.1 Globalni prag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195.1.2 Pragovi ovisni o lokaciji . . . . . . . . . . . . . . . . . . . . . . . . 205.1.3 Odre�ivanje praga analizom histograma . . . . . . . . . . . . . . . 20

5.2 Detekcija ivice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.2.1 Canny metoda za detekciju ivice . . . . . . . . . . . . . . . . . . . . 21

5.3 Detekcija objekta od interesa na slici . . . . . . . . . . . . . . . . . . . . . 225.3.1 Houghova transformacija kruºnice poznatog polupre£nika . . . . . . 225.3.2 Houghova transformacija linija . . . . . . . . . . . . . . . . . . . . . 235.3.3 Houghova transformacija proizvoljne krive . . . . . . . . . . . . . . 23

6 Detekcija i uparivanje ta£aka od interesa na slici 256.1 SURF algoritam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

6.1.1 Formiranje SURF deskriptora . . . . . . . . . . . . . . . . . . . . . 276.2 BRISK algoritam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

6.2.1 Detekcija zna£ajki BRISK algoritmom . . . . . . . . . . . . . . . . 28

v

Page 7: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

SADR�AJ vi

7 Povezivanje zna£ajki 32

8 Analiza eksperimentalnih rezultata 348.1 Prvi pristup - kori²tenje laserskih projekcija . . . . . . . . . . . . . . . . . 358.2 Drugi pristup - kori²tenje linijskog ²ablona . . . . . . . . . . . . . . . . . . 368.3 Tre¢i pristup - numerisanje detektovanih uglova . . . . . . . . . . . . . . . 378.4 �etvrti pristup - kori²tenje perspektivne transformacije i geometrijske analize 40

8.4.1 Smjernice za budu¢i rad . . . . . . . . . . . . . . . . . . . . . . . . 43

Zaklju£ak 44

Page 8: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Popis slika

1.1 2D koordinatni sistem M ×N digitalne slike . . . . . . . . . . . . . . . . . 21.2 Po£etne slike za obradu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Rekonstruisana 2D naljepnica . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.1 Centralna projekcija ta£ke iz jedne u drugu ravan . . . . . . . . . . . . . . 52.2 (a) Originalna slika sa perspektivnom distorzijom. (b) Slika sa uklonjenom

perspektivnom distorzijom . . . . . . . . . . . . . . . . . . . . . . . . . . 62.3 Primjer projekcionih transformacija, x

′= Hx. (a) Projekcione transforma-

cije izme�u dvije slike izazvanu referentnom ravni. (b) Projekcione tran-sformacije izme�u dvije slike uz pomo¢ iste kamere koja se rotira. (c)Projekcione transformacije izme�u ravni slike (kraj zgrade) i slike njegovesjene na drugoj ravni (referentna ravan). . . . . . . . . . . . . . . . . . . . 6

3.1 Prikaz scene za odre�ivanje preslikavanja ta£aka iz kalibracione ravni ucilindri£nu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.2 Prikaz pozicije ta£aka od interesa i kamere unutar scene. . . . . . . . . . . 113.3 Prikaz pozicije kamere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.4 Prikaz presje£nih ta£aka prave i cilindra za razli£ite vrijednosti polupre£-

nika baze cilindra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.1 Osnovni princip rada CCD kamere ilustriran kao skup posuda. Slika pre-uzeta iz [3]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

4.2 Pinhole model digitalne kamere [3]. . . . . . . . . . . . . . . . . . . . . . . 154.3 Prikaz slike sa ba£vastom odnosno jabu£astom distorzijom [1]. . . . . . . . 174.4 Prikaz slike sa distorzijom i bez distorzije [1]. . . . . . . . . . . . . . . . . . 174.5 Prikaz poravnanja koji uzrokuje tangencijalnu distorziju . . . . . . . . . . 18

5.1 Primjena efekta globalnog praga na sliku . . . . . . . . . . . . . . . . . . . 205.2 Primjena efekta lokalnog praga na sliku . . . . . . . . . . . . . . . . . . . . 205.3 Ilustracija analize histograma . . . . . . . . . . . . . . . . . . . . . . . . . 215.4 (a) Originalna slika, (b) Pikseli ozna£eni metodom praga, (c) Ivice dobivene

Canny algoritmom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225.5 (a) Originalna slika, (b) Piksel sa najve¢om frekvencijom pojavljivanja [5] . 225.6 (a) Prostor slike, (b) k; q parametarski prostor . . . . . . . . . . . . . . . . 23

6.1 Ilustracija analize integralne slike . . . . . . . . . . . . . . . . . . . . . . . 266.2 Estimacija orjentacije zna£ajke . . . . . . . . . . . . . . . . . . . . . . . . . 276.3 Prikaz formiranja kvadratnih regija oko zna£ajki . . . . . . . . . . . . . . . 286.4 Izdvajanje deskriptora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286.5 Detekcija ta£ke od interesa, zna£ajke, u prostoru skaliranja . . . . . . . . . 29

vii

Page 9: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

POPIS SLIKA viii

6.6 BRISK ²ablon za uzorkovanje sa N = 60 ta£aka . . . . . . . . . . . . . . . 30

7.1 Crne znamenke 1 i 2 su zna£ajke koje se uparuju sa zna£ajkama iz bazazna£ajki drugih slika. Za odabrani prag, ozna£en punom kruºnicom, ze-lena jedinica ima dobro poklapanje (engl. true positive), plava jedinica jeneuskla�ena (engl. false negative), a crvena trojka je neta£no podudaranje(engl. false positive). Ukoliko se prag pove¢a plava jedinica postaje istin-ski pozitivna (engl. true positive), a sme�a £etvorka dodatno biva laºnonegativna (engl. false positive), preuzeto iz [13]. . . . . . . . . . . . . . . . 33

8.1 Prikaz objekta i scena za eksperimentalne manipulacije . . . . . . . . . . . 348.2 Rezultati prvog pristupa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358.3 Polazna slika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368.4 Rezultati drugog pristupa . . . . . . . . . . . . . . . . . . . . . . . . . . . 368.5 Polazna slika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378.6 Detekcija uglova na slici pri razli£itom broju zadanih ta£aka . . . . . . . . 388.7 Prikaz detektovanih uglova pri razli£itom broju zadanih ta£aka . . . . . . . 388.8 Prikaz numeracije ta£aka kroz razli£ite iteracije izvr²avanja . . . . . . . . . 398.9 Prikaz pogre²nog numerisanja pri malom broju zadatih ta£aka . . . . . . . 398.10 Prikaz scene kori²tene za pristup £etiri . . . . . . . . . . . . . . . . . . . . 408.11 Perspektivna transformacija . . . . . . . . . . . . . . . . . . . . . . . . . . 418.12 Prikaz slike nakon ispravljanja pri razli£itim vrijednostima D i H . . . . . 42

Page 10: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 1

Uvod

U industrijskoj automatici prilikom vizuelne inspekcije nerijetko se javlja potreba za ana-lizom naljepnice na cilindri£nim oblicima (bocama, konzervama i sl.). Za tu namjenunaj£e²¢e se koriste kamere i slikanje objekta iz vi²e razli£itih uglova. Svrha ovih kameraje detekcija ispravnosti proizvoda na osnovu vi²e razli£itih zahtjeva koji se name¢u, a nekidrugi mehanizam izvr²ava uklanjanje neispravnih produkata iz proizvodnog procesa. Uovom radu se kao kriterij pri vizuelnoj inspekciji proizvoda koristi ispravnost pozicionira-nja naljepnice te ispravnost sadrºaja iste.

Prilikom rje²avanja ovog problema kao snaºan alat pojavljuje se sve naprednija ra£u-narska vizija (engl. computer vision). Ra£unarska vizija koristi ra£unarsku inteligenciju idigitalizovanu vizuelnu informaciju te obuhvata metode za prikupljanje, analizu, obradu irazumijevanje slike. Inteligencija i vizija su²tinski ovise jedna o drugoj budu¢i da je inteli-genciji potrebna vizija kako bi se opskrbila podacima, a viziji je potrebna inteligencija kakobi se obavilo prosu�ivanja o vizuelnim scenarijima na slici sa visokim stepenom sloºenosti.

Kako bi se vr²ile manipulacije nad slikom kori²tenjem kopjuterske vizije, sliku kao ko-nitinualnu funkciju je potrebno prevesti u neku formu podataka npr. matricu pogodnu zara£unarsku odbradu podataka. Digitalna slika I(m,n) predstavlja repliku o£itanja senzorau �ksnoj ta£ki koordinatnog 2D sistema, a nastala je procesom digitalizacije konitinualnogsignala I(x,y). Digitalizacija slike podrazumijeva uzorkovanje slike u matricu (kona£nihdimenzija) M ×N te kvantizaciju, £ime se svakom uzorku dodjeljuje cijeli broj koji ovisiod osvjetljenosti pojedinih dijelova. Veli£ine M iN predstavljaju redove i kolone slike res-pektivno. Pozicija u koordinatnom sistemu, odre�ena ta£kom (m,n), odgovara sastavnomdijelu digitalne slike i naziva se piksel. Koordinatni sistem digitalne slike kao i izdvojena(m,n) lokacija piksela su prikazani na slici 1.1.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

1

Page 11: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Uvod

Slika 1.1: 2D koordinatni sistem M ×N digitalne slike

Za svaki piksel na digitalnoj slici de�nira se intenzitet boje. U najprostijem slu£aju svakipiksel je odre�en jednom numeri£kom vrijedno²¢u. A uz pomo¢ mape boja vr²i se pre-tvorba numeri£kih vrijednosti u stvarnu sliku budu¢i da svakome broju odgovara jednanijansa boje pa je mogu¢e odrediti vizuelni prikaz podataka. Naj£e²¢e kori²tena karta uboji je siva (engl. Gray-scale) koja ima 256 sivih tonova gdje nuli odgovara crna boja, a255 bijela. Tako�er, mogu¢a je reprezentacija slike u boji kao trodimenzionalnog vektora(R, G, B) gdje se boja piksela izraºava kao linearna kombinacija tri osnovne boje (crvene,zelene, plave) [1].

Cilj ovog rada jeste kreiranje aplikacije za inspekciju ispravnog pozicioniranja naljepnicena cilindri£nom objektu te provjera sadrºaja naljepnice. U tu svrhu potrebno je izvr²itimanipulacije nad slikom kori²tenjem ra£unarske vizije.Prvi korak ka realizaciji zadatka jeste kalibracija kamere odnosno dobivanje slike bez iz-obli£enja koja ina£e bivaju unesena kamerom. Izobli£enja nastaju usljed distorzije so£ivate ju je potrebno ukloniti. Drugi parametar koji unosi izobli£enje jeste percepcija slikeodnosno poloºaj kamere u odnosu na scenu u kojoj se nalazi. Cilj kalibracije jeste pro-nalaºenje poveznice izme�u ta£ke u 3D prostoru i koordinata piksela u koje se ta ta£kaprojicirala uz pomo¢ projekcionih transformacija.Po zavr²etku kalibracije slika se prevodi u domen sivih tonova radi jednostavnije detekcijeivica od interesa. U ovom radu za tu svrhu ¢e biti kori²tena Canny metoda te detekcijazasnovana na boji. Nakon ²to se detektuju linije i kruºnice Houghovim transformacijamavr²i se pretraºivanje oblika od interesa: linija, kruºnica, elipsi itd. £ime se ekstraktuje re-gija od interesa (naljepnica). Navedene operacije: prevo�enja slike u domen sivih tonova,detekcija ivica, detekcija linija i kruºnica spadaju u tzv. pretprocesiranje slike nakon£ega se nastavlja sa manipulacijama koje se ti£u segmentacije slike. S tim ciljem vr²ise detekcija i ekstrakcija karakteristi£nih ta£aka jednim od sljede¢ih algoritama: SURF,SIFT, BRISK ili ORB te njihovo uparivanje radi rekonstrukcije 2D naljepnice. Nakon ²toje naljepnica formirana mogu¢e ju je iskoristiti za provjeru sadrºaja naljepnice na cilin-dri£nom objektu, a provjera ispravnosti pozicioniranja iste moºe biti poznata prije sameekstrakcije 2D naljepnice. Softverski alat pogodan za ovo istraºivanje te implementacijaalgoritama, odnosno cjelokupan proces obrade slike bit ¢e izvr²en kori²tenjem OpenCV

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

2

Page 12: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Uvod

(engl. Open Source Computer Vision) biblioteke namjenjene za ra£unarsku viziju pri radualgoritma u realnom vremenu.Na slikama 1.2a, 1.2b i 1.2c prikazane su po£etne slike iz kojih se pomenutim mani-pulacijama dobiva 2D naljepnica, a detaljan proces obrade slika s ciljem rekonstrukcijenaljepnice prikazane na slici 1.3 dat je u nastavku rada.

(a) (b) (c)

Slika 1.2: Po£etne slike za obradu

Slika 1.3: Rekonstruisana 2D naljepnica

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

3

Page 13: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 2

Uvod u projekcione transformacije

Kako bi se uveo pojam projekcionih transformacija potrebno je krenuti od poznate Euk-lidske geometrije. Euklidska geometrija opisuje uglove i oblike objekata gdje se pojavljujulinije i ta£ke. Linije se mogu sje¢i ili biti paralelene. Za paralelne linije kaºe se da sesijeku u beskona£nosti. Kako beskona£nost kao takva ne postoji dolazi do kontradik-cije. Me�utim, ukoliko se Euklidska ravan dopuni ta£kama u beskona£nosti tada se dvijeparalelne linije sijeku u ta£ki koja se naziva �idealna ta£ka�. Na ovaj na£in Euklidski pros-tor se preobraºava u novu vrstu geometrijskog objekta nazvanog projekcioni prostor gdjese dvije linije uvijek susre¢u u jednoj ta£ki, a specijlano ta ta£ka moºe biti u beskona£nosti.

Ta£ka u Euklidskom prostoru predstavljena je parom realnih brojeva (x,y). Radi lak²eanaliti£ke manipulacije moºe se dodati jo² jedna koordinata ovom paru tako da se dobijetriplet (x,y,1). Ovo je dozvoljeno sve dok se moºe vratiti iz jednog prikaza u drugi uk-lanjanjem zadnje koordinate. Koordinata 1 se dodaje budu¢i da (x, y, 1), (2x, 2y, 2),(kx, ky, k) predstavljaju istu ta£ku za bilo koje k. Dvije trojke su ekvivalentne ukoliko serazlikuju za isti umnoºak te se zovu homogene koordinate ta£ke.

Linija se predstavlja jedna£inom ax + by + c = 0, a ekvivalentni zapis u vektorskomobliku je (a, b, c)>. Vektori (a, b, c)> i k(a, b, c)> predstavljaju istu liniju tako da klasavektora koja je povezana elementom k naziva se homogeni vektor, a skup ekvivalentnihklasa vektora £ine projekcioni prostor R3.

2.1 Projekciona geometrija i transformacija 2D ravni

De�nicija 1. Projiciranje h je invertibilno mapiranje iz ravni P2 na takav na£in da trita£ke x1, x2 i x3 leºe na jednoj liniji ako i samo ako h(x1), h(x2), h(x3) tako�er leºe najednoj liniji [2].

Teorema 1. Mapiranje h : P 2 → P2 je projekciono ako i samo ako postoji nesingu-larna 3× 3 matrica H tako da za bilo koju ta£ku u P2 predstavljenu vektorom x vrijedih(x) = Hx [2].

Shodno teoremi 1 zaklju£uje se da je svaka ta£ka u P2 predstavljena kao homogeni triplet,a Hx je linearno mapiranje homogenih koordinata. Planarna projekciona transformacija

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

4

Page 14: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Uvod u projekcione transformacije

je linearna transformacija nad 3×1 vektorom predstavljena nesingularnom 3×3 matricom:x′1

x′2

x′3

=

h11 h12 h13

h21 h22 h23

h31 h32 h33

x1

x2

x3

, (2.1)

²to se moºe zapisati i kao x′= Hx.

Elementi matrice H mogu se mnoºiti bilo kojim elementom razli£itim od nule, a daprojekciona transformacija ostane nepromijenjena pa vrijedi da projekcione transforma-cije prevode svaku sliku u ekvivalentnu projekcionu �guru uz invarijantnost projekcionihosobina.

Geometrijska interpretacija teoreme 1 data je na slici 2.1 gdje je prikazano mapiranjeta£ke iz jedne u drugu ravan. Ukoliko se de�niraju koordinatni sistemi za ove dvijeravni sa homogenim koordinatama tada je centralno projekciono mapiranje ozna£eno kaox'=Hx, a mapiranje odre�eno centralnom projekcijom naziva se prespektiva.

Slika 2.1: Centralna projekcija ta£ke iz jedne u drugu ravan

2.2 Uklanjanje perspektivne distorzije sa slike projek-cionim transformacijama

Kod slika se nerijetko javljaju razna izobli£enja oblika. Npr. na slici 2.2a (koja je data unastavku) prozori nisu pravougaonog oblika iako izvorno to jesu odnosno paralelne linijena sceni ne bivaju paralelne na slici jer se sijeku u kona£noj ta£ki. Prethodno je opisano daje centralna projekcija ravni slike povezana sa izvornom ravni preko projekcionih transfor-macija pa je slika projekciono iskrivljen original. Mogu¢e je poni²titi takvu projekcionutransformaciju ra£unanjem inverzne projekcione transformacije primjenjene na sliku. Utom slu£aju na slici ¢e biti o£uvani ta£ni geometrijski oblici originala, s tim da projekcionetransformacije koje se primjenjuju za tlo i za prednju stranu na slici nisu iste budu¢i da sene nalaze u istoj ravni. Inverzna projekciona transformacija sra£unata je na osnovu ta£akakorespodencije, a sam algoritam po£inje odabirom dijela slike koji je korespodentan dijeluiz stvarnoga svijeta. Tako se odaberu ta£ke referentnog koordinatnog sistema x = (x, y) i

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

5

Page 15: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Uvod u projekcione transformacije

(a) (b)

Slika 2.2: (a) Originalna slika sa perspektivnom distorzijom. (b) Slika sa uklonjenom perspek-tivnom distorzijom

ta£ke ravni slike x′= (x

′, y

′) kao na slici 2.1. Koriste se nehomogene koordninate budu¢i

da se one odre�uju direktno iz ravni. Zatim se projekcione transformacije geometrijskereprezentacije date na slici 2.3 zapisuju u nehomogenoj formi kao:

x′=x

′1

x′3

=h11x+ h12y + h13

h13x+ h32y + h33

, (2.2)

y′=x

′2

x′3

=h21x+ h22y + h23

h31x+ h32y + h33

. (2.3)

Kako jedna ta£ka korespodencije generi²e dva elementa matrice H to su potrebne £etirita£ke za odre�ivanje H . Naime H je 3 × 3 matrica koja ima 9 elemenata s 8 nezavisnihveza me�u njima (ima 8 stepeni slobode) tako da su dovoljne 4 ta£ke od kojih nikoje 3nisu kolinearne. Rezultati inverzne projekcione transformacije su prikazani na slici 2.2b.

Slika 2.3: Primjer projekcionih transformacija, x′= Hx. (a) Projekcione transformacije izme�u

dvije slike izazvanu referentnom ravni. (b) Projekcione transformacije izme�u dvije slike uzpomo¢ iste kamere koja se rotira. (c) Projekcione transformacije izme�u ravni slike (kraj zgrade)i slike njegove sjene na drugoj ravni (referentna ravan).

Blokovska forma projekcione transformacije ima sljede¢i oblik:

x′= Hpx =

[A tV> v

]x, (2.4)

gdje je matrica A nastala usljed dvije osnovne transformacije (rotacija i skaliranje), V >

naj£e²¢e predstavlja 1x3 matricu koja je odgovorna za nelinearnosti prilikom transforma-cije, t predstavlja matricu translacije dok v je skalar. Ukoliko je razli£it od nule dozvoljenoje £itavu matricu skalirati sa v, a da ne do�e do naru²avanja transformacije. Projekci-ona transformacija je linearna pri upotrebi homogenih koordinata ²to predstavlja i svrhunjihovog uvo�enja.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

6

Page 16: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Uvod u projekcione transformacije

2.3 Dekompozicija projekcionih transformacija

2.3.1 Izometrija

Izometrija je transformacija pri kojoj euklidska metrika ostaje o£uvana. Dakle udaljenostizme�u dvije ta£ke na jednoj slici biti ista kao udaljenost izme�u njihovih odgovaraju¢ihta£aka na mapiranoj slici. Izometrija je sa£injena od dvije rotacije i dvije translacije, amoºe se predstaviti vektorski kao:

x′=

(R t0> 1

)x, (2.5)

gdje R predstavlja 2× 2 matricu rotacije, t je 2× 1 vektor translacije i 0> je matrica redsa£injena od dvije nule.

2.3.2 Transformacija sli£nosti

Ova transformacija nalikuje na izometriju, za razliku od nje ima dodatno izotropno ska-liranje. Izotropno zna£i da je skaliranje invarijantno na smjer. Ova transformacija ima5 stepeni slobode. Transformacija sli£nosti ne £uva udaljenosti izme�u ta£aka ve¢ njihovomjer ostaje sa£uvan. Transformacija sli£nosti ima sljede¢i vektorski zapis:

x′=

(sR t0> 1

)x, (2.6)

gdje je s skalar za izotropsko mnoºenje.

2.3.3 A�na transformacija

A�na transformacija za razliku od transformacije sli£nosti umjesto jedne rotacije i izotrop-skog skaliranja je sa£injena od dvije rotacije i dva neizotropska skaliranja. Ima 2 stepenaslobode vi²e nego transformacija sli£nosti. Ovom transformacijom paralelne linije ostajuparalelne na mapiranoj slici te tako�er omjeri paralelnih linija ostaju invarijantni. A�natransformacija se moºe predstaviti u vektorskom obliku kao:

x′=

(A t0> 1

)x, (2.7)

gdje jeA 2×2 nesingularna matrica. MatricaAmoºe biti zapisana kao: A = R(θ)R(−ϕ)DR(ϕ),gdje su R(θ) i R(ϕ) matrice rotacije za ugao θ i ϕ respektivno dok D je dijagonalna ma-trica:

D =

(λ1 11 λ2

)x, (2.8)

gdje λ1 i λ2 predstavljaju skalare. Dakle matrica A predstavlja rotaciju po ϕ, skaliranjesa λ1 u smjeru x, skaliranje sa λ2 u smjeru y zatim, rotaciju za ˘ϕ te zakretanje za ugaoθ.

Projekciona transformacija se moºe zapisati kao kompozicija prethodno navedenih tran-sformacija kao:

H = HSHAHP =

(sR t0> 1

)(U 00> 1

)(I tV> v

)=

(A t0> v

), (2.9)

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

7

Page 17: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Uvod u projekcione transformacije

gdje HS predstavlja matricu transformacije sli£nosti, HA je matrica a�niteta dok, HP jematrica projektivnosti, A = sRU + tvT , U je gornja trougaona matrica £ija je determi-nanata jednaka 1. Dekompozicija je ispravna ukoliko je v 6= 0, a ukoliko je s pozitivanbroj kompozicija je jedinstvena.

2.4 Projekciona geometrija i transformacija 3D pros-tora

Analogno razmatranoj geometriji i transformacijama u ravni u trodimenzionalnom pros-toru ta£ka je predstavljena preko homogenih koordinata kao 4x1 vektor x = (x1, x2, x3, x4)>

te specijalno ukoliko je x4 = 0, x je ta£ka u beskona£nosti.

Projekciona transformacija primjenjena na prostor P3 je linearna transformacija na homo-geni £etverodimenzionalni vektor predstavljen 4× 4 nesingularnom matricom X

′= HX.

MatricaH je matrica transformacija sa 15 stepeni slobode odnosno 15 linearno nezavisnihelemenata [2].

2.5 Algoritam direktne linearne transformacije

Algoritam direktne linearne transformacije omogu¢ava odre�ivanje matrice projekcionetransformacije H na osnovu £etiri ta£ke korespodencije. Sama transformacija je odre-�ena jedna£inom x

′i = Hx i. Vektori x

′i i Hx i nisu jednaki budu¢i da su to homogeni

vektori koji imaju isti smjer ali se mogu razlikovati po faktoru skaliranja. Projekcionatransformacija tako�er, moºe biti opisana vektorskim proizvodom kao x

′i ×Hx i = 0 ²to

omogu¢ava dobivanje jednostavnog i linearnog rje²enja matrice H.

Ukoliko se j -ti red matrice H ozna£i sa h jT , moºe se pisati:

Hx i =

h1>x ih2>x ih3>x i

. (2.10)

Ukoliko vektor x′i napi²emo kao (x

′i, y

′i, z

′i)> tada vektorski proizvod postaje:

x′

i ×Hx i =

y′ih

3>x i − z′ih

2>x iz′ih

1>x i − x′ih

3>x ix

′ih

2>x i − y′ih

1>x i

. (2.11)

Budu¢i da vrijedi h j>x i = x>i hj, gdje j = 1, ..., 3, dobiva se skup od 3 jedna£ine koje

mogu biti zapisane kao: 0> −z′ix>i y

′ix>i

z′ix>i 0> x

′ix>i

−y′ix>i x

′ix>i 0>

h1

h2

h3

= 0 . (2.12)

Matri£na jedna£ina (2.12) se moºe zapisati i kao Aih = 0 , gdje je Ai 3× 9 matrica, a hje 9× 1 vektor koji se sastoji od elemenata matrice H [2].

Na osnovu izloºenog slijede naredna opaºanja:

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

8

Page 18: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Uvod u projekcione transformacije

• Jedna£ina Aih = 0 je linearna, gdje se kao elementi matrice Ai pojavljuju poznatekoordinate ta£ke korespodencije, a h je nepoznata veli£ina.

• Kori²tenjem relacije (2.12) dobivamo 3 jedna£ine od kojih su dvije linearno neza-visne dok tre¢a se moºe napisati kao linearna kombinacija preostale dvije. Dakle,svakom ta£kom korespodencije odre�ene su dvije relacije koje u£estvuju u odre�iva-nju matrice H , pa je uobi£ajno da se izostavi tre¢a jedna£ina tako da relacija (2.12)postaje: [

0> −z′ix>i y

′ix>i

z′ix>i 0> x

′ix>i

]h1

h2

h3

= 0 . (2.13)

• Jedna£ine koje u£estvuju u odre�ivanju matrice H sadrºe homogene koordinateta£ke x

′i = (x

′i, y

′i, z

′i)>. Tre¢a koordinata z

′i se moºe odabrati kao z

′i = 1 tako da su

(x′i, y

′i)> koordinate odre�ene na digitalnoj slici.

Matrica projekcione transformacije H je odre�ena sa £etiri ta£ke korespodencije, a skupjedna£ina koji je odre�uje je dat u matri£nom obliku kao Ah=0 . Matrica A je nas-tala stapanjem redova matrica Ai za svaku ta£ku korespodencije dok matrica h je vektorelemenata matrice H . Ukoliko se koristi matri£na relacija (2.12) matrica A ima dimen-zionalnost 12× 9, a ukoliko se koristi relacija (2.13) dimenzionalnost matrice A je 8× 9.Rang matrice A u oba slu£aja je isti i iznosi osam. Rje²avanjem skupa jedna£ina Ah = 0

dobivamo elemente matrice H £ime je ona u potpunosti odre�ena.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

9

Page 19: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 3

Preslikavanje ta£aka iz kalibracione

ravni u cilindri£nu

Postupak odre�ivanja korespodentnih ta£aka izme�u kalibracione ravni i cilindri£ne ravni¢e biti opisan kroz naredne korake:

• Potrebno je odrediti preslikavanje koje povezuje ravan slike sa kalibracionom ravniuz pomo¢ sistema prikazanog na slici 3.1. Raspored ta£aka od interesa, te poloºaj ka-mere su dati na slici 3.2. Kako bi se odredilo preslikavanje vr²i se perspektivna tran-sformacija (opisana u poglavlju 2). Perspektivna transformacija unutar OpenCVokruºenja operira sa £etiri poznate ta£ke iz ravni slike i £etiri ta£ke iz kalibracioneravni. Dakle, £etiri ta£ke kalibracione ravni su manuelno izmjerene progla²avaju¢icentar baze limenke ishodi²tem koordinatnog sistema vezanog za kalibracionu ravan,a korespodentne ta£ke u ravni slike su odre�ene softverski.

Slika 3.1: Prikaz scene za odre�ivanje preslikavanja ta£aka iz kalibracione ravni u cilindri£nu

• Iz perspektive kamere, ta£ka A (slika 3.3a) u ravni, i ta£ka C na valjku su iden-ti£ne, projiciraju se u istu ta£ku, ²to je ilustrirano na slici 3.3b. Zanemarivanjemizobli£enja, sve ta£ke koje pripadaju pravcu AB iz perspektive kamere su ista ta£ka.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

10

Page 20: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Preslikavanje ta£aka iz kalibracione ravni u cilindri£nu

Slika 3.2: Prikaz pozicije ta£aka od interesa i kamere unutar scene.

(a) (b)

Slika 3.3: Prikaz pozicije kamere

• Iz perspektivne transformacije poznate su koordinate ta£ke A(∆x,∆y, 0), a koordi-nate ta£ke B(0, H,D) odre�uju se manuelnim mjerenjima u okviru scene slike.

• Pravac AB u parametarskom obliku opisan je kao:

x− xAxB − xA

=y − yAyB − yA

=z − zAzB − zA

= t, (3.1)

gdje je t ∈ (0, 1) na duºi AB. Uvr²tavanjem koordinata ta£ke A i B dobiva se:

x−∆x = −∆x · t, (3.2)

y −∆y = (H −∆y)t, (3.3)

z − 0 = (D − 0)t, (3.4)

odakle slijedi:x = ∆x(1− t), (3.5)

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

11

Page 21: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Preslikavanje ta£aka iz kalibracione ravni u cilindri£nu

y = ∆y + (H −∆y)t, (3.6)

z = D · t. (3.7)

• Svaka ta£ka C koja je presjek pravca AB i valjka moºe se dobiti kao presjek pravcaAB i kruºnice (polupre£nika r na visini h) u polarnim koordinatama date kao:

x = rcosϕ

y = h

z = rsinϕ.

Uvr²tavanjem (3.5), (3.6) i (3.7) u jedna£ine za kruºnicu dobiva se:

z = rsinϕ = Dt, (3.8)

y = h = ∆y + (H −∆y)t, (3.9)

x = rcosϕ = ∆x(1− t). (3.10)

Rje²avanjem sistema po ϕ, h i t dobiva se:

h = ∆y + (H −∆y)t, (3.11)

ϕ = atan2(Dt/r,∆(1− t)/r), (3.12)

t =−b±

√b2 − 4ac

2a, (3.13)

gdje su a = D2 + (∆x)2, b = −2(∆x)2 i c = (∆x)2 − r2.

Ilustracije presje£nih ta£aka za razli£ite vrijednosti polupre£nika baze cilindra jedata na slikama 3.4a i 3.4b.

(a) (b)

Slika 3.4: Prikaz presje£nih ta£aka prave i cilindra za razli£ite vrijednosti polupre£nika bazecilindra

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

12

Page 22: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Preslikavanje ta£aka iz kalibracione ravni u cilindri£nu

Diskusija mogu¢ih rje²enja sistema

� Pri rje²avanju sistema jedna£ina prave AB i kruºnice sa polupre£nikom r na vi-sini h dobiva se kvadratna jedna£ina po t. Ukoliko je diskriminanta kvadratnejedna£ine b2−4ac > 0, tada postoje dva realna rje²enja, odnosno postoje dvijepresje£ne ta£ke izme�u pravca i kruºnice, u tom slu£aju od interesa je samopresje£na ta£ka koja se nalazi na vidljivom dijelu valjka.

Ukoliko je diskriminanta b2 − 4ac < 0, rje²enja su kompleksna, pa kao takva,za ovu primjenu, ne predstavljaju upotrebljivu formu jer tada nema presje£nihta£aka izme�u prave AB i valjka.

Ukoliko je b2 − 4ac = 0, rje²enje je jedinstveno, odnosno postoji jedinstvenapresje£na ta£ka C na pravcu AB koji tangira kruºnicu u ta£ki C.

� Kako je varijabla ϕ izraºena preko funkcije atan2, to ista ima razli£ite vrijed-nosti u ovisnosti od argumenata pomenute funkcije. Zavisnost varijable ϕ odpredznaka argumenata funkcije atan2 je data kao:

atan2(y, x) =

arctan( yx), za x>0

arctan( yx) + π, za x<0 i y≥ 0

arctan( yx)− π, za x<0 i y<0

+(π2), za x=0 i y>0

−(π2), za x=0 i y<0

nedefinisano, za x=0 i y=0

• Opisanim postupkom, svaka ta£ka (∆x,∆y) iz kalibracione ravni se preslika u par(ϕ, h) uz unaprijed poznato r. Parametre D, h i r je mogu¢e manuelno odrediti iliestimirati uz odgovaraju¢i ²ablon.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

13

Page 23: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 4

Problem kalibracije kamere

Zadatak geometrijske kalibracije kamere je nalaºenje poveznice izme�u koordinata ta£keM = (X, Y, Z) referentnog koordinatnog sistema i koordinate piksela m = (x, y) ko-ordinatnog sistema slike. Kalibracijom kamere odre�uje se povezanost piksela senzorakamere sa odgovaraju¢im skupom ta£aka iz trodimenzionalnog prostora. Proces kalibra-cije kamere ima vaºan udio u procesu obrade slike kori²tenjem ra£unarske vizije. Kakobi se mogle izvr²iti bilo kakve manipulacije i procjene nad digitalnom slikom potrebno jeodrediti unutra²nje i vanjske parametre kao i koe�cijente distorzije o £emu ¢e op²irnijebiti re£eno u nastavku.

4.1 CCD kamera

CCD (engl. charge-coupled device) kamera je najjednostavniji oblik £ip kamere. Pred-stavljena je kao niz posuda koje su osvjetljene, a nazivaju se pikselima. Svaki od pikselaima mogu¢nost kapacitivnog punjenja odnosno praºnjenja. Sam proces generisanja po£i-nje kada se sve posude u potpunosti napune. Svjetlost koja prolazi kroz poluprovodnikpomjera elektrone iz valentne u provodnu ljusku. Na taj na£in oslobo�eni elektroni seakumuliraju u posudama. Tokom vremena svaka posuda akumulira razli£it iznos energijekoji ovisi o broju fotona koji su udarili u posudu - piksel. Osnovni rad CCD kamereilustriran je na slici 4.1. Bez obzira ²to kamera ima do milion detektora na £ipu, nije mo-gu¢e dovoditi na svaki detektor signal za £itanje ve¢ elektoroni koji su akumulirani unutarposuda usljed fotoelektri£nog efekta prenose se red po red do odredi²ta za £itanje. Redovipikela odvode se na poja£alo odakle se informacije mogu poslati kao analogni signal uslu£aju video kamere ili kao digitalna rije£ u slu£aju digitalne kamere [3].

4.2 Pin-hole model kamere

Kamera je projekcioni ure�aj koji obavlja mapiranje izme�u 3D prostora i 2D ravni slike.To je instrument koji snima svjetlost i projektira je na senzor slike kako bi se dobila slika.Sam proces nastajanja slike je jako sloºen, a moºe se ta£no opisati prvobitnim pin-holemodelom.

Na slici 4.2 prikazan je pin-hole model kamere, a moºe se opisati kao 3×4 homogena tran-sformacija kojom se vr²i mapiranje izme�u ta£keM = [X, Y, Z, 1]> izraºene u homogenim

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

14

Page 24: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Problem kalibracije kamere

Slika 4.1: Osnovni princip rada CCD kamere ilustriran kao skup posuda. Slika preuzeta iz [3].

Slika 4.2: Pinhole model digitalne kamere [3].

koordinatama i 2D piksela m = [x, y, 1]> tako�er izraºenog u homogenim koordinatama,tako da je:

sm = P3×4M , (4.1)

gdje je P preslikavanje R3 → R2 sa faktorom sklairanja s. Matrica P ima 11 stepenislobode, a moºe se jos opisati preko unutra²njih i vanjskih parametara kao:

sm = K [R|t ]M , (4.2)

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

15

Page 25: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Problem kalibracije kamere

gdje je matrica K data kao:

K =

kuf γ cu0 kvf cv0 0 1

. (4.3)

Matrica K predstavlja unutra²nje parametre koji odre�uju unutra²nju kon�guraciju ka-mere. �iºna udaljenost f predstavlja najkra¢u udaljenost ta£ke C od ravni senzora.Koordinata piksela u kojem vektor ºiºne udaljenosti probija ravninu slike naziva se cen-tralna ta£ka. Ukoliko je ta ta£ka odre�ena sa [cu, cv] koordinatama tada predstavlja centarsenzora slike. Parametar γ predstavlja asimetriju mreºe piksela, u ve¢ini slu£ajeva ovajfaktor se zanemaruje. Za preciznija modeliranja sa nekvardatnim pikselima uvode se kui kv koji su proporcionalni gustini piksela po jedinici udaljenosti. Npr. za CCD kamerukada su pikseli kvadratnog oblika parametri ku i kv su jedinice [4].

Vanjski parametri opisuju poziciju i orjentaciju kamere u 3D referentnom koordinatnomsistemu sa£injenu od matrice rotacije R3×3 i matrice translacije t3×1. Transformacijakojom se koordinata iz koordinatnog sistema kamere prevodi u ta£ku referentnog koordi-natnog sistema je data kao:

M w = R−1(M ct) = R−1M c −R−1t , (4.4)

gdje −R−1t predstavlja centar kamere izraºen u koordinatama referentnog koordinatnogsistema. Dakle, relacija (3.1) moºe se pisati kao:

sm = K 3×3

(R3×3 −RC0 1

). (4.5)

4.3 Izvori distorzije

Slika koju je snimio senzor mora biti digitalizovana kako bi se vr²ila bilo kakva obrada od-nosno, nastajanje slike podrazumijeva dva segmenta i to dobivanje elektri£nog signala uzpomo¢ odgovaraju¢eg opti£kog sistema i proces digitalizacije. Oba segmenta predstavljajuizvore izobli£enja. Samo tuma£enje scene kroz tako dobivenu sliku predstavlja pote²ko¢u.Prvi problem koji se pojavljuje jeste geometrijska ograni£enja nastala uslijed relativnogpoloºaja senzora i prizora ²to predstavlja perspektivnu distorziju. Drugi problem nastajepri kori²tenju rasvjetnih ure�aja na sceni, pa dolazi do pojave sjene ili re�eksije. Jo²jedan u nizu problema jeste gubitak informacija zbog same £injenice da je dobivena slika2D prikaz 3D scene [5].

4.4 Distorzija so£iva

Prilikom mapiranja 3D scene u 2D ravan za o£ekivati je da se ravne linije scene preslikajuu ravne linije na projekcionoj ravni me�utim, u nekim prakti£nim slu£ajevima so£ivokamere prouzrokuje iskrivljenja koja se ne mogu zanemariti. Dvije najizraºenija vrstedistorzije su radijalna i tangencijalna. U teoriji mogu¢e je napraviti idealno so£ivo bezdistorzije ali u praksi so£iva koja se nalaze u kamerama unose distorziju jer proizvodniproces izrade samog so£iva nije idealan te je jeftinije napraviti sferi£no so£ivo nego idealno

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

16

Page 26: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Problem kalibracije kamere

paraboli£no. Sferi£no so£ivo doprinosi radijalnoj distorziji, a nepravilnosti kod poravna-nja so£iva sa senzorom slike dovode do tangencijalne distorzije.

Radijalna distorzija predstavlja radijalnu udaljenost izme�u stvarne i idealne ta£ke naslici. Dijeli se na ba£vastu (engl. barrel) i jabu£astu (engl. pincushion). Distorzija je jed-naka nuli u centru so£iva, a pove¢ava se udaljavanjem od centra prema periferiji. Dakle,ja£ina distorzije ovisi o udaljenosti piksela od centra slike prema jedna£ini r2 = x2 + y2.

Uklanjanje distorzije vr²i se prema relacijama (3.6) i (3.7) koje opisuju poloºaj ispravlje-nog piksela.

xispravljeno = x+ x(k1r2 + k2r

4 + k3r6) (4.6)

yispravljeno = y + y(k1r2 + k2r

4 + k3r6), (4.7)

gdje su k1, k2, k3 koe�cijenti radijalne distorzije koji se odre�uju geometrijskom kalibra-cijom kamere [4].

Slika 4.3: Prikaz slike sa ba£vastom odnosno jabu£astom distorzijom [1].

Slika 4.4: Prikaz slike sa distorzijom i bez distorzije [1].

Na slici 4.3 prikazan je ba£vasti i jabu£asti oblik distorzije. Slika 4.4 ilustrira primjer sa

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

17

Page 27: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Problem kalibracije kamere

Slika 4.5: Prikaz poravnanja koji uzrokuje tangencijalnu distorziju

i bez distorzije.

Uklanjanje tangencijalne distorzije se vr²i prema relacijama (3.8) i (3.9) koje opisujupoloºaj ispravljenog piksela.

xispravljeno = x+ (2p1y + p2(r2 + 2x2)) (4.8)

yispravljeno = y + (p1(r2 + 2y2) + 2p2x), (4.9)

gdje su p1 i p2 koe�cijenti tangencijalne distorzije koji se odre�uju geometrijskom kali-bracijom kamere. Kod novijih kamera, tangencijalna distorzija (prikazana na slici 4.5) semoºe zanemariti budu¢i da ne dolazi do izraºaja [4].

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

18

Page 28: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 5

Segmentacija slike

Zadatak segmentacije je podijeliti sliku na manje regije ili objekte. Dakle, potrebno jeprona¢i grupe piksela izme�u kojih postoji odre�ena veza. Na£in podjele slike ovisi odproblema koji se rje²ava. Proces segmentacije se zaustavlja onda kada se izoluju objektiod interesa.E�kasnost segmentacije odre�ena je ta£no²¢u ra£unarskih postupaka analize, a u nekimsituacijama kao ²to je industrijska inspekcija, e�kasnost je mogu¢e kontrolisati.Algoritmi segmentacije monohromatske slike baziraju se na dvije osnovne karakteristikeintenziteta slike: diskontinuitet i sli£nost. Ideja metode diskontinuiteta je podjela slikeprema nagloj pomjeni diskontinuiteta £emu odgovaraju rubovi na slici. Drugi pristup setemelji na podjeli slike na regije koje su sli£ne prema unaprijed de�nisanim kriterijima[6].Pri analizi slike vr²i se niz manipulacija te jedna od njih jeste identi�kacija intenzitetadiskontinuiteta koji su predstavljeni ta£kama, linijama i rubovima. Proces segmentacije, okojem ¢e se govoriti u nastavku, obuhvata i domen identi�kacije linearnih rubova metodomHough-ove transformacije, te proces detekcije rubova metodom praga (engl. thresholding)koja se posebno koristi u aplikacijama koje zahtjevaju veliku brzinu izvr²avanja.

5.1 Metoda praga

Zna£ajka ili ta£ka od interesa je vizuelno speci�£an dio slike koji se isti£e u odnosdu nasusjedne ta£ke.Odabir zna£ajki unutar scene ili slike vaºan je segmenat za ve¢inu mjerenja ili analizuscene.Jednostavan na£in kako odabrati zna£ajke jeste de�niranje nivoa osvjetljenosti unutarde�niranog raspona. Svi pikseli koji pripadaju rasponu nalaze se u prvom planu, dok sviostali pikseli bivaju smje²teni u pozadinu slike [7].

5.1.1 Globalni prag

Najjednostavnija metoda transformacije slike sivih tonova u sliku sa dva nivoa koristijednu referentnu vrijednost koja se naziva prag. Sve sive vrijednosti ispod praga su oka-rakterisane kao crna, a sve vrijednosti iznad praga se de�niraju kao bijela. Slika 8.8dilustrira u£inak globalnog praga na sliku sivih tonova. Kako je razina svjetlosti klipaisuvi²e razli£ita od praga, to se na modi�kovanoj slici pojavljuju dva odvojena objekta[7].

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

19

Page 29: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Segmentacija slike

(a) Metalni klip na plastici (b) Efekat globalnog praga

Slika 5.1: Primjena efekta globalnog praga na sliku

5.1.2 Pragovi ovisni o lokaciji

Ukoliko se vr²e manipulacije nad slikom koja ima razli£it kontrast izme�u objekata ipozadine u razli£itim podru£jima ili ukoliko slika ima neravnomjernu osvjetljenost, tadaglobalno odre�ivanje praga ne daje dobre rezultate segmentacije (kao ²to je recimo pri-kazano na slici 8.8d). Me�utim, ukoliko se koriste lokalni pragovi za svako podru£je odinteresa, tada se objekat dat na slici 8.8d ne¢e razdvojiti na dva dijela ²to je ilustriranona slici 5.2. Obzirom da svaka regija slike ima svoj prag, to je dovoljno za svaki piksel od-lu£iti da li je njegova siva razina ispod ili iznad praga kako bi se dodijelio segmentiranomobjektu [7].

(a) Metalni klip na plastici (b) Efekat lokalnog praga

Slika 5.2: Primjena efekta lokalnog praga na sliku

5.1.3 Odre�ivanje praga analizom histograma

Histogrami sive boje sluºe za prikaz karakteristika osvjetljenosti, odnosno frekventnihosobina slike. Histogram je svojevrsna frekvencijska tabela u kojoj se biljeºi koliko £estose pojavljuju vrijednosti iz odre�enog raspona. Mogu¢e je grupisati nijanse sive bojeu 16 klasa ²to rezultira da histogram ima 16 nivoa, a ne 256, tako da prva vrijednostpredstavlja sve frekventne nivoe izme�u 0 i 15, naredna vrijednost £uva nivoe izme�u 16i 31 i tako redom do 255. Prora£un histograma za £itavu sliku je relativno jednostavan, asastoji se od kreiranja niza od 256 broja£a, zatim prolaska petlje kroz svaki piksel. Npr.ukoliko piksel ima vrijednost sive nijanse 135 tada se vrijednost broja£a na poziciji 135pove¢ava za jedan [7]. Na tipi£nim histogramima prikazana su dva istaknuta vrha jedanza pozadinsku osvjetljenost, drugi za osvijetljenost objekta ²to je ilustrirano na slici 5.3.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

20

Page 30: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Segmentacija slike

(a) Slika u sivim tonovima (b) Histogram (c) Binarna slika

Slika 5.3: Ilustracija analize histograma

5.2 Detekcija ivice

Osnovna ideja algoritama za detekciju ivice jeste prona¢i mjesta na slici gdje se intenzitetbrzo mijenja, a koriste se dva op¢a kriterija:

• Detekcija mjesta gdje je vrijednost prve derivacije intenziteta ve¢a od vrijednostipraga.

• Detekcija mjesta na slici gdje druga derivacija intenziteta teºi nuli.

5.2.1 Canny metoda za detekciju ivice

Canny detektor je optimalan metod detekcije ivice, a moºe se opisati kroz sljede¢e korake:

• Koristi se Gaussov �lter sa odre�enom standardnom devijacijom kako bi se zagladilaslike s cljem smanjenja uticaja ²uma.

• Za svaku ta£ku na slici ra£una se lokalni gradijent g(x, y) = [G2x, G

2y] i smjer ivice

α(x, y) = tan−1(Gy, Gx). Vrijednosti Gx i Gy se mogu izra£unati nekom od sljede¢ihmetoda: Sobel, Prewitt ili Roberts [6]. Grani£na ta£ka se defnira kao ta£ka £ijasnaga predstavlja lokalni maksimum u smjeru gradijenta, a bira se iz vrijednostigradijenata.

• Grani£na ta£ka odre�uje rub gradijenta slike, potom algoritam prolazi kroz svakuta£ku na tom rubu. Ta£ke koje ne pripadaju rubu dobivaju vrijednost nule, dokostale su nepromijenjene (sam proces se naziva stanjivanje ivice) zatim se primje-njuje metoda praga na ta£ke koje pripadaju rubu. Odre�uju se dvije vrijednostipraga T1 i T2, gdje je T1 < T2. Pikseli ruba koji imaju vrijednost ve¢u od T2 postajunagla²eni rubni pikseli, dok oni £ija je vrijednost manja od T2 postaju nenagla²eniili slabi pikseli ruba.

• Naposlijetku algoritam vr²i povezivanje nagla²enih piksela pripajanjem slabih su-sjednih piksela s ciljem kreiranja ivice [6].

Na slici 5.4 prikazana je originalna slika, pikseli ozna£eni metodom praga, te slika saprikazanim ivicama dobivena Canny algoritmom.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

21

Page 31: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Segmentacija slike

Slika 5.4: (a) Originalna slika, (b) Pikseli ozna£eni metodom praga, (c) Ivice dobivene Cannyalgoritmom

5.3 Detekcija objekta od interesa na slici

Kako bi se rije²io problem detekcije objekta od interesa u nastavku ¢e bit razmotrenemetode Houghove transformacije za linije i kruºnice.

5.3.1 Houghova transformacija kruºnice poznatog polupre£nika

Kako bi se predstavio osnovni koncept Houghove transformacije razmotrit ¢e se primjerdetekcije tamne kruºnice poznatog polupre£nika r na ravnomjerno osvjetljenoj pozadini.Metoda je zasnovana na detekciji tamnih piksela slike, poslije £ega se iz svake identifkovanetamne ta£ke opi²e kruºnica polupre£nika r, kao ²to je prikazano na slici 5.5a. Nakon ²to sesvakoj tamnoj ta£ki pridruºi kruºnica, moºe se odrediti frekvencija pojavljivanja svakogpiksela koji tvori dodatne kruºnice na sceni. Piksel sa najve¢om u£estalosti pojavljivanjapredstavlja centar kruºnice koju treba detektovati [8].

(a) (b)

Slika 5.5: (a) Originalna slika, (b) Piksel sa najve¢om frekvencijom pojavljivanja [5]

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

22

Page 32: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Segmentacija slike

5.3.2 Houghova transformacija linija

Rje²avanjem problema detekcije linije na slici predstavit ¢e se osnovni koncept Houg-hove transformacije za linije. Pozato je da je pravac odre�en sa dvije ta£ke A(x1, y1) iB = (x2, y2). Sve linije koje prolaze kroz ta£ku A odre�ene su jedna£inom y1 = kx1 + q,dok sve linije koje prolaze kroz ta£ku B su odre�ene jedna£inom y2 = kx2 + q, za karak-teristi£ne vrijednosti k i q, ²to je prikazano na slici 5.6 (a). Navedene jedna£ine mogu sepredstaviti u (k, q) parametarskom prostoru tako da sve linije koje prolaze kroz ta£ke A iB u parametarskom prostoru su odre�ene jedna£inama q = −x1k+y1k, q = −x2 +y2 res-pektivno, ²to je pokazano na slici 5.6 (b). Jedina zajedni£ka ta£ka u (k, q) parametarskomprostoru predstavlja liniju koja povezuje ta£ke A i B na originalnoj slici. Dakle, svakata£ka linije na originalnoj slici se transformi²e u jednu ta£ku parametarskog prostora.

Slika 5.6: (a) Prostor slike, (b) k; q parametarski prostor

Jedan od bitnih koraka Houghove transfomacije za linije jeste detekcija rubnih pikselanekom od metoda detekcije ivice. Nakon ²to se detektuju rubni pikseli pronalaze se svelinije koje u (k, q) parametarskom prostoru odgovaraju detektovanim pikselima. U op¢emslu£aju, broj takvih linija je beskona£an ali u prakti£noj primjeni vr²i se diskretizacija va-rijabli k i q tako da parametarski prostor biva predstavljen kao kona£an niz pravougaonih¢elija. Pomenuti niz A naziva se akumuliraju¢i, a njegovi elementi A(k, q) su akumuli-raju¢e ¢elije. Vrijednost akumuliraju¢e ¢elije se pove¢a svaki put kad se detektuje linijay = kx+ q koja prolazi kroz rubni piksel. Za bilo koji piksel P linija moºe imati bilo kojismjer k ali parametar q ovisi od koordinata piksela P i smjera k. Najve¢u vrijednost aku-muliraju¢e ¢elije ¢e imati ¢elija koja je korespodentna sa traºenom linijom na originalnojslici, dok ¢e sve ostale ¢elije imati manje vrijednsoti. Dakle, Houghova transformacija zalinije se svodi na detekciju lokalnog maksimuma akumuliraju¢eg niza [8].

5.3.3 Houghova transformacija proizvoljne krive

Houghova transformacija za proizvoljnu krivu vr²i se u £etiri naredna koraka:

• Kvantizacija parametarskog prostora unutar granica parametra a, gdje je a vektorparametara krive. Dimenzionalnost n parametarskog prostora odre�ena je brojemelemenata vektora a.

• Formiranje akumuliraju¢eg niza A(a) £ija dimenzionalnost je korespodentna kvan-tizaciji parametarskog prostora, te postavljanja svih elemenata niza na nulu.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

23

Page 33: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Segmentacija slike

• Pove¢avanje vrijednosti akumuliraju¢ih ¢elija za svaku ta£ku originalne slike za kojuvrijedi f(x, a) = 0, gdje f(x, a) = 0 predstavlja jedna£inu krive.

• Detekcija lokalnih maksimuma akumuliraju¢eg niza koji su korespodentni sa krivomf(x; a) = 0, datoj na originalnoj slici [8].

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

24

Page 34: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 6

Detekcija i uparivanje ta£aka od

interesa na slici

Koncept ta£aka od interesa, klju£nih ta£aka ili zna£ajki se koristi u ra£unarskoj viziji prirje²avanju problema prepoznavanja objekata, 3D rekonstrukciji scene, pra¢enja objekatau pokretu, formiranja panorame i u drugim primjenama. Ideja koncepta je umjesto ana-lize slike u cjelini, odabrati posebne ta£ke od interesa i vr²iti lokalnu analizu nad njima.Zna£ajke su nepromjenjive za skaliranje i rotaciju, a djelimi£no nepromjenjive za pro-mjenu osvjetljenosti slike. Zna£ajke se opisuju vektorom �ksne dimenzije koji se nazivadeskriptor i sadrºi informacije o pikselima iz okoline ta£ke od interesa. U nastavku ¢e bitiopisani sljede¢i algoritmi za detekciju i ekstrakciju zna£ajki: SURF i BRISK.

6.1 SURF algoritam

SURF algoritmom se nastoje lokalizirati ta£ke od interesa. Ta£ka od interesa je ta£ka naslici koja zadovoljava sljede¢e osobine:

• Ima jasnu i prvenstveno matemati£ki dobro utemeljenu de�niciju;

• Ima dobro de�nisanu poziciju u prostoru slike;

• Lokalna struktura slike oko ta£ke od interesa je bogata lokalnim podacima, tako daupotreba ta£ke od interesa pojednostavljuje analizu u sistemima vizije;

• Stabilnost uprkos lokalnim i globalnim perturbacijama koje uklju£uju deformacijeuslijed perspektivne transformacije, rotacije kao i promjene osvjetljenosti;

Pored navedenih stavki ta£ka od interesa ima osobinu invarijantnosti uslijed promjenerazmjere slike [9].

SURF algoritam se sastoji od narednih koraka:

• Ra£unanje integralnog prikaza slike;

• Ra£unanje determinante odziva u odre�enoj prostornoj razmjeri;

• Izvr²avanje normalizacije determinante odziva;

• Izvr²avanje kompresije, radi lokalizacije ta£ke od interesa u prostoru razmjere;

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

25

Page 35: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Detekcija i uparivanje ta£aka od interesa na slici

• Upotreba rezultata kompresije sa unaprijed de�nisanim pragom;

• Izvr²avanje lokalizacije ta£ke od interesa u skalarnom prostoru na osnovu odre�enejedna£ine;

• Ra£unanje orijentacije za svaku ta£ku od interesa;

SURF algoritam karakteriziraju visoke performanse i velika preciznost izvr²avanja. Oveosobine su posljedica upotrebe integralnog prikaza slike, te kori²tenja aproksimirane ma-trice Hessian-a.Prvi korak u SURF algoritmu je dobivanje integralne slike. Svaki piksel integralne slikeIΣ dat je relacijom:

IΣ(x, y) =X∑i=1

Y∑j=1

I(i, j), (6.1)

gdje su X i Y ²irina i visina slike, respektivno. Osnovna prednost integralne slike jeste brzora£unanje intenziteta piksela bilo koje pravougaone forme (slika 6.1). Dakle, potrebne susamo £etiri aritimeti£ke operacije za ra£unanje sume IΣabcd:

IΣabcd = IΣ(xa, ya) + IΣ(xd, yd)− IΣ(xb, yb)− IΣ(xc, yc). (6.2)

Drugi korak SURF algoritma je odre�ivanje matrice Hessian-a. Za proizvoljnu ta£ku

Slika 6.1: Ilustracija analize integralne slike

q(x, y) na slici I i razmjeru σ matrica Hessian-a se de�nira na sljede¢i na£in:

H(q, σ) =

[Lxx(q, σ) Lxy(q, σ)Lyx(q, σ) Lyy(q, σ)

], (6.3)

gdje je Lxx(q, σ) rezutat konvolucije druge derivacije Gauss-ovog �ltra ∂2

∂x2g(σ) i slike I u

ta£ki q(x, y). Analogno se de�niraju i ostali konvolucioni rezultati [10].Naredni korak SURF algoritma je odre�ivanje determinante aproksimirane Hessian-ovematrice koja je data kao:

det(Haproksimirano) = DxxDyy − w2Dxy, (6.4)

gdje su Dxx, Dyy, Dxy aproksimacija drugog parcijalnog izvoda Gauss-ove funkcije u xsmjeru, y smjeru, xy smjeru, respektivno, a w2 je teºinski koe�cijent koji iznosi 0.83. Zahardverske primjene koristi se w2 = 1−1/8 = 0.875, radi jednostavne implementacije [10].

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

26

Page 36: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Detekcija i uparivanje ta£aka od interesa na slici

U daljem toku algoritma se vr²i normalizacija skale. Vi²im nivoima pripadaju pikselisa ve¢om vrijednosti determinante.U £etvrtom koraku se vr²i pretraºivanje lokalnih maksimuma. Potencijalna zna£ajka po-redi se sa 3× 3× 3 susjednih ta£aka unutar trenutnog, gornjeg i donjeg nivoa. Zatim sevr²i �ltriranje prema unaprijed zadatom pragu radi dobivanja najzna£ajnije ta£ke.

Kako bi se obezbijedila invarijantnost na rotaciju potrebno je odrediti orijentaciju svakezna£ajke. U tu svrhu, ra£una se odziv na Haar-ove talasi¢e (engl. wavelets) u x i y smjeru.Izra£unavaju se talasi¢i za piksele koji se nalaze unutar kruºnice radijusa 6σ oko zna£ajke,a duºina Haar-ovog talasi¢a je 4σ. Orijentacije se predstavljaju ta£kama koje imaju hori-zontalni i vertikalni odziv. Dominantna orijentacija se estimira izra£unavanjem sume svihodziva unutar pomjeraju¢eg kruºng isje£ka £ija se veli£ina ugla odre�uje eksperimentalnoi iznosi π/3 (slika 6.2). Sabiranjem dva odziva dobiva se lokalni orijentacijski vektor, avektor najve¢eg intenziteta predstavlja orijentaciju zna£ajke [9].

Slika 6.2: Estimacija orjentacije zna£ajke

6.1.1 Formiranje SURF deskriptora

Prilikom izdvajanja deskriptora najprije se formiraju kvadratne regije oko zna£ajki (slika6.3). Centar regije je sama zna£ajka, a njena orijentacija je prethodno odre�ena domi-nantna orijentacija. Duºina ivice kvadratne regije je 20σ, gdje σ predstavlja razmjerupri kojoj je detektovana zna£ajka. U narednom koraku, regije se dijele u podregije di-menzija 4×4. Za svaku od podregija ra£una se odziv na Harr-ove talasi¢e u svakoj od5×5 pravilno razmaknutih ta£aka (slika 6.4). U nastavku procesa se vr²i izdvajanjesume odziva u horizontalnom smjeru Σdx, sume odziva u vertikalnom smjeru Σdy, tesuma njihovih apsolutnih vrijednosti Σ|dx| i Σ|dy|. Navedene sume formiraju vektorv = (Σdx,Σdy,Σ|dx|,Σ|dy|). Na ovaj na£in svaka podregija ima deskriptorski vektor sa 4elementa. Obzirom da je regija podjeljena na 4×4 podregije, to rezultuju¢i deskriptorskivektor ima 64 elementa [11].

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

27

Page 37: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Detekcija i uparivanje ta£aka od interesa na slici

Slika 6.3: Prikaz formiranja kvadratnih regija oko zna£ajki

Slika 6.4: Izdvajanje deskriptora

6.2 BRISK algoritam

BRISK algoritam se temelji na FAST detektorima zna£ajki ²to obezbje�uje brzinu i pre-ciznost, te kao takav pogodan je za aplikacije koje zahtijevaju rad u realnom vremenu.

6.2.1 Detekcija zna£ajki BRISK algoritmom

Kako bi se postigla invarijantnost na skaliranje slike, ovaj algoritam vr²i pretraºivanje lo-kalnih maksimuma ne samo u ravnini slike nego i u prostoru skaliranja. U okviru BRISK

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

28

Page 38: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Detekcija i uparivanje ta£aka od interesa na slici

algoritma prostor skaliraja je predstavljen u obliku piramidalnih slojeva koji se sastoje odn oktava ci i n unutra²njih oktava (engl. intra − octaves) di, gdje je i = 0, 1, ..., n− 1 itipi£no n = 4. Oktave se formiraju postepenim polu-uzorkovanjem originalne slike (²toodgovara c0). Svaka unutra²nja oktava je smje²tena izme�u slojeva ci i ci+1 kako je prika-zano na slici 6.5. Prva unutra²nja oktava d0 dobiva se smanjenjem frekvencije sempliranja

Slika 6.5: Detekcija ta£ke od interesa, zna£ajke, u prostoru skaliranja

originalne slike c0 faktorom skaliranja 1.5. Dakle, ako ti obiljeºava skalu, tada je t(ci) = 2i

i t(di) = 2i · 1.5.BRISK algoritam naj£e²¢e koristi masku 9-16, koja zahtijeva najmanje 9 uzastopnih pik-sela u krugu od 16 piksela, takvih da su dovoljno svjetliji ili tamniji od sredi²njeg piksela.Ovaj uslov name¢e FAST kriterij kojeg treba ispuniti.Inicijalno, FAST 9-16 detektor se primjenjuje na svaku oktavu i unutra²nju oktavu koris-te¢i isti prag (engl. threshold) T kako bi se identi�kovale regije od interesa. Na svakojoktavi ci analizira se 8 susjednih piksela, te odre�uje centralni pisel kao najistaknutijata£ka koja ujedno predstavlja zna£ajku kojoj se dodjeljuje odre�eni kvalitet. Kvalitet sje de�niran veli£inom "FAST score" ²to je prikazano na slici 6.5. Analogno, ista analizase vr²i za ostale slojeve.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

29

Page 39: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Detekcija i uparivanje ta£aka od interesa na slici

Odre�ivanje lokalnih maksimuma se vr²i prije formiranja parabole koja prolazi kroz iden-ti�kovane ta£ke sva tri sloja. Obzirom da su susjedni slojevi predstavljeni razli£itomdiskretizacijom, vr²i se interpolacija na rubovima sloja [12].

Formiranje BRISK deskriptora

BRISK deskriptor je organizovan kao binarni niz nastao kao rezultat jednostavnih tes-tova pore�enja osvjetljenosti. Radi pobolj²ane e�kasnosti algoritma za svaku zna£ajku seodre�uje karakteristi£an smjer na osnovu kojeg se postiºe invarijantnost rotacije koja jeosnova za op¢u robusnost. �ablon prikazan na slici 6.6 de�nira N jednako raspore�enihmjesta po koncentri£nim kruºnicama s klju£nom ta£kom.

Slika 6.6: BRISK ²ablon za uzorkovanje sa N = 60 ta£aka

Kako bi se izbjegao efekat preklapanja pri uzorkovanju intenziteta slike ta£ke pi koristise standardna devijacija Gauss-ove raspodjele σi koja je proporcionalna udaljenosti ta-£aka na odgovaraju¢oj kruºnici. Potrebno je izvr²iti skaliranje i pozicioniranje uzoraka zaodre�enu klju£nu ta£ku k na slici.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

30

Page 40: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Detekcija i uparivanje ta£aka od interesa na slici

U nastavku se posmatra jedan od N(N−1)/2 parova odabiraka (pi,pj). Izmjerene vrijed-nosti intenziteta u tim ta£kama su I(pi, σi) i I(pj, σj), respektivno i koriste se za procjenulokalnog gradijenta g(pi,pj) kao:

g(pi,pj) = (pj − pi)I(pj, σj)− I(pi, σi)

||pj − pi||2. (6.5)

Sada se moºe formirati skup A parova odabiraka:

A = {(pi,pj) ∈ R2 ×R2|i < N ∧ j < i ∧ i, j ∈ N}. (6.6)

De�niraju se dva podskupa S i L skupa A. Podskup S sadrºi parove odabiraka sa kra¢imudaljenostima, a podskup L parove sa duºim udaljenostima:

S = {(pi,pj) ∈ A| ||pj − pi|| < σmax} ⊆ A, (6.7)

L = {(pi,pj) ∈ A| ||pj − pi|| > σmin} ⊆ A, (6.8)

gdje su pragovi udaljenosti σmax = 9.75t i σmin = 13.67t (t je razmjera za k). Prolaskomkroz parove podskupa L estimira se ukupni karakteristi£ni smjer uzoraka klju£ne ta£ke k:

g =

(gxgy

)=

1

L

∑(pi,pj)∈L

g(pi,pj). (6.9)

Odre�ivanje deskriptora se vr²i na osnovu rotiranog ²ablona za ugao α = arctan2(gy, gx)oko klju£ne ta£ke k. Deskriptor dk, organizovan kao bit-vektor, se formira pore�enjemsvih udaljenosti parova (pαi ,p

αj ) ∈ S. Svakom bitu b odgovara [12]:

b =

{1, I(pαj , σj) > I(pαi , σi) ∀(pαi ,pαj ) ∈ S0, inace.

(6.10)

Budu¢i da se kompleksnost BRISK algoritma svodi na funkciju XOR (isklju£ivo ili) kojase vrlo e�kasno izvr²ava na dana²njim ra£unarskim arhitekturama ovaj algoritam postiºezadovoljavaju¢u brzinu.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

31

Page 41: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 7

Povezivanje zna£ajki

Postupak povezivanja zna£ajki je na²ao ²iroku primjenu u sistemima ra£unarske vizije.Nakon detekcije deskriptora karakteristi£nih za slike istog motiva slikane iz razli£itih per-spektiva, odre�uje se strategija povezivanja istih, odnosno odre�uje se korespodencijaizme�u deskriptora, nakon £ega slijedi odabir e�kasnih algoritama za povezivanje zna-£ajki kako bi se podudaranje izvelo ²to je mogu¢e brºe.

Povezivanje zna£ajki (engl. feature matching) vr²i se grupisanjem parova zna£ajki. Naj-jednostavnija strategija povezivanja zna£ajki jeste prema njihovoj udaljenosti, postavlja-njem praga (maksimalna udaljenost izme�u zna£ajki). Ukoliko se prag postavi previsokodolazi do propu²tanja laºnih pozitivnih zna£ajki (laºna pozitivna poklapanja), a ukolikoje prag postavljen prenisko izostavljaju se neka pozitivna poklapanja. Kvalitet algoritmase odre�uje na osnovu broja speci�£nih slaganja zna£ajki koja mogu biti:

• TP (engl. true positives), pravo pozitivno slaganje tj. broj ispravnih poklapanja;

• FN (engl. false negatives), laºno negativno slaganje tj. poklapanja koja nisu is-pravno detektovana;

• FP (engl. false positives), laºno pozitivno slaganje tj. parovi koji su neta£ni;

• TN (engl. true negatives), pravo negativno slaganje tj. neuskla�eni parovi koji suispravno odbijeni;

Na slici 7.1 data je ilustracija karakteristi£nih poklapanja parova zna£ajki.

Uvo�enjem kategorija TP (engl. true positives), FN (engl. false negatives), FP (engl.false positives) i TN (engl. true negatives) mogu¢e je de�nisati veli£ine:

• TPR (engl. true positive rate):

TPR =TP

TP + FN=TP

P; (7.1)

• FPR (engl. false positive rate):

FPR =FP

FP + TN=FP

N; (7.2)

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

32

Page 42: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Povezivanje zna£ajki

Slika 7.1: Crne znamenke 1 i 2 su zna£ajke koje se uparuju sa zna£ajkama iz baza zna£ajkidrugih slika. Za odabrani prag, ozna£en punom kruºnicom, zelena jedinica ima dobro poklapanje(engl. true positive), plava jedinica je neuskla�ena (engl. false negative), a crvena trojka jeneta£no podudaranje (engl. false positive). Ukoliko se prag pove¢a plava jedinica postaje istinskipozitivna (engl. true positive), a sme�a £etvorka dodatno biva laºno negativna (engl. false

positive), preuzeto iz [13].

• PPV, pozitivna prediktivna vrijednost:

PPV =TP

TP + FP=TP

P>; (7.3)

• ACC, ta£nost (engl. accuracy):

ACC =TP + TN

P +N, (7.4)

gdje su P ukupan broj pozitivnih poklapanja parova zna£ajki, N ukupan broj negativihpoklapanja i P> je ukupan broj predvi�enih pozitivnih poklapanja [13].

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

33

Page 43: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Poglavlje 8

Analiza eksperimentalnih rezultata

U ovom poglavlju ¢e biti predstavljeni rezultati koji su dobiveni na osnovu prethodno opi-sanih metoda koje su implementirane u programskom jeziku C++ uz upotrebu OpenCVbiblioteka. Eksperimenti su vr²eni nad istim objektom, limenkom (slika 8.1), uz razli£ite²ablone, a sve slike su snimljene kori²tenjem kamere SonyXC − 55.

Slika 8.1: Prikaz objekta i scena za eksperimentalne manipulacije

Budu¢i da je potrebno cilindri£nu naljepnicu ispraviti, to je primarni zadatak eksperi-mentalnog dijela odre�ivanje veze izme�u ta£aka na cilindri£noj povr²i (ravan valjka) ita£aka u ravni slike. U nastavku ¢e biti predstavljeni razli£iti na£ini uspostavljanja pome-nute veze. Neki od pristupa su bili manje ili vi²e uspje²ni, a njihove prednosti i nedostaci¢e biti opisani u nastavku.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

34

Page 44: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

8.1 Prvi pristup - kori²tenje laserskih projekcija

Ideja prvog pristupa je bila vr²iti lasersku projekciju na cilindri£ni objekat u cilju odre-�ivanja pozicija ta£aka na kruºnici koja se formira laserskom projekcijom na limenci.Detektovanje rubova limenke izvr²eno je kori²tenjem:

HoughCircles( src_gray , circles , CV_HOUGH_GRADIENT ,

1, src_gray.rows/8, 195,15, 0, 0);

Drugi parametar funkcije je vektor koji sadrºi triplete, £iji su elementi ishodi²te detekto-vane kruºnice te njen polupre£nik. Vrijednosti 195 i 15 predstavljaju gornji prag (engl.threshold) za detekciju ruba kruºnice, te prag (engl. threshold) za detekciju centra kruº-nice, respektivno. Vrijednost srcgray.rows/8 predstavlja minimalnu udaljenost izme�udetektovanih centara kruºnica.Radi lak²eg izdvajanja i detektovanja kruºnica, te uklanjanja periferije, najprije je izvr-²ena segmentacija slike kori²tenjem funkcije:

threshold( src_gray , dst , threshold_value , max_BINARY_value ,

threshold_type );

Za vrijednost max_BINARY_value uzima se 255 za primjenu kod binarnog praga.Polazna slika sa laserskom projekcijom prikazana je na slici 8.2a, a slika sa primjenjenimpragom, vrijednostima praga i tipu praga je data na slici 8.2b, te slika sa iscrtanimdetektovanim kruºnicama je prikazana na slici 8.2c.

(a) Polazna slika (b) Slika sa primjenjenim pragom

(c) Slika sa detektovanim kruºni-cama

Slika 8.2: Rezultati prvog pristupa

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

35

Page 45: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

Obzirom da detektovane kruºnice nisu zapravo polupre£nika limenke, tj. dimenzije nisukompatibilne, pa kao takve ne mogu se upotrijebiti kao validna referenca pri odre�ivanjupozicija ta£aka na limenci, shodno tome ovaj pristup ne moºe dati upotrebljive rezultate.Ukoliko bi se koristila Hough-ova transformacija za elipse ili ona za proizvoljne kontureto bi detekcija rubova naljepnice bila puno preciznija i ta£nija. Me�utim, problem bi sepojavio prilikom odre�ivanja koordinata iz scene, jer objekat na sceni nije niti elipsoidnogniti proizvoljnog oblika. Dakle, bilo bi te²ko prona¢i matematski model koji bi povezaoisti objekat ali razli£ito opisan u razli£itim ravnima.

8.2 Drugi pristup - kori²tenje linijskog ²ablona

U narednom pristupu se koristi cilindri£na povr² sa ²ablonom (slika 8.3). �ablon je ispu-njen vertikalnim linijama koje su ravnomjerno raspore�ene. Na linijama se nalaze crticekoje su tako�er, ravnomjerno raspore�ene. Ideja ovog pristupa se zasniva na detekciji li-

Slika 8.3: Polazna slika

nija ²ablona koje bivaju izo²trene i istanjene primjenom praga (slika 8.4a), dilatacije (slika8.4b) i erozije (slika 8.4c), respektivno. Analizom piksela je mogu¢e utvrditi nagomilanepiksele koji ustvari predstavljaju presje£ne ta£ke sa linijama na ²ablonu. Usrednjavanjemlokacije tih nagomilanih piksela mogu se estimirati koordinate presje£nih ta£aka. Svrhapostupka je odrediti poziciju te numerisati ta£ke po nekom de�niranom poretku (po uzoruna kalibraciju kamere), kako bi se, unaprijed, ta£no znalo kojoj ta£ki sa ²ablona odgovarakoja ta£ka na slici.

(a) Primjena praga (b) Primjena dilatacije (c) Primjena erozije

Slika 8.4: Rezultati drugog pristupa

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

36

Page 46: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

Budu¢i da je slika nakon primjene funkcije praga:

threshold(src ,src ,128 ,255 , THRESH_BINARY_INV );

skoro ista onoj nakon primjene dilatacije i erozije, to ovaj na£in istanjivanja linija na²ablonu ne daje ºeljene rezultate na kojima bi se temeljila dalja analiza. Me�utim, ukolikobi se koristio neki e�kasniji algoritam istanjivanja ivica poput Zhan-Suen [15] rezultati bibili e�kasniji u pogledu dalje analize.

8.3 Tre¢i pristup - numerisanje detektovanih uglova

U tre¢em pristupu koristi se cilindri£na povr² sa ²ablonom (slika 8.5). Cilj ovog pristupajeste detektovati sve uglove na ²ablonu, zatim ih numerisati po unaprijed de�niranomporetku. Detekcija uglova vr²i se kori²tenjem funkcija:

Slika 8.5: Polazna slika

void goodFeaturesToTrack(InputArray image , OutputArray corners ,

int maxCorners , double qualityLevel , double minDistance ,

InputArray mask=noArray(), int blockSize=3, bool

useHarrisDetector=false , double k=0.04 ),

void cornerSubPix(InputArray image , InputOutputArray corners ,

Size winSize , Size zeroZone , TermCriteria criteria)

Numerisanje uglova se vr²i sukcesivnim sortiranjem niza ta£aka koje predstavljaju detek-tovane uglove na ²ablonu. Aplikacija zahtijeva uno²enje broja uglova koji ¢e biti detekto-vani, a u nastavku su prikazane slike 8.6 pri razli£itom broju zadatih uglova.Detektovane ta£ke sa obiljeºenim mjestima gomilanja su date na slikama 8.7.

Svrha numerisanja detektovanih ta£aka jeste odre�ivanje pozicije ta£aka od interesa kakobi se znale korespodentne ta£ke pri preslikavanju istih sa cilindri£ne povr²i u ravan slike.

Numerisanje ta£aka se vr²i od srednje vertikale i numeri²u se sve ta£ke, odozgo premadolje, a nalaze se unutar de�nirane zone oko trenutne vertikale. �irina zone se smanjujekako se vertikala pribliºava rubovima limenke gdje su ta£ke gu²¢e. Vertikale se obiljeºa-vaju na na£in da je sredi²nja vertikala prva u numeraciji, svaka naredna je prvo desno ili

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

37

Page 47: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

(a) 120 detektovanih uglova (b) 150 detektovanih uglova (c) 170 detektovanih uglova

(d) 180 detektovanih uglova (e) 200 detektovanih uglova (f) 230 detektovanih uglova

Slika 8.6: Detekcija uglova na slici pri razli£itom broju zadanih ta£aka

(a) 120 detektovanih uglova (b) 150 detektovanih uglova (c) 180 detektovanih uglova

Slika 8.7: Prikaz detektovanih uglova pri razli£itom broju zadanih ta£aka

lijevo od sredi²nje. Prikaz numeracije ta£aka pri razli£itim iteracijama dat je na slikama8.8.

Pri malom broju detektovanih ta£aka numeracija biva neta£na, kao ²to je ilustriranona slikama 8.9a i 8.9b.

Ovaj pristup daje dobre rezultate za ve¢i broj detektovanih ta£aka, odnosno njegovae�kasnost ovisi od broja uglova koji se detektuju. Algoritam koji je primjenjen za ovajpristup bazira se na jednostavnom sortiranju niza detektovanih ta£aka. Njegova osnovnamanjkavost jeste to ²to izrazito zavisi od broja detektovanih ta£aka. Kako je od interesaimati ²to vi²e detektovanih ta£aka to ovaj nedostatak ne dolazi do izraºaja jer ve¢i brojta£aka pobolj²ava e�kasnost algoritma pri mapiranju istih. Numerisanje ta£aka s najve-¢om ta£no²¢u se odvija u centralnom dijelu naljepnice gdje ta£ke nisu gusto smje²tene.Numerisanje daje lo²ije rezultate na rubovima limenke gdje se pove¢ava koncentracija

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

38

Page 48: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

(a) Tre¢a iteracija (b) Peta iteracija (c) Sedma iteracija

(d) Osma iteracija (e) Deveta iteracija (f) Deseta

Slika 8.8: Prikaz numeracije ta£aka kroz razli£ite iteracije izvr²avanja

(a) 80 detektovanih ta£aka (b) 100 detektovanih ta£aka

Slika 8.9: Prikaz pogre²nog numerisanja pri malom broju zadatih ta£aka

ta£aka, te dolazi do preklapanja zona tolerancije trenutne vertikale i njene susjedne ²torezultira neispravnom numeracijom. Ovaj problem bi se mogao rije²iti preklapanjem rubalimenke koji je lo²ije numerisan sa slikom snimljenom uz pomo¢ duge kamere. Na taj na-£in je mogu¢e pobolj²ati eksperimentalne rezultate numerisanja rubnih dijelova. Budu¢ida ovaj pristup daje zadovoljavaju¢e rezultate to otvara mogu¢nost za dalje rezvijanje.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

39

Page 49: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

8.4 �etvrti pristup - kori²tenje perspektivne transfor-macije i geometrijske analize

�etvrti pristup se temelji na perspektivnoj transformaciji slike te geometriji opisanoj upoglavlju 3. Perspektivnom transformacijom:

Mat perspektivna = getPerspectiveTransform(data , v2);

primjenjenom nad £etiri poznate ta£ke iz kalibracione ravni i £etiri ta£ke (varijabla v2)iz ravni slike (varijabla data) se dobiva matrica projekcione transformacije. Dobivenamatrica se koristi u funkciji:

warpPerspective(img , PerspektivnaSlika , perspektivna , Size (145 ,190));

radi dobivanja slike nad kojom je primjenjena dobivena transformacija. Slika 8.10 ilustrirascenu nad kojom su vr²eni eksperimentalni rezultati.

Slika 8.10: Prikaz scene kori²tene za pristup £etiri

Koordinate ta£aka u kalibracionoj ravni su izmjerene manuelno postavljanjem ishodi²takoordinatnog po£etka u gornji lijevi ugao, a koordinate ta£aka su:

std::vector <cv::Point2f > v2 = {Point(0, 0), Point (0,190),

Point (145 ,190) , Point (145 ,0)} ;

Odgovaraju¢e ta£ke u ravni slike su odre�ene softverski. Dakle, perspektivnom transfor-macijom re²etka slike se mapira na re²etku kalibracione ravni ²to je prikazano na slici8.11a.Prethodni na£in postavljanja ishodi²ta koordinatnog sistema u gornji lijevi ugao nije uskladu sa analizom opisanom u poglavlju 3. Ukoliko bi pozicije ta£aka bile formirane uodnosu na centar baze limenke, koordinate ta£aka bi imale vrijednosti:

std::vector <cv::Point2f > v2 = {Point(-70, 190), Point (-70,0),

Point (75,0), Point (75 ,190)} ;

Tako da bi se perspektivnom transformacijom dobila slika 8.11b. Budu¢i da se transfor-macija pravilno izvr²i ali je prikazana samo polovina slike to se dolazi do zaklju£ka da senegativne koordinate ne mogu prikazati, upravo je to razlog pomjeranja ishodi²ta u gornjilijevi ugao ²to je podrazumijevana (0, 0) u OpenCV -u.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

40

Page 50: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

(a) (b)

Slika 8.11: Perspektivna transformacija

Naredni korak podrazumijeva mapiranje ta£aka izme�u koordinata (x, y) iz kalibraci-one ravni u ravan (ϕ, h) matemati£kim operacijama datim u poglavlju 2, pri poznatompolupre£niku limenke, udaljenosti kamere od limenke (D) te visine na koju je postavljenakamera (H). Kako nove koordinate (ϕ i h) piksela nisu cjelobrojne to je potrebno iz-vr²iti interpolaciju vrijednosti piksela. Nakon interpolcije na najbliºu vrijednost pikseladobivena je ispravljena cilindri£na naljepnica. Prikaz naljepnice za razli£ite vrijednostiparametara D i H dat je na slikama 8.12.

�etvrti pristup se pokazao kao naje�kasnije rje²enje. Perspektivna transformacija za-visi od manuelnog odre�ivanja koordinata kalibracione ravni, te se ispostavilo da dajeta£ne rezultate. Drugi dio koji uz opisanu geometriju mapira ta£ke iz (x, y) ravni u (ϕ, h)ravan zna£ajno ovisi od poznatih parametara scene r, D i H ²to je prikazano na slici 8.12.Pode²avanjem rasporeda objekata na sceni (pozicija i visina kamere, te pozicija limenke)te odre�ivanjem pomenutih parametara mogu¢e je dobiti bolje ili lo²ije rezultate ispravlja-nja naljepnice. Analizom dobivenih rezultata primjetno je da se prili£no dobro ispravljajucentralni dijelovi naljepnice. Odre�eni dijelovi na ispravljenim slikama nisu mapirani, raz-log tome je £injenica da sve ta£ke iz ravni slike nisu mapirane jer nema presje£nih ta£akasa cilindri£nom povr²i. Pobolj²anje ove anomalije se moºe, donekle, ukloniti upotrebomrazli£itih algoritama za interpolaciju piksela. Konkretno u ovoj aplikaciji je kori²teno za-okruºivanje vrijednsoti piksela na najbliºu vrijednost, ali u praksi puno bolje rezultatedaju bilinearna(engl. bilinear), bikubi£na (engl. bicubic), spline i druge interpolacije.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

41

Page 51: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

(a) D=200, H=80 (b) D=100, H=150 (c) D=200, H=200

(d) D=400, H=80 (e) D=100, H=110 (f) D=150, H=200

Slika 8.12: Prikaz slike nakon ispravljanja pri razli£itim vrijednostima D i H

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

42

Page 52: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Analiza eksperimentalnih rezultata

8.5 Smjernice za budu¢i rad

Zadatak ovog rada je bio koristiti vi²e kamera (minimalno tri), te snimiti naljepnicu sa svihstrana, te uparivanje tako dobivenih slika u cilju rekonstrukcije 2D naljepnice. Kako ovajzadatak zahtijeva vi²e znanja i iskustva u pogledu obrade slike ali i mnogih drugih aspekatakao ²to je optimizacija, to ovaj problem prevazilazi zavr²ni rad prvog ciklusa studija. Ono²to je opisano u eksperimentalnom dijelu ovog rada jeste ispravljanje naljepnice uslikanesa jednom kamerom, te predstavlja podlogu za dalji rad. Teorijski dio ve¢inskim dijelompokriva cjelokupnu analizu koju je potrebno sprovesti u cilju kompletiranja postavljenogzadatka. Istraºivanje koje je mogu¢e nastaviti u skorijoj budu¢nosti bavit ¢e se dobivanjemslika sa tri kamere, te njihovo ispravljanje kori²tenjem opisanog £etvrtog pristupa. Nakonispravljanja naljepnica pripadaju¢ih triju kamera se vr²i detektovanje zna£ajki nekim odalgoritama opisanim u poglavlju 6. Zatim je potrebno povezati zna£ajke na na£in opisanu poglavlju 7. Kona£na slika, odnosno uparivanje vr²i se uz pomo¢ homogra�je [14].Pretpostavka je da ¢e najve¢i problem predstavljati rubni dijelovi naljepnice jer se oninajlo²ije ispravljaju. Mogu¢a su razli£ita neta£na uparivanja zna£ajki te sam rezultatanalize je neizvjestan. Dakle, da bi se osigurali rezultati koji vode ka rje²enju neophodno jekoristiti razli£ite algoritme koji ¢e pobolj²ati rezultate, odnosno potrebno je vr²iti analizuproblema sa aspekta optimizacije ²to prevazilazi mogu¢nosti prvog ciklusa.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

43

Page 53: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Zaklju£ak

Korisnost idejne aplikacije ogleda se u nerijetkoj potrebi iste u industrijskim primjenama.Ekstrakcija naljepnice sa cilindri£nog objekta se koristi pri vizuelnoj inspekciji. U ovomeradu predstavljeni su mogu¢i pristupi mapiranja ta£aka iz ravni slike u cilindri£nu ravan.Nedostatak prvog pristupa ogleda se u nepreciznoj detekciji ruba limenke, pa prema tomese ne moºe iskoristiti kao referenca za odre�ivanje pozicije ta£aka na limenci. Manjkavostdrugog pristupa leºi u nedovoljnom istanjivanju ivica ²to bi se moglo korigovati implemen-tacijom Zhang-Suen [15] ili Neusius-Olszewski algoritama [16]. Tre¢i pristup omogu¢avaispravno numerisanje ta£aka, ali nepravilnosti se pojavljuju pri velikom broju iteracija,odnosno pribliºavanjem rubovima limenke, dok je velika ta£nost obezbije�ena u central-nom regionu valjka. Za ta£nost algoritma potrebno je obezbijediti velik broj detektovanihta£aka, budu¢i da e�kasnost algoritma zavisi upravo od njih. Ukoliko pri detekciji ta£akaveliki broj njih nedostaje, numerisanje se vr²i prema nekontrolisanom slijedu ²to nije odinteresa za ovu aplikaciju. Obzirom da za preciznost mapiranja iz jedne u drugu ravanovisi i od broja preslikavanja to je svakako od interesa imati ²to ve¢i skup detektovanihta£aka. Idealno bi bilo odrediti sve ta£ke na ²ablonu ali kako se radi o cilindri£noj povr²ito je poprili£no oteºano. Problem numeracije rubova jeste to ²to ta£ke koje ne pripa-daju vertikali bivaju joj dodijeljene zbog gustine rasporeda istih. Ukoliko bi se poreddetekcije ta£aka koristila i detekcija linija bilo bi mogu¢e grupisati ta£ke koje pripadajuistoj liniji, time bi se pobolj²ala numeracija rubnih dijelova. �etvrti pristup pokazao senaje�kasnijim. Naime, ovaj pristup omogu¢ava ispravljanje cilindri£ne naljepnice u 2Dnaljepnicu. Ta£nost ovog algoritma ovisi od poznatih parametara (r, D i H) sistemakoji se odre�uju manuelno, a mogu i softverski, ²to ovdje nije slu£aj. Glavni nedostatakovog pristupa jeste sporo izvr²avanje zbog velike koli£ine podataka. Obzirom da je tipMat u OpenCV − u interno izveden kori²tenjem alokacije memorije, a slika je matrica,to sloºene manipulacije mogu biti izrazito memorijski zahtjevne. Kako je rije£ o memo-rijskim resursima i e�kasnosti algoritma u pogledu optimizacije, te kako je u ovome raduobra�en segment ispravljanja cilindri£ne naljepnice, ali ne i njeno cjelovito uparivanje toje ostavljena mogu¢nost daljeg razvijanja aplikacije.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

44

Page 54: Ekstrakcija planarne slike iz cilindri£nih projekcija ...people.etf.unsa.ba/~esokic/zavrsni/2018NEIRA.pdfDoc.dr Emir Soki¢, dipl.ing.el. Odsjek za automatiku i elektroniku Sarajevo,

Literatura

[1] Robert Laganière, OpenCV2 Computer Vision Application Programming Cookbook,Pack publishing, 2011.

[2] Hartley Richard, Andrew Zisserman: Multiple View Geometry in computer vision,Cambridge University Press, 2004.

[3] Russ, John C., The image processing handbook. CRC press, 2007.

[4] Hamid Bazargani, Robert Laganière, Camera Calibration and Pose Estimation fromPlanes, Article in IEEE Instrumentation and Measurement Magazine, December 2015.

[5] Torras, Carme, ed., Computer vision: theory and industrial applications. SpringerScience & Business Media, 2012.

[6] Rafael C. Gonzalez, Richard E. Woods, Steven L. Eddins: Digital Image Processingusing MATLAB, Pearson Prentice Hall, 2009.

[7] Demant, Christian, C. Demant, and Bernd Streicher-Abel. Industrial image processing.Springer-Verlag, 1999.

[8] Sonka M., Hlavac V., Boyle R., Image Processing, Analysis, and Machine Vision.Cengage Learning, 2014.

[9] D. Bouris, A. Nikitakis, I. Papaefstathiou: Fast and E�cient FPGA-based FeatureDetection employing the SURF algorithm, International Conference, 2011.

[10] T. Sledevi£, A. Serackis: SURF Algorithm Implementation on FPGA, Vilnius Gedi-minas Technical University, LT-03227 Vilnius,Lithuania, 2010.

[11] H. Bay, T. Tuytelaars and L. Van Gool. Surf: Speeded up robust features., Computervision-ECCV 2006, 2006.

[12] S. Leutenegger, M. Chli and R. Y. Siegwart.Brisk: Binary robust invariant scalablekeypoints. Computer Vision (ICCV), 2011 IEEE International Conference, 2011.

[13] R. Szeliski.Computer vision: algorithms and applications. Springer Science & Busi-ness Media, 2010.

[14] Ezio Malis, Manuel Vargas Deeper understanding of the homography decompositionfor vision-based control. [Research Report] RR-6303,& INRIA. 2007.

[15] Luisa Lam, Seong-Whan Lee.Thinning Methodologies-A Comprehensive Survey. &1992.

[16] Christian Neusius, Jan Olszewski.A noniterative thinning algorithm.University desSaarlandes, Germany & March 1994.

Pulo, N., "Ekstrakcija planarne slike iz cilindri£nih projekcija kori²tenjemvi²e kamera"

45