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

Tiểu luận tốt nghiệp Xác định mặt người dựa vào thành phần khuôn mặt và logic mờ

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 (667 KB, 44 trang )

ĐẠI HỌC QUỐC GIA TPHCM
ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA TOÁN-TIN HỌC
BỘ MÔN TIN HỌC ỨNG DỤNG
D E

TIỂU LUẬN TỐT NGHIỆP

Đề tài:

XÁC ĐỊNH MẶT NGƯỜI
DỰA VÀO THÀNH PHẦN KHUÔN MẶT VÀ LOGIC MỜ

Giảng viên hướng dẫn: Thạc só PHẠM THẾ BẢO
Giảng viên phản biện: Tiến só TRẦN NAM DŨNG
Sinh viên thực hiện
: TRẦN ANH TUẤN
PHAN PHÚC DOÃN

KHÓA:2001-2005


Xác đònh mặt người

Lời nói đầu
Ngày nay với sự phát triển nhanh chóng của công nghệ thông tin, con người
ngày càng muốn làm ra những vật dụng thay thế họ trong việc lao động chân tay cũng
như trí óc. Vì vậy những lónh vực như trí tuệ nhân tạo và tự động hóa ngày càng phát
triển mạnh ở những nước phát triển, đặc biệt là việc chế tạo ra những robot. Những
hệ thống tự động nói chung và robot nói riêng muốn hoạt động có hiệu quả thường
phải có một hệ thống tương tác người máy và trong những hệ thống này thì việc xác


đònh mặt người chiếm một vò trí quan trọng. Xác đònh mặt người (face detection) là
thuật ngữ dùng để chỉ việc đònh hướng (location) và xác đònh một cách chính xác vò trí
của mặt người trong một bức ảnh. Xác đònh mặt người có rất nhiều phương pháp:
phương pháp neural network, phương pháp dựa vào đặc trưng của da người, phương
pháp dựa vào những đặc điểm trên khuôn mặt người…. Luận văn này chủ yếu trình
bày phương pháp xác đònh mặt người dựa trên màu da và những đặc trưng trên khuôn
mặt người.
Luận văn được chia ra làm 2 phần. Phần đầu chủ yếu nói về cơ sở toán học và
khoa học máy tính của hệ thống xác đònh mặt người bao gồm: các không gian màu, hệ
thống logic mờ, phương pháp Fast Marching. Phần còn lại của luận văn là chi tiết về
thuật toán và cài đặt hệ thống.
Luận văn này đã được viết và biên tập kó lưỡng, song không thể tránh khỏi
thiếu sót trong quá trình viết, mong nhận được sự đóng góp tận tình của q thầy cô và
các bạn để luận văn hoàn thiện hơn.

1


Xaùc ñònh maët ngöôøi

2


Xác đònh mặt người

Lời cảm ơn
Đầu tiên chúng tôi xin chân thành cảm ơn thạc só Phạm Thế Bảo, người trực tiếp
hướng dẫn đề tài này đã tận tình chỉ bảo, giúp đỡ chúng tôi trong suốt quá trình thực
hiện tiểu luận này.
Chúng tôi cũng chân thành cảm ơn hai anh Nguyễn Thành Nhựt và Cao Minh Thònh

đã có những giúp đỡ q báu về tài liệu cũng như thuật toán để chúng tôi thực hiện tốt
luận văn.
Chúng tôi cũng xin cảm ơn thầy cô trong khoa Toán-Tin học đã cung cấp cho chúng
tôi những nền tảng Toán và Tin học vững chắc làm tiền đề cho việc thực hiện thành
công luận văn này.
Chúng tôi cũng xin cảm ơn các bạn khóa 2001 đã động viên, giúp đỡ để chúng tôi
hoàn thành tốt luận văn.

3


Xác đònh mặt người

Mục lục
Lời nói đầu .....................................................................................................................1
Lời cảm ơn .....................................................................................................................2
Mục lục ..........................................................................................................................3
Phần 1: Cơ sở toán học ..................................................................................................5
Chương 1: Các không gian màu sử dụng trong việc xác đònh da người .........................5
1. Không gian màu HIS, HSV, HSL .......................................................................5
2. Không gian màu TSL .........................................................................................5
3. Không gian màu YCbCr .....................................................................................6
Chương 2: Điều khiển mờ và logic mờ...........................................................................7
1. Tổng quan về logic mờ và điều khiển mờ..........................................................7
2. Các thành phần của hệ thống logic mờ ..............................................................8
3. Mờ hóa................................................................................................................8
4. Giải mờ ...............................................................................................................9
Chương 3: Fast Marching..............................................................................................10
1. Giới thiệu .........................................................................................................10
2. Công thức tính toán của thuật toán Fast Marching...........................................10

