Tải bản đầy đủ (.pdf) (82 trang)

thử nghiệm phương pháp biến đổi khuôn mặt trên ảnh hai chiều

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.45 MB, 82 trang )



























ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ





Bùi Lê Hùng


THỬ NGHIỆM PHƢƠNG PHÁP BIẾN ĐỔI
KHUÔN MẶT TRÊN ẢNH HAI CHIỀU

KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin







HÀ NỘI - 2009




























ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ



Bùi Lê Hùng


THỬ NGHIỆM PHƢƠNG PHÁP BIẾN ĐỔI
KHUÔN MẶT TRÊN ẢNH HAI CHIỀU


KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công Nghệ Thông Tin



Cán bộ hƣớng dẫn: TS. Bùi Thế Duy






HÀ NỘI - 2009
I

TÓM TẮT

Khóa luận này đưa ra một phương pháp tạo chuyển động khuôn mặt trong không
gian hai chiều. Sử dụng đầu vào là một bức ảnh mặt người ở trạng thái bình thường,
phương pháp này sử dụng các phép biến đổi ảnh để thay đổi trạng thái cảm xúc của
khuôn mặt, tạo cho khuôn mặt khả năng nói chuyện bằng tiếng Việt. Phương pháp của
chúng tôi đưa ra chủ yếu dựa trên các phép bóp méo ảnh và cải tiến của nó. Mục tiêu
của chúng tôi là tạo ra một khuôn mặt có những chuyển động chân thực kết hợp với
việc tận dụng ưu điểm của đồ họa hai chiều trong tốc độ xử lý. Kết quả của phương
pháp này là khá khả quan. Khuôn mặt đã có thể biểu lộ được những cảm xúc cơ bản và
mô phỏng được các chữ cái trong tiếng Việt.





















II

LỜI CẢM ƠN

Trước hết, em xin được chân thành gửi lời cảm ơn tới thầy T.S Bùi Thế Duy vì
đã chỉ bảo và hướng dẫn tận tình cho em trong suốt quá trình nghiên cứu và làm khóa
luận này.
Em cũng xin được cảm ơn các thầy cô của trường đại học Công Nghệ đã dạy dỗ
và truyền đạt cho em những kiến thức quý báu trong suốt bốn năm học đại học.
Cám ơn các bạn K50CA, K50KHMT và các bạn thuộc phòng tương tác người -
máy vì những cuộc trao đổi thú vị.
Cuối cùng, con xin được gửi tới bố mẹ và toàn thể gia đình những tình cảm thân
thương nhất.

Hà Nội 24/05/2009
Bùi Lê Hùng















III

MỤC LỤC

TÓM TẮT I
LỜI CẢM ƠN II
MỤC LỤC III
DANH MỤC HÌNH ẢNH VI
DANH MỤC BẢNG BIỂU VIII

Chƣơng 1
GIỚI THIỆU 1

Chƣơng 2
HOẠT HÌNH KHUÔN MẶT 4
2.1.Mở đầu 4
2.2.Hoạt hình khuôn mặt 3D 4
2.2.1.Giới thiệu chung 4
2.2.2.Mô hình hóa khuôn mặt 5

2.2.3.Mô hình hóa chuyển động 5
2.2.4.Mô hình cơ của Waters 7
2.3.Hoạt hình khuôn mặt 2D 8
2.3.1.Giới thiệu chung 8
2.3.2.Phương pháp ghi lại video 9
2.3.3.Phương pháp dựa trên kỹ thuật 3D 11
2.4.Kết luận 14

Chƣơng 3
CÁC KỸ THUẬT BÓP MÉO ẢNH 15
3.1.Mở đầu 15
3.2.Phân loại kỹ thuật bóp méo ảnh theo phương pháp biến đổi 16
3.2.1.Bóp méo ảnh thông qua việc sử dụng hàm số 16
3.2.2.Bóp méo ảnh bằng cách chia ảnh thành những đa giác nhỏ 23
3.2.3.Bóp méo ảnh dùng cho morphing 28
3.3.Phân loại kỹ thuật bóp méo ảnh theo cách tạo ra ảnh đích 29
IV

3.3.1.Mở đầu 29
3.3.2.Bóp méo xuôi 29
3.3.3.Bóp méo ngược 31
3.3.4.So sáng bóp méo xuôi và bóp méo ngược 32
3.4.Kết luận 32

Chƣơng 4
MÔ PHỎNG CHUYỂN ĐỘNG CỦA KHUÔN MẶT DỰA TRÊN CÁC KỸ
THUẬT BÓP MÉO ẢNH 34
4.1.Mở đầu 34
4.2.Mô phỏng chuyển động xoay của xương hàm 34
4.2.1.Chuyển động của xương hàm 34

4.2.2.Mô phỏng chuyển động 35
4.3.Mô phỏng chuyển động của các cơ trên khuôn mặt 39
4.3.1.Giới thiệu về cơ mặt 39
4.3.2.Mô phỏng chuyển động 41
4.4.Xây dựng dựng hệ mô phỏng các cơ trên khuôn mặt 42
4.5.Kết luận 46

Chƣơng 5
TẠO CẢM XÚC KHUÔN MẶT 47
5.1.Mở đầu 47
5.2.Hệ mã hóa các cử động khuôn mặt (Facial Action Coding System - FACS) 47
5.3.Những cảm xúc cơ bản 53
5.4.Xây dựng hệ thống các cảm xúc cho nhân vật 54
5.5.Kết luận 61

Chƣơng 6
XÂY DỰNG KHUÔN MẶT NÓI TIẾNG VIỆT 62
6.1.Mở đầu 62
6.2.Giới thiệu về âm vị và hình vị 62
6.3.Âm vị và hình vị trong tiếng Việt 63
6.4.Xây dựng tập hợp các hình vị cho khuôn mặt 64
6.5.Tạo chuyển động liên tục cho khuôn mặt khi nói chuyện 65
V

6.6.Kết luận 65

Chƣơng 7
TỔNG KẾT 67

