UNIVERZITET CRNE GORE ELEKTROTEHNIČKI FAKUTET PRIMJENA FPGA TEHNOLOGIJE U OBRADI SLIKE

Size: px
Start display at page:

Download "UNIVERZITET CRNE GORE ELEKTROTEHNIČKI FAKUTET PRIMJENA FPGA TEHNOLOGIJE U OBRADI SLIKE"

Transcription

1 UNIVERZITET CRNE GORE ELEKTROTEHNIČKI FAKUTET PRIMJENA FPGA TEHNOLOGIJE U OBRADI SLIKE - Diplomski rad - Kandidat: Milena Zogović Podgorica, jul godine

2 UNIVERZITET CRNE GORE ELEKTROTEHNIČKI FAKUTET Broj: Podgorica, godine Kandidat: Milena Zogović Broj indeksa: 37/02 Naziv rada: PRIMJENA FPGA TEHNOLOGIJE U OBRADI SLIKE Datum izdavanja rada : Datum predaje rada : Mentor Kandidat: Doc. Dr Radovan Stojanović Milena Zogović

3 IZJAVA O SAMOSTALNOM RADU Ovim izjavljujem da sam diplomski rad uradila samostalno uz pomoć konsultacija sa mentorom i navedene literature. Milena Zogović Rad odbranjen dana: godine pred Komisijom u sastavu: 1. (Predsjednik) 2. (Mentor) 3. (Član) sa ocjenom ( ).

4 Sadržaj 1. Uvod Osnovni pojmovi o FPGA dizajnu PLD ASIC ASSP FPGA Primjena FPGA Razvoj i struktura FPGA Obrada slike bazirana na FPGA tehnologiji Lokalni algoritmi Local neighborhood funkcije Konvolucija Morfologija CPU- FPGA. FPGA baziran akcelerator Cilj istraživanja. Alati. Resursi Generalni pristup Arhitektura predloženog rješenja Kontrolna (Control) jedinica Data manager Kompletan dizajn fleksibilnog rješenja za obradu slike Implementacija operatora Pixel point operatori Kontrast Histogram Pixel area operacije Median filtar Mean Filtar Detekcija ivica Eksperimentalna verifikacija Zaključak Prilog Literatura...56

5 Popis slika Slika 2.1. Prva osnovna logička jedinica FPGA čipa...4 Slika 2.2. Više povezanih logičkih blokova...4 Slika 2.3. MUX baziran logički blok...5 Slika 2.4. Pojednostavljen izgled Xilinix ove logičke ćelije...5 Slika 2.5. Slice...6 Slika 2.6. CLB...6 Slika 2.7. Izgled čipa sa ugrađenim memorijskim blokovima...7 Slika 2.8. Izgled čipa koji je programiran da obavlja funkciju median filtra nad slikom dimenzija 256x256 a) sa generic komponentama; b) uz upotrebu memorijskih ćelija na čipu...7 Slika 3.1. Neighborhood funkcija se primjenjuje na svaki piksel slike...10 Slika 3.2. Piksel paralelizam paralelizam na nivou instrukcija...10 Slika 3.3. Moguća realizacija 2-D konvolucije...12 Slika 3.4 -Treshold dekompozicija za median filtar...13 Slika 3.5. Konceptualni hardverski i softverski dizajn hardverski "ubrzanog" sistema...15 Slika 4.1. UP3 Board Diagram...17 Slika 4.2. UP3 edukacioni kit...18 Slika 4.3. "TBLizer" a) generisanje i očitavanje *.tbl fajla za sliku; b) generisanje i očitavanje *.tbl fajla za vektor...20 Slika 5.1. Simulacioni dijagram rada control jedinice: a) vektor dužine 16, maska 1x5; b) slika dimenzija 8x8, maska 1x3; c) slika dimenzija 8x8, maska 3x3;...23 Slika 5.2. Utrošeni resursi za realizaciju control jedinice: a) 1-D signal; b) 2-D signal, 1-D maska; c) 2-D signal, 2-D maska...23 Slika 5.3. Simulacioni dijagram rada data manager-a, maska 1x Slika 5.4. Realizacija Data managera u QuartusII razvojnom okruženju a) kompletan dizajn; b) unutrašnja struktura bloka fifo_256; c) unutrašnja struktura bloka fifo_ Slika 5.5. Simulacioni dijagram rada data managera za sliku 8x8 i prozor 3x Slika 5.6. Utrošeni resursi: a) 1-D maska; b) 2-D maska, fleksibilan VHDL data manager; c) 2-D maska, nefleksibilan VHDL data manager...27 Slika 5.7. Blok šema median filtra prozora 3x Slika 5.8. Simulacioni dijagram rada kompletnog dizajna...29 Slika 6.1. Simulacioni dijagram operacije kontrast za 1D signal dužine Slika 6.2. Različit stepen kontrasta primijenjen na 1-D signal...31

6 Slika 6.3. a) originalna slika "Lena", dimenzija 256x256; b) kontrast 25 jedinica; c)kontrast 50 jedinica; d) kontrast 75 jedinica...32 Slika 6.4. Histogram slike "Lena" dimenzija 256x Slika 6.5. Princip realizacije druge grupe area operatora...34 Slika 6.6. Odabir širine maske u zavisnosti od intenziteta šuma: a) originalna slika "LENA" dimenzija 256x256; b) slika zahvaćena impulsnim šumom intenziteta 0.5; c) i d) frekvencijski spektri slika; e) i f) prvih 300 odbiraka analiziranih slika...35 Slika 6.7. Odabir širine maske u zavisnosti od intenziteta šuma: a) originalna slika "LENA" dimenzija 256x256; b) slika zahvaćena impulsnim šumom intenziteta 0.05; c) i d) frekvencijski spektri slika; e) i f) prvih 1000 odbiraka analiziranih slika...36 Slika 6.8. Izračunavanje median operatora pomoću partial sort algoritma...37 Slika 6.9. Simulacioni dijagram bazičnog kola median filtra za širinu maske Slika a) signal zahvaćen slučajno generisanim impulsnim šumom; b) signal na izlazu iz median filtra maske 1x5 (crvena linija na grafiku); c) poređenje originalnog i signala dobijenog na izlazu iz filtra...38 Slika a) slika zahvaćena impulsnim šumom intenziteta 0.03; b) slika dobijena filtriranjem VHDL median filtrom, maske 1x5; c) slika dobijena filtriranjem Matlab median filtrom, maske 1x Slika a) slika zahvaćena impulsnim šumom intenziteta 0.03; b) slika dobijena filtriranjem VHDL median filtrom, maske 3x3; c) slika dobijena filtriranjem Matlab median filtrom, maske 3x Slika Simulacioni dijagram kompletnog median filtra, prozora 3x Slika Broj upotrijebljenih logičkih i memorijskih elemenata za realizaciju: a) bazičnog kola median filtra širine prozora 3, 5, 7, 9; b) kompletnog median filtra sa 1-D i 2-D maskom za različite dimenzije slike, sa generic data_manager-om; c) kompletnog median filtra sa 2-D maskom, sa upotrebom memorijskih ćelija na čipu tj. non generic data_manager-om...40 Slika Gausova raspodjela...41 Slika a) signal zahvaćen Gausovim šumom; b) signal na izlazu iz mean filtra širine maske 9, crvena linija na grafiku; c) poređenje originalnog i signala dobijenog na izlazu iz mean filtra...42 Slika Frekvencijski spektar signala...42 Slika Poređenja Matlab- VHDL mean filtar...43 Slika Greška VHDL mean filtra u odnosu na Matlab mean filtar...43 Slika Simulacija rada bazičnog kola mean filtra za masku 1x Slika Simulacioni dijagram rada kompletnog mean filtra, maska 1x Slika a) slika "Lena" zahvaćena Gausovim šumom intenziteta 0.01; b) slika "Lena" poslije filtriranja VHDL mean filtrom, maske 3x3; c) slika "Lena" poslije filtriranja Matlab filtrom maske 3x3...45

7 Slika a) slika "Lena" zahvaćena Gausovim šumom intenziteta 0.01; b) slika "Lena" poslije filtriranja VHDL mean filtrom, maske 3x3; c) slika "Lena" poslije filtriranja Matlab filtrom maske1x Slika Broj upotrijebljenih logičkih i memorijskih elemenata za realizaciju: a) kompletnog mean filtra sa 1-D i 2-D maskom za različite dimenzije slike, sa generic data_manager-om; b) kompletnog mean filtra sa 2-D maskom, sa upotrebom memorijskih ćelija na čipu tj. non generic data_manager-om...45 Slika a) Prewitt-ova matrca za detekciju vertikalnih odnosno horizontalnih ivica b) Sobel-ova matrica za detekciju vertikalnih odnosno horizontalnih ivica...46 Slika Detekcija ivica sa tresholding-om, pomoću Prewitt-ove matrice, prag- 120 a) izvršena u Matlab-u; b) izvršena u VHDL-u...47 Slika Detekcija ivica pomoću Prewitt-ove matrice, prag- 100 a) izvršena u Matlab-u; b) izvršena u VHDL-u...47 Slika Detekcija ivica sa tresholding-om pomoću Sobel-ove matrice, prag 140 a) izvršena u Matlab-u; b) izvršena u VHDL-u...48 Slika Detekcija ivica pomoću Sobel-ove matrice, prag-100 a) izvršena u Matlab-u; b) izvršena u VHDL-u...48 Slika Pregled utrošenih resursa za realizaciju kola za detekciju ivica...49 Slika 7.1. Eksperimentalna verifikacija...50 Slika 7.2. Fotografija eksperimentalne opreme...50 Slika 7.3. Mikrokontrolersko kolo za praktičnu verifikaciju FPGA baziranih aplikacija...51

8 Popis tabela Tabela Karakteristike čipa Cyclone EP1C6Q240C Tabela Raspored pinova verifikacionog kola....52

9 Popis skraćenica AS ASHA ASIC ASSP CLB CMOS CPU DFT DSP FFT FIFO FPGA HDL IIR IP ISP JTAG LAB LUT MC OTP PBF PCI PLD RAM RC SDR SoC SRAM USB VHDL VLSI Active Serial Application Specific Hardware Acceleration Application Specific Integrated Circuits Application Specific Standard Parts Configurable Logic Block Complementary Metal-Oxide Semiconductor Central Processing Unit Discreet Fourier Transformation Digital Signal Processing Fast Fourier Transformation First In First Out Field Programmable Gate Arrays Hardware Description Language Infinite Impulse Response Image Processing In-System Programmable Joint Test Action Group Logic Array Block Look Up Table MicroController One-Time Programmable Positive Boolean Functions Peripheral Component Interconnect Programmable Logic Devices Random Access Memory Reconfigurable Computing Software Defined Radios System on Chip Static Random Access Memory Universal Serial Bus VeryHighSpeedIntegratedCircuits Hardware Description Language Very Large Scale Integration

10 Sažetak: U radu se prezentuje primjena FPGA tehnologije u obradi slike. Dati su opšti principi projektovanja ovakvih sistema, kao i primjeri konkretnih realizacija. U okviru praktičnog dijela rada, predstavljena je orginalna metodologija projektovanja fleksibilnih kola za obradu signala kroz generalni pristup i funkcionalni opis pojedinih komponenti. Izvršena je implementacija nekih operatora kao što su histogram, kontrast, mean filtar, median filtar i detekcija ivica. U cilju praktične potvrde izloženih pristupa i rješenja, dati su simulacioni dijagrami proistekli iz razvijenog VHDL koda, poređenje sa rezultatima dobijenim u Matlab-u, kao i rezultati testiranja i eksperimentalne verifikacije na Alterinom razvojnom sistemu UP3. Uz konkretne primjere, dodatno se elaboriraju potrebni silicijumskim resursima za hardversku implementaciju pojedinih operatora (algoritama) kao i ostalih funkcionalnih cjelina. Abstract: This paper presents the application of FPGA technology in image processing. The general principles of designing of such systems through the specific realization examples are shown. Throughout practical part of this thesis, selected design methodology of flexible circuits for signal processing are presented through general approach and functional description of specific components. Some operators such as histogram, contrast, mean filter, median filter and edge detection are also accomplished. For experimental approval of presented approach the simulation diagrams resulted from developed VHDL code, comparison with results from Matlab as well as the testing results and experimental verification from Altera s development board UP3 are given. Also, the necessary silicone resources used for hardware implementation of some operators (algorithms) and other modules are elaborated.

11 1. Uvod U radu se prezentuju opšti principi i primjeri realizacije FPGA baziranih operatora nad vektorom i slikom. U poglavlju 2 izloženi su osnovni pojmovi o FPGA, poređenje sa ASIC, ASSP i PLD thenologijama, oblasti primjene kao i razvojni trendovi. FPGA u funkciji obrade slike je tema poglavlja 3. Dalje je dato poređenje pristupa u izvršavanju procesa CPU- FPGA, kao i primjer hardverskog rekonfigurabilnog akceleratora. Slijedi praktičan rad. Najprije su izloženi alati i raspoloživi resursi za praktičnu realizaciju (poglavlje 4), zatim generalni pristup i implementacija konkretnih operatora. U okviru ovog dijela detaljno je predstavljena metodologija projektovanja FPGA baziranih operatora za obradu 1-D i 2-D signala. Posebno je objašnjena upravljačka i kontrolna logika na nivou nekoliko pristupa i primjera realizacije. Jedinice koje obavljaju pomenute funkcije su fleksibilne u smislu nezavisnosti od tipa operatora. U poglavlju 6 prikazane su realizacije pojednih operatora po tipovima i složenosti kao što su histogram, kontrast, mean filtar, median filtar i detektori ivica. Za sva realizovana kola dati su simulacioni dijagrami, rezultati testiranja kao i potrebni logički i memorijski resursi. U okviru rada izvršena je i eksperimentalna verifikacija pojedinih operatora na Alterinom razvojnom sistemu UP3. Jedan primjer integralnog okruženja za verifikaciju FPGA baziranih algoritama je dat u poglavlju 7. Slijede zaključak i smjernice za budući rad. Sastavni dio rada predstavlja i priloženi CD koji pored elektronske verzije rada sadrži i odgovarajuće kodove. 1

