SlideShare a Scribd company logo
1 of 54
1
CS101 Introduction to Computing
Lecture 33
Graphics & Animation
2
During the last lecture …
(Internet Services)
• We looked at several services provided by the
Internet
– FTP
– Telnet
– Web
– eMail
– Instant messaging
– VoIP
• We also found out about the addressing scheme
used on the Internet
3
IP Address
• A unique identifier for a computer on a TCP/IP
network
• Format: four 8-bit numbers separated by
periods. Each 8-bit number can be 0 to 255
4
Domain Names
• IP addresses are fine for computers, but
difficult to recognize and remember for humans
• A domain name is a meaningful, easy-to-
remember ‘label’ for an IP address
5
DNS: Domain Name System
• DNS is the way that Internet domain names are
located & translated into IP addresses
6
FTP
• Used to transfer files between computers on a
TCP/IP network (e.g Internet)
7
Telnet Protocol
• Using Telnet, a user can remotely log on to a
computer (connected to the user’s through a
TCP/IP network, e.g. Internet) & have control
over it like a local user, including control over
running various programs
8
The Web
• The greatest, shared resource of information
created by humankind
• A user may access any item on the Web
through a URL, e.g.
http://www.vu.edu.pk/cs/index.html
9
http://www.vu.edu.pk/cs/index.html
Protocol
Identifier
Server
Address
Directory &
File Name
10
eMail
• Computer-to-computer messaging
• Inexpensive, and quite quick, but not instant!
11
But first, the components:
• eMail client
• SMTP server
• POP3 server
12
The Trouble with eMail
• Slow response times
• No way of knowing if the person we are
sending eMail to is there to read it
• The process of having a conversation through
eMail by exchanging several short messages is
too cumbersome
Instant messaging (IM) solves these problems
13
Instant Messaging
• The IM services available on the Internet (e.g.
ICQ, AIM, MSN Messenger, Yahoo!
Messenger) allow us to maintain a list of people
(contacts) that we interact with regularly
• We can send an instant messages to any of the
contacts in our list as long as that contact is
online
14
Key Point
• Once the IM server provides the
communication info to the user and his/her
contact’s IM client, the two are able to
communicate with each other without the IM
server’s assistance
• This server-less connection is termed as a P2P
connection
15
VoIP: Voice over IP
• Voice delivered from one device to another
using the Internet Protocol
• Inexpensive, but of poor quality
16
Today’s Goal:
Graphics & Animation
• We will become familiar with the role that
graphics and animations play in computing
• We will look at how graphics & animation are
displayed
• We will look at a few popular formats used for
storing graphics and animation
17
Computer Graphics
• Images created with the help of computers
• 2-D and 3-D (displayed on a 2-D screen but in
such a way that they give an illusion of depth)
• Used for scientific research, artistic expression,
or for industrial applications
• Graphics have made the computer interfaces
more intuitive by removing the need to
memorize commands
18
Displaying Images
• Most all computer displays consist of a grid of
tiny pixels arranged in a regular grid of rows
and columns
• Images are displayed by assigning different
colors to the pixels located in the desired
portion of the computer display
• Let’s discuss the pixel a bit more …
19
Pixel
• The smallest image forming element on a
computer display
• The computer display is made up of a regular
grid of these pixels
• The computer has the capability of assigning
any color to any of the individual pixels on the
display
• Let’s now see how the computer displays a
square
20
21
Pixel Colors (1)
• The color of each pixel is generally represented
in the form a triplet
• In a popular scheme – the RGB scheme – each
part of the triplet represents the intensity of one
of out of three primary colors: red, green, blue
• Often, the intensity of each color is represented
with a byte, resulting in 256x256x256 (16+
million) unique color combinations
22
Pixel Colors (2)
• If this scheme is used to display an image that
is equal to the size of an XGA (1024x768
pixels) display, the image will require 2.25MB of
storage, which is just too much
• A number of clever schemes have been
invented to reduce the number of bytes that are
required for storing graphics. 2 popular ones:
– Color mapping
– Dithering
23
Color Mapping (1)
• Instead of letting each pixel assume one out of
16 million possible colors, only a limited
number of colors – called the platelet – are
allowed
• For example, the platelet may be restricted to
256 colors (requiring 1 byte/pixel instead of 3)
24
Color Mapping (2)
• Each value, from 0 to 255, is mapped to a
selected RGB color through a table, reducing
the size of a 2.25MB graphic to 0.75MB
• The quality of the displayed image will not
suffer at all if the image only uses colors that
are a part of the platelet
25
Color Platelet Example
Color Platelet Code Actual Color in RGB
1 255, 255, 000 (yellow)
2 255, 000, 000 (red)
3 000, 255, 255 (cyan)
4 255, 153, 051 (orange)
… …
… …
… …
26
Dithering
• In this scheme, pixels of alternating colors are
used to simulate a color that is not present in
the platelet
• For example, red and green pixels can be
alternated to give the impression of bright
yellow
• The quality of the displayed image is poorer
27
Aliasing
• The computer screen consists of square-ish
pixels arranged in a fixed grid
• At times, when a diagonal line is drawn on this
grid, it looks more like a staircase, instead of a
straight line
• This effect – called aliasing – can be managed
by reducing the size of pixels
28
29
Anti-Aliasing (1)
• Anti-aliasing is another technique used for
managing the ‘staircase’ effect
• Let’s say that we need to draw a white straight-
line such that it overlaps 60% with one pixel,
and 40% with another initially, and near the
end, 58%, 41%, and 1%, respectively, with
three pixels
30
Anti-Aliasing (2)
• The staircase effect is caused because the
proper drawing of the line requires a pixel that
does not exist
• There are three options in this case:
– Assign the white color to the pixel corresponding to
the largest overlap
– Assign the white color to both pixels
• Either of these will cause the staircase effect
31
32
33
Anti-Aliasing (3)
• The 3rd option is to color the pixel with 60%
overlap to a 40% gray color & the other one to
60% gray
• Result: A smoother - pleasing to the eye - look
34
35
Graphics File Formats
The choice of the format generally depends
upon the nature of the image. For example:
– An image of natural scenery contains many
irregular, non-gemetric shapes, therefore is stored in
bit-map format
– A CAD drawing consists of many geometric shapes
like straight lines, arcs, etc. and therefore is stored
in a vector format
– A third situation arises when dealing with graphics
that contain both regular and irregular shapes
36
Vector or Object-Oriented Graphics
• Treats everything that is drawn as an object
• Objects retain their identity after they are drawn
• These objects can later be easily moved,
stretched, duplicated, deleted, etc
• Are resolution independent
• Relatively small file size
• Examples: swf, svg, wmf, ps
37
Bit-Mapped or Raster Graphics
• Treats everything that is drawn as a bit-map
• If an object is drawn on top of another, it is
difficult to move just one of them while leaving
the other untouched
• Changing the resolution often requires
considerable touch-up work
• Relatively large file size
• Examples: gif, jpg, bmp
38
File Formats Popular on the Web (1)
gif (Graphical Interchange Format)
–Bit-map images compressed using the LZW algo.
–The number of colors is first reduced to 256 and
then consecutive pixels having the same color are
encoded in a [color, numberOfPixels] format
–Works well with computer-generated graphics
(e.g. CAD, block diagrams, cartoons) but not with
natural, realistic images
–Loss-less for images having 256 colors or less
39
File Formats Popular on the Web (2)
jpg (JPEG – Joint Photographic Experts Group)
–Compressed, full-color and gray-scale bit-map
images of natural, real-world scenes, where most
every pixel differs in color from its neighbor
–It does not work as well as gif with non-realistic
images, such as cartoons or line drawings
–Does not handle compression of B&W images
–Lossy
40
File Formats Popular on the Web (3)
swf (Shockwave Flash)
–Designed for 2-D animations, but can also be used
for storing static vector images as well
–A special program (called a plug-in) is required to
view swf files in a Web browser
svg (Structured Vector Graphics)
–New format; may become more popular than swf
41
Image Processing
• A branch of computer science concerned with
manipulating and enhancing computer graphics
• Examples:
– Converting 2-D satellite imagery into a 3-D model of
a terrain
– Restoring old, faded photographs into something
closer to the original
– Determining the amount of silting in Tarbela lake
from a satellite image
42
3-D Graphics (1)
• Flat images enhanced to impart the illusion of
depth
• We perceive the world and the objects in it in 3-
D - breadth, width, depth - although the images
formed on the retinas of our eyes are 2-D
• The secret of 3-D perception: stereo vision
43
3-D Graphics (2)
• The two eyes are spaced a few cm apart
• Result: The images formed on the two retinas
are slightly different
• The brain combines these two into a single 3-D
image, enabling us to perceive depth
44
3-D Graphics: Applications
• Games
• Medical images
• 3-D CAD
45
3-D Rendering
• The process of converting information about 3-
D objects into a bit-map that can be displayed
on a 2-D computer display
• Computationally, very expensive!
• Steps:
– Draw the wire-frame (skeleton, made with thin lines)
– Fill with colors, textures, patterns
– Add lighting effects (reflections, shadows)
46
Animation
• Graphics in motion, e.g. cartoons
• Illusion of motion is created by showing the
viewer a sequence of still images, rapidly
• Drawing those images - each slightly different
from the previous one - used to be quite
tedious work
• Computers have helped in cutting down some
of the tediousness
47
48
1
11
6
10
14 15 16
1312
987
5432
49
Computer Animation: Examples
• Games
• Cartoons, movies
• Visualization of processes, e.g the IM process
• Displaying the results of scientific experiments,
e.g. nuclear fusion
50
Tweening (1)
• Creating a reasonable illusion of motion
requires the drawing of 14-30 images per
second of animation – very tedious!
• In practice, only 4-5 images (called key images)
instead of 14-30 are drawn, and then the
computer is asked to create the remaining in-
between images
51
Tweening (2)
• This process of creating these in-between
images from key images is called in-
betweening (or tweening for short)
• The simplest algorithm for tweening calculates
the position of a particular segment of an image
by calculating the average of the positions of
that same image segment belonging to
adjacent key images
52
The Future of Graphics & Animation
• New graphic-file storage formats will appear
with better compression efficiencies
• 3-D animation will become more popular as
computers become faster and algorithms
become smarter
• More realistic games; better realism in movies
– may, one day, make the human actors extinct
53
Today’s Goal:
Graphics & Animation
• We became familiar with the role that
graphics and animations play in computing
• We discussed how graphics & animation are
displayed
• We also looked at several formats used for
storing graphics and animation
54
Next Lecture:
(Intelligent Systems)
• To become familiar with the distinguishing
features of intelligent systems with respect to
other software systems
• To become able to appreciate the role of
intelligent systems in scientific, business and
consumer applications
• To look at several techniques for designing
intelligent systems