TÀI LIỆU THAM KHẢO 69























VI

DANH MỤC HÌNH ẢNH

Hình 1 : Hai vợ chồng nhà “chằn tinh” Shrek 1
Hình 2 : Mô hình CANDIDE (1987) và mô hình Greta (2001) 5
Hình 3 : Mô hình cơ vector của Waters 7
Hình 4 : Mô hình cơ mảng của Waters 8

Hình 5 : Mô hình cơ vòng của Waters 8
Hình 6 : Tổng quan của quá trình thu thập âm vị và hình vị 10
Hình 7 : Tổng quan của quá trình tổng hợp video mới 10
Hình 8 : Cách thức thực hiện 12
Hình 9 : Một số kết quả 13
Hình 10 : Ví dụ phép kéo 17
Hình 11 : Ví dụ phép biến đổi Affine 18
Hình 12 : Ví dụ phép chiếu 18
Hình 13 : Ảnh ban đầu 19
Hình 14 : Ảnh bị biến đổi bởi công thức r = sqrt (r) 20
Hình 15 : Ảnh bị biến đổi bởi công thức r = 2 arcsin(r) / p 20
Hình 16 : Ảnh bị biến đổi bởi công thức r = sin (pi. r / 2) 21
Hình 17 : Ảnh bị biến đổi bởi công thức r = r
2
21
Hình 18 : Ảnh bị biến đổi bởi công thức x = sin(pi.x / 2) và y = sin(pi.y / 2) 22
Hình 19 : Ảnh bị biến đổi bởi công thức x = 2 asin(x) / pi và y = 2 asin(y) / pi 22
Hình 20 : Ảnh gốc và ảnh bị biến đổi 23
Hình 21 : Một số kiểu biến đổi ảnh (kiểu 'mắt cá', kiểu 'xoáy', kiểu 'mưa') 23
Hình 22 : Hệ tọa độ Barycentric với tam giác 24
Hình 23 : Xác định tọa độ điểm tương ứng với P‟ trên ảnh ban đầu 25
Hình 24 : Xác định tọa độ các điểm bằng hệ tọa độ Barycentric 25
Hình 25 : Phương pháp bóp méo tứ giác 26
Hình 26 : Ảnh ban đầu với các vector để bóp méo ảnh 27
Hình 27 : Ảnh sau khi bóp méo theo các vector 27
Hình 28 : Bức ảnh morphing giữa George.W.Bush và Arnold Schwarzenegger 28
Hình 29 : Phương pháp morphing 29
Hình 30 : Bóp méo xuôi cho ảnh 30
Hình 31 : Mô tả thuật toán bóp méo xuôi 30
Hình 32 : Vấn đề của bóp méo xuôi 31

Hình 33 : Bóp méo ngược cho ảnh 31
Hình 34 : Vấn đề của bóp méo ngược 32
Hình 35 : Điểm xoay xương hàm 35
Hình 36 : Ước lượng trục quay của hàm 36
Hình 37 : Môi của nhân vật 37
VII

Hình 38 : Hình ảnh của môi dưới sau phép xoay 38
Hình 39 : Ảnh trước và sau khi thực hiện kỹ thuật bóp méo môi trên 38
Hình 40 : Môi mở ra với các góc ϕ = 0, ϕ = pi / 20, ϕ = pi / 15, ϕ = pi / 10 39
Hình 41 : Trạng thái ban đầu - Trước khi sử dụng phép bóp méo cho cằm - Sau khi sử
dụng phép bóp méo cho cằm 39
Hình 42 : Các cơ trên khuôn mặt (khi nhìn thẳng) 40
Hình 43 : Các cơ trên khuôn mặt (khi nhìn ngang) 40
Hình 44 : Phép bóp méo tứ giác tạo nụ cười nửa miệng với cơ khóe miệng 41
Hình 45 : Phép bóp méo tứ giác làm mắt mở rộng hơn với cơ mắt 41
Hình 46 : Một số hình dáng của môi 42
Hình 47 : Hệ các cơ được chương trình xây dựng dựa theo 42
Hình 48 : Tác động của 2 cơ nén môi trên và môi dưới 44
Hình 49 : Tác động của cơ kéo khóe miệng xuống 44
Hình 50 : Tác động của cơ kéo khóe miệng lên 44
Hình 51 : Tác động của cơ kéo cánh mũi lên 44
Hình 52 : Tác động của cơ nâng lông mày bên mắt trái 44
Hình 53 : Tác động của cơ kéo lông mày xuống 44
Hình 54: Tác động của cơ thu nhỏ mắt lại 45
Hình 55 : Tác động của cơ cằm 45
Hình 56 : Mức độ co giãn của cơ kéo khóe môi xuống từ trạng thái bình thường cho
đến trạng thái giãn tối đa 45
Hình 57 : Cảm giác ngạc nhiên 50% và 100% 55
Hình 58 : Cảm giác sợ hãi 50% và 100% 56

Hình 59 : Cảm giác ghê tởm 70% và 100% 57
Hình 60 : Cảm giác tức giận 40% và 100% 58
Hình 61 : Cảm giác hạnh phúc 50% và 100% 59
Hình 62 : Cảm giác buồn bã 60% và 100% 60
Hình 63 : Hình thang nguyên âm 63
Hình 64 : Các hình vị tương ứng của a|ă|â và e|ê và o 64
Hình 65 : Các hình vị tương ứng của ô và ơ và oo 64
Hình 66 : Các hình vị tương ứng của u và ư 65
Hình 67 : Các hình vị tương ứng của b|m|p và v|ph và các phụ âm còn lại 65





VIII

DANH MỤC BẢNG BIỂU

Bảng 1 : Hệ Thống Các Cơ Được Sử Dụng Trong Chương Trình 43
Bảng 2 : Hệ Mã Hóa Các Cử Động Khuôn Mặt (FACS) 48
Bảng 3 : Danh Sách Các AU Tạo Nên Các Cảm Xúc Cơ Bản 53

























- 1 -

Chƣơng 1
GIỚI THIỆU

