U širem smislu, osnovna područja rada su 3D grafika i računalni vid. Naglasak je na sljedećim područjima:
- Praćenje i analiza lica tehnikama računalnog vida
- Virtualni likovi
- Proširena stvarnost
- Vizualizacija podataka (prof. Matković)
- Znanstvena vizualizacija (prof. Matković)
Većina predloženih konkretnih tema je kombinacija ovih područja. Prihvaćaju se i vlastiti prijedlozi tema pod uvjetom da zadovoljavaju kriterije za studentski rad. Lista tema daje veći broj ideja za teme studentskih radova te se povremeno nadopunjuje i mijenja. Ako ste u potrazi za temom, pogledajte ove stranice češće. Uputno je pogledati i radove iz prethodnih godina.
Zadnja promjena: 2023-02-06
Praćenje i analiza lica tehnikama računalnog vida
Na Zavodu je dostupan visage|SDK, vrhunski softverski sustav za praćenje lica u stvarnom vremenu tvrtke Visage Technologies s kojom HOTLab tijesno surađuje. visage|SDK je na raspolaganju i često se koristi u studentskim radovima.
Liveness detection
Liveness detection znači razlikovanje stvarnog čovjeka od slike, u cilju sprječavanja varanja sustava za provjeru identitata podmetanjem slike. Zadatak počinje proučavanjem literature jer postoji više pristupa. U siječnju 2023. je dovršen diplomski rad na ovu temu te je moguće nadovezati se na rezultate ovog rada. Na raspolaganju je i nekoliko baza slika/videa za učenje i testiranje sustava.
Raspoznavanje emocija praćenjem lica
U komunikaciji među ljudima, emocije se vrlo često raspoznaju preko izraza lica. Praćenje lica, odnosno pokreta lica, osnova je strojnog raspoznavanja emocija. Cilj studentskog zadatka bio bi proučiti metode raspoznavanja emocija s naglaskom na postojeću implementaciju i mogućnosti njenog proširenja na tzv. valence/arousal prostor.
Detekcija mikro-izraza lica u videu
Mikro-izrazi lica (micro-expressions) su izrazi lica vrlo kratkog trajanja (pola sekunde ili manje), što ih čini posebno teškim za detekciju. Ovakvi izrazi lica najčešće nisu svjesno kontrolirani te se smatra da mogu bolje odati stvarne emocije nego makro-izrazi koje u većoj ili manjoj mjeri možemo svjesno kontrolirati. Cilj ovog zadatka je temeljem dostupnih baza video zapisa sa mikro-izrazima lica proučiti mogućnost njihovog automatskog detektiranja korištenjem postojećeg softvera za praćenje lica dostupnog na zavodu. Po dogovoru, ali i ovisno o prvim rezultatima, zadatak može biti proširen na poboljšanja u postojećem sustavu s ciljem bolje detekcije mikro-izraza.
Estimacija izraza lica prema sustavu FACS
Facial Action Coding System (FACS) je klasični sustav za anotaciju izraza lica koji se sastoji od većeg broja elementarnih pokreta lica (Action Units, AUs) koji se kombiniraju u složenije izraze. Cilj ovog zadatka je upoznati se sa sustavom FACS te implementirati automatsku estimaciju izraza lica prema sustavu FACS, koristeći se pritom postojećim sustavom za praćenje lica kao osnovom.
Igre i druge aplikacije pokretane praćenjem lica
Praćenje lica može se koristiti kao inovativan način upravljanja računalnim aplikacijama. Ovo je pogotovo zanimljivo za igre i zabavne aplikacije, premda ne mora nužno biti ograničeno na zabavu. Od posebnog je interesa izrada ovakvih aplikacija za pokretne uređaje. Nekoliko ovakvih projekata izrađeno je i u okviru studentskih preddiplomskih projekata.
Praćenje lica u termalnim video signalima
Cilj studentskog zadatka bio bi proučiti mogućnost rada postojećeg sustava za praćenje lica u termalnom području spektra. Poznato je da u termalnim slikama ne radi metoda postojeća detekcije lica, kao ni metoda lokalizacije točaka lica. Pretpostavlja se da bi moglo biti moguće zaobići ovaj problem obradom slike.
Virtualni likovi
Animacija lica analizom video slike
Jedan od brojnih načina 3D animacije lica je analiza video slike, pri čemu je cilj iz slike dobiti 3D pozicije glave i karakterističnih točaka lica (konture usana, obrva, rotacija očiju). Taj postupak se naziva praćenje karakterističnih točaka lica (engl. Facial Feature Tracking ili Facial Motion Capture) ili skraćeno praćenje lica (engl. Face Tracking). Praćenje lica je jedan od najvećih izazova u području obrade video slike. Na Zavodu je dostupan vrhunski softverski sustav za praćenje lica u stvarnom vremenu, povezan sa softverom za animaciju lica također dostupnim na zavodu čime se dobiva sustav koji animira virtualno lice u stvarnom vremenu, prateći direktno pokrete osobe pred kamerom. Unutar ove teme moguće je definirati više praktičnih zadataka. S jedne strane, zadatak može biti poboljšano povezivanje sustava praćenja lica sa sustavom animacije, kroz bolji izbor parametara animacije virtualnog lica i njihovo preslikavanje. Druge mogućnosti uključuju implementacije drugih sustava za grafiku (trenutno se koristi Unity3D) ili boljih metoda animacije lika.
3D grafika
View Dependent Rendering
View Dependent Rendering je tehnika za 3D iscrtavanje uz dinamičku promjenu perspektive u stvarnom vremenu na bazi rezultata 3D praćenja glave korisnika u slici dobivenoj kamerom (engl. head tracking). Aplikacija ne zahtijeva nikakav dodatni hardver osim obične web kamere montirane iznad zaslona računala. Dobiveni efekt je da se korisnik može "okretati oko predmeta" i promatrati predmete s raznih strana jednostavnim pomakom glave. U okviru studentskog projekta 2010. g. razvijen je osnovni sustav demonstriran video zapisom dolje. Zadatak studenta bio bi razviti novi ovakav sustav na bazi naprednije tehnologije praćenja i novijeg 3D sustava (npr. Unity), uz posebno zanimljivu mogućnost razvoja ovakve aplikacije za pokretne uređaje (iOS, Android), ili za web (HTML5).
Video: View Dependent Rendering.
Programiranje grafičkih procesora
Grafički procesori (GPU) i programska sučelja ostavljaju mogućnost programiranja operacija protočnog sustava na niskoj razini - moguće je programirati vlastite operacije osvjetljavanja i manipulacije vrhova kao i popunjavanja pixel-a. Ovo pruža izuzetnu fleksibilnost u programiranju grafičkih efekata i animacije, pa čak i korištenja specifičnih mogućnosti grafičkih procesora za druge vrste računanja nevezane uz grafiku. U sklopu ove teme studenti će proučiti postojeće tehnologije, programska sučelja i alate, te u dogovoru s mentorom osmisliti praktični zadatak, npr. odabrati jedan specifični grafički efekt ili način animacije, te ga implementirati na stvarnoj grafičkoj kartici ili na emulatoru. Na ovu temu je posljednjih godina ostvareno nekoliko studentskih radova koji mogu koristiti kao predložak.
Razvoj plugina za 3D softver (Blender)
Svi profesionalni i open source softveri za 3D modeliranje i animaciju omogućavaju proširivanje funkcija programiranjem plugina. Ova tema predviđa upoznavanje s jednim softverom uz naglasak na njegove mogućnosti proširivanja, te izradu jednog konkretnog plugina. Odabir softvera i funkcije samog plugina radi se u dogovoru s mentorom.
Proširena stvarnost
Proširena stvarnost za virtualno isprobavanje naočala
HOTLab je u suradnji s komercijalnim partnerom razvio sustav za virtualno isprobavanje naočala zasnovan na proširenoj stvarnosti i 3D praćenju pokreta lica. Sustav je implementiran i na pokretnim sustavima (iPhone, iPad...), kao i za HTML5; demonstracija ovdje.
Studentski zadatak sastojao bi se u ispitivanju mogućih poboljšanja postojećeg sustava. Ideje za to uključuju:
- Iscrtavanje sjene virtualnih naočala na licu,
- Poboljšano prekrivanje dijelova lica (npr. nosa) naočalama,
- Realistično podešavanje veličine naočala,
- Isprobavanje naočala na prethodno snimljenom nizu slika po uzoru na glasses.com.
Proširena stvarnost za virtualno isprobavanje brade i obrva
Zadatak je implementirati virtualno iscrtavanje brade i obrva na licu u stvarnom vremenu korištenjem tehnologije praćenja lica dostupne na Zavodu.
Proširena stvarnost za virtualno isprobavanje frizure
Zadatak je implementirati virtualno iscrtavanje frizure na 3D modelu u stvarnom vremenu korištenjem tehnologije praćenja lica dostupne na Zavodu.
Vizualizacija podataka (izv.prof.dr.sc. Krešimir Matković)
Block Modeler
U inženjerskim aplikacijama sistemi su najčešće definirani korištenjem međusobno povezanih 2D blokova. Takav sistem je vrlo pogodan za definiranje problema i pripremu ulaznih podataka u simulaciju. Rezultati simulacije su najčešće prikazani tekstualno ili korištenjem odvojenog sustava. Cilj ovog diplomskog rada je objediniti modeliranje i prezentaciju rezultata, tj. blokovi korišteni u modeliranju moraju moći prikazati i rezultate. S obzirom na potencijalno velik broj elemenata u raznim sustavima, editor za nove elemente je sastavni dio rada. Težište je na vizualizaciji rezultata, vizaulizaciji odstupnja i pogreąaka kod više simulacija i interaktivnosti modela. Predviđeno je korištenje GTK biblioteke za GUI, OpenGL-a za grafiku i c za programiranje. Rad mogu raditi i dva studenta.
Advanced Interaction with Color Lines View
Color Lines View je način prikaza familije krivulja. Krivulje su prikazane ravnim crtama, a vrijednost funkcije je kodirana bojom. Novi načini selekcije i interakcije s prikazom su težište ovog rada. Zainteresirani studenti mogu zatražiti opis prikaza (samo pošaljite e-mail). Predviđeno je korištenje OpenGL-a za grafiku i C za programiranje.
Advanced Scatter Plot and Parallel Coordinates
Proširenje standardnih prikaza tako da podržavaju osi koje nisu jednodimenzinalne. Kod paralelnih koordinata, dodatno se očekuje implementiranje "Parellel Sets" pristupa u kombinaciji s paralelnim koordinatama. Predviđeno je korištenje OpenGL-a za grafiku i C za programiranje.
Znanstvena vizualizacija (izv.prof.doc.dr.sc. Krešimir Matković)
Basic Volume Visualization
Osnovni sustav za vizualizaciju volumena. Ray casting, splatting. Moguće je proširiti temu na GPU bazirane metode. Ovu temu vodi izv.prof.dr.sc. Krešimir Matković.
Flow Visualization
2D Steady state flow on regular grid. Predviđeno je korištenje OpenGL-a za grafiku i C za programiranje. Ovu temu vodi izv.prof.dr.sc. Krešimir Matković.
Parameterized Constructive Solid Geometry
Constructive Solid Geometry je način modeliranja gdje se koriste osnovni oblici volumena (kocka, kvadar, kugla, cilindar, ...) i Booleove operacije među njima kako bi se modelirali kompleksni oblici. U ovom radu očekuje se prikaz mogućnosti i razvoj sustava za parametrizirani CSG. Definicija konačnog tijela nije dana striktno već kao funkcija parametara. Npr. kocka stranice a je kombinirana s valjkom polumjera b i visine c. Korisnik može odrediti a, b, c (unutar dozvoljenih granica) i sistem računa konačni objekt. Predviđeno je korištenje GTK biblioteke za GUI, OpenGL-a za grafiku i c za programiranje. Ovu temu vodi izv.prof.dr.sc. Krešimir Matković.