3. Áp dụng thuật toán Fast Marching trong hệ thống thực nghiệm .....................11
Phần 2: Hệ thống xác đònh mặt người ........................................................................14
Chương 1: Tổng quan về các phương pháp xác đònh mặt người.................................14
I.Mục đích và khó khăn ..............................................................................................
1. Mục đích .................................................................................................... 14
2. Khó khăn....................................................................................................14
II.Các phương pháp xác đònh mặt người và các thành phần trên khuôn mặt .......15
1. Các phương pháp xác đònh mặt người ..................................................................
a. Phương pháp tiếp cận dựa vào đặc điểm của khuôn mặt .........................15
b. Phương pháp tiếp cận dựa vào hình ảnh ...................................................15
2. Các phương pháp xác đònh thành phần trên khuôn mặt người .........................16
3.Ưu điểm của phương pháp xác đònh dựa vào thành phần của khuôn mặt .........18
Chương 2: Xây dựng thuật giải...................................................................................19
I. Các bước tiền xử lí ...............................................................................................19

4


Xác đònh mặt người
1. Phương pháp lấy những vùng da người ............................................................20
2. Phương pháp khử nhiễu ...................................................................................21
II. Xác đònh thành phần mắt-miệng và tách dính........................................................25
1. Xác đònh các thành phần mắt-miệng của khuôn mặt .......................................25
2. Phương pháp tách dính ......................................................................................29
Xác đònh điểm loang ......................................................................................30
Xác đònh độ loang ..........................................................................................30
III. Xây dựng luật mờ..................................................................................................32
Những luật mờ về quan hệ giữa mắt mũi miệng và chiều dài chiều rộng của
khuôn mặt ....................................................................................................................32
Chương 3: Cài đặt thực nghiệm và đánh giá ................................................................34

1. Các chức năng chính của hệ thống.....................................................................34
2. Tổng kết
Thống kê dựa trên cơ sở dữ liệu .........................................................................34
Ưu điểm ..............................................................................................................34
Khuyết điểm .......................................................................................................34
Hướng phát triển .................................................................................................35
Tài liệu tham khảo ......................................................................................................36

5


Xác đònh mặt người

Phần 1: Cơ sở toán học của hệ thống
Chương 1:
Các không gian màu thường sử dụng trong việc xác đònh mặt người
1. Không gian màu HIS, HSV, HSL (Hue-Saturation-(Intensity/Value/Lightness))
Hue xác đònh những màu trội ( như màu đỏ, xanh lá cây, màu tía, vàng) trong một
vùng , suturation dùng để đo tỉ lệ của màu sắc so với độ sáng của vùng, những giá trò
intensity, value, lightness dùng liên quan đến độ sáng của vùng đó. Sự trực giác của
những thành phần trong không gian màu và sự phân biệt rõ ràng giữa độ sáng và độ
chrominance làm cho những không gian màu này trở nên thông dụng trong việc tách
vùng da người.
Công thức chuyển đổi giữa R, G, B và H, S, V

1
(( R − G ) + ( R − B))
2
H = arccos
(( R − G ) 2 + ( R − B )(G − B))


min( R, G, B)
S = 1− 3
R+G+ B

Phạm
Thế Bảo

1
V = ( R + G + B)
3

Digitally signed by Phạm Thế Bảo
DN: cn=Phạm Thế Bảo, c=VN,
o=Khoa Tóan - Tin học trường Đại
học khoa học Tp.HCM, Vietnam,
ou=NCLAB,
email=
edu.vn
Reason: I am the author of this
document
Date: 2006.08.20 11:18:37 +07'00'

2. Không gian màu TSL - Tint, Saturation, Lightness
Không gian màu TSL là sự chuyển đổi từ không gian màu RGB thành những giá trò
trực quan hơn
9
S = [ (r '2 + g '2 )]1/ 2
5
⎧ arctan( r '/ g ') / 2π + 1 / 4, g ' > 0


T = ⎨ arctan( r '/ g ') / 2π + 3 / 4, g ' < 0
⎪ 0, g ' = 0


L = 0.299 R + 0.587G + 0.114 B

6


Xác đònh mặt người
Trong đó r’ = r−1/3, g’ = g−1/3 và các giá trò của r, g là những giá trò được chuẩn hóa
của không gian màu RGB được tính theo công thức sau:

r=

R
R+G+ B

g=

G
R+G+ B

b=

B
R+G + B

