Một thuật toán mô phỏng tóc dạng khối dựa vào phân chia mô hình da đầu

Abstract: The hair simulation, two approaches are

commonly used as hair simulation as block and

strand. With the hair simulation as block, such as hair

images that are suitable for short hair, hair stick scalp

surface and meet the requirements of the simul

time. However, the hair simulation approach as hair

block commonly used 2D hair images to map directly

onto the 3D scalp surface. But that 3D scalp model is

a surface model should normally cause distortion,

making it difficultly for the mapping.

This paper proposes a hair simulation algorithm as

block based on 3D scalp model division proposal into

different areas of the scalp to reduce curvature and

facilitate the process of mapping from the 2D hair

images to 3D scalp model. At the same time, the pape

also proposed interpolation technique to interpolate

the remaining points and the adjacent areas based on

the normal vector to ensure that the hair model results

are smooth and continuous.

pdf 9 trang phuongnguyen 3280
Bạn đang xem tài liệu "Một thuật toán mô phỏng tóc dạng khối dựa vào phân chia mô hình da đầu", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Một thuật toán mô phỏng tóc dạng khối dựa vào phân chia mô hình da đầu

Một thuật toán mô phỏng tóc dạng khối dựa vào phân chia mô hình da đầu
Các công trình nghiên cứu, phát triển và 
Abstract: The hair simulation, two approaches are 
commonly used as hair simulation as block and 
strand. With the hair simulation as block, such as hair 
images that are suitable for short hair, hair stick scalp 
surface and meet the requirements of the simul
time. However, the hair simulation approach as hair 
block commonly used 2D hair images to map directly 
onto the 3D scalp surface. But that 3D scalp model is 
a surface model should normally cause distortion, 
making it difficultly for the mapping. 
This paper proposes a hair simulation algorithm as 
block based on 3D scalp model division proposal into 
different areas of the scalp to reduce curvature and 
facilitate the process of mapping from the 2D hair 
images to 3D scalp model. At the same time, the pape
also proposed interpolation technique to interpolate 
the remaining points and the adjacent areas based on 
the normal vector to ensure that the hair model results 
are smooth and continuous. 
I. GIỚI THIỆU 
Sự phát triển của lĩnh vực thực tạ
nhiều ứng dụng mới trong các ngành
tế, an ninh quốc phòng, thương mại, gi
thực tại ảo, việc mô hình hoá và điề
các đối tượng là hai pha chính. Trong pha 
mô hình, việc xây dựng mô hình toán h
hình thực tế là vấn đề được quan tâm hàng 
chuyên gia. Đặc biệt là việc hoàn thiệ
phỏng thế giới thực hoặc tạo dựng hi
quan đến con người, động vật, chất li
chẳng hạn như tóc. 
Một thuật toán mô phỏng tóc dạng khối dựa vào 
phân chia mô hình da đầu
A Block Hair Simulation Algorithm based on The Scalp Model Division
ứng dụng CNTT-TT Tập V-1, 
- 40 -
ation 
r 
i ảo đã đưa đến 
 như giáo dục, y 