Dẫn nhập
Năm 2001, khi phần đầu tiên của bộ phim hoạt hình Shrek ra đời, tổng doanh thu
mà bộ phim đạt được là gần 500 triệu đô. Năm 2004, Shrek II ra mắt và thu về hơn
900 triệu. Ba năm sau đó, Shrek III tiếp tục thắng lợi lớn và mang lại cho đoàn làm
phim gần 800 triệu đô la.


Hnh 1 : Hai vợ chồng nhà “chằn tinh” Shrek

Điều gì khiến cho gã chằn tinh xấu xí và đáng sợ như Shrek lại có thể giành được

nhiều tình cảm từ khán giả đến vậy ? Chúng ta thường xuyên xem những bộ phim do
con người đóng, thật khó để có thể tìm được một diễn viên nào có ngoại hình như
Shrek mà lại có thể mang về một loạt ba phim với doanh thu lên đến hàng trăm triệu
đô. Câu trả lời có lẽ nằm ở nhiều khía cạnh như tính cách tốt bụng, bản chất chân thật
của Shrek nhưng có lẽ yếu tố quan trong nhất chính là chúng ta cảm thấy đồng cảm
với Shrek. Nhìn vào bức ảnh trên, thật khó để không có cảm tình với anh chàng chằn
tinh xấu xí nhưng tốt bụng này.
Cùng với sự thành công của một số bộ phim hoạt hình khác như Gia Đình Nhà
Siêu Nhân (The Incredibles), Robot biết yêu (Wall-e)… lĩnh vực hoạt hình mà trung
tâm là việc tạo ra các nhân vật hoạt hình đang nhận được sự quan tâm lớn.

- 2 -

Cũng liên quan đến các nhân vật ảo, nhưng không phải nhân vật hoạt hình mà là
các nhân vật trong máy tính. Thế giới của các trò chơi nhập vai đang phát triển hơn lúc
nào hết khi người chơi bật máy tính lên là có thể giao tiếp với các nhân vật ảo mà cảm
giác như đang sống trong thế giới thực (Second Life, The Sims, Fallout 3). Hãng
Umanify đã đưa ra một ứng dụng cho máy Nokia khi giúp cho người dùng mỗi khi
xuất hiện một tin nhắn lại có một nhân vật xuất hiện đọc tin cho bạn.
Có thể nói, ứng dụng của việc xây dựng lên các nhân vật ảo trong cuộc sống
ngày nay là vô cùng lớn. Để xây dựng lên một nhân vật ảo cần sự kết hợp của nhiều
lĩnh vực như trí tuệ nhân tạo, đồ họa máy tính, xử lý ngôn ngữ tự nhiên…
Đối với lĩnh vực đồ họa máy tính, việc xây dựng lên một nhân vật như Shrek đòi
các thiết bị cấu hình cao và nhiều công sức của con người. Bởi người xem muốn thấy
một nhân vật có cách nói chuyện truyền cảm, những cử động uyển chuyển và có khả
năng bộc lộ ra những cảm xúc chân thực và tinh tế. Còn với nhân vật như của
Umanify, yêu cầu đầu tiên là nhân vật có thể nói chuyện được và có khả năng chạy
trên nền tảng các thiết bị không có cấu hình cao như điện thoại di động.
Để xây dựng nên một nhân vật ảo toàn diện, chúng ta cần xây dựng ba phần như
sau :

 Một khuôn mặt có khả năng nói chuyện và bộc lộ những cảm xúc
 Một cơ thể có khả năng thể hiện những cử chỉ
 Một trí tuệ bao gồm những suy nghĩ, tình cảm, động lực, hành vi, tính
cách… của nhân vật
Lĩnh vực đồ họa máy tính giải quyết bài toán xây dựng khuôn mặt và cơ thể.
Trong đó khuôn mặt luôn nhận được nhiều sự quan tâm hơn. Lý do là bởi khuôn mặt
là nơi giao tiếp, nói chuyện và bộc lộ những cảm xúc. Nhìn vào khuôn mặt ta có thể
thu được nhiều thông tin hơn. Xét cho cùng, khi quan sát một nhân vật ảo, chúng ta
không quan sát tay chân của nhân vật nhiều hơn khuôn mặt của nhân vật đó.
Có nhiều phương pháp để tạo chuyển động cho khuôn mặt đặc biệt là trên
không gian 3D. Tuy vậy, các phương pháp được áp dụng ngày nay trên không gian 3D
đều đòi hỏi những xử lý tính toán phức tạp yêu cầu máy cấu hình cao về tốc độ xử lý
và card màn hình mạnh.
Các phương pháp 2D thì ngược lại, tạo khuôn mặt chuyển động trong không
gian 2D không đòi hỏi máy cấu hình cao và tốc độ đường truyền lớn, dẫn đến dễ triển
khai trên nền web và các ứng dụng di động. Vấn đề của các phương pháp 2D là phải
cải thiện được tính chân thực cho việc chuyển động trên khuôn mặt.

Giới thiệu về khóa luận
Trong khóa luận này, chúng tôi đưa ra một phương pháp tạo chuyển động cho
khuôn mặt trong không gian 2D. Mục tiêu của chúng tôi là tạo ra một khuôn mặt có
chuyển động chân thực nhất có thể đồng thời vẫn tận dụng được ưu điểm của các
phương pháp 2D trong tốc độ xử lý.

- 3 -

Chúng tôi sử dụng đầu vào là bức ảnh khuôn mặt của một người, phương pháp
của chúng tôi sử dụng các phép biến đổi ảnh để thay đổi trạng thái cảm xúc và làm cho
người trong bức ảnh có thể nói chuyện được.


