cmu - University of Wisconsin–Madison

27
11/27/2011 1 from Art and Perception to Visualization and Video (and Virtual Reality) Michael Gleicher Dept of Computer Sciences University of Wisconsin Madison Acknowledgements All of this work is done in collaboration with a great group of students and collaborators This talk is work done with students: (who didn’t want their pictures shown) Feng Liu – multimedia, video (work supported by NSF, Adobe) Now at Portland State Univ Greg Ciprianomolecules, vis (work supported by DOE,NIH) Now at Solidworks Aaron Brydenmolecule motion (work supported by NIH) Now at DOE Ames Lab Danielle Albers genomics (work supported by NSF, DOE) Adrian Mayorgavis (work supported by NIH) Michael Correll humanities (work supported by NSF) Kevin PontoVirtual Environments (work supported by NIH) Sean Andrist, Tomislav Pejsaagents (work supported by NSF) Michael Gleicher Dept of Computer Sciences University of Wisconsin Madison from Art and Perception to Visualization and Video (and Virtual Reality) Michael Gleicher Dept of Computer Sciences University of Wisconsin Madison from Art and Perception to Visualization and Video (and Virtual Reality) Michael Gleicher Dept of Computer Sciences University of Wisconsin Madison from Art and Perception to Visualization and Video (and Virtual Reality) Stuff I do, and why you might be interested What do these have in common? Analysis of Proteins Scientific Data Display Motion Synthesis for Characters Video Authoring Image and Video Retargeting NonVerbal Cues for Communicative Agents

Transcript of cmu - University of Wisconsin–Madison

Page 1: cmu - University of Wisconsin–Madison

11/27/2011

1

from Art and Perceptionto Visualization and Video

(and Virtual Reality)

Michael Gleicher

Dept of Computer SciencesUniversity of Wisconsin ‐Madison

Acknowledgements• All of this work is done in collaboration with a great group of students and collaborators 

• This talk is work done with students:

(who didn’t want their pictures shown)

Feng Liu – multimedia, video(work supported by NSF, Adobe)

Now at Portland State Univ

Greg Cipriano– molecules, vis(work supported by DOE,NIH)

Now at Solidworks

Aaron Bryden– molecule motion(work supported by NIH)Now at DOE Ames Lab

Danielle Albers – genomics(work supported by NSF, DOE)

Adrian Mayorga– vis(work supported by NIH)

Michael Correll – humanities(work supported by NSF)

Kevin Ponto– Virtual Environments(work supported by NIH)

Sean Andrist, Tomislav Pejsa– agents(work supported by NSF)

Michael Gleicher

Dept of Computer SciencesUniversity of Wisconsin ‐Madison

from Art and Perceptionto Visualization and Video

(and Virtual Reality)

Michael Gleicher

Dept of Computer SciencesUniversity of Wisconsin ‐Madison

from Art and Perceptionto Visualization and Video

(and Virtual Reality)

Michael Gleicher

Dept of Computer SciencesUniversity of Wisconsin ‐Madison

from Art and Perceptionto Visualization and Video

(and Virtual Reality)

Stuff I do,and why you might be interested

What do these have in common?

Analysis of Proteins

Scientific DataDisplay

Motion Synthesisfor Characters

Video Authoring

Image and VideoRetargeting

Non‐Verbal Cues forCommunicative Agents

Page 2: cmu - University of Wisconsin–Madison

11/27/2011

2

What do these have in common?

It’s all stuff I’ve done in the past few years

It involves large amounts of data

It involves creating effective presentations

It requires some understanding of the datain order to simplify it

What do these have in common?

It’s all stuff I’ve done in the past few years

It involves large amounts of data

It involves creating effective presentations

It requires some understanding of the datain order to simplify it

What do these have in common?

It’s all stuff I’ve done in the past few years

It involves large amounts of data

It involves creating effective presentations

It requires some understanding of the datain order to simplify it

Does this all tie together?

How can we use our understanding of human perception and artistic traditions 

to improve our tools for communicating and data understanding?

Page 3: cmu - University of Wisconsin–Madison

11/27/2011

3

How can we use our understanding of human perception and artistic traditions 

to improve our tools for communicating and data understanding.

Talk Roadmap

Molecular Surface Abstraction