ải trí,... Trong 
u khiển mô hình 
điều khiển 
ọc sát với mô 
đầu của các 
n các tác vụ mô 
ện thực ảo liên 
ệu có tính sợi,... 
Dựa trên cơ sở nghiên cứ
tóc [9] như vật lý, cấu trúc, màu s
mô phỏng tóc được xác định là có ba h
chính gồm: (1). Mô phỏng tóc d
Mô phỏng tóc dưới dạng sợi (tinh); (3). Mô ph
dưới dạng kết hợp tóc dạng kh
Nhằm tiếp tục kế thừa và phát tri
nghiên cứu của tác giả và c
nghiên cứu đề xuất theo hướ
dưới dạng khối, cho phép mô ph
tóc 2D, rồi ánh xạ sang mô hình da 
Huang [5]; Bando và Chen[3]; Gibbs[4]; Ward và 
Kim[9]). Tuy nhiên, cách này gây ra nh
tạo ra những chỗ lồi lõm và 
ánh xạ, vì mô hình da đầu 3D là mô hình m
Để giảm độ cong, khắc ph
chỗ lồi lõm khi ánh xạ từ ảnh tóc 2D sang mô hình da 
đầu 3D, người ta đã chia mô hình da 
vùng da đầu khác nhau như: Lee và c
1) chia mô hình da đầu thành 10 vùng da 
Neumann [6] chia mô hình da 
trong khi Liang và Huang [8] l
thành 3 vùng da đầu. 
Hình 1. Mô hình tóc củ
Sở dĩ có sự phân chia khác nhau, vì các tác gi
và cộng sự [7], Kim và Neumann[6], Liang và 
Nguyễn Văn Huân và Ph
Số 10 (30), tháng 12/2013 
u về những đặc trưng của 
ắc, hình thái,... bài toán 
ướng tiếp cận 
ưới dạng khối (thô); (2). 
ỏng tóc 
ối và sợi. 
ển các kết quả 
ộng sự [10], bài báo này 
ng tiếp cận mô phỏng tóc 
ỏng tóc dưới dạng ảnh 
đầu 3D (Koh và 
ững biến dạng, 
ảnh hưởng đến quá trình 
ặt cong. 
ục sự biến dạng và những 
đầu 3D thành các 
ộng sự [7] (Hình 
đầu, Kim và 
đầu thành 4 vùng da đầu 
ại chia mô hình da đầu 
a Lee và cộng sự [7] 
ả Lee 
ạm Việt Bình 
Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT Tập V-1, Số 10 (30), tháng 12/2013 
 - 41 -
Huang[8], xem vùng da đầu là nơi tóc mọc nhưng da 
đầu có thể không bám sát hộp sọ và việc phân chia 
vùng da đầu thành các vùng khác nhau dựa vào sự 
xuất hiện và hành vi chuyển động của mỗi kiểu tóc. 
Để mô phỏng mỗi kiểu tóc, chúng ta lại phải có cách 
chia da đầu khác nhau phù hợp và như vậy, các 
phương pháp này không dễ dàng cho mô phỏng nhiều 
kiểu tóc khác nhau. Hơn nữa, các phương pháp của 
Kim và Neumann [6], Liang và Huang [8] không dễ 
dàng trong việc ánh xạ từ các ảnh tóc 2D lên các vùng 
da đầu 3D. Các phương pháp này mới chỉ dừng lại ở 
việc phủ tóc lên bề mặt da đầu bằng phương pháp ánh 
xạ, mà chưa chú trọng tới việc xử lý những biến dạng, 
vết răng cưa tại những vùng tiếp giáp giữa các ảnh tóc 
để làm cho tóc kết quả được trơn và liên tục. 
Bài báo này đề xuất một kỹ thuật mô phỏng tóc 
dạng khối dựa trên cơ sở đề xuất một cách chia mới mô 
hình da đầu 3D theo cấu trúc các vùng xương sọ trong y 
học thành 6 vùng da đầu tương ứng. Kỹ thuật đề xuất 
này nhằm giảm bớt độ cong của mô hình da đầu 3D, 
thuận lợi cho việc ánh xạ các ảnh tóc lên các vùng da 
đầu tương ứng và linh hoạt trong việc mô phỏng nhiều 
kiểu tóc khác nhau. Bài báo này còn đề xuất giải pháp 
nội suy một số điểm nhằm đảm bảo ràng buộc trong 
một vùng tóc (trơn), nội suy các vùng tiếp giáp (trơn và 
liên tục). 
Kết quả của bài báo có ý nghĩa góp phần xây dựng 
và mô phỏng các nhân vật ảo cho các lĩnh vực ứng 
dụng giải trí, điện ảnh, giáo dục, thiết kế,... Có khả 
năng ứng dụng trong công tác tư vấn thiết kế và thí 
nghiệm mô hình tóc trên con người ảo. Đặc biệt, kết 
quả của bài báo còn làm cơ sở đề xuất ý tưởng cho kỹ 
thuật tăng tốc độ mô phỏng tóc dựa vào rút gọn số 
lượng bề mặt da đầu (bằng phẳng). 
Phần còn lại của bài báo được cấu trúc như sau: 
Phần II trình bày đề xuất phân chia mô hình da đầu 
thành các vùng khác nhau. Phần III trình bày đề xuất 
về thuật toán mô phỏng tóc. Phần IV trình bày một số 
kết quả thực nghiệm và so sánh với các đề xuất khác 
và phần V là kết luận của bài báo. 
II. ĐỀ XUẤT PHÂN CHIA MÔ HÌNH DA ĐẦU 
II.1. Các phần xương: mảng tóc mọc trên mô hình da 
đầu thường gắn liền với xương vòm sọ. Xương vòm sọ 
là một trong số ít xương được hình thành trực tiếp bằng 
cách chuyển từ màng thành xương. Quá trình biến từ 
màng thành xương gọi là màng cốt hoá và xương được 
gọi là xương màng. Xương vòm sọ có những thành 
phần cơ bản [1,2,10] sau: 
a) Thành phần cơ bản b) Mô hình da đầu 3D 
 của xương vòm sọ 
