Download presentation

Presentation is loading. Please wait.

Published byLuke Ruiz Modified over 2 years ago

1
1 Preprocessing of Large databasesV for Interactive visualisation Xavier Décoret iMAGIS-GRAVIR / IMAG i MAGIS est un projet commun CNRS - INPG - INRIA - UJF

2
2 Summary Context Visibility computation –Previous work –Contributions Level of details –Previous Work –Billboard clouds Conclusion

3
3 Summary Context Visibility computation –Previous work –Contributions Level of details –Previous Work –Billboard clouds Conclusion

4
4 Context Virtual environments –Video game, virual tourism, simulations User walk freely through the modl The computer is in charge of generating images of what user « sees » Frequent refresh (25 / sec)

5
5 Feeling of immersion Complex environments –Large spatial extent –Highly detailed Realistic effects –Shadows –Ligthing effets (reflection) –Appearance High computation time

6
6 User actions User actions Context Rendering System Rendering System Database images Model complexityBounded computation time Preprocess to speed-up Reusing results Optimizing representations

7
7 Hidden Faces Removal Vertex projections Face rasterisation View frustum

8
8 Image Vertex projections Face rasterisation Hidden Faces Removal

9
9 Image Pixel Vertex projections Face rasterisation Hidden Faces Removal

10
10 Image Vertex projections Face rasterisation Hidden Faces Removal

11
11 Image Vertex projections Face rasterisation Hidden Faces Removal

12
12 Image Vertex projections Face rasterisation Hidden Faces Removal

13
13 Image Vertex projections Face rasterisation Hidden Faces Removal

14
14 Image Pixel = Color Depth depth Vertex projections Face rasterisation Hidden Faces Removal

15
15 Image depth > depth Vertex projections Face rasterisation Z-buffer [Cat74] Hidden Faces Removal

16
16 Consequences Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

17
17 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

18
18 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

19
19 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

20
20 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

21
21 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

22
22 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

23
23 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

24
24 Consequences Image Complex 3D model ) lot of calculations Redundancy in computations Unadapted computations

25
25 Possible solutions Visibility computations –Finding what is hidden –Prevent unecessary rasterization Level of Details –Several level of modelisation –Using the level fitted to objects distance Alternative rendering

26
26 Summary Context Visibility computation –Previous work –Contributions Level of details –Previous Work –Billboard clouds Conclusion

27
27 Visibility computation Reject as soon as possible what will not contribute to an image Two approaches –Online ) for current view point –Offline ) for a region of space Difficulty: umbrae and penumbrae fusion

28
28 Umbrae fusion Viewpoint Shadow volume Buildings (top view)

29
29 Shadow volume Viewpoint Buildings (top view) Umbrae fusion

30
30 Shadow volume Viewpoint Buildings (top view) Umbrae fusion

31
31 Viewpoint Buildings (top view) Umbrae fusion

32
32 Penumbrae fusion Viewcell Buildings (topview)

33
33 Penumbrae fusion Viewcell Buildings (topview)

34
34 Visibility Lot of previous work [Dur99] Classification [SPS74] Image SpaceObject Space Hierarchical Frustum Culling [GBW90] Shaft culling [HW91] Shadow volumes [CT97] Bloqueurs convexes [CZ98] Convex Vertical Prisms [DM01] Volumetric visibility [SDSD00] Portals [ST91] Hierarchical Z-buffer [GKM93] Hierarchical Occlusion Map [ZMH97] 2D1/2 Occlusion maps [WS99] Extended projections [DDTP00] Line Space subdivision [BWW01] Portals [LG95]

35
35 Complexe problem No exact solution ) being conservative Umbrae fusion more or less done Object space ) extended visibility Image space ) fusion (implicit) Combining approaches

36
36 Summary Context Visibility computation –Previous work –Contributions Level of details –Previous Work –Billboard clouds Conclusion

37
37 Difficulty Visibility from-point easy –Z-buffer Visibility from region difficult Reducing to a from-point problem

38
38 Blocker shrinking Proposed by [WWS00] Viewcell Object Blockers

39
39 Object Shrunk blockers Center of viewcell Proposed by [WWS00] Blocker shrinking

40
40 O Proposed by [WWS00] Blocker shrinking

41
41 O { P such as B r (P) O } r-shrinking Proposed by [WWS00] Blocker shrinking

42
42 O V M Generalisation to convex viewcells Shrinking of occludees V Proposed by [WWS00] Blocker shrinking

43
43 Occluder/occludees shrinking Viwcell Object Blockers

44
44 Shrunk blockers Center of viewcell Shrunk object Image taken fom viewcells center with shrunk objects Same treatment to occluders/occludees One pass algorithm Occluder/occludees shrinking

