SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA DIPLOMSKI RAD br. 318 Detekcija obojenih pravokutnih prometnih znakova Šime Bašić Zagreb,

Величина: px
Почињати приказ од странице:

Download "SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA DIPLOMSKI RAD br. 318 Detekcija obojenih pravokutnih prometnih znakova Šime Bašić Zagreb,"

Транскрипт

1 SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA DIPLOMSKI RAD br. 318 Detekcija obojenih pravokutnih prometnih znakova Šime Bašić Zagreb, lipanj 2011.

2

3 Sadržaj Uvod Ostali pristupi u detekciji prometnih znakova Korišteni pristup u detekciji prometnih znakova Segmentacija upotrebom histograma vjerojatnosti boje i Bayesovog teorema Cannyjev detektor rubova Gradijent iz slike u boji Pronalaženje lanaca rubnih piksela Pronalaženje pravocrtnih segmenata Ulančavanje pravocrtnih segmenata Programska implementacija Implementacija detekcije na temelju boje Implementacija detekcije na temelju rubova Implementacija učenja histograma vjerojatnosti boja Rad s razvojnim okruženjem i ljuskom cvsh Eksperimentalni rezultati Detekcija žutih prometnih znakova Pozitivni rezultati Lažno pozitivni rezultati Lažno negativni rezultati Detekcija plavih prometnih znakova Pozitivni rezultati Lažno pozitivni rezultati Lažno negativni rezultati Detekcija crvenih prometnih znakova Pozitivni rezultati Lažno pozitivni rezultati Lažno negativni rezultati Zaključak Literatura Sažetak... 56

4 Uvod Razvoj tehnologije munjevito mijenja mogućnosti modernog vozila. UvoĎenje sustava baziranih na senzorima u vozila omogućuje vozaču pregled važnih informacija iz okoline vozila. Takvi sustavi imaju veliki potencijal u povećanju razine sigurnosti, udobnosti i učinkovitosti same vožnje pa je razvoj sigurnijih vozila jedan od ciljeva državnih vlada, proizvoďača auta i elektroničke opreme te akademske zajednice. Identifikacija prometnih znakova jedno je od najvećih područja izučavanja inteligentnih transportnih sustava. Ljudska vizualna percepcija ovisi o osobnim fizičkim i mentalnim sposobnostima koje ponekad mogu biti pod utjecajem umora i napetosti. Zbog toga je važno imati sustav za identifikaciju znakova kako bi se pravovremenim informiranjem vozača spriječile prometne nesreće, kako bi se vozača podsjetilo na trenutno ograničenje brzine, odnosno da bi se vozača spriječilo u poduzimanju neprihvatljivih akcija. Automatsko prepoznavanje znakova može služiti u održavanju prometne infrastrukture ili u autonomnoj vožnji bez ljudskog upravljanja. Identifikacija prometnih znakova se sastoji od dvije glavne faze, detekcije i prepoznavanja. U fazi detekcije slika se predprocesira i segmentira ovisno o značajkama znakova kao što su boja ili oblik. Učinkovitost i brzina faze detekcije su važni faktori u cijelom procesu jer smanjuju područje pretraživanja slike i upućuju samo na potencijalne regije slike gdje bi se znakovi mogli nalaziti. U fazi prepoznavanja svaka potencijalna regija se usporeďuje sa skupom značajki da bi se ustanovilo da li regija sadrži znak ili ne. U slučaju pozitivnog odgovora znak se ovisno o dobivenim značajkama svrstava u odgovarajući tip znaka. Detekcija je važniji i zahtjevniji dio jer prometni znakovi mogu biti identificirani samo ukoliko su potencijalne regije slike ispravno i precizno segmentirane. Uspješna detekcija može biti narušena kutom kamere gdje se dogaďa da okrugli znakovi postanu elipse, boja i oblik znaka degenerira uslijed prometnih nesreća i vremenskih neprilika, a složene pozadine dodatno otežavaju uspješnu detekciju. Znakovi su dizajnirani u izraženim bojama stvarajući kontrast s pozadinom kako bi ih vozač lako uočio, ali su te boje osjetljive na varijacije osvjetljenja u sceni. Cilj ovog rada je predstaviti sustav za detekciju prometnih znakova na temelju boje i oblika znaka. U 1. poglavlju su opisani neki drugi pristupi u detekciji znakova. U 2. poglavlju je dan opis korištenih postupaka u ovom radu. Programska implementacija je dana u 3. poglavlju, dok su eksperimentalni rezultati opisani u 4. poglavlju. Zadnje poglavlje sadrži analizu prednosti i slabosti korištenih postupaka. 1

5 1. Ostali pristupi u detekciji prometnih znakova Neki od ostalih pristupa u detekciji prometnih znakova iskorištavaju boju znaka kao diskriminantnu značajku slikovnih regija. Jedan od takvih postupaka je [1] gdje se koristi histogram boja u detekcijskom oknu. Histogram boja u [1] je dvodimenzionalna struktura koja ima onoliko elemenata koliko ima kombinacija vrijednosti komponenata boje u odabranom sustavu boja (npr. za RGB sustav to je ). U navedenom pristupu detekcijsko okno se pomiče po slici, zatim se na svakoj poziciji okna iz slike izračunava histogram boje te se dobiveni histogram usporeďuje s naučenim histogramom. Ta dva histograma se usporeďuju element po element i ukoliko se značajno razlikuju u broju elemenata manjem od nekog zadanog praga tada se trenutno područje okna u slici smatra potencijalnim znakom. Naučeni histogram je prosjek zbroja histograma boje svih slika iz skupa za učenje iz kojeg je dodatno izračunat i histogram standardne devijacije čiji su elementi korišteni kao dopuštena mjera odstupanja pri usporedbi histograma. Prednosti ovog pristupa su kod detekcije objekata čija je rotacija ili pozicija u sceni nepoznata, a mane su to što se ignorira oblik traženog objekta. U [2] se koristi takoďer jedan od uobičajenih pristupa u detekciji znakova na temelju boje. Postupak se temelji na transformaciji izvornog sustava boje RGB u neki od ostalih sustava poput HSI. Zatim se svaki piksel usporeďuje sa zadanim pragovima komponenata sustava boja čime se piksel klasificira kao znak ili ne. U [2] je izvorna slika iz RGB sustava transformirana u HSI sustav. Nakon toga su na svaki piksel primijenjeni unaprijed zadani pragovi H, S i I komponente za traženu boju. Ukoliko je svaka komponenta boje piksela odgovarala zadanim granicama tada je piksel klasificiran kao znak. Za spremanje piksela klasificiranih kao znak korištena je binarna slika gdje su pikseli znaka obilježeni bijelom bojom, a svi ostalo crnom. Zatim je za sve bijele piksele iz binarne slike proveden postupak narastanja gdje su svi susjedni bijeli pikseli grupirani u zasebne cjeline. I na kraju je za svaku od tih cjelina odreďen omeďujući pravokutnik. Postupak je pokazao neželjenu osjetljivost na neke boje što bi se moglo popraviti tako da se zadani pragovi za H, S i I komponente odrede na temelju skupa znakova ciljanog tipa. TakoĎer bi se postupak mogao popraviti ako bi se pronaďene regije dodatno filtrirale analizom oblika traženih znakova. 2

6 Pristup u [3] se takoďer temelji na transformaciji sustava boja, ali uz korištenje dodatnih tehnika kao što su horizontalna i vertikalna projekcija slike. Prvo se početni RGB sustav boja transformira u HSV sustav (HSV slika). Zatim se svaka od različitih kombinacija boje iz HSV sustava kvantizira u neku od osam diskretnih razina boje. Detekcija se provodi tako da se stvori binarna slika za traženu boju znaka gdje će bijelom bojom biti označeni pikseli čija boja na HSV slici nakon kvantizacije odgovara traženoj boji. Zatim se na toj binarnoj slici vrši horizontalna i vertikalna projekcija. Horizontalna projekcija se slično kao i vertikalna provodi tako da se u odgovarajući element polja spremi broj bijelih piksela s odgovarajućom y komponentom. Onda se iz projekcijskih polja stvara niz nula i jedinica gdje se jedinica pridružuje elementu polja čija je vrijednost unutar zadanih pragova. Svaki kontinuirani niz jedinica u nekom smjeru se proglašava mogućim znakom ukoliko je taj niz veći od zadanog praga. Onda se stvara kartezijev produkt svih kandidata prethodno dobivenih u vertikalnom i horizontalnom smjeru. Za konačan izbor pozicije znaka uzima se samo jedan kandidat čiji su vertikalni i horizontalni nizovi jedinica najveći meďu svim ostalim kandidatima. Pristup u [4] koji se koristi za detekciju okruglih crvenih znakova bi možda mogao u modificiranoj verziji poslužiti za detekciju pravokutnih znakova. Primjenjuje se kombinirani pristup detekcije oblika i boje. Na početku se slika transformira iz RGB sustava u HSV sustav boja. Nakon toga se na HSV sliku primjenjuju pragovi za crvenu boju čime se dobiva binarna slika gdje su crvenom bojom označeni svi pikseli koji pripadaju crvenom rubu znaka, a crnom bojom svi ostali. Zatim se na na svaku grupu susjednih bijelih piksela primjenjuje ispitivanje kružnog oblika da se provjeri da li to područje segmentirano bojom uistinu predstavlja okrugli crveni znak. Ispitivanje kružnog oblika se provodi na način da se odredi jednadžba kružnice kroz tri točke odabirom tri bijela piksela iz odgovarajuće grupe piksela koji bi trebali pripadati rubu znaka. Nakon što je dobivena jednadžba kružnice potrebno je za svaki bijeli piksel iz odgovarajuće grupe provjeriti udaljenost do središta dobivene kružnice. Ukoliko je srednja kvadratna pogreška udaljenosti svih bijelih piksela iz grupe manja od zadanog praga greške tada promatrana regija slike odgovara prometnom znaku. Drugačiji pristup opisan je u [5] gdje su za detekciju crvenih znakova korištene dvoslojne neuronske mreže uz kombiniranje značajki boje i oblika znaka. Implementirane su dvije neuronske mreže, jedna za detekciju znakova na temelju boje i jedna za detekciju na temelju rubova. Za svaki neuron u izlaznom sloju se provjerava da li je piksel kojeg on 3

7 predstavlja potencijalni centar prometnog znaka. Svi pikseli slike imaju svoj pripadajući neuron u ulaznom i izlaznom sloju mreže, a svaki neuron izlaznog sloja je povezan sa svim neuronima ulaznog sloja. Prva neuronska mreža na ulaznom sloju neurona prima boju svih piksela u RGB sustavu, transformira dobivene boje u HSI sustav te uzima samo hue komponente. Na izlazu tih neurona dobije se mjera sličnosti primljene hue komponente i poznate hue vrijednosti za crvenu boju. Na ulaz neurona izlaznog sloja dolazi mjera sličnosti pomnožena s težinom veze izmeďu odgovarajućih neurona. Težina veze preferira radijus traženog objekta unutar zadanih granica te eliminira sve neurone ulaznog sloja čiji su pikseli preblizu ili predaleko od piksela promatranog neurona izlaznog sloja. Izlaz neurona izlaznog sloja je zbroj umnožaka mjere sličnosti i težine veze svih neurona ulaznog sloja koji su s tim izlaznim neuronom povezani. Druga neuronska mreža koja detektira mogući centar znaka na temelju rubova prima na ulazu iznos gradijenta za sve piksele slike. Izlaz tih neurona se množi s težinom veze izmeďu dvaju slojeva. Veza kažnjava sve neurone čiji su pikseli predaleko od piksela odgovarajućeg izlaznog neurona, a potpuno eliminira neurone čiji su pikseli bliže od zadanog praga. Oba izlaza dviju mreža se kombiniraju kako bi se dobila konačna mjera da li je odgovarajući piksel mogući centar znaka. Piksel će postati centar znaka u slici ako je njegova mjera lokalni maksimum u promatranom dijelu slike. 4

8 2. Korišteni pristup u detekciji prometnih znakova 2.1. Segmentacija upotrebom histograma vjerojatnosti boje i Bayesovog teorema Prometni znakovi su dizajnirani da budu lako uočljivi pri raznim varijantama dnevne svjetlosti što se primarno postiže upotrebom jakih diskriminantnih boja. Zbog toga se smatra da bi boja znaka mogla biti pouzdana značajka za detekciju znakova. Neke poteškoće koje se mogu javiti su pojave da boja znaka blijedi uslijed duge izloženosti sunčevoj svjetlosti. Boja znaka je drugačija ovisno o vremenskim uvjetima kao što su magla, kiša ili snijeg. Oblačno vrijeme i varijacije osvjetljenja te razne sjene značajno mogu promijeniti nijanse boje znaka. U ovom radu korišten je pristup u detekciji znakova upotrebom uvjetne vjerojatnosti na same piksele slike [6]. Dva histograma vjerojatnosti boje, histogram vjerojatnosti boje znaka i boje pozadine, korišteni su kao spremnici za učenje vjerojatnosti i kasnije za primjenu vjerojatnosnih zakona. Oba histograma imaju elemenata što je jednako broju različitih boja u RGB sustavu. Učenje vjerojatnosti se provodi na odabranom skupu slika za učenje. Slike za učenje su pribavljene kamerom montiranom na autu te se na njima nalaze znakovi od interesa i pozadinski elementi poput ceste, drveća ili zgrada. Prethodno se iz odgovarajućih datoteka dohvaćaju informacije o poziciji i dimenzijama svih znakova od interesa na slikama iz skupa za učenje. U procesu učenja vjerojatnosti iterira se po svim pikselima svih slika za učenje te se za svaki piksel koji pripada traženom prometnom znaku uveća pripadajući element histograma vjerojatnosti boje znaka čiji je indeks jednak boji promatranog piksela. Isto se napravi za sve piksele iz slika za učenje koji ne pripadaju traženom znaku, odnosno pripadaju pozadini te se tada uveća pripadajući element histograma vjerojatnosti boje pozadine čiji je indeks jednak boji promatranog piksela. Nakon što je obraďena i zadnja slika za učenje u elementima histograma nalazi se broj piksela znaka, odnosno piksela pozadine odgovarajuće boje iz cijelog skupa slika za učenje. Prethodno opisano može se pojasniti i na slici 1. koja trenutno predstavlja sliku iz skupa za učenje. Neka je traženi tip znaka kojeg želimo detektirati na skupu slika za testiranje upravo pravokutni žuti znak iz slike 1. označen crvenim okvirom. Cilj je opisane informacije o pikselima slike koji pripadaju traženom tipu znaka spremiti u odgovarajući 5