Hình 2. Xương vòm sọ và mô hình da đầu bao phủ 
[1,2,10] 
Trong các thành phần xương, ngoại trừ xương đỉnh 
là có bề mặt cong hơn, các phần còn lại như nửa trên 
xương trán, xương chẩm và xương thái dương đều 
tương đối bằng phẳng. Nhìn chung, các xương sọ đều 
là loại xương dẹt, có bề mặt tương đối phẳng [1]. 
II.2. Phân chia mô hình da đầu theo cấu trúc 
xương sọ: 
Mô hình da đầu 3D được chia thành 6 vùng da đầu 
tương ứng với 6 vùng xương sọ dựa vào cấu trúc 
xương của hộp sọ. Đó là, vùng trán trên, vùng chẩm, 2 
vùng thái dương và 2 vùng đỉnh tương ứng với hai nửa 
của xương đỉnh. Sở dĩ có sự lựa chọn như vậy vì 
xương là cấu trúc nền tảng cho da đầu. Hơn nữa, bản 
thân các vùng xương của cấu trúc vòm sọ là xương 
màng nên tương đối bằng phẳng. Mặt khác, các vùng 
xương vòm sọ gần như tương đồng, thống nhất, do đó 
biến dạng là ít nhất. 
Vì vậy, việc phân chia này sẽ làm tăng khả năng 
mô phỏng các mảng tóc lên các vùng da đầu dựa vào 
kỹ thuật ánh xạ. Ngoài ra, do các mẫu tóc là các ảnh 
phẳng 2D nên việc ánh xạ chúng lên các vùng càng 
bằng phẳng thì càng đỡ biến dạng. Xuất phát từ thực 
tế, ta phân chia da đầu thành 6 vùng. 
Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT Tập V-1, Số 10 (30), tháng 12/2013 
 - 42 -
Hình 3. Phân chia mô hình da đầu 3D thành 6 vùng da 
đầu 
III. ĐỀ XUẤT THUẬT TOÁN MÔ PHỎNG 
TÓC 
III.1. Ánh xạ các ảnh tóc 2D lên các vùng da đầu 
3D 
Để ánh xạ các ảnh tóc 2D lên các vùng da đầu 
tương ứng, ta sẽ chuẩn bị 6 ảnh tóc 2D có kích thước 
phù hợp, tương ứng với từng vùng da đầu. Các ảnh tóc 
này thể hiện kiểu tóc mà ta muốn thể hiện cho những 
nhân vật cần mô tả. Hình 4 là minh họa cho ảnh tóc 
tương ứng với vùng lưới da đầu của nam giới. 
 a) 6 ảnh tóc 2D b) 6 vùng da đầu 
Hình 4. Ảnh tóc 2D và vùng lưới da đầu 3D 
Việc ánh xạ các ảnh tóc hai chiều sang các vùng da 
đầu ba chiều tương ứng, thực chất là thực hiện hàm biến 
đổi fj, j=1,..,6 từ ảnh tóc hai chiều sang vùng da đầu ba 
chiều [11]. Để giải quyết vấn đề này, người ta có thể sử 
dụng một trong hai cách sau đây: 
Cách 1: Xem mỗi ảnh tóc 2D như là một bề mặt 
trong không gian R3 và ánh xạ fj cần tìm sẽ được xác 
định trên tập các cặp điểm tương ứng (Pi,′) với i=1..n, 
Pi là các điểm trên ảnh tóc có toạ độ (xi,yi,zi), còn ′ là 
các điểm tương ứng trên vùng da đầu có toạ độ 
(′ ,′ ,′). 
Việc tìm này thường dựa trên một tiêu chuẩn tối ưu 
nào đó, chẳng hạn tổng độ lệch bình phương tối thiểu 
min)P(f'P
n
1i
2
iji →−∑
=
Với mỗi ánh xạ fj: 
fj(x,y,z)=(a1x+b1y+c1z+d1,a2x+b2y+c2z+d2, 
a3x+b3y+c3z+d3) 
Với a1,b1,c1,d1; a2,b2,c2,d2; a3,b3,c3,d3 là các hệ số 
Khi đó, với ∑
=
−=
n
1i
2
iji )P(f'PΦ
Điều này dẫn đến hệ phương trình: 











=
∂
∂
=
∂
∂
=
∂
∂
=
∂
∂
0
d
0
c
0
b
0
a
1
1
1
1
Φ
Φ
Φ
Φ
 ⇔ 











=−+++
=−+++
=−+++
=−+++
∑
∑
∑
∑
=
=
=
=
n
1i
'
i1i1i1i1
n
1i
i
'
i1i1i1i1
n
1i
i
'
i1i1i1i1
n
1i
i
'
i1i1i1i1
0)xdzcybxa(
0z)xdzcybxa(
0y)xdzcybxa(
0x)xdzcybxa(
⇔






















=




































∑
∑
∑
∑
∑∑∑
∑∑∑∑
∑∑∑∑
∑∑∑∑
=
=
=
=
===
====
====
====
n
1i
'
i
n
1i
'
ii
n
1i
'
ii
n
1i
'
ii
1
1
1
1
n
1i
i
n
1i
i
n
i
i
n
1i
i
n
1i
2
i
n
1i
ii
n
1i
ii
n
1i
i
n
1i
ii
n
1i
2
i
n
1i
ii
n
1i
i
n
1i
ii
n
1i
ii
n
1i
2
i
x
xz
xy
xx
d
c
b
a
nzyx
zzzyzx
yzyyyx
xzxyxx
Việc giải hệ phương trình tuyến tính này thường là 
phức tạp và phụ thuộc vào việc lựa chọn các cặp điểm 
điều khiển (Pi,′) trước đó. 
Hình 5. Ánh xạ ảnh tóc 2D lên vùng da đầu 3D 
( )[∑
=
+−+++=
n
1i
2
'
i1i1i1i1 xdzcybxa
( ) +−+++ 2'i2i2i2i2 ydzcybxa
( ) ]2'i3i3i3i3 zdzcybxa −+++
Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT Tập V-1, Số 10 (30), tháng 12/2013 
 - 43 -
Cách 2: Chiếu vùng da đầu 3D tương ứng xuống 
mặt phẳng 2D, khi đó bài toán ánh xạ các ảnh tóc 2D 
lên các vùng da đầu 3D trở thành bài toán ánh xạ các 
ảnh tóc 2D sang các vùng da đầu 2D thông qua ánh xạ 
fj ứng với cặp điểm điều khiển (Pi,′). 
Hình 6. Ánh xạ các ảnh tóc 2D sang các vùng da đầu 
2D 
III.2. Nội suy các điểm còn lại để đảm bảo ràng 
buộc trong một vùng tóc 
Trong thực tế, khi ánh xạ các ảnh tóc 2D lên các 
vùng da đầu 3D như kỹ thuật ánh xạ trên mục III.1, đôi 
khi người ta chỉ ánh xạ một phần các điểm của ảnh tóc 
2D lên vùng da đầu 3D tương ứng, các điểm còn lại sẽ 
được nội suy trên cơ sở các điểm này nhằm đảm bảo sự 
ràng buộc trong một vùng tóc và đặc biệt là thể hiện 
tính cục bộ tại các vị trí khác nhau trên từng vùng. Mặc 
dù, kỹ thuật ánh xạ trong mục III.1 đã đảm bảo việc ánh 
xạ các ảnh tóc vào các vùng da đầu phù hợp trên mô 
hình hộp sọ 3D. 
a) Ảnh tóc b) Nội suy điểm T’ dùng ánh xạ fj 
Hình 7. Nội suy điểm T’ dựa vào điểm T trên ảnh tóc 
sử dụng ánh xạ fj 
Với các điểm còn lại không thuộc vào các cặp điểm 
điều khiển (Pi,P′), với Pi∈Aj, P′∈Cj, i=1,..,n, j=1,..,6, 
Aj là sáu ảnh tóc, Cj là sáu vùng da đầu. Chúng ta chia 
các điểm trên ảnh tóc Aj thành 2 tập điểm Pax và Pns. 
Trong đó: Pax là tập các điểm điều khiển và tập các 
điểm sử dụng ánh xạ fj. 
Pns là tập các điểm nội suy sử dụng ánh xạ fj 
- Với các điểm Pax, thực hiện ánh xạ sử dụng fj:
 P’=fj(P) ∀P∈Pax 
