Hệ thống này có thể được hoàn thiện hơn dựa vào mô hình da người tổng
quát hóa hơn thông qua nghiên cứu của các nhà nhân trắc học. Bên cạnh
đó hệ thống viết bằng ngôn ngữ Java có thể chạy trên mọi môi trường hệ
điều hành cũng như những môi trường điện thoại di động, camera. Hệ
thống có thể kết hợp với những công trình ngiên cứu khác như nhận dạng
âm thanh, giọng nói, nhận dạng mặt người và công nghệ điện tử, tự động
để có thể phát triển thành những hệ thống trí tuệ nhân tạo phức tạp hơn và
có những ứng dụng thực tế cao hơn. Ngoài ra hệ thống nếu cải thiện tốc độ
xử lí nhanh hơn để có thể xử lí thời gian thực, từ đó ứng dụng được ngay
vào những hệ thống xử lí ảnh video hoặc ảnh động quay từ camera trong
các hệ thống quan sát, bảo vệ xử lí tự động.
44 trang |
Chia sẻ: builinh123 | Lượt xem: 2199 | Lượt tải: 3
Bạn đang xem trước 20 trang tài liệu Đề tài Xácc định mặt người dựa vào thành phần khuôn mặt và logic mờ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠ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
1
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 quí thầy cô và
các bạn để luận văn hoàn thiện hơn.
Xác định mặt người
2
Xác định mặt người
3
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 đỡ quí 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.
Xác định mặt người
4
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
Xác định mặt người
5
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
Xác định mặt người
6
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
)))(()((
))()((
2
1
arccos
2 BGBRGR
BRGR
H
−−+−
−+−
=
min( , , )1 3 R G BS
R G B
= − + +
1 ( )
3
V R G B= + +
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
2 2 1/ 29[ ( ' ' )]
5
S r g= +
arctan( '/ ') / 2 1 / 4, ' 0
arctan( '/ ') / 2 3 / 4, ' 0
0, ' 0
r g g
T r g g
g
π
π
+ >⎧⎪= + <⎨⎪ =⎩
0.299 0.587 0.114L R G B= + +
Xác định mặt người
7
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:
Rr
R G B
= + +
Gg
R G B
= + +
Bb
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 Aâ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.
Xác định mặt người
8
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:= 2
1( )
1A
x
kx
μ = +
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
( )
0 elseA
i f x x
xμ ⎧ == ⎨⎩
( ) kxA x eμ −= k > 0
1
1
.
M
l
l
l
M
l
l
h y
y
h
=
=
=
∑
∑
k > 0
2
1( )
1A
x
kx
μ = +
Xác định mặt người
9
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
( )
0 elseA
i f x x
xμ ⎧ == ⎨⎩
Xác định mặt người
10
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:
2
2
( )
( , , )
x c
A x c e σμ σ
−
=
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):
( , , , ) max(min( , ) ,0)A
x a c xx a b c
b a c b
μ − −= − − (hình tam giác)
( , , , , ) max(min( ,1, ) ,0)A
x a d xx a b c d
b a d c
μ − −= − − (hình thang)
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= B{ | ( ) max}y Y yμ∈ =
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:
. ( )
( )
B
S
B
S
y y dy
y
y dy
μ
μ=
∫
∫
Xác định mặt người
11
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ờ.
1
1
.
M
l
l
l
M
l
l
h y
y
h
=
=
=
∑
∑
Xác định mặt người
12
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:
1/ 22 2 2 2 1max( ,0) min( ,0) max( ,0) min( ,0)x x y yij i j i j i j
i j
D T D T D T D T
F
− + − +⎡ ⎤+ + + =⎣ ⎦
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)
Và
1,i j i jxi j
T T
D T
h
−− −= 1,i j i jxi j
T T
D T
h
++ −=
, 1i j i jyi j
T T
D T
k
++ −= , 1i j i jyi j
T T
D T
k
−− −=
Xác định mặt người
13
3. Aù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))
( ) ⎟⎠⎞⎜⎝⎛ −−++= 22 )()()/1(*2)()(2
1)( ATBTFBTATXT
Xác định mặt người
14
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.
Xác định mặt người
15
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
Xác định mặt người
16
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:
Xác định mặt người
17
• 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.
Xác định mặt người
18
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= 2 2 2. ( / )r r r bC C C Cη− trong đó
η=
2(1/ )
0 .95
(1/ ) /
N Cr
N Cr Cb
× ∑∑ 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= 2(1/N) (Y-Y)∑
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:
Xác định mặt người
19
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:
l r l1 .4xME ME 0.6xME≥ ≥ .
9 Góc giữa miệng và mắt phải thỏa điều kiện sau: 0 035 80l rE ME≤ ≤ .
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.
Xác định mặt người
20
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)
Aù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 : Aùp dụng công thức chuyển đổi (I) và điều kiện
isSkin =
45 &&Y<252
Cb>-60 && Cb<10.3
Cr>10 && Cr<60
Y >⎧⎪⎨⎪⎩
Xác định mặt người
21
Dữ liệu ra: ⎩⎨
⎧
=
==
falseisSkinBlack
trueisSkinWhite
jiPixel ),(
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 đỏ: 1300&&2 2 >> CrCrb (đặc trưng vùng miệng)
Dữ liệu vào: Vùng mặt {minX<i<maxX, minY<j<maxY}
Tiế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: ⎩⎨
⎧
∈
∉=
holejiPixelBlack
holejiPixelWhite
jiPixel
),(
),(
),(
Xác định mặt người
22
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ở
Xác định mặt người
23
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
Xác định mặt người
24
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:
Xác định mặt người
25
Xác định mặt người
26
II. Xác định thành phần mắt-miệng và tách dính
1. Phương pháp lấy thành phần mắt-miệng của khuôn mặt:
Sau khi chúng ta đã có một vùng da người theo một không gian màu nói trên mà ở
trong luận văn này sử dụng không gian màu YcrCb. Việc xác định các thành phần
theo các bước sau:
Cách xác định thành phần khi đã có được ảnh ánh xạ từ ảnh màu:
Dù đã có một không gian màu tốt nhưng vẫn không tránh hết được những tình
huống nhiễu (do ánh sáng, do che lấp v.v). Do vậy để việc xác định thành phần
chính xác và đầy đủ chúng tôi phải áp dụng nhiều bước với các thông số so sánh chặt
chẽ để đảm bảo không bị sai lệch.
Bước một: (xác định được thành phần của 60% khuôn mặt trong ảnh)
Hướng tiếp cận: Xét tất của các vùng (nonface bounds) nếu xét cặp tam giác 3
vùng nếu cặp hai vùng nào đạt được sự cân bằng về hình thái sau thì sẽ được ưu tiên
hơn:
Xác định mặt người
27
Trong trường hợp có nhiều cặp thỏa mãn thì sẽ xét theo tỷ lệ xác xuất cho các
tiêu chuẩn để chọn căp tốt nhất: Tiêu chuẩn có thể gồm tỷ lệ so sánh với chiều dài,
chiều rộng của khuôn măt, độ lớn của các vùng v.v.
Cách xây dựng:
- Tạo một tập logic mờ với các tham số truyền vào là ba vùng:
LeftRegion, RightRegion và MouthRegion.
- Trên tập logic mờ này ta tính toán các thông số sau:
9 Tỷ lệ giữa khoảng cách hai mắt so với chiều rộng của khuôn
mặt (Dis/width).
9 Tỷ lệ giữa khoảng cách từ điểm trung tâm hai mắt đến miệng
so với chiều rộng của khuôn mặt (height/width).
9 Độ lớn của các vùng LeftRegion, RightRegion, MouthRegion
(Region.area).
Khuôn mặt thẳng Khuôn mặt Khuôn mặt
nghiêng trái nghiêng phải
Xác định mặt người
28
Thông số thứ nhất (Dis/width) (value1):
Thông số thứ hai (Height/width) (value2):
Thông số thứ ba (kích thước của các vùng) (value3):
Nếu vùng (Region) có kích thước lớn sẽ được gắn trọng số cao hơn trong công
thức tính xác xuất.
Cách tính xác xuất để chọn ra cặp tối ưu nhất:
4
3*5.12*5.11*1 valuevaluevalueP ++=
Xác định mặt người
29
Ở đây chúng tôi đánh giá cao tiêu chuẩn height/width và kích thước của các
vùng. Còn tiêu chuẩn dis/width không ổn định nếu khuôn mặt bị nghiêng dù chỉ với
góc nhỏ.
Hình minh họa
Các thành phần đã được xác định
Bước hai:
Hướng tiếp cận: Bước này dùng để xác định các thành phần trong trường hợp
một hay hai mắt đều bị dính vào biên.
Cách xây dựng: Ở trường hợp này phương pháp mà chúng tôi áp dụng là gióng
một đường vị trí của nó đảm bảo là vị trí có khả năng cao nhất là vị trí của thành
phần. Nếu tìm được ta sẽ đưa nó vào tập thành phần và áp dụng lại bước một để lấy
kết quả.
Xác định mặt người
30
Hình minh họa
Bước ba:
Hướng tiếp cận: trường hợp này ít xuất hiện hơn nhưng không phải là không
có: Đó là hai mắt trái và phải dính lại thành một vùng có kích thước rất lớn.
Cách xây dựng: xác định các điểm cùng trái và cùng phải của các vùng và xác
định ở các khoảng cách 1/4 và 3/4
Hình minh họa:
ù
2. Phương pháp tách dính:
Trong các ứng dụng xác định mặt người với ảnh màu, hai vấn đề luôn gây
phức tạp cho các thuật toán xác định tương ứng là: độ sáng không phù hợp và
các mặt người dính với nhau. Nói chung để nhận biết một vùng da có là dính
hay không thì rất khó. Vì vậy để có thể giải quyết vấn đề này chúng tôi đã
Trường hợp mắt phải, mắt trái dính nhau làm một
Xác định mặt người
31
tiến hành xây dựng một chuẩn chung là kết hợp thuật toán loang Fast
Marching với cách xác điểm loang theo nhóm điểm và áp dụng nó trên nhiều
ảnh dính. Kết quả đạt được là khá tốt và chính xác.
• Xác định điểm loang:
Qua logic mờ về kích thước của khuôn mặt, chúng tôi xây dựng một tập
các bán kính (radius) ứng với từng kích thước (size):
size ==SMALL||QUITE_SMALL radius=30
size ==RATHER_SMALL radius=35
size ==MEDIUM radius=40
size ==RATHER_BIG radius=45
size ==BIG radius=50
size ==QUITE_BIG radius=55
Thuật toán phân tách các nhóm các vùng:
Khởi tạo: Một mảng chứa các bound được chọn ra: checkedBound
Dữ liệu vào: Khuôn mặt (Face bound) và các thành phần (Nonface
bound) của khuôn mặt đó cùng với bán kính (radius)
Xử lí:
• Xét Nonface[0] và đưa Nonface[0] vào checkedBound.
• Xét các Nonface bound khác nếu khoảng cách nhỏ hơn
radius thì xem như đã check. Còn ngược lại thì đưa Nonface
mới đó vào checkedBound.
• Rồi tiếp tục dò tìm các các thành phần (nonFace bound)
khác tương tự như với Nonface[0].
Dữ liệu ra: Ta được tập checkedBound mà mỗi phần tử của nó đại diện
cho một nhóm hole.
• Xác định độ loang:
Độ loang của thuật toán Fast Marching là giá trị chặn trên của thuật
toán. Nghĩa là quá trình loang sẽ dừng khi tỷ lệ các điểm biên (là điểm
khi đã loang tới biên ngoài ) trên tổng số các điểm đã và đang xét vượt
quá độ loang.
Cách tiếp cận thông thường thì độ loang được xác định dựa vào kích
thước của khuôn mặt. Nhưng do bị nhiễu bởi việc có dính nhiều khuôn
Xác định mặt người
32
mặt hay không đã làm cho kích thước không đáng tin cậy do đó độ
loang cũng không đủ chính xác.
Vì lý do trên nên chúng tôi không dựa vào kích thước mà dựa vào
số các nhóm vùng (checkedbound) có được ở bước trước để xác định độ
loang. Nếu các nhóm càng ít thì hệ số loang càng cao (để đảm bảo
loang đủ khuôn mặt).
Hình minh họa
Chỉ có một khuôn mặt:
Nhiều khuôn mặt: (tách dính)
Xác định mặt người
33
III. Xây dựng luật mờ
Những luật logic mờ về quan hệ giữa mắt, mũi, miệng và chiều dài, chiều rộng
khuôn mặt:
Sau khi xác định được vị trí của các thành phần trong khuôn mặt, chúng ta tiến hành
xác định mối quan hệ giữa các thành phần đó xem có thỏa điều kiện là khuôn mặt
hay không. Các mối quan hệ giữa các thành phần dựa trên các luật logic mờ sau:
1. Xác suất làmột nếu điểm giữa của miệng nằm trên trục đối xứng của hai mắt
theo chiều dọc.
Xác định mặt người
34
2. Xác suất là một nếu khoảng cách giữa hai điểm giữa của mắt gấp hai lần
chiều rộng của mắt, chiều rộng của mắt bằng 2/10 chiều rộng của khuôn mặt
tại vị trí của mắt.
3. Xác suất là một nếu như chiều rộng của miệng tỉ lệ với chiều rộng của khuôn
mặt tại vị trí của miệng theo tỉ lệ 0.2:1 tới 0.65:1 (do chiều rộng của miệng có
thể khác nhau tùy vào trạng thái của khuôn mặt).
4. Xác suất là một nếu khoảng cách từ mắt tới biên của khuôn mặt bằng 2/10
chiều rộng của khuôn mặt.
5. Xác suất là một nếu khoảng cách từ biên trên của khuôn mặt tới mắt bằng
0.45:1 so với chiều cao của khuôn mặt.
6. Xác suất là một nếu khoảng cách từ biên trên của khuôn mặt tới mũi bằng
0.73:1 so với chiều cao của khuôn mặt.
7. Xác suất là một nếu khoảng cách từ biên trên của khuôn mặt tới miệng bằng
0.83:1 so với chiều cao của khuôn mặt.
8. Xác suất là một nếu khoảng cách từ mắt tới mũi bằng 0.27:1 so với chiều cao
của khuôn mặt.
9. Xác suất là một nếu khoảng cách từ mũi tới miệng bằng 0.27:1 so với chiều
cao của khuôn mặt.
10. Xác suất là một nếu khoảng cách từ mũi tới miệng bằng 1:1 so với khoảng
cách từ mắt tới mũi.
Sau khi có các xác suất này chúng ta tính xác suất của khuôn mặt dựa vào các luật
logic mờ dựa vào cộng thức sau:
*100%
k k
k
m w
p
m
=
∑
∑
Trong đó p là xác suất của khuôn mặt.
mk là xác suất của luật logic mờ thứ k.
kw là trọng số của luật logic mờ thứ k. Theo kinh nghiệm thì luật logic mờ thứ 10 có
trọng số là 2 còn các luật logic mờ khác có trọng số là 1.
Xác định mặt người
35
Chương 3: Cài đặt thực nghiệm và đánh giá
1. Những chức năng chính của chương trình:
1. Chức năng Detect Face: Đây là chức năng chủ yếu của chương trình dùng để
xác định khuôn mặt người trong ảnh. Chức năng này được xử lí qua nhiều bước
như xác định vùng da, lọc nhiễu xác tách dính, và cuối cùng là bao những
khuôn mặt tìm thấy được.
2. Chức năng Detect Components: Nút này chỉ Active sau khi đã xác định được
khuôn mặt.
3. Chức năng Restore: Chức năng dùng để phục hồi lại ảnh ban đầu sau khi thực
hiện chức năng detect.
4. Chức năng GetSkin: Chức năng này dùng để xác định những vùng nào trong
ảnh có màu da người.
2. Tổng kết:
a. Thống kê dựa trên dữ liệu:
Thống kê việc thực hiện xác định mặt người trên 469 ảnh khác nhau,kích cở
lớn không quá 786x550 ảnh, ta có kết quả như sau:
• Số khuôn mặt người thực theo nhận diện của con người là: 1859.
• Số khuôn mặt người xác định từ hệ thống là: 1587. Như vậy tỷ lệ xác
định đúng là trên 85%.
• Số lượng xác định nhầm là khá ít 35.
• Tỷ lệ xác định chính xác thành phần mắt miệng của một khuôn mặt là
90% (trung bình cứ 10 khuôn mặt thì có 9 khuôn mặt xác định được mắt
miệng).
• Độ lệch về vị trí mắt miệng của ảnh được xác định và ảnh gốc không
vượt quá 10 pixel.
• Có trung bình khoảng 50 trường hợp các khuôn mặt dính nhau trong
ảnh. Tỷ lệ tách dính thành công là 80%.
Xác định mặt người
36
• Thời gian thực hiện phụ thuộc vào kích thước ảnh, hệ điều hành và cấu
hình máy tính.
• Độ chính xác của hệ thống chỉ phụ thuộc vào chất lượng và độ khó của
ảnh.
Với kết quả đúng/sai như nhau, thời gian thực hiện trung bình trên các máy
tính khác nhau như sau:
Máy CPU RAM Hệ Điều Hành Thời Gian
Pentium III 866MHz 128 MB Windows XP 4.4 giây
Pentium IV 1.7 GHz 256 MB Windows XP 3.3 giây
Pentium IV 2,4 GHz 512 MB Windows Server 2000 1.6 giây
Ngoài ra khi sử dụng threading thời gian thực hiện đối với mỗi ảnh không ổn
định. Do đó sai số thời gian thực hiện được thống kê như sau:
• Mở và chạy 10 lần liên tục một ảnh.
• Chạy lại một ảnh thông qua lệnh restore 10 lần liên tục.
• Chạy các ảnh theo một thứ tự nhất định.
• Chạy các ảnh theo một thứ tự bất kỳ.
• Kết quả đúng sai không đổi.
• Sai số thời gian lớn nhất là 0.8 giây.
Một số kết quả bằng hình ảnh:
Hình đầu là ảnh gốc hình sau là ảnh sau khi được xử lý
Xác định mặt người
37
Trường hợp các vùng da tách biệt nhau
Trường hợp vùng da tách biệt nhau nhưng các khu vực mắt miệng dính vào biên:
Xác định mặt người
38
Trường hợp tách dính 4 khuôn mặt với nhau:
Xác định mặt người
39
Xác định mặt người
40
b. Đánh giá
-Ưu điểm:
• Ưu điểm của hệ thống này là có thể xác định chính xác hầu hết các khuôn
mặt có trong ảnh dù khuôn mặt có quay trong hay ngoài không gian ảnh.
• Có khả năng tách được nhiều khuôn mặt dính ngang và dọc.
Xác định mặt người
41
• Có thể dùng để phát triển trong việc nhận dạng khuôn mặt người cũng như
nhận ra được cảm xúc của khuôn mặt người dựa vào các thành phần trên
khuôn mặt (rất quan trọng cho các hệ thống giao tiếp người máy).
• Kế thừa những thành quả của công trình nghiên cứu trước cũng như có thể
phát triển thành những ứng dụng cao hơn, phức tạp hơn.
• Sử dụng công nghệ multi thread trong ngôn ngữ lập trình Java nên thời gian
xử lí nhanh hơn các hệ thống khác rất nhiều.
-Khuyết điểm:
• Bị phụ thuộc nhiều vào điều kiện ánh sáng do phải mô hình hóa màu da
người.
• Mô hình da người chưa tổng quát và có thể bị nhiễu bởi những màu gần
giống da người.
• Chưa đảm bảo được tách dính được tất cả trường hợp.
c. Hướng phát triển:
Hệ thống này có thể được hoàn thiện hơn dựa vào mô hình da người tổng
quát hóa hơn thông qua nghiên cứu của các nhà nhân trắc học. Bên cạnh
đó hệ thống viết bằng ngôn ngữ Java có thể chạy trên mọi môi trường hệ
điều hành cũng như những môi trường điện thoại di động, camera. Hệ
thống có thể kết hợp với những công trình ngiên cứu khác như nhận dạng
âm thanh, giọng nói, nhận dạng mặt người và công nghệ điện tử, tự động
để có thể phát triển thành những hệ thống trí tuệ nhân tạo phức tạp hơn và
có những ứng dụng thực tế cao hơn. Ngoài ra hệ thống nếu cải thiện tốc độ
xử lí nhanh hơn để có thể xử lí thời gian thực, từ đó ứng dụng được ngay
vào những hệ thống xử lí ảnh video hoặc ảnh động quay từ camera trong
các hệ thống quan sát, bảo vệ xử lí tự động.
Xác định mặt người
42
Tài liệu tham khảo
[1]. Kenji Iwata, Hitoshi Honggo, Kazuhiko Yamamoto, and Yoshinori Niwa, “Robust
Facial Parts Detection by Using Four Directional Feature and Relaxation
Matching” Gifu University, Japan.
[2]. M.Castrillon Santana, J.Lorenzo Navarro, J.Cabrera Gamez , “Detection of
Frontal Faces in Video Streams”, Instituto Universitario da Sistemas Inteligentes y
Applicationnes Numericas en Ingeniera (IUSIANI).
[3]. Kyongpil Min, Junchul Chun, and Goorack Prak, “A Nonparametric Skin Color
Model for Face Detection from Color Images”. Department of Computer Sciences.
[4]. Allan Hanbury, “Mathematical Morphology from Erosion to Watersheds”,
Venia University of technology, 9-1983.
[5]. Sanjay Kr.Singh.D.S.Chauhan,Mayank Vatsa,Richa Singh, “A Robust Skin Color
Based Face Detection Algorithm”, Tamkang Journal of Science and Engineering,
Vol6, Nõ,pp.227-234(2003).
[6]. Dai-Yun Li Wen-Hung Liao, “Facial feature detection in near-infrared
images”, Department of Computer Science, Natinal ChengchiUniversity, Taipei,
TAIWAN.
[7].Rein-Lien Hsu. “Face Detection in Color Images”, Department of Computer
Science & Engineering, Michigan State University, MI 48824, 19-4-2004.
[8]. Xiangping Wang and Xingming Zhang, “Gabor Wavelet-based Eyes and Mouth
Detection Algorithm”, Department of Computer Engineering and Science, South
China University of Technology.
[9]. Gary G Yen and Nethrie Nithianandan, “Automatic facial feature extraction
using edge distribution and genetic search”, School of Electrical and computer
enginerring Oklahoma State University, Stillwater, 2003.
Xác định mặt người
43
[10]. Saman Cooray and Noel O’Connor, “Facial feature extraction and principal
component analysis for face detection in Color Images”, Centre for digital vedio
Processing, Dublin City University, Ireland.
[11]. Gines Garcia-Mateos, Alberto Ruiz, “Face detection using integral projection
models”, University of Murcia, Spain.
[12]. Dale Brisinda, “Face Detection from Constituent Features and Energy
Minimizing Spring-Based Facial Templates”, Calgary, Albeta, Department of
computer science, 1998.
[13]. Shixiong Li, “Multiface Location in Color Image”, Concordia University,
Montreal, Quebec, Canada, 2002.
[14]. Yen-Yu Lin, Tyng-Luh Liu, and Chiou-Shanm Fuh, “Fast Objecy Detection
with Occlusions”, Inst.of Information Science, Academia Sinica, Nankang, Taipei
115, Taiwan.
[15]. Jin Ok Kim, Jin Soo Kim, Young Ro Seo, Bum Ro Lee, Chin Hyun Chung, Key
Seo Lee,Wha Young Yim, and Sang Hyo Lee, “On Extraction of Facial Features
from Color Images”, faculty of Multimedia, Daegu Haany University, Korea.
[16]. Ming-Hsuan Yang, Member, IEEE, David J.Kriegman, Senior Member, and
Narendra Ahuja, “Detection Faces in Images: A Survey”, IEEE transaction on
PatternAnalysis And Machine intelligence, January 2002.
[17]. Carlos Morimoto, Dave Koons, Amon Amir, Myron Flickner, “Real-Time
Detection of Eyes and Faces”, BM Almaden Research Center.
Các file đính kèm theo tài liệu này:
- xac_dinh_mat_nguoi_dua_vao_thanh_phan_khuon_mat_va_logic_mo_5416.pdf