Wizards and Point Clouds

Tom Broersen

Op 23 juni was ik aanwezig bij de 2017 editie van de Geomatics Day. Dit evenement werd georganiseerd door de master opleiding ‘Geomatics for the Built Environment’, waar ik zelf vorig jaar ben afgestudeerd. Het evenement vond plaats in het prachtige gerenoveerde gebouw van de Faculteit Bouwkunde aan de Technische Universiteit Delft en was gericht op het in contact brengen van studenten Geomatics met andere studenten, alumni, en geo-informatie professionals uit het vakgebied. Tensing was één van de sponsoren van het evenement, en kreeg in ruil daarvoor de kans om een presentatie te geven gedurende de middag.

Als ex-Geomatics student had ik namens Tensing de eer om deze presentatie te geven. Omdat het thema van Geomatics Day 2017, ‘Point Clouds and the Internet of Things’ luidde, besloot ik om in deze presentatie terug te pakken op een workshop die Martin Koch in mei had gegeven, eveneens op de TU Delft bij de opleiding Geomatics. Deze workshop ging over het gebruik van FME en web sockets, waarbij ik zelf als toeschouwer aanwezig was. Het viel mij op dat de studenten met veel vragen kwamen over het gebruik van FME voor het werken met en verwerken van puntenwolken. Gedurende mijn tijd als student bij deze opleiding ben ik ook betrokken geweest bij een aantal projecten waarbij puntenwolken verwerkt moesten worden. Destijds hebben wij daar geen FME voor gebruikt, dus deze vragen riepen bij mij ook interesse op; is FME geschikt voor het verwerken van puntenwolken? Ik besloot om hier wat onderzoek naar te doen, en hier vervolgens op de Geomatics Day over te presenteren met als pakkende titel ‘Wizards and Point Clouds’.

Aangezien ik zelf niet ervaren was met het verwerken van puntenwolken in FME, lag daar voor mij een serieuze opgave. Gebruik maken van verscheidene zoekmachines, en met nuttige tips van Safe Software heb ik toch een mooie presentatie in elkaar kunnen zetten. In deze blog post geef ik een korte samenvatting van deze presentatie, en toon ik de algemene functionaliteit van FME voor het werken met puntenwolken, en presenteer ik een paar interessante use cases.

Data types en data transformaties

Een ding waar FME bekend om staat, is om het grote aantal data types dat het ondersteunt (300+). Als we praten over de hoeveelheid bestand formaten op het gebied van puntenwolken, dan worden op zijn minst de volgende formaten ondersteund:

  • LAS (LAZ, zLAS)
  • XYZ
  • ASTM E57
  • Oracle Spatial
  • Pointools POD
  • RIEGL Laser Scan Database RDB
  • Terrasolid Terrascan
  • Z+F LaserControl ZFS
  • CARIS Spatial Archive
  • Autodesk ReCap
  • Cesium 3D Point Cloud

Het simpele feit dat FME zoveel verschillende data formaten ondersteunt, is natuurlijk een heel erg sterke eigenschap. Dit maakt het niet alleen gemakkelijk om puntenwolken in vele verschillende formaten in te laden in FME, maar ook om deze puntenwolken te combineren met andere typen data. Om vervolgens bewerkingen uit te voeren op de ingeladen puntenwolken, beschikt FME over honderden zogenaamde transformers. Hiervan is een groot deel ook geschikt voor het gebruik met puntenwolken. Daarnaast zijn er nog een stuk of 20 transformers die specifiek zijn ontworpen voor het gebruik met puntenwolken. En als dit alles nog niet genoeg functionaliteit is, dan zijn er ook nog 'wrapper transformers' beschikbaar voor LAStools op de FME Hub. Alles bij elkaar vormt dit geheel een uitgebreide functionaliteit voor het werken met puntenwolken.

Een aantal use cases

Op basis van bovenstaande kunnen we al veilig concluderen dat FME een uitgebreide functionaliteit heeft voor het werken met puntenwolken. Het spreekt voor zich dat, gebruik makende van deze functionaliteit, een hele hoop simpele en meer complexe use cases uitgewerkt kan worden. Een aantal interessante, en ook veelgebruikte, use cases staan beschreven compleet met demo’s op de website van Safe.com. Je kan dan onder andere denken aan:

  • Maken van een 3D model voor gebruik in ArcGIS, door het combineren van LiDAR scans met verscheidene andere typen data, en het generen van DEMs en TINs.
  • Simuleren van overstromingen door het punt-voor-punt uitvoeren van wiskundige vergelijkingen
  • Het genereren van Minecraft werelden. FME beschikt over een Minecraft writer, welke het mogelijk maakt om je LiDAR data om te vormen naar een Minecraft wereld, daarbij gebruik maken van FME. Een voorbeeld staat hier beschreven.