More Related Content

What's hot

Image compression
Image compressionImage compression
Image compressionIshucs
 
Pixel and resolution
Pixel and resolutionPixel and resolution
Pixel and resolutionthomasmcd6
 
Introduction to computer graphics
Introduction to computer graphics Introduction to computer graphics
Introduction to computer graphics Priyodarshini Dhar
 
Working with images in matlab graphics
Working with images in matlab graphicsWorking with images in matlab graphics
Working with images in matlab graphicsmustafa_92
 
Representation of Bitmapped Graphics
Representation of Bitmapped GraphicsRepresentation of Bitmapped Graphics
Representation of Bitmapped GraphicsForrester High School
 
Computer Graphics Introduction
Computer Graphics IntroductionComputer Graphics Introduction
Computer Graphics IntroductionGhaffar Khan
 
Model 1 multimedia graphics and animation introduction (1)
Model 1 multimedia graphics and animation introduction (1)Model 1 multimedia graphics and animation introduction (1)
Model 1 multimedia graphics and animation introduction (1)Rahul Borate
 
Introduction in Image Processing Matlab Toolbox
Introduction in Image Processing Matlab ToolboxIntroduction in Image Processing Matlab Toolbox
Introduction in Image Processing Matlab ToolboxShahriar Yazdipour
 
