1. Trang chủ
  2. » Công Nghệ Thông Tin

Các phép biến đổi trong đồ họa hai chiều

16 2,1K 9
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Các phép biến đổi trong đồ họa hai chiều
Tác giả Dương Anh Đức, Lê Đình Duy
Trường học Đại học Bách Khoa Hà Nội
Chuyên ngành Đồ họa máy tính
Thể loại Bài giảng
Thành phố Hà Nội
Định dạng
Số trang 16
Dung lượng 119,1 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Các phép biến đổi trong đồ họa hai chiều

Trang 1

Các phép biến đổi trong đồ họa hai chiều

Dẫn nhập

• Bản chất của phép biến đổi hình học là thay đổi các mô tả về tọa độ của đối tượng, từ đó làm đối tượng thay đổi về hướng, kích thước, hình dạng

• Có hai quan điểm về phép biến đổi hình học, đó là:

♦ Biến đổi đối tượng : thay đổi tọa độ của các điểm mô tả đối tượng theo một qui tắc nào đó.

♦ Biến đổi hệ tọa độ : tạo ra một hệ tọa độ mới và tất cả các điểm mô tả đối tượng sẽ được chuyển về hệ tọa độ mới.

• Các phép biến đổi hình học cơ sở : tịnh tiến, quay, biến đổi tỉ lệ

Các phép biến đổi hình học cơ sở

• Một phép biến đổi điểm là một ánh xạ T :

( ), ( ,' ')

y x Q y

x P

R R

T

a

• Hay T là hàm số T ,( )x y theo hai biến ( )x, : y

Trang 2

• Phép biến đổi affine là phép biến đổi với f ,( )x y

( )x y

g , là các hàm tuyến tính Phép biến đổi này có

dạng :

0 ,

, , , , , , '

'

+ +

=

+ +

=

bc ad R f

e d c b a f

dy bx

y

e cy ax x

• Ta chỉ khảo sát các phép biến đổi affine, nên sẽ dùng cụm từ “phép biến đổi” thay cho “phép biến đổi affine”

Phép tịnh tiến

• Phép tịnh tiến dùng để dịch chuyển đối tượng từ vị trí này sang vị trí khác

• Nếu gọi tr xtr y lần lượt là độ dời theo trục hoành và trục tung thì tọa độ của điểm mới Q(x ,' y') sau khi tịnh tiến điểm P ,( )x y sẽ là :

x ' = x + trx

P

x

y

Q

trx

try

(a)

y

x

(2,3) (4,3)

(6,1) (8,1)

(b)

Trang 3

Phép biến đổi tỉ lệ

• Phép biến đổi tỉ lệ làm thay đổi kích thước đối tượng Để co hay giãn tọa độ của một điểm P ,( )x y

theo trục hoành và trục tung lần lượt là sxsy , ta

nhân sxsy lần lượt cho các tọa độ của P.

=

=

y s y

x s x

y

x

'

.

'

, sxsy được gọi là các hệ số tỉ lệ.

• Khi các giá trị sx , sy nhỏ hơn 1, phép biến đổi sẽ

thu nhỏ đối tượng, ngược lại khi các giá trị này lớn hơn 1, phép biến đổi sẽ phóng lớn đối tượng

• Khi sx , s y bằng nhau, ta gọi đó là phép đồng dạng

(uniform scaling), phép đồng dạng là phép biến đổi bảo toàn tính cân xứng của đối tượng

• Tâm tỉ lệ là điểm không bị thay đổi qua phép biến đổi tỉ lệ

• Nhận xét rằng khi phép biến đổi tỉ lệ thu nhỏ đối tượng, đối tượng sẽ được dời về gần gốc tọa độ hơn,

y

x

(2,3) (4,3)

(10,1.5) (5,1.5)

Trang 4

Phép quay

• Phép quay làm thay đổi hướng của đối tượng

• Một phép quay đòi hỏi phải có tâm quay, góc quay Góc quay dương thường được quy ước là chiều ngược chiều kim đồng hồ Ta có công thức biến đổi của phép quay điểm P ,( )x y quanh gốc tọa độ một góc α :

+

=

=

y x

y

y x

x

cos

sin '

sin

cos

'

α α

α α

y

x

