Slovenija iz kock

Objavljeno: 31.1.2017 | Avtor: Ciril Bohak | Kategorija: Dosje | Revija: Februar 2017

V preteklem letu smo v Laboratoriju za računalniško grafiko in multimedije na Fakulteti za računalništvo in informatiko Univerze v Ljubljani v okviru študentskih projektov razvili sistem za realističen prikaz slovenske pokrajine sestavljene iz kock. Pokrajina iz kock je ustvarjena na podlagi podatkov LiDAR in ortofoto Geodetske uprave Republike Slovenije.

Slika 2: Primer oblaka točk zajetega s tehnologijo LiDAR (vir: eros.usgs.gov)

Svetovi iz kock so postali zelo popularni z izdajo igre Minecraft pred nekaj več kot petimi leti. Od takrat so močno prerasli okvire igre in se uveljavili tudi na mnogih drugih področjih. Najbolj razširjeni so za vizualizacijo najrazličnejših geografsko lociranih podatkov, uporabljajo pa se tudi na področjih simulacij, poučevanja in nenazadnje tudi pri razvoju inteligentnih sistemov, natančneje pri učenju pametnih agentov, ki se samostojno gibljejo po okolju. Tovrstno uporabo omogoča groba diskretizacija svetov, zaradi katere lahko stanja sveta opišemo na enostavnejši način kot stanja v bolj kompleksnih zveznih svetovih.

Groba diskretizacija in posledično zmožnost obvladovanja res obširnih svetov, kot tudi dostopnost podatkov LiDAR (angl. Light Detection And Ranging) in ortofoto, so omogočili razvoj sistema namenjenega upodabljanju Slovenske pokrajine. S koncem leta 2015 so pri Agenciji Republike Slovenije pod okriljem Ministrstva za okolje RS preko portala eVode omogočili dostop do zbirke podatkov LiDAR. Podatki predstavljajo z laserjem zajete točke površja Slovenije, ki so razvrščene v osnovne kategorije (tla, nizko/srednje/visoko rastje, stavbe in morje). S postavitvijo spletnega portala Prostor pa je Geodetska uprava RS pod okriljem Ministrstva za okolje in prostor omogočila dostop do širokega nabora geodetskih podatkovnih zbirk. Med zbirkami je tudi zbirka podatkov ortofoto, ki vključuje georeferencirane fotografske prikaze površja.

Predstavljeni zbirki podatkov smo uporabili pri izgradnji Slovenske krajine iz kock. Podatke iz zbirke LiDAR smo uporabili za določitev osnovne oblike površja in začetne kategorizacije, podatke ortofoto pa smo uporabili za kategorizacijo podatkov v bolj podrobne razrede kot so na razpolago v osnovnih podatkih. Naprednejša kategorizacija podatkov LiDAR vključuje kategorije voda, asfalt, beton, skale ipd. Na ta način smo želeli pokrajino čim bolj približati realni sestavi terena.

Slika 1: Ljubljana iz daljave.

Priprava podatkov

Podatki v zbirki LiDAR obsegajo okoli 1,2 TB in so predstavljeni v obliki oblaka točk (glej sliko 2). Gostota točk v oblaku ni enakomerna in obsega najmanj 2 točki na kvadratni meter površja. Točke so razvrščene v omenjenih pet osnovnih kategorij. Točke kvantiziramo in iz njih ustvarimo kocke sveta z dolžino 1 m, za katere poleg položaja hranimo še informacijo o kategoriji.

Slovenija v Minecraftu

V članku predstavljeni sistem smo uporabili tudi za gradnjo sveta Slovenije v igri Minecraft. Študenti fakultete so postavili testno okolje, razvili potrebne programske komponente in testirali njihovo delovanje. Podatke, ki smo jih za potrebe prikaza Slovenske pokrajine predstavili v članku, je bilo potrebno za uporabo v igri Minecraft pretvoriti v ustrezno obliko. Za osrednji del Slovenije smo takšen svet ustvarili vnaprej, za druge dele pa se svet gradi sproti, ko v ta območja zaidejo igralci. Tako predelane podatke lahko igra Minecraft pridobi iz namenskega fakultetnega strežnika Minecraft Slovenija. Prav tako je dostopen tudi zemljevid že zgrajenega sveta, ki uporabnikom omogoča pregled sveta v igri Minecraft v obliki zemljevida.