Introductory Digital Image Processing using Matlab, IIT Roorkee
Introductory Digital Image Processing using Matlab, IIT RoorkeeIntroductory Digital Image Processing using Matlab, IIT Roorkee
Introductory Digital Image Processing using Matlab, IIT RoorkeeVinayak Sahai
 
DCT image compression
DCT image compressionDCT image compression
DCT image compressionyoussef ramzy
 
Introduction to computer vision
Introduction to computer visionIntroduction to computer vision
Introduction to computer visionMarcin Jedyk
 
Display Hardware
Display HardwareDisplay Hardware
Display Hardwareguest56aeb3
 
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Imagesstudy Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded ImagesChiamin Hsu
 

What's hot (20)

fundamentals of Computer graphics(Computer graphics tutorials)
 fundamentals of Computer graphics(Computer graphics tutorials) fundamentals of Computer graphics(Computer graphics tutorials)
fundamentals of Computer graphics(Computer graphics tutorials)
 
Image compression
Image compressionImage compression
Image compression
 
Pixel and resolution
Pixel and resolutionPixel and resolution
Pixel and resolution
 
Introduction to computer graphics
Introduction to computer graphics Introduction to computer graphics
Introduction to computer graphics
 
Working with images in matlab graphics
Working with images in matlab graphicsWorking with images in matlab graphics
Working with images in matlab graphics
 
Representation of Bitmapped Graphics
Representation of Bitmapped GraphicsRepresentation of Bitmapped Graphics
Representation of Bitmapped Graphics
 
Computer Graphics Introduction
Computer Graphics IntroductionComputer Graphics Introduction
Computer Graphics Introduction
 
Project004
Project004Project004
Project004
 
Model 1 multimedia graphics and animation introduction (1)
Model 1 multimedia graphics and animation introduction (1)Model 1 multimedia graphics and animation introduction (1)
Model 1 multimedia graphics and animation introduction (1)
 
Introduction in Image Processing Matlab Toolbox
Introduction in Image Processing Matlab ToolboxIntroduction in Image Processing Matlab Toolbox
Introduction in Image Processing Matlab Toolbox
 
Ec section
Ec section Ec section
Ec section
 
Introductory Digital Image Processing using Matlab, IIT Roorkee
Introductory Digital Image Processing using Matlab, IIT RoorkeeIntroductory Digital Image Processing using Matlab, IIT Roorkee
Introductory Digital Image Processing using Matlab, IIT Roorkee
 
DCT image compression
DCT image compressionDCT image compression
DCT image compression
 
Introduction to computer vision
Introduction to computer visionIntroduction to computer vision
Introduction to computer vision
 
Display Hardware
Display HardwareDisplay Hardware
Display Hardware
 
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Imagesstudy Diffusion Curves: A Vector Representation for Smooth-Shaded Images
study Diffusion Curves: A Vector Representation for Smooth-Shaded Images
 