9 histogram. Da bi se saznalo koji pikseli pripadaju znaku, a koji pozadini konzultira se pripadajući redak odgovarajuće datoteke gdje je zapisana informacija o poziciji i dimenziji znaka u promatranoj slici. Upravo ta informacija odreďuje dimenzije i poziciju crvenog okvira na slici 1. gdje je sada jasno da se pikselima znaka smatraju svi pikseli unutar crvenog okvira, a sve ostalo je pozadina. Da bi se u elementima histograma dobile vrijednosti vjerojatnosti iz intervala [0, 1] svaki element histograma vjerojatnosti boje znaka, odnosno pozadine se dijeli sa zbrojem vrijednosti svih elemenata histograma vjerojatnosti boje znaka, odnosno pozadine. Nakon ove faze u svakom elementu histograma zapisana je uvjetna vjerojatnost koja kaže koliko je vjerojatno da znak, odnosno pozadina sadrži piksel čija je boja jednaka indeksu odgovarajućeg elementa histograma. Slika 1. Ilustracija učenja histograma vjerojatnosti boje Time je gotovo učenje vjerojatnosti i pristupa se testiranju, odnosno segmentaciji na skupu slika za testiranje pri čemu se naučene uvjetne vjerojatnosti primjenjuju u Bayesovom teoremu (1). P( A B) P( B A) P( A) P( B) (1) Za pojašnjenje detekcija na temelju boje i ruba u nastavku će poslužiti slika 1. u ulozi testne slike. Proces segmentacije započinje tako da se iterira po svim pikselima slika 6