Virtual Environment Replay Video Stabilization

Molecular Motions

Sequence Comparison

Molecular Surface Abstraction

Virtual Environment Replay Video Stabilization

Molecular Motions

Sequence Comparison

Prelude: Art or Perception? A Protein Surface

Work with Greg Cipriano and George Phillips

An aside…

How do scientists look at proteins?

Stick and Ball Model (internals)

An aside…

How do scientists look at proteins?

Stick and Ball Model (internals)

Ribbon Diagram (internals)

Page 4: cmu - University of Wisconsin–Madison

11/27/2011

4

An aside…

How do scientists look at proteins?

Stick and Ball Model (internals)

Molecular Surface (externals)

A Protein Surface

Molecular Surface Abstraction

Work with Greg Cipriano and George Phillips. TVCG 2007, NAR 2010.

What’s Happening?

Simplification

Stylized Display

Surface Indications

Art

• Abstraction

• Good Lighting

• Line Drawings

• Non‐Photorealism

Visual Cognitive Science

• Cue reduction

• Provide Depth Cues

• Enhance Contours

• Tolerance of Shading

Why does B fight cancer?

Page 5: cmu - University of Wisconsin–Madison

11/27/2011

5

Molecular Surface Abstraction

Virtual Environment Replay Video Stabilization

Molecular Motions

Sequence Comparison

Inspired by Art (and a math trick) …

From Cutting,  Representing motion in a static image, 2002

Molecular Motions

Bryden, Phillips, Gleicher. TVCG Jan ‘12

Molecular Motions

Coarse‐grained models

Normal‐mode Analysis (NMA)

Motion Illustration Motion Illustration

Artistic Inspirations:

Comic Books / Diagrams

Abstract

Model

Illustrate

Page 6: cmu - University of Wisconsin–Madison

11/27/2011

6

The Problem:

• Vector per point

Abstract

Group to fit models

Model

Illustrate

Abstract

Group to fit models

Model

Affine model per group

Illustrate x = A x

x = A x Abstract

Group to fit models

Model

Affine model per group

Illustrate

Affine Exponentials

Glyph Design

x = A x

x = A x

p(t) = eAt

p(t) = eAt

x = A x

x = A x

p(t) = eAt

p(t) = eAt

Page 7: cmu - University of Wisconsin–Madison

11/27/2011

7

Molecular Surface Abstraction

Virtual Environment Replay Video Stabilization

Molecular Motions

Sequence Comparison

Learning from perception…

How do we interpret massive amounts of sequence data?

A tough problem…

TACTAGCTAGTAGCTAGCATCGACTACGACTGAC TACTAGCTAGTAGCTAGCATCGACTACGACTGAC

GCTAGCTGTTGCTAGCCGACTCATCGACTAAGCT

TCGACTAGCTAGATCGACTTATCGACTCACACTA

CTGGCTAGTTACACTATCTACCGACTGATCGACT

Page 8: cmu - University of Wisconsin–Madison

11/27/2011

8

TACTAGCTAGTAGCTAGCATCGACTACGACTGAC

GCTAGCTGTTGCTAGCCGACTCATCGACTAAGCT

TCGACTAGCTAGATCGACTTATCGACTCACACTA

CTGGCTAGTTACACTATCTACCGACTGATCGACT

TACTAGCTAGTAGCTAGCATCGACTACGACTGAC

GCTAGCTGTTGCTAGCCGACTCATCGACTAAGCT

TCGACTAGCTAGATCGACTTATCGACTCACACTA

CTGGCTAGTTACACTATCTACCGACTGATCGACT

TACTAGCTAGTAGCTAGCATCGACTACGACTGAC

GCTAGCTGTTGCTAGCCGACTCATCGACTAAGCT

TCGACTAGCTAGATCGACTTATCGACTCACACTA

CTGGCTAGTTACACTATCTACCGACTGATCGACT

TACTAGCTAGTAGCTAGCATCGACTACGACTGAC

GCTAGCTGTTGCTAGCCGACTCATCGACTAAGCT

TCGACTAGCTAGATCGACTTATCGACTCACACTA

CTGGCTAGTTACACTATCTACCGACTGATCGACT

TACTAGCTAGTAGCTAGCATCGACTACGACTGAC