(2) gui drawing
(2) gui drawing(2) gui drawing
(2) gui drawing
 
How Computers Represent Graphics
How Computers Represent GraphicsHow Computers Represent Graphics
How Computers Represent Graphics
 
Frame buffer
Frame bufferFrame buffer
Frame buffer
 
Jpeg
JpegJpeg
Jpeg
 

Viewers also liked

ENG101- English Comprehension- Lecture 36
ENG101- English Comprehension- Lecture 36ENG101- English Comprehension- Lecture 36
ENG101- English Comprehension- Lecture 36Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22Bilal Ahmed
 
MGT101 - Financial Accounting- Lecture 36
MGT101 - Financial Accounting- Lecture 36MGT101 - Financial Accounting- Lecture 36
MGT101 - Financial Accounting- Lecture 36Bilal Ahmed
 
MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 35
CS101- Introduction to Computing- Lecture 35CS101- Introduction to Computing- Lecture 35
CS101- Introduction to Computing- Lecture 35Bilal Ahmed
 
ENG101- English Comprehension- Lecture 42
ENG101- English Comprehension- Lecture 42ENG101- English Comprehension- Lecture 42
ENG101- English Comprehension- Lecture 42Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 11
CS201- Introduction to Programming- Lecture 11CS201- Introduction to Programming- Lecture 11
CS201- Introduction to Programming- Lecture 11Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 39
CS101- Introduction to Computing- Lecture 39CS101- Introduction to Computing- Lecture 39
CS101- Introduction to Computing- Lecture 39Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 32
CS101- Introduction to Computing- Lecture 32CS101- Introduction to Computing- Lecture 32
CS101- Introduction to Computing- Lecture 32Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10Bilal Ahmed
 
ENG101- English Comprehension- Lecture 28
ENG101- English Comprehension- Lecture 28ENG101- English Comprehension- Lecture 28
ENG101- English Comprehension- Lecture 28Bilal Ahmed
 
ENG101- English Comprehension- Lecture 35
ENG101- English Comprehension- Lecture 35ENG101- English Comprehension- Lecture 35
ENG101- English Comprehension- Lecture 35Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35Bilal Ahmed
 
PAK301- Pakistan Studies- Lecture 27
PAK301- Pakistan Studies- Lecture 27PAK301- Pakistan Studies- Lecture 27
PAK301- Pakistan Studies- Lecture 27Bilal Ahmed
 
CS101- Introduction to Computing- Lecture 23
CS101- Introduction to Computing- Lecture 23CS101- Introduction to Computing- Lecture 23
CS101- Introduction to Computing- Lecture 23Bilal Ahmed
 
MGT101 - Financial Accounting- Lecture 40
MGT101 - Financial Accounting- Lecture 40MGT101 - Financial Accounting- Lecture 40
MGT101 - Financial Accounting- Lecture 40Bilal Ahmed
 
ENG101- English Comprehension- Lecture 40
ENG101- English Comprehension- Lecture 40ENG101- English Comprehension- Lecture 40
ENG101- English Comprehension- Lecture 40Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19Bilal Ahmed
 
ENG101- English Comprehension- Lecture 30
ENG101- English Comprehension- Lecture 30ENG101- English Comprehension- Lecture 30
ENG101- English Comprehension- Lecture 30Bilal Ahmed
 

Viewers also liked (20)

ENG101- English Comprehension- Lecture 36
ENG101- English Comprehension- Lecture 36ENG101- English Comprehension- Lecture 36
ENG101- English Comprehension- Lecture 36
 
CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22CS201- Introduction to Programming- Lecture 22
CS201- Introduction to Programming- Lecture 22
 
MGT101 - Financial Accounting- Lecture 36
MGT101 - Financial Accounting- Lecture 36MGT101 - Financial Accounting- Lecture 36
MGT101 - Financial Accounting- Lecture 36
 
MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33MGT101 - Financial Accounting- Lecture 33
MGT101 - Financial Accounting- Lecture 33
 
CS101- Introduction to Computing- Lecture 35
CS101- Introduction to Computing- Lecture 35CS101- Introduction to Computing- Lecture 35
CS101- Introduction to Computing- Lecture 35
 
ENG101- English Comprehension- Lecture 42
ENG101- English Comprehension- Lecture 42ENG101- English Comprehension- Lecture 42
ENG101- English Comprehension- Lecture 42
 
CS201- Introduction to Programming- Lecture 11
CS201- Introduction to Programming- Lecture 11CS201- Introduction to Programming- Lecture 11
CS201- Introduction to Programming- Lecture 11
 
CS101- Introduction to Computing- Lecture 39
CS101- Introduction to Computing- Lecture 39CS101- Introduction to Computing- Lecture 39
CS101- Introduction to Computing- Lecture 39
 
CS101- Introduction to Computing- Lecture 32
CS101- Introduction to Computing- Lecture 32CS101- Introduction to Computing- Lecture 32
CS101- Introduction to Computing- Lecture 32
 
CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44CS101- Introduction to Computing- Lecture 44
CS101- Introduction to Computing- Lecture 44
 
CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10CS201- Introduction to Programming- Lecture 10
CS201- Introduction to Programming- Lecture 10
 
ENG101- English Comprehension- Lecture 28
ENG101- English Comprehension- Lecture 28ENG101- English Comprehension- Lecture 28
ENG101- English Comprehension- Lecture 28
 
ENG101- English Comprehension- Lecture 35
ENG101- English Comprehension- Lecture 35ENG101- English Comprehension- Lecture 35
ENG101- English Comprehension- Lecture 35
 
CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35CS201- Introduction to Programming- Lecture 35
CS201- Introduction to Programming- Lecture 35
 
PAK301- Pakistan Studies- Lecture 27
PAK301- Pakistan Studies- Lecture 27PAK301- Pakistan Studies- Lecture 27
PAK301- Pakistan Studies- Lecture 27
 
CS101- Introduction to Computing- Lecture 23
CS101- Introduction to Computing- Lecture 23CS101- Introduction to Computing- Lecture 23
CS101- Introduction to Computing- Lecture 23
 
MGT101 - Financial Accounting- Lecture 40
MGT101 - Financial Accounting- Lecture 40MGT101 - Financial Accounting- Lecture 40
MGT101 - Financial Accounting- Lecture 40
 
ENG101- English Comprehension- Lecture 40
ENG101- English Comprehension- Lecture 40ENG101- English Comprehension- Lecture 40
ENG101- English Comprehension- Lecture 40
 
CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19CS201- Introduction to Programming- Lecture 19
CS201- Introduction to Programming- Lecture 19
 
ENG101- English Comprehension- Lecture 30
ENG101- English Comprehension- Lecture 30ENG101- English Comprehension- Lecture 30
ENG101- English Comprehension- Lecture 30
 

Similar to CS101 Graphics & Animation Lecture

Overview of graphics systems.ppt
Overview of graphics systems.pptOverview of graphics systems.ppt
Overview of graphics systems.pptMalleshBettadapura1
 
CS101- Introduction to Computing- Lecture 34
CS101- Introduction to Computing- Lecture 34CS101- Introduction to Computing- Lecture 34
CS101- Introduction to Computing- Lecture 34Bilal Ahmed
 
GJU MM Unit 3.pdf
GJU MM Unit 3.pdfGJU MM Unit 3.pdf
GJU MM Unit 3.pdfdiljots78
 
Chapter 3 : IMAGE
Chapter 3 : IMAGEChapter 3 : IMAGE
Chapter 3 : IMAGEazira96
 
new ai techniques.pptx
new ai techniques.pptxnew ai techniques.pptx
new ai techniques.pptxSanandMishra
 
Overview of graphics systems
Overview of  graphics systemsOverview of  graphics systems
Overview of graphics systemsJay Nagar
 
支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境John Chou
 
06 cie552 image_manipulation
06 cie552 image_manipulation06 cie552 image_manipulation
06 cie552 image_manipulationElsayed Hemayed
 
Scct2013 topic 3_graphics
Scct2013 topic 3_graphicsScct2013 topic 3_graphics
Scct2013 topic 3_graphicsAnies Syahieda
 
Visualization of Large Multivariate Data Sets using Parallel Coordinates
Visualization of Large Multivariate Data Sets using Parallel CoordinatesVisualization of Large Multivariate Data Sets using Parallel Coordinates
Visualization of Large Multivariate Data Sets using Parallel Coordinateskvaderlipa
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern PresentationDaniel Cahall
 
Chapter 3 data representations
Chapter 3 data representationsChapter 3 data representations
Chapter 3 data representationsABDUmomo
 
Chapter 3 Computer Hardware
Chapter 3 Computer HardwareChapter 3 Computer Hardware
Chapter 3 Computer Hardwareshelly3160
 
Dip unit-i-ppt academic year(2016-17)
Dip unit-i-ppt academic year(2016-17)Dip unit-i-ppt academic year(2016-17)
Dip unit-i-ppt academic year(2016-17)RagavanK6
 

Similar to CS101 Graphics & Animation Lecture (20)

Overview of graphics systems.ppt
Overview of graphics systems.pptOverview of graphics systems.ppt
Overview of graphics systems.ppt
 
CS101- Introduction to Computing- Lecture 34
CS101- Introduction to Computing- Lecture 34CS101- Introduction to Computing- Lecture 34
CS101- Introduction to Computing- Lecture 34
 
GJU MM Unit 3.pdf
GJU MM Unit 3.pdfGJU MM Unit 3.pdf
GJU MM Unit 3.pdf
 
Chapter 3 : IMAGE
Chapter 3 : IMAGEChapter 3 : IMAGE
Chapter 3 : IMAGE
 
Chapter 3
Chapter 3Chapter 3
Chapter 3
 
new ai techniques.pptx
new ai techniques.pptxnew ai techniques.pptx
new ai techniques.pptx
 