- Với mỗi điểm T∈Pns, thì nội suy để xác định điểm 
T’ trên vùng da đầu, cụ thể: 
+ Tìm một tam giác ∆QuQvQw chứa điểm T và ba 
điểm Qu, Qv, Qw thuộc Pax. 
Tính các hệ số α1, α2, α3 dựa vào diện tích của các 
tam giác: 
α1=S(QuQvT)/S(QuQvQw); 
α2=S(QvQwT)/S(QuQvQw) 
α3=S(QwQuT)/S(QuQvQw); 
Sao cho α1+α2+α3=1 và α1, α2, α3∈[0,1] 
Khi đó, xác định được điểm T∈∆QuQvQw của ảnh 
tóc Aj ứng α1, α2, α3 như sau: 
T= α1*Qu+α2*Qv+α3*Qw 
+ Xác định ba điểm 	′ , ′ , ′ trên bề mặt da đầu 
tương ứng với ba điểm Qu, Qv, Qw trên ảnh tóc bằng 
ánh xạ fj tìm được ở trên: 	′ =fj(Qu),	′ =fj(Qv), 

′
=fj(Qw) 
+ Xác định điểm T’∈∆	′ ′ ′ dựa vào giá trị của 
điểm T∈∆QuQvQw: 
	′ = fj(T) = fj(α1*Qu+α2*Qv+α3*Qw) = 
α1*	
′ +α2*
′ +α3*
′
 a) Lưới tam giác và b) Tóc sau khi nội suy 
 nội suy điểm 
 Hình 8. Nội suy các điểm còn lại thuộc tam giác 
Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT Tập V-1, Số 10 (30), tháng 12/2013 
 - 44 -