GCTAGCTGTTGCTAGCCGACTCATCGACTAAGCT

TCGACTAGCTAGATCGACTTATCGACTCACACTA

CTGGCTAGTTACACTATCTACCGACTGATCGACT

TACTAGCTAGTAGCTAGCATCGACTACGACTGAC

GCTAGCTGTTGCTAGCCGACTCATCGACTAAGCT

TCGACTAGCTAGATCGACTTATCGACTCACACTA

CTGGCTAGTTACACTATCTACCGACTGATCGACT

Page 9: cmu - University of Wisconsin–Madison

11/27/2011

9

Mauve sequence alignment and visualization. Perna Lab.

How to see anything in this sea of data?

Page 10: cmu - University of Wisconsin–Madison

11/27/2011

10

How to see anything in this sea of data?

1. Be Realistic2. New Designs based on Perception

Scalable Overviews of  Whole Genome Sequence Alignments

Sequence Surveyor

Albers, Dewey, Gleicher. IEEE TVCG (InfoVis 2011)

Number of Genomes Length of Genomes Types of Inquiry

Scalable

Mauve (Perna lab) Sequence Surveyor

Visual Search

Visual Clutter Summarization

Pre-Attentive Phenomena

Perceptual Principles

Visual Search

Visual Clutter Summarization

Pre-Attentive Phenomena

Page 11: cmu - University of Wisconsin–Madison

11/27/2011

11

Visual Search

Visual Clutter Summarization

Pre-Attentive Phenomena Visual Search

Visual Clutter Summarization

Pre-Attentive Phenomena

Visual Search

Visual Clutter Summarization

Pre-Attentive Phenomena What are you searching for?

What textures form? What statistics do you get?

What pops out?

What are you looking for?

MappingColor Mapping Color Schemes Position Mapping

Index Membership Freq Grouped Freq Pos in Reference

Index

Grouped Freq

Pos in Reference

Combinations of different color and position mappings reveal interesting things in the data

Page 12: cmu - University of Wisconsin–Madison

11/27/2011

12

Blocking

Group (relatively) continuous sets of neighboring genes into a single unit

roftilS yaeQ phnA tadG

Aggregate Encodings

Average

Aggregate Encodings

Average Robust Average

Color Weaving Event Striping

Anecdotes: 100 Bacteria

Conservation relationships between different families of genomes

Color by position in reference (arrow), order by relative ordering

Anecdotes: Buchnera

Color by position in reference (arrow), order by set of genomes containing each gene

Anecdotes: Buchnera

Averaging:

No significant trend

Color Weaving: Overall distribution

Page 13: cmu - University of Wisconsin–Madison

11/27/2011

13

Anecdotes: Fungi

Bioinformatics applications allow users to test algorithms using visual checks

Color by overall frequency, order by relative ordering

Anecdotes: Fungi

Bioinformatics applications allow users to test algorithms using visual checks

Color by position in a reference, order by relative ordering

Another Application

Since I can’t pronounce the names of the Fungi …

A Different Kind of Evolution . . .

Google Books Word Count DataDecades  ‐>

Word Rank ‐> Color by position in reference

A Different Kind of Evolution . . .

Google Books Word Count Data

Decades  ‐>

Word Rank ‐> Color by occurrence count

Page 14: cmu - University of Wisconsin–Madison

11/27/2011

14

Visualizing English Printfrom 1470 to 1800

With Mike Witmore, Robin Valenza, Michael Correll, …

Domain Specific Tools

Correll, Witmore, and Gleicher. Eurovis 2011.

Back to the details that cause patterns

Lots of fun domains! Visual ComparisonsA Common Thread?

Page 15: cmu - University of Wisconsin–Madison

11/27/2011

15

There are general principles that apply across domains, data types, …

Maybe provocative?

And if we can figure it out, it’ll be easier to crank out the comparison tools/techniques quickly

Mike’s theory of visual comparison 0.2*

* This is a work in progress.Comments welcomed!

The 3 3s

• 3 Axes of Scalability / Hardness

• 3 Strategies for Scalability

• 3 Basic Designs

Comparison is easy. Until it gets hard.

3 Axes of Hardness

• Number of things to compare

• Size/complexity of things to compare

• Complexity of the relationships

People can only compare a few things at a time*

3 Strategies for scaling

