Fotogrametrija

damjan_erhatic

Damjan Erhatič

Sažetak

U Gimnaziji Franca Miklošiča Ljutomer nastojimo našim studentima ponuditi što više znanja iz tehnologija koje su nove, aktualne i zanimljive. Stoga, koristimo fotogrametriju unutar rednog IT predmeta. A kako radi fotogrametrija? Jednostavno, na osnovi jedne snimke mogu se odrediti dvodimenzijska svojstva objekta, tj. provesti potpuna rekonstrukcija približno ravnog objekta (npr. zemljišta, pročelja zgrade) ili djelomična rekonstrukcija prostornog objekta (npr. obrisa nekog predmeta).

Ključni pojmovi: fotogrametrija, Meshroom, slika, rekonstrukcija.

Fotogrametrija

Fotogrametrija je znanost i tehnologija prikupljanja pouzdanih informacija o fizičkim objektima i okolišu kroz postupak snimanja, mjerenja i interpretacije fotografskih snimki i uzoraka zabilježenog elektromagnetskog zračenja te drugih pojava.

Drugim riječima, stvaranje 3D modela pri kojem snimamo veliki broj slika stvarnog objekta jednostavno je za uporabu, pruža dobre rezultate i može biti potpuno besplatno.

Postoji mnogo inačica fotogrametrije. Fotogrametrija izbliza odnosi se na prikupljanje fotografija s kraće udaljenosti, ali poznajemo i tradicionalnu zračnu (ili orbitalnu) fotogrametriju.

Meshroom/AliceVision

Meshroom predstavlja besplatan softver otvorenog koda za fotogrametriju s prekrasnim korisničkim sučeljem. Temelji se na osnovnom okviru koji nosi naziv AliceVision i rezultat je suradnje između nekoliko simageveučilišta, laboratorija (Češko tehničko sveučilište, IMAGINE, INPT, Simula Research Laboratory i Quine) i Mikros Image, francuske postprodukcijske tvrtke.

Slika 1. Korisničko sučelje Meshroom

Osnovna interakcija zapravo je jednostavna kao što izgleda. Povučemo i spustimo slike u Meshroom prozor, pritisnemo START i pričekamo na gotov model. Zahvaljujući softveru Meshroom možete izvesti i proširenu rekonstrukciju. To znači da napola dovršenom rješenju možete dodati više slika ako primijetite (u pregledu) da bi neka područja mogla koristiti više detalja.

Pored svega navedenog, softverom Meshroom možemo izvršiti čak i obnovu uživo. U ovom načinu rada snimimo nizove slika više puta, učitamo ih u mapu i oni se automatski obrade. Prikaže se pregled i mi odlučujemo koji dio modela treba više detalja. Zatim snimimo nekoliko slika i cijeli postupak se ponavlja dok ne obuhvatimo model iz svih točaka gledišta.

Međutim, prije nego što se počnete igrati odnosno koristiti softver Meshroom, morate uzeti u obzir nekoliko važnih koraka prilikom snimanja fotografija za fotogrametriju.

Kako fotografirati za fotogrametriju

Kamera i postavke

Kamera pametnog telefona dobro će raditi, ali ako imate DSLR, snimanje će biti još bolje. Ako namjeravate koristiti DSLR, smanjite otvor blende na barem 5-6 kako biste se fokusirali na cijeli model koji pokušavate snimiti.

Razmislite o snimanju u RAW formatu ako vaš fotoaparat to podržava. JPEG formati obično su sasvim prihvatljivi, ali format RAW datoteke pruža neke bolje mogućnosti za podešavanje postavki slike, npr. svjetline. Ako razvijate RAW slike ili uređujete JPEG, pazite da ne koristite efekte korekcije leće ili sličnih filtera.

Fotografiranje

Morate snimiti barem 30 slika. Imajte na umu da neke slike mogu biti odbačene ako program ne pronađe dovoljno sličnosti s drugim slikama ili ako su zamućene.

  1. Pomičite se po ciljnom objektu u krugovima. Nemojte pomicati predmet ili njegovu okolinu između slika.
  2. Preklapanje! Želite da svaki dio modela obuhvati najmanje 2 slike. U idealnom slučaju imat ćete pri snimanju sljedećih slika oko 60-80% preklapanja.
  3. Izbjegavajte oštre sjene, koristite raspršeno osvjetljenje ili fotografirajte vani tijekom poluoblačnog dana.
  4. Objekt mora zauzeti važaimagen dio svake slike.
  5. Izbjegavajte vrlo sjajne ili prozirne predmete.

Slika 2. Primjer obuhvaćanja slika

