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

Nghiên cứu, thử nghiệm phương pháp nhận dạng biểu cảm khuôn mặt sử dụng xấp xỉ đa thức

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 (1.69 MB, 59 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
-----------------------------------

LÊ THÁI LINH

NGHIÊN CỨU, THỬ NGHIỆM PHƢƠNG PHÁP NHẬN DẠNG
BIỂU CẢM KHUÔN MẶT SỬ DỤNG XẤP XỈ ĐA THỨC

Chuyên ngành: Công Nghệ Thông Tin

LUẬN VĂN THẠC SĨ KỸ THUẬT
CÔNG NGHỆ THÔNG TIN

NGƢỜI HƢỚNG DẪN KHOA HỌC:
PGS.TS. Nguyễn Linh Giang

HÀ NỘI - 2016


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc

BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ

Họ và tên tác giả luận văn : Lê Thái Linh
Đề tài luận văn: Nghiên cứu, thử nghiệm phương pháp nhận dạng biểu cảm sử
dụng xấp xỉ đa thức
Chuyên ngành: Công nghệ thông tin
Mã số SV: CB130425
Tác giả, Người hướng dẫn khoa học và Hội đồng chấm luận văn xác


nhận tác giả đã sửa chữa, bổ sung luận văn theo biên bản họp Hội đồng ngày
23/04/2016 với các nội dung sau:
 Trình bày lại môi trường và công cụ thử nghiệm
 Trình bày lại kịch bản nhận dạng biểu cảm
Ngày 23 tháng 04 năm 2016
Giáo viên hƣớng dẫn

Tác giả luận văn

CHỦ TỊCH HỘI ĐỒNG

1


LỜI CAM ĐOAN

Tác giả luận văn xin cam đoan đây là công trình nghiên cứu của riêng tác giả luận
văn đúc kết từ quá trình nghiên cứu từ việc tập hợp các nguồn tài liệu, các kiến thức
đã học đến việc tự thu thập các thông tin liên quan và liên hệ thực tế tại đơn vị công
tác. Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công
bố trong bất kỳ công trình nào khác.
Tác giả luận văn xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận
văn này đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ
nguồn gốc.
Tác giả luận văn xin chịu trách nhiệm v nghiên cứu của mình.

Học viên thực hiện luận văn

Lê Thái Linh


2


LỜI CẢM ƠN

Trước tiên, tác giả luận văn xin được gửi lời cảm ơn đến tất cả quý thầy cô
đã giảng dạy trong chương trình đào tạo thạc s , Viện Công Nghệ Thông Tin và
Truy n Thông,

ại học ách Khoa Hà Nội, những người đã truy n đạt cho tác giả

những kiến thức hữu ích v đánh giá hiệu năng hệ thống làm cơ sở cho tác giả thực
hiện tốt luận văn này.
Với lòng kính trọng và biết ơn, tác giả luận văn xin được bày tỏ lời cảm ơn
tới PGS.TS. Nguyễn Linh Giang đã khuyến khích, tận tình hướng dẫn trong thời
gian thực hiện luận văn. Mặc dù trong quá trình thực hiện luận văn có giai đoạn
không được thuận lợi nhưng những gì thầy đã hướng dẫn, chỉ bảo đã cho tác giả
luận văn nhi u kinh nghiệm trong thời gian thực hiện đ tài.
Sau cùng tác giả luận văn xin gửi lời biết ơn sâu sắc đến gia đình đã luôn tạo
đi u kiện tốt nhất cho tác giả luận văn trong suốt quá trình học cũng như thực hiện
luận văn. Do thời gian có hạn và kinh nghiệm nghiên cứu khoa học chưa nhi u nên
luận văn còn nhi u thiếu, rất mong nhận được ý kiến góp ý của Thầy/Cô và các bạn
học viên.

Học viên thực hiện luận văn

Lê Thái Linh

3



DANH MỤC CÁC CHỮ VIẾT TẮT
Chữ viết tắt

Diễn giải nội dung

ANN

Artificial Neural Network

MLP

Mạng nhi u tầng truy n thẳng MLP

4


DANH MỤC CÁC BẢNG
Bảng 2-1: Một số hàm truy n thông dụng ................................................................23
Bảng 3-1. Bảng thống kê kết quả thực nghiệm trên ảnh tĩnh, đối tượng là người
Châu Á.......................................................................................................................53
Bảng 3-2. Bảng thống kê kết quả thực nghiệm trên ảnh động ..................................54

5


DANH MỤC HÌNH VẼ
Hình 1-1: Thành phần kiến trúc chính của một hệ thống nhận dạng ........................11
Hình 2-1. ặc trưng Haar-like ..................................................................................16
Hình 2-2. Cách tính Integral Image...........................................................................17

Hình 2-3..Mô hình phân tần kết hợp các bộ phân loại yếu để xác định khuôn mặt..18
Hình 2-4. Kết hợp các bộ phân loại yếu thành bộ phân loại mạnh ...........................19
Hình 2-5. Ví dụ v tỉ lệ khuôn mặt............................................................................19
Hình 2-6. Ví dụ v đường cong Bézier .....................................................................20
Hình 2-7. Cấu trúc của một nơron sinh học điển hình ..............................................21
Hình 2-8. Nơron nhân tạo .........................................................................................22
Hình 2-9: Mạng tự kết hợp ........................................................................................25
Hình 2-10. Mạng kết hợp khác kiểu..........................................................................25
Hình 2-11. Mạng truy n thẳng ..................................................................................26
Hình 2-12. Mạng phản hồi ........................................................................................26
Hình 2-13. Perceptron ...............................................................................................27
Hình 2-14. Mạng MLP tổng quát ..............................................................................28
Hình 2-15. Lan truy n ngược ....................................................................................32
Hình 2-16. Minh họa việc tính δj cho việc tính nút ẩn j ............................................35
Hình 3-1. Mô hình thực nghiệm đ xuất ...................................................................37
Hình 3-2. Khuôn mặt sau khi được phân vùng .........................................................39
Hình 3-3. Khuôn mặt sau khi được phân vùng .........................................................40
Hình 3-4. Dữ liệu ảnh huấn luyện – JAFFE Database ..............................................48
Hình 3-5. Dữ liệu ảnh huấn luyện – Cohn Kanade Database ...................................49
Hình 3-6. Dữ liệu ảnh huấn luyện – FEI Database ..................................................49
Hình 3-7. Kiến trúc OpenCV ....................................................................................51

6


MỤC LỤC
LỜI CAM ĐOAN ...................................................................................................... 1
LỜI CẢM ƠN ............................................................................................................ 3
DANH MỤC CÁC CHỮ VIẾT TẮT....................................................................... 4
DANH MỤC CÁC BẢNG ........................................................................................ 5

DANH MỤC HÌNH VẼ ............................................................................................ 6
MỤC LỤC .................................................................................................................. 7
MỞ ĐẦU .................................................................................................................... 9
CHƢƠNG 1 - TỔNG QUAN BÀI TOÁN NHẬN DẠNG BIỂU CẢM .............. 10
1.1.

Biểu cảm của gƣơng mặt ............................................................................. 10

1.2.

Các thành phần chính của hệ thống nhận dạng biểu cảm ....................... 11

1.3.

Những khó khăn trong bài toán nhận dạng biểu cảm .............................. 13

1.3.

Các nghiên cứu liên quan ............................................................................ 14

1.4.

Định hƣớng giải pháp của tác giả ............................................................... 15

CHƢƠNG 2 - CƠ SỞ LÝ THUYẾT...................................................................... 16
2.1.

Đặc trƣng “Haar-like” ................................................................................. 16

2.2.


Bộ phân loại Adaboost ................................................................................. 17

2.3.

Đặc trƣng hình học của khuôn mặt ............................................................ 19

2.4.

Đƣờng cong Bezier ....................................................................................... 19

2.5.

Mạng nơ-ron ................................................................................................. 20

2.5.1. Định nghĩa mạng nơ-ron ............................................................................. 20
2.5.2. Nơ-ron sinh học và nơ-ron nhân tạo .......................................................... 21
2.5.3. Mô hình mạng nơ-ron .................................................................................. 24
2.5.4. Mạng nhiều tầng truyền thẳng MLP .......................................................... 27
2.5.5. Huấn luyện mạng nơ-ron............................................................................. 29
CHƢƠNG 3 - THỰC NGHIÊM VÀ KẾT QUẢ .................................................. 37
3.1.

Kịch bản nhận dạng biểu cảm .................................................................... 38

3.2.

Phát hiện khuôn mặt và vùng chứa mắt và môi ........................................ 38

7



3.3.

Áp dụng thành phần liên thông vào bài toán ............................................ 39

3.4.

Tìm các điểm kiểm soát trên vùng mắt, môi ............................................. 45

3.5.

Kiến trúc mạng nơ-ron ứng dụng vào bài toán ......................................... 45

3.6.

Dữ liệu huấn luyện ....................................................................................... 47

3.7.

Các độ đo trong việc đánh giá ..................................................................... 49

3.8.

Môi trƣờng và công cụ thực nghiệm .......................................................... 49

3.8.1. Môi trƣờng phát triển – Microsoft Visual Studio ..................................... 50
3.8.2. Tổng quan OpenCV, EmguCV ................................................................... 51
3.8.3. Giới thiệu việc cài đặt một số module cụ thể trong hệ thống ................... 52
3.9.


Kết quả thực nghiệm.................................................................................... 53

3.9.1. Ảnh tĩnh ......................................................................................................... 53
3.9.2. Ảnh từ camera máy tính .............................................................................. 54
KẾT LUẬN .............................................................................................................. 56
1. Kết quả đạt đƣợc trong luận văn ....................................................................... 56
2. Các vấn đề tồn tại trong luận văn ...................................................................... 56
3. Hƣớng phát triển luận văn ................................................................................. 56
TÀI LIỆU THAM KHẢO ...................................................................................... 57

8


MỞ ĐẦU

iểu cảm trên gương mặt đóng một vai trò vô cùng quan trọng trong mối liên
kết giữa con người với xã hội bởi những thông điệp không phải ngôn từ nào cũng có
thể diễn tả trọn vẹn được. Chính vì vậy, tự động nhận dạng biểu cảm gương mặt
cũng đóng góp một bước tiến quan trọng trong tương tác người máy; không chỉ
trong khoa học nghiên cứu hành vi mà còn trong cả lĩnh vực chẩn đoán lâm sàng,
bảo vệ sức khỏe con người. Tuy nhiên, việc xử lý khối lượng tính toán lớn trên
nhi u thiết bị khác nhau vẫn luôn là một bài toán nan giải trong việc tối ưu hiệu
năng.
Xuất phát từ thực tế đó người làm luận văn đã chọn đ tài "Nhận dạng biểu
cảm gương mặt sử dụng xấp xỉ đa thức" trên cở sở lý thuyết v đường cong ezier
và mạng nơ-ron. Thay vì tính toán và nhận dạng trên toàn bộ gương mặt, đường
cong ezier sẽ làm tăng hiệu năng tính toán thông qua việc trích chọn số lượng ít
các điểm trên gương mặt, và sử dụng các điểm này làm đầu vào cho mạng nơ-ron.
Với mục tiêu đặt ra như vậy, những nội dung, kết quả nghiên cứu chính của

luận văn được trình bày trong ba chương như sau:
- Chương 1. Tổng quan bài toán nhận dạng biểu cảm
- Chương 2. Cơ sở lý thuyết
- Chương 3. Thực nghiệm và kết quả
- Kết luận

9


CHƢƠNG 1 - TỔNG QUAN BÀI TOÁN NHẬN DẠNG BIỂU CẢM
Nội dung của chương này sẽ trình bày các vấn đề sau:
o Định nghĩa bài toán nhận dạng biểu cảm
o Các thành phần chính của bài toán nhận dạng biểu cảm
o Những thách thức trong bài toán nhận dạng biểu cảm
o Nghiên cứu liên quan
o Định hướng giải pháp của tác giả

1.1. Biểu cảm của gƣơng mặt
Gương mặt là một trong những kênh truy n thông phi ngôn ngữ quan trọng nhất.
Cử chỉ biểu hiện trên khuôn mặt được nghiên cứu trên hầu hết các khía cạnh của
cảm xúc. iểu cảm trên khuôn mặt có thể có những thông tin không h diễn đạt cảm
xúc như: truy n đạt một ý định, giao tiếp văn hóa cụ thể thông qua những tín hiệu
(như nháy mắt) và là biểu hiện của tình trạng bệnh lý nhất định như đau đớn, trầm
cảm. Nên không có gì ngạc nhiên, khi có rất nhi u nhà nghiên cứu quan tâm tới các
công cụ để nhận biết những cách biểu đạt và giao tiếp thông qua cử chỉ trên gương
mặt này trong suốt nhi u thế kỉ qua.
iểu cảm của cảm xúc trên gương mặt là chủ đ nghiên cứu khoa học trong suốt
hơn 150 năm qua. Nghiên cứu này bắt đầu từ thế kỉ 19 bởi các nhà thần kinh học
của Pháp Duchenne de oulogne. Duchenne đã cố gắng xác định những tập cơ cụ
thể đại diện cho những cảm xúc cụ thể như là sự phản ánh của các cơ và sự kết hợp

của các khối cơ này. Nghiên cứu này của ông ấy đại diện cho một bước ngoặt trong
văn bản khoa học – là lần đầu tiên mà nhiếp ảnh được minh họa cho một loạt các thí
nghiệm.
iểu cảm trên gương mặt là một biểu hiện có thể nhìn thấy trạng thái tình cảm, hoạt
động nhận thức, ý định, tính cách và tâm lý của một người, nó đóng một vai trò giao
tiếp trong quan hệ giữa các cá nhân. iểu cảm của gương mặt và các cử chỉ khác,
truy n tải những tín hiệu giao tiếp phi ngôn ngữ trong khi tương tác mặt đối mặt.
Những tín hiệu này cũng bổ sung ngôn ngữ giúp người nghe liên tưởng ra ý nghĩa
mà người nói hướng tới. Mehrabian đã đưa ra nhận định rằng, biểu cảm của gương
mặt có một tác động to lớn đối với người nghe, biểu cảm trên gương mặt người nói
ảnh hưởng tới 55 %.
Từ hệ quả đó, biểu cảm trên gương mặt đóng một vai trò vô cùng quan trọng trong
lĩnh vực tương tác người máy. Từ quan điểm nhận dạng tự động, biểu cảm trên
gương mặt có thể được xem như sự biến dạng của các thành phần trên khuôn mặt và

10


mối quan hệ không gian hay những sự thay đổi các sắc tố trên khuôn mặt. Nghiên
cứu sự nhận dạng tự động các biểu cảm trên gương mặt đặt ra vấn đ xung quanh
việc đại diện hay phân loại tĩnh hoặc các đặc tĩnh động của những sự biến dạng đó
hay sắc tố của gương mặt.
1.2. Các thành phần chính của hệ thống nhận dạng biểu cảm
Các hệ thống tự động nhận dạng biểu cảm trên gương mặt thường có dạng là một
chuỗi các khối xử lý, tuân thủ theo một mô hình nhận dạng mẫu kinh điển. Các khối
chính thường là: image acquisition, pre-processing, feature extraction, classification
và post processing [14]

Hình 1-1: Thành phần kiến trúc chính của một hệ thống nhận dạng
ối với sự kết nối giữa các khối trong hình 1, đường dẫn phản hồi giữa các khối

hầu hết đ u vắng mặt, mặc dù sự phản hồi có thể cải thiện độ chính xác cho việc
nhận dạng. Căn cứ trên mức độ không gian của các thành phần trên mặt mà việc
trích rút đặc trưng và phân lớp con được áp dụng, nhận dạng biểu cảm có thể được
phân thành nhận dạng từng phần hoặc toàn diện. Nhận dạng từng phần là sự đồng
nhất của trích rút đặc trưng hay phân lớp kết hợp với từng đơn vị trên mặt. Nhận
dạng toàn phần là cả khuôn mặt sẽ cung cấp một đầu vào duy nhất cho hệ thống
nhận dạng.
 Image Acquisition: Ảnh được sử dụng để nhận dạng là ảnh tĩnh hoặc chuỗi
ảnh. Một chuỗi ảnh thường chứa nhi u thông tin ti m năng hơn một ảnh. Tương
ứng với không gian, màu sắc và chi u tạm thời của ảnh đầu vào, chuỗi ảnh đơn
sắc 2-D(gray scale) là loại ảnh phổ biến nhất trong việc nhận dạng tự động.
 Pre-processing: Ti n xử lý ảnh thường sẽ làm mất đi những tín hiệu đi u kiện
như bỏ nhiễu, chuẩn hóa lại các biến thể đối với vị trí điểm ảnh và độ sáng, cùng
với việc phân đoạn, định vị hay theo dõi gương mặt và các phần trên gương mặt.

11


ể chống lại những biến đổi không mong muốn, ảnh gương mặt có thể được
chuẩn hóa hình học trước để phân loại. Việc chuẩn hóa này dựa trên các phần
tham chiếu như mắt hay mũi. Phân đoạn mặt thường liên quan tới hình dạng,
chuyển động, màu sắc, kết cấu và cấu hình không gian của gương mặt hay các
thành phần của gương mặt[3]. Quá trình định vị gương mặt liên quan tới vị trí và
không gian mở rộng của gương mặt trên ảnh; thường dựa trên các kết quả phân
đoạn. Vô số các kĩ thuật phát hiện gương mặt khác nhau đã được phát triển[3].
Tuy nhiên, để phát hiện được mặt và các thành phần của gương mặt hoàn toàn
chính xác là khó mà đạt được trong thế giới thực. Việc theo dõi thường được
thực hiện dựa trên việc định vị gương mặt hay các phần của gương mặt, trong
chuỗi ảnh tại đó vị trí kết thúc trước đó thường được dùng để ước tính vị trí
trong các chuỗi frame ảnh con

 Feature Extraction: trích rút đặc trưng chuyển dữ liệu pixel sang đại diện mức
cao với hình dạng, chuyển động, màu sắc, kết cấu và cấu hình không gian của
gương mặt và các thành phần của gương mặt. Phần trích rút được sử dụng cho
các phân lớp biểu cảm. Trích rút đặc trưng làm giảm số chi u của không gian
đầu vào. Thủ tục này giữ lại các thông tin quan trọng có tính phân biệt và sự ổn
định cao. Hình học, động học và các đặc tính dựa trên biến đổi phổ hay thống kê
thương được sử dụng như là đại diện thay thế ưu tiên trong việc phân loại gương
mặt.
 Classification: phân loại biểu cảm bao gồm mô hình của các mẫu phân phối,
liên kết chặt chẽ với thủ tục ra quyết định. Rất nhi u k thuật từ có tham số đến
không có tham số đã được áp dụng trong bài toán nhận dạng tự động. Có sáu
loại biểu cảm liên quan đến trạng thái cảm xúc là vui, buồn, ngạc nhiên, tức
giận, sợ sệt và chán ghét [4]. Tuy nhiên, cho tới thời điểm này, độ phức tạp và ý
nghĩa của các biểu cảm đã nhi u hơn sáu loại [5]. Hơn thế nữa, mặc dù nhi u hệ
thống nhận dạng biểu cảm thực nghiệm sử dụng các biểu cảm nguyên mẫu làm
đầu ra, thì những biểu cảm như vậy cũng không xảy ra thường xuyên và có
những thay đổi trong một hay nhi u phần của khuôn mặt rời rạc trong việc đưa
ra cảm xúc và định hướng.
 Post – processing: xử lý sau nhằm cải thiện độ chính xác trong việc nhận
dạng, nhờ khai thác mi n kiến thức để sửa các lỗi phân loại, hoặc ghép nối một
số tầng khi kế thừa phân loại

12


1.3. Những khó khăn trong bài toán nhận dạng biểu cảm
ể máy móc nhận dạng biểu cảm gương mặt mà không có độ trễ, đáng tin cậy vẫn
còn là một thách thức. Những vấn đ này luôn là mối quan tâm hàng đầu của cộng
đồng nhận dạng “pattern”. Thách thức chủ yếu chính là phải làm tốt được các khâu:
tối ưu ti n xử lý, trích rút đặc trưng hoặc lựa chọn đặc trưng, và phân loại với nhi u

loại dữ liệu khác nhau. ể có thể thực hiện nhận dạng thành công, hầu hết các
phương pháp nhận dạng biểu cảm đ u đòi hỏi một số quy n kiểm soát đi u kiện
ảnh. Những đi u kiện ảnh bị kiểm soát phần lớn là các đi u kiện sau đây:
 Góc nhìn hay tư thế của phần đầu. Mặc dù khó khăn thường là do vị trí hay
hướng của phần đầu liên quan tới camera, và cách thiết lập mức zoom, nên có
một số kĩ thuật xử lý đã được phát triển để có thể dịch chuyển, mở rộng phạm vi
và xoay mặt cắt của phần đầu. ể xoay chuyển mặt phẳng có hiệu quả là việc
không dễ dàng, bởi việc này dẫn tới sự biến thiên độ rộng của góc nhìn của ảnh.
Những nghiên cứu sâu hơn cần những biểu thức nhận dạng biến đổi bất biến
 Cường độ sáng và độ phức tạp của môi trường. ức ảnh có phần n n phức tạp,
ánh sáng không được kiểm soát, có sự rung động có khả năng cao dẫn tới việc
nhận dạng sai. Những yếu tố này thường làm cho kết quả phân vùng ảnh có thể
trở nên thiếu tin cây hơn. Do đó, những yếu tố này thường gây ra việc lan truy n
sai trong quá trình trích rút thông tin đặc trưng của ảnh, đưa ra những thông tin
không liên quan tới biểu cảm của gương mặt. Từ đó, rất nhi u nhà nghiên cứu đã
tìm cách loại bỏ phần n n và kiểm soát cường độ ánh sáng, mặc dù đi u này
không thể phù hợp với tất cả các ứng dụng nhận dạng biểu cảm hiện nay.
 Có rất nhi u yếu tố dẫn đến sự thay đổi hình thái của một khuôn mặt. Các đặc
trưng trên khuôn mặt thể hiện nhi u cấp độ thay đổi khác nhau của nhi u yếu tố
như: sự khác biệt giữa con người (độ tuổi, bệnh tật, giới tính, chủng tộc… ), sự
phát triển hay râu, tóc, trang điểm, sự pha trộn của nhi u sắc thái gương mặt.
 Việc kiểm soát đi u kiện ảnh ảnh hưởng nghiêm trọng tới việc triển khai rộng
rãi các hệ thống nhận dạng biểu cảm bởi rất nhi u ứng dụng trong thế giới thực
đòi hỏi sự linh hoạt trong việc thao tác. Vì vậy các nhà nghiên cứu đã đầu tư
mạnh vào việc nhận dạng một cách tự động ngay cả trong những đi u kiện bất
lợi. Cụ thể là, nghiên cứu những hệ thống nhận dạng tự động có khả năng thích
nghi, nâng cao kiến thức theo thời gian.
 Cảm xúc cũng có nhi u đặc tính âm thanh. Mặc dù sự kết hợp giữa âm hưởng
và các đặc trưng nhìn thấy được hứa hẹn sự cải thiện v độ chính xác trong nhận
dạng, nhưng việc phát triển các kĩ thuật này một cách có hiệu quả vẫn còn là

một thách thức được đặt ra

13


1.3. Các nghiên cứu liên quan
iểu cảm trên gương mặt được nghiên cứu trên nhi u lĩnh vực khác nhau như: bảo
mật và giám sát trực quan với các ứng dụng như tự đông nhận dạng thái độ buồn
chán, thiếu tập trung và căng thẳng trong những trường hợp rất cần sự tập trung cao
độ, lái xe an toàn với hệ thống tự động phát hiện tình trạng mệt mỏi của người lái xe
làm giảm khả năng đ phòng rủi ro của người lái xe, đồng thời hệ thống còn hỗ trợ
đưa ra những biện pháp phù hợp để phòng tránh tai nạn[1], Chẩn đoán y học với
khả năng phát các biểu hiện tâm lý thông qua biểu cảm trên gương mặt [2], Các
nghiên cứu liên quan đến trạng thái cảm xúc như khoa học hành vi, tâm thần học,
thần kinh học: nhằm cải tiến việc xử lý dữ liệu trạng thái cảm xúc hiệu quả hơn, độ
chính xác cao hơn[3], Giáo dục: các hệ thống giảng dạy có thể nhận dạng cảm xúc
và trạng thái tiếp thu của học sinh.
Có rất nhi u phương pháp đã được sử dụng trước đây để phân loại biểu cảm gương
mặt như mạng nơ-ron nhân tạo cho toàn bộ bức ảnh, “ ayesian Networks”,
“Support Vector machines”, “PCA”. Năm 2004, Ma và Khorasani đã đ xuất một
hệ thống nhận dạng biểu cảm gương mặt sử dụng mạng nơ-ron truy n thẳng với độ
chính xác là 93.75 % [4]. Cohen et al. [5] đ xuất một bộ phân loại sử dụng thuật
toán tìm kiếm cấu trúc ngẫu nhiên áp dụng trong mạng ayesian để nhận dạng biểu
cảm gương mặt cho cả dữ liệu chưa được gán nhãn và đã được gán nhãn với độ
chính xác cao nhất là 83.62%. Essa và Pentland[6] đã tạo ra một “face space” để
thực hiện PCA(Principal Component Analysis) bởi các eigenfaces từ 128 ảnh các
gương mặt. Phân tích đặc trưng hình học gương mặt đang ngày càng được sử dụng
rộng rãi trong việc đại diện một gương mặt. Khan và huiyan [7] cũng đã thực hiện
1 hệ thống nhận dạng gương mặt sử dụng k thuật đường cong xấp xỉ


ezier.



phát hiện gương mặt, họ sử dụng phân vùng màu da và trích rút đặc trưng gương
mặt sử dụng đặc trưng hình học của khuôn mặt và đường cong ezier thể hiện đặc
trưng chuyển động và sự thay đổi trong biểu cảm, tuy nhiên trong bước phân loại họ
chỉ sử dụng khoảng cách Euclide. Viola và Jones xây dựng 1 hệ thống phát hiện
gương mặt khá nhanh sử dụng các đặc trưng hình chữ nhật được huấn luyện bởi

14


thuật toán “Ada oost” [8]. Wang et al. áp dụng phương pháp này trong bài toán
nhận dạng biểu cảm và phân biệt 7 dạng biểu cảm theo thời gian thực [9].
Ngoài phương pháp của Khan và

huiyan, hầu hết các phương pháp ở trên

đ u xem xét toàn bộ ảnh khuôn mặt như là một “single pattern” cho bước phân loại,
làm độ lớn của không gian đặc trưng cao hơn đáng kể so với việc sử dụng đường
cong

ezier để lấy xấp xỉ các đường nét trên khuôn mặt. Tuy nhiên việc sử dụng

phân vùng da mặt trong phương pháp của Khan và huiyan không có độ chính xác
và thời gian phát hiện tốt bằng các phương pháp trước, do chỉ sử dụng không gian
màu YcbCr.

1.4. Định hƣớng giải pháp của tác giả

Trong luận văn này, người làm luận văn trình bày các kĩ thuật được sử dụng
trong 3 giai đoạn: phát hiện khuôn mặt, trích rút đặc trưng và phân loại biểu cảm.
Tác giả sử dụng các đặc trưng “Haar-like” và bộ phân loại mạnh Adaboost trong
việc phát hiện khuôn mặt, phân tách các vùng mắt và môi. Tuy nhiên, để tăng độ
chính xác trong việc phân vùng các thành phần mắt và môi, tác giả sử dụng thêm
các kiến thức v đặc trưng hình học của khuôn mặt, cụ thể là phương pháp “goldenratio”.

ể trích rút các đặc trưng trên vùng mắt và môi, người làm luận văn tiến

hành phân tích các đường nét trên gương mặt thông qua các điểm trên vi n mắt và
vi n môi thông qua bằng các kĩ thuật như: ảnh nhị phân, tìm thành phần liên thông
và xấp xỉ các đường nét này bằng một đường cong xấp xỉ là đường cong ezier. Tại
bước phân loại biểu cảm, người làm luận văn sử dụng mạng nơ-ron lan truy n
ngược để học các đặc trưng trên khuôn mặt và đưa ra kết quả nhận dạng biểu cảm.
Việc áp dụng đường cong ezier không chỉ làm giảm chi phí trong việc hình thành
mạng huấn luyện nơ-ron lan truy n ngược, mà còn giảm chi phí trong quá trình
nhận dạng biểu cảm với đầu vào là gương mặt bất kì.

15


CHƢƠNG 2 - CƠ SỞ LÝ THUYẾT

Nội dung của chương này sẽ trình bày các vấn đề sau:
o Đặc trưng Haar-like
o Bộ phân loại Adaboost
o Đặc trưng hình học của khuôn mặt
o Đường cong Bezier
o Mạng nơ-ron


2.1. Đặc trƣng “Haar-like”
ặc trưng “Haar-like” được thể hiện trong hình sau:

Hình 2-1. ặc trưng Haar-like
Ta có thể tính được giá trị của đặc trưng Haar-like là sự chênh lệch giữa tổng
của các pixel của các vùng đen và các vùng trắng như trong công thức sau:
f(x) = Tổngvùng đen(các mức xám của pixel) - Tổngvùng trắng(các mức xám
của pixel) [8]
Sử dụng giá trị này, so sánh với các giá trị của các giá trị pixel thô, các đặc trưng
Haar-like có thể tăng/giảm sự thay đổi in-class/out-of-class (bên trong hay bên
ngoài lớp khuôn mặt người), do đó sẽ làm cho việc phân loại trở nên dễ dàng
hơn.
Như vậy ta có thể thấy rằng, để tính các giá trị của đặc trưng Haar-like, ta phải
tính tổng của các vùng pixel trên ảnh. Nhưng để tính toán các giá trị của các đặc
trưng Haar-like cho tất cả các vị trí trên ảnh đòi hỏi chi phí tính toán khá lớn,
không đáp ứng được cho các ứng dụng đòi hỏi tính run-time. Do đó Viola và
Jones đưa ra một khái niệm gọi là Integral Image, là một mảng 2 chi u với kích

16


thước bằng với kích của ảnh cần tính các đặc trưng Haar-like, với mỗi phần tử
của mảng này được tính bằng cách tính tổng của điểm ảnh phía trên (dòng-1) và
bên trái (cột-1) của nó. ắt đầu từ vị trí trên, bên trái đến vị trí dưới, phải của
ảnh, việc tính toán này đơn thuần chỉ đựa trên phép cộng số nguyên đơn giản, do
đó tốc độ thực hiện rất nhanh. [8]

Hình 2-2. Cách tính Integral Image

2.2. Bộ phân loại Adaboost

Ada oost là một bộ phân loại mạnh phi tuyến phức dựa trên hướng tiếp cận
boosting được Freund và Schapire đưa ra vào năm 1995. Adaboost cũng hoạt
động trên nguyên tắc kết hợp tuyến tính các bộ phân loại yếu để hình thành một
bộ phân loại mạnh.
Là một cải tiến của tiếp cận boosting, Ada oost sử dụng thêm khái niệm trọng
số (weight) để đánh dấu các mẫu khó nhận dạng. Trong quá trình huấn luyện, cứ
mỗi bộ phân loại yếu được xây dựng, thuật toán sẽ tiến hành cập nhật lại trọng
số để chuẩn bị cho việc xây dựng bộ phân loại yếu kế tiếp: tăng trọng số của các
mẫu bị nhận dạng sai và giảm trọng số của các mẫu được nhận dạng đúng bởi bộ
phân loại yếu vừa xây dựng. ằng cách này bộ phân loại yếu sau có thể tập
trung vào các mẫu mà các bộ phân loại yếu trước nó làm chưa tốt. Sau cùng, các
bộ phân loại yếu sẽ được kết hợp tùy theo mức độ tốt của chúng để tạo nên bộ
phân loại mạnh. [8]
Viola và Jones dùng Ada oost kết hợp các bộ phân loại yếu sử dụng các đặc
trưng Haar-like theo mô hình phân tầng (cascade) như sau:

17


Hình 2-3..Mô hình phân tần kết hợp các bộ phân loại yếu để xác định khuôn mặt
Trong đó, hk là các bộ phân loại yếu, được biểu diễn như sau:
hk =

[8]

x: cửa sổ con cần xét
Ok: ngưỡng (O = teta)
fk: giá trị của đặc trưng Haar-like
pk: hệ số quyết định chi u của phương trình
Ada oost sẽ kết hợp các bộ phân loại yếu thành bộ phân loại mạnh như sau:

H(x) = sign(a1h1(x) +a2h2(x) + ... + anhn(x)) (a = alpha)
Với: at >= 0 là hệ số chuẩn hoá cho các bộ phân loại yếu

18


Hình 2-4. Kết hợp các bộ phân loại yếu thành bộ phân loại mạnh

2.3. Đặc trƣng hình học của khuôn mặt
ặc trưng hình học trên gương mặt được sử dụng bao gồm [10]:
 Tỉ lệ khoảng cách từ điểm trên cùng của mặt tới 2 con ngươi so với khoảng cách
từ 2 con ngươi tới cằm là 2:4
 Tỉ lệ chi u dài của khuôn mặt so với khoảng cách từ điểm trên cùng của mặt tới
mũi = 1.618
 Tỉ lệ khoảng cách từ mũi tới cằm so với khoảng cách từ điểm trên cùng của mặt
tới mũi là 3:5
 Tỉ lệ khoảng cách từ môi tới cằm so với khoảng cách từ 2 con ngươi tới điểm
chính giữa môi là 6:7
 Tỉ lệ khoảng cách từ mũi tới cằm so với khoảng cách từ 2 con ngươi tới mũi là 8:9

Hình 2-5. Ví dụ v tỉ lệ khuôn mặt

2.4. Đƣờng cong Bezier
ường cong ézier là một trong những đường cong cơ bản, được sử dụng rộng rãi
trong đồ họa máy tính và xử lý ảnh. ường cong này được sử dụng chủ yếu trong
việc ngoại suy, tính xấp xỉ, làm mịn đường cong và biểu diễn đối tượng. ường
cong này được đặt theo tên Pierre ezier, một nhà toán học người Pháp và là 1 kĩ sư
phát triển các giải pháp đồ họa máy tính. ường cong ézier là đường cong thể
hiện hiệu quả nhất các góc cạnh trong 1 đa giác. Góc đầu tiên và góc cuối cùng của
đa giác tồn tại trên đường cong. Các góc khác góp phần xác định các tỉ lệ của đường

cong và hình dạng của đường cong cần được mô tả.
Ƣu điểm của đƣờng cong Bezier [12]
 ường cong Bezier có tính cục bộ: mỗi “control point” chỉ ảnh hưởng tới khu vực
lân cận điểm đó, làm giảm độ lan truy n sai số.
 Luôn đi qua điểm đầu và điểm cuối: đường cong Bezier dựa trên các điểm kiểm
soát p0, p1, .., pL không hoàn toàn đi qua hay nội suy từ tất cả các điểm kiểm soát
nhưng nó luôn luôn đi qua điểm đầu và điểm cuối
 Có tính bất biến: khi thực hiện phép biến đổi cho một đường cong Bezier ta không
cần phải biến đổi hết các điểm thuộc đường cong mà chỉ cần biến đổi các điểm

19


kiểm soát, sau đó tạo lại đường cong Bezier dựa trên tập các điểm kiểm soát mới
này
 Tính chất bao lồi: vì các giá trị của các đa thức Bernstein không âm và có tổng là 1
nên mọi điểm của đường cong Bezier sẽ luôn nằm trong bao lồi của các điểm
kiểm soát. Mọi điểm của đường cong Bezier sẽ luôn nằm trong bao lồi của các
điểm kiểm soát

Hình 2-6. Ví dụ v đường cong ézier
Có thể sử dụng nhi u “control point” để mô tả đường cong ézier. Tuy nhiên, để
không làm tăng độ phức tạp tính toán không nên tăng kích thước số “control point”.
ồng thời, tăng bậc của đa thức cũng làm quá trình tính toán trở nên khó khăn hơn.
Do đó, chi tiết một đường cong có thể được cấu thành bởi nhi u đường cong bezier
liên tục có 4 điểm kiểm sóa. Vì lí do này, “cubic Bézier curve” đường sử dụng
nhi u hơn các đường cong ézier khác. ẳng thức cho “cubic ézier curve” như
sau:
[12]


2.5. Mạng nơ-ron
2.5.1. Định nghĩa mạng nơ-ron
Mạng nơron nhân tạo, Artificial Neural Network (ANN) gọi tắt là mạng nơron,
neural network, là một mô hình xử lý thông tin phỏng theo cách thức xử lý thông tin
của các hệ nơron sinh học. Nó được tạo nên từ một số lượng lớn các phần tử (gọi là
phần tử xử lý hay nơron) kết nối với nhau thông qua các liên kết (gọi là trọng số
liên kết) làm việc như một thể thống nhất để giải quyết một vấn đ cụ thể nào đó.

20


Một mạng nơron nhân tạo được cấu hình cho một ứng dụng cụ thể (nhận dạng mẫu,
phân loại dữ liệu, ...) thông qua một quá trình học từ tập các mẫu huấn luyện. V
bản chất học chính là quá trình hiệu chỉnh trọng số liên kết giữa các nơron [13]
2.5.2. Nơ-ron sinh học và nơ-ron nhân tạo
Nơ-ron sinh học[13]
Qua quá trình nghiên cứu v bộ não, người ta thấy rằng: bộ não con người
bao gồm khoảng 1011 nơron tham gia vào khoảng 1015 kết nối trên các đường
truy n. Mỗi đường truy n này dài khoảng hơn một mét. Các nơron có nhi u đặc
điểm chung với các tế bào khác trong cơ thể, ngoài ra chúng còn có những khả năng
mà các tế bào khác không có được, đó là khả năng nhận, xử lý và truy n các tín hiệu
điện hóa trên các đường mòn nơron, các con đường này tạo nên hệ thống giao tiếp
của bộ não.

Hình 2-7. Cấu trúc của một nơron sinh học điển hình
Mỗi nơron sinh học có 3 thành phần cơ bản:
• Các nhánh vào hình cây ( dendrites)
• Thân tế bào (cell body)
• Sợi trục ra (axon)
Các nhánh hình cây truy n tín hiệu vào đến thân tế bào. Thân tế bào tổng

hợp và xử lý cho tín hiệu đi ra. Sợi trục truy n tín hiệu ra từ thân tế bào này sang
nơron khác. iểm liên kết giữa sợi trục của nơron này với nhánh hình cây của

21


nơron khác gọi là synapse. Liên kết giữa các nơron và độ nhạy của mỗi synapse
được xác định bởi quá trình hóa học phức tạp. Một số cấu trúc của nơron được xác
định trước lúc sinh ra. Một số cấu trúc được phát triển thông qua quá trình học.
Trong cuộc đời cá thể, một số liên kết mới được hình thành, một số khác bị hủy bỏ.
Như vậy nơron sinh học hoạt động theo cách thức sau: nhận tín hiệu đầu vào,
xử lý các tín hiệu này và cho ra một tín hiệu output. Tín hiệu output này sau đó
được truy n đi làm tín hiệu đầu vào cho các nơron khác.
Dựa trên những hiểu biết v nơron sinh học, con người xây dựng nơron nhân tạo
với hy vọng tạo nên một mô hình có sức mạnh như bộ não.
Nơ-ron nhân tạo[13]
Một nơron là một đơn vị xử lý thông tin và là thành phần cơ bản của một
mạng nơron. Cấu trúc của một nơron được mô tả trên hình dưới.

Hình 2-8. Nơron nhân tạo
Các thành phần cơ bản của một nơron nhân tạo bao gồm:
♦ Tập các đầu vào: Là các tín hiệu vào (input signals) của nơron, các tín
hiệu này thường được đưa vào dưới dạng một vector N chi u.
♦ Tập các liên kết: Mỗi liên kết được thể hiện bởi một trọng số (gọi là trọng
số liên kết – Synaptic weight). Trọng số liên kết giữa tín hiệu vào thứ j với nơron k
thường được kí hiệu là w . Thông thường, các trọng số này được khởi tạo một cách
kj

ngẫu nhiên ở thời điểm khởi tạo mạng và được cập nhật liên tục trong quá trình học
mạng.

♦ Bộ tổng (Summing function): Thường dùng để tính tổng của tích các đầu
vào với trọng số liên kết của nó.

22


♦ Ngƣỡng (còn gọi là một độ lệch - bias): Ngưỡng này thường được đưa vào
như một thành phần của hàm truy n.
♦ Hàm truyền (Transfer function) : Hàm này được dùng để giới hạn phạm vi
đầu ra của mỗi nơron. Nó nhận đầu vào là kết quả của hàm tổng và ngưỡng đã cho.
Thông thường, phạm vi đầu ra của mỗi nơron được giới hạn trong đoạn [0,1] hoặc
[-1, 1]. Các hàm truy n rất đa dạng, có thể là các hàm tuyến tính hoặc phi tuyến.
Việc lựa chọn hàm truy n nào là tuỳ thuộc vào từng bài toán và kinh nghiệm của
người thiết kế mạng. Một số hàm truy n thường sử dụng trong các mô hình mạng
nơron được đưa ra trong bảng 1 .
♦ Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa là
một đầu ra.
Xét v mặt toán học, cấu trúc của một nơron k được mô tả bởi các tín hiệu
đầu vào (x , x , ..., x ); (w , w
w là các trọng số liên kết của nơron thứ k; u là hàm
1

2

p

k1

k2, ...,


kp)

k

tổng; b là một ngưỡng; f là hàm truy n và y là tín hiệu đầu ra của nơron.
k

k

Như vậy tương tự như nơron sinh học, nơron nhân tạo cũng nhận các tín hiệu
đầu vào, xử lý ( nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thu
được rồi gửi kết quả tới hàm truy n), và cho một tín hiệu đầu ra (là kết quả của hàm
truy n).
ảng 2-1.Một số hàm truy n thông dụng
Hàm truyền

Đồ thị

Symmetrical Hard Limit
(hardlims)

Linear (purelin)

23

Định nghĩa


Saturating Linear (satlin)


Log-Sigmoid (logsig)

2.5.3. Mô hình mạng nơ-ron
Mặc dù mỗi nơron đơn lẻ có thể thực hiện những chức năng xử lý thông tin
nhất định, sức mạnh của tính toán nơron chủ yếu có được nhờ sự kết hợp các nơron
trong một kiến trúc thống nhất. Một mạng nơron là một mô hình tính toán được xác
định qua các tham số: kiểu nơron (như là các nút nếu ta coi cả mạng nơron là một
đồ thị), kiến trúc kết nối (sự tổ chức kết nối giữa các nơron) và thuật toán học (thuật
toán dùng để học cho mạng).
V bản chất một mạng nơron có chức năng như là một hàm ánh xạ F: X → Y, trong
đó X là không gian trạng thái đầu vào (input state space) và Y là không gian trạng
thái đầu ra (output state space) của mạng. Các mạng chỉ đơn giản là làm nhiệm vụ
ánh xạ các vector đầu vào x ∈ X sang các vector đầu ra y ∈ Y thông qua “bộ lọc”
(filter) các trọng số. Tức là y = F(x) = s(W, x), trong đó W là ma trận trọng số liên
kết. Hoạt động của mạng thường là các tính toán số thực trên các ma trận [13]
Các kiểu mô hình mạng nơ-ron
Cách thức kết nối các nơron trong mạng xác định kiến trúc (topology) của
mạng. Các nơron trong mạng có thể kết nối đầy đủ (fully connected) tức là mỗi
nơron đ u được kết nối với tất cả các nơron khác, hoặc kết nối cục bộ (partially
connected) chẳng hạn chỉ kết nối giữa các nơron trong các tầng khác nhau. Người ta
chia ra hai loại kiến trúc mạng chính [13]:

24


×