10 za testiranje i ukoliko je lijeva strana izraza (4) za boju promatranog piksela veća od desne strane tada se taj piksel smatra dijelom prometnog znaka te se ulazi u rekurziju gdje se dalje ispituju njegovi susjedi. P( x) P( x) (2) O B P( x O) P( O) P( x) P( x B) P( B) P( x) (3) P( x O) P( x ) B P( B) P( ) O (4) U izrazima (2), (3) i (4) O označava prometni znak, B pozadinu, a x boju piksela. Izrazi (3) i (4) su dobiveni primjenom Bayesovog teorema (1) na izraz (2). Uvjetne vjerojatnosti P( x), odnosno P( x) iz izraza (2) kažu koliko je vjerojatno da boja x O B promatranog piksela pripada znaku, odnosno pozadini. Ukoliko je lijeva vjerojatnost u (2) veća od desne znači da je vjerojatnije da je promatrani piksel dio znaka pa se u tom slučaju taj piksel prihvaća kao element znaka. Vjerojatnosti P x ) i P x ) iz izraza (3) i ( O ( B (4) se uzimaju iz odgovarajućih elemenata histograma vjerojatnosti boje znaka i pozadine. Omjer apriorne vjerojatnosti pozadine P( B ) i znaka P( O ) u izrazu (4) pridružen je theti ( ). Konfiguriranjem thete moguće je jednostavno mijenjati učinkovitost algoritma. Nakon što postupak pronaďe susjedni piksel za kojeg je takoďer zadovoljen izraz (4) ide se razinu dublje u rekurziju. Na povratku iz rekurzije nakon što je pronaďena grupa susjednih piksela za koje vrijedi izraz (4) ispituje se veličina grupe. Ukoliko je grupa piksela dovoljno velika tada se sprema u memoriju kao potencijalna pozicija prometnog znaka. Zatim se nastavlja iteracija po ostalim pikselima slike gdje se traži sljedeći neposjećeni piksel za kojeg vrijedi izraz (4). Piksel se označava posjećenim ako se za njega u rekurziji ispostavi da vrijedi (4). Rekurzivno pronalaženje susjednih piksela za koje vrijedi (4) slično je algoritmu narastanja uz primjenu poplavljivanja gdje se provjeravaju svi susjedni pikseli promatranog piksela. PronaĎene grupe piksela predstavljaju konačan rezultat detekcije znakova na temelju boje. Nakon što su pronaďene grupe piksela u binarnoj slici se svi posjećeni pikseli označe bijelom, a svi ostali pikseli crnom bojom (Slika 2.). 7

11 Slika 2. Binarna slika dobivena primjenom izraza (4) na piksele slike 1. Na binarnoj slici (Slika 2.) vidi se jedna istaknuta grupa piksela koja pripada upravo žutom pravokutnom znaku. Na kraju je još za potrebe testiranja potrebno iscrtati pravokutni okvir oko pronaďenih grupa piksela koje zadovoljavaju dimenzije pravokutnih prometnih znakova (Slika 3.). Slika 3. Konačan rezultat detekcije znakova na temelju boje za sliku 1. Na slici 3. se vidi da je algoritam uspio pronaći žuti pravokutni znak na temelju boje. 8

12 2.2. Cannyjev detektor rubova Cannyjev detektor rubova [7] jedan je od najpoznatijih postupaka detekcije rubova u slici čije se autorstvo pripisuje J. Cannyju. Cannyjev detektor sačinjavaju četiri faze: glaďenje, izračun gradijenta, stanjivanje rubova, primjena pragova. Na početku se slika u boji transformira u sivu sliku te se obraďuje Gaussovim filtrom kako bi se uklonio neizbježni šum. Efikasnost i veličina Gaussovog filtra je odreďena parametrom sigma ( ), tj. standardnom devijacijom. Povećanjem parametra sigma uzima se u obzir šire susjedstvo oko promatranog piksela što posljedično rezultira povećanim filtrom, a time i dugotrajnijim procesom glaďenja. Na izlazu prve faze dobije se blago zamućena slika. U drugoj fazi detektora se za svaki piksel zaglaďene slike računa iznos i smjer pružanja vektora gradijenta. Iznos gradijenta se za svaki piksel računa kao razlika intenziteta susjednih piksela u x, odnosno y smjeru. U trećoj fazi se provodi stanjivanje rubova na slici iznosa gradijenta. Stanjena slika se u četvrtoj fazi obraďuje s dva zadana relativna praga koji odreďuju da li je piksel dio ruba ili ne čime se eliminiraju nijanse sive boje te se dobiva binarna slika (Slika 4.). Algoritam ulančavanja pravocrtnih segmenata prima na ulazu u fazu pronalaženje lanaca rubnih piksela navedenu binarnu sliku za daljnju obradu. Slika 4. Izlaz Cannyjevog detektora ruba za sliku 1. 9

13 2.3. Gradijent iz slike u boji Na slikama za testiranje je uočeno da su boje nekih znakova u jakom kontrastu s pozadinom što je dovelo do ideje da bi se rubovi u slici možda mogli učinkovitije pronaći iz slike u boji [8], a ne iz sive slike kao kod Cannya. Da bi se to postiglo potrebno je za svaki piksel odrediti iznos i smjer vektora gradijenta iz slike u boji. Postupak započinje slično kako i kod Cannya tako da se slika u boji zagladi Gaussovim filtrom kako bi se uklonio šum u slici. GlaĎenje se provodi posebno na svakoj komponenti RGB sustava boje. U sljedećoj fazi gradijent se računa svojstvenom dekompozicijom dvodimenzionalne matrice Q (6) čiji su elementi kombinacija komponenti gradijenta odgovarajućeg piksela na svakom od RGB slojeva. r g b y x y J x g y (5) x r b r x g x bx rx ry g x g y bx b T y Q J J (6) rx ry g x g y bx by ry g y by U izrazu (5) r x i r y, g x i g y, odnosno b x i b y predstavljaju komponente gradijenta promatranog piksela na crvenom, zelenom, odnosno plavom sloju dobivene oduzimanjem intenziteta odgovarajućih susjednih piksela. Rezultat svojstvene dekompozicije matrice Q je umnožak matrica (7) gdje je D dijagonalna matrica koja na dijagonali sadrži svojstvene vrijednosti matrice Q, a stupci matrice R su svojstveni vektori matrice Q. Q T R D R (7) Svojstvene vrijednosti dobiju se računanjem korijena karakterističnog polinoma nastalog rješavanjem determinante (8). Q I 0 (8) Svojstveni vektori se dobiju uvrštavanjem pronaďenih svojstvenih vrijednosti u izraz (9). Q v v (9) 10

14 Za iznos, odnosno smjer gradijenta promatranog piksela uzima se najveća svojstvena vrijednost matrice Q, odnosno svojstveni vektor matrice Q koji pripada najvećoj svojstvenoj vrijednosti. Dobivena slika iznosa gradijenta prosljeďuje se fazi stanjivanja Cannyjevog detektora na daljnju obradu Pronalaženje lanaca rubnih piksela Ulaz u fazu pronalaženja lanaca rubnih piksela [9] je izlaz Cannyjevog detektora. S detektorom rubova započinje algoritam detekcije znakova na temelju oblika uz pomoć rubova slike. Nakon Cannyjevog detektora poznato je samo koji pikseli slike pripadaju rubu, ali za sljedeće faze u detekciji znakova potrebno je pronaďene piksele rubova organizirati u neprekinute lance. Neprekinuti lanci rubnih piksela stvaraju se rekurzivno tako da se funkcija koja sprema piksele lanca u memoriju poziva za susjedne piksele pronaďenog piksela ruba. Ukoliko je jedan od susjeda promatranog piksela takoďer dio ruba tada se funkcija dalje poziva za njegove susjede i tako sve dok za trenutni piksel postoje susjedni pikseli ruba. Ukoliko je broj piksela pronaďenog lanca manji od zadanog praga tada se taj lanac odbacuje. Nakon ove faze poznati su svi bitni lanci piksela ruba te se prosljeďuju sljedećoj fazi pronalaženja pravocrtnih segmenata. Na slici 5. iscrtani su svi prihvaćeni lanci rubnih piksela dobiveni analizom slike rubova. Slika 5. Rezultat metode pronalaženja lanaca rubnih piksela za sliku 1. 11

15 2.5. Pronalaženje pravocrtnih segmenata Cilj ove metode [9] je u prethodno dobivenim lancima rubnih piksela pronaći samo pravocrtne segmente pod kutom od 0 i 90 što je u skladu s oblikom pravokutnih znakova. Metoda započinje tako da se kroz početni i završni piksel svakog lanca povuče imaginarni pravac. Onda se traži piksel lanca s najvećom udaljenosti do tog imaginarnog pravca prema izrazu (10). A x B y C d (10) D A y 1 y 2 B x 2 x1 C y2 x1 y1 x2 D ( x y x2 ) ( y1 2 ) U izrazima iznad x 1, x 2, y 1 i y 2 su koordinate početnog i završnog piksela lanca. Ako je najveća pronaďena udaljenost do lanca veća od zadanog praga tada se lanac dijeli na dva dijela na mjestu piksela s najvećom udaljenosti te se postupak rekurzivno ponavlja za oba dijela lanca. Ukoliko je pronaďena maksimalna udaljenost do lanca manja od zadanog praga koji označava maksimalnu dopuštenu devijaciju tada se taj dio lanca smatra pravocrtnim te se dalje provjerava da li taj segment lanca zadovoljava ograničenja duljine i kuta. Kut pravocrtnog segmenta jednostavno se odredi funkcijom arkus tangens budući da su poznati početni i završni pikseli segmenta. Pravocrtni segment se prihvaća i sprema u memoriju samo ako je njegova duljina veća od zadanog ulaznog parametra minimalne duljine te ako dobiveni kut uz odgovarajuće odstupanje ulazi u jednu od sljedeće dvije kategorije: 0 ili 90. Na slici 6. prikazana je izlazna slika ove faze gdje su bojama označeni prihvaćeni pravocrtni segmenti pod kutovima od 0 i

16 Slika 6. Rezultat metode pronalaženja pravocrtnih segmenata za sliku Ulančavanje pravocrtnih segmenata Ulančavanje pravocrtnih segmenata je zadnji korak u detekciji prometnih znakova na temelju oblika, odnosno rubova. Metoda na ulazu prima pronaďene pravocrtne segmente iz prethodnog koraka. Cilj ove metode je iz pronaďenih pravocrtnih segmenata konstruirati pravokutne likove koji bi trebali odgovarati pravokutnim znakovima u slici. To se radi tako da se na početku za svaki segment odrede njemu susjedni segmenti ovisno o zadanim pragovima meďusobnih udaljenosti. Zatim se rekurzivno pristupa ulančavanju segmenata gdje se susjedni horizontalni i vertikalni segmenti nadovezuju jedan na drugoga sve dok se nadovezivanjem ne zatvori struktura slična pravokutniku. Ako su horizontalne, odnosno vertikalne stranice pravokutnog lika stvorenog nadovezivanjem slične duljine tada se smatra da taj lik označava prometni znak. Detaljnije, ulančavanje započinje tako da se za odabrani horizontalni segment pronaďe susjedni vertikalni segment nakon čega se kreće u izradu prve vertikalne stranice pravokutnika. Zatim se na taj vertikalni segment nadovezuje nula ili više susjednih vertikalnih segmenata prije nego se pronaďe susjedni horizontalni segment. Nakon pronalaska navedenog horizontalnog segmenta započinje izrada prve horizontalne stranice pravokutnika. Na pronaďeni horizontalni segment nadovezuje se nula ili više susjednih horizontalnih segmenata prije nego se pronaďe susjedni vertikalni segment. Nakon pronalaska vertikalnog segmenta započinje izrada druge vertikalne 13

17 stranice pravokutnika. Na pronaďeni vertikalni segment nadovezuje se nula ili više susjednih vertikalnih segmenata prije nego se pronaďe susjedni horizontalni segment. Nakon pronalaska horizontalnog segmenta provjerava se da li su konstruirane vertikalne stranice pravokutnog lika slične duljine. Ako je prethodno istinito pristupa se izradi druge, tj. zadnje horizontalne stranice pravokutnika, odnosno ako nije istinito pristupa se novoj izradi druge vertikalne stranice pravokutnika. Pri izradi druge horizontalne stranice pravokutnika na pronaďeni horizontalni segment nadovezuje se nula ili više susjednih horizontalnih segmenata sve dok se ne doďe do početnog horizontalnog segmenta čime se konstrukcija pravokutnika zatvara. Ukoliko duljine stranica pravokutnog lika zadovoljavaju zadane pragove duljina tada se taj lik deklarira kao prometni znak. Slika 7. prikazuje rezultat ulančavanja gdje su odabrani segmenti (označeni plavom bojom) žutog pravokutnog znaka nadovezani jedan uz drugoga u pravokutnu strukturu. Slika 7. Rezultat metode ulančavanja pravocrtnih segmenata za sliku 1. Na slici 8. se vidi kako se ulančavanje provodi ako se kreće od segmenta označenog s 1 pa na desnu stranu u smjeru segmenta 2. U tom smjeru redom se ulančavaju segmenti označeni brojevima 1, 2, 3 i 4. 14

18 Slika 8. Princip ulančavanja pravocrtnih segmenata Još je samo potrebno zbog testiranja iscrtati pravokutne okvire oko prihvaćenih pravokutnih likova (Slika 9.). Slika 9. Konačan rezultat detekcije znakova na temelju rubova za sliku 1. 15

19 3. Programska implementacija Algoritam detekcije znakova razvijan je unutar ljuske cvsh (computer vision shell). Uloga ljuske je pojednostavljenje rada s algoritmima računalnog vida, odnosno njihova učinkovita primjena na ulazne slike i videa. Ljuska cvsh i programski dio ovog diplomskog rada napisani su u programskom jeziku C++. Glavna programska komponenta koja je ujedno ulaz u proces detekcije znakova nalazi se u datoteci alg_signdetection.cpp. U njoj je implementirana klasa alg_signdetection koja ima metodu alg_signdetection::process() gdje se izvršava cjelokupna detekcija prometnih znakova na temelju boje, odnosno rubova pozivanjem odgovarajućih metoda. virtual void process( const img_vectorabstract& src, const win_event_vectorabstract& events, int msdayutc); Obrada slike odabranim korisničkim algoritmom započinje tako da se algoritam postavi aktivnim i onda ljuska poziva virtualnu metodu process() odabranog algoritma. Argument src u pozivu metode process() označava ulaznu sliku na kojoj se primjenjuju metode detekcije znakova. Unutar metode process() moguće je odabrati detekciju znakova na temelju boje, rubova ili objedinjeno na temelju i boje i rubova. Za rad s pikselima u programskoj implementaciji korištena je struktura Piksel. struct Piksel{ int x; int y; }; Struktura je definirana u datoteci ext_bayestheorem.hpp. Prije same detekcije potrebno je za potrebe testiranja saznati pozicije i dimenzije označenih traženih znakova u ulaznoj slici. Za svaku ulaznu sliku postoji redak u datoteci sekvence3_boja.seq gdje su zapisane dimenzije i pozicije svih označenih znakova u toj slici. Boja iz naziva datoteke ovisi o boji traženih znakova iz trenutnog testnog skupa slika. Podatci o označenim znakovima spremaju se u vektor rectangles. std::vector< std::vector<int> > rectangles; 16

20 Elementi vektora rectangles su takoďer vektori veličine četiri elementa gdje svaki od tih vektora sadrži visinu, širinu te koordinate gornjeg lijevog kuta okvira označenog znaka Implementacija detekcije na temelju boje Prije same detekcije u članske varijable signhist_ i backgndhist_ klase alg_signdetection učitavaju se naučeni histogrami vjerojatnosti boje znaka i pozadine iz odgovarajućih datoteka. Svaki histogram zahtijeva 128 MB memorije. std::vector<double> signhist_; std::vector<double> backgndhist_; Detekcija prometnih znakova na temelju boje (poglavlje 2.1.) provodi se pozivom metoda rekfindsignpixels() i findsignpixels() koje se nalaze u datoteci ext_bayestheorem.cpp. void rekfindsignpixels(int i, int j); void findsignpixels(double theta_, img_wrap& imgbin); Detekcija znakova započinje pozivom metode findsignpixels() kojoj se prosljeďuje ulazni parametar theta_ koji označava thetu iz izraza (4) i binarna slika imgbin. Metodi se takoďer preko eksternih deklaracija (extern) iz datoteke ext_bayestheorem.hpp prosljeďuju histogrami vjerojatnosti boje i pikseli ulazne slike iz pozivajuće klase alg_signdetection. extern double* signhist; extern double* backgndhist; extern int* pbits_; Polje signhist sadrži vjerojatnosti pojavljivanja odgovarajuće boje traženog znaka, polje backgndhist sadrži vjerojatnosti pojavljivanja odgovarajuće boje pozadine, dok polje pbits_ sadrži piksele ulazne slike. U petlji se iterira po svim pikselima slike i kad se pronaďe piksel za čiju boju je zadovoljen izraz (4) tada se za taj piksel poziva rekurzivna funkcija rekfindsignpixels(). Uvjetne vjerojatnosti iz izraza (4) se za odgovarajuću boju uzimaju iz histograma vjerojatnosti boje znaka 17

21 signhist, odnosno pozadine backgndhist. Funkcija rekfindsignpixels() se principom poplavljivanja poziva rekurzivno za sve susjedne piksele promatranog piksela čija boja takoďer zadovoljava izraz (4). Dubina rekurzije je zbog kapaciteta stoga i smanjenja broja lažno pozitivnih detekcija ograničena parametrima maxgroupsize i maxdepth. Ukoliko je broj susjednih piksela čija boja zadovoljava izraz (4) nakon povratka iz rekurzije veći od zadanog praga veličine grupe mingroupsize tada se ta grupa piksela sprema u spremnik piks i predstavlja potencijalnu poziciju prometnog znaka. Piksel* piks; Parametri mingroupsize i maxgroupsize odreďeni su razmatranjem dimenzija traženih znakova iz skupa slika za testiranje. Svaki piksel slike posjećuje se samo jednom što se postiže upisom oznake za posjećene piksele u polje signpixels. Prije samog izlaska iz funkcije findsignpixels() puni se binarna slika imgbin na temelju označenih piksela iz polja signpixels. int* signpixels; Označavanje grupe pravokutnim okvirom za potrebe testiranja provodi se tako da su koordinate donjeg lijevog kuta okvira odreďene x, odnosno y koordinatom piksela s najmanjom x, odnosno piksela s najmanjom y koordinatom u grupi. Koordinate gornjeg desnog kuta okvira odreďene su x, odnosno y koordinatom piksela s najvećom x, odnosno piksela s najvećom y koordinatom u grupi Implementacija detekcije na temelju rubova Uspješnost detekcije znakova na temelju rubova najviše ovisi o uspješnosti pronalaženja rubova znaka što se postiže detektorom rubova. Zbog toga se ulazna slika na početku obraďuje Cannyjevim algoritmom [7] nakon čega se dobiva slika rubova. Prve dvije faze Cannyjevog algoritma, glaďenje i izračun gradijenta, moguće je umjesto na sivoj slici provesti na slici u boji (poglavlje 2.3.). GlaĎenje slike i izračun gradijenta iz slike u boji ostvaruje se pozivom metoda colorfilter() i colorgradient() iz datoteka ext_gladjenje.cpp, odnosno ext_gradijent.cpp. 18

22 int colorfilter( double sigma, const img_wrap& imgsrc, double* imgfirstsmooth, double* imgfinalsmooth); int colorgradient( int margin, const double* imgfinalsmooth, img_wrap& imggrad, img_wrap& imgphi); U deklaraciji metode colorfilter() parametar imgsrc označava ulaznu sliku u boji, imgfirstsmooth je slika imgsrc zaglaďena jednodimenzionalnim Gaussovim filtrom samo u vertikalnom smjeru, dok je slika imgfinalsmooth dobivena glaďenjem zaglaďene slike imgfirstsmooth jednodimenzionalnim Gaussovim filtrom u horizontalnom smjeru. U deklaraciji metode colorgradient() argument margin označava marginu slike, imggrad je slika u koju će se spremiti izračunate amplitude vektora gradijenta, dok je imgphi slika u koju će se spremiti izračunati smjerovi vektora gradijenta. Obje metode vraćaju novu vrijednost margine slike. Unutar metode colorgradient() iterira se po pikselima slike te se računaju komponente gradijenta na svakom od RGB slojeva. Zatim se za promatrani piksel poziva metoda eigen() gdje se računa svojstvena dekompozicija matrice Q (6). void eigen(double q1, double q2, double q3, double q4, double * e1, double * e2, double * v); Parametri q1, q2, q3 i q4 predstavljaju elemente matrice Q, e1 i e2 su pokazivači na komponente svojstvenog vektora koji odgovara najvećoj svojstvenoj vrijednosti v matrice Q. Pozivom funkcije quad() dobije se vrijednost većeg korijena karakterističnog polinoma, odnosno dobije se veća svojstvena vrijednost matrice Q. double quad(double a, double b, double c); Parametri a, b i c su koeficijenti kvadratne jednadžbe, tj. karakterističnog polinoma. Nakon što je dobivena slika rubova potrebno je piksele ruba organizirati u povezane strukture. Pozivom metode findedgechains() iz neorganiziranih piksela ruba dobivenih Cannyjevim detektorom stvaraju se lanci piksela ruba. 19

23 void findedgechains( int margin, const img_wrap& imgthreshold, img_wrap& imgsegment); void rekfindedgechains( int margin, int i, int j, img_wrap& imgsegment); Metoda findedgechains() prima argumente margin koji označava marginu slike, sliku rubova imgthreshold dobivenu iz Cannyjevog detektora i sliku imgsegment u koju će se otisnuti pronaďeni lanci piksela ruba. Unutar metode findedgechains() iterira se po svim pikselima slike imgthreshold te se za svaki piksel ruba poziva rekurzivna metoda rekfindedgechains(). Metoda se dalje poziva za susjedne piksele koji pripadaju rubu. Ako je nakon povratka iz rekurzije pronaďeno piksela ruba više od zadanog praga minchainlength tada se ti pikseli spremaju u vektor chains kao vektor Piksel elemenata. std::vector< std::vector<piksel> >chains; Metode za pronalaženje lanaca rubnih piksela nalaze se u datoteci ext_findchains.cpp. Zatim je u dobivenim lancima potrebno pronaći samo pravocrtne segmente kako bi se kasnije mogli konstruirati pravokutni likovi slični oblicima prometnih znakova. Pravocrtni segmenti se stvaraju pozivom metode findstraightseg() iz datoteke ext_findlines.cpp. void findstraightseg( win_ann& annlines, double linesize, double maxdev); Vektor lanaca chains dostupan je metodi findstraightseg() preko eksterne deklaracije u datoteci ext_findchains.hpp. extern std::vector< std::vector<piksel> >chains; Metodi se prosljeďuju anotacija annlines u koju se spremaju pronaďeni pravocrtni segmenti kako bi se kasnije iscrtali na odabranoj slici, minimalna prihvatljiva duljina pravocrtnog segmenta linesize te maksimalna dopuštena devijacija od pravca maxdev. Unutar metode findstraightseg() za svaki lanac iz chains poziva se rekurzivna metoda rekfindstraightseg(). 20

24 void rekfindstraightseg ( int a, int first, int last); Argument a označava indeks promatranog lanca u vektoru chains, first i last su indeksi piksela a-tog lanca iz chains koji označavaju promatrani dio lanca. Metoda za promatrani dio lanca provjerava da li se u tom dijelu nalaze pravocrtni segmenti. To se radi tako da se kroz početni i završni piksel dijela lanca provuče pravac. Zatim se pozivom metode findmaxdev() pronaďe udaljenost i indeks piksela s najvećom udaljenosti do navedenog pravca (10). MaxDev findmaxdev (int a, int first, int last); Metoda findmaxdev() prima iste argumente s kojima je pozvana metoda rekfindstraightseg(). Tip povratnog rezultata je struktura MaxDev. struct MaxDev{ double value; int x; int y; int index; }; Struktura MaxDev u index sprema indeks piksela s najvećom udaljenosti u promatranom dijelu lanca, x i y su koordinate navedenog piksela, a value predstavlja udaljenost tog piksela do imaginarnog pravca. Ukoliko je najveća pronaďena udaljenost manja od argumenta maxdev proslijeďenog metodi findstraightseg() i ako je duljina promatranog dijela lanca veća od proslijeďenog argumenta linesize tada se za promatrani dio lanca pristupa računanju kuta. Kut se računa pomoću funkcije arkus tangens atanl. Ako je dobiveni kut jednak 0 ili 90 tada se taj dio lanca sprema u vektor pravocrtnih segmenata lines, a kut segmenta u vektor kutova angles. std::vector< std::vector<piksel> >lines; std::vector<int> angles; Kut segmenta se računa uz odreďeno odstupanje koje se nalazi u varijabli angleoffset. Spremljeni pravocrtni segment se po tipu ne razlikuje od lanca rubnih piksela. Pravocrtnom segmentu s indeksom i iz lines odgovara kut s indeksom i iz angles. Ako je najveća pronaďena udaljenost iz MaxDev veća od argumenta maxdev 21

25 tada se metoda rekfindstraightseg() poziva rekurzivno za dva dijela promatranog lanca nastala diobom na mjestu piksela s najvećom udaljenosti. U sljedećem koraku pristupa se ulančavanju pravocrtnih segmenata u pravokutne likove koji bi trebali predstavljati potencijalne pozicije prometnih znakova. Ulančavanje započinje pozivom metode chainstraightseg() iz datoteke ext_chainsegments.cpp. void chainstraightseg(); Pravocrtni segmenti i pripadajući kutovi dostupni su metodi chainstraightseg() preko eksternih deklaracija iz datoteke ext_findlines.hpp. extern std::vector< std::vector<piksel> >lines; extern std::vector<int> angles; Unutar metode chainstraightseg() prvo se iz vektora lines izdvajaju horizontalni i vertikalni segmenti u posebne strukture lines90 i lines0. std::vector< std::vector<piksel> > lines90; std::vector< std::vector<piksel> > lines0; Zatim se za svaki par pravocrtnih segmenata provjerava susjedstvo te se odgovarajuća oznaka susjedstva upisuje u vektor neighbours. std::vector< std::vector<string> > neighbours; Oznake susjedstva su LD (left down) što označava susjedstvo vertikalnog i horizontalnog segmenta gornjeg lijevog kuta pravokutnika, RD (right down) što označava susjedstvo vertikalnog i horizontalnog segmenta gornjeg desnog kuta pravokutnika, LU (left up) što označava susjedstvo vertikalnog i horizontalnog segmenta donjeg lijevog kuta pravokutnika, RU (right up) što označava susjedstvo vertikalnog i horizontalnog segmenta donjeg desnog kuta pravokutnika, R (right) i L (left) što označava susjedstvo dvaju horizontalnih segmenata, U (up) i D (down) što označava susjedstvo dvaju vertikalnih segmenata te 0 čime se označava da odgovarajući segmenti nisu susjedni. Parovi vertikalnih i horizontalnih pravocrtnih segmenata smatraju se susjedima ako je njihova meďusobna udaljenost manja od maxpairofsegsdist. Parovi dvaju vertikalnih ili dvaju horizontalnih segmenata smatraju se susjedima ako je njihova meďusobna udaljenost manja od maxpairofsegsdist te ako je otklon krajnjih piksela odabranog segmenta od krajnjih piksela promatranog segmenta manji od maxsegdev. 22

26 Nakon što su poznati susjedni pravocrtni segmenti počinje iteriranje po svim horizontalnim segmentima u potrazi za susjednim vertikalnim segmentima. Svaki put kada se za horizontalni segment pronaďe njemu susjedni vertikalni segment pozove se rekurzivna metoda rekchainstraightseg(). void rekchainstraightseg( int k, string mark, string type, int turn); Argument k u pozivu metode rekchainstraightseg() označava indeks promatranog horizontalnog, odnosno vertikalnog segmenta iz vektora lines0, odnosno lines90 za koji se u trenutnom pozivu metode traži susjedni segment odreďen oznakom mark, mark je oznaka traženog susjedstva, type se postavlja na hor (horizontal), odnosno ver (vertical) kada je promatrani segment horizontalan, odnosno vertikalan, turn označava smjernice da li se oznake susjedstva pri pozivu metode komplementarno mijenjaju ili ne. Komplementarno mijenjanje bi značilo npr. ako je za promatrani vertikalni segment pronaďen njegov susjedni horizontalni segment gdje je njihovo susjedstvo označeno oznakom LD tada će se pri sljedećem pozivu metode tražiti susjedstvo RD jer su ta dva prethodno pronaďena segmenta dijelovi gornjeg lijevog kuta pravokutnika pa je sada potrebno pronaći desni gornji kut pravokutnika. Ulančavanje pravocrtnih segmenata rekurzivnim pozivima provodi se na način kako je opisano u poglavlju 2.6. uz napomenu da su susjedstva odreďena oznakama u vektoru neighbours. Jedan od uvjeta prihvaćanja grupe ulančanih pravocrtnih segmenata je da se vertikalne stranice stvorenog pravokutnog lika po duljini razlikuju manje od maxlengthdiff. Sve grupe prihvaćenih segmenata koje tvore pravokutne likove spremaju se u vektor signs. std::vector<int> signs; Na kraju je potrebno pronaći pravokutne okvire kojima će se označiti grupe ulančanih pravocrtnih segmenata za potrebe testiranja. To se za odreďenu grupu radi na način da je lijeva stranica okvira odreďena najmanjom x koordinatom segmenata lijeve stranice ulančanog pravokutnog lika, donja stranica je odreďena najmanjom y koordinatom segmenata donje stranice ulančanog pravokutnog lika, desna stranica okvira je odreďena najvećom x koordinatom segmenata desne stranice ulančanog pravokutnog lika, a gornja 23

27 stranica je odreďena najvećom y koordinatom segmenata gornje stranice ulančanog pravokutnog lika Implementacija učenja histograma vjerojatnosti boja Programska komponenta gdje se obavlja učenje vjerojatnosti nalazi se u datoteci alg_learnhist.cpp. U navedenoj datoteci nalazi se implementacija klase alg_learnhist koja posjeduje virtualnu metodu alg_learnhist::process() gdje je implementirano cjelokupno učenje vjerojatnosti. virtual void process( const img_vectorabstract& src, const win_event_vectorabstract& events, int msdayutc); Nakon što se algoritam učenja vjerojatnosti postavi aktivnim ljuska poziva odgovarajuću virtualnu metodu process(). Argument src u pozivu metode process() označava ulaznu sliku iz koje se uzimaju boje piksela znakova i pozadine. U poglavlju 2.1. opisan je proces učenja vjerojatnosti boje. Histogrami u koje će se spremati pikseli znaka i pozadine i koji će kasnije sadržavati uvjetne vjerojatnosti boje definirani su kao članske varijable klase alg_learnhist. std::vector<double> signhist_; std::vector<double> backgndhist_; Prije obrade ulazne slike potrebno je saznati pozicije i dimenzije označenih znakova kako bi se znalo gdje tražiti piksele znaka, a gdje piksele pozadine u slici. Potrebne informacije nalaze se u odgovarajućim datotekama gdje za svaku sliku postoji redak u kojem su zapisane dimenzije, tip znaka te koordinate gornje lijeve točke okvira znaka za sve tražene znakove u slici. Navedene informacije pohranjuju se za nastavak učenja u vektor rectangles. std::vector< std::vector<int> > rectangles; Vektor rectangles sadrži vektore veličine četiri elementa za svaki od traženih znakova u slici gdje svaki od tih vektora sadrži visinu, širinu te koordinate gornjeg lijevog kuta okvira pripadajućeg znaka. U radu su za učenje vjerojatnosti boje korištena dva različita skupa slika za učenje pa je bilo potrebno za vrijeme promjene skupova spremiti u memoriju trenutno stanje histograma i ponovno ga učitati. Zbog toga je bilo nužno 24

28 implementirati metodu poput initlearnhist() kojom će se spremljeni podatci iz memorije učitati u histograme. void initlearnhist(); Kod promjene skupa za učenje, tj. nakon završetka inkrementiranja odgovarajućih elemenata histograma vjerojatnosti boje na temelju prvog skupa, informacije u histogramima se spremaju u datoteku. Prije nastavka učenja na drugom skupu informacije iz datoteke se pozivom metode initlearnhist() učitavaju natrag u histograme i učenje se nastavlja na drugom skupu slika Rad s razvojnim okruženjem i ljuskom cvsh U izradi programske implementacije detekcije znakova i učenja vjerojatnosti korišteno je razvojno okruženje Visual Studio 2008 Professional Edition. U nastavku će biti opisani koraci u konfiguriranju razvojnog okruženja potrebni za prevoďenje i pokretanje korisničkog algoritma unutar ljuske cvsh. Ljuska cvsh je dizajnirana na način da se korisnički algoritmi zajedno s ljuskom prevedu u jedinstveni izvršni kôd. Svi potrebni koraci konfiguracije odvijati će se u kartici ime_projekta Properties do koje se dolazi klikom na Project iz alatne trake (Slika 10.). Pretpostavlja se da je korisnik već napravio novi projekt u koji je dodao sve komponente izvornog koda ljuske cvsh i odabranog korisničkog algoritma. Slika 10. Kartica ime_projekta Properties 25

29 Za prevoďenje koda potrebno je imati odgovarajuće elemente izvornog koda biblioteke Boost koji se mogu preuzeti na lokaciji Biblioteka Boost se u projekt uključuje tako da se pod Project ime_projekta Properties Configuration Properties C/C++ General Additional Include Directories upiše putanja do lokacije gdje je biblioteka instalirana (Slika 11.). Moguće je upisati i relativnu putanju u odnosu na datoteku ime_projekta.vcproj, odnosno ime_projekta.sln. Slika 11. Povezivanje s bibliotekom Boost Implementirani algoritmi detekcije znakova i učenja vjerojatnosti u svom radu koriste odreďene parametre koji im se prosljeďuju putem naredbenog retka. U ovom radu algoritam je testiran samo na slikama, ali ljuska u naredbenom retku prihvaća i videa. Parametri naredbenog retka definiraju se pod Project ime_projekta Properties Debugging Command Arguments (Slika 12.). 26

30 Slika 12. Unos naredbenog retka Neki od osnovnih parametara koje je moguće definirati u naredbenom retku ljuske su: parametar sf (source file) koji označava putanju do izvorne slike ili direktorija sa slikama koje se obraďuju, a (algorithm) je naziv odabranog korisničkog algoritma, i (interactive) je prva naredba koja se prosljeďuje korisničkom sučelju te odreďuje način pokretanja projekta, c (config) omogućuje konfiguraciju odgovarajućih parametara korisničkog algoritma. Primjer kako bi u ovom radu trebao kod detekcije izgledati valjani naredbeni redak: -sf="..\..\korpus3_fzuti/" -i="p t" -a=alg_signdetection Argumentu sf je u gornjem primjeru pridružena relativna putanja do direktorija koji sadrži slike za testiranje. Neke od opcija koje prihvaća parametar i (interactive) su p n (process next) obradi sljedeću, p p (process previous) obradi prethodnu ili p t (process this) obradi trenutnu. Pomoću opcije c (config) moguće je postaviti vrijednosti odreďenih parametara algoritma prije samog pokretanja. Konkretno, u ovom radu moguće je prilikom detekcije postaviti vrijednosti thete, sigme, gornjeg i donjeg relativnog praga kod Cannyjevog algoritma, minimalne duljine pravocrtnog segmenta i maksimalne devijacije piksela od imaginarnog pravca: -c="<theta_><sigma_><thhi_><thlo_><linesize_><maxdev_> 27

31 Korisničko sučelje prilikom rada s algoritmom podržava kretanje kroz ispitne slike ili okvire videa primjenom istih naredbi koje prihvaća parametar i (interactive). Iz programa se izlazi zadavanjem naredbe q (quit) korisničkom sučelju. TakoĎer je moguće postaviti vrijednosti parametara algoritma zadavanjem naredbe c (config) korisničkom sučelju na isti način kao i u naredbenom retku. 28

32 4. Eksperimentalni rezultati Testiranje ostvarenih metoda provedeno je na prijenosnom računalu HP Compaq nx 7300 s dvojezgrenim procesorom takta 1.6 GHz i 1024 MB radne memorije. Učinkovitost opisanog pristupa ispitana je nezavisno za žute, plave, odnosno crvene znakove na njihovim odgovarajućim skupovima slika za testiranje. Svi žuti znakovi iz skupa slika za testiranje pravokutnog su oblika pa je bilo moguće na cijelom skupu primijeniti oba opisana postupka detekcije na temelju boje i rubova. Plavi znakovi iz skupa slika za testiranje su kružnih i pravokutnih oblika pa je na cijelom skupu smisleno primijeniti samo postupak detekcije na temelju boje. Testni skup slika s crvenim znakovima sadržava samo trokutaste crvene znakove pa je na cijelom skupu takoďer bilo smisleno primijeniti samo postupak detekcije na temelju boje. Iako se naslov rada odnosi na pravokutne znakove, segmentacija bojom je neovisna o obliku prometnog znaka pa je bilo razumno primijeniti predloženu detekciju bojom na trokutaste i okrugle znakove. Postupak detekcije na temelju rubova dao je slabije rezultate od postupka detekcije na temelju boje. Detekcija na temelju ruba dobivenog iz slike u boji dala je nešto bolje rezultate od detekcije na temelju ruba dobivenog iz sive slike. Uočeno je da se oba postupka puno bolje ponašaju na slikama s bližim i većim znakovima. Kako bi se ispitala učinkovitost detekcije većih i bližih znakova iz testnog skupa slika sa žutim znakovima izdvojen je jedan puno manji skup slika u kojima se nalaze samo veći i bliži žuti pravokutni znakovi. Kako bi se i na testnom skupu slika s plavim znakovima mogla primijeniti detekcija na temelju rubova takoďer je izdvojen jedan manji skup slika u kojima se nalaze samo veći, odnosno bliži pravokutni plavi znakovi. Za ispitivanje učinkovitosti detekcije na temelju boje prvo je bilo potrebno naučiti uvjetne vjerojatnosti za primjenu izraza (4) na piksele slike. Učenje je provedeno posebno za žute, plave, odnosno crvene znakove na njihovim odgovarajućim skupovima slika za učenje. Skup slika za učenje žutih znakova sadrži 1795 punih slika na kojima se nalaze samo žuti pravokutni znakovi, skup slika za učenje plavih znakova sadrži 754 pune slike u kojima se ne nalaze plavi znakovi te 420 punih i 754 isječene slike na kojima se nalaze okrugli i pravokutni plavi znakove, dok skup slika za učenje crvenih znakova sadrži 2700 isječenih slika na kojima se nalaze samo trokutasti crveni znakovi i 2700 punih slika na kojima se ne nalaze crveni znakovi. U nastavku su posebno za svaku grupu prikazani svi tipovi znakova zastupljeni u skupu za učenje i/ili u skupu za testiranje. Slovo U, 29

33 odnosno T ispod slike znaka označava da je odgovarajući tip znaka prisutan u skupu za učenje, odnosno u skupu za testiranje. C79 (T,U) C80 (U) C81 (T,U) C82 (T,U) D03 (U) D04 (T,U) D09 (T,U) D10 (T,U) D12 (T,U) D17 (U) D05 (T,U) C77 (U) D16 (T) D06 (T) D14 (T) B45 (U) B50 (T,U) B52 (U) B51 (U) B53 (U) B48 (U) B46 (U) B60 (T,U) B61 (T,U) B59 (T,U) B57 (U) B62 (T,U) C01 (U) C02 (T,U) C06 (U) C03 (U) C18 (U) C19 (U) C35 (T,U) C70 (U) C75 (U) C77 (U) C78 (U) C86 (U) C94 (U) C95 (U) C91 (U) C79 (T) 30

34 B01 (T,U) A01 A03 (U) A04 (U) A05 A06 (U) A07 (U) A08 A09 (T,U) (T,U) (T,U) (T,U) A10 A11 A12 (U) A13 (U) A14 (U) A15 (U) A16 (U) A17 A20 (T,U) (T,U) (T,U) (T,U) A22 (U) A23 (U) A24 (U) A25 (U) A26 (U) A27 (T,U) A32 (U) A33 (T,U) A34 (T,U) A35 (U) A39 (U) A41 (U) A43 (U) A44 (T,U) A45 (T,U) A46 (U) Pune slike su cjelovite slike snimljene kamerom montiranom na autu koje osim prometnih znakova sadrže uobičajenu cestovno okruženje poput drveća, kuća i sl., dok isječene slike sadrže samo traženi znak te su dobivene iz punih slika izdvajanjem regije znaka. Pošto za učenje crvenih i plavih znakova nije postojalo dovoljno punih slika trebalo je manjak nadomjestiti isječenim slikama. Problem kod isječenih slika je taj što na njima ne postoji pozadina pa je iz njih bilo nemoguće naučiti histogram vjerojatnosti boje pozadine. Zato su u skupove za učenje crvenih, odnosno plavih znakova stavljene pune slike koje ne sadrže tražene znakove te je za isječene slike korišten nešto drugačiji postupak učenja. Za razliku od učenja iz poglavlja 2.1. u izmijenjenom učenju za svaku isječenu sliku postoji pripadajuća puna slika bez traženog znaka u kojoj se područje veličine isječene slike izdvoji na mjestu gdje je ta isječena slika izdvojena iz vlastite pune slike te se svi ostali pikseli izvan te izdvojene regije koriste u osvježavanju histograma 31

35 vjerojatnosti boje pozadine. Učinkovitost detekcije znakova na temelju boje ne ovisi puno o tome koji tipovi, odnosno oblici znakova se nalaze u skupu za učenje i u skupu za testiranje, već je bitnije da su iste boje prisutne na znakovima za testiranje i na znakovima iz skupa za učenje. Kao mjere za ocjenu učinkovitosti implementiranih postupaka korišteni su odziv (11) i preciznost (12). TP TP FN TP TP FP (11) (12) U (11), odnosno (12) TP (true positive) označava broj pozitivnih detekcija gdje su pronaďeni traženi znakovi, FN (false negative) označava broj lažno negativnih detekcija gdje nisu pronaďeni traženi znakovi, a FP (false positive) označava broj lažno pozitivnih detekcija gdje su pronaďeni objekti koji ne pripadaju prometnim znakovima. U ovom radu se pozitivnom detekcijom smatra samo slučaj gdje se pravokutni okvir dobiven detekcijom i pravokutni okvir dobiven iz datoteke koja sadrži informacije o traženim znakovima u trenutnoj slici meďusobno preklapaju za više od 60%. Potrebno je reći da je u ovom radu naglasak bio na većem odzivu pa je za odreďenu metodu najbolji rezultat onaj gdje je za kombinaciju vrijednosti odgovarajućih parametara postignut najveći odziv. Sljedeći parametri imali su konstantne vrijednosti za vrijeme svih testiranja: - maxdepth= maxpairofsegsdist=15 - thhi_=0.5 - maxsegdev=4 - thlo_=0.3 - maxlengthdiff=20 - minchainlength=15 - linesize_=15 - maxdev_=2.5 - angleoffset=12 Parametri mingroupsize i maxgroupsize ovise o trenutnom skupu slika za testiranje. OdreĎeni su dimenzijama traženih znakova iz trenutnog skupa slika za testiranje. U potrazi za boljim rezultatima odziva i preciznosti samo su parametrima theta_ i sigma_ mijenjane vrijednosti. U nadolazećim tablicama se za svaki testni skup nalaze zapisi o vrijednostima parametara kojima su postignuti najbolji rezultati primjenom odgovarajuće metode. Metoda temeljena na rubu testirana je za gradijent dobiven iz slike u 32

36 boji i iz sive slike. Kod testnih skupova slika gdje je bilo smisleno primijeniti obje metode detekcije redak u tablicama gdje se nalazi zapis o rezultatu kombinacije dviju metoda ostvaren je pomoću vrijednosti parametara theta_ i sigma_ kojima su na tom istom skupu ostvareni najbolji rezultati primjenom svake metode zasebno. U nastavku su takoďer za odreďeni skup slika i za odgovarajuću metodu detekcije ilustrirane mjere učinkovitosti za nekoliko odabranih vrijednosti parametara sigma_, odnosno theta_. Slike u nastavku koje pokazuju pozitivne, lažno pozitivne i lažno negativne rezultate detekcije temeljene na boji dobivene su na pripadajućem cijelom testnom skupu za iznos parametra theta_ iz retka odgovarajuće tablice. Slike na kojima se nalaze pozitivni i negativni rezultati detekcije temeljene na rubu dobivene su na pripadajućem manjem izdvojenom skupu slika za iznos parametra sigma_ i za vrstu gradijenta kojima je na promatranom skupu postignut bolji odziv za što postoji zapis u odgovarajućoj tablici. Svi znakovi detektirani s obje metode su prije označavanja na ulaznoj slici filtrirani na temelju dimenzija Detekcija žutih prometnih znakova Cjeloviti skup slika za testiranje žutih znakova sadrži 145 slika na kojima se nalaze 152 tražena žuta pravokutna znaka. Parametri koji ovise o trenutnom testnom skupu imali su sljedeće postavke za skup od 145 slika sa žutim znakovima: - maxgroupsize=132*150 - mingroupsize=50 Tablica 1. Najbolji ostvareni rezultati na skupu od 145 slika detekcija na temelju sigma theta odziv preciznost ruba dobivenog iz slike u boji 1.2 ne koristi se 19.1% 3.1% ruba dobivenog iz sive slike 0.9 ne koristi se 23.7% 3.3% boje ne koristi se % 70.7% boje + ruba dobivenog iz slike u boji % 13.4% boje + ruba dobivenog iz sive slike % 11.9% 33

37 Slika 13. Rezultati detekcije na temelju ruba dobivenog iz slike u boji na skupu od 145 slika Slika 14. Rezultati detekcije na temelju ruba dobivenog iz sive slike na skupu od 145 slika Slika 15. Rezultati detekcije na temelju boje na skupu od 145 slika 34

38 Iz skupa od 145 slika sa žutim znakovima izdvojen je manji skup od 32 slike s 33 tražena žuta pravokutna znaka. Izdvojene su samo slike gdje se nalaze bliži i veći znakovi. Parametri koji ovise o trenutnom testnom skupu imali su sljedeće postavke za skup od 32 slike sa žutim znakovima: - maxgroupsize=132*150 - mingroupsize=300 Tablica 2. Najbolji ostvareni rezultati na skupu od 32 slike detekcija na temelju sigma theta odziv preciznost ruba dobivenog iz slike u boji 0.9 ne koristi se 51.5% 70.8% ruba dobivenog iz sive slike 0.9 ne koristi se 51.5% 53.1% boje ne koristi se % 91.7% boje + ruba dobivenog iz slike u boji % 76.7% boje + ruba dobivenog iz sive slike % 64.7% Slika 16. Rezultati detekcije na temelju ruba dobivenog iz slike u boji na skupu od 32 slike 35

39 Slika 17. Rezultati detekcije na temelju ruba dobivenog iz sive slike na skupu od 32 slike Slika 18. Rezultati detekcije na temelju boje na skupu od 32 slike Tablica 3. Trajanje postupaka 36

40 Pozitivni rezultati Slika 19. Pozitivna detekcija na temelju Slika 20. Binarna slika nastala boje detekcijom znakova u slici 19. Slika 21. Pozitivna detekcija na temelju Slika 22. Slika segmenata nastala ruba detekcijom znakova u slici

41 Lažno pozitivni rezultati Slika 23. Lažno pozitivna detekcija na temelju Slika 24. Binarna slika nastala boje detekcijom znakova u slici 23. Slika 25. Lažno pozitivna detekcija na temelju Slika 26. Binarna slika nastala boje detekcijom znakova u slici

42 Slika 27. Lažno pozitivna detekcija na temelju Slika 28. Binarna slika nastala boje detekcijom znakova u slici 27. Slika 29. Lažno pozitivna detekcija na temelju Slika 30. Binarna slika nastala boje detekcijom znakova u slici

43 Slika 31. Lažno pozitivna detekcija na temelju Slika 32. Slika segmenata nastala ruba detekcijom znakova u slici 31. Na slici 23. algoritam je uz ispravno detektirani žuti pravokutni znak neispravno detektirao žute dijelove ceste koji nisu dio prometnog znaka. Tu se vidi nedostatak postupka detekcije na temelju boje gdje će u ovom slučaju veći žuti segmenti slike biti proglašeni prometnim znakom bez razmatranja oblika tih žutih regija. Ista stvar se je dogodila na slici 25. gdje je kao znak prepoznat žuti dio kamiona, na slici 27. su kao znak prepoznati žuti dijelovi stupića, na slici 29. prepoznat je žuti dio romboidnog znaka koji nije u skupu traženih znakova. Na slici 31. detekcijom na temelju ruba neispravno je prepoznat dio slike ispod žutog znaka zbog jakog kontrasta tamnog zasjenjenog drveća u odnosu na svijetlu travu i stupove žutog znaka. Nedostatak metode temeljene na rubu je zanemarivanje boje prepoznate regije slike. 40

44 Lažno negativni rezultati Slika 33. Lažno negativna detekcija na temelju Slika 34. Binarna slika nastala boje detekcijom znakova u slici 33. Slika 35. Lažno negativna detekcija na temelju Slika 36. Binarna slika nastala boje detekcijom znakova u slici

45 Slika 37. Lažno negativna detekcija na temelju Slika 38. Binarna slika nastala boje detekcijom znakova u slici 37. Slika 39. Lažno negativna detekcija na temelju Slika 40. Slika segmenata nastala ruba detekcijom znakova u slici 39. Na slici 33. žuti znak nije prepoznat jer za odabrani parametar theta_ dosta piksela znaka ne zadovoljava izraz (4) pa je regija znaka rascjepkana na male segmente od kojih nijedan ne odgovara dimenzijama prometnog znaka što se vidi na odgovarajućoj binarnoj slici. Na slici 35. prepoznat je samo dio žutog znaka jer u skupu slika za učenje nije bilo dovoljno žutih znakova sa smeďom bojom da bi izraz (4) vrijedio i za smeďe piksele. Na slici 37. znak nije pronaďen jer se žuti znak s detektiranim crvenim okvirom preklapa manje od 60%. Uzrok tome su pozadinski crveni pikseli koji su prepoznati kao dio znaka pa je time povećana segmentirana regija na slici 38. što je konačno rezultiralo 42

46 većim pravokutnim okvirom. Neuspješna detekcija u slici 39. je posljedica loše detekcije rubova gdje zbog drveća nije prepoznat gornji lijevi kut znaka Detekcija plavih prometnih znakova Cjeloviti skup slika za testiranje plavih znakova sadrži 232 slike na kojima se nalazi 300 traženih plavih znakova. Parametri koji ovise o trenutnom testnom skupu imali su sljedeće postavke za skup od 232 slike s plavim znakovima: - maxgroupsize=103*128 - mingroupsize=30 Tablica 4. Najbolji ostvareni rezultati na skupu od 232 slike detekcija na temelju theta odziv preciznost boje % 17.9% Slika 41. Rezultati detekcije na temelju boje na skupu od 232 slike Iz skupa od 232 slike s plavim znakovima izdvojen je manji skup od 37 slika s 37 traženih pravokutnih plavih znakova kako bi se na plavim znakovima mogla primijeniti detekcija na temelju ruba. Izdvojene su samo slike gdje se nalaze bliži i veći pravokutni znakovi. Parametri koji ovise o trenutnom testnom skupu imali su sljedeće postavke za skup od 37 slika s plavim znakovima: - maxgroupsize=103*128 - mingroupsize=200 43

47 Tablica 5. Najbolji ostvareni rezultati na skupu od 37 slika detekcija na temelju sigma theta odziv preciznost ruba dobivenog iz slike u boji 0.6 ne koristi se 54.1% 16.9% ruba dobivenog iz sive slike 0.3 ne koristi se 51.4% 14.6% boje ne koristi se % 87% boje + ruba dobivenog iz slike u boji % 22.1% boje + ruba dobivenog iz sive slike % 20.1% Slika 42. Rezultati detekcije na temelju ruba dobivenog iz slike u boji na skupu od 37 slika Slika 43. Rezultati detekcije na temelju ruba dobivenog iz sive slike na skupu od 37 slika 44

48 Slika 44. Rezultati detekcije na temelju boje na skupu od 37 slika Pozitivni rezultati Slika 45. Pozitivna detekcija na temelju Slika 46. Binarna slika nastala boje detekcijom znakova u slici

49 Slika 47. Pozitivna detekcija na temelju Slika 48. Slika segmenata nastala ruba detekcijom znakova u slici Lažno pozitivni rezultati Slika 49. Lažno pozitivna detekcija na temelju Slika 50. Binarna slika nastala boje detekcijom znakova u slici

50 Slika 51. Lažno pozitivna detekcija na temelju Slika 52. Binarna slika nastala boje detekcijom znakova u slici 51. Slika 53. Lažno pozitivna detekcija na temelju Slika 54. Slika segmenata nastala ruba detekcijom znakova u slici

51 Slika 55. Lažno pozitivna detekcija na temelju Slika 56. Slika segmenata nastala ruba detekcijom znakova u slici 55. U potrazi za plavim znakovima na slikama 49. i 51. osim ispravno pronaďenih plavih znakova neispravno su detektirani plavi plakati. Na slici 53. neispravno je kao znak prepoznat dio pješačkog prijelaza zbog dovoljno jakog kontrasta u odnosu na sivu cestu. Na slici 55. detektiran je tamni prozor zbog jakog kontrasta u odnosu na bijeli zid zgrade Lažno negativni rezultati Slika 57. Lažno negativna detekcija na temelju Slika 58. Binarna slika nastala boje detekcijom znakova u slici

52 Slika 59. Lažno negativna detekcija na temelju Slika 60. Binarna slika nastala boje detekcijom znakova u slici 59. Slika 61. Lažno negativna detekcija na temelju Slika 62. Binarna slika nastala boje detekcijom znakova u slici

53 Slika 63. Lažno negativna detekcija na temelju Slika 64. Slika segmenata nastala ruba detekcijom znakova u slici 63. Iz sličnih razloga kao na slici 33. i na slici 57. nije pronaďen plavi znak. Bijeli pikseli unutar plavog znaka nisu zadovoljili izraz (4) pa su dva plava segmenta od kojih nijedan ne zadovoljava uvjet preklapanja ostala razdvojena. Uzrok tome da bijeli pikseli ne zadovoljavaju (4) je činjenica da dosta bijelih piksela ima meďu pikselima za učenje vjerojatnosti boje pozadine. Na slici 59. kao i na slici 35. znak nije pronaďen jer u slikama za učenje nije bilo dovoljno plavih znakova te nijanse plave boje. Na slici 61. dva plava znaka lijevo od autobusa prepoznata su kao jedan plavi znak zbog toga jer se plave regije dvaju znakova dodiruju. Znakovi nisu detektirani jer je ukupna pronaďena regija omeďena crvenim pravokutnikom dovoljno velika da uvjet preklapanja ne bude zadovoljen. Na slici 63. znak nije detektiran jer detektor ruba nije uspio pronaći donji brid plavog znaka Detekcija crvenih prometnih znakova Cjeloviti skup slika za testiranje crvenih znakova sadrži 191 sliku na kojima se nalazi 214 traženih crvenih znakova. Parametri koji ovise o trenutnom testnom skupu imali su sljedeće postavke za skup od 191 slike s crvenim znakovima: - maxgroupsize=101*108 - mingroupsize=30 Tablica 6. Najbolji ostvareni rezultati na skupu od 191 slike detekcija na temelju theta odziv preciznost boje % 8% 50

54 Slika 65. Rezultati detekcije na temelju boje na skupu od 191 slike Pozitivni rezultati Slika 66. Pozitivna detekcija na temelju Slika 67. Binarna slika nastala boje detekcijom znakova u slici

55 Lažno pozitivni rezultati Slika 68. Lažno pozitivna detekcija na temelju Slika 69. Binarna slika nastala boje detekcijom znakova u slici 68. Slika 70. Lažno pozitivna detekcija na temelju Slika 71. Binarna slika nastala boje detekcijom znakova u slici 70. Na slici 68., odnosno 70. uz ispravno pronaďene crvene trokutaste znakove neispravno su detektirani crveni krov kuće, odnosno crveni dijelovi stupa znaka. 52

56 Lažno negativni rezultati Slika 72. Lažno negativna detekcija na temelju Slika 73. Binarna slika nastala boje detekcijom znakova u slici 72. Slika 74. Lažno negativna detekcija na temelju Slika 75. Binarna slika nastala boje detekcijom znakova u slici 74. Na slikama 72. i 74. crveni trokutasti znakovi nisu pronaďeni iz istih razloga kao i na slici 61. zbog toga jer crvena regija znaka dodiruje crvenu regiju objekta koji nije znak pa algoritam temeljen na boji pronalazi ukupnu spojenu regiju. Dobivena regija najčešće ne zadovoljava uvjet preklapanja površina. Na slici 72. traženi trokutasti crveni znak dodiruje crveni okrugli znak koji nije u skupu traženih znakova, dok na slici 74. regija znaka dodiruje crveni zid kuće. 53

Postojanost boja

Postojanost boja Korištenje distribucije osvjetljenja za ostvaranje brzih i točnih metode za postojanost boja Nikola Banić 26. rujna 2014. Sadržaj Postojanost boja Ubrzavanje lokalnog podešavanja boja Distribucija najčešćih

Више

PuTTY CERT.hr-PUBDOC

PuTTY CERT.hr-PUBDOC PuTTY CERT.hr-PUBDOC-2018-12-371 Sadržaj 1 UVOD... 3 2 INSTALACIJA ALATA PUTTY... 4 3 KORIŠTENJE ALATA PUTTY... 7 3.1 POVEZIVANJE S UDALJENIM RAČUNALOM... 7 3.2 POHRANA PROFILA KORISNIČKIH SJEDNICA...

Више

Programiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj

Programiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, te službeni šalabahter. Kalkulatori, mobiteli, razne neslužbene tablice, papiri i sl., nisu dozvoljeni! Sva rješenja napišite

Више

ALIP1_udzb_2019.indb

ALIP1_udzb_2019.indb Razmislimo Kako u memoriji računala prikazujemo tekst, brojeve, slike? Gdje se spremaju svi ti podatci? Kako uopće izgleda memorija računala i koji ju elektronički sklopovi čine? Kako biste znali odgovoriti

Више

Algoritmi SŠ P1

Algoritmi SŠ P1 Državno natjecanje iz informatike Srednja škola Prvi dan natjecanja 2. ožujka 219. ime zadatka BADMINTON SJEME MANIPULATOR vremensko ograničenje 1 sekunda 1 sekunda 3 sekunde memorijsko ograničenje 512

Више

Microsoft Word - 6ms001

Microsoft Word - 6ms001 Zadatak 001 (Anela, ekonomska škola) Riješi sustav jednadžbi: 5 z = 0 + + z = 14 4 + + z = 16 Rješenje 001 Sustav rješavamo Gaussovom metodom eliminacije (isključivanja). Gaussova metoda provodi se pomoću

Више

Matrice. Algebarske operacije s matricama. - Predavanje I

Matrice. Algebarske operacije s matricama. - Predavanje I Matrice.. Predavanje I Ines Radošević inesr@math.uniri.hr Odjel za matematiku Sveučilišta u Rijeci Matrice... Matrice... Podsjeti se... skup, element skupa,..., matematička logika skupovi brojeva N,...,

Више

23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi

23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi 3. siječnja 0. od 3:00 do 4:00 RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovitelji Sadržaj Zadaci. 4.... Zadaci 5. 0.... 3 od 8 Zadaci. 4. U sljedećim pitanjima na pitanja odgovaraš upisivanjem

Више

Slide 1

Slide 1 OSNOVNI POJMOVI Naredba je uputa računalu za obavljanje određene radnje. Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Pisanje programa zovemo programiranje. Programski jezik

Више

1 jmbag ime i prezime Programiranje 2 prvi kolokvij, Rezultati i uvidi u kolokvije: Rezultati u petak, 3.5., navečer na webu, a uvidi u p

1 jmbag ime i prezime Programiranje 2 prvi kolokvij, Rezultati i uvidi u kolokvije: Rezultati u petak, 3.5., navečer na webu, a uvidi u p 1 Rezultati i uvidi u kolokvije: Rezultati u petak 3.5. navečer na webu a uvidi u ponedjeljak 6.5. u 16 sati. Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje te službeni podsjetnik.

Више

Funkcije predavač: Nadežda Jakšić

Funkcije predavač: Nadežda Jakšić Funkcije predavač: Nadežda Jakšić funkcije delovi programa koji izvršavaju neki zadatak, celinu; dele na ugrađene, korisničke i main funkciju ugrađene funkcije printf,scanf... da bi se one izvršile potrebno

Више

Napredno estimiranje strukture i gibanja kalibriranim parom kamera

Napredno estimiranje strukture i gibanja kalibriranim parom kamera Napredno estimiranje strukture i gibanja kalibriranim parom kamera Ivan Krešo Mentor: Siniša Šegvić 3. srpnja 2013. Motivacija Stereo vid dvije kamere omogućavaju mjerenje dubine korespondentnih točaka

Више

Sadržaj 1 Diskretan slučajan vektor Definicija slučajnog vektora Diskretan slučajan vektor

Sadržaj 1 Diskretan slučajan vektor Definicija slučajnog vektora Diskretan slučajan vektor Sadržaj Diskretan slučajan vektor Definicija slučajnog vektora 2 Diskretan slučajan vektor Funkcija distribucije slučajnog vektora 2 4 Nezavisnost slučajnih vektora 2 5 Očekivanje slučajnog vektora 6 Kovarijanca

Више

(Microsoft Word - Dr\236avna matura - studeni osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - studeni osnovna razina - rje\232enja) 1. C. Imamo redom: I. ZADATCI VIŠESTRUKOGA IZBORA 9 + 7 6 9 + 4 51 = = = 5.1 18 4 18 8 10. B. Pomoću kalkulatora nalazimo 10 1.5 = 63.45553. Četvrta decimala je očito jednaka 5, pa se zaokruživanje vrši

Више

8. razred kriteriji pravi

8. razred kriteriji pravi KRITERIJI OCJENJIVANJA MATEMATIKA 8. RAZRED Učenik će iz nastavnog predmeta matematike biti ocjenjivan usmeno i pismeno. Pismeno ocjenjivanje: U osmom razredu piše se šest ispita znanja i bodovni prag

Више

(Microsoft Word - MATB - kolovoz osnovna razina - rje\232enja zadataka)

(Microsoft Word - MATB - kolovoz osnovna razina - rje\232enja zadataka) . B. Zapišimo zadane brojeve u obliku beskonačno periodičnih decimalnih brojeva: 3 4 = 0.7, = 0.36. Prvi od navedenih četiriju brojeva je manji od 3 4, dok su treći i četvrti veći od. Jedini broj koji

Више

Programiranje 1 drugi kolokvij, 2. veljače Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje,

Programiranje 1 drugi kolokvij, 2. veljače Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, te službeni podsjetnik. Kalkulatori, mobiteli, razne neslužbene tablice, papiri i sl., nisu dozvoljeni! Sva rješenja napišite

Више

Microsoft Word - 15ms261

Microsoft Word - 15ms261 Zadatak 6 (Mirko, elektrotehnička škola) Rješenje 6 Odredite sup S, inf S, ma S i min S u skupu R ako je S = { R } a b = a a b + b a b, c < 0 a c b c. ( ), : 5. Skratiti razlomak znači brojnik i nazivnik

Више

(Microsoft Word - Rje\232enja zadataka)

(Microsoft Word - Rje\232enja zadataka) 1. D. Svedimo sve razlomke na jedinstveni zajednički nazivnik. Lako provjeravamo da vrijede rastavi: 85 = 17 5, 187 = 17 11, 170 = 17 10, pa je zajednički nazivnik svih razlomaka jednak Tako sada imamo:

Више

Microsoft Word - 12ms121

Microsoft Word - 12ms121 Zadatak (Goran, gimnazija) Odredi skup rješenja jednadžbe = Rješenje α = α c osα, a < b < c a + < b + < c +. na segmentu [ ], 6. / = = = supstitucija t = + k, k Z = t = = t t = + k, k Z t = + k. t = +

Више

Često postavljana pitanja u programu OBRT 1. Kako napraviti uplatu u knjizi tražbina i obveza? 2. Kako odabrati mapu/disk za pohranu podataka? 3. Kako

Često postavljana pitanja u programu OBRT 1. Kako napraviti uplatu u knjizi tražbina i obveza? 2. Kako odabrati mapu/disk za pohranu podataka? 3. Kako Često postavljana pitanja u programu OBRT 1. Kako napraviti uplatu u knjizi tražbina i obveza? 2. Kako odabrati mapu/disk za pohranu podataka? 3. Kako instalirati (novi) finin certifikat? 4. Kako ispisati

Више

Natjecanje 2016.

Natjecanje 2016. I RAZRED Zadatak 1 Grafiĉki predstavi funkciju RJEŠENJE 2, { Za, imamo Za, ), imamo, Za imamo I RAZRED Zadatak 2 Neka su realni brojevi koji nisu svi jednaki, takvi da vrijedi Dokaži da je RJEŠENJE Neka

Више

CARNET Helpdesk - Podrška obrazovnom sustavu e-dnevnik upute za nadzor razrednih knjiga tel: fax: mail:

CARNET Helpdesk - Podrška obrazovnom sustavu e-dnevnik upute za nadzor razrednih knjiga tel: fax: mail: Sadržaj... 1 1. Predgovor... 2 2. Prijava u sustav... 2 3. Postavke... 3 4. Kreiranje zahtjeva za nadzorom razrednih knjiga... 4 5. Pregled razredne knjige... 6 5.1 Dnevnik rada... 7 5.2 Imenik... 11 5.3

Више

NIAS Projekt e-građani KORISNIČKA UPUTA za aplikaciju NIAS Verzija 1.1 Zagreb, srpanj 2014.

NIAS Projekt e-građani KORISNIČKA UPUTA za aplikaciju NIAS Verzija 1.1 Zagreb, srpanj 2014. Projekt e-građani KORISNIČKA UPUTA za aplikaciju Verzija 1.1 Zagreb, srpanj 2014. Naslov: Opis: Korisnička uputa za aplikaciju Dokument sadrži upute korisnicima aplikacije u sustavu e-građani Ključne riječi:

Више

Matematika 1 - izborna

Matematika 1 - izborna 3.3. NELINEARNE DIOFANTSKE JEDNADŽBE Navest ćemo sada neke metode rješavanja diofantskih jednadžbi koje su drugog i viših stupnjeva. Sve su te metode zapravo posebni oblici jedne opće metode, koja se naziva

Више

Test ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime

Test ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime Test ispravio: () () Ukupan broj bodova:. veljače 04. od 3:00 do 4:00 Ime i prezime Razred Škola Županija Mentor Sadržaj Upute za natjecatelje... Zadaci... Upute za natjecatelje Vrijeme pisanja: 60 minuta

Више

Programiranje 2 0. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/4

Programiranje 2 0. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/4 Programiranje 2 0. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/48 Sadržaj predavanja Ponavljanje onog dijela C-a koji

Више

Microsoft Word - z4Ž2018a

Microsoft Word - z4Ž2018a 4. razred - osnovna škola 1. Izračunaj: 52328 28 : 2 + (8 5320 + 5320 2) + 4827 5 (145 145) 2. Pomoću 5 kružića prikazano je tijelo gusjenice. Gusjenicu treba obojiti tako da dva kružića budu crvene boje,

Више

Prikaz slike na monitoru i pisaču

Prikaz slike na monitoru i pisaču CRT monitori s katodnom cijevi i LCD monitori na bazi tekućih kristala koji su gotovo istisnuli iz upotrebe prethodno navedene. LED monitori- Light Emitting Diode, zasniva se na elektrodama i diodama koje

Више

Funkcije predavač: Nadežda Jakšić

Funkcije predavač: Nadežda Jakšić Funkcije predavač: Nadežda Jakšić do sada su korišćene "gotove" funkcije iz standardnih biblioteka (cin, cout...) one su pozivane iz main funkcije koja je glavna funkcija u programu jer izvršavanje programa

Више

SKUPOVI TOČAKA U RAVNINI 1.) Što je ravnina? 2.) Kako nazivamo neomeđenu ravnu plohu? 3.) Što je najmanji dio ravnine? 4.) Kako označavamo točke? 5.)