3. Không gian màu YCbCr

YCrCb là dạng mã hóa không tuyến tính của tín hiệu RGB được sử dụng phổ biến
trong công nghệ truyền hình ở châu u và trong nén ảnh. Độ Y( độ sáng ) được tạo
thành bằng tổng các thành phần R, G, B theo các trọng số khác nhau, Cr và Cb được
tạo thành bằng cách lấy giá trò R, B tương ứng trừ cho giá trò Y.
Y = 0.299R+0.587G+0.114B
Cr = R−Y
Cb = B−Y
Sự đơn giản trong biến đổi và sự phân biệt rõ ràng giữa độ sáng và độ chrominabce
làm cho không gian màu này rất phổ biến trong việc mô hình hóa màu da người.

7


Xác đònh mặt người

Chương 2: Điều khiển mờ và logic mờ
1. Tổng quan về logic mờ và điều khiển mờ:
Bắt đầu từ năm 1965, giáo sư Lofti A.Zadeh ở trường đại học California-Mỹ đã đưa ra
khái niệm về lý thuyết tập mờ (Fuzzy set theory). Từ đó đến nay logic mờ và neural
network là hai lónh vực được nhiều nhà khoa học đặc biệt quan tâm nghiên cứu và ứng
dụng vào nhiều ngành khoa học kó thuật. Tập mờ và logic mờ dựa trên các suy luận
của con người về các thông tin “không chính xác” hoặc “không đầy đủ” về hệ thống
để điều khiển và hiểu biết hệ thống một cách chính xác.
Đònh nghóa tập con mờ và hàm liên thuộc:
Cho tập E, gọi A’ là tập con mờ của E và:
A:= μ A ( x) =

1
1 + kx 2


Trong đó μ A ( x) là hàm liên thuộc của tập mờ A’, μ A ( x) lấy giá trò bất kì trong đọan
[0,1] , μ A ( x) càng gần 1 thì phần tử x ∈ E tương ứng càng tỏ, nếu μ A ( x) =1 thì x đúng
là phần tử tỏ của tập mờ, càng gần 0 thì phần tử x ∈ E tương ứng càng mờ.
Người ta có thể lấy μ A ( x ) theo nhiều kiểu khác nhau và có các kiểu thông dụng sau
đây:
⎧1 i f x = x*
⎩0 els e

μ A ( x) = ⎨

μ A ( x) = e− kx

k>0

M

y=

∑ h .y
l =1
M

l

∑h
l =1

μ A ( x) =

l


k>0

l

1
1 + kx 2

8


Xác đònh mặt người

2. Các thành phần của hệ thống logic mờ
Hệ thống điều khiển mờ có 4 khối:
Khối mờ hóa: có giá trò biền đổi các giá trò rõ đầu vào thành một miền giá trò
mờ với hàm liên thuộc đã chọn ứng với biến ngôn ngữ đầu vào đã được đònh
nghóa.
Khối hợp thành: dùng để biến đổi các giá trò mờ hóa của biến ngôn ngữ đầu
vào thành các giá trò mờ của các biến ngôn ngữ đầu ra theo các luật hợp thành
nào đó.
Khối luật mờ: bao gồm các tập luật “Nếu … thì” dựa vào các luật mờ cơ sở,
được người thiết kế viết ra cho thích hợp với từng biến và giá trò của các biến
ngôn ngữ theo quan hệ mờ Vào/Ra.
Khối giải mờ: biến đổi các giá trò mờ đầu ra thành các giá trò rõ để điều khiển
đối tựơng.
Một bộ điều khiển mờ chỉ gồm bốn khối như vậy gọi là bộ điều khiển mờ cơ bản.
3. Mờ hóa
Mờ hóa được đònh nghóa như là sự ánh xạ từ tập các giá trò thực x* ∈U⊂Rn thành tập
các giá trò mờ A’ ở trong U. Nguyên tắc chung của sự mờ hóa là:

-Từ tập giá trò thực x đầu vào sẽ tạo ra tập mờ A’ với hàm liên thuộc có giá trò đủ
rộng tại các điểm rõ x*.
-Nếu có nhiễu ở đầu vào thì sự mờ hóa sẽ góp phần khử nhiễu.
-Việc mờ hóa phải tạo điều kiện đơn giản cho việc tính toán sau này.
Có các phương pháp mờ hóa sau:
a. Phương pháp đơn trò: Mờ hóa đơn trò là từ các điểm giá trò thực x* ∈U lấy các
giá trò đơn trò của tập mờ A’; nghóa là hàm liên thuộc có dạng:
⎧1 i f x = x*