III.3. Nội suy vùng tiếp giáp 
Hàm ánh xạ f tìm được trong mục III.1 thực hiện 
ánh xạ các ảnh tóc 2D lên các vùng da đầu 3D sẽ tạo 
ra vùng tiếp giáp giữa các mảng tóc và dẫn đến làm 
cho mô hình tóc kết quả có thể chưa đảm bảo được 
trơn và liên tục. 
Mặt khác, khi chia mô hình da đầu 3D thành các 
vùng da đầu thì một điểm thuộc vùng biên (ranh giới) 
giữa các vùng có thể sẽ tạo ra hai điểm thuộc về hai 
vùng da đầu có giá trị toạ độ khác nhau (điểm M, N). 
Do đó, khi ánh xạ từ các điểm Pi trên ảnh tóc lên các 
điểm P′ trên vùng da đầu 3D sẽ xảy ra trường hợp một 
điểm Pi có thể ánh xạ đến hai điểm P′ (M, N) trên các 
vùng da đầu. Vì vậy, để đảm bảo các vùng tiếp giáp 
được trơn và liên tục, chúng ta sử dụng kỹ thuật nội 
suy pháp tuyến để xấp xỉ hai điểm M, N thành điểm V. 
a) Vùng tiếp giáp b) Cách tính vectơ pháp tuyến 
 
Hình 9. Nội suy vùng tiếp giáp giữa hai vùng da đầu 
Trong Hình 9(b), điểm M thuộc một tam giác trong 
ảnh tóc (Cx), điểm N thuộc một tam giác trong ảnh tóc 
(Cy) trên mô hình da đầu mà có khoảng cách MN là 
nhỏ nhất, điểm V được nội suy thông qua đoạn thẳng 
nối hai điểm M và N, , 	 là hai vectơ pháp tuyến 
tại hai điểm M, N tương ứng. Độ dài đoạn MV và NV 
tương ứng là a và b. 
Để tính ra vectơ , chúng ta cần tính các vectơ 
pháp tuyến bề mặt  và 	. Sau đó, tính vectơ pháp 
tuyến  tại điểm V: 
 =
.  + . 
 + 
Như vậy, ta xuất phát từ một vectơ pháp tuyến cho 
mỗi điểm hoặc điểm ảnh, đó là một xấp xỉ đối với 
pháp tuyến thực trên bề mặt cong được xấp xỉ. Sau đó, 
 được sử dụng trong tính toán cường độ màu sắc 
cho bề mặt chứa . 
a) Tóc trước khi nội suy b) Tóc sau khi nội suy 
Hình 10. Tóc trước và sau khi nội suy vùng tiếp giáp 
giữa các mảng tóc 
III.4. Thuật toán mô phỏng tóc dựa vào phân chia 
mô hình da đầu SD 
Thuật toán SD (Scalp Division) thực hiện việc mô 
phỏng tóc dựa vào phân chia mô hình da đầu (mục II) 
và kỹ thuật ánh xạ (mục III.1), nội suy (mục III.2) và 
xử lý vùng tiếp giáp (mục III.3). 
Thuật toán SD gồm hai pha chính: 
* Pha 1: Ánh xạ các ảnh tóc Aj lên các vùng da đầu 
Cj với mọi j=1,..,6 dựa vào ánh xạ fj ứng với các cặp 
(Pi,P′) với i=1,..,n và các điểm nội suy. 
* Pha 2: Nội suy các cặp điểm tương ứng thuộc hai 
vùng tiếp giáp nhau bằng phép nội suy theo hướng 
vectơ pháp tuyến để đảm bảo độ trơn và liên tục trên 
mô hình tóc kết quả. 
* Thuật toán mô phỏng tóc SD: 
 Đầu vào: 
Bề mặt da đầu C={Cj}|j=1,..,6 gồm 6 vùng da 
đầu, 
6 ảnh tóc tương ứng A={Aj}|j=1,..,6, 
Đầu ra: 
Bề mặt da đầu C đã phủ ảnh tóc A 
Các bước thực hiện của thuật toán: 
Begin 
Pha 1: Ánh xạ các ảnh tóc Aj lên các vùng da 
đầu Cj tương ứng với ∀ j=1,..,6 
 begin 
Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT Tập V-1, Số 10 (30), tháng 12/2013 
 - 45 -
Bước 1: Lựa chọn các cặp điểm điều khiển 
(Pi,), 
 với Pi∈Aj, ∈Cj, i=1,..,n 
Bước 2: Với n cặp điểm điều khiển 
(Pi,) 
Tìm ánh xạ fj:Aj→Cj sao cho 
∑ ||
 − ()||
"#
$% →min 
Bước 3: Nếu tìm được ánh xạ fj thì chuyển 
sang Bước 4. 
Ngược lại, quay lại Bước 1 hoặc kết 
thúc. 
Bước 4: Chia các điểm trên Aj thành 2 tập 
điểm Pax và Pns 
Pax là tập các điểm điều khiển và điểm 
sử dụng ánh xạ fj 
Pns là tập các điểm nội suy sử dụng ánh 
xạ fj 
4.1. Ánh xạ tập điểm Pax sử dụng ánh xạ 
fj: 
 P’=fj(P) ∀P∈Pax 