SKUPOVI TOČAKA U RAVNINI 1.) Što je ravnina? 2.) Kako nazivamo neomeđenu ravnu plohu? 3.) Što je najmanji dio ravnine? 4.) Kako označavamo točke? 5.) SKUPOVI TOČAKA U RAVNINI 1.) Što je ravnina? 2.) Kako nazivamo neomeđenu ravnu plohu? 3.) Što je najmanji dio ravnine? 4.) Kako označavamo točke? 5.) U kakvom međusobnom položaju mogu biti ravnina i točka?

Више

Sveučilište u Zagrebu Fakultet prometnih znanosti Zavod za inteligentne transportne sustave Katedra za primijenjeno računarstvo Vježba: #7 Kolegij: Ba

Sveučilište u Zagrebu Fakultet prometnih znanosti Zavod za inteligentne transportne sustave Katedra za primijenjeno računarstvo Vježba: #7 Kolegij: Ba Sveučilište u Zagrebu Fakultet prometnih znanosti Zavod za inteligentne transportne sustave Katedra za primijenjeno računarstvo Vježba: #7 Kolegij: Baze podataka Tema: Osnovna SELECT naredba Vježbu pripremili:

Више

Zadaci s rješenjima, a ujedno i s postupkom rada biti će nadopunjavani tokom čitave školske godine

