430 likes | 1.16k Views
Automatic Generation of Animated Presentations Gur Wizenfeld Advanced Software Tools Seminar – June 2004 Agenda Introduction to animated presentations generation Stating the problem Applications Solution Considerations Approaches Hierarchical task decomposition (Karp & Feiner)
E N D
Automatic Generation of Animated Presentations Gur Wizenfeld Advanced Software Tools Seminar – June 2004
Agenda • Introduction to animated presentations generation • Stating the problem • Applications • Solution Considerations • Approaches • Hierarchical task decomposition (Karp & Feiner) Gur Wizenfeld - Advanced Software Tools Seminar 2004
Methodology • Purpose • Introduce the problem and its complexity • Introduce and evaluate various solution approaches • Main Resources • Steven Drucker, Intelligent Camera Control for Graphical Environments [3]. • Peter Karp and Steven Feiner, Issues in the Automated Generation of Animated Presentations [5]. • Peter Karp and Steven Feiner, Automated Presentation Planning Using Task Decomposition with Heuristic Reasoning [6]. • D.A. Friedman and Y. A. Feldman, “Knowledge-Based Cinematography and its Applications,” Proc. 16th European Conf. Artificial Intelligence (ECAI 2004), August 2004 [4]. • David Christianson et al., Declarative Camera Control for Automatic Cinematography [2]. • Maneesh Agrawala, “Designing Effective Step-By-Step Assembly Instructions”, SIGGRAPH 2003 [1]. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Stating the Problem • Given a script, describing a dynamic virtual 3D environment, generate an animated presentation of the script’s relevant information. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Example: A Soccer Game • Versatile content • Versatile style • Slow motion • Multiple camera angles • Textual annotations • Dynamic • Parallel occurrences • Real-time (unpredictable) Gur Wizenfeld - Advanced Software Tools Seminar 2004
Stating the Problem (Detailed) • Environment • Spatial organization of 3D objects • 3D representation of objects (e.g., polygonal mesh) • Dynamic • Objects may be capable of modifying the environment. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Stating the Problem (Detailed) • Script • Written in a formal language • Describes all modifications to the environment over time • Possibly annotated • Possibly unpredictable (e.g., in interactive applications) Gur Wizenfeld - Advanced Software Tools Seminar 2004
14:46 Stating the Problem (Detailed) • Presentation • A description of every frame of the animated presentation • A combination of viewports • The contents of each viewport is generated by rendering the environment from a virtual camera’s point of view. • Specifying camera parameters for each viewport in each frame is sufficient. • Possible extensions: • Audio • Textual annotations • Lighting Gur Wizenfeld - Advanced Software Tools Seminar 2004
Applications: 3D Visualization • Virtual environment walkthroughs • Architecture • Virtual malls • Scientific Visualization • Large multidimensional datasets exploration • Medical imaging • Weather simulation Gur Wizenfeld - Advanced Software Tools Seminar 2004
Applications: Entertainment • Computer animated movies • Games • Highly interactive Unpredictable script • Rich 3D environment • Fast Paced • MUDs • Parallel & distributed • Raises the need for automated summaries Gur Wizenfeld - Advanced Software Tools Seminar 2004
Applications: Design & Planning • CAD • Manufacturing process planning • Animation generation Gur Wizenfeld - Advanced Software Tools Seminar 2004
Solution Considerations: User Task • Exploration • Orientation • Navigation • Search/Wander • Planning • Control & Teleoperation Gur Wizenfeld - Advanced Software Tools Seminar 2004
Solution Considerations:Degree of Interaction • Frequency of interaction • Continuous vs. autonomous • Style of interaction • Direct control of camera vs. symbolic specification Gur Wizenfeld - Advanced Software Tools Seminar 2004
Solution Considerations: Supporting Cognitive Capabilities • Presentation viewing and understanding is based on complex underlying perceptive and cognitive mechanisms. • Motion from still images • 3D spatial relations from 2D projections • Recognition • Attention • Memory • (Story understanding) • A comprehensive cognitive model would help, but is difficult to construct. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Solution Considerations:Collective Cinematic Experience • Collective human experience of cinematic expression has formed a cinematic language. • Grammar • Rules • Idioms • An Idiomis a stereotypical way to capture some specific action as a series of shots. • Evolving genres Gur Wizenfeld - Advanced Software Tools Seminar 2004 • Trevor Goring www.famousframes.com
Solution Considerations: Continuity • Avoid “jump cuts” (i.e., cuts between which the camera rotates about the object by less than 30.) • Do not interrupt a steady, flowing action with a cut (or use time overlapping shots.) • Maintain the relative screen position of an object across cuts. • Avoid “line crossing” in a cut (or use an intermediate shot.) Gur Wizenfeld - Advanced Software Tools Seminar 2004
Example: Avoid Line Crossing • Andrew Burward-Hoy www.famousframes.com Gur Wizenfeld - Advanced Software Tools Seminar 2004
Presentation Hierarchy Gur Wizenfeld - Advanced Software Tools Seminar 2004
Select Content Relevance Summarization Map Script-time to presentation-time Parallelism Pacing Determine Presentation Hierarchy Structuring shots to scenes, etc. Transitions Viewports layout Requirements Summary Gur Wizenfeld - Advanced Software Tools Seminar 2004
Requirements Summary • Camera placement • Visibility • Occlusion avoidance • Projection size • Recognition • Preferred viewing directions (“gaze vectors”) • Maximization of geometric information • Spatial relations • Distortion avoidance • Selection of geometric features • Obey cinematic conventions • Use idioms correctly • Maintain continuity • Adhere to genre rules • Take into account cognitive capabilities and limitations. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Script Understanding & Analysis Presentation Generation Presentation Rendering Solution Map Script Presentation Gur Wizenfeld - Advanced Software Tools Seminar 2004
Hierarchical Task Decomposition Automated Presentation Planning of Animation Using Task Decomposition with Heuristic Reasoning P. Karp and S. Feiner
Solution Highlights • Creates a complete presentation structure (from film level to single shot level.) • Uses communicative goals to guide presentation generation. • Formalizes and uses cinematic knowledge in a straightforward manner. • Reduces redundant computational effort. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Hierarchical Task Breakdown Example Gur Wizenfeld - Advanced Software Tools Seminar 2004
Film structure hierarchy is used to guide decomposition of the presentation task. Communicative Goals define the requirements at each level. Presentation Generation Task Decomposition Gur Wizenfeld - Advanced Software Tools Seminar 2004
ESPLANADE – Solution Testbed • Expert System for PLANning Animation, Design and Editing • Environment: crane activation in a warehouse Gur Wizenfeld - Advanced Software Tools Seminar 2004
Presentation Processing in Levels • Scene Structuring Techniques (idioms): • Master shot discipline • How-To structure • Causal Structure Gur Wizenfeld - Advanced Software Tools Seminar 2004
Presentation Example • Script: • Move roll-2 with the crane. • Move roll-7 with the crane. • Causal information between button pressing and crane operations. • Communicative Goals: • Show moving of roll-2. • Show moving of roll-7. • Show causal relation between pressing the “up” button and raising the crane’s hoist. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Pros Provides a solution for a complete presentation hierarchy. Can be generalized to support arbitrary-depth hierarchies. Separates communicative goals from their implementation as idioms. Formalizes goals and idioms in a “natural” manner. Goals and idioms can be added. Task decomposition approach reduces computational effort. Cons Resulting presentations are rigid and predictable. Every combination of goals requires a specific idiom. Does not support conflicts between goals and idioms. Evaluation Gur Wizenfeld - Advanced Software Tools Seminar 2004
Conclusions • Use of cinematic rules is crucial. • Rules evolve flexibility and scalability • Rules often conflict contradiction handling • Search space can be reduced by an appropriate abstraction. • Symbolic representation is critical for usability. • Script understanding and automatic communicative goal extraction are still a long way ahead. Gur Wizenfeld - Advanced Software Tools Seminar 2004
References • Background • [1] M. Agrawala, D. Phan, J. Heiser, J. Haymaker, J. Kilngner, P. Hanrahan and B. Tversky, “Designing Effective Step-By-Step Assembly Instructions,” In SIGGRAPH 2003. • [2] D.B. Christianson, S.E. Anderson, L. He, D.H. Salesin, D.S. Weld and M.F. Cohen, “Declarative Camera Control for Automatic Cinematography,”Proceedings of the Thirteenth National Conference on Artificial Intelligence, vol. 1, pages 148—155, 1996. • [3] S.M. Drucker, “Intelligent Camera Control for Graphical Environments,” PhD Thesis, MIT, 1994. • [4] D.A. Friedman and Y.A. Feldman, “Knowledge-Based Cinematography and its Applications,”Proc.16th European Conf. Artificial Intelligence (ECAI 2004), August • 2004 • Hierarchical Task Decomposition • [5] P. Karp and S. Feiner, “Issues in the automated generation of animated presentations,”Proceedings of Graphics Interface '90, pages 39--48, May 1990. • [6] P. Karp and S. Feiner, “Automated presentation planning of animation using task decomposition with heuristic reasoning,”Proc. of Graphics Interface 93, pages 118-127, 1993. Gur Wizenfeld - Advanced Software Tools Seminar 2004
Detour: Advances in computer games Gur Wizenfeld - Advanced Software Tools Seminar 2004
Detour: Idioms • An Idiomis a stereotypical way to capture some specific action as a series of shots. (AcFilmIdiom name approach-idiom :parameter (AcParamApproach :actor1 :actor2 :start :stop) (AcFilmShot name shot1 (AcFragGoBy name frag1 :time ?start :primary-moment beginning :entry-pos center :exit-pos out-left ...) ...) ...) Gur Wizenfeld - Advanced Software Tools Seminar 2004
Detour: Idioms Gur Wizenfeld - Advanced Software Tools Seminar 2004
Crane Tilt Zoom Roll Pan Truck Dolly Detour: Rendering {X, Y, Z, Rx, Ry, Rz, fov}7 Gur Wizenfeld - Advanced Software Tools Seminar 2004
Detour: Rendering • Transforms objects from a perspective view in the world space into the screen’s display space. Gur Wizenfeld - Advanced Software Tools Seminar 2004