• Select Subset

• Summarize Statistically

• Scan Serially

My cognitive scientist friends say the magic number 7+/‐2 is an over‐simplification, but …

All designs appear to fall into 3 categories

3 Basic Designs*

* Each has its pros and cons

Page 16: cmu - University of Wisconsin–Madison

11/27/2011

16

Sequence Comparison

Molecular Surface Abstraction

Virtual Environment Replay

Molecular Motions

Video Stabilization

Using Perception and Art …

3D or not 3D, that is the question

From Shakespeare to Video Processing

Video Stabilization

Problem:

Shaky video in, less shaky (good?) video out

Art (and Perception)

What is good camera movement?

Perception (and Art)

How can we avoid impossible computer vision?

Three Projects

Re‐Cinematography

What can you do beyond removing jitter?

Stabilization by 3D Warping

How can you make bigger changes?

Stabilization by Subspace Constraints

How do you make it practical?

Work with Feng Liu and Adobe

Lessons from Filmmaking 101

Direct the viewer’s attention

Use a tripod! (a damped one)

Avoid distracting the viewer (unless…)

Camera movements should be motivated

Smooth movements to make connections

Pittsburgh Filmakerscirca 1991

Sam’s First Steps, July 6th, 2006

Skip

Page 17: cmu - University of Wisconsin–Madison

11/27/2011

17

The rule of cinematography

Camera movement should be intentional

Re‐Cinematography:1. Figure out intent2. Make it be so

The key insight:Translate cinematography to implementation

Motion should be intentional

Static shots should be static

Moving shots are goal directed

Constant velocity with ease in/out

Re‐Cinematography “Works”Velocity profiles meet goals

Frame number

Magnitude of apparent velocity

Source video

Result video

Static segments are static

Moving segments have piecewise constant velocity

Ease in and out

Page 18: cmu - University of Wisconsin–Madison

11/27/2011

18

Problems

Show source images when motion estimation fails

Visual Artifacts from bad inpainting

2D Stabilization limits how much change

Video Stabilization

Existing approach: 2D stabilization

Track a bunch of pointsFit full‐frame warps that best smooth point motion

Limited!

Doesn’t model parallax

Can’t move the camera very far

To Swing or Not to Swing(big changes require inpainting)

Source Footage Re‐Cinematography Result

Temporal Artifacts

Where did she come from?

Input: Output:

Beyond 2D Stabilization

Page 19: cmu - University of Wisconsin–Madison

11/27/2011

19

3D Video Stabilization: Pipeline

3D reconstruction viaStructure from motion

Novel view synthesis

Camera path planningLine Parabola

Low‐pass filter

3D Reconstruction from VideoStructure from Motion

Voodoo Camera Tracker: http://www.digilab.uni-hannover.de/docs/manual.htm

Camera Path PlanningMove the camera to a new place

Line Parabola

Low‐pass filter3D experienceswithout 3D models

How do you move the camera to a different place?

Liu et al. SIGGRAPH 2009.

Novel viewpoint rendering

How to make a video‐quality image?

Build a really high‐quality 3D model?Too hardNot enough input data

Image‐Based Rendering using other frames?Violates temporal constraintsComputationally expensive

Avoid Temporal Artifacts:Need Novel view from One Frame

Where did she come from?

Input: Output:

Page 20: cmu - University of Wisconsin–Madison

11/27/2011

20

Novel view from one frame

Impossible?

Incomplete geometric model (sparse)

Occlusions / Dis‐occlusions

Novel view from one frame

Impossible?

Incomplete geometric model (sparse)

Occlusions / Dis‐occlusions

Impossible!  So Fake it!

Just need visually plausible, not accuracy

Viewpoint shifts will be small

Avoid artifacts

3D Stabilization by Image Warping

• Structure from motion gives sparse points

• 3D camera planning gives motion of points

• Use sparse points to warp image

Content‐Preserving Warps

Warp each input frame to create the output frame by least‐squares minimization Data term: Soft, sparse displacement constraint

Smoothness term: Local similarity transformation constraint

Weightings: Higher penalties in salient regions

119

Results & ComparisonsIs this a good reconstruction? NO!

Camera position                          Output points

Page 21: cmu - University of Wisconsin–Madison

11/27/2011

21

One frame isn’t so bad…