Trang 5

Hệ tọa độ thuần nhất

• Tọa độ thuần nhất của một điểm trên mặt phẳng được biểu diễn bằng bộ ba số tỉ lệ (x h,y h,h) không đồng thời bằng 0 và liên hệ với các tọa độ ( )x, của y

điểm đó bởi công thức :

h

y y h

x

x = h , = h

• Nếu một điểm có tọa độ thuần nhất là (x ,, y z) thì nó

cũng có tọa độ thuần nhất là (h.x,h.y,h.z) trong đó h là số thực khác 0 bất kì

• Mỗi điểm P ,( )x y sẽ được biểu diễn dưới dạng tọa độ thuần nhất là (x , y,1).

Trang 6

Biểu diễn ma trận của các phép biến đổi

• Phép tịnh tiến

=

1

0 1 0

0 0

1 1 1

' '

y

x tr tr

y x y

x

hay Q = P.M T(tr x,tr y) với ( )

=

1

0 1 0

0 0

1 ,

y x

y x T

tr tr

tr tr M

• Phép biến đổi tỉ lệ

=

1 0 0

0 0

0

0

1 1

'

x

s

s y

x y

x

hay Q = P.M S(s x,s y) với ( )

=

1 0 0

0 0

0

0

x y

x

s s

s M

• Phép quay quanh gốc tọa độ

=

1 0

0

0 cos

sin

0 sin

cos 1 1

'

α

α y

x y

x

hay Q = P.M R( )α với ( )

=

1 0

0

0 cos sin

0 sin

cos

α α

α

α α

R

M

Trang 7

Kết hợp các phép biến đổi

• Quá trình áp dụng các phép biến đổi liên tiếp để tạo nên một phép biến đổi tổng thể được gọi là sự kết hợp các phép biến đổi (composing transformation)

Kết hợp các phép tịnh tiến

• Nếu ta thực hiện phép tịnh tiến lên P , được P’ ,( )x y

rồi lại thực hiện tiếp một phép tịnh tiến khác lên P’,

ta được điểm Q(x ,' y') Như vậy, Q là ảnh của phép biến đổi kết hợp hai phép tịnh tiến liên tiếp

1 x , y

T tr tr

MM T2(tr x2,tr y2) có tọa độ :

{P.M T1 tr x1 ,tr y1 }.M T2(tr x2 ,tr y2) P.{M T1(tr x1 ,tr y1).M T2(tr x2 ,tr y2) }

• Ta có :

=

1

0 1 0

0 0

1 1

0 1 0

0 0

1 ,

,

2 2

1 1

2 2 2 1

1

1

y x

y x

y x T y

x

T

tr tr

tr tr

tr tr M tr

tr

M

+ +

=

1

0 1

0

0 0

1

2 1

2

tr

hay : M T1(tr x1,tr y1).M T2(tr x2,tr y2)= M T(tr x1 + tr x2,tr y1 + tr y2)

• Vậy kết hợp hai phép tịnh tiến là một phép tịnh tiến Từ đó ta có kết hợp của nhiều phép tịnh tiến cũng là một phép tịnh tiến

Trang 8

Kết hợp các phép biến đổi tỉ lệ

• Tương tự như phép tịnh tiến, ta có tọa độ điểm

(x ,' y')

Q là điểm có được sau khi kết hợp hai phép tỉ lệ M S1(s x1,s y1) và M S2(s x2,s y2) là :

{P.M S1 s x1,s y1 }.M S2(s x2,s y2) P.{M S1(s x1,s y1).M S2(s x2,s y2) }

• Ta có :

=

1 0 0

0 0

0

0

1 0 0

0 0

0

0 ,

.

2 1

1 2

2 2 1

1

x y

x y

x S y

x

s s

s s

s M s

s M

=

1 0

0

0

0

0 0

2 1

2 1

y y

x x

s s

s s

hay : M S1(s x1,s y1).M S2(s x2,s y2)= M S(s x1.s x2,s y1.s y2)

• Vậy kết hợp hai phép tỉ lệ là một phép tỉ lệ Dễ dàng mở rộng cho kết quả : kết hợp của nhiều phép

tỉ lệ cũng là một phép tỉ lệ

Trang 9

Kết hợp các phép quay