Možete koristiti zoom odnosno zumiranje fotoaparata ili čak miješati slike iz potpuno različitih fotoaparata. Meshroom je zaista sjajan u tom pogledu. Međutim, nemojte nepotrebno mijenjati povećanje nakon svake slike samo zato što to možete učiniti.

Dobro je da se što više fotografija snimi istom kamerom i istim zoom-om (žarišna duljina), jer se time stvaraju potrebna ograničenja za postupak unutarnje kalibracije kamere, što i želimo.

Što bi se dogodilo ako bismo snimili fotografije ispred potpuno bijele pozadine i rotirali model između slika? Djeluje… nekako. Međutim, rezultati će biti lošiji. Na objektu ćemo imati samo točke koje predstavljaju mali dio slike, pa su parametri kamere manje ograničeni, što dovodi do manje preciznih rezultata.

Idealne mete za fotogrametriju predstavljaju teksturirani ili grubi objekti (npr. kipovi). Po mogućnosti možete prekriti sjajne ili prozirne predmete prahom (brašno/kreda u spreju) kako biste izbjegli refleksije. Postoji i opcija prekrivanja sjajne površine slikarskom trakom.

Standardna rekonstrukcija

Pri obradi fotografija koje ste prethodno snimili vani, najvjerojatnije ćete koristiti standardnu ​​rekonstrukciju, tako da ih jednostavno više ne možete snimati. Pretpostavljamo da ste već snimili sve potrebne slike i sada želite rekonstruirati 3D model. Tijek postupka je vrlo jednostavan:

  1. Kopirajte sve slike u mapu na tvrdom disku,
  2. Povucite i spustite mapu (ili pojedinačne slike) u prozor Meshroom,
  3. Spremite projekt koristeći File – Save na odredište koje želite (inače će rekonstrukcija biti spremljena u privremenu mapu),
  4. Kliknite na Start ili desnom tipkom miša kliknite na čvor Structure from motion (SFM) node i pritisnite Compute.
  5. Bolje je izračunati SFM jer ćete vidjeti pregled za nekoliko minuta.
  6. Pričekajte, ova priprema traje neko vrijeme.
  • Kada se završe, čvorovi na dnu postat će zeleni jedan za drugim,
  • ·U bilo kojem trenutku možete pritisnuti Stop i kasnije nastaviti s rekonstrukcijom.

Čim se čvor Structure from motion završi, prikazat će vam se pregled (dvaput kliknite na čvor da biste učitali pregled ako se ne učita automatski). Sve slike koje su uspješno korištene u rekonstrukciji imat će dodanu zelenu kvačicu.

Ako primijetite da je veliki broj slika odbačen, a da u pregledu vidite samo nekoliko kamera, nema smisla nastaviti rekonstrukciju. Morat ćete snimiti bolje slike, povećati rekonstrukciju s više slika (objašnjeno u sljedećem poglavlju) ili se poigrati s postavkama.

Kada se cjelokupna rekonstrukcija završi, možete dvaput kliknuti na čvor Texturing za pregled konačne mreže.

Desnom tipkom miša kliknite na bilo koji dovršeni čvor i odaberite Open folder. Otvorite mapu Texturing ili MeshFiltering da biste locirali izlaznu datoteku u najčešće korištenom Wavefront .obj formatu.

Iako se izlazna datoteka može uvesti izravno u Slic3r PE, vjerojatno ćete imati potrebu za osnovnim čišćenjem modela prije printanja (ispisa).

Povećana rekonstrukcija

Recimo da nešto skenirate kod kuće, nešto što je kreiralo vaše dijete, npr. vašu omiljenu akcijsku figuru ili vašu gitaru. Napravili ste 60-ak slika i rekonstrukcija se odvija dobro. Međutim, postoji iznimka odnosno jedno područje koje niste dobro snimili, tako da su neke slike odbačene i sada nedostaje mnogo detalja u ovom dijelu modela.

Zahvaljujući softveru Meshroom možete jednostavno snimiti više slika i dodati ih postojećoj rekonstrukciji. Malo je reći da je ova značajka korisna.

Bitno je da ne pomičete objekt između pojedinih serija slika. Ako ga premjestite, više nećete moći povećati rekonstrukciju.

Kada želite fotografirati kako biste ispunili loše snimljeno područje, bolje je snimiti oko 5 do 10 fotografija. Možete pokušati ispuniti više područja odjednom. Nove slike odgovaraju originalnom nizu fotografija. To znači da dodavanje novih slika može čak uzrokovati da prethodno odbačene slike odgovaraju novom nizu odnosno seriji.

