c’t 01-02/2026
VPN-diensten veilig en privé?
Cover van
3D-model maken met je smartphone Meshroom

3D-model maken met je smartphone met gratis software

Gewapend met een smartphone en de gratis software Meshroom kun je van bijna alles een 3D-model maken: standbeelden, mensen enzovoort. Het gemaakte 3D-model kun je weer gebruiken voor een 3D-printer of in andere programma’s.

Lees verder na de advertentie

Een uit alle mogelijke hoeken genomen fotoserie volstaat om van objecten een 3D-model te maken op de pc. Zo kun je de echte wereld stukje bij ­beetje nabouwen en in virtuele scènes verwerken of een mini-kopie maken met een 3D-printer.

Software downloaden en testen

De automatische modus van de opensource software Meshroom voltooit het 3D-scannen zelfstandig na een druk op de knop. De kunst zit het hem vooral in het fotograferen. Waar je daarbij op moet letten, leer je verderop.

Tip!

De laptop waar kracht, creativiteit en AI samenkomen!
De laptop waar kracht, creativiteit en AI samenkomen!

Ontworpen voor creators en professionals: configureer jouw eigen ASUS ProArt P16 nu.

Je kunt Meshroom (voor Linux/Windows) snel uitproberen met de demo-dataset Monstree. Die bevat iPhone-­foto’s van een Meshroom-ontwikkelaar en werken in elk geval goed. De complete set bestaat uit 41 foto’s, maar je moet rekening houden met meerdere uren verwerkingstijd. Met de kleinere sets die beperkt zijn tot drie of zes foto’s duurt het hele proces maar enkele minuten.

Systeemeisen Meshroom

Meshroom is beschikbaar als portable 64-bit versie voor Windows en Linux. Beide kun je dus meteen starten en hoeven niet op het systeem te worden geïnstalleerd. Je hebt wel een redelijk zware pc en een voor CUDA geschikte grafische kaart van Nvidia nodig. Downloads en info vind je ook bij ontwikkelaars AliceVison. Mesh­room kan draaien met 16 GB, maar als je minder hebt zul je met een lagere kwaliteit genoegen moeten nemen of aanzienlijk meer computertijd moeten inplannen.

We raden ook een snelle ssd met veel vrije ruimte aan en een beetje moderne quadcoreprocessor van de laatste vijf jaar. Wees er echter op voorbereid om je pc nachtdiensten te laten draaien. Omzetten van de foto’s naar een 3D-model (fotogrammetrie) is een rekenintensief proces, zeker als je hele gebouwen digitaliseert

Foto's van je smartphone

De kwaliteit van een scan hangt af van de kwaliteit van je foto’s. Die moeten zo scherp, ruisvrij en gelijkmatig mogelijk belicht zijn. Het belangrijkste is dat het onderwerp zo scherp mogelijk en zonder storingen wordt vastgelegd. Je kunt onscherpte onder meer voorkomen door gebruik te maken van een statief en korte sluitertijden. Kleine diafragma’s en korte brandpuntsafstanden helpen om een slechte scherptediepte te voor­komen. Daarom zijn ook apparaten met kleinere sensors, zoals smartphones, geschikt voor het maken van de ­foto’s.

Je moet het onderwerp goed belichten of gewoon naar buiten gaan in goede lichtomstandigheden: bewolkte of enigszins nevelige dagen.  Schakel voor het fotograferen alle ‘beeldverbeteringen’ uit, zoals contrastverbetering of bokeh-­effecten. Stel bovendien vaste waarden in voor de witbalans, gevoeligheid (ISO) en sluitertijd, zodat de kleuren en de helderheid van de foto’s tijdens het maken niet veranderen. Op je smartphone kun je die parameters instellen met de Pro-modus van de camera-app. Zo niet, installeer dan Open Camera of een soortgelijke app met handmatige modus.

Het gewenste bestandsformaat voor het importeren van foto’s is bij Meshroom TIFF, PNG of JPEG. Als je ­camera alleen foto’s in JPEG-formaat kan maken, stel je het hoogste kwaliteitsniveau in.

Fotoserie maken

Bij het maken van de foto’s moet je ervoor zorgen dat de afzonderlijke foto’s een bepaalde overlap hebben. Meshroom zoekt naar overeenkomstige kenmerken in aangrenzende ­foto’s. Een minimum van 50 procent overlapping wordt aanbevolen (tot hooguit 80 procent).

Je kunt een perfecte dekking bereiken door met de camera om het object heen te cirkelen en foto’s te maken. Bij grotere objecten kun je meerdere omwentelingen maken, waarbij de camera bij elke omwenteling iets hoger wordt gehouden. Je kunt het resultaat verder verbeteren door een paar halve cirkels toe te voegen die hier loodrecht op staan (over het object heen). Soms moet je daarbij improviseren. Het kan soms handiger zijn om het object te fotograferen langs een spiraalvormig pad.

Vermijden: beweging en reflecties