μ A ( x) = ⎨

⎩0 els e

9


Xác đònh mặt người
b. Mờ hóa Gaus: Mờ hóa Gaus là từ các điểm giá trò thực x* ∈U lấy các giá trò
đơn trò của tập mờ A’ với hàm liên thuộc Gaus:

μ A ( x, σ , c ) = e

( x − c )2

σ2

c. Mờ hóa tam giác: Mờ hóa tam giác là từ các điểm giá trò thực x* ∈U lấy các
giá trò đơn trò của tập mờ A’ với các hàm liên thuộc dạng hình tam giác ( hoặc
hình thang):


μ A ( x, a, b, c) = max (mi n (

x−a c−x
,
) , 0) (hình tam giác)
b−a c −b

μ A ( x, a, b, c, d ) = max(mi n(

x−a d −x
,1,
), 0) (hình thang)
b−a d −c

4. Giải mờ
Giải mờ là sự ánh xạ từ các giá trò thuộc tập mờ B’ trong tập cơ sở thành giá trò rõ
đầu ra y∈V. Như vậy nhiệm cụ của việc giải mờ là tìm một điểm rõ đại diện tốt
nhất cho tập mờ B’.
Các phương pháp giải mờ:
a. Phương pháp cực đại: phương pháp này bao gồm hai bước
Bước 1: Xác đònh miền chứa giá trò rõ đầu ra.Đó là miền G mà giá trò rõ đầu ra
y có hàm liên thuộc đạt giá trò cực đại, nghóa là:
G= { y ∈ Y | μB ( y ) = max}
Bước 2: Xác đònh giá trò y từ miền G có 3 cách tính là lấy trung bình, lấy giá trò
cận phải, lấy giá trò cận trái.
b. Phương pháp lấy trọng tâm:

y=

∫ y.μ

S

∫μ

B

B

( y )dy

( y )dy

S

10


Xác đònh mặt người
c. Phương pháp lấy trung bình tâm:
Vì tập mờ B’ có thể là hợp hay giao của M tập mờ nên chúng ta có thể tính
gần đúng giá trò y là trung bình theo trọng số của tâm của M tập mờ.
M

y=

∑ h .y
l =1
M

l


l

∑h
l =1

l

11


Xác đònh mặt người

Chương 3: Phương pháp Fast Marching
1. Giới thiệu
Phương pháp Fast Marching được phát triển bởi giáo sư J.A.Sethian trường
đại học Berkely bang California, Mỹ. Đây là phương pháp tiên tiến thuộc
lónh vực giải tích số chuyên giải quyết các vấn đề về loang. Bài toán đặt
ra là cho trước một mặt phân giới ngoài và mặt phân giới trong cùng với
một hàm vận tốc F thì sau khoảng thời gian t đường cong trong loang ra
ngoài sẽ có hình dạng như thế nào, và mục tiêu là tính toán sự di chuyển
của nó.

Hình 1: Đường cong theo tham số S (biên trong) loang ra theo thời gian T.
2. Công thức tính toán của thuật toán FastMarching:
⎡⎣ max ( Dij− xT , 0) 2 + mi n ( Dij+ xT , 0) 2 + max ( Dij− yT , 0) 2 + mi n ( Dij+ yT , 0) 2 ⎤⎦

Trong đó F>0 là hàm vận tốc chỉ hướng loang từ trong ra ngoài
T (i,j) là thời gian khi đường cong loang đến điểm có tọa độ (i,j)



Di−j xT =
Di+j yT =

Tij − Ti −1, j

Di+j xT =

h
Ti , j +1 − Ti j

Di−j yT =

k
12

Ti +1, j − Tij
h
Tij − Ti , j −1
k

1/ 2

=

1
Fij


Xác đònh mặt người


3. p dụng thuật toán Fast Marching trong hệ thống thực nghiệm
Dữ liệu vào:
Vùng bắt đầu loang (StartBound) với Pixel biên được gán giá trò là
Known, Pixel lân cận biên được gán giá trò là Trial và các Pixel khác là
FarAway.
Vùng giới hạn loang (EndBound) và hàm vận tốc loang là F=5 (loang
tuyến tính), hệ số loang s.
Tiến trình:
Lặp:
- Trong tất cả các điểm trial lấy điểm có T bé nhất A.
- Đưa điểm A đó từ Trial thành Known.Và đặt các giá trò lân cận
từ Far thành Trial để dùng cho lần xét kế tiếp.
- Bất cứ Pixel nào chuyển trang thái đều phải tính toán laiï thời
gian T theo công thức Fast Marching.
-Trở lại vòng lặp.
Cách cập nhật cho điểm chuyển trạng thái: (giả sử là X)