Kad god dodate niz slika postojećoj rekonstrukciji, u uređivaču grafikona prikazat će se nova grana. Trebate samo izračunati sve do čvora StructureFromMotion (desnom tipkom miša kliknite na njega i odaberite Compute), što je obično prilično brzo. Čim postane zelen, možete dvaput kliknuti na čvor da ažurirate pregled u prozoru 3D preglednika.

image
Slika 3. Čvorovi

imageKada mislite da imate dovoljno slika za konačnu rekonstrukciju, desnom tipkom miša kliknite na krajnji desni čvor (Texturing) i pritisnite Izračunaj. To može biti dugotrajno, pa je zaista korisno izvršiti cjelokupnu rekonstrukciju samo na posljednjoj grani s uključenim svim slikama.

Slika 4: Tekstura koja se koristi u 3D rekonstrukciji

Obnova uživo

Najzabavniji način rada primjenom fotogrametrije. Postavili ste mapu koju će pratiti Meshroom. Svaki put kada kopirate slike u ovu mapu, one se automatski obrađuju i dodaju u rekonstrukciju. Postupno snimajte više fotografija i promatrajte kako se model poboljšava. Na kraju možete dovršiti izračun cijelog teksturiranog modela zahvaljujući softveru Meshroom.

Prva serija slika trebala bi uključivati ​​najmanje 10-20 slika i usredotočiti se na opći oblik objekta. Ako snimite cijelu prednju stranu objekta, a zatim i cijelu stražnju stranu, vjerojatno ćete morati stvoriti most između ovih serija slika. To možete učiniti snimanjem fotografija koje se kreću od prednje prema stražnjoj strani u malim koracima.

Postavke

  1. Odaberite View – Live Reconstruction,
  2. Postavite Image folder i najmanji broj slika, koje će biti obrađene u svakom koraku (ovo postavite iznad 4),
  3. Kliknite na Start na ploči Live Reconstruction,
  4. Počnite kopirati slike u mapu slika.

Minimalni broj slika je prema zadanim postavkama podešen na 4, ali preporučujemo da snimite još više slika u svakoj seriji.

Da biste stvorili teksturirani model, morate ponovno povezati zadnji čvor StructureFromMotion s čvorom PrepareDenseScene.

  1. Desnom tipkom miša kliknite na poveznicu između prvog čvora StructureFromMotion i PrepareDenseScene,image
  2. Odaberite Remove,
  3. Povucite novu poveznicu s najnižeg izlaza StructureFromMotion na ulaz PrepareDenseScene,
  4. Desnom tipkom miša kliknite na Texturing i pritisnite Compute.

Slika 5. Kip (statua)

Priprema modela za tisak – zatvaranje rupa i popravak

Gotovo sve mreže koje su stvorene 3D skeniranjem ili fotogrametrijom imaju rupe na dnu. Na našu sreću treba nam ravna podloga koju bi bilo lako postaviti na površinu za ispis, tako da se može napraviti jednostavna ravnina izrezana u Meshmixeru, Blenderu, 3D builderu (ili bilo kojem drugom programu koji vam je draži).

Također, opseg modela bit će prilično nasumičan, stoga se nemojte iznenaditi ako je model nakon uvoza zaista mali. Samo ga povećajte.

Zaključak

Zahvaljujući Meshroomu, fotogrametrija je sada lakša nego ikad. Izlazne mreže nisu spremne za trenutni ispis, ali uz nekoliko manjih ispravaka možete dobiti apsolutno zapanjujuće rezultate kako za 3D grafiku tako i za industriju igara/animacije. Pri tome je sve otvorenog koda. Naravno, postoje i druga rješenja koja donose iste ili čak bolje rezultate. Jasno je da sve ovisi o našim potrebama odnosno o svrsi uporabe 3D modela.

Literatura

  1. Best Photogrammetry Software in 2021 (b.d.) Na all3dp.com. Dostupno na internetskoj adresi: https://all3dp.com/1/best-photogrammetry-software/ (pristupljeno 10.11.2021.).
  2. Photogrammetry (b.d.) Na en.wikipedia.org. Dostupno na internetskoj adresi: https://en.wikipedia.org/wiki/Photogrammetry (pristupljeno 13.11.2021.).
  3. Photogrammetry 2 – 3D Scanning simpler, better than ever! (b.d.) Na blog.prusaprinters.org. Dostupno na internetskoj adresi: https://blog.prusaprinters.org/photogrammetry-2-3d-scanning-simpler-better-than-ever_29393/ (pristupljeno 10.11.2021.).