45
45 Formalisation (1) Dilatation (Minkowski sum) Set of points O Set of vectors X O © XO © X { P+x, P 2 O and x 2 X }

46
46 Formalisation (2) Erosion Set of points O Set of vectors X O ª XO ª X { P such as 8 x 2 X, P+x 2 O }

47
47 Theorem If a ray (VM) is blocked by O ª X with X convex, then: Any ray (VM) is blocked by O with: V 2 {V} © X and M 2 {M} © X V M V M O ª XO ª X O

48
48 Approximative erosion Exact erosion is hard to compute We can have approximations M E R C R E D I 1 6 O C T O B R E

49
49 Difficulty M E R C R E D I 1 6 O C T O B R E O ª XO ª X Erosion by X O ª XO ª X Internal erosion ½ O ª XO ª X External erosion ½ Exact erosion is hard to compute We can have approximations

50
50 Mise en oeuvre Building an occlusion map with internal erosions Testing external erosions against the map Objects+erosions

51
51 Mise en oeuvre Building an occlusion map with internal erosions Testing external erosions against the map

52
52 Modification de lalgorithme Carte docclusion Building an occlusion map with internal erosions Testing external erosions against the map

53
53 Modification de lalgorithme Carte docclusion Building an occlusion map with internal erosions Testing external erosions against the map

54
54 Modification de lalgorithme Carte docclusion Building an occlusion map with internal erosions Testing external erosions against the map

55
55 Modification de lalgorithme Carte docclusion Building an occlusion map with internal erosions Testing external erosions against the map

56
56 Modification de lalgorithme Carte docclusion Visibles Building an occlusion map with internal erosions Testing external erosions against the map

57
57 Modification de lalgorithme Carte docclusion Visibles Building an occlusion map with internal erosions Testing external erosions against the map

58
58 Modification de lalgorithme Carte docclusion Visibles Building an occlusion map with internal erosions Testing external erosions against the map

59
59 Modification de lalgorithme Carte docclusion Visibles Building an occlusion map with internal erosions Testing external erosions against the map

60
60 Modification de lalgorithme Carte docclusion Visibles Hidden Building an occlusion map with internal erosions Testing external erosions against the map

61
61 Pros & cons Two pass of rendernig (map + test) Tests can be done par graphic card Linear complexity Linear memory cost Objects 2 pass Approximative erosion Exact erosion 1 pass Visibility pre-computation

62
62 Approximative erosion Voxelisation of object –Volumetric information [SDDS00] –Suitable representation [DM01] Erosion on voxels –Simple –Robust and fast

63
63 Voxelisation

64
64 Voxelisation

65
65 Voxelisation

66
66 Erosion of voxels by a cube = © = ©©

67
67 O ª ( X © Y ) = ( O ª X ) ª Y = ª ª ª ª Erosion of voxels by a cube

68
68 Erosion 1D Of half a voxel Direction of erosion Topological change

69
69 Erosion 1D Of half a voxel Direction of erosion Of less than a half Topological change Topology preserved

70
70 = ª ª ª ª Aligned axis Erosion of voxels by a cube

71
71 Erosion of voxels by X convex Cellule X voxels If X ½ Y then O ª Y ½ O ª X ª Internal erosion ) ª External erosion )

72
72 Demo Erosion of voxels Visibility pre-computation

73
73 Conclusion Formalism and new theorem –Érosion of occluders and occludees Per object voxelisation –Optimized orientation –Do no discretize empty spaces Working in image space –Implicit fusion of umbrae –Acceleration Hardware : graphic cards Software : combining with other visibility algorithm

74
74 Ext step… We know what is visible How to display it?

75
75 Summary Context Visibility computation –Previous work –Contributions Level of details –Previous Work –Billboard clouds Conclusion

76
76 Level of details Mesh simplification Clusterisation [RB93,LT97] Hierarchical Dynamic Simplification [LE97] Decimation of Triangle Meshes [SZL92] Re-tiling [Tur92] Progressive Meshes [Hop96,PH97] Quadric Error Metrics [GH97] Out of Core Simplification [Lin00] Re-tiling [Tur92] Voxel based reconstruction [HHK+95] Multiresolution analysis [EDD+95] Superfaces [KT96], face cluster [WGH00]

77
77 Limitations Constraints on models Erreur contrôle –Simplification enveloppes [CVM96] –Permission Grids [ZG02] –Image driven [LT00] Handling of attributes (textures and colors) –Integration to the metric[GH98][Hop99] –Re-generation [CMRS98,COM98] Extreme Simplification –Sillouhette Clipping [SGG+00]

78
78 Alternative rendering Image based rendering –Lightfield,Lumigraph [LH96,GGRC96] –Imposteurs [DSSD99] –Relief Textures [OB00] Point based rendering –Surfels [PZBG00] –Pointshop 3D [ZPKG02]