Hình 2: Cập nhật giá trò T cho điểm X
Nếu T(A)+1/F >= min(T(B),T(D))

T(X ) =

1⎛
2
⎜ T ( A) + T ( B) + 2 * (1 / F ) 2 − (T ( B) − T ( A) ) ⎞⎟

2⎝
13



Xác đònh mặt người

Ngược lại thì T(X) = T(A)+1/F
Dữ liệu ra:
Có được biên mới từ startBound sau khoảng thời gian loang t.

14


Xác đònh mặt người

Phần 2 : Hệ thống xác đònh mặt người
Chương 1: Tổng quan về các phương pháp xác đònh mặt người
I. Mục đích và khó khăn:
Hàng chục năm qua đã có hàng ngàn công trình nghiên cứu về việc xác đònh mặt
người trong ảnh màu cũng như ảnh trắng đen. Những công trình như vậy phục vụ
cho nhiều mục đích khác nhau và cũng gặp nhiều khó khăn khác nhau nhưng tóm
lại có thể kể ra những mục đích và khó khăn chủ yếu sau:

1. Mục đích:
a. Hệ thống tương tác người máy: Khoa học kó thuật ngày càng tiến bộ và đến
lúc nào đó con người cần phải giải phóng khỏi việc lao động chân tay, họ cần
những máy móc thay thế họ. Muốn được như vậy cần có những hệ thống có
thể điều khiển bằng giọng nói hoặc cảm xúc, và những hệ thống này trứơc hết
có thể xác đònh cũng như nhận dạng được mặt người.
b. Phục vụ cho việc nhận dạng: Nhận dạng ngày càng có vai trò to lớn trong
nhiều họat động của xã hội đặc biệt là họat động an ninh. Xác đònh mặt người
là bước đầu tiên của việc nhận dạng mặt người do đó để có được một hệ thống
nhận dạng tốt trước hết chúng ta phải có một hệ thống xác đònh mặt người tốt.

c. Hệ thống quan sát, bảo vệ: Để có hệ thống bảo vệ hoạt động hiệu quả, liên
tục, chúng ta cần phải sử dụng một hệ thống quan sát và nhận dạng chính xác
những hoạt động nhất là những họat động của con người.

2. Khó khăn:
a. Góc quay khác nhau của mặt: Khó khăn đầu tiên phải kể đến trong việc xác
đònh mặt người đó là góc quay khác nhau của khuôn mặt. Góc quay trong
không gian ảnh gây khó khăn cho những hệ thống chỉ xác đònh được mặt thẳng
đứng (trục của khuôn mặt không hướng theo những chiều giống nhau). Góc
quay ngoài không gian ảnh gây ra việc mất đi những thành phần quan trọng

15


Xác đònh mặt người
của khuôn mặt làm cho việc xác đònh dựa vào những thành phần trên khuôn
mặt gặp nhiều khó khăn.
b. Độ lớn nhỏ của mặt: Độ lớn nhỏ của khuôn mặt khác nhau gây khó khăn
trong việc xác đònh khuôn mặt dựa vào kích thước của những vùng da.
c. Nhiễu: Những nhiễu gây ra bởi nhiều nguyên nhân khác nhau gây khó khăn
cho mọi phương pháp xác đònh, đôi khi làm cho vùng không phải là mặt bò
nhận là mặt và ngược lại.
d. Cường độ ánh sáng khác nhau: Cường độ ánh sáng khác nhau gây ra những
vùng nhiễu như đã nói ở trên. Ngoài ra cừơng độ ánh sáng còn gây khó khăn
trong việc mô hình hóa màu da người gây ảnh hưởng lớn đến những phương
pháp xác đònh mặt người dựa vào màu da.

II. Các phương pháp xác đònh mặt người và thành phần trên khuôn
mặt:
1. Các phương pháp xác đònh mặt người:

Xác đònh mặt người được chia ra làm hai hướng chính:
a. Phương pháp tiếp cận dựa vào đặc điểm của khuôn mặt (feature-based):
trong cách tiếp cận này có ba phương pháp chính:



Phân tích những đặc điểm có thể gọi là vật lý của khuôn mặt: trong
cách tiếp cận này có thể phân chia ra làm cách tiếp cận như cách tiếp
cận dựa vào biên khuôn mặt, màu sắc, độ xám, chuyển động và kích
thước của khuôn mặt.