12 2. Osnovni pojmovi o FPGA dizajnu FPGA su digitalna integrisana kola koja sadrže programabilne logičke blokove. Veze među ovim blokovima se mogu definisati postupkom konfiguracije. Kao takva, ova kola imaju veoma široko polje primjene. Zavisno od načina implementacije, postoje FPGA koji se mogu programirati samo jednom OTP, kao i reprogramabilni. "Field programmable" ukazuje na činjenicu da se programiranje vrši "in the field" (suprotno uređajima čiju internu funkcionalnost određuje proizvođač i ne može se mijenjati- hard-wired). Ovo može da znači da se FPGA konfigurišu u laboratoriji, ili može ukazati na mogućnost modifikacije rada uređaja u nekom već razvijenom elektronskom sisitemu. Ako je uređaj moguće programirati, dok on ostaje stalan u nekom sisitemu višeg reda, onda je riječ o ISP-u PLD ASIC ASSP FPGA Postoji mnogo različitih vrsta digitalnih integrisanih kola, počevši od "jelly-bean logic" (malih komponenti koje obavljaju neke jednostavne, fiksne logičke funkcije), preko memorijskih uređaja, do mikroprocesora. Ovdje su od posebnog interesa programabilni logički uređaji - PLD, integrisana kola spcifične namjene - ASIC, standardni moduli specifične namjene - ASSP i naravno FPGA. PLD su uređaji čija je unutrašnja arhitektura određena od strane proizvođača, ali koji se mogu programirati za specifične namjene. U poređenju sa FPGA, ovi uređaji imaju ograničen znatno manji broj logičkih ćelija i u skladu s tim mogu se koristiti za mnogo jednostavnije funkcije. Na drugoj strani ASIC i ASSP mogu sadržati stotine miliona logičkih kola i mogu se koristiti za implementaciju veoma složenih funkcija. ASIC i ASSP su zasnovani na istom dizajnu i proizvodnim tehnologijama. Oba su custom-design i pogodni za specifične aplikacije, jedina razlika je što je ASIC dizajniran i namijenjen za određenu kompaniju, "po narudžbi", dok se ASSP proizvode za šire tržište. Iako je ASIC ograničen u veličini (broju tranzistora), složenosti i performansama, karakteriše ga veliko vrijeme izrade, visoka cijena, sa dodatnim nedostacima da je finalni dizajn "frozen in silicon" i ne može biti promijenjen osim kreiranjem novog dizajna. FPGA ima osobine i ASIC- a i PLD- a. Može se vršiti programiranje "in the field" kao kod PLD, a može sadržati veoma veliki broj logičkih elemenata i obavljati širok spektar veoma složenih, specifičnih funkcija, što je osobina ASIC-a. Cijena FPGA dizajna je mnogo niža nego ASIC komponente, dok je proces implementacije određene funkcije na FPGA čipu mnogo jednostavniji, a vrijeme izrade mnogo kraće. Obzirom na prirodu FPGA dizajna, moguće je da pojedinci ili grupe inženjera implementuraju svoje hardverske i softverske koncepte na FPGA baziranim test-platformama, bez izlaganja visokim troškovima Primjena FPGA Kada se prvi put pojavio FPGA dizajn, sredinom osamdesetih godina, koristio se za implementaciju glue logic, ne mnogo složenih state-mašina, kao i za relativno jednostavno procesiranje podataka. Kako se ranih devedesetih intenzivno razvijala ova 2

13 tehnologija, došlo je do široke primjene u telekomunikacijama i mrežama za procesiranje većih blokova podataka. Krajem devedesetih FPGA se intenzivno koristio u industrijskim i raznim drugim automatizovanim aplikacijama. FPGA obezbjeđuje hardversku platformu na kojoj se može izvršiti fizička provjera nekog novog algoritma. Niska razvojna cijena i brza implementacija željene funkcije u ovoj tehnologiji čini je direktno konkurentnom ASIC-u. Početkom 2000-te godine razvijeni su FPGA čipovi visokih performansi sa milionima logičkih kola. Neki od njih sadrže mikroprocesorske core-ove, visoko frekventne I/O interfejse itd. Sada se FPGA mogu koristiti u najrazličitije svrhe - za komunikacione uređaje, npr. za radio-komunikacioni sistem koji koristi softver za modulaciju i demodulaciju radio signala - SDR, odbrambene sisteme, medicinski imaging, mašinsku viziju, sisteme za obradu slike, prepoznavanje govora, kriptografiju, bioinformatiku, radare i mnoge druge primjene u digitalnoj obradi signala - DSP, za SoC komponenete koje sadrže softverske i hardverske elemente. Preciznije, FPGA dizajn je trenutno našao primjenu tj. postao bolje rješenje u četiri velike oblasti: ASIC and custom silicon, DSP, primjene zasnovane na ugrađenom mikrokontroleru (embedded microcontrollers applications), fizički nivo komunikacionih čipova (physical layer communication chips). Dalje, FPGA je kreirao novo tržište u sopstvenom pravcu - RC. ASIC and custom silicon: Kao što je ranije rečeno, FPGA se intenzivno koristi za implementaciju različitih funkcija koje su se ranije mogle realizovati samo pomoću ASIC i custom silicon-a. Digital signal processing: DSP velike brzine su obično bili implementirani pomoću specijalno prilagođenih mikroprocesora - DSP. Međutim, sadašnji FPGA može sadržati ugrađene množače, namjenske aritmetičke rutine, on-chip RAM, što olakšava DSP operacije. Kada se ovim pogodnostima doda mogućnost paralelnog izvršavanja operacija, što FPGA nudi, rezultat je više od 500 puta veća brzina od najbržeg DSP čipa. Embedded microcontrollers: Male kontrolne funkcije su se obavljale pomoću ugrađenih procesora specijalne namjene- mikrokontrolera. Ovi uređaji sadrže on-chip programsku memoriju, timer-e, I/O periferije kao i procesorsko jezgro. Kako FPGA cijene konstantno padaju, i najmanji među ovim uređajima imaju više nego dovoljno kapaciteta za implementaciju soft processor core-a u kombinaciji sa I/O funkcijama. Rezultat ovoga je sve veća upotreba FPGA za ugrađene kontrolne aplikacije (embedded control applications). Physical layer communications: FPGA se dugo koristio za implementaciju glue logica kao veze između fizičkog nivoa komunikacionih čipova i visokog nivoa mrežnog protokola. Današnji FPGA mogu sadržati veliki broj primopredajnika što znači da komunikacione i mrežne funkcije mogu biti sjedinjene u jednom dizajnu. Reconfigurable computing: Ukazuje na upotrebu svojstvenog paralelizma i mogućnosti rekonfiguracije koju nudi FPGA dizajn, a koja se zasniva na "hardware accelerate" softverskim algoritmima. Mnoge kompanije izrađuju moćne, FPGA bazirane, rekonfigurabilne mašine koje vrše od raznih hardverskih simulacija, preko kriptografskih analiza, sve do suptilnih medicinskih istraživanja. 3

14 2.3. Razvoj i struktura FPGA Početkom osamdesetih uvidjelo se da treba prevazići nedostatke ASIC-a (visoka cijena, složenost i veliko vrijeme proizvodnog postupka) s jedne i PLD-a (ograničen veoma mali broj logičkih ćelija, nemogućnost realizacije složenijih funkcija) s druge strane. U tom cilju Xilinx je razvio posebnu vrstu integrisanih kola Field Programmable Gate Arrays, koja su bila dostupna na tržištu godine. Prvi FPGA su bili zasnovani na CMOS tehnologiji i koristili SRAM ćelije. Bili su bazirani na konceptu programabilnih logičkih blokova koji su obuhvatali tro-ulazne LUT, registar - flip-flop i multiplekser (Slika 2.1). Svaki FPGA je sadržao veliki broj ovih logičkih blokova (Slika 2.2). Svaki od njih je mogao biti konfigurisan za različitu funkciju. Na slici su označene i veze među blokovima koje karakteriše velika brzina prenosa signala. Slika Prva osnovna logička jedinica FPGA čipa. Slika Više povezanih logičkih blokova. Osnovni koncept je zadržan, ipak vršene su razne izmjene i dopune. Tako su se umjesto look-up tabela pokušali koristiti multiplekseri (Slika 2.3), međutim to nije bilo opravdano s aspekta brzine prenosa signala. 4

15 Slika MUX bazirani logički blok. Zatim se postavlja pitanje koji je optimalan broj ulaza look-up tabele. Povećanjem tog broja mogu se realizovati složenije funkcije, ali se povećava i broj SRAM ćelija. Optimum je postavljen na četiri ulaza. Ulogu look-up tabele može da obavlja i 16x1 RAM ili 16-bitni shift registar (Slika 2.4). Slika Pojednostavljen izgled Xilinix ove logičke ćelije. Sljedeći korak u hijerarhiji je 'slice'. Pogodno je ovako organizovati logičke ćelije jer su im kontrolni signali, kao i clock zajednički (Slika 2.5). 5

16 Slika 2.5 Slice. Na još višem nivou su LAB ili CLB (Slika 2.6). Razlog za uvođenje ove hijerarhije je prevazilaženje problema kašnjenja. Kašnjnje je raspoređeno po nivoima i može se lakše predvidjeti. Slika 2.6 CLB. Za mnoge aplikacije je potrbna dodatna memorija, zato FPGA sadrži ugrađen RAM (e-ram ili block RAM) (Slika 2.7). Ovi memorijski blokovi mogu biti korišteni pojedinačno ili u grupama za realizaciju FIFO funkcija, state mašina itd. Naravno, svaki čip sadrži I/O ćelije za komunikaciju sa okolinom. Današnji FPGA čipovi sadrže ugrađene DSP blokove za obavljanje složenih funkcija koje se često koriste (FFT, DFT...). 6

17 Slika Izgled čipa sa ugrađenim memorijskim blokovima. Čip kojim raspolaže laboratorija Elektrotehničkog fakulteta u Podgorici, gdje je velikim dijelom obavljeno i ovo istraživanje, je iz familije Cyclone tip - EP1C6Q240C8. Izgled ovog čipa nakon konfiguracije tj. programiranja dat je na slici (Slika 2.8). Intenzivnija boja označava veći stepen iskorištenosti resursa. Plavom bojom označeni su logički elementi, dok su zelenom označeni memorijski resursi. Detaljnije o realizacijama funkcija za koje je čip programiran u narednim poglavljima. Slika Izgled čipa koji je programiran da obavlja funkciju median filtra nad slikom dimenzija 256x256 a) sa generic komponentama; b) uz upotrebu memorijskih ćelija na čipu. Poznati proizvođači FPGA 7

18 Krajem godine ističu se dva vodeća proizvođača FPGA generalne namjene i veliki broj ostalih koji nude specifična, jedinstvena rješenja. Xilinix Altera Lattice Semiconductor Actel QuickLogic Cypress Semiconductor Atmel Achronix Semiconductor 8

19 3. Obrada slike bazirana na FPGA tehnologiji Osnovni cilj procesiranja signala slike jeste dobijanje izlaza visokog kvaliteta.tip signala na izlazu zavisi od specifičnosti aplikacije. Kao primjeri ovih aplikacija mogu se pomenuti detekcija objekata i sistemi za nadzor, detekcija defekata u automatizovanim sistemima za proizvodnju, klasifikacije scena za daljinsko upravljanje itd. Dobijanje informacije visokog nivoa je zahtjevan istraživački zadatak i predloženi su mnogi algoritmi. Rekonfigurabilni uređaji imaju široku primjenu kao akceleratori low level algoritama za obradu slike. Načelno, obrada slike se sastoji u preuzimanju podatka se senzora (ulaz) i dobijanja željene informacije kao izlaza. Svaki stepen ovog pipeline sistema može podrazumijevati višeulaznu - višeizlaznu transformaciju. Može postojati više izvora podataka, sa više senzora ili iz različitih vremenskih intervala Stepen poboljšanja kvaliteta slike podrazumijeva odstranjivanje šuma senzora i okoline Feature extraction (ekstrakcija karakteristika) Detekcija, klasifikacija, segmentacija Sa aspekta rekonfigurabilne logike korisno je napraviti sljedeću klasifikaciju IP algoritama: Lokalni algoritmi: Algoritam se primjenjuje na relativno mali broj piksela vremenski i prostorno bliskih posmatranom pikselu (piksel operacije, konvolucija, estimacija pokreta...). Globalni algoritmi: Algoritam kao ulaz zahtijeva podatke o cijeloj slici (FFT, histogram...). Generalno pravilo je minimizirati broj pristupa podacima, što je teško ostvariv ili nemoguć zahtjev ako se primjenjuje neki od globalnih algoritama Lokalni algoritmi Local neighborhood funkcije Ove funkcije poznate još kao sliding window i spatial filters se intenzivno koriste u procesiranju slike i sistemima kompjuterske vizije. Primjenjuju se za piksel na određenoj lokaciji, dok izlaz zavisi od njemu susjednih piksela. Ista funkcija se primjenju za svaki piksel slike (Slika 3.1). Slika ilustruje primjenu neighborhood funkcije za prozor dimenzija 3x3. Kada se ovakva funkcija pimijeni za obradu ivica slike, neki od susjednih piksela nisu definisani. U tom slučaju pikselu može biti dodijeljena vrijednost nula ili vrijednost najbližeg piksela. Takođe je moguće povećati dimenzije slike na ulazu i takvu sliku dalje obrađivati. 9

20 Slika Neighborhood funkcija se primjenjuje na svaki piksel slike. Prozor, u suštini, ima tri dimenzije- dvije prostorne i jednu vremensku. Dok je obrada nezavisna na svakoj prostornoj lokaciji, po vremenu to nije uvijek slučaj. Postoje sistemi sa vremenskom povratnom spregom - IIR. Ovakvi sistemi se odlikuju zahtjevima za širokim propusnim opsegom. Međutim, postoje mnogi načini za optimizaciju pristupa memoriji. Rekonfigurabilni hardver je idealna platforma za podešavanje memorijske hijerarhije i implementaciju algoritmom specificiranih "generatora" adresa. Postoje dva načina poboljšavanja performansi u smislu povećavanja brzine neighborhood funkcija: Piksel paralelizam Paralelizam na nivou instrukcija Celularni nizovi za ostvarivanje piksel paralelizama Celularni nizovi predstavljaju prirodan model za obradu slike. Sastoje se od niza ćelija u dvije, tri ili više dimenzija. Svaka ćelija sadrži jedan piksel slike i povezana je sa susjednim ćelijama. Ovakva lokalna komunikacija visokog propusnog opsega je idealna za implementaciju local neigborhood funkcija. Svi pikseli su procesirani paralelno. U FPGA tehnologiji je moguće realizovati programabilnu, maksimalno paralelnu implementaciju celularnog niza, ali se efektno može implementirati samo mali broj ćelija. Veći nizovi bi zahtijevali veliki prostor na čipu, opciono i vremensko multipleksiranje, dok bi I/O zahtjevi za inicijalizacijom niza i očitavanjem rezultata bili vremenski dominantni. Slika Piksel paralelizam paralelizam na nivou instrukcija. 10

