-from procedural to data-driven
TRANSCRIPT
![Page 1: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/1.jpg)
05.11.18
1
Modelling Plants- from procedural to data-driven
Oliver DeussenUniversity of Konstanz, GermanySIAT, Chinese Academy of Science, Shenzhen
Konstanz
Where I am from…
![Page 2: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/2.jpg)
05.11.18
2
Ways of modelling trees
• Rule-based modeling– Uses formal grammars or other mechanisms– Very general but hard to control
• Procedural modeling– Specialized parameterizable algorithms– Quite specific but easy to control
• Today: data driven
![Page 3: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/3.jpg)
05.11.18
3
Lindenmeier-Systems
• Formal grammars• contrast to Chomsky-Grammars: parallel execution– All possible applications of rules to a string are
produced in parallel
Lindenmayer Systems
Example:V = {f,F,+,-}ω = F--F--FP = { F::=F+F--F+F}
derived text:• F--F--F• F+F--F+F--F+F--F+F--F+F--F+F• F+F--F+F+F+F--F+F--F+F--F+F+F+F--F+F--F+F--F+F+F+F--F+F--
F+F--F+F+F+F--F+F--F+F--F+F+F+F--F+F--F+F--F+F+F+F--F+F
![Page 4: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/4.jpg)
05.11.18
4
Lindenmayer Systems
• next step: graphical interpretation• Prusinkiewicz: turtle metapher– attach pen to turtle, move turtle on the drawing plane– turtle has state (position, angle)– turtle moves straight into current direction until changes
are made
Lindenmayer Systems
• F: move turtle in current direction about given (fixed) length l, draw a line
• f: move turtle in current direction about given (fixed) length l without drawing
• +: increase angle about given amount δ• -: decrease angle about given amount δ• [ store current graphics state on stack• ] read (and pop) graphics state from stack
![Page 5: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/5.jpg)
05.11.18
5
Lindenmayer Systems
Þ 3D Objects: 3d angles, triangulation
Lindenmayer Systems
![Page 6: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/6.jpg)
05.11.18
6
1967 E. Cohen: the first model
Procedural modeling of plants
![Page 7: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/7.jpg)
05.11.18
7
Procedural modeling of plants
1977: Honda, Fischer: three-dimensinoal models
Procedural modeling of plants
1985: Reeves and Blau (Pixar)
• feature film „The adventures of Andrew and Wally B.�
• simple branching structure
• particle systeme for leaves (a particle for each leaf)
• appropriate rendering creates very realistic look
![Page 8: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/8.jpg)
05.11.18
8
Prozedurales Modellieren von Pflanzen
![Page 9: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/9.jpg)
05.11.18
9
Procedural modeling of plants
1985: Bloomenthal, geometric modeling of trees
![Page 10: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/10.jpg)
05.11.18
10
Procedural modeling of plants
1986: Oppenheimer, fractal tree model (recursive)
Procedural modeling of plants
1988 de Reffye et al.
• biologically oriented growth• buds: probability to grow, rest or die• basis of AMAP / NatFX
![Page 11: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/11.jpg)
05.11.18
11
Procedural modeling of plants
Procedural modeling of plants
1994: Holton
• allometric rules obtained from da Vinci:• area of father branch equals sum of areas of children
(Sv=S1+..+S4)
Sv
S1
S2
S3
S4
![Page 12: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/12.jpg)
05.11.18
12
Procedural modeling of plants
1994: Holton
Modeling idea:• branches consist of pipes, that connect leaves with roots• # of pipes determines width and branching angle• creates proportionen of da Vinci
Procedural modeling of plants
![Page 13: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/13.jpg)
05.11.18
13
Procedural modeling of plants
1995: Weber & Penn:
• procedural model with 50 para-meters
• allows maximum freedom formodeling
• done for military simulations
![Page 14: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/14.jpg)
05.11.18
14
![Page 15: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/15.jpg)
05.11.18
15
Procedural Modeling of Plants
1989: Greene, winding plants
2008: Ivy Generator (Thomas Luft)
![Page 16: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/16.jpg)
05.11.18
16
Xfrog§ First system for practically producing plant models§ Combines rule-based and procedural generation
§ Objects are described by a graph§ Nodes: procedural elements
§ Geometry production§ multiplication
§ Links: simple form of rule-basis§ Addition§ multiplication
![Page 17: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/17.jpg)
05.11.18
17
William Latham
Modeling a plant
![Page 18: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/18.jpg)
05.11.18
18
Description of a tree
![Page 19: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/19.jpg)
05.11.18
19
MPI Saarbrücken
Kryzstoph Plonka
![Page 20: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/20.jpg)
05.11.18
20
![Page 21: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/21.jpg)
05.11.18
21
Jan-Walter Schliep
Jan-Walter Schliep
![Page 22: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/22.jpg)
05.11.18
22
Holger Schömann
Image: Thomas Jarosch
![Page 23: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/23.jpg)
05.11.18
23
Image: Kizo
Data Driven Tree Modeling
![Page 24: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/24.jpg)
05.11.18
24
Main Branching Structure
Foliage Shapes
Species-related Foliage Details
++
Data-driven Tree Description
Y. Livny, S. Pirk, Z. Cheng, F. Yan, O. Deussen, D. Cohen-Or, B. Chen: Texture-Lobes for Tree ModelingACM Transactions on Graphics (Proceedings of SIGGRAPH 2011), 30(4), Article No. 53
Data-driven Tree Description
Real Tree Point Set Lobe-based Representation 3D Reconstruction
ClassificationSpecies Patches
![Page 25: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/25.jpg)
05.11.18
25
Given Tree DataSkeleton [Livny2010]Diameters
diameter < average point distance
Lobe-based Representation
α-Shapes
Lobe-based Representation
![Page 26: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/26.jpg)
05.11.18
26
branchlets patch libary synthesized lobe geometry
Lobe details (foliage)
Near FarDistanceto Camera
VBO
Leaves
Control-/Evaluation Shader
Geometry Shader
Final Mesh
Input
Branches: Mesh Generation [Bloomenthal 1985]
Leaf Data (Lobe Reconstruction)
GPUCPU
Skeletal Graph
Mesh Construction
![Page 27: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/27.jpg)
05.11.18
27
Results: Bischofia Trichocarpa
Results: Delonix
![Page 28: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/28.jpg)
05.11.18
28
Results: Willow Tree
Other species
![Page 29: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/29.jpg)
05.11.18
29
10,000 Distinctive Models
20 Different Species 152 MB (2 MB + 150 MB)for the entire scene
20 x 100 kB (Species Information)
10,000 x 15 kB (Lobe-based Representation)
Populating an Urban Landscape
73
![Page 30: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/30.jpg)
05.11.18
30
Problems so far:
• The captured models are static– no growth, no interaction
• Users don‘t want to model directly– Plants should react to enivronment– Variety of objects should be created with minimal user
intervention
Adaptive Data-driven Plant Models
S. Pirk, O. Št'ava, J. Kratt, M. Abdul-Massih, B. Neubert, R. Měch, B. Beneš, O. Deussen: Plastic Trees: Interactive Self-Adapting Botanical Tree ModelsACM Transactions on Graphics, (Proceedings of SIGGRAPH 2012), 31(4), Article No. 50
![Page 31: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/31.jpg)
05.11.18
31
?
Bending
Pruning
Phototropism
Gravitropism
Backward modeling
![Page 32: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/32.jpg)
05.11.18
32
branch direction with tropismsh
wsd0
hypothetical branch without tropism
ws
ph(1-ws)t
direction of tropism
Backward modeling
How much light was cast onto a part of a tree?
shadow volume
lobe
à required for bending/pruning
Backward modeling
![Page 33: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/33.jpg)
05.11.18
33
Temporal Light Conditions
propagate leaf clusters towards the root
adjust graph and clusters
leaf clusters cast shadows (shadow volumes)
leaf cluster movement
Backward modeling
only bending only pruning
Interaction with obstacle
![Page 34: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/34.jpg)
05.11.18
34
Original Model Bending Pruning ResultBending + Pruning
Intermediate Representation Final Rendering
![Page 35: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/35.jpg)
05.11.18
35
5x faster
![Page 36: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/36.jpg)
05.11.18
36
Inverse Procedural Modelling
Problem:
• Inverse modelling (find rules for a given geometry) is NP-hard
• works only if we reduce the parameter space
• Thus: parametric rules are given, parameters areoptimized
![Page 37: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/37.jpg)
05.11.18
37
![Page 38: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/38.jpg)
05.11.18
38
Animating the Morphogenesis of Trees
![Page 39: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/39.jpg)
05.11.18
39
S. Pirk, T. Niese, O. Deussen, B. Neubert:Capturing and Animating the Morphogenesis of Polygonal Tree Models,ACM Transactions on Graphics (Proceedings of Siggraph Asia), Volume 31 Issue 6, November 2012,
Idea:
• Plastic trees: – simple backward computation for interaction– Not applicable to create younger/older trees
• Now: – more elaborate computation for growth animation– allows for dynamically changing the age of the models
![Page 40: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/40.jpg)
05.11.18
40
Skeletal Graph
- Growth Rate- Branch Age- Gravelius Order
Measuring the Order of Branches
Graveliuls Order: • Ordering method for identifying
hierarchies.• Determine main trunk based on Angle
between branches.• Also considering length and thickness of a
branch.
d1
d2
d3
l2
l1
Level 3
Level 1
Level 2
![Page 41: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/41.jpg)
05.11.18
41
Pipe Model Theory
Plant forms emerge form vascular systems.- units connecting the leaves to the root.- provides us with branch radii.
[Shinozaki et al. 1964]
Angle/Radii Interpolation
![Page 42: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/42.jpg)
05.11.18
42
Intermediate Results
Missing Branches and Leaves
Adding Missing Structures
Branches Missing Additional Branches
![Page 43: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/43.jpg)
05.11.18
43
Utilizing Self-Similarity
Chain Order 1
α
α
ÞCopy and Move Branches
Chain Order 2
Add Branches
Animation with additional branches removed over time.
Animation with additional branches.
Utilizing Self-Similarity
![Page 44: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/44.jpg)
05.11.18
44
Crown Ratio
Crown Ratio
Overlap Region
General idea:
Add Geometry where no information was available in the original model.
Remove Geometry during animationto maintain plausibility and to eventually reach the input.
Final Animation of Growth
No Additional Branches
AdditionalBranches
Additional Branches and Pruning
![Page 45: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/45.jpg)
05.11.18
45
Growth-based EditingInput
Parameters
Tim
e
Growth-based Editing
Individual Growth of Branches
![Page 46: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/46.jpg)
05.11.18
46
Various Species
Different Inputs
Xfrog
<Model type="ModelC"><Age val="35"/><Thickness factor="2.0" min_thickness="0.00847911"/><Branching_Angle mean="45" deviation="5"/><Main_Angle mean="0" deviation="8"/><Roll_Angle mean="130" deviation="3"/><Tropism photo="0.05" gravi="-0.01" level_factor="0.001"/><Gravity val=".09009" max_bending="0.89"/><Apical_Dominance val="5.59" age_factor="0.979996997" dist_factor="0.5"/><Apical_Control val="5.5" age_factor="0.91" levl_factor="0.91"/><Pruning strength="0.48" low_branch_pruning="5.5" translucency="0.3"/><Internode length="0.55" age_factor="0.95"/> <Buds numLateral="1" lateral_killP="0.01" apical_killP="0.000"/><Buds_Light lateral_factor="0.03" apical_factor="0.5001"/><Resources cost="4.25"/></Model>
L-Systems LiDAR
![Page 47: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/47.jpg)
05.11.18
47
LimitationsÞ so far only monopodial trees
Limitations
Specific growth behavior
Unrealistic States
![Page 48: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/48.jpg)
05.11.18
48
Interactive wind-based modeling
![Page 49: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/49.jpg)
05.11.18
49
Summary
• Early years: pure modelling approaches– L-Systems (rule-based grammars)– Procedural systems
• Modelling of ecosystems– Biological simulation (individuals that interact)
• Data-driven approaches– Efficient storage of captured models– Making static models dynamic– Inverse procedural modeling
![Page 50: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/50.jpg)
05.11.18
50
![Page 51: -from procedural to data-driven](https://reader033.vdocument.in/reader033/viewer/2022050512/6271e8e2d282ec5dd6635c78/html5/thumbnails/51.jpg)
05.11.18
51