Zadaci s rješenjima, a ujedno i s postupkom rada biti će nadopunjavani tokom čitave školske godine Zadaci s rješenjima, a ujedno i s postupkom rada biti će nadopunjavani tokom čitave školske godine. Tako da će u slijedećem vremenskom periodu nastati mala zbirka koja će biti popraćena s teorijom. Pošto

Више

SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc.

SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc. SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc.dr.sc. Zvonko Iljazović Zagreb, rujan, 2015. Ovaj diplomski

Више

Logičke izjave i logičke funkcije

Logičke izjave i logičke funkcije Logičke izjave i logičke funkcije Građa računala, prijenos podataka u računalu Što su logičke izjave? Logička izjava je tvrdnja koja može biti istinita (True) ili lažna (False). Ako je u logičkoj izjavi

Више

KORISNIČKE UPUTE APLIKACIJA ZA POTPIS DATOTEKA

KORISNIČKE UPUTE APLIKACIJA ZA POTPIS DATOTEKA KORISNIČKE UPUTE APLIKACIJA ZA POTPIS DATOTEKA SADRŽAJ 1. UVOD... 3 1.1. Cilj i svrha... 3 1.2. Područje primjene... 3 2. POJMOVI I SKRAĆENICE... 4 3. PREDUVJETI KORIŠTENJA... 5 4. PREGLED APLIKACIJE...