Cấu trúc của khóa luận
Chương 2 giới thiệu một cách tổng quan về các cách tạo chuyển động cho
khuôn mặt được áp dụng hiện nay cả trên không gian 2D và 3D. Cùng với việc giới
thiệu, chương này cũng đưa ra những nhận xét về các ưu nhược điểm của từng phương
pháp.
Chương 3 giới thiệu về các kỹ thuật bóp méo ảnh. Các kỹ thuật bóp méo ảnh là
một loại của các kỹ thuật biến đổi ảnh. Chương này sẽ giới thiệu một cách tổng quan
về các kỹ thuật bóp méo ảnh, trong đó có những kỹ thuật sẽ được áp dụng trong
phương pháp của chúng tôi. Chương này cũng giới thiệu về một kỹ thuật gọi là
morphing.
Chương 4 mô phỏng chuyển động của khuôn mặt dựa trên kỹ thuật bóp méo
ảnh. Dựa trên các kỹ thuật bóp méo ảnh ở chương 3, chương 4 là nơi chúng tôi giới
thiệu kết quả các thử nghiệm của mình khi sử dụng các kỹ thuật bóp méo ảnh để tạo
chuyển động cho khuôn mặt.
Chương 5 giới thiệu cách tạo cảm xúc cho khuôn mặt. Sử dụng kết quả của
chương 4, chương 5 kết hợp các chuyển động diễn ra trên khuôn mặt để làm khuôn
mặt biểu lộ những cảm xúc khác nhau. Hệ cảm xúc mà chúng tôi sử dụng là hệ cảm
xúc của Ekman [Ekman 1972] bao gồm sáu cảm xúc cơ bản là : ngạc nhiên, sợ hãi, tức
giận, ghê tởm, hạnh phúc và buồn bã.
Chương 6 giới thiệu về các công việc chúng tôi đã làm được trong nỗ lực làm
cho khuôn mặt của mình có khả năng nói chuyện bằng tiếng Việt
Chương 7 tổng kết lại toàn bộ khóa luận và đưa ra phương hướng phát triển
trong tương lai cho phương pháp của chúng tôi











- 4 -

Chƣơng 2
HOẠT HÌNH KHUÔN MẶT

2.1.Mở đầu
Hoạt hình khuôn mặt (facial animation) là một lĩnh vực của đồ họa máy tính, nó
mô phỏng các chuyển động diễn ra trên khuôn mặt khi nhân vật nói chuyện hoặc biểu
lộ cảm xúc. Nghĩ đến hoạt hình khuôn mặt là người ta nghĩ đến những ứng dụng của
nó trong phim ảnh, hoạt hình và trò chơi điện tử. Được bắt đầu nghiên cứu từ những
năm đầu của thập niên 70, cho đến nay, hoạt hình khuôn mặt đã đạt được nhiều bước
tiến đáng kể. Nhưng vẫn còn đó những giới hạn trong các phương pháp được ứng dụng
hiện nay của hoạt hình khuôn mặt, điều đó đòi hỏi con người phải tiếp tục nghiên cứu
và phát triển để hoàn thiện hơn lĩnh vực này.
Ở chương 1, chúng tôi giới thiệu một cách tổng quan về hoạt hình khuôn mặt.
Chúng tôi chia chương này ra làm hai phần : hoạt hình khuôn mặt 3D và hoạt hình
khuôn mặt 2D.
Ở phần thứ nhất, chúng tôi sẽ giới thiệu một cách tổng quan về hoạt hình khuôn
mặt 3D. Chúng tôi sẽ giới thiệu từng bước để tạo hoạt hình khuôn mặt 3D. Với mỗi
bước, chúng tôi cũng giới thiệu các phương pháp thực hiện. Cùng với việc giới thiệu,
chúng tôi cũng đưa ra những đánh giá về ưu và nhược điểm của từng phương pháp.
Trong phần giới thiệu về hoạt hình khuôn mặt 3D, chúng tôi cũng đồng thời giới thiệu
về mô hình cơ của Waters [Waters 87]. Đây là một mô hình rất nổi tiếng và được ứng
dụng rộng rãi trong hoạt hình khuôn mặt.
Ở phần thứ hai, chúng tôi sẽ giới thiệu về hoạt hình khuôn mặt 2D. Các kỹ thuật
tạo hoạt hình khuôn mặt 2D không được phong phú như hoạt hình khuôn mặt 3D. Có
hai phương pháp nổi tiếng hiện nay để tạo hoạt hình khuôn mặt 2D, đó là phương pháp

ghi lại video [Bregler 1997] và phương pháp dựa trên kỹ thuật 3D [Blanz 2003]. Vì
chương trình của chúng tôi đang phát triển là tạo chuyển động trên khuôn mặt 2D nên
trong chúng tôi sẽ cố gắng giới thiệu một cách chi tiết về hai phương pháp nói trên. Đó
cũng là điều kiện để chúng tôi có thể so sánh các phương pháp hiện tại với phương
pháp của mình.

2.2.Hoạt hnh khuôn mặt 3D
2.2.1.Giới thiệu chung
Để tạo hoạt hình khuôn mặt trong không gian ba chiều, công việc mà ta phải làm
là điều khiển một lưới 3D mô phỏng mô hình của khuôn mặt. Mục đích của việc làm
này là để có thể thay đổi được trạng thái mà khuôn mặt biểu lộ ra ngoài. Có rất nhiều
hướng tiếp cận, từ đơn giản như mô hình thời gian thực CANDIDE [Rydfalk 1987]
cho đến những mô hình phức tạp như mô hình dựa trên các lớp cơ mặt của [Lee 1995]
hay mô hình Greta của [Pasquariello & Pelachaud 2001]

- 5 -



Hnh 2 : Mô hnh CANDIDE (1987) và mô hnh Greta (2001)

Để tạo được hoạt hình khuôn mặt trong không gian ba chiều, có hai bước phải
làm. Thứ nhất là mô hình hóa khuôn mặt, thứ hai là mô hình hóa chuyển động. Sau
đây chúng tôi sẽ giới thiệu về hai bước này.
2.2.2.Mô hnh hóa khuôn mặt
Khuôn mặt của con người là một lưới 3D phức tạp và đòi hỏi sự linh hoạt. Nó
chứa cả những nếp nhăn và những chỗ lồi lõm trên khuôn mặt. Thách thức của việc
xây dựng mô hình lưới này chính là việc phải làm sao cho nó có thể chuyển động
nhanh nhưng vẫn tạo cảm giác chân thật.
Một hướng giải quyết là sử dụng một lưới các đa giác xấp xỉ bề mặt của khuôn

