32
Computer Graphics Introduction Aleksandra Pizurica Ghent University Telecommunications and Information Processing Image Processing and Interpretation Group

Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Computer Graphics

Introduction

Aleksandra Pizurica

Ghent University

Telecommunications and Information Processing

Image Processing and Interpretation Group

Page 2: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_2

Overview

• Lectures and coursework

Instructors, projects, excersizes, exam,…

• Computer graphics around us

Why is it interesting? Applications…

• Contents of this course

Topics, syllabus, books,…

• Interesting to know

About 3D modelling

Page 3: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Lectures and Coursework

Page 4: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_4

Lectures

• Lecturer

Prof. Aleksandra Pizurica

Email: [email protected] ; Tel. 09 264 34 15

You can find me in “Technicum”, Sint-Pietersnieuwstraat 41, Dept.

TELIN, room 2.05

Research group IPI – Image Processing and Interpretations

• Time and place of the lectures

Fridays 11:30 – 12:45, Jozef Pletaustraat, Aud I

• Presentations and additional study material available:

official version for the current course on Minerva

(some older slides) http://telin.ugent.be/~sanja/ComputerGraphics

Page 5: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_5

Projects

• Assistants: Danilo Babin [email protected]

Tijana Ruzic [email protected]

• Programming assignement and theoretical insight Not (fully) covered in the lectures (you will read an article)

You will produce: code + short report

Try to go beyond and make something cool!

• Done in groups ( 2 or 3 students per group) Team work, but everyone participates fully!

Understanding and the work done tested individually

Contact your assistants timely for advice and help

• Counts for 1/3 of the exam

Page 6: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_6

Projects: what we expect

• Collaboration encouraged, but contributions from each student are requested and must be evident

• Writing the code Write your own code and give your own comments

Using example codes (if you find these) allowed, but reference them

Pay attention to the efficiency of the code

• Writing report: Write the text yourself

You can cite a sentence form other work, but reference it

Never copy large parts of the text from other sources!

• Creativity and original contributions Be free to extend the project assignment further yourself in any way

you find it interesting (in the code functionality, theoretical insight,…)

Page 7: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_7

Evaluation

• Theory (1/3) Part of the written exam in the presence of the lecturer

• Exercise (1/3)

Part of the written exam in the presence of the lecturer (1/6)

Programming exercise and participation in the class (1/6)

• Project (1/3)

Problem solving, literature study, programming

Written report

Demonstration of the code and discussion

Page 8: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_8

Written exam vs exercise and projects

• Written exam in the presence of lecturer (1/2) Counts for 1/2 of the final mark

Duration: 4 hours

Two parts

• Closed book: theory (1/4)

• Open book: theory understanding and problem solving (1/4)

• Projects and programming assignments (1/2) Count in total for 1/2 of the final mark

Two types

• Programming: exercise and discussions in the class (1/6)

• Project (1/3)

Page 9: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

• This course is based mainly on

“Interactive Computer Graphics: A Top-Down Approach,” Edward

Angel, Addison-Wesley, 2006 (denoted as Angel in the slides)

“Computer Graphics: Principles and Practice,” J. Foley, A. van Dam,

S. Feiner and J. Hughes, Addison-Wesley, 1996 (denoted as book

FvDFH in the slides)

• Some of other books

“Computer Graphics and Virtual Environments,” M. Slater, A. Steed,

Y. Chrysanthou, Addison-Wesley, 2002

“Computer Graphics using Open GL,” Francis Hill, Prentice Hall, 2001

“3D Computer Graphics,” Alan Watt, Addison-Wesley, 1999

“Computational geometry,” M. de Berg, M. van Kreveld, M. Overmars

en O. Schwarzkopf, Springer, 2000

“Mathematics for Computer Graphics,” John Vince, Springer, 2005

Color Appearance Models,” Mark Fairchild, Addison-Wesley, 2005

P01_9

Books

Page 10: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Links with image processing

• Image processing improve and analyze image content

Improving image quality (noise removal, sharpening,…)

Analyzing image (and video) content:

• detecting and recognizing certain patterns (e.g. characters),

segmenting (and tracking in time) objects of interest,…

Scene analysis (recognize and reconstruct a 3D model of a scene

from 2D images)

• Computer graphics synthesize images from computer models

Display of information

Design of 2D and 3D objects

Animation

User interfaces

• Overlap between the two domains is growing

P01_10

Page 11: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Computer Graphics arround us

Page 12: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_12

Applications of Computer Graphics

• Entertainment

• Graphical user interface (GUI)

• Computer-aided design

• Scientific visualisation

• Education and training

• Computer art

• Analysis of artworks

• Virtual reality (virtual meetings, virtual visits to musea,…)

Page 13: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_13

Applications: Entertainment

• Movies

• Computer games

“Finding Nemo”

“Shrek”

“Star Wars”

(Dreamworks Animation)

Page 14: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_14

Applications: Graphical User Interface

Page 15: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_15

Applications: Computer Aided Design

• Designing objects (real or virtual), 2D or 3D

• Mechanics, architecture, GIS,…

• Examples: AutoCAD, GoogleSketchUp,…