Више

MultiBoot Korisnički priručnik

MultiBoot Korisnički priručnik MultiBoot Korisnički priručnik Autorsko pravo 2006., 2007. Hewlett- Packard Development Company, L.P. Informacije sadržane u ovom dokumentu podložne su promjenama bez najave. Jedina jamstva za HP-ove proizvode

Више

Računarski praktikum I - Vježbe 01 - Uvod

Računarski praktikum I - Vježbe 01 - Uvod Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 01 - Uvod v2018/2019. Sastavio: Zvonimir Bujanović Gradivo i način polaganja Gradivo: osnove jezika

Више

Nastavna cjelina: 1. Jezik računala Kataloška tema: 1.1. Bit 1.2. Brojevi zapisani četvorkom bitova Nastavna jedinica: 1.1. Bit   1.2. Brojevi zapisan

Nastavna cjelina: 1. Jezik računala Kataloška tema: 1.1. Bit 1.2. Brojevi zapisani četvorkom bitova Nastavna jedinica: 1.1. Bit   1.2. Brojevi zapisan Nastavna cjelina: 1. Osnove IKT-a Kataloška tema: 1.6. Paralelni i slijedni ulazno-izlazni pristupi računala 1.7. Svojstva računala Unutar računala podatci su prikazani električnim digitalnim signalima