mặt. Khi đó để khuôn mặt có thể chuyển động, ta chỉ cần điều chỉnh các đỉnh trên lưới
bề mặt này. Cách tiếp cận này được giới thiệu đầu tiên bởi [Gouraud 1971]. Phương
pháp này lấy ra một số điểm trên bề mặt của khuôn mặt và nối những điểm đó với
nhau để tạo ra một lưới các đa giác. Tiếp đó phương pháp này được phát triển và ứng
dụng bởi [Parke 1972 | Rydfalk 1987 | Pasquariello & Pelachaud 2001].
Để mô phỏng được chuyển động của khuôn mặt, người ta thêm vào dưới lưới bề
mặt lớp mỡ, lớp cơ và cả mô hình xương sọ [Kahler 2001 | Lee 1995 | Terzopoulos &
Waters 1990]
Có ba cách để mô hình hóa khuôn mặt. Thứ nhất là sử dụng các công cụ hỗ trợ
như AutoCad hay 3DMax. Đây là một công việc đòi hỏi rất nhiều công sức. Phương
pháp thứ hai là sử dụng một số bức ảnh của nhân vật ở các tư thế khác nhau, sau đó
chọn ra các điểm đặc trưng trên bức ảnh để tìm ra mối liên hệ giữa các bức ảnh và mô
hình 3D. Phương pháp cuối cùng sử dụng một máy scan laser để scan khuôn mặt của
người thật và sử dụng kết quả đó để xây dựng nên khuôn mặt. Đây là phương pháp
hiệu quả nhất khi xét về độ chân thực của mô hình khuôn mặt.
2.2.3.Mô hnh hóa chuyển động

- 6 -

Như đã nói trong phần trước, khuôn mặt được chuyển động bằng cách điều khiển
các đỉnh đa giác của lưới bề mặt hoặc các các điểm điều khiển. Có bốn cách để điều
khiển lưới bề mặt, bao gồm phương pháp dựa trên các hình đầu và cuối, phương pháp
tham số, phương pháp giả cơ và phương pháp mô hình hóa cơ mặt. Chúng tôi sẽ giới
thiệu qua về các phương pháp này cùng với những ưu nhược điểm của nó.
 Phƣơng pháp dựa trên các hnh đầu và cuối
Phương pháp dựa trên các hình đầu và cuối có thể hiểu là một chương trình có
sẵn hình đầu và hình cuối, phương pháp sẽ tạo ra chuyển động liên tục giữa hai hình.
Để thực hiện được, phương pháp sử dụng các hàm nội suy để sinh ra các hình nằm
giữa hình đầu và hình cuối. Các hình đầu và cuối trong trường hợp này có thể hiểu là
các trạng thái khác nhau của khuôn mặt.

Ưu điểm của phương pháp này là nó có thể tạo ra các chuyển động một cách dễ
dàng và nhanh chóng. Nhược điểm của nó là không thể tạo ra bất kỳ trạng thái nào của
khuôn mặt nằm ngoài các trạng thái thuộc tập các hình đầu và cuối.
 Phƣơng pháp tham số
Phương pháp tham số được đưa ra đầu tiên bởi [Parke 1974] để khắc phục một
số giới hạn của phương pháp dựa trên các hình đầu và cuối. Phương pháp này điều
khiển khuôn mặt bằng một số các tham số điều khiển. Các tham số này được gắn với
các vùng riêng biệt để tạo ra các biến dạng khu vực [Hoch 1994].
Khác với phương pháp dựa trên các hình đầu và cuối, phương pháp tham số cho
phép tạo ra thay đổi trên các vùng của khuôn mặt. Phương pháp này cung cấp một số
lượng lớn các trạng thái khuôn mặt mà không đòi hỏi tính toán phức tạp. Tuy nhiên,
phương pháp này cũng có một số giới hạn. Thứ nhất là việc lựa chọn tập các tham số
tham số phụ thuộc vào cấu trúc lưới của khuôn mặt, vì vậy các tham số không đủ tổng
quát để áp dụng cho các cấu trúc của khuôn mặt khác. Thứ hai là đến nay, người ta vẫn
chưa thể tạo ra một tập đầy đủ các tham số để sinh ra mọi chuyển động cho khuôn mặt.
Thứ ba là rất khó để phương pháp này có thể giải quyết được khi các tham số cùng tác
động lên một đỉnh. Vì các lý do đó, phương pháp này rất ít khi được sử dụng trên thực
tế.
 Phƣơng pháp giả cơ
Phương pháp này biến đổi lưới khuôn mặt bằng cách mô phỏng các chuyển
động của cơ mặt nhưng không quan tâm đến các chuyển động ở dưới của khuôn mặt.
Kỹ thuật này bao gồm phương pháp chuyển động cơ ảo [Magnenat-Thalmann 1988],
phương pháp biến dạng tự do [Kalra 1992 | Pasquariello & Pelachaud 2001]
Phương pháp giả cơ không cung cấp một mô phỏng chính xác các cơ mặt và các
biểu hiện trên da. Do không quan quan tâm đến những chuyển động dưới da mặt,
phương pháp này không tạo ra được những chỗ lồi lõm, các nếp nhăn trên khuôn mặt.
Phương pháp này cũng không chú ý lắm đến việc giải quyết các va chạm giữa các cơ.
 Phƣơng pháp mô hnh hóa cơ mặt
Dựa trên giải phẫu học, phương pháp mô hình hóa cơ mặt sử dụng mô hình đa
lớp của da và cơ để điều khiển lưới khuôn mặt. Phương pháp này đưa ra chuyển động


- 7 -

