Elvebask og vektfordeling

Jeg og min kollega, Nils Marius, ble spurt om vi kunne være interessert i å studere en bask som befinner seg i Lavangen i forbindelse med vårt arbeid med samisk båtbygging. Vi tok turen dit, og hadde med oss fotoutstyret i håp om å kunne lage en fotogrammetrimodell av båten. Jeg ønsket å dokumentere baskens innside, så vel som utside. Basken stod først på kjølen på bakken slik at vi fikk avfotografert innsiden. Mens dette pågikk passet vi også på å få med flater fra båtens utside i bildeserien.

Ovenfor ser vi hvordan flater fra både baskens inn- og utside er representert. Dette er gjort for å kunne sy sammen bildene fra de to sidene til en helhetlig modell. Dersom man ønsker ulike områder sydd sammen til en modell bør en sørge for at områdene overlappes i bildematerialet, noe som kan være greit å ta høyde for allerede i planlegginga ev prosessen.

Alle bildene er overeksponert et helt stopp pga sollyset bortenfor objektet. Dette er gjort for å få gode lesninger på objektet - om omgivelsene blir overeksponerte gjør ikke det noe.
Når fotograferinga av baskens innside var ferdig, ble denne snudd og satt på et par bukker slik at vi fikk godt med lys på utsiden av skroget. Deretter ble utsiden fotografert.

Bildematerialet bestod dermed av to scenarier. Ett med basken på rett kjøl, og ett med basken opp ned. Felles for stort sett alle bildene som ble tatt er at de også avbilder omgivelsene rundt objektet, og disse endret seg altså midt i bildeserien. Bildematerialet kan dermed ikke prosesseres slik at man får en ferdig modell uten videre. Her har man et par opsjoner; - man kan prosessere de ulike scenariene hver for seg i såkalte chunks, for så å sy disse sammen etterpå, - eller man kan maskere bort alle områder i bildene som ikke representerer selve objektet. Slik maskering er svært tidkrevende når man har 177 bilder som skal behandles - jeg valgte derfor å prosessere scenariene hver for seg for å sy disse sammen etterpå.

Etter å ha prosessert de to scenariene hver for seg hadde jeg to høyoppløste punktskyer med punkter som kun representerte objektet - den ene av innsiden og litt av utsiden, og den andre av utsiden. Planen var at programvaren skulle plassere disse i forhold til hverandre. Dette viste seg imidlertid vanskelig. Programvaren kan gjøre dette på flere måter, bl.a ved hjelp av felles bilder eller ved at den sammenligner punkskyene og finner fellestrekk for så å sy den sammen. Sistnevnte er nokså tidkrevende i forhold til den med felles bilder. Jeg prøvde begge metoder, og fikk til slutt sydd sammen punktskyene etter en god del plunder.

Programvaren slet med å sy sammen punktskyene fordi basken hadde endret fasong etter at vi snudde den opp ned. Når den stod på rett kjøl hvilte den på to klosser under kjølen, når vi snudde den opp ned endret vektfordelingen seg nok til at formen forandret seg bittelitt. Imidlertid nok til at programvaren fikk problemer med å se sammenhengen mellom de to punktskyene.


Ovenfor kan du se hvordan modellen ble seende ut etter å ha blitt satt sammen av to såkalte chunks. Legg merke til at geometrien på utsiden ved stevnene virker upresis ettersom de to punktskyene var ulike her.

For å unngå problemet jeg her har vist, burde jeg først og fremst sørget for at basken endret fasong minst mulig når den ble snudd. Programvaren gjør sitt beste for å få presis modell utfra bildematerialet per chunk, derfor er det best å prosessere alt bildematerialet under ett - i èn chunk. Etter at modellen var ferdig kom jeg på et triks. Agisoft Photoscan lar nemlig brukeren maskere alle bildene etter at en har generert en modell/mesh. Programvaren vet da hva som representerer objektet i bildene, og kan ta vare på denne informasjonen mens alt annet fjernes. Funksjonen heter "Import masks", og en har her flere valg - bl.a å generere maskering utifra modellen/meshen. Jeg kjørte denne funksjonen, og satt igjen med et ferdig maskert bildemateriale som kun representerte selve objektet. Deretter ble alle de 177 maskerte bildene kjørt i en enkelt chunk med følgende resultat:


Vi ser at modellen her ser vesentlig bedre ut en den første.

Modellen var altså noe trangfødt. Dette skyltes at objektet endret litt fasong, og at jeg ikke tok meg bryet med å maskere alle de 177 bildene for å kjøre disse i en chunk. Denne erfaringa har imidlerid gitt meg en idè som jeg skal teste ut ved en senere anledning, og som jeg tror kan spare meg for bildemaskeringsarbeidet. Den går ut på å batch-prosessere alle chunker til mesh-stadiet. Deretter renskes de ulike meshene for alt som ikke representerer objektet. Så genereres maskeringer utifra meshene. Og til slutt samles alle bilder med maskeringer i en chunk som prosesseres på vanlig måte. Det høres kanskje omfattende ut, men ved å bruke batchprosessering vil det eneste manuelle arbeidet jeg trenger å gjøre, være å renske meshene - og det er jo fort gjort.