|
Crowd Simulation |
3 |
|
|
Preface |
6 |
|
|
Acknowledgements |
8 |
|
|
Contents |
9 |
|
|
Chapter 1: Introduction |
14 |
|
|
1.1 Requirements and Constraints for Crowd Modeling |
15 |
|
|
1.2 Crowd Simulation Areas |
16 |
|
|
References |
17 |
|
|
Chapter 2: State-of-the-Art |
21 |
|
|
2.1 Crowd Dynamics |
22 |
|
|
2.2 Sociological Models of Crowds |
22 |
|
|
2.3 Crowd Simulation |
23 |
|
|
2.4 Behavioral Animation of Groups and Crowds |
24 |
|
|
2.5 Crowd Management Training Systems |
27 |
|
|
2.6 Group Behavior in Robotics and Arti?cial Life |
28 |
|
|
2.7 Environment Modeling for Crowds |
28 |
|
|
2.7.1 Environment Models |
28 |
|
|
2.7.2 Path Planning |
29 |
|
|
2.7.3 Collision Avoidance |
31 |
|
|
2.8 Crowd Rendering |
32 |
|
|
2.9 Crowds in Non-real-time Productions |
34 |
|
|
2.10 Crowds in Games |
35 |
|
|
2.11 Crowd Scenario Authoring |
36 |
|
|
References |
37 |
|
|
Chapter 3: Modeling of Populations |
43 |
|
|
3.1 Introduction |
43 |
|
|
3.2 Creative Methods |
44 |
|
|
3.3 Body Shape Capture |
45 |
|
|
3.4 Interpolated Techniques |
46 |
|
|
3.5 A Model for Generation of Population |
48 |
|
|
3.5.1 De?nition of the Initial Data |
50 |
|
|
3.5.2 Choice of a Template |
50 |
|
|
3.5.3 De?nition of New Somatotypes |
50 |
|
|
3.5.4 Calculation of In?uence of Sample Somatotypes |
51 |
|
|
3.5.5 Calculation of Mesh Variation |
52 |
|
|
3.5.6 Body Parts' Deformation |
53 |
|
|
3.5.7 Results and Discussion |
55 |
|
|
Microscopic Analysis |
55 |
|
|
Macroscopic Analysis |
58 |
|
|
3.6 Using Computer Vision to Generate Crowds |
58 |
|
|
3.6.1 A Model for Generating Crowds Based on Pictures |
59 |
|
|
Skeleton Initialization |
60 |
|
|
Image Segmentation |
61 |
|
|
Learning the Color Model |
62 |
|
|
Finding the Silhouette |
63 |
|
|
Silhouette Processing |
65 |
|
|
3D Pose Identi?cation |
66 |
|
|
Virtual Human Reconstruction |
67 |
|
|
3.6.2 Results |
68 |
|
|
3.7 Crowd Appearance Variety |
69 |
|
|
3.7.1 Variety at Three Levels |
70 |
|
|
3.7.2 Color Variety |
71 |
|
|
Principles of the Method |
72 |
|
|
HSB Color Spaces |
73 |
|
|
The Need for Better Color Variety |
74 |
|
|
Segmentation Maps |
75 |
|
|
Principles of Segmentation |
75 |
|
|
Color Variety Storage |
77 |
|
|
3.7.3 Accessories |
78 |
|
|
Simple Accessories |
80 |
|
|
Complex Accessories |
81 |
|
|
Loading and Initialization |
82 |
|
|
Rendering |
83 |
|
|
Empty Accessories |
85 |
|
|
Color Variety Storage |
87 |
|
|
Scalability |
87 |
|
|
3.8 Final Remarks |
90 |
|
|
References |
90 |
|
|
Chapter 4: Virtual Human Animation |
93 |
|
|
4.1 Introduction |
93 |
|
|
4.2 Related Work in Locomotion Modeling |
94 |
|
|
4.2.1 Kinematic Methods |
94 |
|
|
4.2.2 Physically Based Methods |
95 |
|
|
4.2.3 Motion Interpolation |
96 |
|
|
4.2.4 Statistical Models |
98 |
|
|
4.3 Principal Component Analysis |
99 |
|
|
4.3.1 Motion Capture Data Process |
99 |
|
|
4.3.2 Full-Cycle Model |
100 |
|
|
Input Data |
100 |
|
|
Main PCA |
100 |
|
|
4.3.3 Motion Extrapolation |
102 |
|
|
Second PCA Level (Sub-PCA Level 1) |
103 |
|
|
Third PCA Level (Sub-PCA Level 2) |
104 |
|
|
4.4 Walking Model |
105 |
|
|
4.4.1 Motion Interpolation and Extrapolation |
105 |
|
|
4.5 Motion Retargeting and Timewarping |
107 |
|
|
4.6 Motion Generation |
110 |
|
|
4.6.1 Speed Control |
110 |
|
|
4.6.2 Type of Locomotion Control |
111 |
|
|
4.6.3 Personi?cation Control |
111 |
|
|
4.6.4 Motion Transition |
112 |
|
|
4.6.5 Results |
112 |
|
|
4.7 Animation Variety |
114 |
|
|
4.7.1 Accessory Movements |
115 |
|
|
4.8 Steering |
116 |
|
|
4.8.1 The Need for a Fast Trajectory Control |
116 |
|
|
4.8.2 The Seek and Funneling Controllers |
117 |
|
|
4.9 Final Remarks |
119 |
|
|
References |
119 |
|
|
Chapter 5: Behavioral Animation of Crowds |
123 |
|
|
5.1 Introduction |
123 |
|
|
5.2 Related Work |
123 |
|
|
5.3 Crowd Behavioral Models |
126 |
|
|
5.3.1 PetroSim's Behavioral Model |
126 |
|
|
Knowledge |
127 |
|
|
Status |
127 |
|
|
Intentions and Decision Process |
128 |
|
|
Simplifying the FSMs |
129 |
|
|
An Example of FSM |
129 |
|
|
Results |
131 |
|
|
5.3.2 A Physically Based Behavioral Model |
132 |
|
|
Interaction with Environment |
133 |
|
|
Agents' Perception |
134 |
|
|
Agents' Decision and Action |
135 |
|
|
Results |
137 |
|
|
5.4 Crowds Navigation |
138 |
|
|
5.4.1 Robot Motion Planning |
139 |
|
|
Discrete Motion Planning |
139 |
|
|
Exact Motion Planning |
140 |
|
|
Sampling-Based Methods |
140 |
|
|
Reactive Methods |
141 |
|
|
Multiple Robots |
141 |
|
|
5.4.2 Crowd Motion Planning |
141 |
|
|
Models for Safety Applications |
142 |
|
|
Models for Entertainment Applications |
143 |
|
|
Models for Virtual Reality Applications |
145 |
|
|
5.4.3 A Decomposition Approach for Crowd Navigation |
146 |
|
|
Objectives |
146 |
|
|
Navigation Graphs |
148 |
|
|
Path Planning with Variety |
150 |
|
|
Scalable Simulation |
152 |
|
|
5.4.4 An Hybrid Architecture Based on Regions of Interest (ROI) |
154 |
|
|
5.5 A Collision Avoidance Method Based on the Space Colonization Algorithm |
157 |
|
|
5.5.1 The Crowd Model: Biocrowds |
158 |
|
|
Input |
159 |
|
|
Initialization |
159 |
|
|
Computation of the Motion Direction |
159 |
|
|
Computation of the Velocity Vector |
161 |
|
|
Elimination of Collision Between Finite-Sized Agents |
161 |
|
|
5.5.2 Experimental Results |
162 |
|
|
Impact of the Density of Markers |
162 |
|
|
The Shape of Trajectories |
164 |
|
|
Collision Avoidance |
164 |
|
|
The Stopping Effects |
167 |
|
|
Interactive Crowd Control |
168 |
|
|
5.6 Gaze Behaviors for Virtual Crowd Characters |
169 |
|
|
5.6.1 Simulation of Attentional Behaviors |
170 |
|
|
Attention Models |
170 |
|
|
5.6.2 Gaze Behaviors for Crowds |
171 |
|
|
Interest Points |
171 |
|
|
5.6.3 Automatic Interest Point Detection |
172 |
|
|
5.6.4 Motion Adaptation |
173 |
|
|
Spatial Resolution |
174 |
|
|
Temporal Resolution |
175 |
|
|
5.7 Final Remarks |
176 |
|
|
References |
176 |
|
|
Chapter 6: Relating Real Crowds with Virtual Crowds |
181 |
|
|
6.1 Introduction |
181 |
|
|
6.2 Studying the Motion of Real Groups of People |
181 |
|
|
6.2.1 Crowd Characteristics |
181 |
|
|
6.2.2 Crowd Events |
184 |
|
|
6.2.3 Parameters for Simulating Virtual Crowds Using Real Crowd Information |
185 |
|
|
6.2.4 Simulating Real Scenes |
185 |
|
|
First Sequence: People Passing Through a Door |
186 |
|
|
Second Sequence: People Waiting and Entering the Train |
188 |
|
|
6.3 Sociological Aspects |
189 |
|
|
6.4 Computer Vision for Crowds |
191 |
|
|
6.4.1 A Brief Overview on People Tracking |
191 |
|
|
6.5 An Approach for Crowd Simulation Using Computer Vision |
193 |
|
|
6.5.1 Using Computer Vision for People Tracking |
194 |
|
|
6.5.2 Clustering of Coherent Trajectories |
196 |
|
|
6.5.3 Generation of Extrapolated Velocity Fields |
197 |
|
|
6.5.4 Simulation Based on Real Data |
198 |
|
|
6.5.5 Some Examples |
200 |
|
|
6.6 Final Remarks |
202 |
|
|
References |
203 |
|
|
Chapter 7: Crowd Rendering |
206 |
|
|
7.1 Introduction |
206 |
|
|
7.2 Virtual Human Representations |
207 |
|
|
7.2.1 Human Template |
207 |
|
|
7.2.2 Deformable Mesh |
207 |
|
|
7.2.3 Rigid Mesh |
209 |
|
|
7.2.4 Impostor |
209 |
|
|
7.3 Architecture Pipeline |
210 |
|
|
7.3.1 Human Data Structures |
212 |
|
|
7.3.2 Pipeline Stages |
214 |
|
|
7.4 Motion Kits |
222 |
|
|
7.4.1 Data Structure |
222 |
|
|
7.4.2 Architecture |
224 |
|
|
7.5 Database Management |
226 |
|
|
7.6 Shadows |
227 |
|
|
7.7 Crowd Patches |
229 |
|
|
7.7.1 Introduction |
229 |
|
|
7.7.2 Patches and Patterns |
230 |
|
|
Patches |
230 |
|
|
Patterns |
231 |
|
|
7.7.3 Creating Patches |
231 |
|
|
Patterns Assembly |
232 |
|
|
Static Objects and Endogenous Trajectories |
232 |
|
|
Exogenous Trajectories: Case of Walking Humans |
232 |
|
|
7.7.4 Creating Worlds |
233 |
|
|
Assembly of Patches |
233 |
|
|
Patch Templates |
234 |
|
|
7.7.5 Applications and Results |
235 |
|
|
Results |
236 |
|
|
7.8 Final Remarks |
237 |
|
|
References |
237 |
|
|
Chapter 8: Populated Environments |
239 |
|
|
8.1 Introduction |
239 |
|
|
8.2 Terrain Modeling |
240 |
|
|
8.2.1 Plants and Lakes |
242 |
|
|
8.2.2 Sky and Clouds |
243 |
|
|
8.3 Generation of Virtual Environments |
243 |
|
|
8.4 A Model for Floor Plans Creation |
245 |
|
|
8.4.1 Treemaps and Squari?ed Treemaps |
246 |
|
|
8.4.2 The Proposed Model |
248 |
|
|
Including Connections Among the Rooms |
249 |
|
|
Including Corridors on the Floor Plans |
250 |
|
|
3D House Generation |
252 |
|
|
8.4.3 Results |
253 |
|
|
8.5 Informed Environment |
256 |
|
|
8.5.1 Data Model |
259 |
|
|
8.5.2 Topo Mesh |
261 |
|
|
8.6 Building Modeling |
263 |
|
|
8.7 Landing Algorithms |
263 |
|
|
8.8 Ontology-Based Simulation |
264 |
|
|
8.8.1 Using Ontology for Crowd Simulation in Normal Life Situations |
266 |
|
|
8.8.2 Applying Ontology to VR Environment |
267 |
|
|
8.8.3 The Prototype of UEM |
267 |
|
|
8.8.4 Simulation Results |
270 |
|
|
8.9 Real-Time Rendering and Visualization |
271 |
|
|
8.10 Implementation Aspects |
273 |
|
|
8.11 Final Remarks |
273 |
|
|
References |
274 |
|
|
Chapter 9: Applications: Case Studies |
277 |
|
|
9.1 Introduction |
277 |
|
|
9.2 Crowd Simulation for Virtual Heritage |
277 |
|
|
9.2.1 Virtual Population of Worshippers Performing Morning Namaz Prayer Inside a Virtual Mosque |
278 |
|
|
System Design |
278 |
|
|
Scenario Creation |
279 |
|
|
9.2.2 Virtual Roman Audience in the Aphrodisias Odeon |
281 |
|
|
Crowd Engine Resume |
281 |
|
|
High-Fidelity Actors |
282 |
|
|
Scenario Authoring |
283 |
|
|
Audience Placement |
283 |
|
|
9.2.3 Populating Ancient Pompeii with Crowds of Virtual Romans |
284 |
|
|
Semantics to Behavior |
286 |
|
|
Long Term vs Short Term Behaviors |
287 |
|
|
Results |
287 |
|
|
9.3 Immersion in a Crowd |
288 |
|
|
9.4 Crowdbrush |
289 |
|
|
9.4.1 Brushes |
291 |
|
|
Scenario Management |
293 |
|
|
Scripting |
293 |
|
|
Results |
295 |
|
|
9.5 Safety Systems |
296 |
|
|
9.6 Olympic Stadium |
297 |
|
|
9.7 Final Remarks |
300 |
|
|
References |
300 |
|
|
Book Contribution |
302 |
|
|
Index |
304 |
|