Naziv predmeta | Računalna grafika |
Detalji | Kod VSITE255 Skr. GRAF ECTS 5 Godina 2 Semester Ljetni semestar Vrsta obvezatni smjera Razina HKO 7 Diplomski studiji E-Learning 0% |
Aktivnosti | DIT zg - Zim 24/25 ECTS Jedinice Sati Svega P 1 15 2 30
A 0.5 15 1 15
L 0.5 12 1 15
S 0 0 0 0
KA 0 0 0 0
KP 0 2 2 0
PR 0 0 0 0
IP 0 0 0 0
IU 0 1 2 0
SU 3 1 90 90
|
Nastavnici | Nositelji: Mirko Bulaja, pred. |
Preduvjeti | Nema |
Sadržaj | Primjene i osnovni koncepti računarske grafike. Računarska grafika u inženjerskim primjenama. Sklopovska oprema za računalnu grafiku Grafički programski paketi i grafički sustavi. Interaktivna računarska grafika. Grafički terminal i grafički procesor. Matematički temelji računarske grafike. Algoritmi 2D grafike i 3D modeliranje. Rasterski i vektorski grafički sustavi. Grafičke transformacije. Projekcije. Osnovni algoritmi rasterske grafike. Prikazivanje crta, krivulja, površina i tijela. Animacija. Boja u računalnoj grafici. Biblioteke grafičkih funkcija. Digitalna obrada i analiza slike. Poboljšanja slike.
|
Ciljevi učenja | Osposobiti studenta za primjenu računalne grafike.
|
Ishodi učenja | 1. Nabrojati primjene i koncepte računalne grafike, objasniti sklopovlje računalne grafike, grafičke sustave i pakete, interaktivnu grafiku, grafički terminal i grafički procesor, definirati rasterske i vektorske sustave, animaciju, boju. 2. Primijeniti matematičke temelje računalne grafike i algoritme 2D i 3D modeliranja. 3. Primijeniti grafičke transformacije, algoritme rasterske grafike. 4. Primijeniti biblioteke grafičkih funkcija. 5. Poboljšati sliku.
|
Sposobnosti | Kolegij pruža osnovna znanja računalnog generiranja 2D i 3D prikaza, te obrade slike.
|
Preporučena literatura | 1. McConnell, J. J.: Computer Graphics, Theory into practice, Jones and Barlett Publishers, USA, 2006.
2. Hearn, D.; Baker, M. P.: Computer Graphics with OpenGL, third edition. Prentice Hall, 2003.
|
Dodatna literatura | |
predavanja (P) | - Uvod u računalnu grafiku. Povijest. Definicije. Grafički ulazni i izlazni uređaji. Scanline grafika, framebuffer grafika. Pikseli, boje, RGB prostor boja. GPU.
- Crtanje linija. Aproksimacija idealne dužine u ravnini. Line DDA algoritam. Bresenham-ov algoritam.
- Linije - Bresenham run-slice algoritam. Wu's double step. Supercover, Xiaolin Wu (antialiasiranje linija).
- Crtanje polyline-a. Par-nepar pravilo, non-zero winding rule. Rasterizacija kompleksnog poligona (Scanline conversion).
- BitBLT - kopiranje dijela ili cijele bitmape. Primjena sa i bez maske. Bitwise operacije kod kopiranja. Kompiniranje kolor bitmapa. Alpha blending, alpha compositing.
- Obrada slike. Globalni filteri slike. Korekcija nivoa/tonova (Levels correction). Parametri i primjene korekcije nivoa. Gama korekcija. Korekcija boja.
Filteri za zamučivanje i izoštravanje slike. Poopčenje definicije filtera - kernelske operacije obrade slike (2D konvolucija). Primjena kernelskih filtera na blur, sharpen, unsharp mask, detekciju rubova.
- Nije definirano
- WebGL uvod, usporedba sa OpenGL-om. Struktura WebGL programa. Inicijalizacija konteksta. Stvaranje buffer-a, vezivanje buffer-a, dodijeljivanje podataka. Verteks i fragment shaderi. Stvaranje minimalnog verteks i minimalnog fragment shadera. Vezivanje atributa shadera na podatke u buffer-u. (vjezbe unit 9)
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
|
auditorne vježbe (A) | - Organizacija framebuffera u memoriji. Prikaz framebuffera kao 2D, kao 1D memorijsko područje. Kontroliranje pojedinačnih piksela. Grayscale, RGB framebuffer. Crtanje računanjem uvjeta za svaki piksel.
- Interpretacija lažnim bojama. Line DDA sa pomičnim zarezom. Bresenhamov algoritam - implementacija cijelim brojevima.
- Xiaolin Wu crtanje antialiasiranih linija. Supercover - primjena na "occlusion map".
- Rasterizacija kompleksnih poligona algoritmom Scanline konverzije.
- Implementacija draw_bitmap sa on/off maskom. Automatsko generiranje maske sa rubom iz bitmape. Problemi sa bitwise operacijama kod grayscale/kolor bitmapa.
- Mini aplikacija za obradu slike. Detalji o implementaciji blur, sharpen filtera. Demonstracija levels, auto levels filtera.
- opis za vjezbe pred kol 1
- opis za vjezbe pred kol 1
- par sa pred 8. webgl prim 1.
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
|
laboratorijske vježbe (L) | - Inicijalizacija framebuffera kao 1D i 2D polje u C-u. Ispiši framebuffer pomoću ASCII znakova na konzolu. Isti primjer obradimo u Pythonu pomoću numpy matrice. Inicijalizirajmo novi framebuffer, prikažimo ga grafički kao 1D i 2D polja preko Matplotlib modula.
- Crtanje kruga testiranjem jednadžbe kruga za svaki piksel. Popunjavanje kruga preko horizontalnih segmenata. (radi se jos primjera - nadopuniti)
- Crtanje linija Bresenham i line DDA algoritmima. Pronađi grešku. Adaptiraj primjere tako da craju elipsu.
- Crtanje polygona scanline algoritmom. Verificiraj da program ne radi overdraw - da se dva susjedna poligona ne preklapaju.
- Modificiranje draw_bitmap funkcije sa alpha blending funkcionalnošću. Generiranje konstantne poluprozirne maske.
- Implementacija blur filtera bez upotrebe pomoćnih funkcija.
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
- Nije definirano
|
kolokvij - teorija (KP) | - Framebuffer, pikseli, linije, poligoni, bitmape, obrada slika.
- Nije definirano
|
ispit - teorija (IU) | - Nije definirano
|
samostalno učenje (SU) | - testovi i kolokviji, konzultacije, samostalni rad i samostalno učenje
|