Више

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije korake. Uz dobro razrađen algoritam neku radnju ćemo

Више

Microsoft Word - predavanje8

Microsoft Word - predavanje8 DERIVACIJA KOMPOZICIJE FUNKCIJA Ponekad je potrebno derivirati funkcije koje nisu jednostavne (složene su). Na primjer, funkcija sin2 je kompozicija funkcija sin (vanjska funkcija) i 2 (unutarnja funkcija).

Више

Programiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan

Programiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan Programiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan realan broj od 0 i 1. Na standardni izlaz ispisati

Више

Microsoft Word - 24ms221

Microsoft Word - 24ms221 Zadatak (Katarina, maturantica) Kružnica dira os apscisa u točki (3, 0) i siječe os ordinata u točki (0, 0). Koliki je polumjer te kružnice? A. 5 B. 5.45 C. 6.5. 7.38 Rješenje Kružnica je skup svih točaka

Више

(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja) 5 5: 5 5. B. Broj.5 možemo zapisati u obliku = =, a taj broj nije cijeli broj. 0 0 : 5 Broj 5 je iracionalan broj, pa taj broj nije cijeli broj. Broj 5 je racionalan broj koji nije cijeli broj jer broj

Више

Microsoft Word - V03-Prelijevanje.doc

Microsoft Word - V03-Prelijevanje.doc Praktikum iz hidraulike Str. 3-1 III vježba Prelijevanje preko širokog praga i preljeva praktičnog profila Mali stakleni žlijeb je izrađen za potrebe mjerenja pojedinih hidrauličkih parametara tečenja

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Ulaz i izlaz podataka Ulaz i izlaz podataka Nakon odslušanog bit ćete u stanju: navesti sintaksu naredbi za unos/ispis znakova znakovnih nizova cijelih brojeva realnih brojeva jednostruke i dvostruke preciznosti

Више

Državna matura iz informatike

Državna matura iz informatike DRŽAVNA MATURA IZ INFORMATIKE U ŠK. GOD. 2013./14. 2016./17. SADRŽAJ Osnovne informacije o ispitu iz informatike Područja ispitivanja Pragovi prolaznosti u 2014./15. Primjeri zadataka po područjima ispitivanja

Више

PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekste

PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekste PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, 5.06.019. godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekstenzija se najčešće koristi za tekstualne datoteke? a)

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Programiranje 2 doc.dr.sc. Goranka Nogo PMF Matematički odsjek, Zagreb Kontakt ured: 228, drugi kat e-mail: nogo@math.hr konzultacije: četvrtak, 12:00-14:00 petak, 11:00-12:00 neki drugi termin, uz prethodni

Више

Stručno usavršavanje

Stručno usavršavanje TOPLINSKI MOSTOVI IZRAČUN PO HRN EN ISO 14683 U organizaciji: TEHNIČKI PROPIS O RACIONALNOJ UPORABI ENERGIJE I TOPLINSKOJ ZAŠTITI U ZGRADAMA (NN 128/15, 70/18, 73/18, 86/18) dalje skraćeno TP Čl. 4. 39.

Више

(Microsoft Word - Dr\236avna matura - kolovoz ni\236a razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - kolovoz ni\236a razina - rje\232enja) 1. C. Imamo redom: I. ZADATCI VIŠESTRUKOGA IZBORA. B. Imamo redom: 0.3 0. 8 7 8 19 ( 3) 4 : = 9 4 = 9 4 = 9 = =. 0. 0.3 3 3 3 3 0 1 3 + 1 + 4 8 5 5 = = = = = = 0 1 3 0 1 3 0 1+ 3 ( : ) ( : ) 5 5 4 0 3.

Више

Elementarna matematika 1 - Oblici matematickog mišljenja

Elementarna matematika 1 - Oblici matematickog mišljenja Oblici matematičkog mišljenja 2007/2008 Mišljenje (psihološka definicija) = izdvajanje u čovjekovoj spoznaji odre denih strana i svojstava promatranog objekta i njihovo dovo denje u odgovarajuće veze s

Више

Metode za automatsko podešavanje boje i svjetline slike

Metode za automatsko podešavanje boje i svjetline slike Metode za automatsko podešavanje boje i svjetline slike Mentor: prof. dr. sc. Sven Lončarić Student: Nikola Banić Zagreb, 9. srpnja 2013. Sadržaj Uvod Boje Postojanost boja Algoritmi za podešavanje boja

Више

Oblikovanje i analiza algoritama 4. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. pr

Oblikovanje i analiza algoritama 4. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. pr Oblikovanje i analiza algoritama 4. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. predavanje p. 1/69 Sadržaj predavanja Složenost u praksi

Више

Smjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje no

Smjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje no Smjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje novog korisničkog računa (poslati zahtjev na javnipoziv.opp@havc.hr

Више

ŽUPANIJSKO NATJECANJE IZ MATEMATIKE 28. veljače razred - rješenja OVDJE SU DANI NEKI NAČINI RJEŠAVANJA ZADATAKA. UKOLIKO UČENIK IMA DRUGAČIJI

ŽUPANIJSKO NATJECANJE IZ MATEMATIKE 28. veljače razred - rješenja OVDJE SU DANI NEKI NAČINI RJEŠAVANJA ZADATAKA. UKOLIKO UČENIK IMA DRUGAČIJI ŽUANIJSKO NATJECANJE IZ MATEMATIKE 8. veljače 09. 8. razred - rješenja OVDJE SU DANI NEKI NAČINI RJEŠAVANJA ZADATAKA. UKOLIKO UČENIK IMA DRUGAČIJI OSTUAK RJEŠAVANJA, ČLAN OVJERENSTVA DUŽAN JE I TAJ OSTUAK

Више

Орт колоквијум

Орт колоквијум II колоквијум из Основа рачунарске технике I - 27/28 (.6.28.) Р е ш е њ е Задатак На улазе x, x 2, x 3, x 4 комбинационе мреже, са излазом z, долази четворобитни BCD број. Ако број са улаза при дељењу

Више

MATEMATIKA viša razina MATA.29.HR.R.K1.24 MAT A D-S MAT A D-S029.indd :30:29

MATEMATIKA viša razina MATA.29.HR.R.K1.24 MAT A D-S MAT A D-S029.indd :30:29 MATEMATIKA viša razina MAT9.HR.R.K.4.indd 9.9.5. ::9 Prazna stranica 99.indd 9.9.5. ::9 OPĆE UPUTE Pozorno pročitajte sve upute i slijedite ih. Ne okrećite stranicu i ne rješavajte zadatke dok to ne odobri

Више

Microsoft Word - CCERT-PUBDOC doc

Microsoft Word - CCERT-PUBDOC doc Analiza Qchain programskog paketa CCERT-PUBDOC-2003-02-04 Sigurnosni problemi u računalnim programima i operativnim sustavima područje je na kojem CARNet CERT kontinuirano radi. Rezultat toga rada ovaj

Више

1

1 Podsetnik: Statističke relacije Matematičko očekivanje (srednja vrednost): E X x p x p x p - Diskretna sl promenljiva 1 1 k k xf ( x) dx E X - Kontinualna sl promenljiva Varijansa: Var X X E X E X 1 N

Више

Microsoft Word - 6. RAZRED INFORMATIKA.doc

Microsoft Word - 6. RAZRED INFORMATIKA.doc Kriteriji ocjenjivanja i vrednovanja INFORMATIKA - 6. razred Nastavne cjeline: 1. Život na mreži 2. Pletemo mreže, prenosimo, štitimo, pohranjujemo i organiziramo podatke 3. Računalno razmišljanje i programiranje

Више

Numerička matematika 11. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. p

Numerička matematika 11. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. p Numerička matematika 11. predavanje dodatak Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. predavanje dodatak p. 1/46 Sadržaj predavanja dodatka

Више

1 MATEMATIKA 1 (prva zadaća) Vektori i primjene 1. U trokutu ABC točke M i N dijele stranicu AB na tri jednaka dijela. O

1 MATEMATIKA 1 (prva zadaća) Vektori i primjene 1. U trokutu ABC točke M i N dijele stranicu AB na tri jednaka dijela. O http://www.fsb.hr/matematika/ (prva zadać Vektori i primjene. U trokutu ABC točke M i N dijele stranicu AB na tri jednaka dijela. Označite CA= a, CB= b i izrazite vektore CM i CN pomoću vektora a i b..

Више

(Microsoft Word - Dr\236avna matura - rujan osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - rujan osnovna razina - rje\232enja) I. ZADATCI VIŠESTRUKOGA IZBORA. B. Broj je cijeli broj, tj. pripada skupu cijelih brojeva Z. Skup cijelih brojeva Z je pravi podskup skupa racionalnih brojeva Q, pa je i racionalan broj. 9 4 je očito broj

Више

Optimizacija

Optimizacija Optimizacija 1 / 43 2 / 43 Uvod u optimizaciju Zadana funkcija Uvod u optimizaciju f : R n R Cilj: Naći x, točku minimuma funkcije f : - Problem je jednostavno opisati x = arg min x R n f (x). - Rješavanje

Више

1 Konusni preseci (drugim rečima: kružnica, elipsa, hiperbola i parabola) Definicija 0.1 Algebarska kriva drugog reda u ravni jeste skup tačaka opisan

1 Konusni preseci (drugim rečima: kružnica, elipsa, hiperbola i parabola) Definicija 0.1 Algebarska kriva drugog reda u ravni jeste skup tačaka opisan 1 Konusni preseci (drugim rečima: kružnica, elipsa, hiperbola i parabola) Definicija 0.1 Algebarska kriva drugog reda u ravni jeste skup tačaka opisan jednačinom oblika: a 11 x 2 + 2a 12 xy + a 22 y 2

Више

Algoritmi SŠ P1

Algoritmi SŠ P1 Županijsko natjecanje iz informatike Srednja škola 9. veljače 2018. RJEŠENJA ZADATAKA Napomena: kodovi za većinu opisanih algoritama dani su u Pythonu radi jednostavnosti i lakše čitljivosti. Zbog prirode

Више

Microsoft Word - Matematika_kozep_irasbeli_javitasi_0611_horvatH.doc

Microsoft Word - Matematika_kozep_irasbeli_javitasi_0611_horvatH.doc Matematika horvát nyelven középszint 0611 ÉRETTSÉGI VIZSGA 006. május 9. MATEMATIKA HORVÁT NYELVEN MATEMATIKA KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA PISMENI ISPIT SREDNJEG STUPNJA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ

Више

Slide 1

Slide 1 0(a) 0(b) 0(c) 0(d) 0(e) :: :: Neke fizikalne veličine poput indeksa loma u anizotropnim sredstvima ovise o iznosu i smjeru, a nisu vektori. Stoga se namede potreba poopdavanja. Međutim, fizikalne veličine,

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Pokazivači Pointeri Definicija pokazivača Pokazivač na tip je varijabla koja sadrži adresu varijable tipa tip. Definicija pokazivača: mem_klasa tip * p_var; Primjer: static int * pi; double *px; char*

Више

No Slide Title

No Slide Title Statistika je skup metoda za uređivanje, analiziranje i grafičko prikazivanje podataka. statistika???? Podatak je kvantitativna ili kvalitativna vrijednost kojom je opisano određeno obilježje (svojstvo)

Више

Infokup - Školsko Osnovne škole Algoritmi BaPaCpp

Infokup - Školsko Osnovne škole Algoritmi BaPaCpp 21.. siječnja 2013.. od 1:30 do 16:30 Školsko natjecanje / Algoritmi (Basic/Pascal/C/C++) Sadržaj Zadaci... 1 Zadatak: Napolitanke... 2 Zadatak: Peking... 3 Zadatak: Joker... Zadaci U tablici možete pogledati

Више

Microsoft Word - AIDA2kolokvijumRsmerResenja.doc

Microsoft Word - AIDA2kolokvijumRsmerResenja.doc Konstrukcija i analiza algoritama 2 (prvi kolokvijum, smer R) 1. a) Konstruisati AVL stablo od brojeva 100, 132, 134, 170, 180, 112, 188, 184, 181, 165 (2 poena) b) Konkatenacija je operacija nad dva skupa