21 Image Pipelines za ostvarivanje paralelizma na nivou instrukcija U ovom slučaju je implementirana samo jedna ćelija ekvivalentne celularne arhitekture. Ćelija je snabdjevena podatkom putem kontinulanog dotoka piksela. Najčešće se podaci prosljeđuju ćeliji uzorak po uzorak i u raster scan poretku. Ovaj postupak je pogodan za real time sisteme gdje podaci direktno stižu sa serijskog I/O senzora. Obzirom da se podaci precesuiraju sekvencijalno, glavni način za ubrzavanje image pipeline-a je izvršavanje više instrukcija paralelno. Kao što je prikazano na slici (Slika 3.2) instrukcije se mogu implementirati paralelno (povećavanjem širine pipeline sistema) ili serijski (povećavanjem dužine sistema). Za razliku od celularne arhitekture, pristupanje susjednim pikselima se mora dobro razmotriti. Obzirom da se sve instrukcije izvršavaju istovremeno, može biti problem proslijediti odgovarajući podatak u pravom trenutku. Opisna su dva potpuno različita pristupa- piksel paralelizam nasuprot paralelizmu na nivou instrukcija. U praksi može biti korisna bilo kakva kombinacija ova dva pristupa. Optimalno planiranje dizajna u velikoj mjeri zavisi od memorijskih kapaciteta FPGA čipa Konvolucija Vjerovatno najpoznatija local neighborhood funkcija je konvolucija, definisana jednakošću: F( i, j) = Wk, l * image( i k, j l),... (1) k l k, l K W, je težinski koeficijent konvolucione matrice, { k, l } K, K ( M 1) / 2, ( N 1) / 2 M = ( M 1) / 2,0 M ( M 1) / 2,( N 1) / 2 L O K N L 0, ( N 1) / 2 M 1, 1 0, 1 1, 1 1,0 0,0 1,0 1,1 0,1 1,1 M 0, ( N 1) / 2 L N K O L ( M 1) / 2, ( N 1) / 2 M ( M 1) / 2,0,... (2) M ( M 1) / 2,( N 1) / 2 M, N su dimenzije konvolucionog prozora. Odabirom odgovarajućih težinskih koeficijenata mogu se, pomoću konvolucije, ostvariti funkcije nisko-propunog, visoko-propusnog filtra kao i filtra propusnika opsega učestanosti, koje se intenzivno koriste u obradi slike. Za realizaciju niskopropusnih filtara koristi se konvoluciona matrica sa pozitivnim težinskim keficijentima. Ovi filtri služe za ostvarivanje smooth efekta. Visokopropusni filtri koriste konvolucionu matricu čiji je centralni koeficijent pozitivan, dok su ivični negativni. Koristi se za izoštravanje visokofrekventnih djelova slike kao što su ivice i detalji. Filtrom propusnikom opsega učestanosti može se ostvariti poboljšanje slike kao i izdvajanje djelova slike određenih oblika. 11

22 Jedno od mogućih rješenja za realizaciju konvolucije, konvolucionog prozora dimenzija 3x3, prikazano je na slici (Slika 3.3). Pikseli se učitavaju u sistem red po red, po zadatom clock-u. Poslije određenog vremena na izlazu sistema dobijaju se pikseli koji odgovaraju zadatom prozoru. U svakom sljedećem intervalu zadatog clock signala dobija se 9 novih piksela koji odgovaraju sljedećem položaju konvolucionog prozora. Slika Moguća realizacija 2-D konvolucije. Prikazano rješenje zahtijeva najmanji eksterni memorijski opseg, ali i najviše memorije na FPGA čipu. Naime, za sliku širine X i prozor širine W, potrebno je smjestiti na čip (W-1)*X+W piksela. Zadnjih godina proizvode se FPGA čipovi sa velikom memorijom, tako da je ovo rješenje ocijenjeno kao najprihvatljivije. Veličina ulaznog registra zavisi od širine slike. Ukoliko je slika veoma široka, dijeli se u segmente, a zatim se prosljeđuje segment po segment. Ovi segmenti se, naravno, moraju djelimično preklapati na krajevima. Ukoliko nema dovoljno kapaciteta za smještanje (W-1)*X+W piksela, potrebno je pristupati pikselima na određenim pozicijama u eksternoj memoriji tj. potrbno je ostvariti pristup pikselima iz tri različita reda. Registri na čipu se mogu iskoristiti za smještanje tih WxW piksela (za kvadratni prozor), a zatim se iz njih vršiti očitavanje po zadatom taktu. U opisanoj situaciji potrebno je pristupati istom pikselu tri puta. Postoje metode kojima se otklanja redudansa pristupa memoriji, zasnovane na neighborhood funkcijama za svaki red posebno i piksel paralelizmu Morfologija Pristup opisan u prethodnom tekstu, osim za konvoluciju, može se koristiti za mnogo složenije realizacije. Matematička morfologija definiše široku klasu algoritama za obradu slike gdje se blok za težinsko sumiranje zamjenjuje modulom za statistiku poretka. Najjednostavniji filtri iz ove klase su erozija i diletacija. Erozija se definiše kao minimalna vrijednost piksela iz seta piksela, dok je diletacija maksimalna vrijednost. Veoma popularan, iz ove grupe filtara, je i median filtar. 12

23 Tehnika pod nazivom treshold dekompozicija je uvedena za analizu median filtra. Pikseli sivoskalirane slike se prosljeđuju ka bit-level hardveru. Na slici je prikazana realizacija 1-D median filtra (Slika 3.4). Ulazni pikseli se najprije upoređuju sa vrijednostima svih kvantizacionih nivoa. Na taj način se formira binarni stek. Svaki kvantizacioni nivo se dalje propušta kroz PBF operator. Za tačan rezultat na izlazu potrebno je jednostavno sumirati dobijene izlaze iz PBF operatora. Postoji analogija između PBF-a i statistike poretka, svkom logičkom 'I' odgovara minimum, svakom logičkom 'ILI' odgovara maksimum. Slika 3.4 -Treshold dekompozicija za median filtar. Na prvi pogled ovaj metod izgleda dosta složen iz razloga realizacije steka. Međutim moguće je formirati novi stek za svaki prozor, pri čemu je veličina steka proporcionalna dimenzijama prozora. Takođe, na steku su moguće samo tranzicije sa 1 na 0, što ide u prilog jednostavnosti realizacije. Treshold detekcija je dobar metod za pronalaženje maksimalnog i minimalnog elementa, kao jednostavnije operacije, zatim sortiranje i median kao složenije CPU- FPGA. FPGA baziran akcelerator FPGA bazirane hardverske implementacije odlikuju se visokim stepenom paralelizma u algoritmima i preciznošću dovoljnom da zadovolji kvalitativne efekte matematičkih modela. Dalje, isti hardver može podržati različite operacije reprogramiranjem FPGA čipa. Ovo omogućava implementaciju fleksibilnih metoda za obradu slike u aplikacijama gdje je osnovni zahtjev obrada u realnom vremenu. Kvalitet i dimenzije slike konstantno rastu. Brzo i optimalno interaktivno postprocesiranje ovakvih slika je od izuzetnog značaja. Na primjer, segmentacija, morphing, sekvencijalna analiza i razna mjerenja predstavljaju težak zadatak za realizaciju. Složene metode obrade slike zasnivaju se na višestruko iterativnom procesiranju setova podataka. Zahvaljujući mogućnosti ograničavanja brojne preciznosti, moguće je 13

24 raditi sa podacima tipa integer iz određenog opsega- aplikaciono specificirana dužina riječi. Moguće je implementirati paralelno izvrašavanje zadatih procesa. Generalno CPU sadašnjih računara omogućava implementiranje ovakvih algoritama, ali performanse čiste softverske implementacije nisu dovoljne. Sve operacije moraju biti mapirane na procesor sa fiksnom dužinom riječi- izbor dužine riječi nije baziran na zahtjevima konkretnog zahtjeva. Opseg mogućih operacije je ograničen na jednostavne osnovne operacije. Složene operacije se realizuju kao duga sekvenca osnovnih operacija. Najzad, CPU je opterećena dodatnim zahtjevima- operativnog sistema, interakcije sa korisnikom, što je glavni nedostatak u kontekstu real-time procesiranja. Dakle, veoma je teško ostvariti stroge zahtjeve relnog vremena. Jedan od načina za prevazilaženje pomenutih nedostataka softverske implementacije je upotreba ASHA. Standardna PCI kartica se koristi kao akceleratorska ploča. Ova ploča sadrži rekonfigurabilni logički uređaj FPGA. Ploča takođe sadrži programabilni clock generator, SRAM i eksterne interfejse. Integracija u sistem se obavlja preko PCI interfejsa (Slika 3.5 a). Opšti koncept za particioniranje sistema hardverskog akceleratora baziranog na PCI kartici prikazan je na slici (Slika 3.5 b). Sistem je skoncentrian oko fiksiranog PCI interfejsa sa aplikaciono-specificiranim, I/O pristupnim low level funkcijama. Funkcionalnost sistema se dijeli na softverski (CPU) i hardverski dio (implementiran na FPGA). Visoke performanse PCI interfejsa omogućavaju brzu i efektnu razmjenu podataka između FPGA kartce i pokrenutog softvera na host računaru. Preciznost i dužina riječi za određene operacije mogu se optimizovati i izuzetno složene operacije se realizovati da dozvoljavaju single step izračunavanja. FPGA pristup promoviše upotrebu pipeline i paralelnih algoritama kroz pristup paralelnog izvršavanja. 14

25 Slika Konceptualni hardverski i softverski dizajn hardverski "ubrzanog" sistema. 15

26 4. Cilj istraživanja. Alati. Resursi. U ovom radu biće izloženo nekoliko pristupa i realizacija kola za obradu signala. Posebno je analizirana upravljačka i kontrolna logika i "menadžeri" podataka. Ove jedinice se odlikuju visokim stepenom fleksibilnosti, što znači da su dizajnirani tako da se prilagođavaju operatoru. Dato je i nekoliko primjera konkretnih operatora kao potvrda prethodnoj tvrdnji. Cilj rada je da se demonstriraju mogućnosti i pogodnosti FPGA tehnologije u obradi signala, posebno u digitalnoj obradi slike. Većina komponenti kreirana je u VHDL-u i kao takvi mogu se koristiti nezavisno od razvojne platforme i implementacione tehnologije. VHDL je programski jezik generalne namjene koji zahtijeva simulator pomoću koga se može pokrenuti kod. Osnovna prednost VHDL-a kada se koristi za dizajniranje složenog sistema, jeste mogućnost da se u potpunosti modelira i verifikuje funkcionalnost sistema prije sinteze i konfigurisanja hardvera. Poseban benifit VHDL-a je i što omogućava istovremeno izvršavanje operacija u okviru pod-sistema, što nije slučaj za programske jezike kao što su C, Pascal, Basic, kao i mnogi asemblerski jezici gdje se instrukcije izvršavaju sekvencijalno. Kao takav, VHDL je izuzetno pogodan za kreiranje FPGA baziranih sistema. Kao tehnološka podloga koristi se FPGA. Kompletan dizajn, simulacije i verifikacija obavljeni su u Alterinom razvojnom okruženju Quartus II 6.0 u kombinaciji sa UP3 edukacionim kitom (Slika 4.1 i Slika 4.2). UP3-1C6 je moćan edukacioni alat koji služi za razvijanje hardverski baziranih sistema, implementaciju i testiranje IP cores ili bilo kog drugog hardverskog dizajna razvijenog uz pomoć HDL-a - Verilog-a ili VHDL-a. Takođe je moguće vršiti simulaciju i testiranje C ili nekog asemblerskog koda. Ploča može da se koristi za DSP aplikacije, bilo direktnim povezivanjem sa DSP procesorom ili implementacijom DSP funkcija u FPGA. Ukratko, ovaj alat može da psoluži za razvijanje VLSI sistema, kao i za kreiranje i razvoj mikroprocesorski baziranog embedded system dizajna. Quartuss II automatski generiše *.sof i *.pof fajlove koji mogu biti download-ovani pomoću Byte Blaster II ili USB Blaster kabla za ostvarivanje AS, tj. JTAG konfiguracije. Slijedi pregled karakteristika UP3-1C6 ploče. Altera EP1C6Q240 čip i EPCS1 konfiguracioni uređaj Podržava IP (Intelectual Property) dizajn sa i bez mikroprocesora USB 1.1 (Full speed & Low Speed) RS 232 Port Parallel port (IEEE 1284) PS/2 Port IDE (Integrated Drive Elecronics) 2Kbytes I2C PROM (proširiv) 128Kbytes SRAM 16

27 2Mbytes FLASH 8Mbytes SDRAM Podržava mnoge clock-ove kao CPU clock, USB clock, PCI clock i IOAPIC clock JTAG i Active Serial download capaciteti 5V Santa Cruz long Expansion Card Header koji podržava 74 I/O 4-bitni switch blok 4 prekidača i globalni reset prekidač 4 LED 16x2 karaktera LCD I2C Real Time Clock Slika UP3 Board Diagram. 17

28 Slika UP3 edukacioni kit. U tabeli su date karakteristike čipa Cyclone EP1C6Q240C8. Tabela Karakteristike čipa Cyclone EP1C6Q240C8. Logic Elements 5980 RAM Blocks 20 Total RAM Bits PLLs 2 Maximum User I/Os 185 U okviru rada razvijen je i pomoćni simulacioni alat "TBLzer" u C#.NET 2.0 programskom jeziku (Visual Studio 2005 razvojnom okruženju). Softver obavlja dvije osnovne funkcije: Generisanje TBL fajla kao ulaznog signala za simulaciju Generisanje slike ili vektora na osnovu rezultata simulacije 18

29 TBL fajl se generiše na osnovu zadate slike (Image file) i clock intervala (clock period). Takođe se može i definisati 'tick delay', odnosno broj taktova prije početka učitavanja slike. 'Signal name' predstavlja naziv signala u TBL fajlu. Izlazni TBL fajl izgleda ovako: GROUP CREATE Din = Din[7] Din[6] Din[5] Din[4] Din[3] Din[2] Din[1] Din[0] ; INPUTS clk, Din; UNIT ns; RADIX HEX; PATTERN 0> 0 XX 100> 1 XX 200> 0 XX Gdje je prva kolona vrijeme, druga clock, a treća predstavlja boju pixela sivoskalirane slike u heksadecimalnom zapisu. Slika se generiše na osnovu zadatog TBL fajla (dobijenog kao rezultat simulacije) i parametara: naziv kanala podataka (data channel), naziv clock kanala po kome se vrsi očitavanje (clock channel) i dimenzija slike (width, height). Generisana slika se prikazuje sa strane, a može se i zapamtiti kao BMP fajl. Za neke analize bilo je potrebno generisati i prikazati vektor, softver ima i tu mogućnost (Slika 4.3 b). 19

30 Slika "TBLizer": a) generisanje i očitavanje *.tbl fajla za sliku; b) generisanje i očitavanje *.tbl fajla za vektor. Kao pomoćni alat korišteni su softverski paketi Matlab i Simulink. 20

