Digital Signal Processing Reference
In-Depth Information
Figure 10.2
Three-dimensional rotation.
x 0
y 0
cos
x
y
q
sin
q
¼
sin
cos
q
q
For rotation about an arbitrary reference point X 0 , Y 0 , the
following substitutions are used:
( x
X 0 )
¼
cos(
)
( x
X 0 )
sin(
)
( y
Y 0 )
q
e
q
Y 0 )
Computing rotations involves multiplications, plus image
blending, to overwrite the original pixels with the rotated image.
Rotation for video and imaging applications is considered only
for two dimensions. More sophisticated three-dimensional rota-
tions are performed in visual applications such as computer
generated graphics, design visualization software and other uses
involving depth.
One way to think about this is in the aircraft terms of yaw, roll
and pitch.
This motion can be represented using a 3
( y'
Y 0 )
¼
sin(
)
( x
X 0 )
þ
sin(
)
( y
q
q
3 matrix, which
will rotate a point x , y , z in three-dimensional space to a new
location x' , y' , z' .
0
1
0
1
0
1
0
1
x 0
y 0
z 0
x
y
z
abc
def
ghi
x
y
z
@
A ¼
@
A
@
A ¼
@
A
A
10.1 Interpolation
When rotating images, the new locationmay not be a valid pixel
location. It could land mid-way between pixel locations, or in any
other arbitrary location. In this case, better quality can be achieved
by interpolation, or calculating the actual values at the valid pixel
locations. This is achieved by interpolating between nearby
rotated pixels that do not line up with the pixel grid locations.
Search WWH ::




Custom Search