Especially if you crop

Video Stabilization withSubspace Constraints

Act III

Limitations Limitations

Page 22: cmu - University of Wisconsin–Madison

11/27/2011

22

What do we need 3D for?

Plausibility Constraints

Low‐rank constraint:

[Tomasi and Kanade1992,  Irani 2002]

The trajectory matrix of a rigid scene imaged by amoving camera over a short period of time shouldapproximately lie in a low‐dimensional subspace.

Page 23: cmu - University of Wisconsin–Madison

11/27/2011

23

• Incomplete Moving Matrix Factorization

• Filter the “Eigen‐Trajectories”

Molecular Surface Abstraction

Video Stabilization

Molecular Motions

Sequence Comparison

Virtual Environment Replay

Learning from perception…

Cinematography in our tools?

Re‐Cinematography

Model of how camera should move

(couldn’t move camera enough)

3D Stabilization

Potential to reason about camera movments

(limited to simple clips)

Subspace Stabilization

Practical! 

(only filtering)

Camera Stabilization forVirtual Worlds

Back to 3D…

Page 24: cmu - University of Wisconsin–Madison

11/27/2011

24

Why? The Home is where Health Happens

Increasingly

Homes are different!

Traditional Laboratories may not be adequate

Page 25: cmu - University of Wisconsin–Madison

11/27/2011

25

Visual Simulation?

How to review Virtual Environment Experiences?

How do we use Visual Simulation as a Behavioral Research Tool?

Ponto, Kohlmann, and Gleicher. Effective Replays and Summarization of Virtual Experiences. IEEE TVCG (VR 2012, accepted, to appear).

Head Tracked Virtual Experiences

What did they see?

Where were they “looking”?

A (3D) Video Stabilization Problem?

Easier than 3D Stabilization:

Have camera path

Have world geometry (to render novel views)

Higher Expectations!

More power for analysis

More flexibility for re‐synthesis

Page 26: cmu - University of Wisconsin–Madison

11/27/2011

26

Key Ideas

Cinematography Modelfrom Re‐Cinematography

stable points + interpolations

Content‐Dependent Metriccameras see the same things?

efficient GPU implementation

Segmentationfind key “fixations”

serves as compact summary

Path Generationcinematic smooth arcs

exp. Coord interpolation

Reproject Original Viewpoint

Key Ideas

Cinematography Modelfrom Re‐Cinematography

stable points + interpolations

Content‐Dependent Metriccameras see the same things?

efficient GPU implementation

Segmentationfind key “fixations”

serves as compact summary

Path Generationcinematic smooth arcs

exp. Coord interpolation

Reproject Original Viewpoint

Key Ideas

Cinematography Modelfrom Re‐Cinematography

stable points + interpolations

Content‐Dependent Metriccameras see the same things?

efficient GPU implementation

Segmentationfind key “fixations”

serves as compact summary

Path Generationcinematic smooth arcs

exp. Coord interpolation

Reproject Original Viewpoint

Key Ideas

Cinematography Modelfrom Re‐Cinematography

stable points + interpolations

Content‐Dependent Metriccameras see the same things?

efficient GPU implementation

Segmentationfind key “fixations”

serves as compact summary

Path Generationcinematic smooth arcs

exp. Coord interpolation

Reproject Original Viewport

Key Ideas

Cinematography Modelfrom Re‐Cinematography

stable points + interpolations

Content‐Dependent Metriccameras see the same things?

efficient GPU implementation

Segmentationfind key “fixations”

serves as compact summary

Path Generationcinematic smooth arcs

exp. Coord interpolation

Reproject Original Viewport

Page 27: cmu - University of Wisconsin–Madison

11/27/2011

27

EvaluationThree Initial Studies

Objective: VR Participant Viewed Objects

Subjective: Viewer Prefers

Objective: Viewer Comprehends

Molecular Surface Abstraction

Virtual Environment Replay Video Stabilization

Molecular Motions

Sequence Comparison

How can we use our understanding of human perception and artistic traditions 

to improve our tools for communicating and data understanding?

Thanks!

• To you for listening

• To my students and collaborators

• To the folks who pay the bills

(NSF, NIH, DoE, …)

Michael [email protected] of Computer SciencesUniversity of Wisconsin ‐Madison