31 5. Generalni pristup U ovom poglavlju predstavljena je arhitektura kola za obradu 1-D i 2-D signala. Pojedini moduli realizovani su u VHDL-u i kao takvi mogu se koristiti nezavisno od razvojne platforme i implementacione tehnologije. Takođe je dat i detaljan opis komponenti koje su nezavisne od operatora, tj. spremaju podatke za obradu, upravljaju i kontrolišu rad sistema. Dati su odgovarajući simulacioni dijagrami kao i pregled resursa neophodnih za realizaciju Arhitektura predloženog rješenja Kolo za obradu signala se sastoji od ulaznog interfejsa, bazičnog kola i izlaznog interfejsa. Ulazni interfejs sadrži data manager i control jedinicu. Služi da generiše upravljačke i kontrolne signale, kao i da pripremi ulazni signal za obradu. Bazično kolo ima ulogu operatora. U zavisnosti od tipa operacije njemu se pridružuje odgovarajuće okruženje. Pojedini operatori opisani su u poglavlju 6. Izlazni interfejs generiše clk_out signal na osnovu en signala iz bazičnog kola koji ima vrijednost logičke jedinice kada je rezultat obrade validan. Clk_out služi za očitavanje validnih rezultata obrade i prosljeđuje se prema periferiji. Pored ovog, izlazni interfejs daje i end_process signal, koji označava da je kolo završilo sa radom i da je spremno za novu obradu. Ulazni i izlazni interfejs su zavisni od operatorskog kola samo u smislu tipa ulaznog podatka (1-D ili 2-D) i tipa operacije (on pixel, area... ako je riječ o obradi slike). Dakle, za operacije istog tipa ovi moduli su univerzalni Kontrolna (Control) jedinica Control jedinica upravlja sistemom i kontroliše njegov rad. Na ulaz se dovode clk, rst i start_process signali. Clk je globalni clock kojim je taktovana control jedinica i na osnovu koga se generišu ostali upravljački clock signali kao i kontrolni signali. Generisanje ovih signala se ostvaruje u skladu sa start_process-om, pri čemu control jedinica ne reaguje na novi start dok se proces ne završi. Prekid rada sistema, nezavisno od nivoa izvršavanja, moguće je ostvariti rst signalom. Na izlazu su clk_dm, clk_in, clk_op, en_op od upravljačkih i right_border, down_border, end_shift_process od kontrolnih signala. Clk_dm je clock koji se dovodi na ulaz data_manager-a. Po clk_in signalu se vrši učitavanje podataka za obradu. Na osnovu clk_op takta se sinhronizuju sve operacije koje obavlja bazično kolo, dok je en_op pomoćni signal koji se šiftuje kroz operatorsko kolo u skladu sa trajanjem određene operacije i na osnovu koga izlazni interfejs generiše clk_out. Right_border, opciono down_border i end_shift_process su kontrolni signali koji označavaju da je maska u poziciji desne ivice, donje ivice ili donjeg desnog ugla matrice, respektivno. Ovi signali pomažu u realizaciji zero-paddinga. Naime, preko odgovarajuće logike, dovode se na reset ulaz bazičnog kola. Zero-padding ovdje je odrađen na desnu i donju ivicu, uz male modifikacije može se ostvariti neko drugo rješenje. 21

32 Control jedinica sadrži dimenzije vektora tj. matrice kao promjenljive tipa generic, što znači da se ove veličine mogu zadati neposredno prije konfigurisanja čipa. Dimenzije maske tj. prozora su takođe generic tipa. Na osnovu ovih podataka generišu se svi potebni signali za rad ukupnog sistema. Dakle, modul je u potpunosti fleksibilan i pogodan za specifične aplikacije. U okviru ovog rada posebno je realizovana control jedinica za 1-D i 2-D signale sa 1- D i 2-D maskom. Simulacioni dijagrami rada control jedinice Dati su simulacioni dijagrami rada kontrolne jedinice za slučaj 1-D i 2-D signala sa različitim dimenzijama maske (Slika 5.1). Može se uočiti slučaj ponovnog starta, kao i resetovanja kola. U slučaju 1-D signla, dovoljan je samo right_border kontrolni signal, koji služi za odrađivanje zero padding-a na kraju zadatog vektora. Ako se obrađuje 2-D signal primjenom 1-D maske, takođe je dovoljan samo right_border signal, koji omogućava dodavanje nula na kraju svakog reda matrice. U slučaju 2-D signala koji se obrađuje primjenom konvolucionog prozora potrebni su i right_border i down_border kontrolni signali za ostvarivanje zero padding-a na desnoj i donjoj ivici slike. 22

33 Slika Simulacioni dijagram rada control jedinice: a) vektor dužine 16, maska 1x5; b) slika dimenzija 8x8, maska 1x3; c) slika dimenzija 5x5, maska 3x3. Pregled utrošenih resursa Na kraju je dat pregled utrošenih resursa za pojedine realizacije. Može se primijetiti da se taj broj kreće od oko 30 do 80 u zavisnosti od izbora maske i dimenzija što nije mnogo obzirom na kapacitete čipa (Slika 5.2) LCs control 1x3, length=64 control 1x5, length= control 1x9, length= control 1x100, 10 length= LCs control 1x3, 8x8 control 1x3, 64x64 control 1x5, 256x LCs control 3x3, 8x8 control 3x3, 64x64 control 5x5, 256x256 Slika Utrošeni resursi za realizaciju control jedinice: a) 1-D signal; b) 2-D signal, 1-D maska; c) 2-D signal, 2-D maska. 23

34 Data manager Opšta funkcija. Pristupi realizacije Data manager ima funkciju da serijske ulazne podatke dovede na ulaz bazičnog kola u grupama koje odgovaraju veličini maske. Sve operacije koje obavlja ovo kolo su sinhronizovane clk_dm taktom koji generiše control jedinica. Na ulaz se dovoi i globalni reset signal. U okviru praktičnog dijela rada ovaj modul je realizovan na dva načina: u VHDL-u i upotrebom lpm_fifo komponente iz biblioteke funkcija. Ovo je učinjeno iz razloga što su logički resursi na čipu ograničeni, pa je pogodno iskoristiti i memorijske ćelije koje koriste komponente iz biblioteke megafunctions/storage. Naime, po prvom pristupu, sliku dimenzija 512x512 nije moguće obraditi median filtrom pomoću raspoloživog čipa, dok je drugim načinom moguće obraditi i slike većih dimenzija. Međutim, u prvom pristupu data manager je fleksibilan, zahvaljujući generic dimenzijama maske i slike, dok su komponente iz biblioteke fiksnih dimenzija. Data manager za 1-D signale Data manager za 1-D signal simulira pomjeranje maske različite dužine po ulaznom vektoru. Realizovan je kao matrica čije vrste predstavljaju po jedan 8-bitni ulazni podatak. U okviru ove matrice omogućeno je jednosmjerno šiftovanje, po principu FIFO memorije (Slika 5.3). Matrica je inicijalizovana nulama. Ovakvim pristupom, na ulaz bazičnog kola podaci se dovode paralelno, što je od značaja za vremenski kritične aplikacije. Isti data manager koristi se i u obradi slike operatorom koji zahtijeva 1-D masku. Razliku u realizaciji zero-paddinga reguliše control jedinica. Slika Simulacioni dijagram rada data manager-a, maska 1x5. Data manager za 2-D signale Veliki broj operacija nad slikom zahtijeva simulaciju kretanja 2-D maske po slici u pravcima desno i dolje. Potreban je, dakle, data manger koji bi na izlaz bazičnog kola davao podatke koji su u određenom vremenskom trenutku u okviru dimenzija zadatog prozora. U prvoj realizaciji, data_manager funkcioniše kao memorija promjenljivih dimenzija. U zavisnosti od dimenzija slike i željenog prozora, određen broj ulaznih podataka se smješta u memoriju, a očitavanje se vrši sa definisanih pozicija. Naime, u memoriju se smješta (win_width-1)*picture_x+win_width ulaznih podataka, pri čemu je picture_x broj kolona slike, dok je win_width dimenzija prozora, dok se na izlaz vode podaci po principu: 24

35 For i In 0 To Win_Width-1 Loop End Loop; For j In 0 To Win_Width-1 Loop End Loop; Dout(j+i*Win_Width)<=Qtemp(j+i*Picture_X); Promjenljive picture_x i win_width su generic tipa. Kao što je rečeno za drugu realizaciju upotrijebljena je lpm_fifo memorija iz biblioteke funkcija. Na sljedećoj slici data je realizacija data manger- a u Quartus II razvojnom okruženju (Slika 5.4) u formi blok dijagrama. Može se primijetiti da su pojedini blokovi posebo realizovani. Naime, bilo je potrebno napraviti fifo memoriju nestandardnih dimenzija picture_x-win_width. Takva memorija ne postoji u biblioteci, pa se kombinacijom standardnih došlo do priloženog rješenja. Blok fifo_3 nije standardna fifo memorija jer ima 3 izlaza, on se sastoji od tri šift registra tj. lpm_dff-a iz biblioteke funkcija. 25

36 Slika Realizacija Data managera u QuartusII razvojnom okruženju a) kompletan dizajn; b) unutrašnja struktura bloka fifo_256; c) unutrašnja struktura bloka fifo_3. Simulacija rada data managera data je na sljedećoj slici. Na dijagramu se može uočiti princip rada data managera za 2-D signal. Data manager počinje sa radom na prvu uzlaznu ivicu njegovog clock signala. Primjećuje se da je potrebno izvjesno vrijeme za učitavanje podataka da bi oni bili spremni za dalju obradu. To vrijeme iznosi ((win_width-1)*picture_x+win_width) taktova. Slika Simulacioni dijagram rada data managera za sliku 8x8 i prozor 3x3. Pregled utrošenih resursa Prikaz utrošenih logičkih i memorijskih resursa za različite realizacije data managera, dat je na slici (Slika 5.6). Kao što se i očekivalo broj logičkih i memorijskih blokova je proporcionalan dimenzijama slike i primijenjenog prozora. Ovaj broj se kreće od nekoliko desetina logičkih elemenata do oko 4000 hiljade kada je riječ o generic data manager-u. Za implementaciju "nefleksibilnog" data manager- a, stanje se znatno razlikuje. Naime, potrebno je od nekoliko desetina do oko 1000 logičkih elemenata i od nekoliko desetina do oko 4000 hiljade memorijskih blokova. 26

37 LCs data manager 1x5 data manager 1x9 data manager 1x LCs data manager 3x3, slika 8x8 data manager 5x5, slika 64x64 data manager 3x3, slika 256x LCs MBs data manager 3x3, slika 64x64 data manager 3x3, slika 256x256 Slika Utrošeni resursi: a) 1-D maska; b) 2-D maska, fleksibilan VHDL data manager; c) 2-D maska, "nefleksibilan" data manager Kompletan dizajn fleksibilnog rješenja za obradu slike Kao primjer arhitekture kompletnog dizajna, data je blok šema median filtra prozora 3x3 (Slika 5.7). Mogu se uočiti I/O pinovi, kao i pojedine komponente. Odgovarajući simulacioni dijagram dat je na slici (Slika 5.8). Kao operator uzet je median filtar nad matricom dimenzija 7x7 da bi se na dijagramu mogli uočiti karakteristični signali. Primjećuje se da je kolo u potpunosti sinhronizovano. 27

38 Slika Blok šema median filtra prozora 3x3. 28

39 Slika Simulacioni dijagram rada kompletnog dizajna. 29

40 6. Implementacija operatora U ovom dijelu dat je pregled operacija nad slikom. Posebno su istaknute one operacije koje su praktično implementirane. Svi operatori su realizovani u VHDL-u, uz pomoć Alterinog razvojnog okruženja QuartusII, a neki od njih su provjereni na UP3 edukacionom Kit-u. Generalno gledano, operacije nad slikom se mogu podijeliti u dvije grupe: one koje se vrše nad jednim pikselom (pixel point operators) i one koje koriste masku ili prozor (area operators) (1D ili 2D), dok je rezultat operacije uvijek jedan piksel. Postoje i one operacije kod kojih rezultat obrade nije slika, već neke informacije o slici Pixel point operatori Među pixel point operacijama su tresholding, scaling, offset, kontrast i druge. Tresholding je operacija gdje se vrijednost svakog piksela upoređuje sa zadatim pragom i na osnovu rezultata poređenja tom pikselu se dodjeljuje vrijednost logičke jedinice ili nule. Kao rezultat dobija se binarna slika. Postoji i drugi tip tresholding operacije gdje se pikselima čija je vrijednost iznad (ili ispod) praga dodjeljuje fiksna vrijednost, npr. 0. Scaling i offset su operacije koje se koriste za potamnjivanje ili posvjetljavanje slike. Scaling podrazumjeva množenje svakog pixela nekom fiksnom vrijednošću, dok je offset sabiranje vrijednosti svakog piksela sa nekom konstantom. Kontrast je operacija gdje se, u zavisnosti od željenog stepena kontrasta, pikselima iznad praga dodaje neka konstantna vrijednost, dok se pikselima ispod praga oduzima ta ista vrijednost. U radu je, kao primjer pixel point operacija, izložena realizacija ove operacije. Posebnu grupu pixel point operacija predstavljaju LUT operacije. Ovdje intenzitet određenog piksela može predstavljati njegov indeks u look-up tabeli. Rezultat operacije je vrijednost koja se nalazi na toj lokaciji u tabeli. Na ovaj način se mogu implementirati sve pomenute funkcije. U radu je kao primjer ovih operacija realizovan histogram Kontrast Za implementaciju ove jednostavne funkcije iskorišten je "on pixel" data manager opisan u poglavlju 5. Stepen kontrasta karakteriše ulazna promjenljiva, tako da se on može zadavti spolja. Ona predstavlja vrijednost koju treba dodati (oduzeti) vrijednosti piksela da bi se povećao kontrast. Prikazan je simulacioni dijagram za 1D signal dužine 16, kao i rezultati simulacija nad vektorom i slikom (Slika 6.1, Slika 6.2 i Slika 6.3). Kao test signal uzeta je 59 linija slike "Lena", odnosno slika "Lena" dimenzija 256x

41 Slika Simulacioni dijagram operacije kontrast za 1D signal dužine 16. Slika Različit stepen kontrasta primijenjen na 1-D signal. 31