4.2. Với ∀T∈Pns 
begin 
+ Tìm một tam giác ∆QuQvQw chứa 
điểm T và Qu, Qv, Qw thuộc Pax 
Tính các hệ số α1, α2, α3: 
α1=S(QuQvT)/S(QuQvQw) 
α2=S(QvQwT)/S(QuQvQw) 
α3=S(QwQuT)/S(QuQvQw) 
//S là diện tích của các tam giác 
 Sao cho α1+α2+α3=1 và 
α1, α2, α3∈[0,1] 
Khi đó, xác định được điểm T∈∆QuQvQw của 
Aj ứng α1, α2, α3: 
 T= α1*Qu+α2*Qv+α3*Qw 
+ Xác định ba điểm 	 ,  ,  trên bề mặt da 
đầu tương ứng với ba điểm Qu, Qv, Qw trên 
ảnh tóc bằng ánh xạ fj tìm được ở trên: 
	

=fj(Qu),	=fj(Qv),  =fj(Qw) 
+ Xác định điểm T’∈∆	  dựa vào giá 
trị điểm T∈∆QuQvQw: 
	′ = fj(T) = fj(α1*Qu+α2*Qv+α3*Qw) 
 = α1*	
 +α2*
+α3*

end; 
end; 
Pha 2: Nội suy vùng tiếp giáp 
Bước 5: Với ∀M∈Cx, ∀N∈Cy 
Trong đó: Cx và Cy là 2 vùng tiếp giáp 
nhau. 
Tính vectơ pháp tuyến tại điểm V: 
 =
.  + . 
 + 
Với  và  là hai vectơ pháp tuyến tại 
hai điểm M và N tương ứng. 
Điểm V thuộc vào đoạn MN, a=MV, 
b=NV. 
End. 
IV. THỰC NGHIỆM 
Chúng tôi đã cài đặt thử nghiệm thuật toán SD đề 
xuất vào mô phỏng tóc trên mô hình da đầu theo cách 
ánh xạ 1 (mục III.1) với hai cách chia mô hình da đầu 
khác nhau trên máy tính PC với CPU T2050 @ 1.60 
GHz, 1 GB RAM bằng phần mềm Visual C++, thư 
viện OPENGL. 
Với cách chia da đầu thành 6 vùng: đầu vào là 6 
ảnh tóc và 6 vùng da đầu tương ứng với các cặp điểm 
điều khiển được lựa chọn trước. 
Với cách chia da đầu thành 10 vùng theo Lee và 
cộng sự [7]: đầu vào là 10 ảnh tóc và 10 vùng da đầu 
tương ứng với các cặp điểm điều khiển được lựa chọn 
trước. 
Hình 11 (a,b,c) là 6 ảnh tóc, 6 vùng da đầu và mô 
hình tóc kết quả dựa vào kỹ thuật đề xuất của tác giả 
về phân chia mô hình da đầu thành 6 vùng dựa theo 
cấu trúc tự nhiên của sáu vùng xương sọ để giảm độ 
cong của mô hình da đầu 3D. Còn hình 11 d,e,f) là 10 
ảnh tóc, 10 vùng da đầu và mô hình tóc kết quả dựa 
vào phân chia mô hình da đầu thành 10 vùng theo kỹ 
thuật của nhóm tác giả Lee và cộng sự [7]. 
Trong hai cách phân chia mô hình da đầu trên, cách 
phân chia mô hình da đầu thành 6 vùng theo cấu trúc 
Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT Tập V-1, Số 10 (30), tháng 12/2013 
 - 46 -