Phân tích những đặc điểm trên khuôn mặt (mắt, mũi, miệng): cách
tiếp cận này có các phương pháp như: tìm kiếm những thành phần của
khuôn mặt, phân tích quan hệ giữa các thành phần đó.



Mô hình những hình dạng: phương pháp này chủ yếu dựa vào đường
cong trên khuôn mặt, những mô hình phân bố điểm.

b. Phương pháp tiếp cận dựa vào hình ảnh : trong phương pháp này có hai
phương pháp chính:

16


Xác đònh mặt người




Phương pháp neural network: Phương pháp này sử dụng một hệ thống
neural network. Hệ thống này sau khi được training với một lượng dữ
liệu lớn về mặt người cũng như không phải là mặt người sẽ đi đến trạng
thái ổn đònh có thể nhận ra mặt người. Khuyết điểm lớn nhất của hệ
thống này là chúng ta phải có một cơ sở dữ liệu rất lớn về mặt người để
training hệ thống bởi vì càng được training nhiều thì hệ thống xác đònh
mặt người càng chính xác.



Phương pháp thống kê: Yếu tố chính của phương pháp thống kê trong
các hệ thống xác đònh mặt người là cách tiến hành xây dựng tập các
vector đặc tính và kết cấu của khuôn mặt. Sau đó áp dụng các đặc tính
kết cấu đa phân giải đó cho một vùng ảnh nhất đònh để nhận biết xem
đó có phải là vùng ảnh có chứa mặt người hay không.Ưu điểm của
phương pháp này là hệ thống không cần nhiều ảnh huấn luyện (training
image).Nhược điểm của phương pháp này là khối lượng tính toán lớn
và tương đối phức tạp trong quá trình xây dựng các đặc tính kết cấu đa
phân giải.

2. Những phương pháp xác đònh thành phần khuôn mặt người:
a. Phương pháp xác đònh các thành phần dựa vào phép chiếu: Từ những vùng
da người xác đònh trước, những thành phần chính của khuôn mặt (mắt, mũi,
miệng) có thể xác đònh chính xác dựa vào hình chiếu ngang và dọc của nó. Bên
cạnh đó, những tri thức về cấu trúc của khuôn mặt người giúp cho chúng ta có thể
áp dụng một số thuật giải heuristic làm cho quá trình đònh hướng hiệu quả hơn.
Cho trước một vùng ảnh xám I(x,y), hình chiếu toàn phần của nó được xác đònh
bởi HP(y)= ∑ I ( x,.)


∑ I (. , y)

và VP(x)= ∑ I ( x,.) . Những hình chiếu này được

làm trơn để tránh những đỉnh nhiễu. Sau đó những thành phần của khuôn mặt có
thể được suy ra từ những cực đại và cực tiểu đòa phương như trong hình. Nếu
không có đỉnh nào được tìm thấy ở những vò trí mong muốn thì ta có thể kết luận
là không có khuôn mặt nào trong ảnh. Và nếu tất cả các thành phần của khuôn
mặt có thể xác đònh được ta kết luận là có tồn tại khuôn mặt.

17


Xác đònh mặt người

b. Cách xác đònh dựa vào các đặc trưng màu sắc và quan hệ hình học:

• Xác đònh miệng: chủ yếu dựa vào tính chất đỏ hơn của môi so với các thành
phần khác của khuôn mặt. Sau khi xác đònh những vùng bao quanh
vùng da người, những vùng có màu đỏ trong vùng da đó được xác đònh
dựa vào công thức: MouthMap= Cr2 .(Cr2 − η Cr / Cb ) 2

η= 0 . 9 5 ×

(1/ N )∑ C r 2

(1/ N )∑ C r / C b

trong đó


với N là số chiều không gian của bao vùng

da.
Những khu vực được xác đònh là miệng được tách riêng. Trong trường
hợp có nhiều khu vực thì những khu vực này được trộn chung lại dựa
trên tính lân cận của chúng và tạo thành một vùng. Trọng tâm của vùng
này sau đó có thể xem như là vò trí của miệng.

• Xác đònh mắt: Một tính chất quan trọng giúp cho việc xác đònh mắt là mắt
thường có độ tối cao hơn những vùng khác do mắt người chứa những
vùng gần đen hoặc gần trắng. Những khu vực này có thể xác đònh dựa
vào những tính toán trong công thức (4) như sau :
Variance= (1/N)∑ (Y- Y) 2
Trong đó Y là độ sáng tối của từng pixel trong khu vực, Y là độ sáng
tối trung bình của khu vực và N là số chiều của khu vực. Tuy nhiên
trong thực tế này không hiệu quả để xác đònh mắt mà chúng ta cần dựa
những đặc điểm cấu trúc và hình học của khuôn mặt như sau:

