Na ulaz se dovode fotografije, kojima se, preko algoritma opisanog dole, dodjeljuje pretpostavka za mapu dubine. Mapa dubine je lista vrijednosti dubine za svaki piksel. Za svaki pixel će se dodijeliti jedna vrijednost iz skupa vrijednosti od 0 do 255, koja predstavlja udaljenost datog pixela od objektiva. Drugim riječima u ovom projektu će se raditi generisanje dubine (3. dimenzije) za svaki piksel na proslijeđenoj slici.
Algoritmi koji će se koristiti:
Prvi korak algoritma je dijeljenje slike na objekte (tijela) koja se nalaze na slici. Za prvi korak će se koristiti DBSCAN algoritam, gdje ćemo parametar odabrati prilikom testiranja.
Drugi korak u rješavanju je analiza preklapanja objekata. Uokvirimo sve objekte ekvivalentnim kvadratima, te u zavisnosti od preklapanja ekvivalentnih kvadrata predpostavljamo koji je objekat iza, a koji je ispred. Za drugi korak će se koristiti algoritam pronalaženja četiri najudaljenije tačke objekta za četiri strane, i generisanje tačaka ivica kvadrata na osnovu pronađenih tačaka. Nakon čega slijedi upoređivanje ivica datih kvadrata, te sortiranje objekata po udaljenosti.
Treći korak, koji nije nužan za izradu u ovom projektnom zadataku, je generisanje prikaza za 3D naočale, ili neki drugi medij za pregledanje 3D modela.
Napomena: Izlaz koji ćemo prikazivati ukoliko se ne uradi 3. dio je crno-bijela slika, gdje je dubina preslikana na količinu crne/bijele na fotografiji. Za treći korak se koristi matematički model translacije vektora.
Metrika za poređenje performansi algoritama i parametara algoritma:
Za DBSCAN parametar ćemo odrediti eksperimentalno. Ukoliko se pokaže da je parametar od 1px zadovoljavajući (dovoljno brzo i efikasno se izvršava DBSCAN), primjenićemo ga. Ukoliko je potrebno parametar će biti u postocima slike. Npr. 1% širine/visine slike je parametar (tako nešto bi koristili zbog garantovanja brzine izvršavanja - realtime).
Podaci koji se koriste:
Podaci koje ćemo koristiti su slučajno prikupljen set slika. Neke ćemo prikupiti sa interneta, neke iz privatnih kolekcija. Slike se neće morati dodatno obrađivati, kako bi se unosili u algoritam.
Validacija rješenja:
Jedini način da se uporedi kvalitet izlaza iz algoritma je vizuelno poređenje ulazne slike sa izlaznom mapom dubine.
Asistent: @ivan7792
Student: Dragan Vujanović, sw-11/2014, grupa 1.
Problem koji se rešava:
Na ulaz se dovode fotografije, kojima se, preko algoritma opisanog dole, dodjeljuje pretpostavka za mapu dubine. Mapa dubine je lista vrijednosti dubine za svaki piksel. Za svaki pixel će se dodijeliti jedna vrijednost iz skupa vrijednosti od 0 do 255, koja predstavlja udaljenost datog pixela od objektiva. Drugim riječima u ovom projektu će se raditi generisanje dubine (3. dimenzije) za svaki piksel na proslijeđenoj slici.
Algoritmi koji će se koristiti:
Metrika za poređenje performansi algoritama i parametara algoritma: Za DBSCAN parametar ćemo odrediti eksperimentalno. Ukoliko se pokaže da je parametar od 1px zadovoljavajući (dovoljno brzo i efikasno se izvršava DBSCAN), primjenićemo ga. Ukoliko je potrebno parametar će biti u postocima slike. Npr. 1% širine/visine slike je parametar (tako nešto bi koristili zbog garantovanja brzine izvršavanja - realtime).
Podaci koji se koriste: Podaci koje ćemo koristiti su slučajno prikupljen set slika. Neke ćemo prikupiti sa interneta, neke iz privatnih kolekcija. Slike se neće morati dodatno obrađivati, kako bi se unosili u algoritam.
Validacija rješenja: Jedini način da se uporedi kvalitet izlaza iz algoritma je vizuelno poređenje ulazne slike sa izlaznom mapom dubine.
Reference: 2D to 3D Conversion in 3DTV Using Depth Map Generation and Virtual View Synthesis http://www.cs.cornell.edu/~asaxena/learningdepth/ijcv_monocular3dreconstruction.pdf A Simple Semi-automatic Technique for 2D to 3D Video Conversion
Repozitorijum: https://github.com/nagdar7/2Dto3DConverter