Indruk maken op de studenten

Het is natuurlijk fantastisch dat er zulke mooie use cases te vinden zijn over het gebruik van FME met puntenwolken, maar voor de presentatie die ik ging doen op de Geomatics Day wilde ik iets laten zien wat ik daadwerkelijk zelf had gemaakt. Dat is natuurlijk veel interessanter om naar te kijken! Aangezien ik niet enorm veel tijd had voor de voorbereiding, besloot ik om twee relatief simpele use cases voor te bereiden waarin ik gebruik heb gemaakt van lokale LiDAR data van het gebied van de TU Delft campus.

Geef kleur aan je puntenwolken!

In veel gevallen bevat de ruwe puntenwolk, bijvoorbeeld afkomstig van LiDAR metingen, geen enkele kleur informatie. Het spreekt voor zich dat zulke puntenwolken erg suboptimaal zijn voor visualisatie doeleinden, alle punten zijn namelijk gewoon wit of zwart of welke kleur je er ook voor kiest. Een optie is om de puntenwolk te kleuren aan de hand van de classificatie (indien beschikbaar) of aan de hand van de hoogtewaarden, maar dit geeft nog steeds een behoorlijk abstract beeld.

afb1-ruwe-lidar-puntenwolk-zonder-kleur

Figuur 1. Ruwe LiDAR puntenwolk zonder kleur.

afb2-Een-orthophoto-van-hetzelfde-gebied

Figuur 2. Een orthophoto van hetzelfde gebied.

Gelukkig maakt FME het erg makkelijk om kleur toe te voegen aan je puntenwolken door deze te combineren met een orthophoto van hetzelfde gebied met de PointCloudOnRasterComponentSetter. Alles wat je hier voor nodig hebt is de volgende workspace:

afb3-workspace

Het resultaat is een prachtige gekleurde puntenwolk waarin individuele gebouwen en andere objecten zeer goed herkenbaar zijn. Een dergelijke puntenwolk is natuurlijk veel meer geschikt voor visualisatie doeleinden!

afb4-resultaat

 

Bekijk je puntenwolken door middel van Potree

Er bestaan heel veel verschillende programma’s waarmee puntenwolken gevisualiseerd kunnen worden, niet in de laatste plaats de uitstekende FME Data Inspector. Een andere viewer welke specifiek is ontworpen voor het gebruik met puntenwolken is Potree. Dit is een viewer gebaseerd op WebGL, welke het mogelijk maakt om puntenwolken simpelweg in je browser te bekijken. Gebruik maken van Potree is in FME erg simpel, door het inlezen van een puntenwolk en vervolgens gebruik te maken van de LAStools laspublish wrapper transformer.

afb-5-potree

Uitvoeren van deze workspace resulteert in een folder met een aantal bestanden, waaronder een .html bestand:

afb6-verkenner

Nu kun je simpelweg dit html bestand openen in je browser (bijvoorbeeld Microsoft Edge) om de ingeladen puntenwolk te bekijken in de Potree viewer:  

afb7-browserview

Het mooie hieraan is dat je deze puntenwolk lokaal kunt bekijken op je eigen systeem, maar je kunt de bestanden ook uploaden naar je webspace zodat anderen de puntenwolk via het internet kunnen bekijken. Natuurlijk kan het uploaden van deze bestanden naar je webspace ook met FME gedaan worden, wat het mogelijk maakt om je puntenwolk te verwerken en automatisch uploaden zodat anderen hem kunnen bekijken.

Ik ben overtuigd…

De functionaliteit en use cases die ik in dit blog beschreven heb, vormen natuurlijk slechts een basis van wat er mogelijk is op het gebied van puntenwolken in FME. Ik ben er echter van overtuigd dat FME een erg goede tool is voor het gebruik met puntenwolken, en ik ga er zeker meer tijd in steken om dit verder te leren, en hopelijk in de toekomst een echt project hiermee te kunnen doen…

Bekijk de onderstaande links voor meer informatie over het gebruik van FME voor puntenwolken, en over FME licenties. Voor thuisgebruik is FME in veel gevallen gratis te proberen!

LiDAR Data Integration & Processing

Getting Started with Point Clouds

Home Use License for FME Desktop

Meer weten over dit onderwerp?

Plan dan direct een vrijblijvende afspraak met onze specialist!