18


Xác đònh mặt người
9 Khu vực mắt phải nằm trên khu vực miệng ít nhất là 10 pixel.
9 Tỉ lệ giữa chiều cao và chiều rộng của mắt ít nhất là 0.4.
9 Khoảng cách từ miệng tới mắt trái và mắt phải phải thỏa điều kiện sau:

1.4xME l ≥ ME r ≥ 0.6xME l .
9 Góc giữa miệng và mắt phải thỏa điều kiện sau: 350 ≤ El MEr ≤ 800 .
3. Những ưu điểm của phương pháp xác đònh dựa vào thành phần của khuôn mặt:

Trong khi xác đònh khuôn mặt người dựa vào toàn bộ khuôn mặt rất nhạy cảm
với sự thay đổi vò trí của khuôn mặt thì việc xác đònh khuôn mặt dựa vào thành phần
của khuôn mặt rất ít ảnh hưởng bởi việc này, bởi vì những thành phần trên khuôn mặt
ít thay đổi vò trí khi vò trí của khuôn mặt thay đổi nhỏ. Những kết quả thực nghiệm cho
thấy việc xác đònh khuôn mặt người dựa vào các thành phần trên khuôn mặt có độ
chính xác cao hơn rất nhiều so với việc xác đònh mặt người dựa vào toàn bộ khuôn
mặt.

19


Xác đònh mặt người

Chương 2: Xây dựng thuật giải
I. Các bước tiền xử lí:
Từ chương này chúng tôi sẽ đề cập khái quát quá trình cũng như cách xác đònh
măt người của hệ thống được xây dựng

1. Phương pháp lấy những vùng da người:
a. Xây dựng hệ thống màu: Xây dựng hệ thống màu là một công việc quan
trọng trong việc xác đònh khuôn mặt người dựa vào màu da. Việc xác đònh
chính xác màu da người là thành công ban đầu trong việc xác đònh khuôn mặt.
Ngoài ra, hệ thống này phải xác đònh khuôn mặt dựa vào các thành phần của
khuôn mặt nên ngoài việc xác đònh màu da người ta phải xây dựng hệ thống
màu sao cho các thành phần trên khuôn mặt hiện rõ trên nền màu da người.
Hệ thống màu xây dựng từ chuẩn là không gian màu RGB chuyển qua không
gian YCrCb với công thức chuyển đổi tuyến tính. Cụ thể như sau:




Lấy màu RGB của một tọa độ.



Tính màu YCrCb từ màu RGB theo công thức sau [3] :
⎧Y = 0.299*R + 0.587*G + 0.114*B

⎨Cb = -0 .169 * R - 0.331 * G + 0.500 * B
⎪Cr = 0.500 * R - 0.419 * G - 0.081 * B


(I)

p dụng không gian màu YCbCr có rất nhiều thuận lợi không chỉ là tính
toán đơn giản mà chúng ta có thể điều khiển được các sắc màu Xanh (là
Cb với trọng số Blue lớn), Đỏ (là Cr với trọng số Red lớn) và độ chiếu
sáng (là Y tổ hợp tuyến tính của ba trang thái màu R, G, B và đạt cực đại
với sắc màu trắng).
b. Tiêu chuẩn để một điểm là màu da người trong không gian màu YCbCr:
Dữ liệu vào: Pixel với các tọa độ tương ứng (x,y)
Tiến trình : p dụng công thức chuyển đổi (I) và điều kiện
⎧Y > 45 &&Y<252

isSkin = ⎨C b > -6 0 && C b < 1 0 . 3
⎪Cr>10 && C r<60


20



Xác đònh mặt người

⎧ White isSkin = true
Dữ liệu ra: Pixel (i, j ) = ⎨
⎩ Black isSkin = false
c. Tiêu chuẩn một điểm là các thành phần mắt miệng trong một vùng da:
Tiêu chuẩn này đóng một vai trò quan trọng trong toàn bộ hệ thống:
9 Nó quyết đònh các khu vực để đạt được mức độ loang chính xác trong
một khuôn mặt và việc tách dính một khuôn mặt với nhiều khuôn
mặt.
9 Nó quyết đònh độ chính xác và đầy đủ trong việc xác đònh các thành
phần.
9 Nó cũng đóng vai trò quan trọng trong quá trình loại bỏ các nhiễu
(giống khuôn mặt nhưng thật ra không phải là khuôn mặt).
Khởi tạo:

Crb=Cr/Cb

(trong không gian màu YCbCr)