Overview of graphics systems
Overview of  graphics systemsOverview of  graphics systems
Overview of graphics systems
 
支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境
 
Overview of Computer Graphics
Overview of Computer GraphicsOverview of Computer Graphics
Overview of Computer Graphics
 
06 cie552 image_manipulation
06 cie552 image_manipulation06 cie552 image_manipulation
06 cie552 image_manipulation
 
Multimedia
MultimediaMultimedia
Multimedia
 
MM3.ppt
MM3.pptMM3.ppt
MM3.ppt
 
Co315 part 1
Co315   part 1Co315   part 1
Co315 part 1
 
Scct2013 topic 3_graphics
Scct2013 topic 3_graphicsScct2013 topic 3_graphics
Scct2013 topic 3_graphics
 
Visualization of Large Multivariate Data Sets using Parallel Coordinates
Visualization of Large Multivariate Data Sets using Parallel CoordinatesVisualization of Large Multivariate Data Sets using Parallel Coordinates
Visualization of Large Multivariate Data Sets using Parallel Coordinates
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern Presentation
 
What is computer graphics
What is computer graphicsWhat is computer graphics
What is computer graphics
 
Chapter 3 data representations
Chapter 3 data representationsChapter 3 data representations
Chapter 3 data representations
 
Chapter 3 Computer Hardware
Chapter 3 Computer HardwareChapter 3 Computer Hardware
Chapter 3 Computer Hardware
 
Dip unit-i-ppt academic year(2016-17)
Dip unit-i-ppt academic year(2016-17)Dip unit-i-ppt academic year(2016-17)
Dip unit-i-ppt academic year(2016-17)
 

More from Bilal Ahmed

CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26Bilal Ahmed
 
CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25Bilal Ahmed
 

More from Bilal Ahmed (20)

CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45CS201- Introduction to Programming- Lecture 45
CS201- Introduction to Programming- Lecture 45
 
CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44CS201- Introduction to Programming- Lecture 44
CS201- Introduction to Programming- Lecture 44
 
CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43CS201- Introduction to Programming- Lecture 43
CS201- Introduction to Programming- Lecture 43
 
CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42CS201- Introduction to Programming- Lecture 42
CS201- Introduction to Programming- Lecture 42
 
CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41CS201- Introduction to Programming- Lecture 41
CS201- Introduction to Programming- Lecture 41
 
CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40CS201- Introduction to Programming- Lecture 40
CS201- Introduction to Programming- Lecture 40
 
CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39CS201- Introduction to Programming- Lecture 39
CS201- Introduction to Programming- Lecture 39
 
CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38CS201- Introduction to Programming- Lecture 38
CS201- Introduction to Programming- Lecture 38
 
CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37CS201- Introduction to Programming- Lecture 37
CS201- Introduction to Programming- Lecture 37
 
CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36CS201- Introduction to Programming- Lecture 36
CS201- Introduction to Programming- Lecture 36
 
CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34CS201- Introduction to Programming- Lecture 34
CS201- Introduction to Programming- Lecture 34
 
CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33CS201- Introduction to Programming- Lecture 33
CS201- Introduction to Programming- Lecture 33
 
CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32CS201- Introduction to Programming- Lecture 32
CS201- Introduction to Programming- Lecture 32
 
CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31CS201- Introduction to Programming- Lecture 31
CS201- Introduction to Programming- Lecture 31
 
CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30CS201- Introduction to Programming- Lecture 30
CS201- Introduction to Programming- Lecture 30
 
CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29CS201- Introduction to Programming- Lecture 29
CS201- Introduction to Programming- Lecture 29
 
CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28CS201- Introduction to Programming- Lecture 28
CS201- Introduction to Programming- Lecture 28
 
CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27CS201- Introduction to Programming- Lecture 27
CS201- Introduction to Programming- Lecture 27
 
CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26CS201- Introduction to Programming- Lecture 26
CS201- Introduction to Programming- Lecture 26
 
CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25CS201- Introduction to Programming- Lecture 25
CS201- Introduction to Programming- Lecture 25
 

Recently uploaded

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...anjaliyadav012327
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 

Recently uploaded (20)

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 