79
79 Summary Context Visibility computation –Previous work –Contributions Level of details –Previous Work –Billboard clouds Conclusion

80
80 Billboards cloud New representation Used for extreme simplification

81
81 Billboard Classical solution [RH94] Generalising to many planes Automating synthesis

82
82 Overview Approaching shape by a set of plane Projecting model on those planes ) textures Textures interleaving replace the object

83
83 Principle polygonal 3D model

84
84 Principle Simplification by planes

85
85 Principle Moving vertices Maximum allowed displacement for P P

86
86 Principle Projecting polygons on planes Polygon Valide plane

87
87 Principle How many planes? Which planes?

88
88 Overview It is an optimisation problem Measuring plane interest Traversing the space of planes Finding a set of planes

89
89 Overview It is an optimisation problem –Greedy algorithm Measuring plane interest Traversing the space of planes Finding a set of planes

90
90 Optimisation We define over the set of Billboards clouds: –An error function –A cost function Two goals –Budget-based cost fixed minimising error –Error-based max error fixed minimising cost

91
91 Optimisation We define over the set of Billboards clouds: –An error function –A cost function Two goals –Budget-based cost fixed minimising error –Error-based max error fixed minimising cost

92
92 Optimisation Cost function –Number of planes Error function –Vertex displacement In object space In image space

93
93 Overview It is an optimisation problem –Greedy algorithm Measuring plane interest –Defining a density function Traversing the space of planes Finding a set of planes

94
94 Replaces a lot of faces Fonction de densité Important plane = low cost Density function over The space of planes density = measure of the amount of faces that a plane can replace

95
95 Validité Faces for which a plane is valid –Enforces the error bound Density = number of valid faces Allowed displacement Density de 3

96
96 Validité Allowed displacement Density of 3 Faces for which a plane is valid –Enforces the error bound Density = number of valid faces

97
97 Contribution Ponderation by projected area –Favor large faces –Favor planes parallel to faces

98
98 Overview It is an optimisation problem –Greedy algorithm Measuring plane interest –Defining a density function Traversing the space of planes –discretisation Finding a set of planes

99
99 Discretisation Discretisation of plane space Hough transform ρ φ θ (θ,φ)(θ,φ) O ρ primaldual H

100
100 Dual space planes through a point ) a sheet φ θ ρ

101
101 Plans through a sphere ) a slice φ θ ρ Dual space

102
102 Plans through a sphere ) a slice Planes through 3 spheres ) intersection of 3 slices φ θ ρ Uniform discretisation Dual space

103
103 Cumulated density

104
104 Overview It is an optimisation problem –Greedy algorithm Measuring plane interest –Defining a density function Traversing the space of planes –discretisation Finding a set of planes –Refinement

105
105 Greedy iteration Faces Plane space Planes valid for the face Discretisation

106
106 Faces Plane space Planes valid for the face DiscretisationDensity + - Greedy iteration

107
107 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

108
108 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

109
109 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

110
110 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

111
111 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

112
112 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

113
113 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

114
114 Faces Planes valid for the face Density + - Plane space Discretisation Greedy iteration

115
115 Cell of highest density Faces for which cell is valid Greedy iteration

116
116 High density There is probably a plan valid for all the faces How to find such a plane? Greedy iteration

117
117 We test central plane We subdivide Local density recomputation Greedy iteration

118
118 Texture synthesis To each plane is associated a set of faces Orthogonal projection on plane Minimal bounding rectangle (CGAL) Orthogonal rendering ) texture

119
119 Results Movies ExamplesShadows

120
120 View-dependent extension Changing the error function –Reprojection error P-P- M P+P+ viewcell V T θ

121
121 View-dependent extension Textures rendered from viewcells center Automatic selection of resolution Saving the projection matrix

122
122 Results Close zoom View from the cell Billboards cloudpolygonal model

123
123 Middle Range Results zoom View from the cell Billboards cloudpolygonal model

124
124 Far Results zoom View from the cell Billboards cloudpolygonal model

125
125 Conclusion New representation Automatic construction Arbitrary models Simple error criteria / no parameter Extreme simplification

126
126 Extensions Optimising texture usage –Integration to the cost function –Texture compression Re-lighting –Normal maps –Pixel shading Transition Moving objects

127
127 Summary Context Visibility computation –Previous work –Contributions Level of details –Previous Work –Billboard clouds Conclusion

128
128 Conclusion New tools for the studied proble, Visibility computation –Theoretical results –Practical algorithm easy to implement Level of details –New representation / Algorithm for construction –Extreme simplification / handling of attributes Integration

129
129 Questions

Similar presentations

© 2016 SlidePlayer.com Inc.

All rights reserved.

Ads by Google