tự nhiên của 6 vùng xương sọ trong đề xuất của tác giả 
bài báo cho kết quả mô hình tóc trơn và tốt hơn so với 
cách phân chia mô hình da đầu thành 10 vùng theo 
nhóm Lee và cộng sự [7]. Mặt khác, vì phân chia mô 
hình da đầu 3D dựa theo cấu trúc tự nhiên của các 
vùng xương sọ nên các vùng da đầu tương đối phẳng, 
tương đồng, thống nhất. Do đó, các vùng da đầu ít 
biến dạng và thuận lợi cho việc sử dụng các kỹ thuật 
ánh xạ từ các ảnh tóc 2D lên các vùng da đầu 3D 
tương ứng. 
a) 6 ảnh tóc b) 6 vùng da đầu c) Tóc kết quả 
Phân chia mô hình da đầu thành 6 vùng 
a) 10 ảnh tóc b) 10 vùng da đầu c) Tóc kết quả 
Phân chia mô hình da đầu thành 10 vùng theo Lee và 
cộng sự [7] 
Hình 11. Một số hình ảnh mô phỏng tóc 
Bên cạnh đó, với đề xuất của tác giả thì các ảnh tóc 
được ánh xạ trực tiếp lên bề mặt da đầu mà không 
thông qua một offset (lớp đệm) nào, tóc bám sát bề 
mặt da đầu. Do đó, đề xuất phân chia mô hình da đầu 
thành 6 vùng sẽ có những ưu điểm sau: 
+ Dễ dàng thay đổi kiểu tóc: vì để tạo ra những 
kiểu tóc khác nhau thì không phải chia lại mô hình da 
đầu, không cần phải thiết kế lại mô hình 3D, mà chỉ 
cần thay đổi lại kiểu ảnh tóc 2D. Việc thay đổi lại kiểu 
tóc 2D dễ dàng hơn nhiều so với kiểu tóc 3D. 
+ Phù hợp cho ứng dụng trong ngành công nghiệp 
giải trí, vì dễ dàng tạo ra nhiều kiểu tóc khác nhau. 
+ Mô hình tóc kết quả đảm bảo trơn và liên tục, tốt 
hơn do sử dụng nội suy điểm còn lại và xử lý các vùng 
tiếp giáp. 
Trong khi đề xuất của nhóm tác giả Lee và cộng 
sự: Phân chia mô hình da đầu thành 10 vùng theo các 
khối tóc thể hiện hành vi và kiểu dáng tóc. Do đó, với 
mỗi khối tóc (kiểu tóc) được thiết kế bởi một offset (là 
lớp đệm cho tóc mọc). Tóc có thể không bám sát bề 
mặt da đầu mà tóc được ánh xạ lên bề mặt của các 
offset. Do đó, với đề xuất của nhóm tác giả Lee và 
cộng sự sẽ có một số nhược điểm sau: 
+ Không dễ dàng thay đổi kiểu tóc: Vì để tạo ra 
những kiểu tóc khác nhau thì lại có những cách chia 
mô hình da đầu khác nhau, do đó phải thiết kế lại mô 
hình 3D (khó khăn trong thiết kế - so với thiết kế trong 
2D). 
+ Không phù hợp cho ứng dụng trong ngành công 
nghiệp giải trí, vì khó khăn trong việc thiết kế các kiểu 
tóc khác nhau. 
+ Mô hình tóc kết quả không đảm bảo trơn và liên 
tục, tạo ra vết răng cưa do không sử dụng nội suy điểm 
còn lại và xử lý các vùng tiếp giáp. 
Ngoài ra, so với các kết quả trong các công trình 
[6] và [8], kết quả theo đề xuất của bài báo có ưu điểm 
hơn hẳn về mặt chất lượng mô hình tóc, vì bài báo có 
đề xuất các kỹ thuật nội suy các điểm ràng buộc trong 
vùng tóc và xử lý các vùng tiếp giáp giữa các ảnh tóc. 
Điều này dẫn đến kết quả tóc sẽ đảm bảo trơn hơn và 
liên tục. Trong khi đó, các phương pháp trong các 
công trình [6] và [8] không đề cập tới việc nội suy các 
điểm ràng buộc và xử lý vùng tiếp. Điều này dẫn đến 
kết quả tóc không đảm bảo được trơn và liên tục, vẫn 
tạo ra những vùng răng cưa tại các vị trí tiếp giáp giữa 
các ảnh tóc (Hình 12). 
Mặt khác, phương pháp đề xuất của bài báo thuận 
tiện cho quá trình ánh xạ từ các tóc 2D lên các vùng da 
đầu 3D vì tóc được ánh xạ trực tiếp lên các vùng da 
đầu 3D. Trong khi đó, các phương pháp trong các 
công trình [6] và [8], khó khăn hơn trong quá trình ánh 
xạ từ các ảnh tóc 2D lên da đầu, vì các ảnh tóc sẽ phải 
ánh xạ lên bề mặt các lớp đệm (thể hiện kiểu mỗi vùng 
Các công trình nghiên cứu, phát triển và 
tóc) chứ không phải ánh xạ trực tiếp lên b
(Hình 12). 
Kết quả tóc của Kim và Neumann [6]
Kết quả tóc của Liang và Huang [8]
Hình 12. Một số hình ảnh mô phỏng tóc trong các 
công trình [6,8] 
V. KẾT LUẬN 
Tóc là một trong những thành phần
nhân vật con người ảo, việc mô phỏng tóc mà th
được tính chất chân thực của tóc là góp ph
xây dựng các hệ thống thực tại ảo nói chung và con 
người ảo nói riêng. Tóc là đối tượng ph
lượng lớn lên tới hàng trăm nghìn s
người. Vì vậy, trong quá trình mô ph
không những phải đảm bảo chất lượng mô hình tóc mà 
còn đòi hỏi phải đảm bảo thời gian th
hiệu quả mô phỏng. 
Bài báo đã đề xuất một thuật toán
dạng khối dựa vào đề xuất phân chia mô hình da 
thành sáu vùng theo y học và sử dụng k
để biểu diễn các ảnh tóc trên các vùng da 
ứng dựa vào các cặp điểm điều khiển. Đ
báo cũng đã đề xuất kỹ thuật nội suy các 
và các vùng tiếp giáp dựa vào véctơ
đảm bảo cho mô hình tóc kết quả đ
tục. 
ứng dụng CNTT-TT Tập V-1, 
- 47 -
ề mặt da đầu 
 quan trọng trên 
