Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "1 Preprocessing of Large databasesV for Interactive visualisation Xavier Décoret iMAGIS-GRAVIR / IMAG i MAGIS est un projet commun CNRS - INPG - INRIA."— Presentation transcript:

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 2 0 0 2 1 2 3 4 5 6 7 8 9 1010 1 1212............

49 49 Difficulty M E R C R E D I 1 6 O C T O B R E 2 0 0 2 1 2 3 4 5 6 7 8 9 1010 1 1212............ 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


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

Similar presentations


Ads by Google