Slika 3: Prikaz posameznih korakov priprave podatkov. Zgoraj levo – kvantizacija, zgoraj desno – zapolnitev zgradb, sredina levo – zapolnitev tal, sredina desno – specializacija, spodaj levo – filtriranje in spodaj desno – izenačevanje in poglabljanje vodne površine

Zgradbe v zbirki podatkov LiDAR so v večini primerov predstavljene samo s strehami, saj laserski žarki pri zajemu skoznje ne prodrejo in posledično ne zaznajo preostale strukture stavb. Za bolj realistični prikaz zgradbam dodamo navpične stene od strehe pa do tal, kar se izkaže za dober približek (glej sliko 3 - zgoraj desno). Tudi pri zajemu tal prihaja do netočnosti, kar se odraža v večjih ali manjših luknjah. Te so še posebej pogoste na vodnih površinah. Tla dopolnimo tako, da položaje manjkajočih kock izračunamo s povprečenjem višine njihovih sosedov (glej sliko 3 - sredina levo). Za potrebe podrobnejše kategorizacije posameznih kock sveta smo v nadaljnjem koraku (glej sliko 3 - sredina desno) s kvantizirano predstavitvijo sveta poravnali podatke ortofoto. V teh podatkih smo na podlagi barvnih preslikav določili dodatne kategorije kock (beton, asfalt, skale, vode ipd.). Za odpravo nepravilnosti in šuma v koraku specializacije smo vpliv dodatne kategorizacije omejili (glej sliko 3 - spodaj levo). V zadnjem koraku poskrbimo še za poglobitev vodnih površin tako, da jih poglabljamo z oddaljenostjo od obale (glej sliko 3 - spodaj desno). Na ta način ustvarimo podrobno kategoriziran model sveta, ki je pripravljen na upodabljanje.

Navodila za povezavo:

Za ogled Slovenije v navideznem svetu potrebujete igro Minecraft. Na strežnik se lahko povežete v večigralskem načinu (angl. Multiplayer). Potrebno je dodati nov strežnik (angl. Add Server), kjer za naslov strežnika vpišete minecraft.fri.uni-lj.si. Ime strežnika je lahko poljubno. Po uspešnem dodajanju strežnika, se je mogoče nanj povezati.

Strežnik ni namenjen osnovnim načinom igranja preživetja (angl. Survival mode) in ustvarjanja (angl. Creative mode), ampak je trenutno namenjen zgolj ogledu že ustvarjenega sveta (angl. Spectator mode). V prihodnosti nameravamo ustvariti še dodaten svet, kjer bomo uporabnikom dovolili tudi spreminjanje in ustvarjanje po lastni volji. Želimo vam veliko užitkov ob ogledu Slovenije v igri Minecraft.

Upodabljanje

Za upodabljanje smo razvili namenski program, ki iz zbirk podatkov pridobi potrebne kose sveta in jih upodobi z metodo sledenja žarkov. Metoda sledenja žarkov nam omogoča fotorealistično upodabljanje s podporo uporabe visokega dinamičnega razpona, kar nam omogoča enakomernejšo osvetlitev podrobnosti v svetu. Pri upodabljanju se uporabljata tudi dva pristopa k senčenju, in sicer uporaba neposrednih senc in uporaba okoliškega senčenja. Prav tako lahko upodobljevalnik upošteva razpršitev svetlobe v ozračju in kromatično aberacijo kar še dodatno izboljša občutek realističnega prikaza.

Slika 4: Piran

Rezultati upodabljanja večjih delov pokrajine pričarajo fotorealistične prikaze, kjer uporabnik težko ugotovi, da je svet sestavljen iz posameznih kock. Pri upodabljanju manjših delov pokrajin pa zelo razločno vidimo posamezne sestavne elemente - kocke.

Tako pripravljeni podatki so preko spletnega strežnika prosto na voljo vsem, ki jih želijo uporabiti. Pred kratkim smo v sodelovanju s študenti postavili tudi namenski strežnik za dostop do sveta iz igre Minecraft. V okviru nadaljnjega dela na projektu načrtujemo dodatno izboljšanje kategorizacije posameznih blokov z uporabo dodatnih geodetskih podatkov dostopnih preko portala Prostor. Uporabnikom želimo ponuditi tudi svet, ki bo omogočal preurejanje in poustvarjanje in s tem vzpodbuditi njihovo kreativnost.

Naroči se na redna tedenska ali mesečna obvestila o novih prispevkih na naši spletni strani!
Prijava

ph

Komentirajo lahko le prijavljeni uporabniki