Upload
others
View
13
Download
0
Embed Size (px)
Citation preview
Smetanova ulica 17
2000 Maribor, Slovenija
Mateja Krajnc
POSTOPKI PRENOSA
STATIČNIH 2D SCEN V 3D MODELE
Magistrsko delo
Maribor, marec 2015
i
POSTOPKI PRENOSA
STATIČNIH 2D SCEN V 3D MODELE
Magistrsko delo
Študentka: Mateja Krajnc
Študijski program 2. stopnje
Študijski program: Medijske komunikacije
Mentor: doc. dr. David Podgorelec
Somentor: dr. Gregor Klajnšek
ii
iii
ZAHVALA
Zahvaljujem se tako mentorju, kot tudi
somentorju za vso pomoč in dobronamerne
nasvete pri pisanju magistrskega dela.
Posebej iz srca se zahvaljujem svojima
staršema in bratu, ki so me v času študija
podpirali in mi vseskozi stali ob strani.
Posebno pa se zahvaljujem tudi tebi, ki si me
spodbujal, ko sem to najbolj potrebovala.
Iskrena hvala vsem.
iv
POSTOPKI PRENOSA STATIČNIH 2D SCEN V 3D MODELE
Ključne besede: geometrijsko modeliranje, modeliranje na podlagi slik,
fotogrametrija, Insight3D, Cinema 4D
UDK: 004.925.8(043.2)
Povzetek:
V magistrskem delu smo se posvetili procesom, ki omogočajo prenos dvodimenzionalnih
scen v tridimenzionalne modele. Najprej smo se seznanili s teoretičnimi izhodišči.
Seznanili smo se z osnovami geometrijskega modeliranja ter s principi in klasifikacijo
metod modeliranja na podlagi slik. V empiričnem delu smo s pomočjo polavtomatskega
fotogrametričnega programa Insight3D in programa za ročno modeliranje in teksturiranje
Cinema 4D poskušali na podlagi izbranih lastnih fotografij arhitekturnega objekta narediti
tridimenzionalni računalniški model. Bolj dovršene rezultate smo dosegli pri uporabi
programa Cinema 4D.
v
PROCEDURES FOR TRANSFORMING STATIC 2D SCENES INTO
3D MODELS
Keywords: geometric modeling, image based modeling, photogrammetry, Insight3D,
Cinema 4D
UDK: 004.925.8(043.2)
Abstract:
In this thesis, we put our focus on the processes, which enable the transfer of two-
dimensional scenes into three-dimensional models. We first note the theoretical
assumptions. We analysed the basics of geometric modeling and the principles and
classification of modeling methods based on images. In the empirical part we used a
semiautomatic photogrammetric program Insight3D and a program for hand modeling and
texturing Cinema 4D. With both we tried to make a three-dimensional computer model
based on the selected photos. More sophisticated results were achieved when using
Cinema 4D.
vi
KAZALO
1 UVOD ........................................................................................................................................ 1
2 GEOMETRIJSKO MODELIRANJE....................................................................................... 3
2.1 Predstavitvene metode geometrijskih objektov .................................................................... 4 2.1.1 Mnogokotniki ................................................................................................................................... 5 2.1.2 NURBS .............................................................................................................................................. 6 2.1.3 Opisne krogle ................................................................................................................................... 7
2.2 Operacije nad geometrijskimi objekti .................................................................................... 9 2.2.1 Geometrijske transformacije ............................................................................................................ 9 2.2.2 Boolove operacije ........................................................................................................................... 10
2.3 Barve in teksture .................................................................................................................. 11
3 PRENOS 2D STATIČNIH SCEN V 3D MODELE ........................................................... 15
3.1 Pregled metod 3D modeliranja na podlagi slik .................................................................... 19
3.2 Programska oprema za 3D modeliranje na podlagi slik ....................................................... 21
4 FOTOGRAMETRIČNO MODELIRANJE V PROGRAMU INSIGHT3D ..................... 24
4.1 Izbor fotografij ...................................................................................................................... 25
4.2 Prenos fotografij v 3D model ............................................................................................... 27
4.3 Prednosti uporabe programa Insight3D ............................................................................... 38
4.4 Slabosti uporabe programa Insight3D ................................................................................. 38
5 MODELIRANJE IN TEKSTURIRANJE V PROGRAMU CINEMA 4D ........................ 40
5.1 Izdelava 3D modela .............................................................................................................. 41
5.2 Prednosti uporabe programa Cinema 4D ............................................................................ 53
5.3 Slabosti uporabe programa Cinema 4D ............................................................................... 55
6 ANALIZA REZULTATOV EMPIRIČNEGA DELA RAZISKAVE.................................. 56
6.1 Primerjava uporabe programov Insight3D in Cinema 4D .................................................... 56
6.2 Analiza veljavnosti hipotez ................................................................................................... 57
6.3 Možne razširitve in izboljšave raziskave ............................................................................... 59
7 SKLEP .................................................................................................................................... 60
VIRI .................................................................................................................................................... I
vii
KAZALO SLIK
SLIKA 1: POTEK IZDELAVE SLIKE V 3D RAČUNALNIŠKI GRAFIKI (VIR: LASTEN) ........................................................................ 4
SLIKA 2: KROGLI, PREDSTAVLJENI Z MANJ IN VEČ MNOGOKOTNIKI (VIR: LASTEN) .................................................................. 6
SLIKA 3: NURBS IN BÉZIERJEVA KRIVULJA (VIR: LASTEN) ................................................................................................ 7
SLIKA 4: ŽIČNI MODEL IN PREDSTAVITEV S PLOSKVAMI NURBS (VIR: LASTEN) .................................................................... 7
SLIKA 5: INTERAKCIJA DVEH POZITIVNIH OPISNIH KROGEL [8] ........................................................................................... 8
SLIKA 6: INTERAKCIJE NEGATIVNE IN POZITIVNE OPISNE KROGLE [8] .................................................................................. 8
SLIKA 7: BOOLOVE OPERACIJE UNIJE, PRESEKA IN RAZLIKE DVEH MNOŽIC (VIR: LASTEN)....................................................... 11
SLIKA 8: BARVNI MODEL RGB (VIR: LASTEN).............................................................................................................. 12
SLIKA 9: ADITIVNO MEŠANJE BARV [2] ...................................................................................................................... 12
SLIKA 10: 3D MODEL, NASTAL NA PODLAGI SKICE [21] ................................................................................................ 16
SLIKA 11: IZBRANA VILA (VIR: LASTEN) ...................................................................................................................... 26
SLIKA 12: IZBRANA SERIJA FOTOGRAFIJ (VIR: LASTEN) .................................................................................................. 26
SLIKA 13: ZAČETNI ZASLON PROGRAMA INSIGHT3D (VIR: LASTEN) ................................................................................. 27
SLIKA 14: OSNOVNI POGLED NALOŽENE FOTOGRAFIJE (VIR: LASTEN) ............................................................................... 28
SLIKA 15: UJEMAJOČE SE TOČKE NA FOTOGRAFIJAH (VIR: LASTEN) .................................................................................. 29
SLIKA 16: PRIKAZ POZICIJ KAMER (VIR: LASTEN) .......................................................................................................... 30
SLIKA 17: OBLAK TOČK (VIR: LASTEN) ....................................................................................................................... 31
SLIKA 18: POGLED IZ NAČINA POSNETKA S PRIKAZOM UJEMAJOČIH SE TOČK (VIR: LASTEN)................................................... 31
SLIKA 19: PRIKAZ POVEČAVE SLIKE S POMOČJO ORODJA ZA USTVARJANJE TOČK (VIR: LASTEN) .............................................. 32
SLIKA 20: PRIKAZ OZNAČEVANJA TOČK IN NA FOTOGRAFIJO ŽE VSTAVLJENE TOČKE (VIR: LASTEN) .......................................... 34
SLIKA 21: OZNAČEVANJE TOČK IN PRIKAZ UJEMANJA S PREJŠNJIMI FOTOGRAFIJAMI (VIR: LASTEN) ......................................... 35
SLIKA 22: TVORBA MNOGOKOTNIKOV (VIR: LASTEN) ................................................................................................... 36
SLIKA 23: MNOGOKOTNIKI UMEŠČENI V PROSTOR (VIR: LASTEN) ................................................................................... 36
SLIKA 24: OBARVANA OGLIŠČA NASTALEGA MODELA (VIR: LASTEN) ................................................................................ 37
SLIKA 25: POGLED NA KONČNO SCENO (VIR: LASTEN) .................................................................................................. 37
SLIKA 26: OSNOVNO OKNO PROGRAMA CINEMA 4D (VIR: LASTEN) ................................................................................ 42
SLIKA 27: FOTOGRAFIJE ZA POMOČ PRI MODELIRANJU (VIR: LASTEN) .............................................................................. 42
SLIKA 28: NAŠ ZAČETNI OBJEKT, KOCKA (VIR: LASTEN) ................................................................................................. 43
SLIKA 29: PRIKAZ UPORABE ORODJA ZA IZRIVANJE (VIR: LASTEN) .................................................................................... 44
SLIKA 30: PRIKAZ UPORABE ORODJA ZA GLADKE OBLIKE IN POŠEVNE PREMIKE (VIR: LASTEN) ................................................ 45
SLIKA 31: IZDELANA STREHA NAŠE VILE (VIR: LASTEN) .................................................................................................. 45
SLIKA 32: POGLED NA NAŠO VILO IZ VSEH STRANI (VIR: LASTEN) ..................................................................................... 46
SLIKA 33: TRANSFORMACIJA KRIVULJE V ROTACIJSKI OBJEKT (VIR: LASTEN) ....................................................................... 47
SLIKA 34: KREIRANJE MNOGOKOTNIKA (VIR: LASTEN) .................................................................................................. 48
SLIKA 35: DODAJANJE OKEN IN PRVA UPORABA TEKSTUR (VIR: LASTEN) ........................................................................... 48
viii
SLIKA 36: DOKONČAN OSNOVNI MODEL VILE (VIR: LASTEN) .......................................................................................... 49
SLIKA 37: DOLOČANJE LASTNOSTI TEKSTURAM (VIR: LASTEN) ........................................................................................ 50
SLIKA 38: MODEL VILE Z DODANIMI TEKSTURAMI (VIR: LASTEN) ..................................................................................... 51
SLIKA 39: PRIKAZ KONČNEGA MODELA (VIR: LASTEN) .................................................................................................. 52
SLIKA 40: ALTERNATIVNA SCENA (VIR: LASTEN) .......................................................................................................... 53
ix
UPORABLJENE KRATICE
2D dvodimenzionalno
3D tridimenzionalno
CMY barvni model, katerega osnovne barve so sinja (ang. cyan, C), škrlatna (ang.
magenta, M) in rumena (ang. yellow, Y)
GIF rastrski slikovni format (ang. graphics interchange format)
GUI grafični uporabniški vmesnik (ang. graphic user interface)
HSR algoritem za odstranjevanje zakritih ploskev (ang. hidden surface removal)
IBM modeliranje na podlagi slik (ang. image-based modeling)
IBR upodabljanje na podlagi slik (ang. image-based rendering)
IFL seznam datotek slik (zaporedja)
JPEG Združenje strokovnjakov za fotografijo (ang. joint photographic experts group)
JPG rastrski slikovni format (tudi JPEG), razvit s strani združenja JPEG
NURBS matematično definirane krivulje, sestavljene iz krajših odsekov (zlepkov),
definiranih s kontrolnimi točkami (ang. non-uniform rational basis spline)
RGB barvni model, katerega osnovne barve so rdeča (ang. red, R), zelena (ang.
green, G) in modra (ang. blue, B)
SBIM modelirni vmesniki, ki temeljijo na skicah (ang. sketch-based interfaces for
modeling)
SBM modeliranje na podlagi skic (ang. sketch based modeling)
TXT tekstovna računalniška datoteka (ang. textfile)
VRML jezik za modeliranje navidezne resničnosti (ang. virtual reality modelling
language)
Postopki prenosa statičnih 2D scen v 3D modele
1
1 UVOD
Živimo v moderni družbi, ki je vse bolj in bolj tehnološko razvita. Stvari, ki so se nam še
pred nekaj leti zdele popolnoma nemogoče in neizvedljive, so že danes postale resnične
ter za nas popolnoma samoumevne. Z razvojem tehnologije so se spremenila tudi naša
pričakovanja ne samo do medijev, ki nam posredujejo sporočila, ampak tudi do načinov,
kako so nam ta sporočila posredovana. Z razvojem tehnologij, s pomočjo katerih lahko
izdelujemo tridimenzionalne (v nadaljevanju 3D) modele, in pa z njihovo pomočjo
nastalimi modeli, smo ugotovili, da takšna predstavitev postaja vse bolj dobrodošla, saj
lahko na ta način bolje predstavimo tako prostore kot tudi njihove posamezne elemente.
Zaradi vse večjega zanimanja za razvoj 3D tehnologij in uporabnosti tako nastalih
modelov smo se odločili, da se bomo pri izdelavi magistrskega dela osredotočili na
postopke, s katerimi lahko dvodimenzionalne (v nadaljevanju 2D) statične scene
prenesemo v 3D modele.
Računalniške 3D modele lahko tvorimo na podlagi lastnih zamisli, lahko pa si pomagamo
tudi s skicami ali fotografijami. Za učinkovito delo v praksi je pomembno, da poznamo
različne postopke za izdelavo 3D modelov na osnovi 2D scen. Najprej bomo uporabili
program Insight3D, ki opravlja polavtomatsko rekonstrukcijo neke scene. Program na
podlagi več fotografij scene določi 3D pozicije točk, prepoznanih na več slikah, nato pa s
pomočjo teh 3D točk naredi 3D model. Drugi način, ki smo se ga lotili, je ročno
modeliranje in teksturiranje. Tukaj smo uporabili program Cinema 4D. V tem primeru nam
izbrane fotografije služijo zgolj kot vodilo pri določitvi osnovne oblike modela ter dodajanju
tekstur in detajlov našemu končnemu modelu.
Namen magistrskega dela je ugotoviti, kateri izmed omenjenih načinov prenosa 2D
statičnih scen v 3D modele daje boljše končne rezultate, kateri izmed njiju je enostavnejši
za vsakdanjo uporabo ter kakšne so prednosti in pomanjkljivosti posamezne metode. Naš
namen bo ugotoviti tudi, kako na prenose fotografij v 3D modele vpliva to, ali imamo na
voljo le eno fotografijo ali pa več fotografij scene. Da bi lahko prišli do želenih ugotovitev,
se bomo morali najprej seznaniti z osnovnimi teoretičnimi izhodišči geometrijskega
modeliranja, teksturiranja in vsake posamezne metode za prenos 2D statičnih scen v 3D
modele, prav tako pa tudi z obema uporabljenima programoma. Šele ko bomo seznanjeni
Postopki prenosa statičnih 2D scen v 3D modele
2
s teoretičnim ozadjem, bomo lahko učinkovito uporabili omenjeni metodi in ju tudi kritično
ocenili, kar predstavlja glavni cilj našega magistrskega dela.
Pri izdelavi magistrskega dela smo si zastavili tudi nekaj hipotez, ki jih bomo s pomočjo
empiričnega dela poskušali potrditi ali ovreči. Prva hipoteza se nanaša na trditev, ali se
postopek prenosa iz 2D statičnih scen v 3D modele da v celoti avtomatizirati. Glede na
pretekle izkušnje s tega področja, smo mnenja, da temu ni tako. Naslednja hipoteza
zagovarja dejstvo, da kljub obstoju veliko različnih postopkov prenosa 2D statičnih scen v
3D modele ne moremo izbrati postopka, za katerega bi lahko objektivno rekli, da je
najboljši. Predpostavljamo torej, da je izbira ustreznega postopka odvisna od več
faktorjev, marsikdaj pa je primerno uporabiti tudi kombinacijo različnih postopkov. Na
koncu predpostavljamo, da je rezultat prenosa 2D statične scene v 3D model boljši, kadar
imamo na voljo več konceptualnih slik ali fotografij, ki prikazujejo 2D sceno iz različnih
gledišč in zornih kotov, kot pa če imamo le eno sliko ali fotografijo. To je torej naša tretja
in hkrati tudi zadnja hipoteza.
V uvodnem poglavju smo se tako seznanili s splošnim področjem magistrskega dela, z
njegovimi nameni in cilji ter s hipotezami, ki jih bomo poskušali potrditi ali ovreči. V
nadaljevanju bomo prešli k teoretičnemu delu. Najprej se bomo podrobneje seznanili z
geometrijskim modeliranjem. Posvetili se bomo različnim metodam predstavitve 3D
objektov, predvsem mnogokotnikom in ploskvam NURBS. Prav tako bomo nekaj
pozornosti namenili geometrijskim transformacijam in Boolovim operacijam. Glede na to,
da si modelirane objekte lažje vizualiziramo z barvami in teksturami, bomo eno izmed
podpoglavij namenili tudi temu. Sledilo bo osrednje teoretično poglavje o prenosu 2D
statičnih scen v 3D modele. Obstoječe metode bomo klasificirali v več razredov, seznanili
pa se bomo tudi z najznačilnejšimi programi za modeliranje na podlagi slik. Sledi empirični
del. Tukaj bomo eno poglavje namenili programu Insight3D kot predstavniku
avtomatiziranih postopkov modeliranja na podlagi slik, še eno poglavje pa ročnemu
modeliranju in teksturiranju s pomočjo programa Cinema 4D. Po analizi rezultatov in
potrditvi ali zavrnitvi posameznih hipotez bo sledilo zaključno poglavje, v katerem bomo
podali svoje glavne ugotovitve ter naredili refleksijo našega dela.
Postopki prenosa statičnih 2D scen v 3D modele
3
2 GEOMETRIJSKO MODELIRANJE
V empiričnem delu magistrskega dela se bomo ukvarjali s prenosom 2D statičnih scen v
3D modele. Glede na to, da bomo za to uporabljali tudi program Cinema 4D, s pomočjo
katerega lahko sami ustvarjamo 3D modele, se moramo seznaniti tudi s tem, kaj je
geometrijsko modeliranje.
Po Grabantovem slovarčku osnovnih pojmov grafike [10] je modeliranje ustvarjanje
modelov oziroma proces manipulacije in združevanja preprostih oblik, tako v bolj
enostavne kot tudi v bolj kompleksne predstavitve, s pomočjo katerih lahko prikazujemo
realne ali nerealne in celo izmišljene stvari. Žalik [22] podobno definira geometrijsko
modeliranje kot razvoj tehnik in postopkov, s katerimi lahko čim bolj verno opišemo realni
(obstoječ ali še neobstoječ) geometrijski objekt s pomočjo računalnika.
Z modeliranjem je tesno povezana računalniška grafika, ki pomeni vizualizacijo
predstavljenih geometrijskih objektov in njihovo interaktivno spreminjanje [22]. Kadar
poskušamo upodobiti sliko s pomočjo 3D grafike, za to potrebujemo minimalno
konfiguracijo scene, ki je nujni pogoj za upodobitev slike. Sestavljena je iz objektov, ki jih
ta scena vsebuje, svetlobnega vira in kamere oziroma gledišča. Objekti predstavljajo
centralno pozornost slike, dobimo jih lahko z modeliranjem ali parametrično z enačbami.
Modeliranje da objektom samo osnovno obliko, poleg forme pa jim moramo iz razloga, da
bi bili kar se da realistični, določiti še ostale lastnosti, kot so materiali ter po potrebi tudi
teksture. Poleg objektov moramo, kot omenjeno, sceni dodati tudi svetlobne vire, saj bi v
nasprotnem primeru v našem navideznem prostoru vladala tema. Z lučjo v sceni
definiramo intenziteto, barvo ter tip svetlobe, ki bo našo sceno osvetljevala. Definirati
moramo tudi gledišče, kar storimo s pomočjo postavitve virtualnih kamer. Parametri
kamer, ki so nam pri tem na voljo, so analogni kameram iz fizičnega sveta, uporabimo pa
lahko tudi nastavitve, ki se ujemajo s karakteristikami človeških oči [8].
Potek izdelave scene se torej prične z modeliranjem objekta, ki predstavlja proces, s
katerim vsakemu modelu damo neko obliko ali formo. Sledi definiranje materialov, in sicer
definiranje njihove barve, odbojnosti, prozornosti ter tudi drugih podobnih karakteristik.
Namesto materialov lahko objektom dodamo tudi teksture. Proces teksturiranja se nanaša
Postopki prenosa statičnih 2D scen v 3D modele
4
na neenakomerno postavitev materialnih lastnosti. Ko smo zadovoljni s tem, kakšen je
naš objekt na pogled, sledi postavitev scene. V slednjo postavimo predhodno zmodelirane
objekte, luči in kamere. Po tem sledi le še upodabljanje. Potek izdelave scene in
povezave med posameznimi fazami so nazorno prikazane na spodnji sliki (slika 1). Vse
opisane faze niso definitivne, tudi ko objektu že definiramo material, lahko še vedno
popravimo njegovo formo ali pa se vseeno odločimo za uporabo tekstur namesto barve.
Posamezno fazo lahko po potrebi torej tudi preskočimo ali se k njej vrnemo naknadno [8].
Slika 1: Potek izdelave slike v 3D računalniški grafiki (vir: lasten)
2.1 Predstavitvene metode geometrijskih objektov
Obstaja veliko različnih načinov, kako opisati geometrijske objekte v računalniku. Po
prvotnih dvoumnih predstavitvah, kot je na primer žični model, so povsem prevladale
nedvoumne predstavitvene metode, ki med drugim vključujejo najpopularnejše tehnike
modeliranja s temeljnimi gradniki (ang. constructive solid geometry), z voksli (ang. voxels;
volumetric representation) in z ovojnico (ang. boundary representation; B-rep). Prva
opisuje telo kot zbirko enostavnih objektov, npr. krogel, valjev, kvadrov in stožcev,
obdelanih z geometrijskimi transformacijami in povezanih v celoto s pomočjo Boolovih
operacij. Pri vokslih gre za 3D-rastrsko razdelitev prostora v enakomerno 3D mrežo,
medtem ko ovojnica predstavlja mejne ploskve telesa [22]. Za nas bo pomembna prav
predstavitev z ovojnico, zato se bomo v ločenih podpoglavjih dotaknili mnogokotniške
predstavitve, ploskev NURBS in opisnih ploskev. Posebno področje geometrijskega
modeliranja predstavljajo tako imenovani sistemi delcev (ang. particle systems) ali
proceduralni modeli, ki modelirajo pojave z amorfno strukturo (oblaki, ogenj) ali z veliko
množičnostjo ponavljajočih se objektov (lasje, trava). Način modeliranja je navadno
Postopki prenosa statičnih 2D scen v 3D modele
5
povezan s tem, s kakšnim namenom bomo uporabljali narejene objekte, prav tako pa tudi
z načinom delovanja različnih programov, saj nekateri med njimi prepoznajo le določene
načine modeliranja, prav tako pa je tudi izvedljivost posameznih algoritmov pogojena z
vhodno predstavitvijo objektov.
2.1.1 Mnogokotniki
Mnogokotnik ali poligon (ang. polygon) v ravnini je definiran kot končna množica daljic ali
robov (ang. edges), tako da si vsako krajišče teh daljic delita natanko dva roba, nobena
prava podmnožica te množice robov pa ne izpolnjuje tega pogoja. Krajišča robov
imenujemo oglišča (angl. vertices). Mnogokotnik je enostaven, če si nobena dva roba ne
delita nobene točke, razen seveda sosednjih robov, ki si delijo oglišča. Enostaven
mnogokotnik nima sekajočih robov in deli ravnino v dve domeni: zunanjost in notranjost
mnogokotnika. Sam mnogokotnik sestoji iz notranjosti in iz meje (robov in oglišč).
Enostaven mnogokotnik je konveksen, če je njegova notranjost konveksna množica točk
[20]. Obstajajo tudi drugi tipi mnogokotnikov, konkavni, zvezdasti, z luknjami, a za
predstavitev ploskev so najpogosteje uporabljeni enostavni konveksni mnogokotniki, ki
imajo tri stranice – trikotniki (angl. triangles) ali štiri stranice – štirikotniki (ang. quads),
pogosto trapezi. Mejne ploskve 3D objekta so v mnogokotniški predstavitvi predstavljene
kot unija takšnih enostavnih konveksnih mnogokotnikov. Podatek o tem, iz koliko
mnogokotnikov je objekt sestavljen, nam definira tudi njegovo ločljivost. To je lepo
prikazano na spodnji sliki (slika 2). Iz nje je razvidno, da objekt, ki je sestavljen iz manj
mnogokotnikov deluje bolj grobo, ter obratno. Kadar modeliramo v praksi, moramo vedno
imeti v mislih, kakšno bo razmerje med številom mnogokotnikov na objektu in namenom
tega objekta. To je pomembno tudi iz razloga, ker se s številom mnogokotnikov
povečujeta tudi čas upodabljanja in poraba računalniškega pomnilnika. V primeru, da
izdelujemo ilustracijo za tisk, lahko uporabimo kompleksnejše objekte, saj bo končni
izdelek ena slika, kjer čas upodobitve ni tako pomemben. Drugače je, kadar imamo
opravka s 3D aplikacijami, ki se morajo izvajati v realnem času. V takšnem primeru je
hitrost upodobitve določena na največ 1/25 sekunde, kar pomeni, da moramo število
mnogokotnikov primerno zmanjšati, da bo čas upodobitve optimalen [8].
Postopki prenosa statičnih 2D scen v 3D modele
6
Slika 2: Krogli, predstavljeni z manj in več mnogokotniki (vir: lasten)
2.1.2 NURBS
Neuniformni racionalni B-zlepki ali NURBS (ang. non-uniform rational basis spline) so
matematično definirane krivulje, opisane z množico kontrolnih točk in z racionalnimi
polinomskimi funkcijami, ki vzpostavljajo relacijo med kontrolnimi točkami in samo krivuljo.
Kontrolne točke so postavljene izven same krivulje, kar je značilno za aproksimacijske
krivulje. Odsek krivulje, ki ga opisuje določeno število kontrolnih točk, imenujemo zlepek,
daljše krivulje pa dobimo z lepljenjem več zlepkov, pri čemer lahko, odvisno od namena,
prilagajamo tudi red zveznosti v stičnih točkah. V računalniški grafiki se uporabljajo tudi
drugi tipi krivulj, predvsem B-zlepki in Bézierjeve krivulje. Slednje so vizualno nekoliko
manj skladne in imajo tudi slabšo izrazno moč, je pa z njimi lažje manipulirati, saj imajo
lastnost, da krivulja poteka skozi prvo in zadnjo kontrolno točko vsakega zlepka, kjer je
tudi tangenta na kontrolno lomljenko (zaporedje daljic med zaporednimi kontrolnimi
točkami (slika 3) [9].
Z uvedbo še drugega parametra v parametrični opis krivulje zlepkov dobimo predstavitev
parametrične ploskve. 2D razširitev posameznega zlepka imenujemo krpa (ang. patch).
Najbolj osnovno obliko ploskev NURBS lahko dobimo tako, da naredimo neko osnovno
telo, kot je na primer krogla, ter ga nato interaktivno spreminjamo. Pri tem lahko
manipuliramo s kontrolnimi točkami ali pa kar s površino samo. Premik kontrolne točke ali
skupine kontrolnih točk vpliva na ploskev in obratno. Samo ploskev lahko spreminjamo
tako, da ji dodajamo krivulje in le-te naknadno prestavljamo [4].
Postopki prenosa statičnih 2D scen v 3D modele
7
Slika 3: NURBS in Bézierjeva krivulja (vir: lasten)
Slika 4 prikazuje dvoumno predstavitev z žičnim modelom ter predstavitev meje telesa,
modelirane s ploskvami NURBS. Glede kvalitete izrisa so takšni modeli imuni na
približevanje, kar pomeni, da se čas izračunov niti v takšnem primeru ne poveča [8].
Slika 4: Žični model in predstavitev s ploskvami NURBS (vir: lasten)
2.1.3 Opisne krogle
Opisne krogle (ang. metaballs) so najenostavnejši primer proceduralnih objektov. Z njimi
lahko realistično predstavimo organske forme ali pa tudi tekočine. Primerne so tako za
modeliranje kot tudi (ali pa še zlasti) za animiranje. V osnovni izvedbi so definirane s
pozicijo lokalnega koordinatnega izhodišča (težišča), s poljem gostote ter s pragom
Postopki prenosa statičnih 2D scen v 3D modele
8
vidnosti, ki ob koncentričnem spreminjanju gostote okoli težišča predstavlja polmer krogle.
Poleg tega jim je potrebno določiti tudi medsebojno interakcijo. Kadar imamo dve pozitivni
opisni krogli, govorimo o pojavu, ko se z bližanjem ena drugi pričneta povezovati v obliko
imenovano »blob«. To se dogaja tako dolgo, dokler se težišči obeh ne združita in na ta
način generirata nov, večji objekt (slika 5). Operacija spominja na Boolovo unijo, vendar
pa se gostote iz posameznih težišč seštevajo, kar zgladi prehode med zlitimi opisnimi
kroglami. V primeru, kadar se medsebojno približujeta pozitivna in negativna opisna
krogla, negativna vdira na površino pozitivne krogle (slika 6) [8]. Rezultat je podoben
Boolovi razliki. Nadaljnjo posplošitev predstavlja nekoncentrična porazdelitev gostote okoli
težišča, s čimer pridelamo različne posplošene (metakrogelne) gradnike.
Slika 5: Interakcija dveh pozitivnih opisnih krogel [8]
Slika 6: Interakcije negativne in pozitivne opisne krogle [8]
Postopki prenosa statičnih 2D scen v 3D modele
9
2.2 Operacije nad geometrijskimi objekti
Modelirne operacije nad geometrijskimi objekti nam dovoljujejo različne posege na
objekte. Ti objekti so lahko enostavni ali sestavljeni, lahko so točke, krivulje, ploskve ali
telesa. Geometrijski modelirnik tipično tvori nov objekt, ki ga uporabnik izbere v meniju ali
orodjarni, centriran v koordinatno izhodišče, poravnan s koordinatnimi osmi in privzete
velikosti. Pri umestitvi objektov v sceno potrebuje uporabnik možnost premikanja, sukanja
in spreminjanja velikosti geometrijskih modelov. Navedene funkcionalnosti predstavljajo
osnovne geometrijske transformacije, s katerimi se bomo podrobneje seznanili v
naslednjem podpoglavju. Za tem se bomo seznanili tudi z Boolovimi operacijami, ki
omogočajo povezovanje enostavnejših komponent v sestavljene objekte.
2.2.1 Geometrijske transformacije
Najbolj osnovne geometrijske transformacije, ki jih lahko uporabljamo na objektih ali
njihovih komponentah, so sprememba položaja, velikosti ter orientacije ali nagiba.
Izvajamo jih lahko na celotnem objektu ali pa le na njegovih posameznih gradnikih, kot so
na primer mnogokotniki, robovi ali oglišča. V tem poglavju se bomo sicer omejili zgolj na
mnogokotniške modele, vendar pa lahko z geometrijskimi transformacijami premeščamo
in preoblikujemo tudi krpe NURBS, opisne krogle in gradnike vseh drugih predstavitev
geometrijskih objektov, premikamo in vrtimo pa lahko tudi virtualne kamere in luči [9].
Kadar govorimo o spremembi položaja (ang. move) celotnega objekta, gre za spremembo
položaja izhodišča lokalnega koordinatnega sistema, pri čemer se ohranjajo orientacija,
nagib in dimenzije objekta. Govorimo o vzporednem premiku (vzdolž ene, dveh ali vseh
treh koordinatnih osi) ali translaciji (ang. translation), saj se vse točke objekta premaknejo
vzporedno druga z drugo. Če pa s translacijo premikamo samo posamezne predhodno
izbrane gradnike objekta, se le-ti prav tako vzporedno premaknejo, medtem ko ostali
gradniki večinoma mirujejo. Pri tem se ohranja topologija objekta, saj se premaknjeni
gradniki nikoli ne ločijo od preostanka objekta. Se pa v takšnem primeru lokalno spremeni
oblika objekta, čemur rečemo deformacija. Točke na robovih med premaknjenimi in
stacionarnimi oglišči se pri tem interpolirajo [9].
Postopki prenosa statičnih 2D scen v 3D modele
10
Spreminjamo lahko tudi velikost objekta, kar imenujemo povečava ali skaliranje (angl.
scaling). Poznamo dva načina. Objektu lahko spreminjamo velikost vzdolž vseh treh osi
hkrati (ang. resize), čemur rečemo homogeno skaliranje. V tem primeru se proporci
objekta ne spremenijo, kljub temu da ima objekt drugačno velikost kot pred skaliranjem.
Objektom pa lahko spreminjamo velikost tudi v različnih razmerjih vzdolž posameznih
koordinatnih osi (ang. stretch), kar imenujemo nehomogeno skaliranje. Kadar gre za
takšno spremembo, se spremenijo tudi proporci objekta. Velikost lahko spreminjamo tudi
vsakemu posameznemu mnogokotniku ali celo robu, velikosti brez dimenzijskega oglišča
pa seveda ne moremo spreminjati [9].
Poleg tega, da objektom lahko spreminjamo položaj, ter velikost, pa jih lahko tudi vrtimo
(ang. rotate), čemur rečemo rotacija. Vsak objekt lahko rotiramo za poljuben kot zasuka,
in sicer okoli katere koli koordinatne osi. Glede na vlogo posamezne osi v sceni se rotacija
nanaša na spreminjanje orientacije, nagiba in naklona objekta [9].
2.2.2 Boolove operacije
Kadar govorimo o Boolovih operacijah, moramo omeniti, da te predstavljajo le del mnogo
bolj obsežne Boolove algebre, ki predstavlja temelj digitalne logike. Pri modeliranju nas
najbolj zanimajo množice ter njihove medsebojne relacije. Kadar govorimo o modeliranju,
imamo opravka s tremi osnovnimi operatorji, in sicer z unijo (A ∪ B), presekom (A ∩ B) in
RAZLIKO (A – B), ki po vrsti ustrezajo logičnim operatorjem ALI (A OR B), IN (A AND B)
ter NE (NOT B oziroma v bistvu A AND NOT B), kar nazorno prikazuje tudi slika 7.
Boolove operacije predstavljajo skupaj z geometrijskimi transformacijami edini način
modeliranja v klasični tehniki s temeljnimi gradniki, običajno pa so implementirane tudi za
druge predstavitvene metode, predvsem za predstavitev z mejo. Vendar pa je ta naloga
že pri enostavnih mnogokotnikih vse prej kot enostavna, saj Boolove operacije za razliko
od geometrijskih transformacij mnogokotniških modelov spreminjajo tudi topologijo telesa
[8].
Postopki prenosa statičnih 2D scen v 3D modele
11
Slika 7: Boolove operacije unije, preseka in razlike dveh množic (vir: lasten)
2.3 Barve in teksture
Zamislimo si, kako nerealen na pogled bi bil še tako dovršeno modeliran objekt ali celotna
scena, če ne bi bila opremljena z barvami in teksturami. Takšnih objektov in scen ne bi
mogli uspešno uporabljati za animacijo, saj bi bili dolgočasni in nič kaj domišljijski. Prav
zato se moramo v našem magistrskem delu nekoliko posvetiti tudi barvam in predvsem
teksturam.
Barva je subjektivni občutek, ki nastane zaradi izpostavljenosti fotoreceptorjev na mrežnici
očesa elektromagnetnim valovanjem iz vidnega dela spektra, ki obsega valovne dolžine
približno med 380 in 760 nanometri. Pri zaznavi določenega barvnega odtenka lahko
sodeluje neomejeno mnogo valovanj različnih jakosti in polarizacij, kar je v računalniški
strojni opremi praktično nemogoče implementirati, prav tako pa nemogoče opisati v
digitalnih datotečnih formatih. Zato se v računalniški grafiki uporabljajo različni barvni
modeli, ki bolj ali manj uspešno povzemajo različne teorije barv. Izbor modela je v veliki
meri odvisen od tega, na katerih izhodnih enotah bomo svoje izdelke predstavili. Na tem
mestu se bomo osredotočili le na model RGB, ki ga uporablja večina računalniških
prikazovalnikov, digitalnih fotoaparatov in optičnih skenerjev. V modelu RGB se namesto
neskončno mnogo vzorcev (valovnih dolžin) iz optičnega dela spektra uporabljajo tri
utežena lokalna povprečja oziroma tri osnovne ali primarne barve, ki jih ne moremo dobiti
z mešanjem drugih barv, rdeča (R), zelena (G) in modra (B). Celotni barvni obseg modela
RGB predstavljajo ob osnovnih še barve, ki nastanejo z aditivnim mešanjem primarnih
barv. Vsaki primarni barvi lahko pri tem mešanju variiramo intenzivnost, kar se odraža na
tvorbi različnih barvnih odtenkov. V najpogostejši 24-bitni grafiki uporabljamo po 8 bitov za
Postopki prenosa statičnih 2D scen v 3D modele
12
vsako primarno barvo, torej lahko s pripadajočim modelom RGB teoretično predstavimo
224 ≈ 16,7 milijonov različnih barvnih odtenkov. Barvni model RGB lahko predstavimo kot
kocko, ki je definirana v prvem oktantu kartezičnega koordinatnega sistema, tako kot to
prikazuje slika 8 [9].
Slika 8: Barvni model RGB (vir: lasten)
Pri mešanju barv izhajamo iz odsotnosti svetlobe ali, drugače povedano, iz črne barve. Iz
primarnih barv mešamo sekundarne barve, med katere sodijo sinja (cianova, cian, ang.
cyan, C = B + G), škrlatna (ang. magenta, M = R + B) in rumena (ang. yellow, Y = R + G).
Kadar imamo idealne aditivne primarne barve, se njihove spektralne vrednosti seštevajo v
popolnoma belo svetlobo [8]. Mešanje primarnih barv v sekundarne nazorno prikazuje
slika 9.
Slika 9: Aditivno mešanje barv [2]
Postopki prenosa statičnih 2D scen v 3D modele
13
Kljub temu, da je barvni model RGB najpogosteje uporabljen, najbolj razširjen, pa ima tudi
nekatere slabosti in omejitve pri izboru in določanju barv. Barvni model RGB je
percepcijsko nelinearen, kar pomeni, da enake razdalje med barvami ne ustrezajo enakim
barvnim razlikam, ki jih zazna človeški vidni sistem. Iz tega razloga z njim težko
upravljamo vizualne barvne razlike na prikazovalnikih. Ker ima takšen tip barvnega
modela manjši barvni obseg od našega vidnega sistema, določenih barv na
prikazovalniku ne moremo prikazati. Za razliko od našega vidnega sistema model tudi ne
nudi neposredne povezave s tremi fizikalnimi barvnimi dimenzijami, ki jih predstavljajo
svetlost barve, barvni ton ter nasičenost, kar povzroči težave pri določanju številčnih
vrednosti RGB, tako za posebne barvne kot tudi svetlobne učinke, kot so na primer rahli
prehodi senc in odsevi svetlobe [8].
Iz vidika našega magistrskega dela je poznavanje barv in barvnih modelov pomembno
predvsem pri tehniki 3D modeliranja na podlagi skic (ang. sketch based modelling), s
katero poskrbimo samo za geometrijo in topologijo ustvarjenega 3D modela, ne pa tudi za
materialne lastnosti. Če nimamo na voljo primernih slik posameznih ploskev, lahko za
izboljšanje vizualizacije tudi preprosto pobarvamo posamezne ploskve, lahko pa
uporabimo tudi kakšno proceduralno teksturo, ki na ploskvi ustvari določen barvni ali
reliefni vzorec ali šum. Pri 3D modeliranju na podlagi fotografij (ang. image based
modelling) pa je namesto barvanja objektov vsekakor bolj smiselno razmisliti o pridobitvi
tekstur posameznih ploskev iz uporabljenih fotografij.
Teksturiranje je proces, s pomočjo katerega ustvarjamo površine in barvne atribute
nekega modela, iz razloga da bi le-tega naredili kar najbolj realističnega in podobnega
realnemu objektu, ki ga želimo prikazati. Pri tem ni dovolj, da objektu dodamo le teksturo,
razmišljati moramo tudi o tem, s kakšnim modelom želimo prikazati objekt in kakšne bi
bile lastnosti objekta, ki ga model prikazuje v realnosti. Izdelani objekti iz tega razloga ne
smejo biti popolni, kar nam omogoča večina programov, ampak morajo imeti tudi napake,
biti morajo realni [4]. Poleg tega, da teksture dodajo modelu realnost, jim lahko
spreminjamo tudi ostale nastavitve. Določimo jim lahko orientiranost ali nagib, velikost,
intenziteto in način mešanja z ostalimi teksturami ter način ponavljanja, kadar je tekstura
manjša od površine, ki jo bo zasedla.
Postopki prenosa statičnih 2D scen v 3D modele
14
Teksture lahko dodajamo objektu na več načinov, predvsem ločimo projiciranje in lepljenje
(ali mapiranje) tekstur. Običajno izhajamo iz pravokotne teksture, ki jo torej ali projiciramo
ali mapiramo na izbrano ploskev ali telo. Najpogostejše projicirane teksture so ravninska,
sferična, cilindrična, stožčasta in kubična, ki jih izbiramo glede na približno ukrivljenost
ploskve, na katero želimo postaviti teksturo. Kadar pa ploskev ni blizu nobeni izmed
navedenih oblik, tvegamo, da projiciranje teksture ne bo doseglo vseh njenih točk, zato v
takšnih primerih rajši izberemo tako imenovano UV mapiranja parametričnih tekstur, ki za
točke 3D ploskve, na katero lepimo teksturo, določi barvo s pomočjo matematične
preslikave vrednosti iz 2D matrike teksture. Takšna matrika je lahko fotografija,
računalniško ustvarjena slika, v primeru animacije tudi video, lahko pa uporabimo tudi
tako imenovane proceduralne teksture, kjer matematično opišemo tvorbo vzorca, ki
obarva piksle 2D matrike [15].
Postopki prenosa statičnih 2D scen v 3D modele
15
3 PRENOS 2D STATIČNIH SCEN V 3D MODELE
3D modeliranje je celosten proces, ki se prične s pridobivanjem podatkov in konča z
nastankom 3D virtualnega modela, ki je interaktiven na računalniku [12]. V zadnjem času
se zaradi potenciala ustvarjanja realističnih podob vse več pozornosti na področju
računalniške grafike namenja tehnikam modeliranja (ang. modeling) in upodabljanja (ang.
rendering) osnovnih gradnikov na podlagi fotografij. Ena izmed njihovih prednosti je
nedvomno zmožnost, da zajamejo efekte iz resničnega sveta, ki jih je vseeno težje
prikazati. Takšne tehnike vsaj nekoliko pripomorejo k ublažitvi dveh perečih problemov s
področja računalniške grafike. Prvi izmed njiju je potreba po enostavnejših tehnikah
modeliranja, ki so primerne tudi za predstavitev kompleksnejših scen. Tega se izognemo
z zamenjavo nekaterih geometrijskih modelov s pomočjo delov, ki so v sceni zastopani
zgolj s slikovnimi elementi. Drugi problem, ki se pojavlja, je potreba po vse hitrejšemu
upodabljanju, kar lahko odpravimo s pomočjo ponovnega vzorčenja že vnaprej osenčenih
slik [11].
Pri izdelavi 3D modelov si lahko pomagamo s prenosom 2D statičnih scen v 3D modele.
Kot statične scene nam lahko služijo fotografije ali skice. Definicija fotografije v
dobesednem pomenu bi pomenila risati na svetlobo. Fotografija je tehnika, s pomočjo
katere trajno zapišemo mirujoče ali gibajoče se predmete na različne načine. Vsaka
fotografija poudarja ali se osredotoči na nek določen predmet, ki ga želimo zajeti v sliko
[7]. Prenos scen v modele je lažje izpeljati na podlagi fotografij, nekoliko težje iz skic, v
primeru da imamo opravka z nejasnimi skicami, ki ne vsebujejo dovolj detajlov za izdelavo
končnega modela. To imenujemo modeliranje na podlagi skic (ang. sketch based
modeling, SBM). Takšno modeliranje predstavlja trenutni trend, postaja vse bolj dostopno
ter vključuje tudi bolj naravne vmesnike. Iz tega razloga so se razvili tudi modelirni
vmesniki, ki temeljijo na skicah (ang. sketch-based interfaces for modeling, SBIM). Cilj
metode je, da omogoči uporabo skic in grobo narisanih risb pri procesu modeliranja, vse
od grobega začetka izdelave modela do končnih detajlov. Mapiranje 2D skice v 3D model
je zahtevna in precej težavna naloga, ki je lahko tudi precej dvoumna. Na podlagi tega,
kako modelirni vmesniki, ki temeljijo na skicah, le-te dojemajo, je nastala kategorizacija, ki
zajema tri metode. Mednje sodijo ustvarjanje 3D modela, dodajanje detajlov obstoječemu
modelu in manipuliranje z modelom. Za izdelavo takšnega modela na podlagi skice, kot
Postopki prenosa statičnih 2D scen v 3D modele
16
ga prikazuje slika 10, potrebujemo ne le kompleksno programsko opremo, ampak tudi
nekoga, ki bo razumel, kaj skica prikazuje ter jo znal uspešno prenesti v 3D model [21].
Slika 10: 3D model, nastal na podlagi skice [21]
Ne glede na to, ali do končnega modela pridemo na podlagi fotografij ali skic, lahko vsako
uporabljeno 3D metodo klasificiramo. Najbolj splošna klasifikacija upošteva razmerja med
objekti in rekonstrukcijskimi tehnikami. Deli jih na stične metode (ang. contact methods)
ter nestične metode (ang. non-contact methods). Med stične metode sodijo na primer
uporaba koordinatnih merilnih naprav, škarij, ravnil, med nestične na primer rentgensko
snemanje (X-ray), fotogrametrija, lasersko skeniranje. Za generiranje 3D modelov se
večinoma uporabljajo nestični sistemi, ki temeljijo na valovni dolžini svetlobe in uporabljajo
aktivne (ang. active) ali pasivne senzorje (ang. passive sensors) [12]. Aktivni senzorji pri
samem procesu zaznavanja za delovanje ne potrebujejo zunanjih virov energije, ampak
uporabljajo izključno lastni vir, medtem ko pasivni senzorji ne morejo delovati brez
zunanjega vira. Med tehnologijami, ki temeljijo na delovanju pasivnih senzorjev, lahko
omenimo večino fotografskih tehnologij. Pri aktivnih senzorjih pa lahko kot primer
navedemo tehnologije, s pomočjo katerih delujejo elektronski mikroskopi in radarji [16].
Glede na aktivne in pasivne senzorje lahko trenutno v grobem ločimo štiri razrede metod
za modeliranje objektov in scen. Metode so poimenovane na podlagi slik, ki jih
uporabljamo za pomoč pri modeliranju. Metode iz prvega razreda niso prave metode
modeliranja, saj zgolj upodabljajo obstoječe slike iz spremenjenih zornih kotov virtualne
kamere. Govorimo o upodabljanju na podlagi slik (ang. image-based rendering, IBR). Za
posamezne objekte pod določenimi premiki kamer in izpolnjenimi pogoji v sceni pomenijo
metode kar dobre tehnike za generacijo virtualnih pogledov. Takšna metoda omogoča nov
pogled na 3D okolje direktno iz vnesenih podob. Zanaša se na direktno poznavanje pozicij
kamer ali na izvajanje samodejnega prilagajanja, ki v primeru, da na voljo nimamo
geometrijskih podatkov, potrebuje večje število bližnjih si podob za uspeh. Na končni
Postopki prenosa statičnih 2D scen v 3D modele
17
rezultat vplivajo tudi diskontinuitete, še predvsem če so te večje in del geometrijsko
kompleksnega okolja. Zmožnost, da se lahko prosto pomikamo po sceni in da vidimo
objekte iz katere koli pozicije, je lahko omejena s tem, katero izmed metod uporabljamo.
Iz tega razloga je dotična metoda navadno uporabljena za aplikacije, ki potrebujejo
omejeno vizualizacijo [12].
Naslednja skupina metod tvori 3D modele na podlagi slik (ang. image-based modeling,
IBM). To je široko uporabljen pristop za izdelavo geometrijskih površin arhitekturnih
objektov ali za natančno modeliranje terena in mest. V večini primerov so najboljši in
najbolj natančni rezultati tisti, ki so doseženi z interaktivnim pristopom. Metode tega
načina, med njimi tudi fotogrametrija, uporabljajo mere, pridobljene iz 2D slik, s pomočjo
katerih pridobijo informacije za izdelavo 3D objektov. Podatke pridobijo s pomočjo
matematičnih metod ali pa s pomočjo metod, ki omogočajo izdelavo podob na podlagi
senčenja, tekstur, zrcaljenja in obrisov. Pasivne metode na podlagi fotografij pridobivajo
podatke za ustvarjanje razmerij na 3D modelih s pomočjo različnih pogledov iz vseh treh
koordinatnih smeri. Te metode uporabljajo projekcijsko geometrijo ali perspektivni pogled
kamer. Poleg tega, da so zelo prenosljive, je njihova prednost tudi, da uporabljeni senzorji
navadno ne predstavljajo prevelikih stroškov, saj gre bolj ali manj za običajno fotografijo
[12].
Naslednjo skupino tvorijo metode modeliranja na podlagi merjenja razdalj (ang. range-
based modeling, RBM). Takšna metoda direktno v realnem okolju zajame 3D
geometrijske podatke o objektih. Temelji na precej dragih aktivnih senzorjih, omogoča pa
lahko precej podrobno in natančno upodobitev večine prikazanih oblik. Uporabljeni
senzorji se zanašajo na umetno osvetlitev. Ne glede na vse, metoda ne zagotavlja nujno
najboljših rezultatov. Najbolj idealni pogoji za to, da pridobimo slike, niso nujno tudi
najboljši pogoji za upodabljanje. Tovrstne metode praviloma zajemajo oblake točk, ki jih je
treba pred vizualizacijo še pretvoriti v ploskovne modele ali pa uporabiti točkovno
upodabljanje (ang. point based rendering, PBR), ki se sicer obnese pri pogledih od daleč,
ni pa tako prikladno za približevanja, saj so med točkami moteče vrzeli. Sami oblaki točk
so nestrukturirani, nimajo topologije, kar lahko pri določenih objektih predstavlja težave
tako pri tvorjenju ploskovnih modelov kot pri določanju normal za PBR [12].
Težava pri metodah RBM je tudi, da aktivni senzorji merijo intenzitete lastnega
oddajanega valovanja, ki niso v direktni povezavi z barvitostjo realnega sveta. Pri
Postopki prenosa statičnih 2D scen v 3D modele
18
vizualizaciji se največkrat uporabljajo kar sivinske slike, bolj ali manj posrečeno
sestavljene barvne palete ali pa povsem domišljijsko barvanje posameznih nivojev
intenzitete. Zadnja skupina metod poskuša metode RBM obogatiti s slikovno informacijo,
ki jo nudijo pristopi iz prve (IBR) in druge skupine (IBM), temelječi na pasivnih senzorjih. S
projiciranjem fotografij na točkovne modele RBM ali na iz njih pridobljene ploskve lahko
močno povečamo realističnost upodobljenih scen. Prav tako lahko sočasna raba metod
RBM in IBM doprinese h kvaliteti končnega modela. Kot ključne točke pri fotogrametriji
lahko na primer uporabimo izbrane točke iz oblaka točka RBM. Prav fotogrametrija in
lasersko merjenje sta bila združena posebej z namenom, za obdelavo kompleksnih in
večjih arhitekturnih objektov. Nobena posamezna tehnika na tem področju se ni izkazala
za dovolj učinkovito, da bi nam kot končen izdelek ponudila dovolj detajlni model.
Navadno so osnovne oblike, kot na primer ravninske površine, določene s pomočjo metod
upodabljanja in modeliranja na podlagi slik, medtem ko so ostale podrobnosti določene s
pomočjo modeliranja na podlagi merjenja razdalj [12].
Glede na vse predhodno opisane metode lahko torej s precejšnjo gotovostjo trdimo, da
trenutno ne obstaja izključno ena tehnika modeliranja, ki bi lahko zadovoljila vse naše
potrebe. Med te sodijo predvsem natančnost, prenosljivost, popolna avtomatičnost,
fotorealističnost ter razmeroma nizki stroški [12]. Sklope kombinacij vseh opisanih metod
in tehnik modeliranja lahko uporabljamo na najrazličnejših aplikativnih področjih. Med
njimi moramo nedvomno omeniti medicino, kjer si lahko z njihovo pomočjo pomagamo pri
diagnosticiranju in tudi pri načrtovanju kirurških operacij. Na primer s pomočjo magnetne
resonance lahko rekonstruiramo posneti organ ter naredimo njegov 3D model, s katerim
lahko interaktivno upravljamo. Tvorimo in doživljamo lahko tudi navidezno resničnost, v
kateri lahko na primer bodoči kirurgi operirajo navidezne bolnike. Osrednji namen
navidezne resničnosti je namreč, da udeleženca postavi v navidezno okolje, ki je
posnetek obstoječega ali neobstoječega okolja. Omeniti velja tudi kartografijo, pri kateri
nam omenjene metode omogočajo enostavno reproduciranje katerih koli kart, tako v
različnih merilih kot tudi z drugimi skupinami podatkov. Z omenjenimi metodami si lahko
pomagamo tudi pri računalniško podprtem učenju, saj si lahko nekatere stvari veliko
hitreje zapomnimo, če so nam tematike grafično prikazane. Vse bolj pa je razširjeno tudi
področje računalniške umetnosti, na katerem lahko s pomočjo tehnik modeliranja tvorimo
slike z najrazličnejšo vsebino, ki pri občudovalcih umetnosti vzbudijo najrazličnejše
občutke [9].
Postopki prenosa statičnih 2D scen v 3D modele
19
3.1 Pregled metod 3D modeliranja na podlagi slik
Metode modeliranja na podlagi slik, torej tiste iz drugega razreda po klasifikaciji v
prejšnjem poglavju, lahko nadalje uvrstimo v tri razrede. Prva skupina metod temelji na
pristopih, ki poskušajo samodejno pridobiti modele 3D scene iz nepreverjenih slik. Na
področju avtomatizacije procesov za pridobivanje slik ter njihove kalibracije in orientacije
je bilo precej truda vloženega v to, da bi lahko določili 3D koordinate neke scene in jo nato
zmodelirali. Kljub temu metoda še vedno ni vsakokrat uspešna ali potrjena v praktičnih
primerih. Popolnoma avtomatiziran postopek, ki se na tem področju omenja v
računalništvu, se prične z zaporedjem ozko razmaknjenih slik, posnetih s pomočjo
neumerjene kamere. Sistem nato samodejno pridobi podatke o točkah, kot so na primer
vogali, nato pa jim zaporedno poišče ujemajoče se točke tudi na sosednjih slikah. Določi
tudi parametre kamer. Ključ do uspeha tega postopka je, da se slike ne smejo preveč
razlikovati. Prvi dve sliki sta navadno uporabljeni za inicializacijo zaporedja. Ta se opravlja
na osnovah projekcijske geometrije, običajno pa v nadaljevanju sledi prilagajanje. Po tem
se izvede samodejno preverjanje mer, na podlagi katerega program najprej določi
parametre kamer. Sledi samodejno ustvarjanje modela 3D površine. V primeru, da imamo
opravka s kompleksnimi objekti, je potrebno izvesti dodatne postopke za preverjanje
ujemanja. Na ta način pridobimo podatke o gostoti globinskih kart in posledično tudi
celoten 3D model. Avtomatske metode modeliranja temeljijo na značilnostih, ki jih lahko
izvlečemo iz scene in se samodejno prilagodijo. Iz tega razloga se kot problematične
lahko izkažejo spremembe osvetlitve, kvaliteta slik, omejene lokacije za zajemanje slik ter
gladke površine brez prepoznavnih vzorcev. Izvedba avtomatskega procesa zahteva
uporabo visoko strukturiranih slik z dobrimi teksturami, visoko stopnjo okvirjev in uporabo
gibajočih se kamer, pri čemer se lahko pojavi problem neenakomerne osvetlitve.
Primerljive rezultate lahko dobimo tudi z uporabo množice stacionarnih fotoaparatov, ki jih
lahko sprožimo praktično v istem trenutku. Pri tem so lahko osvetlitveni pogoji enaki za
vse kamere. V primeru, da tega ne upoštevamo, dobljeni rezultati ne bodo zanesljivo
uporabni. Stopnja avtomatizacije postopka je povezana s kakovostjo in natančnostjo 3D
modela, ki ga imamo namen izdelati. Tudi najbolj dovršene metode tako dopuščajo okoli 5
% napak, kar v nekaterih primerih omejuje uporabo določenih programov in aplikacij.
Pogosto je potrebno nekatere popravke vnesti tudi naknadno, kar pomeni, da je
interakcija še vedno potrebna. Iz tega sledi, da so tudi popolnoma avtomatski procesi na
splošno ne povsem idealni in omejeni na iskanje korespondence med točkami ter
postavitve kamer. Ravno iz tega razloga so z avtomatskimi postopki narejeni modeli
Postopki prenosa statičnih 2D scen v 3D modele
20
uporabljeni bolj za namene grobe ponazoritve, medtem ko je za visoko natančnost in
fotorealizem interakcija še vseeno obvezna [12].
Naslednji razred predstavljajo pristopi, ki opravljajo polavtomatsko 3D rekonstrukcijo scen
iz usmerjenih slik. Ti pristopi interaktivno ali avtomatsko orientirajo in kalibrirajo slike, nato
pa izvedejo polavtomatsko modeliranje, ki se zanaša na človeški subjekt. Ti pristopi so
veliko pogostejši, zlasti pri modeliranju kompleksnih geometrijskih objektov. Interaktivno
delo je sestavljeno iz definicije topologije, kateri sledi urejanje in poobdelava 3D podatkov.
Končni model, ki temelji izključno na izmerjenih točkah, je običajno sestavljen iz omejenih
nepravilnih površin, ki se prekrivajo in potrebujejo nekaj sprememb. Stopnja
avtomatizacije modeliranja se poveča, ko uvedemo nekatere predpostavke o predmetu,
kot so na primer pravokotnost ali vzporednost površin. Na tem področju so bili razviti tudi
hibridni sistemi, enostavni za uporabo, ki omogočajo ustvarjanje 3D modelov arhitekturnih
značilnosti iz majhnega števila fotografij. Postopek poteka tako, da se osnovna
geometrijska oblika strukture najprej ročno modelira z uporabo poliedrskih modelov
elementa. V tej interaktivni stopnji je predpostavljeno, da sta dejanska velikost elementov
in pozicija kamere določeni na podlagi znanih parametrov notranje kamere. Naslednji
korak je avtomatski postopek ujemanja. Ta doda geometrijske detajle, ki so omejeni z
znanim osnovnim modelom. Pristop se je izkazal za učinkovitega pri ustvarjanju
geometrijsko natančnih in realističnih 3D modelov. Njegova slaba stran je le velika stopnja
interakcije. Pristop je skozi leta postajal vse bolj dovršen. Razvil se je v polavtomatsko
tehniko za arhitekturno modeliranje, pri kateri se kamere kalibrirajo s pomočjo znanih oblik
stavb, ki jih modeliramo. Modeli so ustvarjeni na hierarhičen način, tako da so strukture
razdeljene na osnovne oblike, na teksture in bolj podrobno geometrijo, kot so na primer
okna. Takšno podrobno modeliranje je interaktiven postopek, ki od uporabnika zahteva,
da zagotovi informacije, kot so na primer širina, višina in polmer. Po tem, ko imamo te
podatke podane, je dokončna oblika izračunana samodejno [12].
Tretji razred metod IBM predstavljajo pristopi, ki opravljajo popolnoma avtomatizirano 3D
rekonstrukcijo scen iz usmerjenih slik. Pri tem se usmerjenost in kalibriranje izvedeta
ločeno, interaktivno ali samodejno. Rekonstrukcija 3D objekta je potem v popolnosti
avtomatizirana. Večina pristopov izkoristi močne geometrijske omejitve, kot sta na primer
pravokotnost in vertikalnost, ki sta navadno prisotni v arhitekturi. Tehniko lahko uporabimo
tudi na eni sami sliki. Potem njeno projekcijo prenesemo na drugo sliko, da bi jo preverili
[12].
Postopki prenosa statičnih 2D scen v 3D modele
21
Modeliranje s pomočjo programa Insight3D bi težko uvrstili v katerokoli od omenjenih treh
kategorij, saj gre v bistvu za polavtomatsko rekonstrukcijo iz neusmerjenih slik. Program
sam orientira slike in pozicionira kamere, prav tako tudi samodejno predlaga točke, ki so
skupne več slikam, uporabnik pa lahko interaktivno briše ali premika posamezne izmed
teh točk, prav tako pa tudi ročno določi končne mnogokotnike ploskovnega modela.
Poleg navedenih treh kategorij (če na podlagi lastnih izkušenj s programom Insight3D
dopolnimo klasifikacijo) moramo omeniti tudi možnost, da fotografije uporabimo le kot
predloge, katerih opazovanje in preučevanje potem uporabimo za ročno tvorbo
geometrijskih modelov. V empiričnem delu bomo uporabili tudi takšen pristop, in sicer s
programom Cinema 4D.
Ne glede na uporabljen pristop, pa je modeliranje na podlagi slik velikokrat le prvi korak v
procesu ustvarjanja novih pogledov na predhodno posnete scene, torej v postopku
upodabljanja na podlagi slik. Sledi teksturiranje, kjer je vsekakor smiselno uporabiti
teksture, pridobljene iz vhodnih fotografij našega modeliranja. Takšne teksture se lahko
na ročno, avtomatsko ali polavtomatsko ustvarjene modele ali projicirajo ali mapirajo
(lepijo). Insight3D se poslužuje te možnosti, medtem ko pri uporabi Cinema 4D lahko
uporabimo tudi barve in teksture iz drugih virov. Samo smo pri teksturiranju iz fotografij, ki
so nam bile na voljo, izrezali želene dele in jih v program naložili kot teksture. Sama
geometrija, algoritem, dobre in slabe strani projiciranja, mapiranja in transformacije tekstur
iz fotografij so druga zgodba, ki presega okvirje tega magistrskega dela.
3.2 Programska oprema za 3D modeliranje na podlagi slik
Pri prenosu 2D statičnih scen v 3D modele si lahko pomagamo z različno programsko
opremo. V razredu avtomatskih ali polavtomatskih fotogrametričnih programov moramo
najprej omeniti polavtomatski program Insight3D, ki smo ga uporabljali tudi sami.
Omenjen program je preko spleta prosto dostopen. Z njegovo pomočjo lahko na podlagi
fotografij neke scene izdelamo 3D model. Deluje tako, da v njega naložimo izbrane
fotografije, program pa nato preračuna pozicije posameznih točk in jih uvrsti v prostor. Ima
kar precejšnjo stopnjo avtomatizacije, kar pomeni, da večino dela opravi sam namesto
nas [13]. Med drugimi določa tudi položaje kamer oziroma orientacijo posameznih slik. V
kategorijo avtomatskih programov sodi tudi program PhotoModeler, katerega programska
oprema izvleče 3D meritve in modele iz fotografij, ki jih posnamemo z navadnim
Postopki prenosa statičnih 2D scen v 3D modele
22
fotoaparatom. V bistvu program predstavlja za uporabnike stroškovno zelo učinkovit
način, s pomočjo katerega lahko opravimo natančno 3D skeniranje in merjenje [18].
Podobno programsko opremo predstavlja tudi program Autodesk Recap, katerega nove
tehnologije omogočajo neposreden zajem prostorskih podatkov o fizičnem svetu. Iz tega
razloga omogočajo izboljšanje delovnih tokov po vsej industriji, ki načrtuje proizvodnjo ali
upravljanje fizičnih izdelkov ali raznih projektov, od stavb pa vse do avtocest in video iger
[3]. Avtomatski program za prenos 2D scen v 3D modele predstavlja tudi program
snovalcev Acute3D, Smart3DCapture®, ki uporabnikom ponuja plačljivo programsko
rešitev. Ta omogoča izdelavo 3D modelov visoke ločljivosti iz fotografij, brez posredovanja
človeka. Program deluje tako, da analizira serijo fotografij statičnega predmeta iz več
zornih kotov. Program samodejno zazna posamezne slikovne elemente, ki ustrezajo
istemu fizičnemu mestu. Na ta način ustvari precej natančne 3D oblike [1]. Omeniti velja
tudi program Photometrixa, Australis, ki je namenjen opravljanju visoko avtomatiziranih
3D koordinatnih meritev in fotogrametrične kalibracije kamer iz več-postajnih digitalnih
omrežij. Program podpira samodejno merjenje točk ciljnih objektov kot tudi proizvodnjo 3D
oblakov točk želenih objektov. Program naj bi bil idealen tako za uporabo v industriji kot
tudi za poučevanje fotogrametričnih načel in praks, kar predstavlja cenjeno orodje tako na
področju raziskav kot tudi praktičnega usposabljanja [17].
Tudi na področju ročnega modeliranja in teksturiranja obstaja kar precej programov, ki so
na voljo uporabnikom. Kot prvega moramo seveda omeniti Maxonov program Cinema 4D,
ki smo ga uporabljali tudi sami. Program, ki je primeren tako za bolj profesionalne kot tudi
za bolj ljubiteljske uporabnike, omogoča, da z njegovo pomočjo ter z orodji, ki jih imamo
na voljo, modeliramo 3D objekte, tem dodajamo videz različnih materialov in tekstur, jih
animiramo, prav tako pa nastavljamo tudi osvetlitev in kamere ter modele upodobimo [14].
Eden pogosteje uporabljenih brezplačnih programov je tudi Blender. Uporabnikom
omogoča modeliranje, dodajanje animacij, izdelovanje raznih simulacij, prav tako pa tudi
urejanje in montiranje video vsebin ter celo ustvarjanje interaktivnih video iger. Prednost
programa je tudi, da enako dobro deluje na vseh operacijskih sistemih [5]. Med programi,
ki omogočajo ročno 3D modeliranje, moramo omeniti tudi Autodeskova programa Maya®
in 3ds Max, ki poleg modeliranja omogočata tudi animacijo, simulacijo, upodabljanje in
komponiranje. Programska oprema torej ponuja celovito ponudbo ustvarjalnih platform [2].
Tudi program Curvy 3D je enostaven program za modeliranje, ki uporabnikom omogoča,
da svoje ideje spremenijo v modele tudi kadar se ti lotevajo modeliranja na podlagi skic.
Program omogoča skiciranje, barvanje ter obrisovanje. Primeren je tudi za upodabljanje
Postopki prenosa statičnih 2D scen v 3D modele
23
narave [6]. Omeniti pa je velja tudi program ZBrush, ki vsebuje kar nekaj izključno svojih
funkcij, ki jih je mogoče uporabljati skozi celotni ustvarjalni proces, od začetnega
oblikovanja modela pa vse do dodajanja umetniških detajlov na samem koncu [19].
Postopki prenosa statičnih 2D scen v 3D modele
24
4 FOTOGRAMETRIČNO MODELIRANJE V PROGRAMU
INSIGHT3D
Insight3D je računalniški program, s pomočjo katerega lahko iz fotografij naredimo 3D
modele. Program je zasnovan tako, da je primeren tudi za uporabnike, ki nimajo nobenih
izkušenj s prenosom fotografij v 3D modele. Delo z njim naj bi bilo skrajno preprosto, ker
ima kar precejšnjo stopnjo avtomatizacije, kar pomeni, da večino dela opravi sam
namesto nas. Vse, kar moramo storiti, je, da več fotografij realne scene, kot je na primer
zgradba, naložimo v program, nato pa ta izračuna 3D pozicije posameznih točk in jih
umesti v prostor. Samodejno izračuna tudi najoptimalnejše pozicije virtualnih kamer in jih
prav tako postavi v prostor. S pomočjo ostalih orodij za modeliranje, ki jih program
vsebuje, lahko ob koncu ustvarimo tudi druge mnogokotniške in teksturirane modele ter jih
dodamo v sceno. Prednost uporabe programa Insight3D je tudi v tem, da sta tako sam
program kot tudi navodila za njegovo uporabo prosto dostopni na spletu, in sicer na
spletni strani http://insight3d.sourceforge.net/ [13]. Obstaja različica tako za operacijski
sistem Windows, kot tudi za operacijski sistem Linux. Program bomo uporabljali na
operacijskem sistemu Windows.
Da bi lahko prenesli 2D statične fotografije v 3D modele, moramo posneti serijo fotografij,
ki obsegajo celotno sceno, ki jo želimo rekonstruirati v 3D model. V primeru, da imamo na
voljo le eno fotografijo, programa ne moremo uporabiti za prenos te v 3D model.
Priporočljivo je, da posnamemo več fotografij iz različnih zornih kotov ter iz različnih
gledišč. Pri fotografiranju pa ni nujno, da smo pozorni na svojo pozicijo, niti ni potrebno,
da opravljamo kakršne koli meritve, saj bo vse to namesto nas avtomatsko opravil
program. Kljub temu pa se moramo držati nekaj osnovnih pravil:
� Fotografije morajo biti jasne in ne zamegljene.
� Vrstni red fotografij določi uporabnik sam, glede na to, kako jih v program naloži.
Slediti si morajo v nekem smiselnem zaporedju, na primer od ene strani nekega
objekta do druge strani.
� Fotografije, ki si sledijo morajo dobro prekrivati druga drugo. Priporočljivo je, da
imajo fotografije med seboj poleg osrednjega objekta še več skupnih objektov.
Postopki prenosa statičnih 2D scen v 3D modele
25
� Fotografije morajo imeti omejene razlike v medsebojnih kotih. Priporočljivo je, da
so razlike v kotih med fotografijami z velikim deležem prekrivanja, nekje med 15 in
25 kotnih stopinj.
� Fotografije naj bodo čim bolj polne edinstvenih detajlov in tekstur. Starejše
zgradbe in skulpture so za obdelavo v programu lažje kot na primer enostavne
prazne stene.
� Izogibati se moramo fotografijam, ki prikazujejo ravninske prizore.
� Upoštevati moramo pravilo treh. Vsak del scene, ki jo prikazuje fotografija in ga
želimo prikazati v svojem 3D modelu, mora biti viden in označen na vsaj treh
različnih fotografijah [13].
4.1 Izbor fotografij
Odločili smo se, da bomo svoje delo omejili na hiše, in sicer smo uporabili fotografije vile,
ki se nahaja pod Kalvarijo v Mariboru (slika 11). Pri izboru fotografij smo za upodobitev
izbrali samo eno steno vile. Za to poenostavitev smo se odločili zato, da smo lažje
prikazali dobljene rezultate. Ko smo program preizkušali z uporabo več fotografij in s tem
tudi več sten, naši končni rezultati niso bili uporabni. Prišlo je namreč do povezovanja točk
na različnih ploskvah. Iz tega razloga smo postopek večkrat ponovili, nazadnje pa smo
prikazali postopek, s pomočjo katerega so bili rezultati najboljši. Čeprav je možno tako z
Insight3D kot tudi s Cinemo 4D, ki smo jo preizkusili v 5. poglavju, uspešno modelirati in
upodabljati tudi druge objekte, kot so na primer ljudje, živali in rastline, pa naj bi bil
predvsem Insight3D najprimernejši prav za izdelavo modelov stavb, zaradi česar bomo
uporabljena programa najlažje primerjali med seboj.
Izbrana vila predstavlja precej raznoliko zgradbo, za katero smo menili, da bo
predstavljala izziv ne le za prenos s pomočjo programa Insight3D, ampak tudi za
modeliranje s pomočjo programa Cinema 4D. Ima več edinstvenih detajlov kot tudi
tekstur, zaradi česar naj bi bila glede na postavljena pravila lažja za obdelavo v izbranem
programu. Vedno, kadar se odločamo za uporabo fotografij, je priporočljivo, da uporabimo
lastne fotografije, prav tako pa je priporočljivo, da predhodno poizvemo, ali glede uporabe
takšnih fotografij obstajajo kakršne koli omejitve. Ravno iz tega razloga smo se, predno
smo fotografije posneli in jih kasneje tudi uporabili v magistrskem delu, pri pristojnih
organih pozanimali ali tudi v tem primeru obstajajo kakršne koli omejitve. Izvedeli smo, da
za uporabo takšnih fotografij ni omejitev, vse dokler te ne prikazujejo podatkov, kot so
Postopki prenosa statičnih 2D scen v 3D modele
26
hišne številke in registrske številke avtomobilov, ali ne prikazujejo obrazov oseb. V kolikor
bi na fotografijah bile vidne osebe, bi za uporabo posnetkov potrebovali njihovo privolitev.
Slika 11: Izbrana vila (vir: lasten)
Slika 12 prikazuje celotno serijo fotografij, ki smo jih uporabili v praksi. Da bi pri
fotografiranju dobili kar se da uporabne fotografije, smo se držali nekaterih koristnih
smernic. Fotografirali smo ob sončnem vremenu, tako da so naše fotografije jasne in ne
zamegljene. Pazili smo tudi na to, da imajo vse izbrane fotografije skupne elemente
oziroma objekte, ki jih bo lahko zaznal tudi program, zaradi česar bo lahko izračunal
pozicije posameznih točk.
Slika 12: Izbrana serija fotografij (vir: lasten)
Postopki prenosa statičnih 2D scen v 3D modele
27
4.2 Prenos fotografij v 3D model
Ko zaženemo program Insight3D, se pred nami pojavi začetno okno, ki ga prikazuje slika
13. Na vrhu se prikaže glavni meni (ang. Main menu), ki poleg običajnih postavk, kot so
File (datoteka), Edit (urejanje) in View (pogled), vsebuje tudi elemente Matching
(primerjava), Calibration (preverjanje mer), Modeling (modeliranje) in Image (podoba). V
nadaljevanju bomo skozi praktični del omenili in po potrebi razložili tudi tiste elemente
pripadajočih podmenijev, ki jih bomo uporabili in za katere se nam bo razlaga zdela
potrebna. Poleg glavnega menija program ob strani prikazuje tudi nekaj stranskih menijev
(ang. Sidepanel), ki se jim bomo prav tako bolj posvetili med samim delom.
Slika 13: Začetni zaslon programa Insight3D (vir: lasten)
Poleg glavnega okna ves čas uporabe programa vidimo tudi okno, v katerem se beležijo
vse naše akcije. Prav tako se nam ob izvajanju kakršnih koli procesov odpre tudi okno, ki
nam kaže napredek dogodkov. V času, ko je vidno to okno, ni možno interaktivno delo s
programom.
Naše delo se nadaljuje tako, da v program naložimo izbrane fotografije. To storimo tako,
da v podmeniju File (datoteka) izberemo možnost Add image (dodaj sliko). Dodane
fotografije so v programu vidne v celoti, tako kot to prikazuje slika 14. Fotografije lahko v
program naložimo v dveh formatih, in sicer v .jpg ali v .gif. Nalagamo lahko posamezne
Postopki prenosa statičnih 2D scen v 3D modele
28
fotografije ali pa tudi celo serijo fotografij. V primeru, da se odločimo za slednjo možnost,
moramo imena fotografij zapisati v tekstovno datoteko (ang. text file), ki mora v ta namen
vsebovati končnico .txt ali .ifl. Po tem, ko v program dodamo vse želene fotografije, se
nam kot prva prikaže tista, ki smo jo dodali kot zadnjo. Vse fotografije si lahko ogledamo s
pomočjo funkcije, ki omogoča ogled predhodne (ang. Previous) ali naslednje (ang. Next)
fotografije. Sedaj lahko končno pričnemo s postopkom prenosa iz fotografij v 3D sceno.
Slika 14: Osnovni pogled naložene fotografije (vir: lasten)
Dotični program določi tako pozicije točk, ki omejujejo objekte na sliki, kot tudi pozicije
kamer. Najprej moramo ugotoviti ujemanje med naloženimi fotografijami. To storimo s
pomočjo funkcije, ki išče ujemanje (ang. Matching) in jo najdemo v sklopu glavnega
menija. Da bi dobili kar se da veliko število ujemajočih se točk, je priporočljivo, da se
držimo predhodno omenjenih pravil, s pomočjo katerih lahko posnamemo dobre
fotografije. Ta proces poišče ujemajoče se točke in jih označi na vseh fotografijah. Slika
15 prikazuje eno od fotografij z označenimi točkami, ki jih program najde in so skupne
različnim fotografijam. Te točke so določene s strani programa. Ko iščemo ujemanje med
sosednjimi slikami, program pregleduje slike v vrstnem redu, kot so naložene.
Postopki prenosa statičnih 2D scen v 3D modele
29
Slika 15: Ujemajoče se točke na fotografijah (vir: lasten)
Potem, ko je program na naših fotografijah poiskal ujemajoče se točke, bomo pozicije
določili tudi kameram. Tega se bomo lotili tako, da v glavnem meniju, natančneje v
podmeniju preverjanja mer (ang. Calibration) izberemo možnost za avtomatsko
preverjanje mer (ang. Automatic calibration). Pri tem se naše okno vidno ne spremeni.
Da bi videli rezultate svojega dosedanjega dela, moramo iz osnovnega pogleda, ki je
uporabljen na slikah 14 in 15, preklopiti v 3D pogled. To storimo tako, da v glavnem
meniju programa izberemo možnost urejanja, nato pa znotraj le-te izberemo možnost za
izbor načina (ang. Mode) ter opcijo preglednega načina (ang. Overview mode). Ta način,
kot je prikazano tudi na sliki 16, ponudi pregled 3D prostora skupaj s postavljenimi
kamerami, ki so ponazorjene s piramidami. Kamera, ki prikazuje naloženo fotografijo, ki jo
lahko vidimo v trenutnem normalnem pogledu, je označena z rdečo barvo. V dotičnem
načinu vidimo 3D prostor kot rotirajočo se kocko, v kateri se nahajajo kamere in pa tudi
točke, ki so bile prepoznane na največ slikah, v kolikor se odločimo, da želimo imeti
prikazane tudi slednje. Točke lahko naredimo vidne ali nevidne s pomočjo funkcije, ki jo
najdemo v podmeniju pogled (ang. Show/Hide automatic points). Da bi se vrnili v prejšnji
pogled, v glavnem meniju ponovno izberemo možnosti urejanje ter način, nato pa
izberemo kot način posnetek (ang. Shot mode).
Postopki prenosa statičnih 2D scen v 3D modele
30
Slika 16: Prikaz pozicij kamer (vir: lasten)
V nadaljevanju bomo preverili, ali so izračunane pozicije kamer vsaj do neke mere
pravilne. To bomo storili s pomočjo metode, ki ustvari tako imenovani oblak točk (ang.
point cloud). Ta je lahko podoben objektu, ki ga prikazujejo naložene fotografije, če so
kamere pravilno postavljene. Omenjeni oblak točk naredimo tako, da v glavnem meniju
modeliranje izberemo možnost triangulacije vseh oglišč oziroma točk (ang. Triangulate all
vertices). Da bi videli, kako je na pogled videti naš oblak točk, moramo tako kot za
preverjanje kamer biti v preglednem načinu, kar prikazuje tudi slika 17. Prikazane
dobljene točke so na pogled lahko videti tudi kot po nekem prostoru naključno
porazdeljene točke. V tem primeru izračunane pozicije kamer niso pravilne. To pomeni, da
za prenos najverjetneje nismo uporabili najboljših fotografij. V kolikor kamere avtomatsko
niso dobro postavljene imamo dve možnosti. Oblak točk lahko najprej poskušamo narediti
na nekoliko drugačen način, s triangulacijo le za točke, ki jim zaupamo (ang. Triangulate,
only trusted). Z uporabo te funkcije program še enkrat izvede triangulacijo oglišč, vendar v
tem primeru ne vseh, ampak samo tistih, ki jih lahko najde na več slikah. Ko se postopek
izvede do konca, še enkrat na enak način kot prej preverimo, kako je na pogled videti naš
oblak točk. Če ta tudi v tem primeru ni niti malo podoben našemu objektu, je najboljše, da
se odločimo za drugo možnost, ki je, da postopek od začetka in vse do tega koraka
ponovimo z drugimi fotografijami. Če se vseeno odločimo za nadaljevanje, bomo zelo
težko prišli do zadovoljivega končnega modela.
Postopki prenosa statičnih 2D scen v 3D modele
31
Slika 17: Oblak točk (vir: lasten)
Trenutne avtomatsko najdene točke in kamere v navadnem pogledu, ki prikazuje
naloženo fotografijo, so videti tako, kot jih prikazuje slika 18. Točke, ki so na tej sliki
označene z zeleno barvo, so skupne več slikam. Točke, ki so črne, so vidne izključno na
tej, eni fotografiji. Pri nadaljnjem delu bomo črne točke zanemarili.
Slika 18: Pogled iz načina posnetka s prikazom ujemajočih se točk (vir: lasten)
Postopki prenosa statičnih 2D scen v 3D modele
32
Sedaj se lahko lotimo tudi samega modeliranja. Pri uporabi programa Insight3D
modeliranje poteka tako, da na fotografijah označimo ključne točke, iz katerih bomo v
nadaljevanju tvorili mnogokotnike. Ker je program že predhodno poiskal in označil večje
število točk, le-te ponovno skrijemo.
Za označevanje ključnih točk ali oglišč (ang. vertices, edn. vertex) moramo uporabiti
orodje za ustvarjanje točk (ang. Points creator). Orodje najdemo v sklopu stranskega
menija. S pomočjo navigacije za izmenjavo slik se postavimo na prvo naloženo fotografijo,
nato pa s pomočjo dotičnega orodja označimo vse želene točke na naši prvi fotografiji.
Slednje so na fotografiji označene s križci. Kot prikazuje slika 19, vedno, kadar imamo
vklopljeno orodje za ustvarjanje točk in se pomikamo z miško preko naše slike, del te
vidimo povečan, kar nam občutno olajša delo. Zaradi tega smo lahko pri našem
označevanju veliko bolj natančni. V primeru, da želimo fotografijo še dodatno povečati,
lahko to storimo s pomočjo koleščka miške.
Slika 19: Prikaz povečave slike s pomočjo orodja za ustvarjanje točk (vir: lasten)
Lahko se nam pripeti, da s postavitvijo katere izmed točk nismo povsem zadovoljni.
Takšno točko izberemo s klikom na levi gumb miške in jo prestavimo na želeno pozicijo.
Če je katera izmed točk odvečna, nanjo kliknemo z miško, tako da se obarva rdeče, nato
pa v glavnem meniju pod postavko urejanje izberemo možnost brisanja izbrane točke
(ang. Erase selected points).
Postopki prenosa statičnih 2D scen v 3D modele
33
Po tem, ko dodamo točke na naši prvi fotografiji in smo z njihovo postavitvijo zadovoljni,
moramo enak postopek ponoviti tudi na naslednji fotografiji. Biti moramo pozorni na to, da
označimo enake točke oziroma vsaj točke, ki so zelo blizu tistim, ki smo jih označili na prvi
fotografiji. Da bi postopek lažje izpeljali, nam program tudi v tem primeru poveča del
fotografije, skozi katerega gremo z miško. Poleg tega povečanega dela lahko v tem
koraku vidimo še en okvirček, kot je prikazano na sliki 20. Ta zgornji okvirček prikazuje
oglišče oziroma točko, ki smo jo označili na prejšnji fotografiji. Točka, ki nam je vidna
tukaj, mora biti enaka točki, ki jo želimo označiti na tej fotografiji. V primeru, da zgornji
okvirček prikazuje katero drugo točko, jo lahko enostavno na trenutni izbrani fotografiji
označimo najprej, ali pa si pomagamo s tipkama na tipkovnici »Page up« ali »Page
down«. Ti imata namreč funkcijo, da prilagajata del fotografije, ki ga trenutno vidimo v
zgornjem povečanem okencu. Tako lahko na obeh fotografijah brez večjih težav določimo
enake točke. Po tem, ko so le-te označene, njihovo pravilnost oziroma ujemanje
preverimo tako, da nad vsemi točkami poskušamo izvesti triangulacijo. V glavnem meniju
modeliranje enostavno izberemo možnost triangulacije uporabniških oglišč (ang.
Triangulate user vertices). Točke, ki so postavljene pravilno, torej na obeh fotografijah
enako, bodo v tem koraku v svoji okolici ali idealno v svoji sredini imele zeleno točko. Bolj
ko je sredina križca, ki ponazarja neko točko na fotografiji, približana zeleni točki, bolj se
točki na eni in drugi fotografiji ujemata. Kadar točke na obeh fotografijah niso popolnoma
enko postavljene, jih lahko s pomočjo že opisanih postopkov še vedno premikamo in tako
spreminjamo njihovo pozicijo. Kljub temu moramo biti pozorni na to, da s tem bistveno ne
vplivamo na nastanek končnega modela. Priporočljivo je, da svoj napredek pri postavitvi
točk ves čas spremljamo tudi v preglednem načinu. Točke, ki nimajo v svojem središču ali
vsaj okolici zelenih točk, pri kasnejšem delu na našem končnem modelu ne bodo vidne,
saj niso prikazane oziroma označene na več fotografijah, ki smo jih pri svojem delu
uporabili.
Postopki prenosa statičnih 2D scen v 3D modele
34
Slika 20: Prikaz označevanja točk in na fotografijo že vstavljene točke (vir: lasten)
Da bi naš končni rezultati bil čim boljši, moramo vse izbrane točke označiti na vsaj treh
fotografijah. Označevanje točk na tretji fotografiji poteka enako, kot je potekalo na prejšnji,
le da v tem primeru pri označevanju, tako kot prikazuje slika 21, poleg povečanega dela
fotografije vidimo še dva okvirčka, ki prikazujeta predhodno označene točke. Ko imamo
tudi na tej zadnji fotografiji označene vse točke, izvedemo triangulacijo. Točkam, ki
morebiti ne bi bile pravilno postavljene, lahko enako kot prej, spremenimo njihovo pozicijo
ali jih enostavno izbrišemo. S tem, ko imamo na vsaj treh fotografijah izbrane in označene
točke, ter izvedeno triangulacijo, lahko svoj napredek najprej preverimo v preglednem
načinu. V primeru, da smo z dobljenim rezultatom zadovoljni, lahko z gotovostjo trdimo,
da je najtežji del naše naloge že za nami.
Postopki prenosa statičnih 2D scen v 3D modele
35
Slika 21: Označevanje točk in prikaz ujemanja s prejšnjimi fotografijami (vir: lasten)
Po tem, ko na vsaj treh fotografijah označimo točke in izvedemo triangulacijo, lahko
pričnemo z izdelavo poligonov oz. mnogokotnikov. Slednje se lotimo tako, da v stranskem
meniju izberemo možnost ustvarjanja mnogokotnikov (ang. Polygons creator). Z miško
izberemo in označimo točke, ki sodijo skupaj in bodo skupaj tvorile površino
mnogokotnika. Pri označevanju točk moramo biti nekoliko pozorni tudi na to, v kakšnem
vrstnem redu jih izbiramo. V primeru, da se nam zdi, da katera izmed točk ni dobro
postavljena oziroma označena na fotografiji, ki jo obdelujemo, lahko v stranskem meniju
enostavno preklopimo nazaj na način za dodajanje točk. Točko lahko kljub temu, da je
nad njo že bila izvedena triangulacija, po predhodno opisanem postopku, postavimo na
pravilno mesto ali jo izbrišemo in se ponovno vrnemo k ustvarjanju mnogokotnikov. Ko
označujemo točke z orodjem za ustvarjanje mnogokotnikov, se med njimi, tako kot
prikazuje slika 22, ustvarjajo robovi. Priporočljivo je, da se, tako kot povezovanja točk, tudi
kreiranja mnogokotnikov lotimo sistematično, da ne bi katerega izmed njih, ki ga moramo
narediti, spregledali. Tisti, ki jih ravnokar kreiramo, so obarvani z roza barvo. Že narejeni
so na sliki prikazani v beli barvi. Ko mnogokotnik potrdimo s tipko »Enter« na tipkovnici,
se nam na izbrani fotografiji obarva belo.
Postopki prenosa statičnih 2D scen v 3D modele
36
Slika 22: Tvorba mnogokotnikov (vir: lasten)
Ko zaključimo tvorbo mnogokotnikov, lahko v primeru, da izberemo pregledni način,
vidimo vse izmed njih že umeščene v prostor (slika 23).
Slika 23: Mnogokotniki umeščeni v prostor (vir: lasten)
Postopki prenosa statičnih 2D scen v 3D modele
37
Da bi naš model bil kar se da resničen, mu lahko nastavimo tako imenovana barvna
oglišča (slika 24). V sklopu glavnega menija izberemo podmeni podoba, nato pa znotraj
tega možnost obarvanja oglišč (ang. Colorize vertices).
Slika 24: Obarvana oglišča nastalega modela (vir: lasten)
Še večjo realnost pa bodo našemu modelu dodale teksture. V istem meniju, kjer smo prej
izbrali možnost obarvanja oglišč, sedaj izberemo možnost generiranja tekstur (ang.
Generate textures). Rezultat prikazuje slika 25. Teksture so samodejno pridobljene iz
fotografije, ki ustreza pogledu aktivne kamere.
Slika 25: Pogled na končno sceno (vir: lasten)
Postopki prenosa statičnih 2D scen v 3D modele
38
Kljub temu, da smo skozi svoje delo namenili veliko pozornosti tako izboru samih fotografij
kot tudi označevanju točk ter triangulaciji le-teh, lahko na sliki 25 vidimo, da naš rezultat
mogoče ni čisto takšen, kot smo si ga predstavljali oziroma ga želeli doseči.
4.3 Prednosti uporabe programa Insight3D
Nedvomna prednost dotičnega programa, Insight3D, je zagotovo dejstvo, da je
uporabnikom prosto dostopen preko spleta. Poleg programa so uporabniku na voljo tudi
navodila za uporabo. Z malo vztrajnosti in truda je tako program primeren za vsakogar, ki
bi ga morebiti imel namen uporabljati. Njegova prednost je tudi to, da je za uporabo dokaj
enostaven, kljub temu, pa moramo biti pri interpretaciji navodil in sami uporabi programa
precej pozorni, saj lahko v nasprotnem primeru hitro pride do kakšne napake, ki ključno
vpliva na končni rezultat. Ko pri uporabi enkrat pridemo tako daleč, da s pomočjo točk
naredimo mnogokotnike in nato slednje v preglednem načinu že vidimo kot 3D model, je
naše delo že skoraj končano. Program namreč potem našemu modelu z enim samim
klikom doda teksture, ki jih na nastali model dobesedno kar preslika. V tem koraku tako
prihranimo ves čas, ki smo ga morebiti izgubili v prejšnjih fazah dela.
4.4 Slabosti uporabe programa Insight3D
Kljub navedenim prednostim pa ima Insight3D kar nekaj slabosti. Tako kot prednosti smo
tudi slabosti skozi delo ugotovili sami. Uporabnik, ki se z delom v takšnem ali temu
podobnem programu seznanja prvič, lahko na manjše probleme oziroma nevšečnosti
naleti že na samem začetku. Fotografije, ki jih želimo v programu uporabljati, lahko v le-
tega nalagamo eno po eno ali pa kot serijo, vendar moramo v tem drugem primeru imena
fotografij vnesti in shraniti v tekstovno datoteko. Nekdo, ki mogoče ni preveč vešč pri
uporabi računalnikov in ne ve, kako se to stori, mora tako zamudno nalagati posamezne
fotografije.
Izredno pozorni moramo biti tudi pri shranjevanju naših datotek. V primeru, da jih na
računalniku ne shranimo v isto mapo, kot smo predhodno shranili sam program, se nam
datoteke ne shranijo ali pa se shranijo prazni dokumenti. Spremembe se ne shranijo niti v
oknu, ki prikazuje vse, kar smo naredili do danega trenutka. Tudi v primeru, ko naše delo
uspešno shranimo, je okno ob odprtju našega projekta prazno. Vse to se izkaže za
Postopki prenosa statičnih 2D scen v 3D modele
39
neugodno predvsem iz razloga, ker tako ob ponovnem odprtju našega projekta ne
moremo preveriti, kaj vse smo že naredili.
Pri delu s programom pa moramo biti tudi zelo pozorni in iznajdljivi, saj nekateri postopki v
navodilih niso opisani v celoti, tako da jih moramo bolj ali manj raziskati sami med
uporabo. Iz razloga, ker dotični program po svojem nastanku ni dobil kakšne novejše
različice, je izredno težko oziroma bolj ali manj nemogoče najti tudi kakšna koli druga
navodila za njegovo uporabo. Tako mora na primer uporabnik sam ugotoviti, kako je
potrebno označevati točke na drugi in tretji naloženi fotografiji, saj je v nasprotnem
primeru končni rezultat nekaj dokaj neprepoznavnega in ni niti približno podobno temu,
kar smo si zamislili ali želeli doseči. Končni rezultat je že tako sam po sebi nekoliko
drugačen od pričakovanega, vsaj v našem primeru.
Ko smo se zadeve lotili, smo iz statičnih fotografij želeli prenesti v 3D model celotno
zgradbo, v našem primeru izbrano vilo. Glede na to, da je slednja bila kar precej
razgibana, zaradi česar naj bi naše delo bilo lažje, temu ni bilo tako. Pri prenosu celotne
vile in uporabe večjega števila fotografij, naši rezultati prenosa niso bili uspešni, saj je bilo
kljub trudu in pozornosti iz končnega rezultata premalo razvidno, kar želimo prikazati in
kaj sploh naj bi naš končni model predstavljal. Ravno iz tega razloga smo se na koncu
odločili, da bomo prenos prikazali na podlagi treh fotografij, tako kot smo tudi storili.
Kot precejšnjo pomanjkljivost programa moramo omeniti tudi dejstvo, da modelom, ki so
bili z njim narejeni, ne moremo sami dodajati barv ali tekstur. Teksture, ki smo jih naložili v
program, le-ta samodejno preslika iz fotografij. V primeru, da bi lahko sami dodajali vsaj
barve, če že ne tekstur, bi delo s programom takoj prešlo na neko novo raven, ki bi nam
kot uporabnikom dopuščala neko dodatno mero kreativnosti, za katero se v tem primeru
žal moramo znajti in jo končnemu izdelku mogoče dodati s pomočjo kakšne druge
programske opreme. S pomočjo dotičnega programa je narejene modele mogoče izvoziti
kot datoteke s končnico .vrml. To pomeni, da lahko na ta način dobljene modele
prikazujemo na spletnih straneh, s pomočjo programiranja pa jim lahko določimo tudi
kakšne nove lastnosti.
Postopki prenosa statičnih 2D scen v 3D modele
40
5 MODELIRANJE IN TEKSTURIRANJE V PROGRAMU
CINEMA 4D
Cinema 4D je računalniški program podjetja Maxon Computer GmbH. Primeren je tako za
bolj profesionalne kot tudi za bolj ljubiteljske uporabnike. Ponuja orodja, s katerimi lahko
modeliramo 3D objekte, tem dodajamo videz različnih materialov in tekstur, jih animiramo,
prav tako pa nastavljamo tudi osvetlitev in virtualne kamere, ki modele upodobijo.
Končnemu izdelku lahko dodajamo tudi razne efekte, kot sta na primer megla ali dež [14].
Pri modeliranju nam program Cinema 4D omogoča tako uvažanje kot tudi izvažanje
datotek različnih formatov. Orodja za modeliranje nam omogočajo delo s parametričnimi
krpami ali mnogokotniškimi liki, enostavno in hitro spreminjanje želenih objektov v kateri
koli fazi dela. Poleg enostavnega modeliranja pa so nam omogočene tudi standardne in
napredne opcije za to, da ustvarimo popolno površino svojih modelov. Materiali, ki so nam
na voljo, imajo kar 14 različnih parametrov, s katerimi lahko le-te prilagodimo glede na
svoje specifične želje in potrebe. Za teksture lahko uporabimo fotografije in celo filme ali
tudi napredne učinke senčenja, kot sta na primer podpovršinsko sipanje ter črna svetloba.
Pri nanašanju tekstur na modele imamo na voljo tudi visoko kakovostne slikarske tehnike,
kar še dodatno zvišuje dosežene standarde končnih izdelkov. Na področju animacije nam
program ponuja najrazličnejša orodja, s pomočjo katerih lahko ustvarimo prvovrstne
animacije. S pomočjo posebnih orodij lahko animiramo tudi like, telesom lahko dodajamo
dinamiko, simuliramo lahko tkanine, se poslužujemo sistemov delcev, lahko pa dosežemo
tudi naravno gibanje, kot je na primer gibanje las ali travnih bilk v vetru. Program nam
ponuja tudi različne možnosti osvetlitve ter upodabljanja končnih rezultatov. Na voljo
imamo več različnih vrst svetil in senc, ki lahko vsako sceno ter s tem tudi animacijo
naredijo še bolj realistično. Za doseganje optimalne realnosti program ponuja tudi
napredna svetlobna orodja, kot so na primer luči, ki omogočajo realistično razporeditev
svetlobe po prostoru, globalno osvetlitev za indirektno svetlobo, simulacijo dnevne
svetlobe neba, ki poskrbi za realnost zunanjih scen, in še bi lahko naštevali. Na področju
upodabljanja pa so nam prav tako na voljo različne tehnike, ki nam v najkrajšem možnem
času, ki je odvisen tudi od tega, kako zmogljiv je naš računalnik, omogočajo visoko
kvalitetne rezultate upodobitve naših končnih izdelkov [14].
Postopki prenosa statičnih 2D scen v 3D modele
41
5.1 Izdelava 3D modela
Cinema 4D zaenkrat ne ponuja fotogrametričnih zmožnosti, zato bo potrebno prenos 2D
slik v 3D sceno opraviti povsem ročno. V omenjenem programu imamo glede objektov, ki
jih bomo postavili v sceno, dve možnosti. Objekte lahko naredimo sami ali pa uporabimo
takšne, ki jih je naredil nekdo drug in so dostopni na spletu. V naši sceni bodo izključno
objekti, ki jih bomo naredili sami. Ustvariti bomo poskušali enako sceno, kot smo jo
predhodno že tvorili s pomočjo programa Insight3D. Lotili se bomo torej modeliranja
izbrane vile, ki je prikazana na eni izmed predhodnih slik (slika 11).
Ko zaženemo program Cinema 4D, se prikaže njegovo začetno okno. Le-to privzeto
ponuja perspektiven pogled na našo nastajajočo sceno (slika 26), uporabnik pa lahko
preklaplja tudi v druge poglede, ki jih lahko uporablja tudi več hkrati. Na vrhu okna se
nahaja glavni meni, ki vsebuje razne podmenije, kot so datoteka (ang. File), urejanje (ang.
Edit), ustvari (ang. Create) in tudi razne druge. Pod glavnim menijem najdemo tudi
bližnjice do najpogosteje uporabljenih orodij, ki nam na primer omogočajo, da
razveljavimo zadnji narejeni korak ali pa se na njega ponovno vrnemo. Tukaj najdemo tudi
ikono, na katero kliknemo, v kolikor želimo, da naš kurzor miške nima več funkcije
predhodno izbranega orodja. Zelo pomembna so tudi orodja za izvedbo geometrijskih
transformacij rotacije, skaliranja in translacije nad izbranimi objekti. Tudi na levi strani
glavnega okna najdemo uporabna orodja, ki se nanašajo na mnogokotniške objekte in
vključujejo označevanje lic, oglišč ali robov nekega objekta. Na spodnjem delu glavnega
okna bodo kasneje skozi naše delo prikazane izbrane barve oziroma teksture. V tem delu
so tudi časovna os in kontrolni gumbi animacije. Na desni strani začetnega okna bo
prikazan seznam naših elementov skupaj z njihovimi lastnostmi. V tem delu lahko
določimo tudi, ali naj bo objekt viden ali neviden v upodobljeni sceni. Vsa ostala orodja in
funkcije bomo spoznavali sproti po potrebi.
Postopki prenosa statičnih 2D scen v 3D modele
42
Slika 26: Osnovno okno programa Cinema 4D (vir: lasten)
Pri modeliranju kakršnih koli objektov je priporočljivo, da izhajamo iz neke osnovne oblike,
ki jo potem skozi vrsto postopkov spremenimo v želeni model. Pri modeliranju naše vile
bomo izhajali iz kocke. Če si vilo in njeno okolico nekoliko podrobneje ogledamo na seriji
uporabljenih fotografij (slika 27), lahko ugotovimo, da je po vsaki osi razdeljena na tri dele
in da ima poleg treh nadstropij še streho. Poleg osnovnih oblik in ploskev vsebuje tudi
ukrivljene oblike, ki so del okrasja zgradbe ter del njene okolice.
Slika 27: Fotografije za pomoč pri modeliranju (vir: lasten)
Našega dela smo se torej lotili tako, da smo najprej naredili samo zgradbo, torej vilo od tal
do strehe. Vse ostale detajle, kot so okna, vrata in na primer ograja na balkonu, smo
dodali kasneje. Po tem, ko je bil naš model dokončan smo mu dodelili še teksture ter ga
uvrstili v prostor, ki smo ga prav tako izdelali sami.
Postopki prenosa statičnih 2D scen v 3D modele
43
Pričeli smo torej s tvorbo in postavitvijo kocke v prostor. V sklopu glavnega menija smo
izbrali možnost dodajanja kockastega objekta (ang. Add cube object). Glede na
prepoznano obliko vile smo kocko vzdolž vseh treh osi razdelili na tri segmente (slika 28).
Kocka je v tej fazi že navzoča v seznamu elementov, kjer ji lahko tudi spremenimo ime, da
se kasneje lažje znajdemo pri izbiranju v večji množici tvorjenih elementov.
Slika 28: Naš začetni objekt, kocka (vir: lasten)
Na fotografijah opazimo, da je naša izbrana vila precej razgibana. Ustrezne spremembe
modela lažje realiziramo, če ga pretvorimo iz parametrične predstavitve v mnogokotniško,
kar dosežemo s preprostim klikom na ustrezni gumb levo zgoraj v oknu (ang. Converting
a parametric object into a polygonal object). S tem dosežemo, da lahko v nadaljevanju
uporabljamo tudi orodja za označevanje posameznih točk, robov ali lic.
Naša vila nima oblike kocke, zato le-to spremenimo v kvader. Pomagamo si z orodjem za
označevanje mnogokotnikov (ang. Polygon model). Označimo vse mnogokotnike, ki jih
želimo premakniti, torej celotno stranico kocke. Označeni mnogokotniki so v glavnem
oknu obarvani z oranžno barvo, neizbrani mnogokotniki pa so modre barve. Pri
označevanju več mnogokotnikov hkrati in pri razveljavitvi morebitne napačne označitve si
pomagamo s tipkama »Shift« in »Ctrl« na tipkovnici. Kocko raztegnemo v kvader tako, da
izberemo orodje za premikanje (ang. Move tool) ter z enostavnim premikom miške
premaknemo izbrano stranico objekta (slika 29).
Postopki prenosa statičnih 2D scen v 3D modele
44
Na podoben način, kot smo deformirali kocko v kvader, smo objektu dodali tudi nekoliko
izbočene dele. Najprej smo označili želene mnogokotnike, nato pa smo uporabili orodje za
izrivanje (ang. Extrude). Slednjega najdemo v sklopu glavnega menija, in sicer v
podmeniju mreža (ang. Mesh) med orodji za izdelavo (ang. Create tools). To orodje
omogoča, da premaknemo izbrane mnogokotnike, pri čemer se med njih in njihove
sosede dodajo novi mnogokotniki. Tudi ta sprememba je vidna na sliki 29.
Slika 29: Prikaz uporabe orodja za izrivanje (vir: lasten)
Pri prilagajanju modela naši vili smo uporabili še številna druga orodja, na primer orodje
za gladek premik (ang. Smooth shift), ki ga prav tako najdemo v meniju orodij za izdelavo.
Omogoča nam, da izbrane mnogokotnike, ki se nahajajo na primer vsak na svoji stranici
modela, premaknemo, pri čemer vrzeli zapolnijo novi mnogokotniki (slika 30). Zelo
uporabno je tudi orodje za izdelavo poševnih oblik (ang. Bevel), ki ga srečamo prav tako v
sklopu menija orodij za izdelavo. S tem orodjem smo ustvarili vrh stolpa, ki je prav tako
viden na sliki 30, kasneje pa smo si z njim pomagali tudi pri izdelovanju okenskih okvirjev
in polic.
Modelirana vila ima tudi dokaj edinstveno obliko strehe (slika 31), zato smo kar nekaj časa
posvetili tudi njeni izdelavi. Poleg že opisanih orodij smo tukaj tudi dodajali in premikali
oglišča mnogokotnikov. Pri dodajanju smo uporabili orodje za dodajanje oglišč (ang.
Postopki prenosa statičnih 2D scen v 3D modele
45
Create point) iz podmenija orodij za izdelavo, pri premikanju pa orodje za spreminjanje
pozicij oglišč (ang. Use point mode). Premikali smo tudi robove (ang. Use edge mode).
Obe orodji za premikanje najdemo v sklopu menija na levi strani glavnega okna programa.
S temi operacijami smo ustrezno prilagodili velikost in naklon strehe.
Slika 30: Prikaz uporabe orodja za gladke oblike in poševne premike (vir: lasten)
Slika 31: Izdelana streha naše vile (vir: lasten)
Postopki prenosa statičnih 2D scen v 3D modele
46
Kljub vsem opisanim orodjem pa nismo vztrajali s preoblikovanjem ene same kocke,
ampak smo del strehe dodali v obliki novega objekta. Tudi tokrat smo izhajali iz kocke, ki
smo jo ustrezno preoblikovali s pomočjo orodij za izrivanje in izdelavo poševnih oblik, nato
pa smo objekt postavili na želeno mesto. Za kar se da natančno pozicioniranje smo
uporabili več pogledov kamere (slika 32).
Slika 32: Pogled na našo vilo iz vseh strani (vir: lasten)
Glede na to, da je streha del vile in da želimo pri nadaljnjem delu oba objekta spreminjati
hkrati, ju lahko združimo tako, da streho v našem seznamu elementov enostavno
postavimo za podobjekt vile. Vedno kadar bomo torej v našem seznamu elementov kot
izbrani objekt označili vilo, bomo lahko s pomočjo ustreznih orodij spreminjali tako vilo kot
tudi streho. Če bomo na seznamu označili samo streho, bomo spreminjali samo slednjo,
vila kot takšna bo ostala nespremenjena. Objekta lahko kadarkoli tudi razdružimo.
Poleg vseh že opisanih orodij smo pri izdelavi našega končnega izdelka uporabili tudi
orodje za risanje prostoročnih krivulj (ang. Draw a freehand spline), ki ga najdemo med
bližnjicami. S pomočjo krivulj smo namreč izdelali vrh našega stolpa, prav tako pa tudi
okrasje nad nekaterimi okni, kot vidimo na sliki končnega objekta (slika 38). Znotraj
podmenija lahko izbiramo med različnimi vrstami krivulj, sami pa smo se odločili za
uporabo lomljenk (ang. Linear). V pogledu od spredaj smo s pomočjo izbranega orodja
naredili obris, ki bo postal okras na vrhu našega stolpa. Začetno točko krivulje smo
Postopki prenosa statičnih 2D scen v 3D modele
47
postavili na ordinatno os, končno točko krivulje pa v koordinatno izhodišče. Ko smo bili z
izdelano krivuljo popolnoma zadovoljni, smo z njeno pomočjo ustvarili rotacijsko ploskev
NURBS. Različne ploskve NURBS (ang. Add hyperNURBS object) najdemo med
bližnjicami orodij na vrhu okna, sami pa smo na krivulji uporabili funkcijo struženja (ang.
Lathe NURBS). V ta namen smo v seznamu elementov postavili krivuljo za podelement
navedene funkcije. Takoj ko to storimo, ustvarimo objekt, ki ga prikazuje slika 33.
Slika 33: Transformacija krivulje v rotacijski objekt (vir: lasten)
Rotacijski objekt, ki smo ga izdelali po pravkar opisanem postopku, smo nekoliko
spremenjen uporabili tudi kot okras nad nekaterimi okni (slika 39). V ta namen smo najprej
ustvarili kopijo elementa. Novonastali objekt smo pomanjšali in ga iz krožne pretvorili v
polkrožno obliko. V ta namen smo označili odvečne mnogokotnike in jih enostavno
izbrisali s pomočjo tipke »Delete« na tipkovnici. Dobljenemu objektu smo dodali še zadnjo
stranico, kot je razvidno s slike 34. V podmeniju orodij za izdelavo smo izbrali orodje za
kreiranje mnogokotnikov (ang. Create polygon), nato pa v pravilnem vrstnem redu označili
vsa oglišča bodočega mnogokotnika. Pomembno je, da kot zadnjo točko še enkrat
označimo tisto, ki smo jo označili kot prvo.
Postopki prenosa statičnih 2D scen v 3D modele
48
Slika 34: Kreiranje mnogokotnika (vir: lasten)
Sledilo je dodajanje podrobnosti, kot so na primer vrata in okna. Pri izdelavi le-teh smo
ponovno izhajali iz kocke in si pomagali s praktično vsemi orodji, ki smo jih spoznali do
tega trenutka, da smo naredili dodatke, kot so na primer okenske police, robovi in rolete.
Na novo smo uporabili le orodje za izrivanje navznoter (ang. Extrude inner). Da bi
novonastale objekte lažje razločili od naše trenutne scene, smo si v tem koraku nekoliko
pomagali tudi z dodajanjem barv, kar je razvidno s slike 35.
Slika 35: Dodajanje oken in prva uporaba tekstur (vir: lasten)
Postopki prenosa statičnih 2D scen v 3D modele
49
Modelirana vila ima, kot smo lahko opazili na sliki 27, kar precej oken, ki so si vsa bolj ali
manj podobna, zato smo si pri njihovi izdelavi seveda pomagali s kopiranjem. Ponovno
smo si pomagali tudi z možnostjo uporabe različnih pogledov, da smo okna in vrata kar se
da natančno pozicionirali.
Poleg vrat v pritličju smo na enak način, kot smo za naš model vile naredili okna, izdelali
tudi vrata na balkonu. Balkon smo naredili povsem enostavno, in sicer kot pravokotnik z
ograjo. Slednja je narejena tako, da smo dodali razvrščene objekte (ang. Add array
object), osnovne oblike valja (ang. Cylinder) ter uporabili funkcijo razvrščanja (ang. Array).
Slika 36 prikazuje naš dokončani model brez uporabe kakršnih koli barv ali tekstur. Vse
izdelane objekte smo zaradi boljše organizacije in lažje nadaljnje uporabe v seznamu
elementov poimenovali in jih razvrstili po nekem, vsaj nam smiselnem ključu. Tako se
bomo med njimi lažje znašli še v nadaljevanju, ko bomo dodajali barve in teksture.
Slika 36: Dokončan osnovni model vile (vir: lasten)
Vse teksture bodo vidne v spodnjem delu glavnega okna, kjer jih bomo enostavno dodajali
z dvoklikom miške. Ob dvokliku se prikaže siva kroglica, klik nanjo pa odpre okno (slika
37), v katerem lahko za teksturo določimo katero koli želeno barvo ali pa izberemo sliko
nekega materiala. V primeru izbire barve se lahko odločamo tudi med različnimi barvnimi
modeli. V primeru, da se odločimo, da bomo našemu modelu dodali teksturo materiala,
Postopki prenosa statičnih 2D scen v 3D modele
50
lahko le-to najdemo na spletu ali pa v ta namen posnamemo svoje fotografije. Ne glede
na to, ali se odločimo, da bo tekstura barva ali material, ji lahko opredelimo tudi razne
lastnosti, kot so na primer svetilnost (ang. Luminance), svetlost (ang. Brightness),
razpršitev (ang. Diffusion), odboj (ang. Reflection) in sijaj (ang. Glow).
Slika 37: Določanje lastnosti teksturam (vir: lasten)
Ko definiramo teksturo in ji določimo vse želene lastnosti, lahko začnemo z njeno
uporabo. Pri tem označujemo ploskve ter nanje z miško enostavno nanašamo želene
teksture. Slika 38 prikazuje naš model, ki smo mu dodali tako teksture materialov kot tudi
barv. Teksture materialov smo pridobili tako, da smo jih enostavno izrezali iz fotografij, na
katerih so bile vidne, nato pa jih naložili med teksture. Poleg tekstur smo okoli vile naredili
tudi ograjo ter sami vili dodali še nekaj stenskega okrasja.
Postopki prenosa statičnih 2D scen v 3D modele
51
Slika 38: Model vile z dodanimi teksturami (vir: lasten)
Zadnji korak je umestitev modela v neko okolje. Tudi slednje je lahko popolnoma realno
ali pa je v celoti domišljijsko. Popolnoma enostavno okolico lahko dobimo z orodjem za
izdelavo tal (ang. Floor) in neba (ang. Sky), ki ga najdemo v podmeniju okolje (ang.
Environment), v sklopu menija ustvari (ang. Create). Okolico, na primer travo, lahko
naredimo tudi s pomočjo funkcije, s pomočjo katere lahko dodajamo tudi lase (ang.
Simulate hair object), a smo se odločili drugače. Za tla smo uporabili kar osnovno obliko
kocke, ki smo jo priredili v nam primerno pravokotno obliko, nato pa smo slednji s
pomočjo orodja magnet (ang. Magnet), ki ga najdemo v sklopu orodij za preoblikovanje
(ang. Transform tools) v podmeniju mreža nekoliko spremenili obliko. Tako smo naredili
tla, ki niso popolnoma ravna. Nebo smo naši sceni dodali po zgoraj opisanem postopku
ter mu dodali le teksturo. Poleg okolja lahko naši sceni, kot že omenjeno, dodamo tudi
objekte, ki jih lahko najdemo na spletu, ter slednjo naredimo še bolj realno. Sami se za to
možnost nismo odločili. Kako je videti naš končni izdelek, je prikazano na sliki 39. Tukaj je
s pomočjo programa izveden tudi postopek upodabljanja (ang. rendering).
Postopki prenosa statičnih 2D scen v 3D modele
52
Slika 39: Prikaz končnega modela (vir: lasten)
Za model seveda ni nujno, da prikazuje samo realne objekte, ampak lahko pustimo prosto
pot svoji domišljiji. Naši končni sceni lahko tako dodamo na primer drevesa in rastline, ki
jih v realnosti ne bi našli. V takšnem primeru je edina omejitev naša iznajdljivost in
zmožnost ustvarjanja nečesa, kar je nastalo kot ideja v naših mislih. Da bi pokazali vsaj
nekaj možnosti, smo naši sceni dodali samo nekaj objektov in naši vili samo nekoliko
spremenili teksture. Končen rezultat, ki je v tem primeru prikazan na sliki 40, je kar precej
drugačen od prvotnega. Pri izdelavi objektov, ki smo jih dodali v to našo alternativno
sceno, smo uporabili tako različne tipe objektov kot tudi različne modelirne operacije.
Postopki prenosa statičnih 2D scen v 3D modele
53
Slika 40: Alternativna scena (vir: lasten)
Kljub temu, da smo se z računalniškim programom Cinema 4D soočali že skozi študij,
smo tudi v tej fazi naleteli na kar nekaj novosti, prav tako pa smo ugotovili tudi, da je
program z vsako novo različico še bolj izpopolnjen. Program je poleg tega tudi
uporabnikom vse bolj prijazen.
5.2 Prednosti uporabe programa Cinema 4D
Cinema 4D je program, ki je med uporabniki zelo razširjen, primeren pa je tako za
profesionalne kot tudi bolj amaterske uporabnike, kar je nedvomno ena njegovih največjih
prednosti. Temu je tako, ker ga uporablja velika množica ljudi, zaradi česar skoraj ni
težave, na katero bi lahko naleteli pri njegovi uporabi in je ne bi mogli rešiti povsem
preprosto, že samo s pomočjo dostopa do svetovnega spleta. Tukaj so na voljo tako video
obrazložitve posameznih orodij, kot tudi različnih funkcij, ki jih program ponuja. Poleg tega
lahko z malo truda na raznih forumih najdemo tudi odgovore na najpreprostejša
vprašanja, ki bi jih mogoče imeli v zvezi z uporabo dotičnega programa.
Kot njegovo prednost moramo omeniti tudi vsa različna orodja in funkcije, ki nam jih
program ponuja. Ne glede na to, iz katerega razloga se lotimo izdelave nekega modela,
Postopki prenosa statičnih 2D scen v 3D modele
54
smo lahko prepričani, da bomo s pomočjo programa dosegli najboljše možne rezultate.
Poleg tega, da lahko izdelujemo najrazličnejše objekte, lahko slednjim dodajamo tudi
teksture, tem pa določimo lastnosti, s pomočjo katerih so na pogled videti še boljše. Iz
tega razloga so naši modeli lahko popolnoma realni ali pa povsem domišljijski. Program
nam omogoča tudi možnost, da združujemo tako modele kot tudi celo različne scene. Pri
tem lahko uporabljamo objekte, ki smo jih naredili sami, ter objekte, ki jih lahko najdemo
na svetovnem spletu. Ne glede na to, iz koliko objektov je neka naša scena sestavljena,
lahko prav vsakega izmed njih brez večjih težav podvojimo, ga sceni dodamo ali iz nje
odstranimo. Vse objekte, ki so del nekega modela, lahko enostavno tudi združimo, tako
da pri vseh nadaljnjih spremembah spreminjamo model kot celoto ali pa spreminjamo
samo njegove dele, torej objekte, iz katerih je sestavljen.
Dotični program omogoča tudi povsem enostavno shranjevanje našega dela, pri čemer
lahko datoteke shranjujemo kamorkoli na naš računalnik. Če se spomnimo, do datotek, ki
jih pri uporabi programa Insight3D nismo shranili v enaki mapi, kot je bil shranjen
program, nismo mogli več dostopati. Prednost pri shranjevanju je tudi ta, da se naše delo,
v kolikor se zgodi, da se nam program med delom, iz katerega koli razloga ustavi oziroma
zapre, vseeno samodejno shrani.
Ko smo z izdelano sceno zadovoljni, ji lahko na enostaven način dodamo tudi luči in
kamere. Glede na to, da v resničnem življenju najdemo različne vire svetlobe, nam tudi
program ponuja različne tipe luči.
S tem, ko naredimo nek model oziroma sceno, ter ji dodamo luči in kamere, pa ni nujno,
da se naše delo konča. Program nam omogoča tudi, da narejeni sceni dodamo posebne
učinke, kot sta na primer megla ali dež. Uporaba posebnih učinkov je smiselna predvsem
v primeru, ko se odločimo, da se naše delo ne bo končalo s tem, ko smo do konca izdelali
sceno. Slednjo lahko namreč tudi animiramo. Velika prednost programa je torej tudi to, da
nam ne omogoča le izdelave modelov ter postavitve same scene, ampak tudi njeno
animacijo.
Kljub temu, da sami s pomočjo programa svojih modelov nismo izvažali v različnih
formatih, moramo to vseeno omeniti kot eno izmed njegovih prednosti. Na ta način je
našim izdelkom s pomočjo programiranja možno dodajati nove lastnosti. Tako jih lahko
prikažemo tudi na spletu ter jih celo naredimo interaktivne.
Postopki prenosa statičnih 2D scen v 3D modele
55
5.3 Slabosti uporabe programa Cinema 4D
Tako kot vsak program pa ima tudi Cinema 4D nekaj slabosti. Največja slabost programa
po naši oceni je ta, da lahko, v kolikor nimamo dobre predstave o velikosti objektov,
slednje kaj hitro naredimo v prevelikih razsežnostih, zaradi česar so lahko naše končne
datoteke precej velike.
Kljub temu, da smo kot prednost programa omenili shranjevanje naših datotek, pa
moramo v tem trenutku omeniti slabosti, na katere naletimo pri shranjevanju tekstur. V
primeru, da datoteko, ki vsebuje naš model, prestavimo, se samodejno ne prenesejo tudi
teksture, ki jih moramo prestavljati ločeno.
Kljub temu, da sami pri izdelavi magistrskega dela na naslednji problem nismo naleteli, ga
moramo vseeno omeniti. To je čas, ki ga program porabi v primeru, da se odločimo, da
bomo neko večjo in bolj zahtevno sceno prikazali v okolju, jo torej renderirali. Za to je
potreben dobro zmogljiv računalnik ter tudi kar precej časa. Še več časa je potrebno, če
se odločimo, da bomo izdelali neko bolj kompleksno animacijo.
Postopki prenosa statičnih 2D scen v 3D modele
56
6 ANALIZA REZULTATOV EMPIRIČNEGA DELA
RAZISKAVE
V empiričnem delu nismo le poskušali izvesti prenosa 2D statičnih scen v 3D modele,
ampak smo s pomočjo vseh uporabljenih procesov želeli tudi ugotoviti, kako se bosta pri
prenosu odrezala oba izbrana programa, Insight3D ter Cinema 4D.
6.1 Primerjava uporabe programov Insight3D in Cinema 4D
Za uporabo obeh programov, Insight3D in Cinema 4D, smo se odločili iz popolnoma
različnih razlogov. V primeru programa Insight3D je bilo odločilno, da naj bi uporabnikom
ponujal enostavno, skoraj popolnoma avtomatizirano uporabo ter hitro pridobivanje
želenih končnih rezultatov. Za drugi program, Cinema 4D, pa smo se odločili zaradi naših
predhodnih izkušenj s samim programom, ter iz razloga, ker je z njim možno tvoriti dobre
3D modele.
Z uporabo obeh programov naj bi prišli do primerljivih končnih rezultatov. Bistvena razlika
med obema postopkoma naj bi bila predvsem ta, da gre pri uporabi programa Insight3D
za skoraj popolnoma avtomatiziran postopek, pri uporabi programa Cinema 4D pa naj bi
vse postopke od samega modeliranja do teksturiranja izvedli sami. Pri uporabi programa
Insight3D smo hitro lahko ugotovili, da postopek ni avtomatiziran. Kljub temu, da sam
izvede triangulacijo na predhodno naloženih fotografijah in da smo do končnih rezultatov
poskušali priti na kar nekaj načinov, pri tem nismo bili pretirano uspešni. Glavne točke na
fotografijah smo morali vseeno označiti sami. V obeh primerih je torej potrebno vključiti
kar precejšnjo mero lastnega dela. Pri programu Cinema 4D so bili končni rezultati veliko
bolj dovršeni in primerljivi z objektom, ki smo ga modelirali.
Skozi uporabo obeh programov smo ugotovili, da imamo pri uporabi Cinema 4D veliko
bolj proste roke tako na področju modeliranja kot tudi pri teksturiranju. Končni model je
tako lahko v našem primeru enak oziroma do velike mere podoben objektu, ki ga
upodabljamo, že z nekaj kliki pa ga lahko popolnoma spremenimo. Imamo možnost, da
mu dodamo povsem drugačno okolje ali teksture, v našo sceno pa lahko dodamo tudi
Postopki prenosa statičnih 2D scen v 3D modele
57
razne druge objekte. Pri uporabi Insight3D te možnosti žal nimamo. Model izdelamo na
podlagi predhodno določenih točk, ko pa je ta končan, mu sam program na površine
prenese teksture, ki so preslikane iz naloženih fotografij. Da bi si lažje predstavljali razliko
med našimi končnimi rezultati, si lahko še enkrat ogledamo predhodno prikazani sliki 25 in
39.
Insight3D naj bi predstavljal program, ki je zaradi svoje enostavnosti primeren za vse
uporabnike, naj gre za bolj profesionalne ali začetniške. Skozi svoje delo smo ugotovili, da
temu ni ravno tako. Delo s programom je kar precej oteženo, saj v samem programu
dodatnih razlag njegovih funkcij ne najdemo, navodila, ki so uporabniku dostopna, pa so
se izkazala za kar precej skopa in nejasna. Težko si pomagamo tudi s spletom, saj tudi
tam ne najdemo dodatnih navodil, razen če se kar precej poglobimo v razprave na raznih
forumih, kjer uporabniki komentirajo uporabnost programa. Za precej drugačno se je
izkazalo delo s programom Cinema 4D. Delo z njim nam ni predstavljalo nekih večjih
težav. V kolikor smo vseeno naleteli na kakšne težave, na primer pri uporabi orodij, ki jih
program ponuja, smo si lahko pomagali z njihovim opisom v samem programu. Do rešitve
smo lahko kaj hitro prišli tudi z uporabo svetovnega spleta. Tukaj pa smo lahko našli tudi
številne napotke in navodila, kako lahko na primer uporabimo neko orodje ali funkcijo ter
kako lahko kakšno določeno stvar naredimo.
Skozi naše delo smo ugotovili, da je kljub vsemu za nas primernejši program Cinema 4D.
Z njegovo pomočjo, ne le da nam je uspelo narediti zadovoljiv končni izdelek, ampak nam
ponuja še mnogo več možnosti pri delu kot Insight3D. V Cinemi 4D lahko po tem, ko
naredimo nek končni izdelek, slednjega še spreminjamo in mu razne objekte dodajamo,
prav tako pa lahko uporabljamo tudi različne teksture, s pomočjo katerih je naš končni
rezultat lahko vedno znova drugačen od prejšnjega.
6.2 Analiza veljavnosti hipotez
Prva hipoteza se je nanašala na vprašanje, ali se da postopek prenosa 2D statičnih scen
v 3D modele v popolnosti avtomatizirati. Sami smo bili mnenja, da temu ni tako, kar smo
skozi naše delo tudi potrdili. Program Insight3D naj bi predstavljal avtomatiziran program,
vendar smo ugotovili, da to povsem ne drži. Pričakovali smo, da bomo v program le
naložili fotografije, vse ostalo pa bo namesto nas opravil program. Kljub temu, da je sam
poiskal ujemajoče se točke na naloženih fotografijah, na podlagi slednjih ni bilo mogoče
Postopki prenosa statičnih 2D scen v 3D modele
58
narediti končnega modela. Samodejno ni zaznal niti robov med posameznimi površinami,
zaradi česar smo se odločili, da bomo za testni primer izbrali ne preveč zahteven model
zgradbe, v našem primeru vile. Tako vse robove na naši zgradbi kot tudi objekte, kot so
okna, smo morali na fotografiji označiti sami, nato pa na podlagi tako označenih točk sami
tvoriti mnogokotnike. Ugotovili in dokazali smo torej, da prenos v dotičnem programu niti
približno ni avtomatiziran in na podlagi te ugotovitve potrdili našo prvo zastavljeno
hipotezo.
Naša naslednja hipoteza je predpostavljala, da je izbira ustreznega postopka za prenos
2D statičnih scen v 3D modele odvisna od več faktorjev, marsikdaj pa je primerno
uporabiti tudi kombinacijo različnih postopkov. Pri izdelavi empiričnega dela smo spoznali
delo dveh programov, Insight3D in Cinema 4D. Za oba smo ugotovili, da imata precej
prednosti in tudi slabosti. V primeru, da bi združili prednosti obeh metod, bi dobili novo
metodo, s pomočjo katere bi lahko dosegali vrhunske rezultate na področju prenosa 2D
statičnih scen v 3D modele. Iz programa Insight3D bi v tem primeru nedvomno v novo
metodo prenesli možnost nalaganja fotografij, nato pa na slednjih označujemo glavne
točke. Na ta način bi lahko brez večjega truda dosegli, da ima naš model sorazmerne
medsebojne velikosti. Tako bi si prihranili kar precej dela, ki nam ga povzroča določanje
velikosti naših objektov. Iz programa Cinema 4D bi nedvomno obdržali vsa orodja in
funkcije, ki nam jih program ponuja, prav tako pa bi vključili tudi možnost dodajanja tekstur
objektom. Pri programu je koristno tudi dejstvo, da lahko našemu končnemu izdelku
dodajamo različne efekte ter tudi animacije. Program Cinema 4D lahko že tako, samega
po sebi razumemo kot kombinacijo programov, ki nam omogoča ne le modeliranje, ampak
tudi postavitev scen in animacijo ter upodabljanje le-teh. Skozi te ugotovitve smo tako
potrdili tudi našo drugo hipotezo, ki zagovarja dejstvo, da kljub obstoju veliko različnih
postopkov za prenos 2D statičnih scen v 3D modele, ne moremo objektivno izbrati
postopka, ki bi za to bil najprimernejši.
Med našo izdelavo empiričnega dela pa smo potrdili tudi zadnjo napovedano hipotezo, ki
je predpostavljala, da je rezultat prenosa 2D statičnih scen v 3D modele boljši, kadar
imamo na voljo več konceptualnih fotografij, ki prikazujejo 2D sceno iz različnih gledišč in
zornih kotov. Pri prenosu s pomočjo programa Insight3D smo prenos poskušali narediti
večkrat, z različnim številom naloženih fotografij. Skozi delo smo ugotovili, da je v našem
primeru optimalno število naloženih fotografij tri. V primeru, ko smo uporabili več fotografij
in je program izvajal triangulacijo točk, je bilo najdenih preveč točk. Zaradi tega je
Postopki prenosa statičnih 2D scen v 3D modele
59
povezovanje točk v mnogokotnike bilo precej oteženo. Točke niso bile povezane, tako kot
bi morale biti, saj so se povezovale med seboj tudi iz različnih fotografij. V primeru manj
fotografij pa do končnega rezultata nismo prišli, saj program ni mogel izvesti triangulacije.
Pri uporabi programa Cinema 4D se je vsaka fotografija, ki smo jo imeli, izkazala za še
kako koristno. Na vsaki izmed fotografij je bil viden kakšen izmed detajlov, ki na prejšnji ali
naslednji fotografiji ni bil viden. Zaradi uporabe več fotografij smo tako naš model lahko
veliko bolj približali resničnemu objektu, kot bi to lahko storili v primeru, da bi imeli na
primer samo eno fotografijo.
6.3 Možne razširitve in izboljšave raziskave
V okviru teoretičnega dela bi raziskavo lahko dodatno razširili in tudi poglobili, v kolikor bi
na primer dodali še matematično ozadje, na podlagi katerega deluje avtomatski program
Insight3D. Vključili bi lahko tudi zgodovinske preglede posameznih področij, zaradi česar
bi jih mogoče lahko še boljše razumeli.
Ko smo se lotevali našega empiričnega dela, smo se odločili, da se bomo osredotočili na
dva računalniška programa. Glede na to, da je v primeru programa Insight3D šlo za
program iz avtomatskega razreda, pri programu Cinema 4D pa za program iz razreda
ročnega modeliranja in teksturiranja, je rezultate na nek način vseeno težje primerjati. Da
bi se temu izognili in dodatno izboljšali našo raziskavo, bi morali v njej uporabiti več
različnih programov ali pa se odločiti za primerjavo dveh ali treh metod, ki sodijo v isti
razred.
Pri lotevanju samega prenosa 2D statičnih scen v 3D modele, smo se odločili, da bomo za
prenos uporabili sliko vile. Kljub temu, da je bila vila, ki smo jo poskušali prenesti, na
pogled precej enostavna, bi se mogoče za lažjo primerjavo morali odločiti za prenos
drugačnega objekta. Mogoče bi bilo celo dobro, da bi najprej prenesli več različnih
objektov, manjšo hišo in šele po vsem tem vilo. Tako bi lahko mogoče celo prišli do
kakšne ugotovitve, kje pri uporabi programa Insight3D se izgubimo in ne dobimo več
natančnih in želenih rezultatov.
Postopki prenosa statičnih 2D scen v 3D modele
60
7 SKLEP
V magistrskem delu smo se ukvarjali s prenosom 2D statičnih scen v 3D modele s
pomočjo programov Insight3D in Cinema 4D. Da bi boljše razumeli, kako bo potekal sam
prenos in kaj bomo počeli v empiričnem delu, smo se najprej seznanili z nekaterimi
teoretičnimi izhodišči. Kljub temu, da smo za izdelavo teoretičnega dela pregledali kar
nekaj literature, smo ob koncu dela ugotovili, da bi svojo raziskavo lahko še dodatno
poglobili. Nekaterim opisanim postopkom bi tako lahko dodali še matematična ozadja,
prav tako pa bi jih lahko predstavili tudi s pomočjo zgodovinskih pregledov. Ugotovili smo,
da se na področju modeliranja nenehno pojavljajo novosti, s pomočjo katerih bi lahko
naše končne rezultate ne le neprestano dopolnjevali, ampak tudi izboljševali.
Teoretičnemu delu je sledil empirični del, v katerem smo se lotili dejanskega prenosa iz
2D v 3D okolje s predhodno omenjenima programoma. Za prenos smo si izbrali vilo, ki se
nahaja pod Kalvarijo v Mariboru. S tem izborom smo se pri svojem delu zavestno omejili
samo na prenos stavb, za kar smo se odločili predvsem iz praktičnega razloga. Stavbe
predstavljajo svojevrsten izziv za prenos, prav tako pa hkrati predstavljajo tudi nešteto
možnosti za izdelavo 3D modelov. Poleg tega, da smo v empiričnem delu prišli do
izdelave naših končnih 3D modelov, smo prišli tudi do ugotovitev, ki so potrdile naše
hipoteze. Skozi delo smo ugotovili, da je včasih veliko boljše, če se dela lotimo sami, kot
je bilo to v primeru uporabe programa Cinema 4D, kot pa da bi delo namesto nas opravil
program, kot je bilo to pri uporabi Insight3D. S tem, ko smo svoj 3D model izdelovali
ročno, smo prišli do veliko bolj dovršenih rezultatov. Izkazalo se je, da imamo v primeru
uporabe programa, kjer moramo več dela opraviti sami, na voljo več različnih orodij. S
pomočjo teh smo na enostaven in hiter način lahko naredili kar dva različna končna
modela, že samo s tem, da smo enemu izmed njiju nekoliko spremenili teksture in v
njegovo končno sceno postavili nekaj dodatnih objektov. Kljub temu, da smo prišli pri
izdelavi empiričnega dela do zadovoljivih rezultatov, bi ti lahko bili še boljši. Odločili bi se
lahko za uporabo več različnih programov in tako med njimi lažje primerjali dobljene
rezultate, prav tako bi se lahko odločili za izdelavo več različnih modelov, ki bi predstavljali
za izdelavo različne težavnostne stopnje. Tudi v tem primeru bi mogoče lahko lažje
predstavili prednosti in pomanjkljivosti posameznega programa. Ne glede na naše končne
rezultate, bi ti lahko bili vedno boljši.
Postopki prenosa statičnih 2D scen v 3D modele
61
3D tehnologije z vsakim dnem postajajo vse večji del našega življenja. Nekaj, kar se nam
je včasih zdelo neresnično, si postopoma utira pot v naš vsakdan. Kljub temu, da se vsak
izmed nas ne ukvarja s 3D tehnologijami, je mogoče vseeno priporočljivo, da se z njimi
seznanimo vsaj do neke mere. Glede na njihov razvoj je le še vprašanje časa, kdaj bo
prav vsak izmed nas doma imel vsaj en televizijski sprejemnik, ki omogoča ogled 3D
vsebin. Skozi naše magistrsko delo smo tako na podlagi teoretičnih izhodišč in
praktičnega prikaza poskušali na enostaven in čim bolj razumljiv način pokazati, kako
poteka prenos 2D statičnih scen v 3D modele. Poskušali smo dokazati, da gre vsaj v
praktičnem delu za postopke, ki se jih lahko loti vsak izmed nas, ki ima dostop do
računalnika ter potrebne programske opreme, ne glede na to, kakšno je njegovo
predznanje.
VIRI
[1] Acute3D, 2015. Dostopno na http://www.acute3d.com/smart3dcapture/, zadnji obisk
v marcu 2015.
[2] Autodesk, 2015. Dostopno na http://www.autodesk.com/products/maya/overview,
zadnji obisk v marcu 2015.
[3] Autodesk Recap, 2015. Dostopno na https://recap.autodesk.com/, zadnji obisk v
marcu 2015.
[4] Beane, A. 3D Animation: Essentials, Indianapolis: John Wiley & Sons, Inc., 2012.
[5] Blender, 2015. Dostopno na http://www.blender.org/, zadnji obisk v marcu 2015.
[6] Curvy 3D, 2015. Dostopno na http://www.curvy3d.com/3d-modelling-program.html,
zadnji obisk v marcu 2015.
[7] Digitalna fotografija, 2015. Dostopno na
https://digitalnafotografija.wordpress.com/2011/01/19/kaj-je-fotografija/, zadnji obisk
v marcu 2015.
[8] Erzetič, B., Gabrijelčič, H. 3D od točke do upodobitve, 2. izdaja, Ljubljana: Založba
Pasadena, d. o. o., 2009.
[9] Guid, N. Računalniška grafika [učbenik], Maribor: Fakulteta za elektrotehniko,
računalništvo in informatiko, 2001.
[10] Grabant, N. Angleško-slovenski slovarček osnovnih pojmov 2D in 3D- grafike in
animacije, 2011. Dostopno na:
http://www.mizs.gov.si/fileadmin/mizs.gov.si/pageuploads/podrocje/Strukturni_skladi
/Gradiva/MUNUS2/MUNUS2_138RacunalniskoOblikovanje_Slovarcek.pdf, zadnji
obisk v marcu 2015.
[11] Image-Based Modeling and Rendering Techniques: A Survey, 2015. Dostopno na
http://webcache.googleusercontent.com/search?q=cache:g4IZ_N7tZI0J:www.inf.ufr
gs.br/~oliveira/pubs_files/RITA_IBMR.pdf+&cd=1&hl=sl&ct=clnk&gl=si, zadnji obisk
v marcu 2015.
[12] Image-based 3D modelling: a review, 2015. Dostopno na
http://webcache.googleusercontent.com/search?q=cache:JtZsmPl_kFQJ:www.rese
archgate.net/profile/Fabio_Remondino/publication/227786426_Imagebased_3D_Mo
delling_A_Review/links/00b7d52c6d1dba9507000000.pdf+&cd=1&hl=sl&ct=clnk&gl
=si, zadnji obisk v marcu 2015.
[13] Insight3D- quick tutorial, 2014. Dostopno na http://insight3d.sourceforge.net/, zadnji
obisk v marcu 2015.
[14] Maxon: 3D for the real world, 2014. Dostopno na http://www.maxon.net/, zadnji
obisk v marcu 2015.
[15] O’Rourke, M, Principles of Three-Dimensional Computer Animation (Third Edition),
W. W. Norton & Company, 2003.
[16] Osnovne značilnosti senzorjev in aktuatorjev, 2014. Dostopno na http://lms.fe.uni-
lj.si/amon/literatura/SA/1OsnZnac.pdf, zadnji obisk v marcu 2015.
[17] Photometrix, 2015. Dostopno na http://www.photometrix.com.au/australis/, zadnji
obisk v marcu 2015.
[18] PhotoModeler, 2015. Dostopno na http://www.photomodeler.com/index.html, zadnji
obisk v marcu 2015.
[19] Pixologic, 2015. Dostopno na http://pixologic.com/zbrush/features/ZBrush4R7/,
zadnji obisk v marcu 2015.
[20] Preparata, F. P., Shamos, M. I. Computational Geometry – An Introduction, 2nd
Edition, Springer-Verlag New York, Inc., 1988.
[21] Sketch-based modeling: A survay, 2015. Dostopno na
http://www.sciencedirect.com/science/article/pii/S0097849308001295, zadnji obisk v
marcu 2015.
[22] Žalik, B. Geometrijsko modeliranje [učbenik], Maribor: Fakulteta za elektrotehniko,
računalništvo in informatiko, 1999.