• Tương tự, ta có tọa độ điểm Q(x ,' y') là điểm phát sinh sau khi kết hợp hai phép quay quanh gốc tọa độ

( )1

1 α

R

MM R2( )α2 là :

( ) {P.M R1 α1 }.M R2( )α2 P.{M R1( )α1 M R2( )α2 }

• Ta có :

=

1 0

0

0 cos

sin

0 sin

cos 1 0

0

0 cos

sin

0 sin

cos

2 2

1 1

1 1

2 2 1

α

α α

α

α

α α

M

+ +

+

+

=

1 0

0

0 cos

sin

0 sin

cos

2 1 2

1

2 1 2

1

α α α

α

α α α

α

hay : M R1( )α1 M R2( )α2 = M R(α1 +α2)

• Vậy kết hợp hai phép quay quanh gốc tọa độ là một phép quay quanh gốc tọa độ Từ đó dễ dàng suy ra kết hợp của nhiều phép quay quanh gốc tọa độ cũng là một phép quay quanh gốc tọa độ

Trang 10

Phép quay có tâm quay là điểm bất kì

• Giả sử tâm quay có tọa độ I(x R,y R), ta có thể xem phép quay quanh tâm I một gócα được kết hợp từ các phép biến đổi cơ sở sau :

♦ Tịnh tiến theo vector tịnh tiến (−x R, −y R) để dịch chuyển tâm quay về gốc tọa độ (đưa về trường hợp quay quanh gốc tọa độ).

♦ Quay quanh gốc tọa độ một góc α .

♦ Tịnh tiến theo vector tịnh tiến (x , R y R) để đưa tâm quay về lại vị trí ban đầu.

• Ta có ma trận của phép biến đổi :

( R R ) T( R R) R( ) T( R R)

R x y M x y M M x y

=

1

0 1 0

0 0

1 1 0 0

0 cos

sin

0 sin

cos 1

0 1 0

0 0 1

R R R

x

α α

α α

x

y

x

y

α

x

y

I(xR,yR) x

y

I(xR,yR)

Trang 11

Một số tính chất của phép biến đổi affine

• Bảo toàn đường thẳng : ảnh của đường thẳng qua phép biến đổi affine là đường thẳng

♦ Để biến đổi một đoạn thẳng qua hai điểm A và B, chỉ cần thực hiện phép biến đổi cho A và B.

♦ Để biến đổi một đa giác, chỉ cần thực hiện phép biến đổi đối với các đỉnh của đa giác.

• Bảo toàn tính song song : ảnh của hai đường thẳng song song là song song

♦ Ảnh của các hình vuông, hình chữ nhật, hình thoi, hình bình hành sau phép biến đổi là hình bình hành.

• Bảo toàn tính tỉ lệ về khoảng cách : Nếu điểm C chia đoạn AB theo tỉ số t thì ảnh của C cũng sẽ chia ảnh của đoạn AB theo tỉ số t

♦ Trong hình vuông, các đường chéo cắt nhau tại trung điểm của mỗi đường nên các đường chéo của bất kì hình bình hành nào cũng cắt nhau tại trung điểm của mỗi đường.

♦ Trong tam giác đều, giao điểm của ba đường trung tuyến chia mỗi đường theo tỉ số 1:2 Do ảnh của tam giác đều qua phép biến đổi affine là một tam giác nên giao điểm của các đường trung tuyến trong một tam giác cũng sẽ chia chúng theo tỉ lệ 1:2.

Trang 12

Phép đối xứng

• Phép đối xứng trục có thể xem là phép quay quanh trục đối xứng một góc 1800

• Trục đối xứng là trục hoành : 

=

1 0 0

0 1 0

0 0 1

Rfx

M

• Trục đối xứng là trục tung : 

−

=

1 0 0

0 1 0

0 0 1

Rfy

M

Phép biến dạng

• Phép biến dạng là phép biến đổi làm thay đổi, méo mó hình dạng của các đối tượng

• Biến dạng theo phương trục x sẽ làm thay đổi hoành

độ còn tung độ vẫn giữ nguyên : 

=

1 0 0

0 1

0 0 1

xy Shx sh M

• Biến dạng theo phương trục y sẽ làm thay đổi tung