42 a) b) c) d) Slika a) orginalna slika "Lena", dimenzija 256x256; b) kontrast 25 jedinica; c)kontrast 50 jedinica; d) kontrast 75 jedinica. Broj utrošenih logičkih resursa gotovo da ne zavisi od dimenzija slike i iznosi između 70 i Histogram Histogram predstavlja učestanost javljanja neke vrijednosti u posmatranom signalu. Histogram slike bi dakle bila učestanost određenog intenziteta piksela u funkciji od mogućih vrijednosti piksela. Kolo koje obavlja ovu funkciju sastoji se od kontrolne jedinice koja generiše clock signale i kola koje vrši popunjavanje look-up tabele kao i očitavanje rezultata. LUT je matrica čije vrste sadrže informaciju o pomenutoj frekvenciji. Pozicija te informacije za neki piksel jednaka je vrijednosti tog piksela. Tabela se popunjava po principu: LUT(intenzitet piksela) += LUT(intenzitet piksela) +1, po clk_in taktu, dok se očitavanje vrši po clk_out taktu. Od kontrolnih signala i ovo kolo ima Start_process, rst, kao i globalni takt. 32

43 Rezultati simulacije nad slikom "Lena" dimenzija 256x256 su dati na slici (Slika 6.4). Broj upotrijebljnih logičkih elemenata za ovu realizaciju iznosi Za slike većih dimenzija ovaj broj se neznatno povećava Pixel area operacije Slika Histogram slike "Lena" dimenzija 256x256. Ovi operatori koriste nekoliko piksela slike koja se obrađuje da bi se na izlazu dobila vrijednost jednog piksela. U prethodnom poglavlju prikazani su data manager-i kojima se simulira kretanje 1-D i 2-D maske po slici, dok se na izlazu u svakom sljedećem intervalu takta dobija određen broj podataka za obradu. Operacije nad ovim podacima se grubo mogu podijeliti u dvije grupe. U prvu grupu spadaju one funkcije gdje se nad ulaznim podacima vrše složenije operacije. Ovdje će biti predstavljen primjer praktične realizacije median filtra takođe sa 1-D i 2-D maskom. U drugu grupu spadaju one funkcije gdje se podaci obuhvaćeni maskom u datom trenutku množe određenim koeficijentima iz konvolucionih matrica, a zatim dovode na ulaz kola za sabiranje (Slika 6.5). Na ovom principu su zasnovane mnoge filtarske funkcije: za otklanjanje šuma (Gaussian, mean), detekciju ivica (Sobel, Prewitt, Laplacian) itd. Praktično je realizovan mean filtar uz korišćenje 1-D i 2-D maske, kao i kolo za detekciju ivica zasnovano na Prewitt-ovoj i Sobel-ovoj matrici. 33

44 Slika Princip realizacije druge grupe area operatora Median filtar Analiza odabira širine maske Median filtar se koristi za otklanjanje šuma u aplikacijama vezanim za obradu zvuka (prepoznavanje govora), obradu slike kao i mnogim drugim. Ovaj nelinarni filtar se pokazuje kao dobra alternativa linearnim filtrima za otklanjanje impulsnog šuma dok istovremeno čuva informaciju o ivicama, ako je riječ o slici. Meidan filtar je srednji element sortiranog niza, ukoliko niz ima paran broj elemenata onda je median jednak aritmetičkoj sredini dva srednja elementa. Median filtar se ponaša slično filtru propusniku niskih učestanosti. Graničnoj učestanosti nisko-propusnog filtra obrnuto je proporcionalna širina maske median filtra. Što znači, ako je šum intenzivniji tj. veće frekvencije biće potrebna šira maska, kako bi se odstranio dio spektra koji preklapa šum. Naravno, masku treba pažljivo birati da se ne bi odstranio i dio korisnog spektra signala. Radi demonstracije, na slikama su dati odgovarajući primjeri (Slika 6.6 i Slika 6.7). 34

45 Slika Odabir širine maske u zavisnosti od intenziteta šuma: a) originalna slika "LENA" dimenzija 256x256; b) slika zahvaćena impulsnim šumom intenziteta 0.5; c) i d) frekvencijski spektri slika; e) i f) prvih 300 odbiraka analiziranih slika. Analiza je obavljena nad slikom "Lena" dimenzija 256x256. U prvom slučaju, slika je zahvaćena impulsnim šumom intenziteta 0.5. Ako se posmatra prvih 300 odbiraka, može se zaključiti da bi odabirom maske širine 9 filtrirana slika sadržala "dosta šuma". O tome se zaključuje i na osnovu Fourier-ove analize. Optimalna maska je širine 20- zelena linija na grafiku (Slika 6.6 f). 35

46 Slika Odabir širine maske u zavisnosti od intenziteta šuma: a) originalna slika "LENA" dimenzija 256x256; b) slika zahvaćena impulsnim šumom intenziteta 0.05; c) i d) frekvencijski spektri slika; e) i f) prvih 1000 odbiraka analiziranih slika. U drugom slučaju intenzitet šuma je Istim pristupom, može se utvrditi da se dobri rezultati postižu filtriranjem median filtrom širine maske 5 ili 9, žuta odnosno crvena linija na grafiku (Slika 6.7). Opšti pristup U radu je predstavljen median filtar za 1-D i 2-D signale sa promjenljivim dimenzijama maske. Svi ovi filtri koriste odgovarajuće kontrolne jedinice i data manager-e, opisane u poglavlju 5. Funkciju median obavlja bazično kolo, koje je realizovano za širine maske 3, 5, 7 i 9. Ova operacija obavlja se na osnovu partial sort algoritma prikazanog na slici (Slika 6.8). Zahvaljujući paralelizmu koji karakteriše programabilna kola, trajanje ove operacije u taktovima jednako je širini primijenjene 36

47 maske. Po završetku operacije, u svakom sljedećem takt intervalu, na izlazu se dobija validan rezultat. Dakle, obrada se vrši u realnom vremenu, ako zanemarimo inicijalno kašnjenje, koje je, pri visokim frekvencijama na kojima ovo kolo može da radi, reda od nekoliko desetina nano sekundi (ns) do mikro sekunde (us). Slika Izračunavanje median operatora pomoću partial sort algoritma. Dat je simulacioni dijagram rada bazičnog kola median filtra za širinu maske 9 (Slika 6.9). Može se uočiti da radom kola upravlja clk signal, koji generiše kontrolna jedinica. Primjećuje se da inicijalno kašnjenje iznosi 9 taktova, što je u ovom slučaju 270 ns. Slika Simulacioni dijagram bazičnog kola median filtra za širinu maske 5. Obrada 1-D signala median filtrom Kao primjer 1-D signala, posmatra se realan signal aksijalne sile zavojne burgije u procesu obrade metala bušenjem. Signal je dobijen pomoću piezolelektričnog davača marke Kistler u okviru eksperimentalnih istraživanja realizovanih u laboratoriji Mašinskog fakulteta u Podgorici. Učestanost signala je 100 Hz, dok je odabiranje vršeno sa 1000 uzoraka/s. 37

48 Ovom signalu dodat je slučajano generisan impulsni šum. Nakon pomenute analize spektra signala utvrđeno je da je najpogodnija maska širine 5. Dati su rezultati obrade realnog signala pomoću median filtra u FPGA tehnologiji (Slika 6.10). Izvršeno je poređenje sa Matlab filtrom i potvrđeno podudaranje rezultata. Slika a) signal zahvaćen slučajno generisanim impulsnim šumom; b) signal na izlazu iz median filtra maske 1x5 (crvena linija na grafiku); c) poređenje originalnog i signala dobijenog na izlazu iz filtra. Sa grafika se može uočiti da je median filtrom u potpunosti otklonjen impulsni šum, pri čemu je signal ostao dosta "očuvan". Obrada 2-D signala median filtrom Prikazan je primjer primjene median filtra u otklanjanju šuma sa slike (Slika 6.11 i Slika 6.12). Dato je poređenje rezultata koji se postižu u Matlab-u i VHDL-u, za slučaj 1- D i 2-D maske. Kao test signal uzima se slika "LENA" dimenzija 256x256. Filtriranje se najprije vrši median filtrom maske 1x5, a zatim istim filtrom prozora 3x3. 38

49 Slika a) slika zahvaćena impulsnim šumom intenziteta 0.03; b) slika dobijena filtriranjem VHDL median filtrom, maske 1x5; c) slika dobijena filtriranjem Matlab median filtrom, maske 1x5. Slika a) slika zahvaćena impulsnim šumom intenziteta 0.03; b) slika dobijena filtriranjem VHDL median filtrom, maske 3x3; c) slika dobijena filtriranjem Matlab median filtrom, maske 3x3. Dat je simulacioni dijagram kompletnog kola za median filtriranje za sliku dimenzija 10x10 i prozor 3x3 (Slika 6.13). Mogu se uočiti kontrolni signali, zero padding kao i inicijalno kašnjenjenje. Slika Simulacioni dijagram kompletnog median filtra, prozora 3x3. 39

50 Pregled utrošenih resursa Na kraju je dat pregled utrošenih resursa za pojedine realizacije (Slika 6.14) LCs median 3 median 5 median 7 median LCs median 1x5 median 1x9 median 3x3, slika 64x64 median 3x3, slika 256x256 a) b) median 3x3, slika 64x64 median 3x3, slika 256x LCs MBs c) Slika Broj upotrijebljenih logičkih i memorijskih elemenata za realizaciju: a) bazičnog kola median filtra širine prozora 3, 5, 7, 9; b) kompletnog median filtra sa 1-D i 2-D maskom za različite dimenzije slike, sa generic data_manager-om; c) kompletnog median filtra sa 2-D maskom, sa upotrebom memorijskih ćelija na čipu tj. non generic data_manager-om Mean Filtar Gausov šum. Gausova raspodjela Gausov šum je šum sa Gausovom raspodjelom trenutnih vrijednosti amplituda. Gausova raspodjela ili normalna raspodjela je veoma važna vjerovatnoća raspodjele u mnogim oblastima. Familija ovih distribucija ima istu generalnu formu, razlika je u zadatim parametrima (Slika 6.15). Standardna normalna raspodjela je Gausova raspodjela sa očekivanom vrijednošću nula i standardnom devijacijom jedan (zelena linija na grafiku), poznata je i kao "bell curve". 40

51 Slika Gausova raspodjela. Gustina vjerovatnoće Gausove raspodjele data je funkcijom: 2 1 ( x µ ) f ( x, µ, σ ) = exp( )... (3) 2 σ 2π 2σ µ = E(X ) je očekivana vrijednost (srednja) slučajne promjenljive X σ = E(( X E( X )) ) = E( X ) ( E( X ))... (4) standardna devijacija slučajne promjenljive X. Obzirom da je sredja snaga Gausovog šuma bliska nuli, u njegovom otklanjanju dosta dobri rezultati postižu se mean filtrom ili filtrom srednje vrijednosti. Slično median filtru i mean filtar se ponaša kao filtar propusnik niskih učestanosti. Analiza za odabir maske izvršena za median filtar važi i ovdje. U radu je izvršena realizacija mean filtra za 1-D i 2-D signale sa 1-D i 2-D maskom. Obrada 1-D signala mean filtrom Kao primjer 1-D signala posmatra se signal momenta sile opisane u okviru analize median filtra. Signalu je dodat Gausov šum sa parametrima µ = 0 i σ = 1, dakle šum koji karakteriše standardna normalna raspodjela. Na sljedećim slikama se mogu vidjeti rezultati filtriranja (Slika 6.16 i Slika 6.17) 41

52 Slika a) signal zahvaćen Gausovim šumom; b) signal na izlazu iz mean filtra širine maske 9, crvena linija na grafiku; c) poređenje originalnog i signala dobijenog na izlazu iz mean filtra. Slika Frekvencijski spektar signala. 42

53 Iz frekvencijske analize može se uočiti da mean filtar dobro filtrira šum na višim učestanostima. Poređenje VHDL- Matlab mean filtara VHDL realizacija ovog filtra ima izvjesnu nepreciznost usljed zaokruživanja rezultata na najbližu cjelobrojnu vrijednost prilikom dijeljenja. Na sljedećim slikama je dato poređenje VHDL i Matlab filtra tj. greška koju pravi VHDL filtar (Slika 6.18 i Slika 6.19). Slika Poređenja Matlab- VHDL mean filtar. Slika Greška VHDL mean filtra u odnosu na Matlab mean filtar. U realizaciji mean filtra korištena je komponenta divide iz biblioteke megafunctions/arithmetic, ovo kolo rezultat dijeljenja zaokružuje na nižu cjelobrojnu vrijednost, ali daje i ostatak (Slika 6.20). U okviru kompletnog dizajna kreirana je jednostavna funkcija kojom se zaokruživanje vrši na najbližu cjelobrojnu vrijednost i na taj način je umanjena greška za 50%. 43

54 Slika Simulacija rada bazičnog kola mean filtra za masku 1x5. Obrada 2-D signala mean filtrom Simulacioni dijagram rada kompletnog mean filtra maske 1x5 dat je na slici (Slika 6.21). Posmatra se 2-D signal dimenzija 8x8. Može se uočiti zero padding, kao i odgovarajući kontrolni signali. Slika Simulacioni dijagram rada kompletnog mean filtra, maska 1x5. Mean filtar našao je svoju primjeni i u obradi slike. U okviru rada izvršena je i ova realizacija. Postignuti rezultati mogu se vidjeti na sljedećim slikama (Slika 6.22 i Slika 6.23), kao test signal uzeta je slika "Lena" dimenzija 256x

55 Slika a) slika "Lena" zahvaćena Gausovim šumom intenziteta 0.01; b) slika "Lena" poslije filtriranja VHDL mean filtrom, maske 3x3; c) slika "Lena" poslije filtriranja Matlab filtrom maske 3x3. Slika a) slika "Lena" zahvaćena Gausovim šumom intenziteta 0.01; b) slika "Lena" poslije filtriranja VHDL mean filtrom, maske 1x5; c) slika "Lena" poslije filtriranja Matlab filtrom maske1x5. Pregled utrošenih resursa Na kraju je dat pregled utrošenih logičkih i memorijskih resursa (Slika 6.24) LCs mean 3x3, slika 64x64 mean 3x3, slika 256x256 mean 1x5, slika 256x LCs MBs mean 3x3, slika 64x64 mean 3x3, slika 256x256 Slika Broj upotrijebljenih logičkih i memorijskih elemenata za realizaciju: a) kompletnog mean filtra sa 1-D i 2-D maskom za različite dimenzije slike, sa generic data_manager-om; b) kompletnog mean filtra sa 2-D maskom, sa upotrebom memorijskih ćelija na čipu tj. non generic data_manager-om. Broj logičkih resursa potrebnih za realizaciju bazičnog kola ovog filtra gotovo da ne zavisi od širine maske i iznosi nekoliko desetina, konkretno- 52 za masku 1x Detekcija ivica Opšti pristup Detektovanje ivica je jedan od osnovnih alata koji se koristi u mnogim aplikacijama za obradu slike, obično je to korak koji prethodi segmentaciji objekta ili prepoznavanju oblika. Ovim procesom detektuju se ivice objekta i uočava granica između objekta i pozadine na slici. Ovaj filtar se takođe može koristiti da poboljša izgled video signala propuštenog kroz nisko-propusni filtar ili blurred signala. Detektovanje ivica se može izvršiti prostim diferenciranjem, međutim uzimajući u obzir činjenicu da je slika uvijek u izvjenom stepenu zahvaćena šumom, to nije moguće. 45