Michigan Scientific Corporation

© Robert J. Corley

SketchUp Pro

Page 16: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_16

Applications: Scientific Visualisation

Geo physical turbulence Benjamin Jamroz, Ed Lee, and Thorwald Stein

Brain image and estimated neural connections Neuroimage Analysis Center

Rate of Icecap change NASA GSFC Scientific Visual Studio

A simulation of shuttle pressure NASA Johnson Space Cemnter

Page 17: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_17

Applications: Education and training

Visible Body Argosy Publishing

Virtual Orthopedic Surgery Training A. Sourin, O. Sourina, and H. Tet Sen

Projects in VR

Flight Simulator NASA

Driving Simulation Evans & Sutherland

Page 18: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_18

Applications: Computer Art

Teis Albers "Animal Conversation"

Robert W. Mc. Gregor

Page 19: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Applications: Analysis of artworks

01a_19

The Arnolfini Portrait, Jan Van Eyck, 1434

Computer graphics techniques (ray tracing) are used to study the perspective in art works (Is it realistic? Is it “too realistic” (was the artist helped by an optical device)? Where is the light source? etc.)

Page 20: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Applications: Analysis of artworks

01a_20

Girl with a pearl earring Johannes Vermeer (1632-1675)

• We can generate computer models of objects (e.g., pearls), and “view” them under different lighting conditions.

• We can also generate a 3D model of the whole scene and infer so far unseen views of the scene and persons in it.

Examples from the work of David Stork and collaborators

Page 21: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Applications: Virtual reality

01a_21

A virtual meeting where people are represented by their avatars

Computer graphics techniques are essential for creating virtual reality worlds, like

•future meetings (people represented by their avatars in virtual conference rooms, while sitting comfortably in their homes, remote offices...)

•virtual city tours, virtual visits to museums,…

Page 22: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Contents of this course

Page 23: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

• Digital images and graphics formats

Raster images

Vector images

Elements of color perception and reproduction

• Raster graphics algorithms for drawing 2D primitives

Scan conversion for line, circle and ellipse drawing

Polygon filling

Clipping

P01_23

Contents…

Page 24: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

•Geometrical transformations

Homogeneous coordinates

Matrix representation and composition of 2D and 3D transformations

Quaternions

• Viewing in 3D

Classical and computer viewing

Projections (parallel and perspective)

Clipping in 3D

Hidden surface removal

P01_24

…Contents…

Page 25: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_25

…Contents …

•Illumination and shading

Illumination models

Shading models for polygons

Ray casting and ray tracing

Radiosity

• Texture generation and mapping

Texture generation:

• statistical methods

• tiling methods

Texture mapping

model

model + shading

model + texture + shading

Page 26: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

P01_26

…Contents

• Curves and surfaces

Polygon meshes

Hermite curves and surfaces

Bézier curves and surfaces

Non-uniform rational B splines (NURBS)

Subdivison surfaces

• Modeling

Hierarchical models

Animation

Scene graphs

• Free topic – guest lecture

• Elements of programming in OpenGL

Page 27: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

The rendering pipeline

P01_27

MIT open courseware

Different steps in the graphics rendering pipeline:

• Vertex processing (convert vertices to 2D screen positions)

• Clipping – removing the invisible parts

• Rasterization

• Occlusion culing – removing pixels hidden by other objects

• Shading – adding texture and final color

• Frame buffer controler - interface to the physical memory

Page 28: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Elements of programming in OpenGL

P01_28

• Study and experiment with one graphics program

• Done in groups per 2, with clear distribution of the work

• The executable version and main conclusions presented in a flash

presentation in the class

• 7 min presentations

• 7 min questions by the classmates and the lecturer

• The list of presentations will be kept on Minerva

• Many nice codes and examples available at

http://www.cs.unm.edu/~angel/BOOK/INTERACTIVE_COMPUTER_GR

APHICS/

Page 29: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Interesting to know…

Page 30: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Computer graphics models

P01_30

One of the most popular computer graphics models is “teapot”. The photo shows the actual “Melitta” teapot that Martin Nevell digitized in 1975. (Now in the Computer History Museum in Silicon Valley.)

Page 31: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

NURBS – Non Uniform Rational B Splines

P01_31

• Commonly used in computer graphics for generating and representing curves and surfaces

• Great flexibility and precision for handling both analytic and freeform shapes

ARIA - Mark Spink Production

A modeling example

Toy Story Disney Pixar

Page 32: Department of Telecommunications and Information Processing (TELIN) - Computer Graphicssanja/ComputerGraphics2012/P01... · 2012-11-26 · Computer graphics models P01_30 One of the

Subdivision surfaces

P01_32

Geri’s game Disney Pixar

• Polygon mesh representation

• A “smooth” surface calculated from the coarse mesh by recursively subdividing each polygonal face into smaller faces

• More flexible than NURBS

E.J. Stollnitz, T.D. DeRose and D.H. Salesin, “Wavelets for Computer Graphics: A Primer Part 2, IEEE Comp. Graph. and Appl., July 1995.

http://www.youtube.com/watch?v=1m7dcbIKvlw