CS101 Graphics & Animation Lecture

  • 1. 1 CS101 Introduction to Computing Lecture 33 Graphics & Animation
  • 2. 2 During the last lecture … (Internet Services) • We looked at several services provided by the Internet – FTP – Telnet – Web – eMail – Instant messaging – VoIP • We also found out about the addressing scheme used on the Internet
  • 3. 3 IP Address • A unique identifier for a computer on a TCP/IP network • Format: four 8-bit numbers separated by periods. Each 8-bit number can be 0 to 255
  • 4. 4 Domain Names • IP addresses are fine for computers, but difficult to recognize and remember for humans • A domain name is a meaningful, easy-to- remember ‘label’ for an IP address
  • 5. 5 DNS: Domain Name System • DNS is the way that Internet domain names are located & translated into IP addresses
  • 6. 6 FTP • Used to transfer files between computers on a TCP/IP network (e.g Internet)
  • 7. 7 Telnet Protocol • Using Telnet, a user can remotely log on to a computer (connected to the user’s through a TCP/IP network, e.g. Internet) & have control over it like a local user, including control over running various programs
  • 8. 8 The Web • The greatest, shared resource of information created by humankind • A user may access any item on the Web through a URL, e.g. http://www.vu.edu.pk/cs/index.html
  • 10. 10 eMail • Computer-to-computer messaging • Inexpensive, and quite quick, but not instant!
  • 11. 11 But first, the components: • eMail client • SMTP server • POP3 server
  • 12. 12 The Trouble with eMail • Slow response times • No way of knowing if the person we are sending eMail to is there to read it • The process of having a conversation through eMail by exchanging several short messages is too cumbersome Instant messaging (IM) solves these problems
  • 13. 13 Instant Messaging • The IM services available on the Internet (e.g. ICQ, AIM, MSN Messenger, Yahoo! Messenger) allow us to maintain a list of people (contacts) that we interact with regularly • We can send an instant messages to any of the contacts in our list as long as that contact is online
  • 14. 14 Key Point • Once the IM server provides the communication info to the user and his/her contact’s IM client, the two are able to communicate with each other without the IM server’s assistance • This server-less connection is termed as a P2P connection
  • 15. 15 VoIP: Voice over IP • Voice delivered from one device to another using the Internet Protocol • Inexpensive, but of poor quality
  • 16. 16 Today’s Goal: Graphics & Animation • We will become familiar with the role that graphics and animations play in computing • We will look at how graphics & animation are displayed • We will look at a few popular formats used for storing graphics and animation
  • 17. 17 Computer Graphics • Images created with the help of computers • 2-D and 3-D (displayed on a 2-D screen but in such a way that they give an illusion of depth) • Used for scientific research, artistic expression, or for industrial applications • Graphics have made the computer interfaces more intuitive by removing the need to memorize commands
  • 18. 18 Displaying Images • Most all computer displays consist of a grid of tiny pixels arranged in a regular grid of rows and columns • Images are displayed by assigning different colors to the pixels located in the desired portion of the computer display • Let’s discuss the pixel a bit more …
  • 19. 19 Pixel • The smallest image forming element on a computer display • The computer display is made up of a regular grid of these pixels • The computer has the capability of assigning any color to any of the individual pixels on the display • Let’s now see how the computer displays a square
  • 20. 20
  • 21. 21 Pixel Colors (1) • The color of each pixel is generally represented in the form a triplet • In a popular scheme – the RGB scheme – each part of the triplet represents the intensity of one of out of three primary colors: red, green, blue • Often, the intensity of each color is represented with a byte, resulting in 256x256x256 (16+ million) unique color combinations
  • 22. 22 Pixel Colors (2) • If this scheme is used to display an image that is equal to the size of an XGA (1024x768 pixels) display, the image will require 2.25MB of storage, which is just too much • A number of clever schemes have been invented to reduce the number of bytes that are required for storing graphics. 2 popular ones: – Color mapping – Dithering
  • 23. 23 Color Mapping (1) • Instead of letting each pixel assume one out of 16 million possible colors, only a limited number of colors – called the platelet – are allowed • For example, the platelet may be restricted to 256 colors (requiring 1 byte/pixel instead of 3)
  • 24. 24 Color Mapping (2) • Each value, from 0 to 255, is mapped to a selected RGB color through a table, reducing the size of a 2.25MB graphic to 0.75MB • The quality of the displayed image will not suffer at all if the image only uses colors that are a part of the platelet
  • 25. 25 Color Platelet Example Color Platelet Code Actual Color in RGB 1 255, 255, 000 (yellow) 2 255, 000, 000 (red) 3 000, 255, 255 (cyan) 4 255, 153, 051 (orange) … … … … … …
  • 26. 26 Dithering • In this scheme, pixels of alternating colors are used to simulate a color that is not present in the platelet • For example, red and green pixels can be alternated to give the impression of bright yellow • The quality of the displayed image is poorer
  • 27. 27 Aliasing • The computer screen consists of square-ish pixels arranged in a fixed grid • At times, when a diagonal line is drawn on this grid, it looks more like a staircase, instead of a straight line • This effect – called aliasing – can be managed by reducing the size of pixels
  • 28. 28
  • 29. 29 Anti-Aliasing (1) • Anti-aliasing is another technique used for managing the ‘staircase’ effect • Let’s say that we need to draw a white straight- line such that it overlaps 60% with one pixel, and 40% with another initially, and near the end, 58%, 41%, and 1%, respectively, with three pixels
  • 30. 30 Anti-Aliasing (2) • The staircase effect is caused because the proper drawing of the line requires a pixel that does not exist • There are three options in this case: – Assign the white color to the pixel corresponding to the largest overlap – Assign the white color to both pixels • Either of these will cause the staircase effect
  • 31. 31
  • 32. 32
  • 33. 33 Anti-Aliasing (3) • The 3rd option is to color the pixel with 60% overlap to a 40% gray color & the other one to 60% gray • Result: A smoother - pleasing to the eye - look
  • 34. 34
  • 35. 35 Graphics File Formats The choice of the format generally depends upon the nature of the image. For example: – An image of natural scenery contains many irregular, non-gemetric shapes, therefore is stored in bit-map format – A CAD drawing consists of many geometric shapes like straight lines, arcs, etc. and therefore is stored in a vector format – A third situation arises when dealing with graphics that contain both regular and irregular shapes
  • 36. 36 Vector or Object-Oriented Graphics • Treats everything that is drawn as an object • Objects retain their identity after they are drawn • These objects can later be easily moved, stretched, duplicated, deleted, etc • Are resolution independent • Relatively small file size • Examples: swf, svg, wmf, ps
  • 37. 37 Bit-Mapped or Raster Graphics • Treats everything that is drawn as a bit-map • If an object is drawn on top of another, it is difficult to move just one of them while leaving the other untouched • Changing the resolution often requires considerable touch-up work • Relatively large file size • Examples: gif, jpg, bmp
  • 38. 38 File Formats Popular on the Web (1) gif (Graphical Interchange Format) –Bit-map images compressed using the LZW algo. –The number of colors is first reduced to 256 and then consecutive pixels having the same color are encoded in a [color, numberOfPixels] format –Works well with computer-generated graphics (e.g. CAD, block diagrams, cartoons) but not with natural, realistic images –Loss-less for images having 256 colors or less
  • 39. 39 File Formats Popular on the Web (2) jpg (JPEG – Joint Photographic Experts Group) –Compressed, full-color and gray-scale bit-map images of natural, real-world scenes, where most every pixel differs in color from its neighbor –It does not work as well as gif with non-realistic images, such as cartoons or line drawings –Does not handle compression of B&W images –Lossy
  • 40. 40 File Formats Popular on the Web (3) swf (Shockwave Flash) –Designed for 2-D animations, but can also be used for storing static vector images as well –A special program (called a plug-in) is required to view swf files in a Web browser svg (Structured Vector Graphics) –New format; may become more popular than swf
  • 41. 41 Image Processing • A branch of computer science concerned with manipulating and enhancing computer graphics • Examples: – Converting 2-D satellite imagery into a 3-D model of a terrain – Restoring old, faded photographs into something closer to the original – Determining the amount of silting in Tarbela lake from a satellite image
  • 42. 42 3-D Graphics (1) • Flat images enhanced to impart the illusion of depth • We perceive the world and the objects in it in 3- D - breadth, width, depth - although the images formed on the retinas of our eyes are 2-D • The secret of 3-D perception: stereo vision
  • 43. 43 3-D Graphics (2) • The two eyes are spaced a few cm apart • Result: The images formed on the two retinas are slightly different • The brain combines these two into a single 3-D image, enabling us to perceive depth
  • 44. 44 3-D Graphics: Applications • Games • Medical images • 3-D CAD
  • 45. 45 3-D Rendering • The process of converting information about 3- D objects into a bit-map that can be displayed on a 2-D computer display • Computationally, very expensive! • Steps: – Draw the wire-frame (skeleton, made with thin lines) – Fill with colors, textures, patterns – Add lighting effects (reflections, shadows)
  • 46. 46 Animation • Graphics in motion, e.g. cartoons • Illusion of motion is created by showing the viewer a sequence of still images, rapidly • Drawing those images - each slightly different from the previous one - used to be quite tedious work • Computers have helped in cutting down some of the tediousness
  • 47. 47
  • 49. 49 Computer Animation: Examples • Games • Cartoons, movies • Visualization of processes, e.g the IM process • Displaying the results of scientific experiments, e.g. nuclear fusion
  • 50. 50 Tweening (1) • Creating a reasonable illusion of motion requires the drawing of 14-30 images per second of animation – very tedious! • In practice, only 4-5 images (called key images) instead of 14-30 are drawn, and then the computer is asked to create the remaining in- between images
  • 51. 51 Tweening (2) • This process of creating these in-between images from key images is called in- betweening (or tweening for short) • The simplest algorithm for tweening calculates the position of a particular segment of an image by calculating the average of the positions of that same image segment belonging to adjacent key images
  • 52. 52 The Future of Graphics & Animation • New graphic-file storage formats will appear with better compression efficiencies • 3-D animation will become more popular as computers become faster and algorithms become smarter • More realistic games; better realism in movies – may, one day, make the human actors extinct
  • 53. 53 Today’s Goal: Graphics & Animation • We became familiar with the role that graphics and animations play in computing • We discussed how graphics & animation are displayed • We also looked at several formats used for storing graphics and animation
  • 54. 54 Next Lecture: (Intelligent Systems) • To become familiar with the distinguishing features of intelligent systems with respect to other software systems • To become able to appreciate the role of intelligent systems in scientific, business and consumer applications • To look at several techniques for designing intelligent systems