Street Generation for City Modeling Xavier Dcoret Franois

  • Slides: 42
Download presentation
Street Generation for City Modeling Xavier Décoret, François Sillion i. MAGIS GRAVIR/IMAG - INRIA

Street Generation for City Modeling Xavier Décoret, François Sillion i. MAGIS GRAVIR/IMAG - INRIA 1

Foreword ü A Computer Graphics point of view – Graphic artists – Game developers

Foreword ü A Computer Graphics point of view – Graphic artists – Game developers – Researchers ü A work in 2 parts – A framework – An algorithm 2

Motivations ü City Modeling is a growing field of interest – Game and Leisure

Motivations ü City Modeling is a growing field of interest – Game and Leisure » Virtual environments are widely used » Need for larger environments » Cities are natural and appealing large environments – Analysis and Simulation » Pedestrians or traffic flow » Wave transportation 3

Motivations ü Creating the virtual model is a tedious task – Realistic model »

Motivations ü Creating the virtual model is a tedious task – Realistic model » Model it by hand: long and costly » Reconstruct it automatically: not working yet – Semi-realistic model » Procedural modelling » Map is exact, geometry is approximative 4

Motivations ü Creating the virtual model is a tedious task – Realistic model »

Motivations ü Creating the virtual model is a tedious task – Realistic model » Model it by hand: long and costly » Reconstruct it automatically: not working yet – Semi-realistic model » Procedural modelling » Map is exact, geometry is approximative No existing tool 5

Overview of the tool ü Retrieve the 2 D footprints of buildings – Aerial

Overview of the tool ü Retrieve the 2 D footprints of buildings – Aerial photographs – Existing 2 D models ü Procedurally generate buildings – Grammar, library of shapes – Style information provided by a designer (GIS) ü Generate streets – Retrieve the street network – Generate geometry 6

Overview of the tool ü Retrieve the 2 D footprints of buildings – Aerial

Overview of the tool ü Retrieve the 2 D footprints of buildings – Aerial photographs – Existing 2 D models ü Procedurally generate buildings – Grammar, library of shapes – Style information provided by a designer (GIS) ü Generate streets – Retrieve the street network – Generate geometry Our contribution 7

Input & Output Polygonal footprints Input Output + 8

Input & Output Polygonal footprints Input Output + 8

Principle ü We use a median axis (skeleton) ü Seems natural for roads –

Principle ü We use a median axis (skeleton) ü Seems natural for roads – Goes in between 2 buildings – Goes approximately at equal distance 9

Use of a median axis Polygonal footprints Street graph 10

Use of a median axis Polygonal footprints Street graph 10

Robustness Issues (1) ü Input sensitivity Ideal case Noise effect Expected result 11

Robustness Issues (1) ü Input sensitivity Ideal case Noise effect Expected result 11

Robustness Issues (2) ü Artefacts Unwanted branches requiring post-processing 12

Robustness Issues (2) ü Artefacts Unwanted branches requiring post-processing 12

Our approach ü A topological phase – Partition the map into » Streets »

Our approach ü A topological phase – Partition the map into » Streets » Crossings 13

Our approach ü A topological phase – Partition the map into » Streets »

Our approach ü A topological phase – Partition the map into » Streets » Crossings 14

Our approach ü A topological phase – Partition the map into » Streets »

Our approach ü A topological phase – Partition the map into » Streets » Crossings 1 2 5 7 9 4 6 8 3 15

Our approach ü A topological phase – Partition the map into » Streets »

Our approach ü A topological phase – Partition the map into » Streets » Crossings ü A geometric phase – The graph is shaped to a correct position – Optimisation with constraints 1 2 5 7 9 4 6 8 3 16

Our approach ü A topological phase – Partition the map into » Streets »

Our approach ü A topological phase – Partition the map into » Streets » Crossings ü A geometric phase – The graph is shaped to a correct position – Optimisation with constraints 1 2 5 7 9 4 6 8 3 17

Topological Phase ü Sample the footprints with extra vertices 18

Topological Phase ü Sample the footprints with extra vertices 18