của các cơ với mục đích mô hình hóa biến dạng của da. Ở phần tới của chương này
chúng tôi sẽ giới thiệu qua về mô hình cơ của Waters [Waters 1987 | Parke & Waters
1996]. Đây là một mô hình cực kỳ thành công và đã được áp dụng rất phổ biến trên thế
giới
Phương pháp mô hình hóa cơ mặt đạt được mức độ chân thật nhất trong các
phương pháp, nhưng nó phải trả giá bằng sự phức tạp trong tính toán. Vì vậy phương
pháp này không được sử dụng rộng rãi trong các ứng dụng thời gian thực. Ngoài ra
phương pháp này cũng đòi hỏi con người phải điều chỉnh rất nhiều để tạo được một
khuôn mặt
2.2.4.Mô hnh cơ của Waters
Mô hình cơ mặt của Waters [Waters 1987 | Parke & Waters 1996] là một mô
hình rất thành công và được ứng dụng phổ biến [Smith 2006 | Choe 2001]. Waters chia
cơ mặt ra làm ba loại : cơ vector, cơ mảng và cơ vòng.
Các cơ vector của Waters chiếm số lượng nhiều nhất trong số các loại cơ. Cơ
vector có tác dụng kéo lớp da trên khuôn mặt theo một hướng nhất định. Mỗi cơ vector
tác động lên một vùng xác định trên khuôn mặt. Mô hình cơ vector được mô tả như
hình vẽ dưới đây


Hnh 3 : Mô hnh cơ vector của Waters

Cơ mảng chứa các thớ các cơ nằm song song với nhau trên vùng trán. Khi co lại,
lớp da trên khuôn mặt không chỉ bị ảnh hưởng bởi một mà bởi toàn bộ các thớ cơ của
cơ mảng. Đây là các cơ tạo ra các nếp nhăn trên trán. Mô hình cơ mảng của Waters
được biểu diễn như hình vẽ dưới đây



- 8 -


Hnh 4 : Mô hnh cơ mảng của Waters

Cơ vòng co lại quanh một điểm ảo có tác dụng kéo toàn bộ mặt phẳng xung
quanh nó. Ví dụ một số cơ vòng là cơ miệng, cơ mắt. Dưới đây là hình biểu diễn mô
hình cơ vòng của Waters.


Hnh 5 : Mô hnh cơ vòng của Waters

2.3.Hoạt hnh khuôn mặt 2D
2.3.1.Giới thiệu chung
Ở phần này, chúng tôi sẽ giới thiệu về hai phương pháp tạo hoạt hình khuôn
mặt 2D. Đó là phương pháp ghi lại video và phương pháp dựa trên kỹ thuật 3D. Sau

- 9 -

khi giới thiệu về mỗi phương pháp, chúng tôi đều đưa ra những nhận xét về ưu và
nhược điểm của từng phương pháp này.
2.3.2.Phƣơng pháp ghi lại video
2.3.2.1.Giới thiệu phƣơng pháp
Phương pháp này được giới thiệu bởi Christoph Bregler [Bregler 1997] và sau đó
được nhiều tác giả khác ứng dụng và phát triển [Ezzat 1998 | Yang 1999 | Chuang
2005 | Vlasic 2005].
Phương pháp ghi lại video sử dụng môt thước phim có sẵn để chương trình tự
động tạo ra một video mới. Trong video này, nhân vật trong thước phim ban đầu nói
những điều mà họ không hề nói trong đoạn video gốc. Kỹ thuật này đã được ứng dụng
trong phim ảnh và âm nhạc (ví dụ trong việc lồng tiếng).

Phương pháp ghi lại video tự động đánh dấu các âm vị trong dữ liệu huấn luyện
và đoạn audio mới được đưa vào. Sau đó phương pháp sắp xếp lại các hình vị sao cho
khớp với dãy âm vị của đoạn audio mới. Trong trường hợp một âm vị nào đó không có
một hình vị tương ứng, phương pháp chọn ra một xấp xỉ gần nhất. Cuối cùng, một dãy
các hình vị được ghép lại tạo nên một đoạn video mới.
Để tạo ra các chuyển động giữa các hình vị, phương pháp ghi lại video lấy ra
những điểm đặc trưng trên miệng của nhân vật. Sau đó, phương pháp sử dụng kỹ thuật
morphing để tạo ra chuyển động giữa các hình dáng của miệng. Cuối cùng phương
pháp kết hợp các dãy chuyển động này để tạo ra được video mới.
Hai bước cơ bản của phương pháp ghi lại video là : thu thập âm vị và hình vị;
tổng hợp video mới.
2.3.2.2.Thu thập âm vị và hnh vị
Phương pháp ghi lại video học từ thước phim mẫu cách khuôn mặt con người
thay đổi trong quá trình nói. Chương trình học được miệng của một người trông như
thế nào khi người đó nói chuyện bằng cách tạo ra một cơ sở dữ liệu.
Để lấy mẫu một người, phương pháp ghi lại video cần một tập các bức ảnh vẽ
tay. Đây là công việc duy nhất mà con người phải thực hiện trong cả quá trình thực
hiện. Tuy vậy, ngay cả quá trình này cũng có thể thay thế bằng cách sử dụng các mẫu
có sẵn đã được đưa ra trong [Kirby 1990, Covell 1996].
Phương pháp ghi lại video thu thập âm vị bằng cách áp dụng phương pháp ghép
nối tổng hợp tiếng nói của [Moulines 1990]. Phương pháp này phân tích một tập các
đoạn nói chuyện, chọn ra những âm vị mẫu và lấy trung bình các âm vị này. Sau đó,
phương pháp này tổng hợp đoạn audio mới bằng cách ghép nối những âm vị thích hợp.
Sau quá trình thay đổi âm vị cho phù hợp với cường độ và khoảng thời gian, kết quả
của đoạn audio mới khá là tự nhiên. Việc thu thập hình vị cũng làm tương tự.

- 10 -


Hnh 6 : Tổng quan của quá trnh thu thập âm vị và hnh vị


