4. Đối tượng và phạm vi nghiên cứu
1.3. Cơ sở lý thuyết bề mặt cong NURBS
1.3.1. Cơ sở lý thuyết xây dựng bề mặt cơ thể người 3D
Mô hình hóa hình học các đối tượng 3D là trình tái tạo lại cấu trúc của vật thể dựa trên các điểm ảnh rời rạc thu được từ các hệ thống quét 3D. Có nhiều phương pháp khác nhau để mô hình hóa các đối tượng 3D, tùy thuộc vào từng đối tượng cụ thể và mức độ phức tạp của đối tượng. Để mô hình hóa các khối hình học cơ bản, thường sử dụng mặt cong không tham số (curves). Tuy nhiên, với những bề mặt có cấu trúc phức tạp, để mô hình hóa phải ứng dụng mặt cong tham số B-spline[17].
Trong các trường hợp đối tượng mô hình hóa có cấu trúc phức tạp, ví dụ như cơ thể người, người ta có thể dùng nhiều mặt cong ghép lại với nhau. Trong trường hợp này, một thành phần dùng để ghép được gọi là một mặt vá (Patch)[25][31].
26
Hiện nay, phương pháp mô hình hoá hình học các đối tượng 3 chiều dựa trên mặt cong NURBS đang được quan tâm nghiên cứu và triển khai trong các hệ đồ họa ba chiều. Đặc biệt phương pháp này đang được ứng dụng để mô hình hóa các vật thể trong các hệ thống CAD/CAM.
1.3.2. Phương trình bề mặt cong NURBS
Mặt cong NURBS (Non Uniform Rotional Basic Spline) là mặt cong B-spline hữu tỉ có các vector nút không đều. Đây là bề mặt tổng hợp được biểu diễn theo phương pháp hữu tỉ. Mặt cong NURBS là trường hợp tổng quát của các mặt cong hữu tỉ như B-Spline, Bézier [15].
Đường cong Spline có dạng:
𝑃(𝑡) = ∑ 𝑃
𝐿 𝑘=𝑜
k.Rk(t) (1) Trong đó: Pk : Là điểm kiểm soát với k=1.
L: các điểm kiểm soát.
Rk(t): Là các hàm trộn liên tục trong mỗi đoạn con [ti, ti+1] và liên tục trên mỗi nút. Mỗi Rk(t) là một đa thức riêng phần.
Các hàm cong riêng phần này gặp nhau ở các điểm nút và tạo cho đường cong trở nên liên tục, gọi là đường Spline.
Nếu cho trước một vector nút thì có thể có nhiều họ hàm trộn được dùng để tạo ra spline. Trong số các họ hàm này có một họ hàm mang giá trị nhỏ nhất, do đó có khả năng kiểm soát cục bộ lớn nhất, gọi là cơ sở cho spline. Ký hiệu là B-Spline.
27
Hình 1.12: Đường B-spline với các điểm kiểm soát.
Hình dạng đường cong sẽ thay đổi khi thay đổi các điểm kiểm soát
Nếu ký hiệu hàm trộn này là Nk,m (t) ta được phương trình tổng quát của đường cong B-spline:
𝑃(𝑡) = ∑ 𝑃
𝐿 𝑘=𝑜
k.Nk,m(t) (2)
Với hai vector knot U = [t0, t1 …, tp] và V = [s0, s1 …, sq] thuộc khoảng [0,1] phương trình bề mặt cong B-spline sẽ là:
S(u, v) = ∑ ∑N-
m
j=0 n
i=0
i,k(u).Nj,l(v).Pi,j (3)
u0≤ u ≤ up và v0 ≤ v ≤ vq
Mặt cong B-spline là hữu tỉ khi được định nghĩa trong không gian P4. Khi đó nó đạt tính phân thức khi chuyển về không gian Euclidean (P3). Trong hệ toạ độ thuần nhất, phương trình bề mặt cong B-spline có dạng:
S(u, v) = ∑ ∑N- m j=0 n i=0 i,k(u).Nj,l(v).𝑃𝑤 (4)
28
trong đó w ≠ 0 là tọa độ thuần nhất.Với {𝑃𝑖𝑤} tập các điểm điều khiển trong hệ tọa độ thuần nhất có dạng: 𝑃𝑖𝑤 = (𝑤𝑖.Xi ,wi.Yi, wi.Zi, wi), chuyển về không gian P3 bằng cách chia các tạo độ cho wi, ta có: 𝑥i = 𝑋𝑖
𝑤𝑖 ; yi = 𝑌𝑖 𝑤𝑖 ; zi = 𝑍𝑖 𝑤𝑖. Khi đó, phương trình (4) thành: ∑ ∑wi,j .N- m j=0 n i=0
i,k(u).Nj,l(v).Pi,j
S(u,v) = --- (5) ∑ ∑wi,j .N- m j=0 n i=0 i,k(u).Nj,l(v)
- (n,m): cấp của ma trận điều khiển.
- (k.l) : là bậc theo hai hướng u,v của mặt cong NURBS. - Pi,j: là các điểm điều khiển.
- Ni,k(u), Nj,l(u) là các hàm B-spline cơ sở.
- wi,jlà trọng số của điểm Pi,j trong hệ tọa độ thuần nhất với wi,j ≥ 0
Phương trình trên là phương trình bề mặt NURBS. Nếu đặt: ∑ ∑wi,j .NN- m j=0 n i=0 i,k(u).Nj,l(v) Ri,j,k,l (u,v) = --- ∑ ∑wi,j .NN- m j=0 n i=0 i,k(u).Nj,l(v)
Là tích tensor của mặt cong NURBS, khi đó phương trình mặt NURSB sẽ là:
S(u, v) = ∑ ∑R-
m
j=0 n
i=0
29
Hình 1.13: Bề mặt NURBS với các nút điều khiển.