Више

Sveučilište J.J. Strossmayera Fizika 2 FERIT Predložak za laboratorijske vježbe Lom i refleksija svjetlosti Cilj vježbe Primjena zakona geometrijske o

Sveučilište J.J. Strossmayera Fizika 2 FERIT Predložak za laboratorijske vježbe Lom i refleksija svjetlosti Cilj vježbe Primjena zakona geometrijske o Lom i refleksija svjetlosti Cilj vježbe Primjena zakona geometrijske optike (lom i refleksija svjetlosti). Određivanje žarišne daljine tanke leće Besselovom metodom. Teorijski dio Zrcala i leće su objekti

Више

EUROPSKA KOMISIJA Bruxelles, C(2018) 3697 final ANNEXES 1 to 2 PRILOZI PROVEDBENOJ UREDBI KOMISIJE (EU) /... o izmjeni Uredbe (EU) br. 1301

EUROPSKA KOMISIJA Bruxelles, C(2018) 3697 final ANNEXES 1 to 2 PRILOZI PROVEDBENOJ UREDBI KOMISIJE (EU) /... o izmjeni Uredbe (EU) br. 1301 EUROPSKA KOMISIJA Bruxelles, 13.6.2018. C(2018) 3697 final ANNEXES 1 to 2 PRILOZI PROVEDBENOJ UREDBI KOMISIJE (EU) /... o izmjeni Uredbe (EU) br. 1301/2014 i Uredbe (EU) br. 1302/2014 u pogledu odredaba

Више

Računarski praktikum I - Vježbe 07 - Podstrukture, const, reference

Računarski praktikum I - Vježbe 07 - Podstrukture, const, reference Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 07 - Podstrukture, const, reference v2018/2019. Sastavio: Zvonimir Bujanović Podstrukture Član

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Datoteke nastavak Funkcija fgets Funkcija koja učitava podatke iz datoteke, liniju po liniju, je char *fgets(char *str, int n, FILE *fp); gdje su str pokazivač na dio memorije (string) u koji će ulazna

Више

Recuva CERT.hr-PUBDOC

Recuva CERT.hr-PUBDOC Recuva CERT.hr-PUBDOC-2019-5-379 Sadržaj 1 UVOD... 3 2 INSTALACIJA ALATA RECUVA... 4 3 KORIŠTENJE ALATA RECUVA... 7 4 ZAKLJUČAK... 13 Ovaj dokument izradio je Laboratorij za sustave i signale Zavoda za

Више

5S prezentacija - za printati bez videa i igre (3)

5S prezentacija - za printati bez videa i igre (3) Lean 5S Anja Štefanić, mag.oec. copyright Što je 5S? Alat Lean menadžmenta Alat koji se čini jednostavan, no mnoga poduzeća ignoriraju baš te osnovne principe Baza uspješne implementacije Fokusira se

Више

UDŽBENIK 2. dio

UDŽBENIK 2. dio UDŽBENIK 2. dio Pročitaj pažljivo Primjer 1. i Primjer 2. Ova dva primjera bi te trebala uvjeriti u potrebu za uvo - denjem još jedne vrste brojeva. Primjer 1. Živa u termometru pokazivala je temperaturu

Више

2015_k2_z12.dvi

2015_k2_z12.dvi OBLIKOVANJE I ANALIZA ALGORITAMA 2. kolokvij 27. 1. 2016. Skice rješenja prva dva zadatka 1. (20) Zadano je n poslova. Svaki posao je zadan kao vremenski interval realnih brojeva, P i = [p i,k i ],zai

Више

knjiga.dvi

knjiga.dvi 1. Vjerojatnost 1. lgebra dogadaja......................... 1 2. Vjerojatnost............................. 9 3. Klasični vjerojatnosni prostor................. 14 4. eskonačni vjerojatnosni prostor...............

Више

Microsoft Word - privitak prijedloga odluke

Microsoft Word - privitak prijedloga odluke Informatički sustav za prikupljanje, simulaciju i prikaz podataka o cijenama javnih komunikacijskih usluga (dalje: Sustav e-tarife) Zagreb, HRVATSKA AGENCIJA ZA POŠTU I ELEKTRONIČKE KOMUNIKACIJE Roberta

Више

My_P_Trigo_Zbir_Free

My_P_Trigo_Zbir_Free Штa треба знати пре почетка решавања задатака? ТРИГОНОМЕТРИЈА Ниво - Основне формуле које произилазе из дефиниција тригонометријских функција Тригонометријске функције се дефинишу у правоуглом троуглу

Више

Računarski praktikum I - Vježbe 03 - Implementacija strukture string

Računarski praktikum I - Vježbe 03 - Implementacija strukture string Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 03 - Implementacija strukture string v2018/2019. Sastavio: Zvonimir Bujanović Stringovi u C-u String

Више

Microsoft PowerPoint - Rittal konfigurator 2019_prezentacija__HR

Microsoft PowerPoint - Rittal konfigurator 2019_prezentacija__HR Rittal Configuration System Online konfigurator za Rittalove ormare PM-M N. Treml 19.07.2018 1 Jednostavnost konfiguracije Odaberite sustav Samostalni ormar, sustav ormara, različite dimenzije Konfigurirajte

Више

eredar Sustav upravljanja prijavama odjelu komunalnog gospodarstva 1 UPUTE ZA KORIŠTENJE SUSTAVA 1. O eredar sustavu eredar je sustav upravljanja prij

eredar Sustav upravljanja prijavama odjelu komunalnog gospodarstva 1 UPUTE ZA KORIŠTENJE SUSTAVA 1. O eredar sustavu eredar je sustav upravljanja prij eredar Sustav upravljanja prijavama odjelu komunalnog gospodarstva 1 UPUTE ZA KORIŠTENJE SUSTAVA 1. O eredar sustavu eredar je sustav upravljanja prijavama koje građani mogu slati Upravnom odjelu za komunalno

Више

Daljinski upravljiva utičnica

Daljinski upravljiva utičnica Zvonimir Miličević;Martin Berić SEMINARSKI RAD - SPVP Projekt u sklopu Pametna kuća Poznavanje ugradbenih računalnih sustava Načini upravljanja na daljinu 14. lipnja 2018 Sažetak Svakome se dogodilo da

Више

Microsoft Word - Dopunski_zadaci_iz_MFII_uz_III_kolokvij.doc

Microsoft Word - Dopunski_zadaci_iz_MFII_uz_III_kolokvij.doc Dopunski zadaci za vježbu iz MFII Za treći kolokvij 1. U paralelno strujanje fluida gustoće ρ = 999.8 kg/m viskoznosti μ = 1.1 1 Pa s brzinom v = 1.6 m/s postavljana je ravna ploča duljine =.7 m (u smjeru

Више

(Microsoft Word vje\236ba - LIMES FUNKCIJE.doc)

(Microsoft Word vje\236ba - LIMES FUNKCIJE.doc) Zadatak Pokažite, koristeći svojstva esa, da je ( 6 ) 5 Svojstva esa funkcije u točki: Ako je k konstanta, k k c c c f ( ) L i g( ) M, tada vrijedi: c c [ f ( ) ± g( ) ] c c f ( ) ± g( ) L ± M c [ f (

Више

Matematika_kozep_irasbeli_javitasi_1013_horvat

Matematika_kozep_irasbeli_javitasi_1013_horvat Matematika horvát nyelven középszint 1013 ÉRETTSÉGI VIZSGA 013. május 7. MATEMATIKA HORVÁT NYELVEN KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ EMBERI ERŐFORRÁSOK MINISZTÉRIUMA Formalni

Више

8 2 upiti_izvjesca.indd

8 2 upiti_izvjesca.indd 1 2. Baze podataka Upiti i izvješća baze podataka Na početku cjeline o bazama podataka napravili ste plošnu bazu podataka o natjecanjima učenika. Sada ćete izraditi relacijsku bazu u Accessu o učenicima

Више

kriteriji ocjenjivanja - informatika 8

kriteriji ocjenjivanja - informatika 8 8. razred Nastavne cjeline: 1. Osnove informatike 2. Pohranjivanje multimedijalnih sadržaja, obrada zvuka 3. Baze podataka - MS Access 4. Izrada prezentacije 5. Timska izrada web stranice 6. Kritički odnos

Више

Skalarne funkcije više varijabli Parcijalne derivacije Skalarne funkcije više varijabli i parcijalne derivacije Franka Miriam Brückler

Skalarne funkcije više varijabli Parcijalne derivacije Skalarne funkcije više varijabli i parcijalne derivacije Franka Miriam Brückler i parcijalne derivacije Franka Miriam Brückler Jednadžba stanja idealnog plina uz p = nrt V f (x, y, z) = xy z x = n mol, y = T K, z = V L, f == p Pa. Pritom je kodomena od f skup R, a domena je Jednadžba

Више

Microsoft PowerPoint - podatkovni promet za objavu.pptx

Microsoft PowerPoint - podatkovni promet za objavu.pptx 1 2 3 Što je složaj protokola (protocol suite)? Pojedini protokol se odnosi samo na jedno pitanje koje omogućava komunikaciju. Kada se kombinira više protokola, grupa protokola koja je rezultat takve kombinacije

Више

Državno natjecanje / Osnove informatike Srednje škole Zadaci U sljedećim pitanjima na odgovore odgovaraš upisivanjem slova koji se nalazi ispred

Državno natjecanje / Osnove informatike Srednje škole Zadaci U sljedećim pitanjima na odgovore odgovaraš upisivanjem slova koji se nalazi ispred Zadaci. 8. U sljedećim pitanjima na odgovore odgovaraš upisivanjem slova koji se nalazi ispred točnog odgovora, u za to predviđen prostor. Odgovor Ako želimo stvoriti i pohraniti sliku, ali tako da promjenom

Више

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA ZAVRŠNI RAD br Autonomno kretanje virtualnih objekata Marin Hrkec Zagreb, lipanj 201

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA ZAVRŠNI RAD br Autonomno kretanje virtualnih objekata Marin Hrkec Zagreb, lipanj 201 SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA ZAVRŠNI RAD br. 6404 Autonomno kretanje virtualnih objekata Marin Hrkec Zagreb, lipanj 2019. iii SADRŽAJ 1. Uvod 1 2. Korišteni alati i tehnologije

Више

УПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: Након

УПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese:   Након УПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: http://www.srpskiarhiv.rs/ Након тога се на екрану појављује форма за пријаву на часопис

Више

1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K.

1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K. 1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K. Elementi a k K su koeficijenti polinoma P (x). Ako

Више