Hình 6 mô tả quá trình thu thập âm vị và hình vị. Phương pháp ghi lại video sử
dụng một đoạn audio để chia video ra thành các âm vị. Các kỹ thuật phân tích ảnh giúp
tìm ra hướng của đầu, hình dáng, vị trí của miệng và cằm để tìm ra các hình vị tương
ứng. Phương pháp ghi lại video chọn từ video mẫu các hình vị phù hợp để tổng hợp
một video mới khớp với bất kỳ đoạn audio nào.
2.3.2.3. Tổng hợp video mới
Ở bước này này, phương pháp tự động thu thập các dãy hình vị phù hợp với các
âm vị, trộn lẫn chúng bằng các kỹ thuật morphing. Kết quả là một video mới với môi
và cằm chuyện động phù hợp với đoạn audio mới được đưa vào.


Hnh 7 : Tổng quan của quá trnh tổng hợp video mới


- 11 -

Hình 7 là tổng quan của quá trình tổng hợp. Phương pháp ghi lại video tách đoạn
audio và sử dụng nó để lấy ra các âm vị. Dựa trên kết quả của bước thu thập, các bức
ảnh của miệng được lấy ra và morphing để tạo ra gương mặt chuyển động
2.3.2.4. Đánh giá phƣơng pháp
Phương pháp này cùng với những cải tiến về sau của nó cho ra những đoạn video
khá thật và tự nhiên. Tuy vậy phương pháp này cũng có một số nhược điểm : để nhân
vật có thể nói chuyện được, ảnh của mọi vị trí cần có của miệng cần phải có sẵn.
Ngoài ra, kết quả trả về bị cố định vào một tư thế phụ thuộc vào các bức ảnh được lấy
từ đoạn video gốc. Cuối cùng, việc morphing giữa các vị trí khác nhau của môi và
răng cũng là một công việc không hề dễ dàng.
2.3.3.Phƣơng pháp dựa trên kỹ thuật 3D
2.3.3.1.Giới thiệu phƣơng pháp
Phương pháp mà chúng tôi giới thiệu sau đây được đưa ra bởi Volker Blanz

[Blanz 2003].
Phương pháp này có thể áp dụng cho bất kỳ khuôn mặt nào trong một bức ảnh
hoặc một đoạn video. Kỹ thuật này không cần dữ liệu mẫu của miệng nhân vật. Bức
ảnh được tạo chuyển động cũng không bị giới hạn ở bất kỳ vị trí cố định nào. Phương
pháp này có thể tạo ra những chuyển động của đầu và cho phép nhân vật nói chuyện.
Để có thể làm được được như vậy, hệ thống tạo chuyển động miệng và các cảm xúc
khuôn mặt thông qua một chuyển động có sẵn của người khác.
Hệ thống dựa trên một biểu diễn chung của các khuôn mặt và cảm xúc khác
nhau trong một không gian vector. Không gian này được tính bằng cách scan nhiều
khuôn mặt trung lập và các cảm xúc khác nhau. Mô hình này được ứng dụng vào ảnh
thực và xử lý video bởi một thuật toán phân tích và tổng hợp : Hệ thống tự động tính
toán hình khối 3D và tất cả các thông số phù hợp (như tư thế nhân vật) từ một bức ảnh
duy nhất. Sau khi tạo ra các chuyển động mới cho miệng, khuôn mặt 3D được đưa trở
lại ảnh gốc.
2.3.3.2.Cách thức thực hiện
Phương pháp này dựa trên một không gian vector của các hình khối 3D và các bề
mặt. Các hình khối và bề mặt được tính từ tập dữ liệu gồm các mẫu scan các cảm xúc
và các khuôn mặt trung lập của khoảng vài trăm người. Trong không gian vector này,
cảm xúc có thể thay đổi liên tục. Một thuật toán khớp có tác dụng cực tiểu hóa sự khác
biệt giữa bức ảnh đầu vào và bức ảnh tổng hợp, cho phép tính ra được hình khối 3D từ
một bức ảnh hay một hình ảnh của video. Thuật có thể áp dụng cho cả các khuôn mặt
không ở trạng thái trung lập. Trong trường hợp đó, chương trình có thể tạo lại trạng
thái trung tập cho khuôn mặt. Để tạo ra những chuyển động mới, chương trình áp dụng
các thay đổi trong không gian 3D, sau đó đưa nó trở lại vào bức ảnh gốc (hoặc đoạn
video).
Không gian vector cho việc chuyển động miệng là mở rộng của phần tạo cảm
xúc khuôn mặt [Vetter 1998 | Blanz 1999]. Việc xây dựng nên không gian vector này
là rất khó khăn, đòi hỏi thêm nhiều kỹ thuật khác. Một số phương pháp đã dựng nên

- 12 -


được các không gian vector cho cảm xúc khuôn mặt [Kalberer 2001 | Pighin 2002 |
Reveret 2001]. Phương pháp này lấy các vector bằng cách scan các đỉnh của một lưới
có độ phân giải cao, lưới này chứa cả những nếp nhăn và các đặc điểm tinh vi, chi tiết.
Để tạo chuyển động cho khuôn mặt trên video, phương pháp lần theo chuyển
động của đầu, chuyển động của miệng và các cảm xúc khuôn mặt. Không dùng đến
các đặc trưng khuôn mặt hay những ràng buộc thị giác, phương pháp này cố gắng cực
tiểu hóa sự khác biệt giữa những bức ảnh trong một vòng lặp phân tích – tổng hợp
[Blanz 1999 | Pighin 2002 | Reveret 2001].


Hnh 8 : Cách thức thực hiện

Trong không gian vector của khuôn mặt, những biểu lộ cảm xúc được tính toán
thông qua sự khác biệt giữa hai scan của cùng một người (hàng đầu tiên). Sự khác biệt
này được áp dụng vào cho khuôn mặt 3D ở trạng thái bình thường. Để thay đổi cảm
xúc của Mona Lisa (hàng thứ 2), phương pháp tạo ra cấu trúc khuôn mặt Mona Lisa
(hàng thứ 3), thêm cảm xúc vào khuôn mặt và cuối cùng đưa khuôn mặt 3D đó vào
trong bức tranh (hàng thứ 2, bên phải)