Cr 2 =Cr*Cr
Sắc nâu đen: Crb>3 && G<100 && B<100(đặc trưng vùng mắt)
Sắc đỏ:

Crb > 2 & &Cr 2 > 1300

(đặc trưng vùng miệng)

Dữ liệu vào: Vùng mặt {minXTiến trình:

Bước 1: Xét một pixel P(i,j) thuộc vùng mặt .
Bước 2: ishole(i,j)=Sắc nâu đen hoặc Sắc đỏ.
ishole(i,j) dùng để xác đònh xem pixel ở vò trí (i,j) có thuộc về
một khu vực hay không.
Bước 3:
ishole(i,j)=true thì xét lại bước 2 với P là một lân cận biên của
P.
ishole(i,j)=false thì qua bước 4.
Bước 4: Tập hợp các Pixel vừa xét lại thành một khu vực.
Dữ liệu ra:

⎧White Pixel (i, j ) ∉ hole
Pixel (i, j ) = ⎨
⎩ Black Pixel (i, j ) ∈ hole

21


Xác đònh mặt người

2. Phương pháp khử nhiễu:
Do tính chất phức tạp của điều kiện ánh sáng nên các thành phần nhiễu vẫn
tồn tại.Vì vậy ảnh sau khi lấy được vùng da không được đưa trực tiếp vào xử lý
mà phải qua bước lọc nhiễu (nếu làm tốt thì sẽ thuận lợi cho việc xác đònh thành
phần của khuôn mặt sau này).
Những khu vực nhỏ tách biệt nhưng giống thành khuôn mặt hay những hole
nhỏ trong vùng khuôn mặt sẽ bò loại bỏ nhờ phương pháp morphological. Có hai
bước morphological quan trọng là: đóng (closing) và mở (opening). Mở thường
làm trơn biên của ảnh, bẻ gãy những liên kết giữa các vùng nhỏ, loại bỏ những
vùng lồi nhỏ. Đóng cũng thường làm trơn biên của ảnh nhưng ngược lại với mở nó

thường nối những vùng nhỏ bằng cách trộn chúng lại với nhau, loại bỏ những hố
nhỏ và lấp đầy những lỗ hổng ngoài biên.
Chúng ta có thể minh họa như sau:
Đầu tiên chúng ta cần có một cấu trúc phần tử của phép biến đổi ví dụ:

vàphép opening xác đònh thông qua hai bước sau:

Hình 3: Bước mở

22


Xác đònh mặt người

Trong khi đóng (closing) được xác đònh bằng:

Hình 4: Bước đóng (closing)
Cấu trúc phần tử có trọng tâm là một pixel trong ảnh, và những giá trò pixel được
biến đổi như sau:
Với phép toán co (erosion) thì một pixel được đánh dấu sẽ bò lọai nếu nó là trung
tâm của các pixel có hình dạng giống cấu trúc phân tử. Đối với phép toán dãn
(dilation) thì những pixel đánh dấu sẽ được thêm cấu trúc phần tử dựa trên việc
giá trò này như là trọng tâm của cấu trúc phần tử. Trong việc xác đònh mặt người
thì chúng ta có thể giả sử rằng khuôn mặt nhỏ nhất phải lớn hơn 5x5 pixel. Bất cứ
vùng da nào nhỏ hơn khu vực này sẽ bò loại bỏ và xem như là một vùng không
phải khuôn mặt. Vùng 5x5 này được dùng như là cấu trúc phân tử của các phép
toán ở trên. Trong thực tế để hợp lí hơn chúng ta có thể xóa bớt một vài pixel ở
góc để cấu trúc của chúng ta gần giống khuôn mặt hơn.

Hình 5: Các cấu trúc khuôn mặt thông thường


23


Xác đònh mặt người

và cấu trúc phần tử tương ứng như sau:

Hình 6: Các cấu trúc phần tử
Morphology giúp cho chúng ta tách riêng những vùng da người và những vùng
không phải da người nếu chúng không có liên hệ với nhau. Nhưng nếu mối liên hệ
này lớn hơn cấu trúc phần tử thì phương pháp này không hiệu quả. Vì vậy việc
chọn một cấu trúc phần tử có kích thước phù hợp là rất quan trọng. Nếu quá nhỏ
sẽ giữ nhiều pixel không có ích trong ảnh còn nếu quá lớn có thể làm loại bỏ
những thông tin quan trọng và có thể làm cho việc xác đònh khuôn mặt gặp thất
bại.
Hình minh họa cho việc chuyển đổi không gian màu và lọc nhiễu:

24


×