1 Architecture based modeling of buildings Filip Van den Borre.

28
1 Architecture based modeling of buildings Filip Van den Borre

Transcript of 1 Architecture based modeling of buildings Filip Van den Borre.

Page 1: 1 Architecture based modeling of buildings Filip Van den Borre.

1

Architecture based modeling of buildings

Filip Van den Borre

Page 2: 1 Architecture based modeling of buildings Filip Van den Borre.

2

Overview

Objective GeoAutomation data set Fit ground plane model Fit facade planes Style grammar rjMCMC Future work

Page 3: 1 Architecture based modeling of buildings Filip Van den Borre.

3

Objective

Model buildings Without human interaction Input: images Semantic model: knowledge about the structure of

the building and his elements. Use architectural grammar: set of rules that can be

used to describe the building model Repeated elements -> one enhanced texture for each

Page 4: 1 Architecture based modeling of buildings Filip Van den Borre.

4

Objective

Procedural Modeling of Buildings. [Mueller et al.] SIGGRAPH 2006

CGA shape: shape grammar for the procedural modeling of CG architecture. low cost -> computer games, movies, ... efficient unprecedented level of detail

Page 5: 1 Architecture based modeling of buildings Filip Van den Borre.

5

Example PRIORITY 1: 1: footprint ; S(1r,building height,1r) facades T(0,building height,0) Roof(”hipped”,roo f angle){ roof } PRIORITY 2: 2: facades ; Comp(”sidefaces”){ facade } 3: facade : Shape.visible(”street”) ; Subdiv(”X”,1r,door width*1.5){ tiles | entrance } : 0.5 ; Subdiv(”X”,door width*1.5,1r){ entrance | tiles } : 0.5 4: facade ; tiles 5: tiles ; Repeat(”X”,window spacing){ tile } 6: tile ; Subdiv(”X”,1r,window width,1r){ wall | Subdiv(”Y”,2r,window height,1r){ wall | window | wall } | wall } 7: window : Scope.occ(”noparent”) != ”none” ; wall 8: window ; S(1r,1r,window depth) I(”win.obj”) 9: entrance ; Subdiv(”X”,1r,door width,1r){ wall | Subdiv(”Y”,door height,1r){ door | wall } | wall } 10: door ; S(1r,1r,door depth) I(”door.obj”) 11: wall ; I(”wall.obj”) PRIORITY 3: ...... 14:

Page 6: 1 Architecture based modeling of buildings Filip Van den Borre.

6

My mission

PRIORITY 1: 1: footprint ; S(1r,building height,1r) facades T(0,building height,0) Roof(”hipped”,roo f angle){ roof } PRIORITY 2: 2: facades ; Comp(”sidefaces”){ facade } 3: facade : Shape.visible(”street”) ; Subdiv(”X”,1r,door width*1.5){ tiles | entrance } : 0.5 ; Subdiv(”X”,door width*1.5,1r){ entrance | tiles } : 0.5 4: facade ; tiles 5: tiles ; Repeat(”X”,window spacing){ tile } 6: tile ; Subdiv(”X”,1r,window width,1r){ wall | Subdiv(”Y”,2r,window height,1r){ wall | window | wall } | wall } 7: window : Scope.occ(”noparent”) != ”none” ; wall 8: window ; S(1r,1r,window depth) I(”win.obj”) 9: entrance ; Subdiv(”X”,1r,door width,1r){ wall | Subdiv(”Y”,door height,1r){ door | wall } | wall } 10: door ; S(1r,1r,door depth) I(”door.obj”) 11: wall ; I(”wall.obj”) PRIORITY 3: ...... 14:

Page 7: 1 Architecture based modeling of buildings Filip Van den Borre.

7

Data of GeoAutomation

Spin-off company of Visics System of precise mapping measurements by means

of mobile mapping Vehicle with 10 cameras 3D feature points clouds Geo-referenced by reference to ground control

points Gravity vector g || z-axis x, y, z in meters

Page 8: 1 Architecture based modeling of buildings Filip Van den Borre.

8

Different cameras

Page 9: 1 Architecture based modeling of buildings Filip Van den Borre.

9

Point cloud of Sint-Truiden

Page 10: 1 Architecture based modeling of buildings Filip Van den Borre.

10

Close-up

Page 11: 1 Architecture based modeling of buildings Filip Van den Borre.

11

Preprocessing

Feature points located at great distances from the cameras have a low precision

They create noise with respect to other points When only the correct points are retained, there

are not enough of them to provide proof for possible models

Remove the feature points if distance > 20 m

Page 12: 1 Architecture based modeling of buildings Filip Van den Borre.

12

Page 13: 1 Architecture based modeling of buildings Filip Van den Borre.

13

Page 14: 1 Architecture based modeling of buildings Filip Van den Borre.

14

Split data up into voxels

No relation between feature points at a certain distance from each other

Easier to access & analyse the data Voxel size has the same order of magnitude as

the minimal size of the structures we want to find in the first steps (In the first steps we want to locate the ground and the facades without the door and windows structures).

Page 15: 1 Architecture based modeling of buildings Filip Van den Borre.

15

Page 16: 1 Architecture based modeling of buildings Filip Van den Borre.

16

Fit ground level

Assumption: visual point with the smallest z-value = point on the ground plane

If (lowest point ≠ ground plane) then Point is an outlier There are no feature points on the ground plane

Carry out a median filtering to correct errors (lowest point ≠ ground plane)

Page 17: 1 Architecture based modeling of buildings Filip Van den Borre.

17

Fit ground level

Page 18: 1 Architecture based modeling of buildings Filip Van den Borre.

18

Fit wall planes

Assumption: Walls // z-axis Remove ground points

Find median point (xm,y

m) in each voxel

Give each point a gaussian weight with μ= ||pi-m|| and σ = 1 meter

Weighted Singular Value Decomposition (SVD) on each voxel

Page 19: 1 Architecture based modeling of buildings Filip Van den Borre.

19

Fit wall planes

Problems: Corner (two walls coming together) No walls

Plane-shaped objects like cars, vans, fences, . . . Street furniture: trees, (traffic) lights, traffic signs, . . .

Page 20: 1 Architecture based modeling of buildings Filip Van den Borre.

20

Fit wall planes

Solutions: The separate walls of a corner are found by looking at

the walls in the neighboring voxels Errors caused by plane-shaped objects will be

removed by projecting the images on the planes or by using car-detectors, ...

The singular values give us an idea of how plane – alike a given point cloud is

Results with S1/S

2 < thresholds are

removed

Page 21: 1 Architecture based modeling of buildings Filip Van den Borre.

21

Fit wall planes

Facade planes <-> all other objects No feature points behind the facade plane Count all points after a plane If (#points ~ 0) -> facade plane

Page 22: 1 Architecture based modeling of buildings Filip Van den Borre.

22

Fit wall planes

Page 23: 1 Architecture based modeling of buildings Filip Van den Borre.

23

Fit wall planes

Page 24: 1 Architecture based modeling of buildings Filip Van den Borre.

24

Textured model

Page 25: 1 Architecture based modeling of buildings Filip Van den Borre.

25

Textured model

Page 26: 1 Architecture based modeling of buildings Filip Van den Borre.

26

Textured model

Page 27: 1 Architecture based modeling of buildings Filip Van den Borre.

27

Textured model

Page 28: 1 Architecture based modeling of buildings Filip Van den Borre.

32

Future work

Join facade planes to a 3D shape Find smaller 3D structures like doors & windows Find description/model based on rules Perform in-painting of hidden structures based on

the resulting model and the images . . .