29
MAE 473-573: Lecture #12 - Projection and Perspective Lecture Overview: • Miscellaneous • Motivation • Projection - basics • Means for projecting images: Orthographic viewing - basics Perspective viewing - basics • The mathematics of projection • Vanishing points • Numerical examples

MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

  • Upload
    others

  • View
    4

  • Download
    1

Embed Size (px)

Citation preview

Page 1: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Lecture Overview:

• Miscellaneous• Motivation• Projection - basics• Means for projecting images: Orthographic viewing - basics Perspective viewing - basics• The mathematics of projection• Vanishing points• Numerical examples

Page 2: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Miscellaneous:

X Programming Reference:

“Xlib Programming Manual, Volume 1”, Adrian Nye, O’Reilly& Associates, Inc., 1995 (last printing)

Homogeneous coordinates:• more extensive review forthcoming• review lectures #5 and #9 for “need to know” details

Page 3: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

• Motivation:

• 2D and 3D scenes must be transferred to a 2D object….• ...Our display device - the computer screen!!

Must consider……….

• Specification of viewing parameters• Level-of-Detail required on viewed model• Is distortion of image geometry tolerable? (i.e. perspective)• Clipping/windowing - what is the view volume?

Page 4: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

• Projection - basics

MAE 473-573: Lecture #12 - Projection and Perspective

• DEF: Transformation of points in a coordinate system of dimension n, into a coordinate system of dimension less than n.(our concern: 3D to 2D)• DEF: Foreshortening - visual effect of a perspective projection• Basic classes of projection: Parallel and Perspective

Page 5: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

• Means for projecting images

MAE 473-573: Lecture #12 - Projection and Perspective

Flowchart of Geometric Projection types:

Page 6: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

Orthographic - Direction of projection, and the normal to theprojection plane are in same direction (...unlike Oblique projection)

MAE 473-573: Lecture #12 - Projection and Perspective

• Parallel Projections:

Page 7: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Orthographic parallel projection (cont.)

• Common types: Top, front, side, isometric elevation

• Projection plane is perpendicular to direction of projection

• Typically used in engineering drawings

• Distances and angles can be accurately measured

• Drawback: each projection results in one face of an object

Page 8: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Page 9: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Axonometric orthographic projection:

• Projection plane NOT normal to the direction of projection

• Result: several faces shown at once

• Resemble perspective projection, only foreshortening is uniform

• Isometric - most common - projection plane normal makes equalangles with each principal (x,y,z) axis

Page 10: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Page 11: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

• Perspective projections: Have finite center of projection, andvanishing point(s)

Page 12: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

DEF: Vanishing point - The perspective projections of any set ofparallel lines NOT parallel to the projection plane converge to afinite vanishing point (VP).

Page 13: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

• One, Two, Three point perspective• Governed by the number of VP’s• There can be at most 3 VP’s (x,y,z)

Page 14: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

• 2-point perspective commonly used in architecture/industrial design• 3-point perspective rarely used; not much more realistic than 2 VP’s

Page 15: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

• The mathematics of projections - Coordinate system definition:

Page 16: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Projection to 2D is as follows:• For simplicity, assume Projection plane is normal to z-axis (at z = a)• Observing the y-coordinate projection:

Page 17: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Using proportions: yd/a = ye/ze ; yd = (a/ze)* yeSimilarly, xd/a = xe/ze ; xd = (a/ze)* xe

Page 18: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Notes:

• a: distance from eye (camera) to display screen

• ze: “line of sight” distance from eye to object coordinatesCauses the perspective projection of more distant objects tobe smaller than that of closer objects (i.e. adds perspective)

• (xd, yd) may have to be “windowed” to fit on screen

Page 19: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Central projection:

Viewing assumed to take place along the z-axis of the object coords.

Using simple proportions:yd/(z0-z1) = y/(z0-z)xd/(z0-z1) = x/(z0-z)

Page 20: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Notes:

• Eye is located at (0, 0, z0)

• Display coordinates (xd, yd) are located at z1 along the z-axis

• Object must be displayed/oriented as desired (in object space)when projection transforms take place….

• Distortion can occur if center of projection is too close to the object

Page 21: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

A Matrix Viewing Transform:

=

=

rz10yx

1zyx

*

1r00000000100001

H'z'y'x

Normalize to get:

=

=

10yx

10rz1

yrz1

x

d

d

Page 22: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

In Terms of Central Projection:

Assume z1 = 0 (Display plane and object plane are one and the same)

Recall: yd/(z0-z1) = y/(z0-z)xd/(z0-z1) = x/(z0-z)

=

=

10yx

10rz1

yrz1

x

d

d

Leads to: r = 1/z0

Comparing this to:

Page 23: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Question from last class - “What if the object is IN FRONT of theprojection plane?”

Brings up the concept of parallax:

Page 24: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

We’ll see more of this when we talk about stereo!!

Page 25: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

Vanishing point determination:

One-point perspectiveAs z approaches ∞, xd and yd approach 0.Xvp, Yvp = 0 ; Zvp = -1/r

What about Multi-point perspective?

Important! Multiple faces of an object must be viewed forprojection to be useful! To accomplish this, employ:

a. single-point projection, AND (preceded by)b. a translation(s) or rotation(s) of the object

Page 26: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

Multi-point perspective (cont.)

MAE 473-573: Lecture #12 - Projection and Perspective

Two-point perspective

For example, lets perform a rotation about the y-axis in additionto our z-plane projection transformation:

θθ−

θθ

=

1zyx

*

10000cos0sin00100sin0cos

*

1r00000000100001

H'z'y'x

Page 27: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

=

θ−θ+

θ+θ

=

10yx

cosrzsinrx10y

sinzcosx

d

d

Multi-point perspective (cont.)

=

θ−θ+

θ−θ+θ+θ

=

10yx

10

cosrzsinrx1y

cosrzsinrx1sinzcosx

d

d

Normalized…….

Page 28: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

MAE 473-573: Lecture #12 - Projection and Perspective

So - what are the Vanishing points?

As x approaches infinity:

xd = cosU/r sinUyd = 0

Three-point perspective

Employ a z-plane perspective transformation, augmented byTWO successive rotations………...

As z approaches infinity:

xd = -sinU/r cosUyd = 0

Zvp = -1/r

Page 29: MAE 473-573: Lecture #12 - Projection and PerspectiveMAE 473-573: Lecture #12 - Projection and Perspective Notes: • Eye is located at (0, 0, z 0) • Display coordinates (x d, y

• Examples (handouts)

• Single-point Perspective• Two-point Perspective

MAE 473-573: Lecture #12 - Projection and Perspective