độ còn hoành độ vẫn giữ nguyên : 

=

1 0 0

0 1 0

0

Shy

sh M

y

Trang 13

Phép biến đổi ngược

• Phép biến đổi ngược dùng để undo một phép biến đổi đã thực hiện

• Q là ảnh của P qua phép biến đổi T có ma trận biến đổi M là : Q = PM , nên phép biến đổi ngược T-1 sẽ có ma trận biến đổi là M-1 với M-1 là ma trận nghịch đảo của ma trận M

• Với giả thiết ban đầu về ma trận M là adbc ≠ 0,

ta có công thức tính ma trận nghịch đảo M-1 của

=

1 0

0

f e

d c

b

a

=

1 0

0 1

1

af be de cf

a c

b d

bc ad M

• Ma trận của các phép biến đổi ngược của các phép biến đổi cơ sở tịnh tiến, tỉ lệ, quay :

y x

y x

tr tr

tr tr

=

1

0 1

0

0 0

1 ,

1

=

=

=

y x

S y

x x

y y x y

x

s s

s s s s

s

1 0 0

0

1 0

0 0 1

1 0 0

0 0

0 0 1

,

1

α

α

=

R

0 sin

cos

1

Trang 14

Phân rã phép biến đổi

• Một phép biến dạng theo phương trục x có thể được phân rã thành tích của một phép biến đổi tỉ lệ và một phép biến dạng đơn vị, và với một phép biến đổi

tỉ lệ khác theo công thức sau :





=

1 0 0

0 1 0

0 0 1

0 0

0 1 1

0 0 1 1 0 0

0 1 0

0 0 1

1 0 0

0 1

0 0

xy

sh

sh sh

• Phép biến dạng đơn vị còn có thể được phân rã tiếp :

=

1 0

0

0 cos

sin

0 sin

cos

1 0 0

0

1 0

0 0 1

0 0

0 cos

sin

0 sin

cos 1

0

0

0 1

1

0 0

1

β β

β β

φ

φ α

α

α α

trong đó

( )

=





=

=

=

0 1

0 1

72 31

1 tan

28 58 tan

φ β

φ α

• Từ đó, một phép biến đổi bất kì có thể được phân rã thành các phép biến đổi cơ sở sau :





 +

=

1

0 1 0

0 0 1 1 0 0

0 0

1 0

0

0 0

0 0

1 0 0

0 1

0 0 1

1 0

0

2

f e Q

a Q

b Q

b Q a Q

bc ad

Q Q

bd ac f

e

d

c

b

a

Trang 15

Phép biến đổi giữa các hệ tọa độ

• Để thuận tiện cho việc mô tả đối tượng, thông thường đối tượng sẽ được mô tả trong các hệ tọa độ cục bộ gắn với chúng Tuy nhiên để có thể hiển thị toàn bộ một ảnh bao gồm nhiều đối tượng thành phần, các mô tả này phải được chuyển về một hệ tọa độ chung duy nhất

• Việc chuyển đổi này thường được chia làm hai loại : chuyển từ các hệ tọa độ không phải là hệ tọa độ Descartes như hệ tọa độ cực, hệ tọa độ cầu, hệ tọa độ elliptic, … sang hệ tọa độ Descartes, và chuyển đổi giữa hai hệ tọa độ Descartes Trong phần này chúng

ta sẽ khảo sát phép biến đổi giữa hai hệ tọa độ Descartes với nhau

Trang 16

• Giả sử ta có hệ tọa độ (I) có gốc tọa độ O và các vector đơn vị lần lượt là i, j Hệ tọa độ (II) là ảnh của hệ tọa độ (I) qua phép biến đổi T(M), có gốc tọa độ là O’ và các vector đơn vị lần lượt là u, v.

• Lúc này một điểm P ,( )x y bất kì trong hệ tọa độ (I)

sẽ được biến đổi thành điểm Q ,( )a b trong hệ tọa độ

(II) Vấn đề đặt ra ở đây là mối liên hệ giữa a, b với

M

y

x ,, như thế nào

• Người ta chứng minh được rằng Q = PM 1

P

O i j

O' u v

Ngày đăng: 27/08/2012, 09:57

TỪ KHÓA LIÊN QUAN

w