You are on page 1of 13

AML710 CAD LECTURE 9

PERSPECTIVE
PROJECTIONS

1. Perspective Transformations and


Projections
a) Single point
b) Two point
c) Three Point
2. Vanishing points and trace points

Generalized 4 x 4 transformation matrix in


homogeneous coordinates

a b c p
d e i q
[T ] =
g i j r
l m n s

Perspective transformations
Linear transformations local scaling, shear,
rotation reflection
Translations l, m, n along x, y, and z axis
Overall scaling

1
Perspective Transformation
If any of the first 3 elements in the last column of 4x4
transformation matrix is non-zero a perspective
transformation results

1 0 0 0
0 1 0 0
[x y z 1] = [x y z (rz + 1)]
0 0 1 r
0 0 0 1

[x *
y* z* 1 = ] x
rz + 1
y
rz + 1
z
rz + 1
1

Perspective Projection
To obtain perspective projection, we project the results of
perspective transformation on to a any of the
orthographic projection planes, say, z=0 plane.

1 0 0 0 1 0 0 0 1 0 0 0
0 1 0 0 0 1 0 0 0 1 0 0
[x y z 1] = [x y z 1] = [x y 0 (rz + 1)]
0 0 1 r 0 0 0 0 0 0 0 r
0 0 0 1 0 0 0 1 0 0 0 1

[x *
y* ]
z* 1 =
x
rz + 1
y
rz + 1
0 1

2
Perspective Projection Scaling effect

y screen
Projectors e
ag
Im

COP x
t
ec
bj z
O

ct

ct
je

je
Ob

Ob
COP Vanishing Point

The Perspective Projection of a Point


Consider the following figure where using similar triangles we can write
the transformed coordinates as:

x* x x
= x* =
zc zc z z
1
zc
y* y y
= y* =
x +z
*2 *2
x + ( zc z )
2 2 z P*
c 1
zc
Y*
Let
P X*
z y
1 x y
r= ; x
zc 1 + rz 1 + rz
zc
The origin is unaffected. If the plane of projection passes through the object,
then that section of the object is shown at true size and true shape

3
Perspective projection of line parallel to z-axis
A
z
1. Perspective
Vanishing
transformation of AB
point
yields AB
A y B
1/r 2. Orthographic
B projection of AB
gives the required
A projection ABon
B
-1/r z=0 plane

COP Projection plane

1. The original line AB and transformed line AB


intersect the z=0 plane at the same point on it.
2. The line AB intersects z axis at z=1/r
3. This point is called the vanishing point

Perspective Transformation
The effect of the perspective transformation is to bring a
point at infinity to a finite value in the 3D space
The entire semi-infinite positive space 0z is
transformed to finite positive half-space 0z*1/r

A point at infinity can be shown to transform to a finite


distance
1 0 0 0
0 1 0 0
[0 0 1 0] = [0 0 1
r 1]
0 0 1 r
0 0 0 1

4
Perspective Transformations

A Single Point Perspective


A single point perspective transformation with respect to z-
axis 1 0 0 0
0 1 0 0
[x y z 1] = [x y z (rz + 1)]
0 0 1 r
0 0 0 1

[x *
y* ]
z* 1 =
x
rz + 1
y
rz + 1
z
rz + 1
1
Now the perspective projection is obtained by
concatenating the orthographic projection matrix
1 0 0 0 1 0 0 0 1 0 0 0
0 1 0 0 0 1 0 0 0 1 0 0
[T ] = [ Pt ][ Pz ] = =
0 0 1 r 0 0 0 0 0 0 0 r
0 0 0 1 0 0 0 1 0 0 0 1

[x *
y* z* 1 = ] x
rz + 1
y
rz + 1
0 1

5
A Single Point Perspective
A single point perspective transformation with respect to z-axis

The COP is on +ve z-axis and the V.P is equal distance away on ve z-
axis

Perspective Projection of a centered cube

A Single Point Perspective


A single point perspective transformation with respect to x-
axis and y-axis are given below respectively
1 0 0 p 1 0 0 0 1 0 0 p
0 1 0 0 0 1 0 0 0 1 0 0
[T ] = [ Pt ][ Pz ] = =
0 0 1 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 1 0 0 0 1

[x *
y *
z *
]
1=
x
px + 1
y
px + 1
0 1

1 0 0 0 1 0 0 0 1 0 0 0
0 1 0 q 0 1 0 0 0 1 0 q
[T ] = [ Pt ][ Pz ] = =
0 0 1 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 1 0 0 0 1

[x *
y* z* 1 = ] x
qy + 1
y
qy + 1
0 1

6
A Single Point Perspective
Numerical Example: A single point perspective
transformation has to be performed on a unit cube from
a center zc=10 on the z-axis, followed by its projection on
z=0 plane
Sol:Since zc=10 , r=-1/ zc= -1/10= -0.1
The perspective projection matrix for this problem can be
written as
1 0 0 0
0 1 0 0.1
[U ][T ] = [U ][ Pr ] = [U ]
0 0 0 0
0 0 0 1

Two Point Perspective Projection


The two point perspective projection can directly be
obtained on similar lines as:
1 0 0 p 1 0 0 p
0 1 0 q 0 1 0 q
[T ] = [ Ppq ] = =
0 0 0 0 0 0 0 0
VP 0 0 0 1 0 0 0 1

[x *
y* z* 1 = ] x
px + qy + 1
y
px + qy + 1
0 1

