Last Time - PowerPoint PPT Presentation

About This Presentation
Title:

Last Time

Description:

(c) 2002 University of Wisconsin, CS 559. Compositing Operations ... Darken: Makes an image darker (or lighter) without affecting its opacity ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 38
Provided by: Stephen787
Category:
Tags: last | lighter | time

less

Transcript and Presenter's Notes

Title: Last Time


1
Last Time
  • The end of Sampling and Filtering
  • Compositing

2
Today
  • Compositing Summary
  • Intro to 3D (and 2D) Graphics
  • Homework 2 due

3
Compositing Operations
  • F and G describe how much of each input image
    survives, and cf and cg are pre-multiplied
    pixels, and all four channels are calculated

4
Unary Operators
  • Darken Makes an image darker (or lighter)
    without affecting its opacity
  • Dissolve Makes an image transparent without
    affecting its color

5
PLUS Operator
  • Computes composite by simply adding f and g, with
    no overlap rules
  • Useful for defining cross-dissolve in terms of
    compositing

6
Obtaining ? Values
  • Hand generate (paint a grayscale image)
  • Automatically create by segmenting an image into
    foreground background
  • Blue-screening is the analog method
  • Remarkably complex to get right
  • Lasso is the Photoshop operation
  • With synthetic imagery, use a special background
    color that does not occur in the foreground
  • Brightest blue or green is common

7
Compositing With Depth
  • Can store pixel depth instead of alpha
  • Then, compositing can truly take into account
    foreground and background
  • Generally only possible with synthetic imagery
  • Image Based Rendering is an area of graphics
    that, in part, tries to composite photographs
    taking into account depth

8
Where to now
  • We are now done with images
  • We will spend several weeks on the mechanics of
    3D graphics
  • Coordinate systems and Viewing
  • Clipping
  • Drawing lines and polygons
  • Lighting and shading
  • We will finish the semester with modeling and
    some additional topics

9
Graphics Toolkits
  • Graphics toolkits typically take care of the
    details of producing images from geometry
  • Input (via API functions)
  • Where the objects are located and what they look
    like
  • Where the camera is and how it behaves
  • Parameters for controlling the rendering
  • Functions (via API)
  • Perform well defined operations based on the
    input environment
  • Output Pixel data in a framebuffer an image in
    a special part of memory
  • Data can be put on the screen
  • Data can be read back for processing (part of
    toolkit)

10
OpenGL
  • OpenGL is an open standard graphics toolkit
  • Derived from SGIs GL toolkit
  • Provides a range of functions for modeling,
    rendering and manipulating the framebuffer
  • What makes a good toolkit?
  • Alternatives Direct3D, Java3D - more complex and
    less well supported

11
Coordinate Systems
  • The use of coordinate systems is fundamental to
    computer graphics
  • Coordinate systems are used to describe the
    locations of points in space
  • Multiple coordinate systems make graphics
    algorithms easier to understand and implement

12
Coordinate Systems (2)
  • Different coordinate systems represent the same
    point in different ways
  • Some operations are easier in one coordinate
    system than in another
  • We saw this in filtering Its easier to define
    the filter in one space, but transform it to
    another for use

(2,3)
(1,2)
v
v
y
y
u
u
x
x
13
Transformations
  • Transformations convert points between coordinate
    systems

(2,3)
(1,2)
ux-1 vy-1
v
v
y
y
u
u
xu1 yv1
x
x
14
Transformations(Alternate Interpretation)
  • Transformations modify an objects shape and
    location in one coordinate system
  • The previous interpretation is better for some
    problems, this one is better for others

(2,3)
xx-1 yy-1
y
(1,2)
y
xx1 yy1
x
x
15
2D Affine Transformations
  • An affine transformation is one that can be
    written in the form

16
Why Affine Transformations?
  • Affine transformations are linear
  • Transforming all the individual points on a line
    gives the same set of points as transforming the
    endpoints and joining them
  • Interpolation is the same in either space Find
    the halfway point in one space, and transform it.
    Will get the same result if the endpoints are
    transformed and then find the halfway point

17
Composition of Affine Transforms
  • Any affine transformation can be composed as a
    sequence of simple transformations
  • Translation
  • Scaling (possibly with negative values)
  • Rotation
  • See Shirley 1.3.6

18
2D Translation
  • Moves an object

y
y
by
x
x
bx
19
2D Translation
  • Moves an object

y
y
by
x
x
bx
20
2D Scaling
  • Resizes an object in each dimension

y
y
syy
y
x
x
sxx
x
21
2D Scaling
  • Resizes an object in each dimension

y
y
syy
y
x
x
sxx
x
22
2D Rotation
  • Rotate counter-clockwise about the origin by an
    angle ?

y
y
?
x
x
23
2D Rotation
  • Rotate counter-clockwise about the origin by an
    angle ?

y
y
?
x
x
24
X-Axis Shear
  • Shear along x axis (What is the matrix for y axis
    shear?)

y
y
x
x
25
X-Axis Shear
  • Shear along x axis (What is the matrix for y axis
    shear?)

y
y
x
x
26
Reflect About X Axis
x
x
  • What is the matrix for reflect about Y axis?

27
Reflect About X Axis
x
x
  • What is the matrix for reflect about Y axis?

28
Rotating About An Arbitrary Point
  • What happens when you apply a rotation
    transformation to an object that is not at the
    origin?

y
?
x
29
Rotating About An Arbitrary Point
  • What happens when you apply a rotation
    transformation to an object that is not at the
    origin?
  • It translates as well

y
x
x
30
How Do We Fix it?
  • How do we rotate an about an arbitrary point?
  • Hint we know how to rotate about the origin of a
    coordinate system

31
Rotating About An Arbitrary Point
y
y
x
x
y
y
x
x
32
Rotate About Arbitrary Point
  • Say you wish to rotate about the point (a,b)
  • You know how to rotate about (0,0)
  • Translate so that (a,b) is at (0,0)
  • xxa, yyb
  • Rotate
  • x(x-a)cos?-(y-b)sin?, y(x-a)sin?(y-b)cos?
  • Translate back again
  • xfxa, yfyb

33
Scaling an Object not at the Origin
  • What also happens if you apply the scaling
    transformation to an object not at the origin?
  • Based on the rotating about a point composition,
    what should you do to resize an object about its
    own center?

34
Back to Rotation About a Pt
  • Say R is the rotation matrix to apply, and p is
    the point about which to rotate
  • Translation to Origin
  • Rotation
  • Translate back
  • The translation component of the composite
    transformation involves the rotation matrix. What
    a mess!

35
Homogeneous Coordinates
  • Use three numbers to represent a point
  • (x,y)(wx,wy,w) for any constant w?0
  • Typically, (x,y) becomes (x,y,1)
  • Translation can now be done with matrix
    multiplication!

36
Basic Transformations
  • Translation Rotation
  • Scaling

37
Homogeneous Transform Advantages
  • Unified view of transformation as matrix
    multiplication
  • Easier in hardware and software
  • To compose transformations, simply multiply
    matrices
  • Order matters AB is generally not the same as BA
  • Allows for non-affine transformations
  • Perspective projections!
  • Bends, tapers, many others
Write a Comment
User Comments (0)
About PowerShow.com