56 Za ovu svrhu razvijeno je više algoritma. Ovdje će biti razmatran operator zasnovan na Prewitt-ovoj i Sobel-ovoj matrici. Suština ovog operatora se sastoji u određivanju nivoa odstupanja vrijednosti nekog piksela od njemu susjednih piksela.elementi Sobel-ove tj. Prewitt-ove matrice predstavljaju težinske koeficijente, a sama matrica masku. Da li je neki piksel ivica ili nije određuje se tako što se vrši množenje određenog piksela i njemu susjednih piksela sa težinskim koeficijentima, zatim se vrši sumiranje elemenata rezultantne matrice. Dobijena vrijednost se upoređuje sa pragom i nakon toga se piksel proglašava ivicom ili ne. Rezultantna slika može biti binarna, ukoliko se pikselima koji označavaju ivice dodijeli vrijednost logičke jedinice (ili nule), dok se ostalim pikselima dodijeli vrijednost logičke nule (ili jedinice). Ovaj metod često se označava kao detekcija ivica sa tresholiding-om. Rezultat, međutim, može biti takođe sivoskalirana slika na kojoj je samo ivici dodijeljena vrijednost logičke nule ili jedinice, dok ostali pikseli imaju vrijednost rezultata sumiranja. Prewitt-ove i Sobel-ove matrice za detekciju horizontalne i vertikalne ivice su date na sljedećoj slici. a) b) Slika a) Prewitt-ova matrca za detekciju vertikalnih odnosno horizontalnih ivica b) Sobel-ova matrica za detekciju vertikalnih odnosno horizontalnih ivica. Dakle, ivice slike dobijaju se računajući Lh i Lv, po formuli: Lh = p1+p2+p3-p7-p8-p9, Lv = p1-p3+p4-p6+p7-p9, za slučaj Prewitt-ove matrice i Lh = p1+2*p2+p3-p7-2*p8-p9, Lv = p1-2*p3+p4-p6+2*p7-p9, za slučaj Sobel- ove matrice. Vrijednost praga se upoređuje sa: Lp = Lh + Lv... (5) ukoliko se koristi Prewitt-ova matrica, tj. sa: 46

57 Ls = Lh Lv... (6) za slučaj Sobelove matrice. U VHDL realizaciji oba puta je prag upoređivan sa Lp, da bi se izbjegla operacija korjenovanja. Rezultati simulacija u VHDL-u i Matlab-u Rezultati simulacija dobijeni u VHDL-u i Matlabu, uz pomoć Prewitt-ove i Sobel-ove matrice, za različite vrijednosti praga dati su na slikama (Slika Slika 6.29). a) b) Slika Detekcija ivica sa tresholding-om, pomoću Prewitt-ove matrice, prag- 120 a) izvršena u Matlab-u; b) izvršena u VHDL-u. a) b) Slika Detekcija ivica pomoću Prewitt-ove matrice, prag- 100 a) izvršena u Matlab-u; b) izvršena u VHDL-u. 47

58 a) b) Slika Detekcija ivica sa tresholding-om pomoću Sobel-ove matrice, prag 140 a) izvršena u Matlab-u; b) izvršena u VHDL-u. a) b) Slika Detekcija ivica pomoću Sobel-ove matrice, prag-100 a) izvršena u Matlab-u; b) izvršena u VHDL-u. Pregled utrošenih resursa Pregled utrošenih logičkih i memorijskih elemenata za kompletan dizajn dat je na slici (Slika 6.30), dok je za realizaciju bazičnog kola za detekciju ivica potreban 221 logički element. 48

59 LCs Prewitt 3x3, slika 64x64 Prewitt 3x3, slika 128x128 Sobel 3x3, slika 256x LCs MBs Prew itt 3x3, 64x64 Sobel 3x3, 256x256 Slika Pregled utrošenih resursa za realizaciju kola za detekciju ivica. 49

60 7. Eksperimentalna verifikacija U sklopu ovog rada obavljena je i eksperimentalna verifikacija rezultata. Kao primjer, ovdje će biti izložena verifikacija rada median filtra za sliku dimenzija 8x8 i prozor 3x3. Kao što je rečeno u poglavlju 4, na raspolaganju je bila MC- board, FPGA- board i PC.Programiranje FPGA čipa, kao i mikrokontrolera vrši se sa PC-a. Ostavrena je komunikacije između PC-a, mikrokontrolera i FPGA čipa saglasno logici (Slika 7.1), dok Slika 7.2. daje fotografiju verifikacionog okruženja. Slika Eksperimentalna verifikacija. Slika Fotografija eksperimentalne opreme. 50

61 Na sljedećoj slici data je električna šema mikrokontrolerskog kola za praktičnu verifikaciju, a u tabeli 7.1. raspored pinova verifikacionog kola. Slika Mikrokontrolersko kolo za praktičnu verifikaciju FPGA baziranih aplikacija. 51

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević GUI Layout Manager-i Bojan Tomić Branislav Vidojević Layout Manager-i ContentPane Centralni deo prozora Na njega se dodaju ostale komponente (dugmići, polja za unos...) To je objekat klase javax.swing.jpanel

More information

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije Biznis scenario: U školi postoje četiri sekcije sportska, dramska, likovna i novinarska. Svaka sekcija ima nekoliko aktuelnih projekata. Likovna ima četiri projekta. Za projekte Pikaso, Rubens i Rembrant

More information

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. 1) Kod pravilnih glagola, prosto prošlo vreme se gradi tako

More information

Port Community System

Port Community System Port Community System Konferencija o jedinstvenom pomorskom sučelju i digitalizaciji u pomorskom prometu 17. Siječanj 2018. godine, Zagreb Darko Plećaš Voditelj Odsjeka IS-a 1 Sadržaj Razvoj lokalnog PCS

More information

Podešavanje za eduroam ios

Podešavanje za eduroam ios Copyright by AMRES Ovo uputstvo se odnosi na Apple mobilne uređaje: ipad, iphone, ipod Touch. Konfiguracija podrazumeva podešavanja koja se vrše na računaru i podešavanja na mobilnom uređaju. Podešavanja

More information

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI Za pomoć oko izdavanja sertifikata na Windows 10 operativnom sistemu možete se obratiti na e-mejl adresu esupport@eurobank.rs ili pozivom na telefonski broj

More information

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd, AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje Marko Eremija Sastanak administratora, Beograd, 12.12.2013. Sadržaj eduroam - uvod AMRES eduroam statistika Novine u okviru eduroam

More information

SAS On Demand. Video: Upute za registraciju:

SAS On Demand. Video:  Upute za registraciju: SAS On Demand Video: http://www.sas.com/apps/webnet/video-sharing.html?bcid=3794695462001 Upute za registraciju: 1. Registracija na stranici: https://odamid.oda.sas.com/sasodaregistration/index.html U

More information

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings Eduroam O Eduroam servisu Eduroam - educational roaming je besplatan servis za pristup Internetu. Svojim korisnicima omogućava bezbedan, brz i jednostavan pristup Internetu širom sveta, bez potrebe za

More information

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE CJENOVNIK KABLOVSKA TV Za zasnivanje pretplatničkog odnosa za korištenje usluga kablovske televizije potrebno je da je tehnički izvodljivo (mogude) priključenje na mrežu Kablovskih televizija HS i HKBnet

More information

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri. Potprogrami su delovi programa. Često se delovi koda ponavljaju u okviru nekog programa. Logično je da se ta grupa komandi izdvoji u potprogram, i da se po želji poziva u okviru programa tamo gde je potrebno.

More information

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB. 9.72 8.24 6.75 6.55 6.13 po 9.30 7.89 5.86 10.48 8.89 7.30 7.06 6.61 11.51 9.75 8.00 7.75 7.25 po 0.38 10.21 8.66 7.11 6.89 6.44 11.40 9.66 9.73 7.69 7.19 12.43 1 8.38 7.83 po 0.55 0.48 0.37 11.76 9.98

More information

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

Struktura indeksa: B-stablo.   ls/swd/btree/btree.html Struktura indeksa: B-stablo http://cis.stvincent.edu/html/tutoria ls/swd/btree/btree.html Uvod ISAM (Index-Sequential Access Method, IBM sredina 60-tih godina 20. veka) Nedostaci: sekvencijalno pretraživanje

More information

STRUČNA PRAKSA B-PRO TEMA 13

STRUČNA PRAKSA B-PRO TEMA 13 MAŠINSKI FAKULTET U BEOGRADU Katedra za proizvodno mašinstvo STRUČNA PRAKSA B-PRO TEMA 13 MONTAŽA I SISTEM KVALITETA MONTAŽA Kratak opis montže i ispitivanja gotovog proizvoda. Dati izgled i sadržaj tehnološkog

More information

BENCHMARKING HOSTELA

BENCHMARKING HOSTELA BENCHMARKING HOSTELA IZVJEŠTAJ ZA SVIBANJ. BENCHMARKING HOSTELA 1. DEFINIRANJE UZORKA Tablica 1. Struktura uzorka 1 BROJ HOSTELA BROJ KREVETA Ukupno 1016 643 1971 Regije Istra 2 227 Kvarner 4 5 245 991

More information

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA KOŽA I TEKSTIL ALU FELGE CJENIK APLIKACIJE CERAMIC PRO PROIZVODA Radovi prije aplikacije: Prije nanošenja Ceramic Pro premaza površina vozila na koju se nanosi mora bi dovedena u korektno stanje. Proces

More information

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT TRAJANJE AKCIJE 16.01.2019-28.02.2019 ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT Akcija sa poklonima Digitally signed by pki, pki, BOSCH, EMEA, BOSCH, EMEA, R, A, radivoje.stevanovic R, A, 2019.01.15 11:41:02

More information

PROJEKTNI PRORAČUN 1

PROJEKTNI PRORAČUN 1 PROJEKTNI PRORAČUN 1 Programski period 2014. 2020. Kategorije troškova Pojednostavlj ene opcije troškova (flat rate, lump sum) Radni paketi Pripremni troškovi, troškovi zatvaranja projekta Stope financiranja

More information

A R H I T E K T U R A M I K R O S I S T E M A. - Materijal za pripremu ispita - SMER: Elektoronska kola i sistemi, IV semestar Godina: 2006

A R H I T E K T U R A M I K R O S I S T E M A. - Materijal za pripremu ispita - SMER: Elektoronska kola i sistemi, IV semestar Godina: 2006 A R H I T E K T U R A M I K R O S I S T E M A - Materijal za pripremu ispita - SMER: Elektoronska kola i sistemi, IV semestar Godina: 2006 S A D R Ž A J 1 Projektovanje digitalnih sistema...4 1.1 Stilovi

More information

Implementacija sparsnih matrica upotrebom listi u programskom jeziku C

Implementacija sparsnih matrica upotrebom listi u programskom jeziku C INFOTEH-JAHORINA Vol. 10, Ref. E-I-15, p. 461-465, March 2011. Implementacija sparsnih matrica upotrebom listi u programskom jeziku C Đulaga Hadžić, Ministarstvo obrazovanja, nauke, kulture i sporta Tuzlanskog

More information

Bušilice nove generacije. ImpactDrill

Bušilice nove generacije. ImpactDrill NOVITET Bušilice nove generacije ImpactDrill Nove udarne bušilice od Bosch-a EasyImpact 550 EasyImpact 570 UniversalImpact 700 UniversalImpact 800 AdvancedImpact 900 Dostupna od 01.05.2017 2 Logika iza

More information

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020.

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. Idejno rješenje: Dubrovnik 2020. Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. vizualni identitet kandidature dubrovnika za europsku prijestolnicu kulture 2020. visual

More information

Kontrolna logika za praćenje i prikaz rezultata teniskog meča

Kontrolna logika za praćenje i prikaz rezultata teniskog meča Kontrolna logika za praćenje i prikaz rezultata teniskog meča Sandra Ilijin, Predrag Petković Најбољи рад младог истраживача на секцији EL Apstrakt U ovom radu predloženo je jedno rešenje kontrolne logike

More information

Uvod u relacione baze podataka

Uvod u relacione baze podataka Uvod u relacione baze podataka 25. novembar 2011. godine 7. čas SQL skalarne funkcije, operatori ANY (SOME) i ALL 1. Za svakog studenta izdvojiti ime i prezime i broj različitih ispita koje je pao (ako

More information

Advertising on the Web

Advertising on the Web Advertising on the Web On-line algoritmi Off-line algoritam: ulazni podaci su dostupni na početku, algoritam može pristupati podacima u bilo kom redosljedu, na kraju se saopštava rezultat obrade On-line

More information

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE)

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) SISTEMI ZA PODRŠKU ODLUČIVANJU dr Vladislav Miškovic vmiskovic@singidunum.ac.rs Fakultet za računarstvo i informatiku 2013/2014 Tema 2: Uvod u sisteme

More information

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum:

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum: Programiranje Nastava: prof.dr.sc. Dražena Gašpar Datum: 21.03.2017. 1 Pripremiti za sljedeće predavanje Sljedeće predavanje: 21.03.2017. Napraviti program koji koristi sve tipove podataka, osnovne operatore

More information

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU KONFIGURACIJA MODEMA ZyXEL Prestige 660RU Sadržaj Funkcionalnost lampica... 3 Priključci na stražnjoj strani modema... 4 Proces konfiguracije... 5 Vraćanje modema na tvorničke postavke... 5 Konfiguracija

More information

3D GRAFIKA I ANIMACIJA

3D GRAFIKA I ANIMACIJA 1 3D GRAFIKA I ANIMACIJA Uvod u Flash CS3 Šta će se raditi? 2 Upoznavanje interfejsa Osnovne osobine Definisanje osnovnih entiteta Rad sa bojama Rad sa linijama Definisanje i podešavanje ispuna Pregled

More information

1. Instalacija programske podrške

1. Instalacija programske podrške U ovom dokumentu opisana je instalacija PBZ USB PKI uređaja na računala korisnika PBZCOM@NET internetskog bankarstva. Uputa je podijeljena na sljedeće cjeline: 1. Instalacija programske podrške 2. Promjena

More information

Sl.1.Razvojna ploča-interfejs

Sl.1.Razvojna ploča-interfejs Nastavna jedinica: Praktični primeri upravljanja pomoću računara Predmet: Tehničko i informatičko obrazovanje Razred: VIII Tip časa: Obrada,Vežba Obrazovni cilj/ishod: Upravljanje raznim uređajima pomoću