1 0 0 p 1 0 0 0 1 0 0 p
0 1 0 0 0 1 0 q 0 1 0 q
[T ] = [ Ppq ] = [ Pp ][ Pq ] = =
0 0 0 0 0 0 0 0 0 0 0 0
VP 0 0 0 1 0 0 0 1 0 0 0 1

7
Three Point Perspective Projection
The three point perspective projection can be obtained on
similar lines as:
1 0 0 p 1 0 0 0 1 0 0 p
0 1 0 q 0 1 0 0 0 1 0 q
[T ] = [ Pt ][ Pz ] = =
0 0 1 r 0 0 0 0 0 0 0 r
0 0 0 1 0 0 0 1 0 0 0 1

[x *
y* z* 1 = ] x
px + qy + rz + 1
y
px + qy + rz + 1
0 1

Some Techniques to produce Perspective


Projections
Just applying the perspective transformation may not show
all details. To view 3 faces of a cuboid, a translation, one
or more rotations are used before applying the
perspective projections.
One translation followed by a single point Pers. Projn.

1 0 0 0 1 0 0 0 1 0 0 0
0 1 0 0 0 1 0 0 0 1 0 0
[T ] = [Txyz ][ Prz ] = =
0 0 0 0 0 0 0 1 / zc 0 0 0 1 / zc
l m n 1 0 0 0 1 l m 0 (1 n) / zc

Note that the scaling factor of (1-n)/Zc appearing in the above


result. It is close to reality as the objects gets smaller away
from the observerAs Zc , the scale effect disappears

8
One translation followed by a single
point Perspective
The scale effect
1 0 0 0 1 0 0 0 1 0 0 0
0 1 0 0 0 1 0 0 0 1 0 0
[T ] = [Txyz ][ Prz ] = =
0 0 0 0 0 0 0 1 / zc 0 0 0 1 / zc
l m n 1 0 0 0 1 l m 0 (1 n) / zc

COP
z -z

-y

One Rotation and Single Point Perspective


Consider the transformation matrix for rotation about the y-
axis by an angle , followed by a single point perspective
projection on the plane z=0 from a COP at z=zc
cos 0 sin 0 1 0 0 0
0 1 0 0 0 1 0 0
[T ] = [ R ][ Prz ] =
sin 0 cos 0 0 0 0 1 / zc
0 0 0 1 0 0 0 1
sin
cos 0 sin
zc Two Point
0 1 0 0 Perspective
= cos
sin 0 cos
zc
0 0 0 1

9
One Rotation and Single Point Perspective
Thus a single rotation about a principal axis
perpendicular to the one on which the COP lies is
equivalent to the two point perspective transformation.

However rotation about the same axis on which COP lies


does not have this effect

sin
cos 0 sin
zc Two Point
0 1 0 0 Perspective
= cos
sin 0 cos
zc
0 0 0 1

Two Rotations and Single Point Perspective

Consider the transformation matrix for rotation about the y-axis by an


angle , followed by rotation about the x-axis by an angle , and a
single point perspective projection on the plane z=0 from a cop at
z=zc
cos 0 sin 0 1 0 0 0 1 0 0 0
0 1 0 0 0 cos sin 0 0 1 0 0
[T ] = [ R y ][ R x ][ Prz ] =
sin 0 cos 0 0 sin cos 0 0 0 0 1 / zc
0 0 0 1 0 0 0 1 0 0 0 1
sin cos
cos sin sin 0
zc
Three Point
sin
0 cos 0 Perspective
= zc
cos cos
sin cos sin 0
zc
0 0 0 1

10
Perspective Transformations: Vanishing Points
There are two methods of finding VPs
1. Finding intersection between any two parallel line
after transformation and projection
2. Find the concatenated Perspective matrix. Use
this to transform points at infinity

1 0 0 p
1 0 0 0 VPx
0 1 0 q
[VP][T ] = 0 1 0 0 = VPy
0 0 1 r
0 0 1 0 VPz
0 0 0 1

Perspective Transformations:
Vanishing Points and Trace points

TP

VP
VP

TP

11
Perspective Transformations: Trace Points
These points result from the set of parallel lines on
inclined planes.
We use the concatenated Perspective matrix to
transform points at infinity in the direction of
inclined edges

1 0 0 p
1 1 0 0 TP
0 1 0 q
[VP][T ] = 1 1 0 0 = TP
0 0 1 r
0 0 0 1

Oblique Projections
Oblique projection results when parallel projectors
from centre of projection at infinity intersect the
plane of projection at an oblique angle.
Useful to show the general 3D shape of an object.
Two oblique projections are well known: Cavalier and Cabinet.
Cavalier Projection: It results when the angle of
projection is 45. In this projection all the three
foreshortening factors are equal and the image appears
too thick.
Cabinet Projection: It is an oblique projection with
foreshortening factor for edges perpendicular to
the plane of projection is half of that in other
directions.
This projection corrects the thickening effect of cavalier
projection.

12
Oblique Projection
The transformation matrix for an oblique projection is given
below:
1 0 0 0
0 1 0 0
Tob =
f cos f sin 0 0
0 0 0 1
The angle of projection is and the angle projected z axis
makes with the horizontal is and f is the foreshortening
factor,
= cot 1 ( f = 1) = 45 Cavalier
= cot 1 ( f = 12 ) = 63.43 Cabinet
= cot 1 ( f = 0) = 90 Orthographic

Non-planar Projections
Telescopic projection: As the telescope makes the
distant objects appear closer and the
microscope makes the smaller objects appear
Map Projection: This is also called the cartographic
projection. These mappings are based on
Gaussian curvature matching.
Display Projection: The computer graphic displays
use a variety of 2D and 3D projections.

13

You might also like