plantengroei
use case
Doel: het simuleren van accurate 3D-planten en -vruchten voor gebruik in de training van een AI-algoritme.
Er is een overlap tussen procedurele generatie en artificiële intelligentie. Naast het gebruik van AI om procedurele 3D-modellen samen te stellen, kan procedurele 3D gebruikt worden om AI sneller te trainen. AI-algoritmes hebben namelijk een grote hoeveelheid geannoteerde data nodig om het algoritme aan te leren wat het moet doen. Procedurele 3D kan daarbij helpen omdat het een enorme hoeveelheid aan geannoteerde beelden met variaties van het object kan genereren.
In deze use case werd het voorbeeld gebruikt van een AI-algoritme dat rijpe vruchten dient te leren herkennen, specifiek frambozen. Hiervoor werd het groeiproces in kaart gebracht en iedere stap opgedeeld om zo het proces van bloem tot overrijp fruit te simuleren. De grootte en vorm van de drupelets, de individuele besjes die samen een framboos vormen, de haartjes en de kleur zijn factoren die gedurende het groeiproces worden aangepast. Er werd rekening mee gehouden om het procedurele systeem open genoeg te houden zodat andere bessen met een gelijkaardige manier van groeien ook kunnen worden gegenereerd. Zoals je op de foto kan zien, werden ook braambessen met dit algoritme gegenereerd.
In een tweede fase werd de volledige plant gesimuleerd. Dat kan op drie manieren worden aangepakt, via recursie, L-systemen of space colonization. Voor de generatie van de plant werd de paper TreeSketch (S. Longay et al.) gebruikt. Net zoals in de natuur is er een systeem waarbij de takken in competitie met elkaar gaan voor de bestaande plaats. Sommige takken zullen dus veel groeien en andere zullen afsterven. In het systeem is een parameter aanwezig die aangepast hoe sterk de boom van de zwaartekracht weg groeit, of hoe veel de takken naar beneden zullen hangen. Een tweede parameter bepaalt welke delen van de boom meer kansen krijgen om te groeien en dus niet zullen afsterven.
