CSC 276 Computer Graphics with OpenGL
CHAPTER 1: SURVEY OF CG
Outline
What is Computer Graphics?
Application Areas
History of Graphics
Basics of Image Formation
CSC 276 Computer Graphics with OpenGL
2
Objectives
Explore computer graphics
Survey some application areas
Start with a historical introduction as that will
provide us with some background
terminology.
CSC 276 Computer Graphics with OpenGL
3
Computer Graphics ?
The art and science of creating images by
computer
- Technology for generating visual media (digital
images & video) with control over style,
appearance, realism, motion,
- Digital tools for visual communication
Key elements
- Algorithms for rendering, modeling,
animation
- Interface design and programming
- Human perception
CSC 276 Computer Graphics with OpenGL
4
Computer Graphics ?
Definition
Producing pictures or images using a computer
OR
Computer graphics deals with all aspects of
creating images with a computer
Hardware
Software
Applications
CSC 276 Computer Graphics with OpenGL
5
CSC 276 Computer Graphics with OpenGL 6
What is Computer Graphics?
Imaging
Representing 2D images
Modeling
Representing 3D objects
Rendering
Constructing 2D images from 3D models
Animation
Simulating changes over time
Computer imaging
Deals with manipulating images with a computer
after they have been input by some means ---
digital camera, scanner, video camera etc.
Computer Vision techniques attempt to provide
meaning to computer images.
Note: Many movies today use both graphics and
imaging to achieve special effects.
CSC 276 Computer Graphics with OpenGL
7
Example
Where did this image come from?
What hardware/software did we need to
produce it?
CSC 276 Computer Graphics with OpenGL
8
Preliminary Answer
Application: The object is an artists rendition
of the sun for an animation to be shown in a
domed environment (planetarium).
Software: Maya for modeling and rendering
but Maya is built on top of OpenGL .
Hardware: PC with graphics cards for
modeling and rendering.
CSC 276 Computer Graphics with OpenGL
9
Basic Graphics System
CSC 276 Computer Graphics with OpenGL
10
Input devices
Output device
Image formed in Frame Buffer
CRT
Can be used either as a line-drawing device (calligraphic) or
to display contents of frame buffer (raster mode)
CSC 276 Computer Graphics with OpenGL
11
Computer Graphics:
1950-1960
Computer graphics goes back to the earliest
days of computing
Strip charts
Pen plotters
Simple displays using A/D converters to go from
the computer to calligraphic CRT
Cost of refresh for CRT too high
Computers slow, expensive, unreliable
CSC 276 Computer Graphics with OpenGL
12
Computer Graphics:
1960-1970
Wireframe graphics
Project Sketchpad with I. Sutherland
Display Processors
Storage tubes
CSC 276 Computer Graphics with OpenGL
13
Computer Graphics:
1970-1980
Raster Graphics
Beginning of graphics standards
IFIPS (International Federation of Information Processing Systems)
GKS (Graphics Kernel System): European effort
2D standard adopted by ISO (International Standards
Organization)
Core: North American effort
3D but failed to become ISO standard
Workstations and PCs
CSC 276 Computer Graphics with OpenGL
14
Raster Graphics
Image produced as an array (the raster) of
picture elements (pixels) in the frame buffer
CSC 276 Computer Graphics with OpenGL
15
Raster Graphics
Allow us to go from lines and wireframes to
filled polygons
CSC 276 Computer Graphics with OpenGL
16
PCs and Workstations
Although we no longer make the distinction
between workstations and PCs, historically
they evolved from different roots
Early workstations were characterized by
Networked connection: client-server
High-level of interactivity
Early PCs included the frame buffer as part of the
users memory
CSC 276 Computer Graphics with OpenGL
17
Computer Graphics:
1980-1990
Realism comes to computer graphics
CSC 276 Computer Graphics with OpenGL
18
smooth shading environmental
mapping
bump mapping
Computer Graphics:
1980-1990
Special purpose hardware
Silicon Graphics geometry engine
VLSI (Very Large Scale Integration) implementation of graphics
pipeline
Industry-based standards emerged
PHIGS (Programmers Hierarchical Interactive
Graphics System) (1988), PHIGS+ (1992)
GKS-3D (1988).
RenderMan
Networked graphics: X Window
Human-Computer Interface (HCI)
CSC 276 Computer Graphics with OpenGL
19
Computer Graphics:
1990-2000
OpenGL API see definition next slide
Completely computer-generated feature-
length movies (Toy Story) are successful
New hardware capabilities
Texture mapping
Blending
Accumulation, stencil buffer
CSC 276 Computer Graphics with OpenGL
20
APIs
Application program interface, a set of routines,
protocols, and tools for building software
applications.
A good API makes it easier to develop a program
by providing all the building blocks.
A programmer puts the blocks together.
Most operating environments, such as MS-
Windows, provide an API so that programmers
can write applications consistent with the
operating environment.
CSC 276 Computer Graphics with OpenGL
21
Computer Graphics:
2000-
Photorealism
Graphics cards for PCs dominate market
Game boxes and game players push the market
Use of computer graphics software becomes
routine in movie industry: Maya, Light wave
(Bryce is not used in the industry, but it shares
many features with Maya and Light wave.)
CSC 276 Computer Graphics with OpenGL
22
Objectives of Image
Formation
Look at the fundamental imaging
notions/concepts
Consider the physical basis for image formation
Light
Color
Perception
Introduce the synthetic camera model
Survey other models
CSC 276 Computer Graphics with OpenGL
23
Image Formation
In computer graphics, we form images which
are generally two dimensional using a process
analogous to how images are formed by
physical imaging systems
Cameras
Microscopes
Telescopes
Human visual system
CSC 276 Computer Graphics with OpenGL
24
Elements of Image Formation
Objects
Viewer
Light source(s)
Attributes that govern how light interacts
with the materials in the scene
Note the independence of the objects,
viewer, and light source(s)
CSC 276 Computer Graphics with OpenGL
25
Light
Light is the part of the electromagnetic
spectrum that causes a reaction in our visual
systems.
Generally these are wavelengths in the range of
about 350-750 nm (nanometer=10
-9
m).
Long wavelengths appear as reds and short
wavelengths as blues
CSC 276 Computer Graphics with OpenGL
26
Luminance and Color
Images
Luminance
Monochromatic
Values are gray levels
Analogous to working with black and white film or
television
Color
Has perceptional attributes of hue, saturation, and
lightness, (HSL).
CSC 276 Computer Graphics with OpenGL
27
Three-Color Theory
Human visual system has two types of sensors
Rods: monochromatic, night vision
Cones
Color sensitive
Three types of cone
Only three values (the
tristimulus values) are
sent to the brain
Need only match these three values
Need only three primary colors
CSC 276 Computer Graphics with OpenGL
28
Additive and Subtractive Color
Additive color
Form a color by adding amounts of three primaries
CRTs, projection systems, positive film
Primaries are Red (R), Green (G), Blue (B)
Subtractive color
Form a color by filtering white light with cyan (C),
Magenta (M), and Yellow (Y) filters
Light-material interactions
Printing
Negative film
CSC 276 Computer Graphics with OpenGL
29
Applications of CG
Graphs and Charts
Computer Aided Design (CAD)
Virtual Reality
Data Visualization
Simulation
Education
Computer Art
Entertainment
Image processing
GUI.
CSC 276 Computer Graphics with OpenGL
30
CSC 276 Computer Graphics with OpenGL 31
Graphs and charts
Graphs and Charts are commonly used to
summarize financial, statistical, mathematical,
scientific, engineering, and economic data for
research reports, managerial summaries,
consumer information bulletins, and other
types of publications
CSC 276 Computer Graphics with OpenGL 32
Graphs and charts
Graphics for Scientific, Engineering, and Medical Data
Nebula Medical Image
CSC 276 Computer Graphics with OpenGL 33
Computer-Aided Design (CAD)
CAD (Computer-aided design) or CADD (computer-
aided drafting and design), these methods are used in
the design of buildings, automobiles, aircraft,
watercraft, spacecraft, computers, textiles, home
appliances, and a multitude of other products.
The manufacturing process is also tied in to the
computer description of designed objects so that the
fabrication of a product can be automated, using
methods that are referred to as CAM ( computer
aided manufacturing)
CSC 276 Computer Graphics with OpenGL 34
Computer-Aided Design
Graphics for Engineering and Architectural System
Design of Building, Automobile, Aircraft, Machine etc.
AutoCAD 2002
Interior Design
CSC 276 Computer Graphics with OpenGL
35
CSC 276 Computer Graphics with OpenGL 36
Virtual-Reality
In Virtual-Reality Environments , a
user can interact with the objects
in a three-dimensional scene
Virtual Reality Environment
CSC 276 Computer Graphics with OpenGL 37
Virtual Reality
CSC 276 Computer Graphics with OpenGL 38
Virtual Reality
CSC 276 Computer Graphics with OpenGL 39
Virtual Reality
CSC 276 Computer Graphics with OpenGL 40
Virtual Reality
CSC 276 Computer Graphics with OpenGL 41
Virtual Reality
CSC 276 Computer Graphics with OpenGL 42
Virtual Reality
CSC 276 Computer Graphics with OpenGL 43
CSC 276 Computer Graphics with OpenGL 44
Data Visualization
Producing graphical representations for
scientific, engineering, and medical data sets
and processes is generally referred to as
scientific visualization.
Business visualization is used in connection
with data sets related to commerce, industry,
and other nonscientific areas.
Scientific Visualization
Katrina Hurricane (September 2005)
CSC 276 Computer Graphics with OpenGL
45
CSC 276 Computer Graphics with OpenGL
46
CSC 276 Computer Graphics with OpenGL
47
CSC 276 Computer Graphics with OpenGL
48
CSC 276 Computer Graphics with OpenGL
49
CSC 276 Computer Graphics with OpenGL 50
Simulation
Computer-Generated Models of Physical,
Financial and Economic Systems for
Educational Aids
Flight Simulator
Mars Rover Simulator
Education
CSC 276 Computer Graphics with OpenGL 51
Graphics are heavily used in textbooks, especially those
concerning subjects such as geography, science,
and mathematics, in order to illustrate theories and
concepts, such as the human anatomy. Diagrams are also
used to label photographs and pictures.
Educational animation is an important emerging field of
graphics. Animated graphics have obvious advantages over
static graphics when explaining subject matter that
changes over time.
CSC 276 Computer Graphics with OpenGL 52
Computer Art
Graphics for Artist
Metacreation Painter
CSC 276 Computer Graphics with OpenGL 53
Entertainment
Graphics for Movie, Game, VR etc.
Final Fantasy
Online Game
Image Processing
CSC 276 Computer Graphics with OpenGL 54
Image processing is referred to processing of a 2D picture by
a computer.
Image Processing (image in -> image out)
Image Analysis (image in -> measurements out)
Image Understanding (image in -> high-level description out)
Image Processing
CSC 276 Computer Graphics with OpenGL 55
Closely related to image processing are Computer
Graphics and Computer Vision
In computer graphics, images are manually made from
physical models of objects, environments, and lighting,
instead of being acquired (via imaging devices such as
cameras) from natural scenes, as in most animated
movies.
Computer vision, on the other hand, is often
considered high-level image processing out of which a
machine/computer/software intends to decipher the
physical contents of an image or a sequence of images
(e.g., videos or 3D full-body magnetic resonance scans).
Image Processing Techniques
CSC 276 Computer Graphics with OpenGL 56
Image enhancement:
It refers to accentuation, or sharpening, of image features such as
boundaries, or contrast to make a graphic display more useful for
display & analysis. This process does not increase the inherent
information content in data. It includes gray level & contrast
manipulation, noise reduction, edge crispening and sharpening,
filtering, interpolation and magnification, pseudo coloring, and so
on.
Image restoration:
It is concerned with filtering the observed image to minimize the
effect of degradations. Effectiveness of image restoration depends
on the extent and accuracy of the knowledge of degradation
process as well as on filter design. Image restoration differs from
image enhancement in that the latter is concerned with more
extraction or accentuation of image features.
Image Processing Techniques
CSC 276 Computer Graphics with OpenGL 57
Image compression:
It is concerned with minimizing the no of bits required to
represent an image. Application of compression are in
broadcast TV, remote sensing via satellite, military
communication via aircraft, radar, teleconferencing, facsimile
transmission, for educational & business documents, medical
images that arise in computer tomography, magnetic
resonance imaging and digital radiology, motion, pictures,
satellite images, weather maps, geological surveys and so on.
Text compression CCITT GROUP3 & GROUP4
Still image compression JPEG
Video image compression -MPEG
Graphical User Interface (GUI)
CSC 276 Computer Graphics with OpenGL
58
Elementary Pipeline
CSC 276 Computer Graphics with OpenGL
59
CSC 276 Computer Graphics with OpenGL
60
CSC 276 Computer Graphics with OpenGL
61
CSC 276 Computer Graphics with OpenGL
62
CSC 276 Computer Graphics with OpenGL
63
CSC 276 Computer Graphics with OpenGL
64
CSC 276 Computer Graphics with OpenGL
65
CSC 276 Computer Graphics with OpenGL
66
Thank you
CSC 276 Computer Graphics with OpenGL 67