Voorbijgangers of voertuigen die maar op een of twee foto’s te zien zijn, kan Meshroom bij de berekeningen probleemloos wegfilteren. Maar vegetatie die wappert in de wind, reflecties en doorzichtige materialen zoals glas veroorzaken problemen.

Vooral voor beginners zijn voorwerpen met veel oneffenheden en details het meest geschikt (zoals verweerde standbeelden). Het aangetaste oppervlak verstrooit niet alleen het licht, maar zorgt ook voor veel fijne details waardoor Meshroom de verschillende beelden goed kan herkennen. Monochrome oppervlakken zonder details, zoals een wit tafelblad, zijn daarentegen erg lastig. Een stuk krantenpapier als ondergrond helpt dan, omdat de letters en woorden die daaruit worden gevormd perfect bij elkaar passen.

Je hoeft geen onscherpe of andere mislukte foto’s uit de serie te verwijderen, de software filtert onbruikbare beelden automatisch. Mesh­room markeert die met een door­gestreept rood camerasymbool.

Meshroom instellen

Wanneer je Meshroom voor de eerste keer opent, zie je een relatief leeg grijs vlak. Sleep je foto’s vanuit de bestandsbrowser naar het linker venster Images Pane, herkenbaar aan de tekst ‘Drop Images Files/Folders’. Meshroom genereert dan previews van die beelden en signaleert het einde van het importeren door een startknop in verzadigd groen weer te geven midden boven in het programmavenster.

Elke voorbeeldfoto bevat een klein rond icoontje in de linkerbovenhoek dat eruit ziet als een lens­opening. Als dat groen gekleurd is, heeft Meshroom het cameramodel herkend en alle benodigde metadata in het beeld gevonden. Als het lenssymbool rood is, ontbreekt er te veel metadata om een reconstructie uit te voeren. Als het pictogram geel is, ontbreekt er informatie – meestal de breedte van de sensor. Meshroom haalt die waarde meestal uit zijn eigen database met behulp van de camera­modelgegevens in de EXIF-data van de foto’s.

Cameragegevens toevoegen

Als je camera niet op de lijst staat, schat Mesh­room de breedte van de sensor in – wat meestal ­acceptabele resultaten oplevert. Om de maxi­male kwaliteit uit je scan te halen, voeg je handmatig de juiste sensorbreedte toe. Om dat te doen, klik je op de drie stippen in de rechterbovenhoek van de ­Images Pane en vervolgens op ‘Edit Sensor Data­base’. Dat toont instructies om je cameramodel toe te voegen. Je kunt de parameters van het merk en het model achterhalen door met de muis over het lens­symbool bij een van de afbeeldingen in de Images Pane te bewegen – Meshroom geeft dan de EXIF-­gegevens weer.

Om de sensorbreedte in millimeters te achter­halen, is een kort internetonderzoek meestal voldoende. Je zou dat ook kunnen uitlezen met de app Camera2­Info. Bij multi-lens smartphones moet je helaas kiezen voor een enkele camera omdat Meshroom tot nu toe slechts één lens per apparaat ondersteunt. Voor de iPhone X, die al in de database geregistreerd is, wordt bijvoorbeeld de sensorbreedte van de hoofdcamera gebruikt.

 


Blijf op de hoogte van de nieuwste workshops en tips! Schrijf je in voor de nieuwsbrief:

Ontvang elke week het laatste IT-nieuws, de handigste tips en speciale aanbiedingen.

 

Laatste instellingen

Voordat je op de startknop drukt, moet je nog twee instellingen wijzigen in het deelvenster Graph Editor Properties Pane in de rechterbenedenhoek. Dat toont alle stappen van de enkele beeldreeks tot het afgewerkte 3D-model, waarbij elke stap wordt weergegeven door een eigen node (knooppunt).

  1. Selec­teer de laatste node met de naam Texturing en stel de ‘Unwrap Method’ in het venster rechts beneden in op LSCM. Die optie voorkomt dat Meshroom meerdere texturen voor het 3D-model creëert. Anders kunnen die zelfs de huidige grafische kaarten met 8 of 11 GB grafisch geheugen overweldigen.
  2. In de Meshfiltering-node aan de linkerkant activeer je ‘Keep only the largest mesh’. Dat bespaart je later een stap in Blender omdat alleen het aaneengesloten object wordt opgeleverd en geen andere niet-aangesloten fragmenten en artefacten. Een mooi neveneffect daarvan is dat texturen door het verminderen van de geometrie een hogere resolutie kunnen krijgen. Daardoor wordt een deel van de kwaliteitsvermindering van de vorige stap weer gecompenseerd. Als je object na het verwerken van de scan ontbreekt omdat een stuk achtergrond iets te groot is, moet je die optie weer uitschakelen.

