Hoppa till innehåll
Meny
  • Hem
  • Dokument
  • Om Mig
Geosupportsystem

360° foto till COPC.laz

Publicerat den 2026-11-022026-11-02

COPC.laz formatet är numera defacto standard i svenska GEO sammanhang. Lantmäteriet levererar nämligen sina punktmolnsdata i COPC via STAC, så eventuella tveksamheter kring vilket format som bör användas borde vara eliminerade.

För att samla in data så kan man använda mängder av olika typer av sensorer. Allt från extremt precisa laserskanners, till enklare fotogrammetri med öppna verktyg. Här tar vi och kikar på det ”billigare” alternativet.
Fotogrammetri kräver i stort sett bara att man har tillgång till en kamera av någorlunda bra kvalité. En annan skillnad är att man måste välja när man samlar in data. Fotogrammetri är mycket mera beroende av yttre förhållanden än laserskanning, men kan man vänta och välja ett bra tillfälle så kan det bli ganska bra resultat.

Den här gången samlar jag in bilder med en GoPro Max2 360° kamera på en teleskopisk selfie-pinne. Jag väljer en mulen söndag då både väder och minimum av störande element ger så bra förutsättningar som möjligt.

Bilder fångas med 2 sekunders intervall under normal promenadfart. Jag saktar ned något när jag passerar sådant jag tror är viktigt och försöker ha koll på kameran så att det inte blir ”luckor” i bildfångsten. Jag lyckas nästan med detta, men så länge man kommer ihåg att kolla resultatet innan man åker hem så kan man alltid komplettera med det som man uppenbart har bommat att fotografera.

Det blev 572 bilder som sparades i en egen katalog på datorn hemma. Insamlingen från första till sista bilden tog drygt 20 minuter. Hela katalogen lästes sedan in i Spirula Studio, som är ett väldigt nytt program för att i första hand skapa Gaussian Splats men som har en ganska robust funktion för att även producera punktmoln direkt från 360° bilder och video. Jag gör en hel del justeringar av inställningarna för att det ska passa för den produkt jag vill ha. Här gäller det att prova sig fram och jag har exempelvis märkt att genom att kräva en vinkel på minst 5° mellan bilder för att generera punkter så kan ”sämre” punkter reduceras. Standard är annars 1° men då genererades väldigt många ”bruspunkter” som det var tvunget att filtrera bort i efterhand. Det kan fortfarande finnas behov av filtrering, men det kan göras med lite mindre aggressiva inställningar.

Spirula Studio är riktigt trevligt att jobba med när processen väl körs. Standard är att programmet hela tiden visar vad som pågår i en 3D vy. Att se hur modeller skapas i realtid är riktigt coolt. SpirulaStudio är inte det snabbaste program jag använt för att skapa punktmoln, men det är värt mycket att slippa delsteg för att generera platta bilder från 360. Dessutom är funktionerna för automatisk maskning av himmel och namngivna objekt skrämmande bra. Det är bara att kryssa i att man vill maskera människor, bilar, nummerskyltar, cyklar, hundar, etc och göra inställningar för vilken sannolikhet som ska tillämpas för att skapa maskerna. Inte helt perfekt, men ändå det bästa jag sett i de verktyg jag använt så här långt.

Medan programmet jobbar är det bara att luta sig tillbaka och se hur antalet punkter stadigt tickar uppåt i takt med att bilder bearbetas. Eller så kan man gå och göra något annat ett tag. Med ”vassare” hårdvara så går processen snabbare och det som är avgörande är GPU prestanda och mängden VRAM. Även CPU och vanligt RAM spelar naturligtvis också in. På min dator tog bearbetningen ungefär 3 timmar och detta genererade ett punktmoln med nära 100 miljoner punkter. I det här fallet så hoppade jag över Gaussian Splatting, det får bli senare.

Allt höll på att gå tokigt på grund av att diskutrymmet höll på att ta slut när programmet behövde avlasta bearbetningsdata på slutet av beräkningen. Projektet behövde över 100 GB utrymme för mellanlagring av alla delsteg, så var medveten om att det inte bara är mycket RAM och VRAM som krävs. När beräkningen är klar så rensas mycket av dessa tillfälliga data.

Det punktmoln som genereras använder GPS koordinater från bilderna för att sätta rätt skala och orientering på punktmolnet, men det använder inte de fullständiga koordinaterna för punktmolnets koordinater. Däremot så finns en textfil med punktmolnets referenspunkts exakta koordinater beräknade utifrån GPS data. Genom att läsa in punktmolnet i CloudCompare så kan man använda koordinaten från textfilen för att sätta global shift för punktmolnet och spara om filen. Punktmolnet behöver ändå konverteras då SpirulaStudio sparar i *.PLY, och CloudCompare är närmast en Schweizisk armékniv i punktmolns-sammanhang.

Normalt så brukar jag få justera en hel del både i CloudCompare och när det gäller finjustering av koordinater, men det här blev väldigt bra. Det beror antagligen på att det tog ett tag från första till sista bild och att programmet räknar ut ett medel för alla positioner. Efter justeringen i CloudCompare så läste jag in filen i QGIS med Lantmäteriets terrängdata (50k) i bakgrunden.

Detta bekräftar att positionen är ganska hyfsad. Jag kan däremot inte bedöma höjd i denna vyn, så i stället lägger jag till LM skogliga laserdata för Eksjö och dessa nya konverterade COPC data i min Potree viewer.

Här blir det tydligt att modellen ”lutar” lite. På torget närmast i bilden ovan är punktmolnet ca 50 cm för lågt och i bortre delen av Södra Storgatan är punktmolnet ca 1 meter för högt. Detta går såklart att fixa i CloudCompare, men jag är ändå imponerad av hur bra resultatet blev utan några som helst justeringar utöver ett flytt av global shift.
Resultatet i övrigt då. Är det något att ha? En laserskanning blir självklart mycket, mycket bättre. Men det är ändå imponerande vad man kan göra med en kamera för några tusenlappar, 20 minuter fotografering, öppen källkod och lite tålamod. För många användningsområden så är säkert detta resultat fullt tillräckligt, medan det för andra inte är i närheten av godkänt. Kan man vänta på bra förutsättningar för fotogrammetri så är detta inte alls dåligt

Lämna ett svar Avbryt svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *

     Mastodon  

Senaste kommentarer

  • klakar om Stildelning för QGIS
  • Daniel om Stildelning för QGIS
  • Gustav G om Mäta kurvradier med GNSS
  • Sur om Varför är stiftpennor så långa?
  • QGIS 3.44 LTR – Geosupportsystem om Zorin på gammal laptop

Arkiv

Meta

  • Logga in
  • Flöde för inlägg
  • Flöde för kommentarer
  • WordPress.org
©2026 Geosupportsystem | WordPress-tema av Superbthemes.com