Topological Phase ü Sample the footprints with extra vertices 19

Topological Phase ü Sample the footprints with extra vertices 19

Topological Phase ü ü Sample the footprints with extra vertices Delaunay triangulate the samples

Topological Phase ü ü Sample the footprints with extra vertices Delaunay triangulate the samples 20

Topological Phase ü ü ü Sample the footprints with extra vertices Delaunay triangulate the

Topological Phase ü ü ü Sample the footprints with extra vertices Delaunay triangulate the samples Ignore edges joining samples of a same building 21

Topological Phase ü ü ü Sample the footprints with extra vertices Delaunay triangulate the

Topological Phase ü ü ü Sample the footprints with extra vertices Delaunay triangulate the samples Ignore edges joining samples of a same building 22

Topological Phase ü ü Sample the footprints with extra vertices Delaunay triangulate the samples

Topological Phase ü ü Sample the footprints with extra vertices Delaunay triangulate the samples Ignore edges joining samples of a same building Take the dual of edges (Voronoï diagram) 23

Topological Phase ü ü ü Sample the footprints with extra vertices Delaunay triangulate the

Topological Phase ü ü ü Sample the footprints with extra vertices Delaunay triangulate the samples Ignore edges joining samples of a same building Take the dual of edges (Voronoï diagram) Construct a graph from the edges Crossings Streets 24

Our approach ü A topological phase – Partition the map into » Streets »

Our approach ü A topological phase – Partition the map into » Streets » Crossings ü A geometric phase – The graph is shaped to a correct position – Optimisation with constraints 9 25

Geometric Phase ü Place sample median points 26

Geometric Phase ü Place sample median points 26

Geometric Phase ü Place sample median points 27

Geometric Phase ü Place sample median points 27

Geometric Phase ü Place sample median points 28

Geometric Phase ü Place sample median points 28

Geometric Phase ü Place sample median points 29

Geometric Phase ü Place sample median points 29

Geometric Phase ü Place sample median points 30

Geometric Phase ü Place sample median points 30

Geometric Phase ü Place sample median points ü Compute minimum width 31

Geometric Phase ü Place sample median points ü Compute minimum width 31

Geometric Phase ü Place sample median points ü Compute minimum width ü Greedily place

Geometric Phase ü Place sample median points ü Compute minimum width ü Greedily place a valid polyline in between 32

Geometric Phase ü Place sample median points ü Compute minimum width ü Greedily place

Geometric Phase ü Place sample median points ü Compute minimum width ü Greedily place a valid polyline in between 33

Geometric Phase ü ü Place sample median points Compute minimum width Greedily place a

Geometric Phase ü ü Place sample median points Compute minimum width Greedily place a valid polyline in between Split the polyline in – Segments – Curves Curve Segments 34

Robustness ü A topological phase – Partition the map into » Streets » Crossings

Robustness ü A topological phase – Partition the map into » Streets » Crossings - Based on distance - Robust to footprints’shape - Solves input sensitivity ü A geometric phase – The graph is shaped to a correct position – Optimisation with constraints - Based on optimisation - Robust to footprints’shape - Solves artefacts 35

Results 36

Results 36

Street Generation ü Generate streets – Retrieve the street network » Topology » Simple

Street Generation ü Generate streets – Retrieve the street network » Topology » Simple primitives – Generate geometry » Match buildings boundaries » Connect correctly at crossings 37

Workflow ü Generate streets – Retrieve the street network » Topology » Simple primitives

Workflow ü Generate streets – Retrieve the street network » Topology » Simple primitives – Generate geometry » Match buildings boundaries » Connect correctly at crossings 38

Generating geometry Use library of parametric models to build segments and curves Triangulate the

Generating geometry Use library of parametric models to build segments and curves Triangulate the remaining border 39

Parametric model 40

Parametric model 40

Results 41

Results 41

Conclusion & Future Works ü We can generate geometry from a 2 D map

Conclusion & Future Works ü We can generate geometry from a 2 D map of buildings – Work in 2 D 1/2 ü Write more parametric modules ü High level features extractions – Avenues – Squares ü Generate coherent trafic signs 42