In de Meshing-node aan de linkerkant vind je nog meer belangrijke instellingen. ‘Max Points’ beperkt de grootte van de uiteindelijke mesh, ‘Max Input Points’ het aantal punten dat in aanmerking wordt genomen. De standaardwaarden zijn bedoeld voor pc’s met 16 GB of meer RAM. Als je systeem minder heeft, moet je die waarde dienovereenkomstig aanpassen.

3D-model maken

Wanneer je op de groene startknop drukt, vraagt Mesh­room of je het project wilt opslaan. Dat is raadzaam, omdat de software niet alleen alle tussenresultaten opslaat, maar in een submap ook het afgewerkte 3D-model.

Als de foto’s van voldoende kwaliteit zijn en voldoende overlappen, zal Meshroom na een tijdje een 3D-model laten zien –maar dat kan best wel enkele uren duren. Je kunt de voortgang volgen met de balk onder de start- en stopknoppen. Je kunt het proces op elk gewenst moment onderbreken en hervatten met de knoppen Stop/Start.

3D-model bekijken

Tijdens het maken presenteert de 3D-viewer al een eerste visualisatie van de scène. Hij markeert de berekende posities van de camera en toont kenmerken die op verschillende foto’s als gekleurde punten zijn herkend. In het beste geval geeft die puntenwolk al een aardig idee van het gescande object.

Je kunt de weergave draaien door te klikken en te slepen met de linker muisknop. Als je de Shift-toets ingedrukt houdt, kun je de scène naar links, rechts, omhoog en omlaag bewegen.

Meshroom is succesvol afgerond als zowel de balk bovenin als de startknop groen oplichten. In het venster met de 3D-weergave, de 3D Viewer, zou de knop Load Model moeten verschijnen. Een klik daarop laadt het voltooide 3D-model in de weer­gave. De nog zichtbare punten en camera’s kunnen met het oogsymbool naast StructureFromMotion worden verborgen of getoond.

Finetunen in Blender

Je hebt nu met succes een 3D-model gemaakt van een serie foto’s. Waarschijnlijk bevat dat echter enkele storende elementen. Meshroom biedt geen hulpmiddelen voor het bewerken van een 3D-model, zoals het selecteren en verwijderen van gebieden. Je kunt het object extern verfijnen, bijvoorbeeld met het gratis Blender.

Omdat Meshroom de modellen niet expliciet opslaat of exporteert, gebruik je eerst het OBJ-bestand uit de cache. Dat kan worden geopend door met de rechtermuisknop te klikken op de Texturing Node in de Graph Editor en de opdracht Open Folder te kiezen. De bestandsbrowser toont dan een cryptisch genoemde map met één of meer PNG-bestanden en een OBJ-bestand. Als er geen bestandsbrowser wordt geopend, kun je de locatie vinden in het rechtervenster, dat de knooppuntinstellingen weergeeft, helemaal onderaan onder Uitvoermap. Daar kun je het pad kopiëren.

Open dan Blender en verwijder de Default Cube met behulp van X of Backspace. Selecteer ‘File / Import / Wavefront (.obj)’ en open het OBJ-bestand uit de eerder gevonden map. Meer over het finetunen in Blender en andere tips voor Blender lees je in c’t magazine.

3D-print, render of VR

Je kunt het object in een Blender-scène plaatsen en die renderen. Voor gebruik in augmented-reality, virtual-reality, op internet of een computerspel, moet je het object nog ­reduceren of remeshen en vervolgens de texturen en details toevoegen.

Voor 3D-printen heeft het model een wand­dikte nodig, die je in Blender kunt toevoegen met behulp van de ­Solidify Modifier. Als je het liever massief wilt printen, moet je het object sluiten, want het heeft nog steeds minstens één opening aan de onderkant. De meeste toepassingen voor 3D-printer bieden daar automatische functies voor. Als alternatief kun je de gaten zelf dichten met behulp van de Meshmodelling-functies van Blender. We hebben de belangrijkste beschreven in onze Blender-workshops.

(informatie afkomstig uit het artikel van Gottfried Hofmann en Marco den Teuling, c’t magazine 9/2020, p. 116)

De allernieuwste uitgave
VPN-diensten veilig en privé?
  • VPN-diensten: privacy en veiligheid getest
  • Digitale tracking en nieuwe opslagtechnieken
  • Praktische tests van hardware én software
Bestel nu
De allernieuwste uitgave

Tip!

De laptop waar kracht, creativiteit en AI samenkomen!
De laptop waar kracht, creativiteit en AI samenkomen!

Ontworpen voor creators en professionals: configureer jouw eigen ASUS ProArt P16 nu.

0

Praat mee

Abonneer
Laat het mij weten wanneer er
0 Reacties
oudste
nieuwste
Inline feedbacks
Bekijk alle reacties

Inspiratie in je mailbox

Blijf bij op IT-gebied en verbreed je expertise. Ontvang elke week artikelen over de laatste tech-ontwikkelingen, toepassingen, nieuwe hard- en software én ontvang tips en aanbiedingen.

Loginmenu afsluiten