More information

Otpremanje video snimka na YouTube

Otpremanje video snimka na YouTube Otpremanje video snimka na YouTube Korak br. 1 priprema snimka za otpremanje Da biste mogli da otpremite video snimak na YouTube, potrebno je da imate kreiran nalog na gmailu i da video snimak bude u nekom

More information

PROGRAMSKI JEZIK VISUAL BASIC ZBIRKA ZADATAKA

PROGRAMSKI JEZIK VISUAL BASIC ZBIRKA ZADATAKA Dr Srđan Damjanović Dr Predrag Katanić PROGRAMSKI JEZIK VISUAL BASIC ZBIRKA ZADATAKA FAKULTET POSLOVNE EKONOMIJE BIJELJINA, 2014. Recenzenti: Prof. dr Rade Stankić Prof. dr Slobodan Obradović Izdaje: FAKULTET

More information

EE382M.20: System-on-Chip (SoC) Design

EE382M.20: System-on-Chip (SoC) Design EE382M.20: System-on-Chip (SoC) Design Lecture 0 Class Overview Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin gerstl@ece.utexas.edu Lecture 0: Outline Introduction

More information

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ DIZAJN TRENINGA Model trening procesa FAZA DIZAJNA CILJEVI TRENINGA Vrste ciljeva treninga 1. Ciljevi učesnika u treningu 2. Ciljevi učenja Opisuju željene

More information

Nejednakosti s faktorijelima

Nejednakosti s faktorijelima Osječki matematički list 7007, 8 87 8 Nejedakosti s faktorijelima Ilija Ilišević Sažetak Opisae su tehike kako se mogu dokazati ejedakosti koje sadrže faktorijele Spomeute tehike su ilustrirae a izu zaimljivih

More information

FAKULTET TEHNIČKIH NAUKA

FAKULTET TEHNIČKIH NAUKA UNIVERZITET U NOVOM SADU FAKULTET TEHNIČKIH NAUKA Nastavni predmet: Vežba br 6: Automatizacija projektovanja tehnoloških procesa izrade alata za brizganje plastike primenom ekspertnih sistema Doc. dr Dejan

More information

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS - Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS 1. Pokrenite Adobe Photoshop CS i otvorite novi dokument sa komandom File / New 2. Otvoriće se dijalog

More information

Mogudnosti za prilagođavanje

Mogudnosti za prilagođavanje Mogudnosti za prilagođavanje Shaun Martin World Wildlife Fund, Inc. 2012 All rights reserved. Mogudnosti za prilagođavanje Za koje ste primere aktivnosti prilagođavanja čuli, pročitali, ili iskusili? Mogudnosti

More information

INTEGRISANO RAZVOJNO OKRUŽENJE VISUAL STUDIO 2013

INTEGRISANO RAZVOJNO OKRUŽENJE VISUAL STUDIO 2013 Dr Srđan Damjanović Dr Predrag Katanić INTEGRISANO RAZVOJNO OKRUŽENJE VISUAL STUDIO 2013 FAKULTET POSLOVNE EKONOMIJE BIJELJINA, 2017. INTEGRISANO RAZVOJNO OKRUŽENJE VISUAL STUDIO 2013 Autori: Prof. dr

More information

ECONOMIC EVALUATION OF TOBACCO VARIETIES OF TOBACCO TYPE PRILEP EKONOMSKO OCJENIVANJE SORTE DUHANA TIPA PRILEP

ECONOMIC EVALUATION OF TOBACCO VARIETIES OF TOBACCO TYPE PRILEP EKONOMSKO OCJENIVANJE SORTE DUHANA TIPA PRILEP ECONOMIC EVALUATION OF TOBACCO VARIETIES OF TOBACCO TYPE PRILEP EKONOMSKO OCJENIVANJE SORTE DUHANA TIPA PRILEP M. Mitreski, A. Korubin-Aleksoska, J. Trajkoski, R. Mavroski ABSTRACT In general every agricultural

More information

POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA

POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA Master akademske studije Modul za logistiku 1 (MLO1) POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA angažovani su: 1. Prof. dr Momčilo Miljuš, dipl.inž., kab 303, mmiljus@sf.bg.ac.rs,

More information

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY Softverski sistem Survey za geodeziju, digitalnu topografiju i projektovanje u niskogradnji instalira se na sledeći način: 1. Instalirati grafičko okruženje pod

More information

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći:

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći: Pogledi Ciljevi Poslije kompletiranja ove lekcije trebalo bi se moći: Opisati pogled Formirati novi pogled Vratiti podatke putem pogleda Izmijeniti postojeći pogled Insertovani, ažurirati i brisati podatke

More information

PLAN RADA. 1. Počnimo sa primerom! 2. Kako i zašto? 3. Pejzaž višestruke upotrebe softvera 4. Frameworks 5. Proizvodne linije softvera 6.

PLAN RADA. 1. Počnimo sa primerom! 2. Kako i zašto? 3. Pejzaž višestruke upotrebe softvera 4. Frameworks 5. Proizvodne linije softvera 6. KOREKTAN PREVOD? - Reupotrebljiv softver? ( ne postoji prefiks RE u srpskom jeziku ) - Ponovo upotrebljiv softver? ( totalno bezveze ) - Upotrebljiv više puta? - Itd. PLAN RADA 1. Počnimo sa primerom!

More information

Windows Easy Transfer

Windows Easy Transfer čet, 2014-04-17 12:21 - Goran Šljivić U članku o skorom isteku Windows XP podrške [1] koja prestaje 8. travnja 2014. spomenuli smo PCmover Express i PCmover Professional kao rješenja za preseljenje korisničkih

More information

Korak X1 X2 X3 F O U R T W START {0,1}

Korak X1 X2 X3 F O U R T W START {0,1} 1) (8) Formulisati Traveling Salesman Problem (TSP) kao problem traženja. 2) (23) Dato je prostor stanja sa slike, sa početnim stanjem A i završnim stanjem Q. Broj na grani označava cijenu operatora, a

More information

LabVIEW-ZADACI. 1. Napisati program u LabVIEW-u koji računa zbir dva broja.

LabVIEW-ZADACI. 1. Napisati program u LabVIEW-u koji računa zbir dva broja. LabVIEW-ZADACI 1. Napisati program u LabVIEW-u koji računa zbir dva broja. Startovati LabVIEW Birati New VI U okviru Controls Pallete birati numerički kontroler tipa Numerical Control, i postaviti ga na

More information

11 Analiza i dizajn informacionih sistema

11 Analiza i dizajn informacionih sistema 11 Analiza i dizajn informacionih sistema Informatika V.Prof.dr Kemal Hajdarević dipl.ing.el 25.4.2014 11:58:28 1 1. Kompjuter, Internet, i mrežne osnove 2. Kompjuterska industrija Informatika u stomatologiji

More information

Upute za korištenje makronaredbi gml2dwg i gml2dgn

Upute za korištenje makronaredbi gml2dwg i gml2dgn SVEUČILIŠTE U ZAGREBU - GEODETSKI FAKULTET UNIVERSITY OF ZAGREB - FACULTY OF GEODESY Zavod za primijenjenu geodeziju; Katedra za upravljanje prostornim informacijama Institute of Applied Geodesy; Chair

More information

RAZVOJ NGA MREŽA U CRNOJ GORI

RAZVOJ NGA MREŽA U CRNOJ GORI RAZVOJ NGA MREŽA U CRNOJ GORI INFOFEST 2017 SLJEDEĆA GENERACIJA REGULACIJE, 25 26 Septembar 2017 Budva, Crna Gora Vitomir Dragaš, Manadžer za interkonekciju i sisteme prenosa Sadržaj 2 Digitalna transformacija

More information

Automatske Maske za zavarivanje. Stella, black carbon. chain and skull. clown. blue carbon

Automatske Maske za zavarivanje. Stella, black carbon. chain and skull. clown. blue carbon Automatske Maske za zavarivanje Stella Podešavanje DIN: 9-13 Brzina senzora: 1/30.000s Vidno polje : 98x55mm Četiri optička senzora Napajanje : Solarne ćelije + dve litijumske neizmenjive baterije. Vek

More information

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik) JEDINSTVENI PORTAL POREZNE UPRAVE Priručnik za instalaciju Google Chrome dodatka (Opera preglednik) V1 OPERA PREGLEDNIK Opera preglednik s verzijom 32 na dalje ima tehnološke promjene zbog kojih nije moguće

More information

Programiranje za internet zimski semestar 2013/2014. Java kroz primjere (skripta je u fazi izradi)

