Professional Documents
Culture Documents
BAOCAO - Noi Suy Duong Cong Bezier
BAOCAO - Noi Suy Duong Cong Bezier
ĐỒ ÁN CƠ SỞ
Đề tài 504:
Nội suy đường cong Bézier
18N15-N12 Trang 1
LỜI MỞ ĐẦU
Đường cong Bézier là một đường cong tham số thường được sử dụng trong đồ
họa máy tính và một số lĩnh vực khác. Dạng tổng quát hóa của đường cong Bézier
trong không gian nhiều chiều được gọi là mặt phẳng Bézier, trong đó tam giác Bézier
là một trường hợp đặc biệt. Đường cong Bézier được công bố lần đầu vào năm 1962
bởi một kỹ sư người Pháp Pierre Bézier, người sử dụng nó để thiết kế thân ôtô.
Nhưng việc nghiên cứu những đường cong này thực tế đã bắt đầu từ năm 1959 bởi
nhà toán học Paul de Casteljau, ông sử dụng giải thuật De Casteljau để đánh giá các
đường cong đó. Về mặt ứng dụng, đường cong Bézier thường được sử dụng trong đồ
họa vector để mô hình hóa các đường cong mượt (smooth curves) và những đường
cong đó có thể được phóng to hoặc thu nhỏ theo một tỉ lệ không giới hạn. "Đường
dẫn" (path), một khái niệm được sử dụng trong các chương trình xử lý ảnh, được tạo
ra bằng cách liên kết các đường cong Bézier với nhau. Đường cong Bézier còn
thường được sử dụng như là một công cụ để điều khiển sự chuyển động (animation).
18N15-N12 Trang 1
MỤC LỤC
1. GIỚI THIỆU ĐỀ TÀI...........Error: Reference source not found
1.1 Khái niệm và phân loại đường cong................................... 5
1.2 Đường Cong Bézier..........Error: Reference source not found
1.3 Ứng dụng thực tế............Error: Reference source not found
2. CƠ SỞ LÝ THUYẾT ..........Error: Reference source not found
2.1 Phương trình đường cong Bézier tổng quátError: Reference
source not found
2.1.a Phương trình tham số kiểu đoạn thẳngError: Reference
source not found
2.1.b Phương trình tham số của đường cong bậc hai. Error:
Reference source not found
2.1.c Phương tình tham số đường cong Bézier bậc baError:
Reference source not found
2.1.d Hàm Basic Funtion...Error: Reference source not found
2.4.e Ví dụ minh hoạ..........Error: Reference source not found
3. NỘI SUY ĐƯỜNG CONG BEZIERError: Reference source not
found
3.1. Phát biểu bài toán........Error: Reference source not found
3.2. Cấu trúc dữ liệu...........Error: Reference source not found
3.3. Thuật toán tái tạo đường congError: Reference source not
found
4. CHƯƠNG TRÌNH VÀ KẾT QUẢError: Reference source not
found
4.1. Tổ chức chương trình.....Error: Reference source not found
4.2. Kết quả.............................Error: Reference source not found
18N15-N12 Trang 1
4.2.1. Giao diện chính của chương trìnhError: Reference source
not found
4.2.2. Kết quả thực thi của chương trình....Error: Reference
source not found
4.2.3. Nhận xét.....................Error: Reference source not found
5. KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN....Error: Reference
source not found
5.1. Kết luận..........................Error: Reference source not found
18N15-N12 Trang 1
Đồ án Cơ sở
18N15-N12 Trang 5
Đồ án Cơ sở
trong không gian nhiều chiều được gọi là mặt phẳng Bézier, trong đó tam giác Bézier
là một trường hợp đặc biệt.
2. CƠ SỞ LÝ THUYẾT:
2.1 Phương trình đường cong Bézier tổng quát:
a.Phương trình tham số kiểu đoạn thẳng:
P1
C(u)
P0
Hình 1.Xác đinh điểm trên đoạn thẳng.
Xét một đoạn thẳng có điểm đầu P0 và điểm cuối P1, điểm C là một điểm bất kì
nằm trên đoạn thẳng. Biểu diễn dạng phương trình tham số của đoạn thẳng này như
sau:
C (u ) (1 u ) P0 uP1
18N15-N12 Trang 6
Đồ án Cơ sở
Với tham số u [0, 1]. Kí hiệu hai hàm cơ sở B0, B1 như sau:
B0 1 u
B1 u.
1
Như vậy, một điểm trên đường thẳng được xác định dựa vào các hàm cơ sở và
các điểm tương ứng.
b. Phương trình tham số của đường cong bậc hai:
Ta xét đa giác bao gồm các đỉnh P0, P1, P2.
P2
S1
P1
C(u)
S0
P0
Hình 2.Đường cong tham số bậc hai.
Chọn tham số u [0, 1], điểm S0 trên cạnh P0P1 được biểu diễn như sau:
S0 (u ) (1 u ) P0 uP1
S1 (u ) (1 u ) P1 uP2 .
Tương tự điểm S1 trên được cạnh P1 P2 được xác định theo tham số u.
Xét cạnh mới S0S1, điểm C trên cạnh này được xác định theo tham số u cũng là
điểm nằm trên đường cong bậc hai có ba đỉnh điều khiển P0, P1, P2.
C (u ) (1 u ) S0 uS1.
C (u ) (1 u ) 2 P0 (2u (1 u )) P1 u 2 P2
18N15-N12 Trang 7
Đồ án Cơ sở
B0 1 u
2
B1 2u (1 u )
B2 u 2
Phương trình C(u) biểu diễn đường cong bậc hai (quadratic):
2
C (u ) Bi Pi .
0
C (u ) (1 u ) 2 P0 (2u (1 u )) P1 u 2 P2
B1 2u (1 u )
B2 u 2
Phương trình C(u) biểu diễn đường cong bậc hai (quadratic):
2
C (u ) Bi Pi .
0
Thực hiện quá trình tính toán trên với đường cong bậc ba có 4 đỉnh điều khiển
3
P0, P1, P2, P3, ta có phương trình biểu diễn như sau: C (u ) Bi Pi .
i 0
18N15-N12 Trang 8
Đồ án Cơ sở
S1 P2
P1
Q0 Q1
S0 C(u)
S1
P3
P0
Trong đó:
- Pi (i = 0...n) là các đỉnh điều khiển của đường cong;
- Bi , n (u ) là hàm trộn (blending funtion) hay còn gọi là đa thức Bernstein
polynomial) có bậc n:
n!
- Bi ,n (u ) u i (1 u )n i i 0...n
i !(n i )!
Một điểm trên đường cong Bézier C(u) tại tham số u có tọa độ:
n
C
x ( u ) xi Bi ,n (u )
i 0
n
C (u ) C y (u ) yi Bi ,n (u )
i 0
n
C
z
(u )
i 0
z B
i i ,n (u )
18N15-N12 Trang 9
Đồ án Cơ sở
ua
Để biểu diễn tham số u trong đoạn [a,b] thay vi trong đoạn [0,1], ta đặt: u .
ba
Hàm trộn Bi ,n (u ) xác định đường cong Bézier trong miền tham số [a,b]:
i n i
n! u a u a
Bi ,n (u ) 1
i !(n i )! b a b a
Hàm trộn là một đa thức có bậc nhỏ hơn số lượng các điểm điều khiển
e. Ví dụ minh hoạ:
Xét đường con Bézier bậc 2 có (n+1)=3 đỉnh ddieuf khiển P0 , P1, P2:
2
B0,2 (u ) u 0 (1 u )20 (1 u ) 2
0
2
B1,2 (u ) u1 (1 u ) 21 2u (1 u )
1
2
B2,2 (u ) u 2 (1 u ) 2 2 u 2
2
P(u ) (1 u ) 2 P0 2u (1 u ) P1 u 2 P2 .
Đây là phương trình biểu diễn của một đường con parabola.
Bước k = p 1 ta có P0n 1 là điểm trên đường cong Bézier ứng với tham số u.
18N15-N12 Trang 10
Đồ án Cơ sở
P1 P21
P2
P02 P03 2
P 1
1
P
1 C(u)
P31
P0
P3
Hình 4: Phân chia hai đoạn cong Bézier từ đường cong ban đầu.
1
Giá trị u có thể được chọn bất kì trong đoạn khoảng [0,1]. Thông thường u .
2
Độ phức tạp của giải thuật O(p2 ) với p là bậc của đường cong.
1 P02 k=1 k=2 k=3
P1
P01 P0 P00 1-u
2 1
P0 P0
1 P21 u 1-u
P0
P30 P1 P01 P20
1-u u 1-u
P12
u P11 3
P0 C(u)
0 1-u u
P00 P3
0 2
P2 P2 1-u P1
u u
0 1 P12
u
0
P3 P3
(a) (b)
Hình 5.a Xác định một điểm trên đường cong Bézier
5.b Lược đồ của thuật toán De Casteljau
18N15-N12 Trang 11
Đồ án Cơ sở
Đầu ra là tọa độ các đỉnh của đường cong Bézier do chương trình tính toán
xuất ra màn hình console và được lưu vào file output.txt
b Cấu trúc dữ liệu:
18N15-N12 Trang 12
Đồ án Cơ sở
File output.txt
18N15-N12 Trang 13
Đồ án Cơ sở
[2] LibAyamB-spline
18N15-N12 Trang 14