ể hiện 
ần vào việc 
ức tạp với số 
ợi trên mỗi con 
ỏng tóc yêu cầu 
ực và nâng cao 
 mô phỏng tóc 
đầu 
ỹ thuật ánh xạ 
đầu tương 
ồng thời, bài 
điểm còn lại 
 pháp tuyến để 
ược trơn và liên 
TÀI LIỆU THAM KHẢO 
[1] NGUYỄN QUAN QUYỀN
Giải phẫu người, NXB Y họ
[2] Frank H. Netter, MD, 
Ph.D. Consulting Editor, Atlas of Human 
Geigy Corparation Summit, New Iersey, 1991.
[3] Yosuke Bando, Bing
Nishita, Animating Hair with Loosely Connected 
Particles (LCP), EUROGRAPHICS 2003/P. Brunet and 
D. Fellner, Volume 22(2003), No. 3.
[4] D. Gibbs, Carlos, David A.Hart
hair using interpolation and clumping in an iterative 
process, Pacific Data Images LLC (Redwood City, 
CA), 2008. 
[5] C. K. Koh and Z. Huang
human hair modeled in strips
and Simulation, Springer-Verlag, pages 101
[6] Yong Kim and Ulrich Neumann
Volume for Modeling Human Hair,
and Immersive Technology Laboratory, Integrated 
Media Systems Center, University of
California, 2002. 
[7] Chia-Ying Lee, Wei-Ru Chen, Eugenia Leu, 
Ming Ouhyoung, A Rotor Platform Assisted System 
for 3D Hairstyles, Proc. WSCG 2002 (the 10th 
International Conference in Central Europe on Computer 
Graphics, Visualization and Computer Vision'2002) , 
Plzen, Czech Republic, February 2002. 
[8] Tae-W. Liang and 
framework for real-time hair animation
Graphics Conference on Computer Graphics and 
Applications, October 2003.
[9] K. Ward, F. Bertails, Kim, arschner, Cani, 
Ming C.Lin, A Survey on Hair Modeling: Styling, 
Simulation and Rendering, University of North Carolina at 
Chapel Hill. 2007. 
[10] NGUYỄN VĂN HUÂN, PHẠM VIỆT BÌNH
các vùng tóc trên các vùng da 
trường vectơ, chuyên san Các công trình nghiên c
triển khai Công nghệ Thông tin và Vi
chính viễn thông & Công ngh
2010, 5-14. 
Số 10 (30), tháng 12/2013 
, PHẠM ĐĂNG DIỆU, Atlas-
c, 1997. 
Sharon Colacino, 
Anatomy, Ciba. 
-Yu Chen, Tomoyuki 
, Modeling 
, Real-time animation of 
, Computer Animation 
–110, 2000. 
, A Thin Shell 
 Computer Graphics 
 Southern 
Z. Huang, An enhanced 
, in Pacific 
, Biểu diễn 
đầu tương ứng dựa vào 
ứu và 
ễn thông, Tạp chí Bưu 
ệ Thông tin, Tập 24, Số 4, 
Các công trình nghiên cứu, phát triển và ứng dụng CNTT-TT Tập V-1, Số 10 (30), tháng 12/2013 
 - 48 -
[11] James D.Foley, Andries Van Dam, Feiner, 
John Hughes, Computer Graphics, Principle and 
Practice. Addision Wesley, NewYork, 1996. 
Nhận bài ngày: 24/06/2013 
SƠ LƯỢC VỀ TÁC GIẢ 
NGUYỄN VĂN HUÂN 
Sinh năm 1979 tại Hà Nội. 
Năm 2003, nhận bằng cử nhân 
ngành Hệ thống thông tin Kinh tế 
tại Trường Đại học Kinh tế Quốc 
dân Hà Nội. Nhận bằng Thạc sỹ 
chuyên ngành Khoa học máy tính 
năm 2007, bằng Tiến sỹ tại Viện 
CNTT, Viện Hàn lâm KH&CN 
Việt Nam năm 2013. 
Hiện đang công tác tại Trường Đại học CNTT và 
Truyền thông – Đại học Thái Nguyên. 
Hướng nghiên cứu: Thực tại ảo, Xử lý ảnh, Hệ thống 
thông tin Kinh tế (Ứng dụng CNTT vào các hoạt động 
kinh tế xã hội). 
Email: nvhuan@ictu.edu.vn 
PHẠM VIỆT BÌNH 
Sinh năm 1955 tại Thái Nguyên. 
Năm 2007, nhận bằng Tiến sỹ 
tại Viện CNTT, Viện Hàm lâm 
KH&CN Việt Nam. 
Hiện đang công tác tại Trường 
Đại học CNTT và Truyền thông 
– Đại học Thái Nguyên. 
Hướng nghiên cứu: Xử lý ảnh, 
Mạng máy tính và Truyền thông. 
Email: pvbinh@ictu.edu.vn. 

File đính kèm:

  • pdfmot_thuat_toan_mo_phong_toc_dang_khoi_dua_vao_phan_chia_mo_h.pdf