Programiranje za internet zimski semestar 2013/2014. Java kroz primjere (skripta je u fazi izradi) Programiranje za internet zimski semestar 2013/2014 Java kroz primjere (skripta je u fazi izradi) Zadatak broj 1 Nacrtati kocku. (Zanimljiv teži problem za razmišljanje: Nacrtat kocku čije će dimenzije

More information

KABUPLAST, AGROPLAST, AGROSIL 2500

KABUPLAST, AGROPLAST, AGROSIL 2500 KABUPLAST, AGROPLAST, AGROSIL 2500 kabuplast - dvoslojne rebraste cijevi iz polietilena visoke gustoće (PEHD) za kabelsku zaštitu - proizvedene u skladu sa ÖVE/ÖNORM EN 61386-24:2011 - stijenka izvana

More information

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU VERIFIKACIJA KORISNIČKOG KOMUNIKACIONOG PROTOKOLA PRIMENOM ERM METODOLOGIJE Master rad Kandidat: Stefanija Dačić 2012/3032 Mentor: doc. dr Zoran Čiča Beograd,

More information

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports.

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports. IZVJEŠTAJI U MICROSOFT ACCESS-u (eng. reports) su dijelovi baze podataka koji omogućavaju definiranje i opisivanje načina ispisa podataka iz baze podataka na papir (ili PDF dokument). Način izrade identičan

More information

DIGITALNO POTPISIVANJE IP PAKETA KORIŠĆENJEM BLEJK ALGORITMA ZA HEŠIRANJE

DIGITALNO POTPISIVANJE IP PAKETA KORIŠĆENJEM BLEJK ALGORITMA ZA HEŠIRANJE UNIVERZITET U BEOGRADU ELEKTROTEHNIČKI FAKULTET DIGITALNO POTPISIVANJE IP PAKETA KORIŠĆENJEM BLEJK ALGORITMA ZA HEŠIRANJE Мaster rad Mentor: Kandidat: doc. dr Zoran Čiča Danica Golubičić 2013/3149 Beograd,

More information

Dr Smiljan Vukanović, dis

Dr Smiljan Vukanović, dis NAPREDNI SISTEMI UPRAVLJANJA SAOBRAĆAJEM SVETLOSNIM SIGNALIMA SU DEO ITS-A. DA ILI NE? ADVANCED TRAFFIC SIGNAL CONTROL SYSTEMS ARE A PART OF ITS. YES OR NO? Dr Smiljan Vukanović, dis Rezultat rada na projektu

More information

PROJEKTOVANJE ZA TESTABILNOST U DSP KOLU SPECIFIČNE NAMENE

PROJEKTOVANJE ZA TESTABILNOST U DSP KOLU SPECIFIČNE NAMENE PROJEKTOVANJE ZA ABILNOST U DSP KOLU SPECIFIČNE NAMENE Miljana Sokolović, Predrag Petković, Elektronski flakultet u Nišu Sadržaj - Efikasno iranje i dijagnostika defekata predstavljaju najvažnije zahteve

More information

21000 (BКМСОlor). ј Ј Ј / 2016 ( / ; / / / / / 7/31/0/4/19/0/0 / ) 6 Ч 6 У а а а а а а ањ ДСП Ч 7. jul Ч Ч.. ј а а Cirrus Logic. 30. jun

21000 (BКМСОlor). ј Ј Ј / 2016 ( / ; / / / / / 7/31/0/4/19/0/0 / ) 6 Ч 6 У а а а а а а ањ ДСП Ч 7. jul Ч Ч.. ј а а Cirrus Logic. 30. jun - - 2016. 21000 (BКМСОlor). ј Ј Ј / 2016 ( / ; / / / / / 7/31/0/4/19/0/0 / ) 6 Ч 6 У а а а а а а ањ ДСП Ч 7. jul 2016.. Ч Ч.. ј а а Cirrus Logic. 30. jun 2016. а Ђ ј њ а ДСП а а а UNIVERSITY OF NOVI SAD

More information

Programiranje III razred

Programiranje III razred Tehnička škola 9. maj Bačka Palanka Programiranje III razred Istorijat programskih jezika Programski jezici Programski jezici su veštački jezici koji se mogu koristiti za kontrolu ponašanja mašine, naročito

More information

DEFINISANJE TURISTIČKE TRAŽNJE

DEFINISANJE TURISTIČKE TRAŽNJE DEFINISANJE TURISTIČKE TRAŽNJE Tražnja se može definisati kao spremnost kupaca da pri različitom nivou cena kupuju različite količine jedne robe na određenom tržištu i u određenom vremenu (Veselinović

More information

1.7 Predstavljanje negativnih brojeva u binarnom sistemu

1.7 Predstavljanje negativnih brojeva u binarnom sistemu .7 Predstavljanje negativnih brojeva u binarnom sistemu U decimalnom brojnom sistemu pozitivni brojevi se predstavljaju znakom + napisanim ispred cifara koje definišu apsolutnu vrednost broja, odnosno

More information

Klasterizacija. NIKOLA MILIKIĆ URL:

Klasterizacija. NIKOLA MILIKIĆ   URL: Klasterizacija NIKOLA MILIKIĆ EMAIL: nikola.milikic@fon.bg.ac.rs URL: http://nikola.milikic.info Klasterizacija Klasterizacija (eng. Clustering) spada u grupu tehnika nenadgledanog učenja i omogućava grupisanje

More information

RANI BOOKING TURSKA LJETO 2017

RANI BOOKING TURSKA LJETO 2017 PUTNIČKA AGENCIJA FIBULA AIR TRAVEL AGENCY D.O.O. UL. FERHADIJA 24; 71000 SARAJEVO; BIH TEL:033/232523; 033/570700; E-MAIL: INFO@FIBULA.BA; FIBULA@BIH.NET.BA; WEB: WWW.FIBULA.BA SUDSKI REGISTAR: UF/I-1769/02,

More information

TEHNO SISTEM d.o.o. PRODUCT CATALOGUE KATALOG PROIZVODA TOPLOSKUPLJAJUĆI KABLOVSKI PRIBOR HEAT-SHRINKABLE CABLE ACCESSORIES

TEHNO SISTEM d.o.o. PRODUCT CATALOGUE KATALOG PROIZVODA TOPLOSKUPLJAJUĆI KABLOVSKI PRIBOR HEAT-SHRINKABLE CABLE ACCESSORIES TOPOSKUPJAJUĆI KABOVSKI PRIBOR HEAT-SHRINKABE CABE ACCESSORIES KATAOG PROIZVODA PRODUCT CATAOGUE 8 TEHNO SISTEM d.o.o. NISKONAPONSKI TOPOSKUPJAJUĆI KABOVSKI PRIBOR TOPOSKUPJAJUĆE KABOVSKE SPOJNICE kv OW

More information

Tutorijal za Štefice za upload slika na forum.

Tutorijal za Štefice za upload slika na forum. Tutorijal za Štefice za upload slika na forum. Postoje dvije jednostavne metode za upload slika na forum. Prva metoda: Otvoriti nova tema ili odgovori ili citiraj već prema želji. U donjem dijelu obrasca

More information

OpenComRTOS: Formally developed RTOS for Heterogeneous Systems

OpenComRTOS: Formally developed RTOS for Heterogeneous Systems OpenComRTOS: Formally developed RTOS for Heterogeneous Systems Bernhard H.C. Sputh, Eric Verhulst, and Vitaliy Mezhuyev Email: {bernhard.sputh, eric.verhulst, vitaliy.mezhuyev}@altreonic.com http://www.altreonic.com

More information

PROFOMETER 5+ lokator armature

PROFOMETER 5+ lokator armature PROFOMETER 5+ lokator armature Instrument za testiranje betona 5. generacije Melco Buda d.o.o. - kancelarija u Beogradu: Hadži Nikole Živkovića br.2 Poslovna zgrada Iskra komerc, kancelarija 15/ II sprat

More information

DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO DOO PODGORICA

DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO DOO PODGORICA CRNA GORA (1}(02.17&r/4 Ver. O;:, fjr}/ ~ AGENCUA ZA ELEKTRONSKE KOM~~IKACUE J.O.O "\\ L\lax Montenegro" BrOJ o/-lj Podoor'ca.d:ioL 20/1g0d I POSTANSKU DEJATELNOST DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO

More information

A Survey of Time and Space Partitioning for Space Avionics

A Survey of Time and Space Partitioning for Space Avionics 2018-05-25, 21:52:13 A Survey of Time and Space Partitioning for Space Avionics Presentation at DASIA 2018 31st May 2018 The Basic Idea of TSP Motivation Time and Space Partitioning (TSP) Why? several

More information

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine UNIVERZITETUBEOGRADU RUDARSKOGEOLOŠKIFAKULTET DEPARTMANZAHIDROGEOLOGIJU ZBORNIKRADOVA ZLATIBOR 1720.maj2012.godine XIVSRPSKISIMPOZIJUMOHIDROGEOLOGIJI ZBORNIKRADOVA IZDAVA: ZAIZDAVAA: TEHNIKIUREDNICI: TIRAŽ:

More information

3. Strukturna sistemska analiza... 2 3.1. Uvod... 2 3.1.1. Sadržaj... 2 3.1.2. Ciljevi... 3 3.2. Analiza sistema... 3 3.2.1. Sistem... 3 3.2.2. Analiza sistema... 4 3.2.3. Modelovanje sistema... 6 3.2.3.1.

More information

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE 3309 Pursuant to Article 1021 paragraph 3 subparagraph 5 of the Maritime Code ("Official Gazette" No. 181/04 and 76/07) the Minister of the Sea, Transport

More information

21. Paralelizam na nivou zadataka

21. Paralelizam na nivou zadataka 21. Paralelizam na nivou zadataka Na nivou zadataka razlukujemo dve kategorije paralelizma. Ove kategorije se razlikuju po tome kakav odnos postoji izmedju zadataka. Odnos može biti: peer-to-peer (ravnoprvan

More information

3. Obavljanje ulazno-izlaznih operacija, prekidni rad

3. Obavljanje ulazno-izlaznih operacija, prekidni rad 3. Obavljanje ulazno-izlaznih operacija, prekidni rad 3.1. Spajanje naprava u ra unalo Slika 3.1. Spajanje UI naprava na sabirnicu 3.2. Kori²tenje UI naprava radnim ekanjem Slika 3.2. Pristupni sklop UI

More information

FAZIFIKACIJA GABOROVOG FILTRA I NJENA PRIMENA U DETEKCIJI REGISTARSKIH TABLICA

FAZIFIKACIJA GABOROVOG FILTRA I NJENA PRIMENA U DETEKCIJI REGISTARSKIH TABLICA UNIVERZITET U NOVOM SADU FAKULTET TEHNIČKIH NAUKA KATEDRA ZA TELEKOMUNIKACIJE I OBRADU SIGNALA FAZIFIKACIJA GABOROVOG FILTRA I NJENA PRIMENA U DETEKCIJI REGISTARSKIH TABLICA Doktorska disertacija Kandidat:

More information

Prvi koraci u razvoju bankarskog on-line sistema u Japanu napravljeni su sredinom 60-tih godina prošlog veka i to najpre za on-line, real-time obradu

Prvi koraci u razvoju bankarskog on-line sistema u Japanu napravljeni su sredinom 60-tih godina prošlog veka i to najpre za on-line, real-time obradu JAPAN Japan, kao zemlja napredne tehnologije, elektronike i telekomunikacija, je zemlja koja je u samom svetskom vrhu po razvoju i usavršavanju bankarskog poslovanja i spada među vodećim zemljama sveta

More information

Statistička analiza algoritama za dinamičko upravljanje spremnikom

Statistička analiza algoritama za dinamičko upravljanje spremnikom SVEUČILIŠTE U ZAGREBU FAKULTET ELETROTEHNIKE I RAČUNARSTVA ZAVRŠNI ZADATAK br. 1716 Statistička analiza algoritama za dinamičko upravljanje spremnikom Nikola Sekulić Zagreb, lipanj 2011. Sadržaj: 1. Uvod...

More information

STABLA ODLUČIVANJA. Jelena Jovanovic. Web:

STABLA ODLUČIVANJA. Jelena Jovanovic.   Web: STABLA ODLUČIVANJA Jelena Jovanovic Email: jeljov@gmail.com Web: http://jelenajovanovic.net 2 Zahvalnica: Ovi slajdovi su bazirani na materijalima pripremljenim za kurs Applied Modern Statistical Learning

More information

Simulacija rada PIC mikrokontrolera

Simulacija rada PIC mikrokontrolera INFOTEH-JAHORINA Vol. 11, March 2012. Simulacija rada PIC mikrokontrolera Željko Gavrić, Stefan Tešanović studenti prvog ciklusa studija Fakultet za informacione tehnologije, Slobomir P Univerzitet Doboj,

More information

TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011.

TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011. TEHNOLOGIJA, INFORMATIKA I OBRAZOVANJE ZA DRUŠTVO UČENJA I ZNANJA 6. Međunarodni Simpozijum, Tehnički fakultet Čačak, 3 5. jun 2011. TECHNOLOGY, INFORMATICS AND EDUCATION FOR LEARNING AND KNOWLEDGE SOCIETY

More information

Milkymist One. A video synthesizer at the forefront of open source hardware. S. Bourdeauducq. Milkymist project. August 2011

Milkymist One. A video synthesizer at the forefront of open source hardware. S. Bourdeauducq. Milkymist project. August 2011 Milkymist One A video synthesizer at the forefront of open source hardware S. Bourdeauducq Milkymist project August 2011 S. Bourdeauducq (Milkymist project) Milkymist One August 2011 1 / 1 What is open

More information

TEHNIĈKO VELEUĈILIŠTE U ZAGREBU ELEKTROTEHNIĈKI ODJEL Prof.dr.sc.KREŠIMIR MEŠTROVIĆ POUZDANOST VISOKONAPONSKIH PREKIDAĈA

TEHNIĈKO VELEUĈILIŠTE U ZAGREBU ELEKTROTEHNIĈKI ODJEL Prof.dr.sc.KREŠIMIR MEŠTROVIĆ POUZDANOST VISOKONAPONSKIH PREKIDAĈA TEHNIĈKO VELEUĈILIŠTE U ZAGREBU ELEKTROTEHNIĈKI ODJEL Prof.dr.sc.KREŠIMIR MEŠTROVIĆ POUZDANOST VISOKONAPONSKIH PREKIDAĈA SF6 PREKIDAĈ 420 kv PREKIDNA KOMORA POTPORNI IZOLATORI POGONSKI MEHANIZAM UPRAVLJAĈKI

More information

POKAZNA VEŽBA 1 Osnovi projektovanja digitalnih sistema na nivou logičkih kola

POKAZNA VEŽBA 1 Osnovi projektovanja digitalnih sistema na nivou logičkih kola POKAZNA VEŽBA 1 Osnovi projektovanja digitalnih sistema na nivou logičkih kola Potrebno predznanje Osnovno poznavanje digitalne elektronike Bulova (Boolean) algebra Šta će biti naučeno tokom izrade vežbe?

More information

PROTOTIP INTERNET RUTERA

PROTOTIP INTERNET RUTERA XXVIII Simpozijum o novim tehnologijama u poštanskom i telekomunikacionom saobraćaju PosTel 2010, Beograd, 14. i 15. decembar 2010. PROTOTIP INTERNET RUTERA Aleksandra Smiljanić 1, Zoran Čiča 1, Rajko

More information

ARHITEKTURA RAČUNARA

ARHITEKTURA RAČUNARA J. ĐORĐEVIĆ, D. MILIĆEV, D. BOJIĆ, A. MILENKOVIĆ, B. NIKOLIĆ, Z. RADIVOJEVIĆ, M. OBRADOVIĆ ARHITEKTURA RAČUNARA ZBIRKA REŠENIH ZADATAKA Beograd 2005. 1.1 ZADATAK 1 PREKIDI Posmatra se procesor sa vektorisanim

More information

Rešavanje problema pomoću računara

Rešavanje problema pomoću računara Rešavanje problema pomoću računara Vladimir Filipović vladaf@matf.bg.ac.rs Softversko inženjerstvo Šta podrazumevamo pod softverskim inženjerstvom? vladaf@matf.bg.ac.rs 2/16 Konstrukcija prevodilaca Prevođenje

More information

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. SEMINARSKI RAD U OKVIRU PREDMETA "Računalna forenzika" 2016/2017. GIF FORMAT (.

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. SEMINARSKI RAD U OKVIRU PREDMETA Računalna forenzika 2016/2017. GIF FORMAT (. SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA SEMINARSKI RAD U OKVIRU PREDMETA "Računalna forenzika" 2016/2017 GIF FORMAT (.gif) Renato-Zaneto Lukež Zagreb, siječanj 2017. Sadržaj 1. Uvod...

More information

Diplomski rad Projektovanje integrisanog taksimetra primenom ADK alata

Diplomski rad Projektovanje integrisanog taksimetra primenom ADK alata Elektronski Fakultet u Nišu Katedra za Elektroniku Diplomski rad Projektovanje integrisanog taksimetra primenom ADK alata Zadatak: Projektovati integrisano kolo specifične namene pogodno za tarifiranje

More information

Driving STM32 to success STM32 services for sophisticated embedded applications

Driving STM32 to success STM32 services for sophisticated embedded applications Building a safe and secure embedded world Driving STM32 to success STM32 services for sophisticated embedded applications > STM32 Services HITEX: the stm32 experts Questions about STM32? Ask us! STM32

More information

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT Univerzitet u Novom Sadu Fakultet tehničkih nauka Odsek za računarsku tehniku i računarske komunikacije Uvod u GIT Šta je git? Sistem za verzionisanje softvera kao i CVS, SVN, Perforce ili ClearCase Orginalno

More information

1. MODEL (Ulaz / Zadržavanje / Stanje)

1. MODEL (Ulaz / Zadržavanje / Stanje) 1. MODEL (Ulaz / Zadržavanje / Stanje) Potrebno je kreirati model koji će preslikavati sledeći realan sistem: Svaki dan dolazi određen broj paleta u skladište Broj paleta na nivou dana se može opisati

More information

CRNA GORA

CRNA GORA HOTEL PARK 4* POLOŽAJ: uz more u Boki kotorskoj, 12 km od Herceg-Novog. SADRŽAJI: 252 sobe, recepcija, bar, restoran, besplatno parkiralište, unutarnji i vanjski bazen s terasom za sunčanje, fitnes i SPA

More information

DANI BRANIMIRA GUŠICA - novi prilozi poznavanju prirodoslovlja otoka Mljeta. Hotel ODISEJ, POMENA, otok Mljet, listopad 2010.

DANI BRANIMIRA GUŠICA - novi prilozi poznavanju prirodoslovlja otoka Mljeta. Hotel ODISEJ, POMENA, otok Mljet, listopad 2010. DANI BRANIMIRA GUŠICA - novi prilozi poznavanju prirodoslovlja otoka Mljeta Hotel ODISEJ, POMENA, otok Mljet, 03. - 07. listopad 2010. ZBORNIK SAŽETAKA Geološki lokalitet i poucne staze u Nacionalnom parku

More information

MIKROKONTROLER PIC 16F877A I NJEGOVA PRIMJENA U TELEOPERACIJAMA PREKO INTERNETA UPOTREBOM VALNIH VARIJABLI

MIKROKONTROLER PIC 16F877A I NJEGOVA PRIMJENA U TELEOPERACIJAMA PREKO INTERNETA UPOTREBOM VALNIH VARIJABLI 9 th International Scientific Conference on Production Engineering DEVELOPMENT AND MODERNIZATION OF PRODUCTION MIKROKONTROLER PIC 16F877A I NJEGOVA PRIMJENA U TELEOPERACIJAMA PREKO INTERNETA UPOTREBOM

More information

UM1868. The BlueNRG and BlueNRG-MS information register (IFR) User manual. Introduction

UM1868. The BlueNRG and BlueNRG-MS information register (IFR) User manual. Introduction User manual The BlueNRG and BlueNRG-MS information register (IFR) Introduction This user manual describes the information register (IFR) of the BlueNRG and BlueNRG-MS devices and provides related programming

More information

Mindomo online aplikacija za izradu umnih mapa

Mindomo online aplikacija za izradu umnih mapa Mindomo online aplikacija za izradu umnih mapa Mindomo je online aplikacija za izradu umnih mapa (vrsta dijagrama specifične forme koji prikazuje ideje ili razmišljanja na svojevrstan način) koja omogućuje

More information

ZBIRKA ZADATAKA IZ POSLOVNE INFORMATIKE

ZBIRKA ZADATAKA IZ POSLOVNE INFORMATIKE Dr Srđan Damjanović Predrag Katanić Borislav Drakul ZBIRKA ZADATAKA IZ POSLOVNE INFORMATIKE FAKULTET SPOLJNE TRGOVINE BIJELJINA, 2OO8. ZBIRKA ZADATAKA IZ POSLOVNE INFORMATIKE 2 Recenzent: Prof.dr Branko

More information