- 13 -

2.3.3.3.Kết quả thực hiện
Dưới đây là một số kết quả thực hiện tạo chuyển động, nói chuyện cho khuôn
mặt. Chúng được áp dụng với một số bức tranh khá nổi tiếng trên thế giới. Các nhân
vật trong các bức tranh này có các tư thế rất khác nhau.


Hnh 9 : Một số kết quả


2.3.3.4.Đánh giá phƣơng pháp
Ưu điểm của phương pháp này là thật và linh hoạt. Phương pháp cũng chỉ sử
dụng rất ít dữ liệu từ nhân vật được tạo chuyển động (chỉ một bức ảnh hoặc một
video). Bức ảnh và video đó có thể xuất hiện ở các điều kiện ánh sáng và tư thế khác
nhau.

- 14 -

Nhược điểm của phương pháp này là toàn bộ tính toán của phương pháp là trên
3D. Cộng với việc phải xây dựng không gian vector cho khuôn mặt, phương pháp này
đòi hỏi những tính toán phức tạp.

2.4.Kết luận
Ở chương này, chúng tôi đã giới thiệu tổng quan về các kỹ thuật hoạt hình khuôn
mặt. Chúng tôi chia hoạt hình khuôn mặt ra làm hai loại là hoạt hình khuôn mặt 3D và
hoạt hình khuôn mặt 2D.
Để tạo được hoạt hình khuôn mặt 3D, có hai việc phải làm là mô hình hóa
khuôn mặt và mô hình hóa chuyển động. Ứng với mỗi việc này, người ta lại đề xuất ra
nhiều cách làm khác nhau. Mỗi cách làm đều có những ưu điểm và nhược điểm của
riêng nó.
Để giới thiệu về hoạt hình khuôn mặt 2D, chúng tôi đưa ra hai phương pháp nổi
tiếng hiện nay là phương pháp ghi lại video và phương pháp dựa trên kỹ thuật 3D.
Cách mà hai phương pháp này thực hiện là rất khác nhau. Xét một cách tổng thể,
phương pháp dựa trên kỹ thuật 3D trội hơn phương pháp ghi lại video ở nhiều mặt.
Nhưng nó lại đòi hỏi một khối lượng tính toán lớn.
Thật khó để có thể tìm ra một phương pháp hoàn hảo. Trong lĩnh vực đồ họa
máy tính nói chung và hoạt hình khuôn mặt nói riêng, sự chân thực và độ phức tạp
trong tính toán luôn có liên quan với nhau. Công việc của chúng ta là tăng độ chân
thực cho chuyển động và giảm độ phức tạp trong tính toán xuống mức nhỏ nhất có thể.

















- 15 -

Chƣơng 3
CÁC KỸ THUẬT BÓP MÉO ẢNH

3.1.Mở đầu
Bóp méo ảnh (image-warping) là một quá trình xử lý khiến cho một phần hay
toàn bộ bức ảnh bị biến đổi. Đây là kỹ thuật được ứng dụng nhiều trong việc chỉnh sửa
ảnh, tạo các hiệu ứng đặc biệt trong trò chơi điện tử, phim ảnh và hoạt hình.
Bóp méo ảnh có thể hiểu là một phép ánh xạ một số điểm trên một bức ảnh đến
vị trí khác mà không làm thay đổi tính chất của điểm (màu sắc, độ sáng tối…). Phép
ánh xạ này có đầu vào là (một phần) ảnh gốc và kết quả trả ra là (một phần) ảnh đích
đã bị biến đổi.
Kỹ thuật bóp méo ảnh bao gồm nhiều phép biến đổi ảnh. Từ những phép biến
đổi đơn giản như phép tịnh tiến, phép quay cho đến những phép biến đổi sử dụng

những hàm số phức tạp. Bóp méo còn bao gồm cả những phép biến đổi không sử dụng
đến hàm số và những phép biến đổi là sự kết hợp của một vài kỹ thuật khác nữa.
Trong chương này, chúng tôi cũng giới thiệu về kỹ thuật morphing, là một kỹ
thuật này khá gần gũi với bóp méo ảnh. Morphing là một kỹ thuật biến đổi ảnh tạo ra
chuyển động liên tục biến đổi từ bức ảnh này thành bức ảnh khác. Mặc dù chúng tôi
không dùng đến morphing trong chương trình của mình, nhưng khá nhiều cách tiếp
cận của các tác giả khác trong việc tạo ra chuyển động cho khuôn mặt có sử dụng đến
kỹ thuật này [Bregler 1997 | Ezzat 1998]. Cùng với việc giới thiệu về kỹ thuật của các
tác giả này, chúng tôi cũng muốn bạn đọc có một cái nhìn tổng quan về kỹ thuật
morphing.
Có nhiều cách để phân loại các kỹ thuật bóp méo ảnh tùy thuộc vào tiêu chí
đánh giá. Để có thể giới thiệu một cách chi tiết và dễ hiểu về kỹ thuật bóp méo ảnh,
chúng tôi phân loại và giới thiệu các kỹ thuật bóp méo ảnh theo hai cách sau :
Cách thứ nhất, phân loại kỹ thuật bóp méo ảnh theo phương pháp biến đổi, bao
gồm ba loại :
 Ảnh bị bóp méo thông qua việc sử dụng hàm số
 Ảnh bị bóp méo bằng cách chia thành các đa giác khác nhau, mỗi đa giác
lại bị bóp méo theo một cách riêng biệt
 Ảnh bị bóp méo để dùng cho kỹ thuật morphing
Cách thứ hai là phân loại kỹ thuật bóp méo ảnh theo cách tạo ra ảnh đích, bao
gồm hai loại :
 Bóp méo xuôi : ảnh đích được tạo ra bằng cách ánh xạ trực tiếp từ ảnh
gốc đến ảnh đích
 Bóp méo ngược : ảnh đích được tạo ra bằng cách ánh xạ từ ảnh đích đến
ảnh gốc

×