Professional Documents
Culture Documents
Hà Nội - 2007
MỤC LỤC
MỞ ĐẦU ............................................................................................... 7
1 Chương 1 PHÁT BIỂU BÀI TOÁN .................................................... 9
1.1 Tổng quan và các khái niệm liên quan đến nhận dạng khuôn mặt ................................................ 9
1.1.1 Hệ thống sinh trắc học ....................................................................................................... 9
1.1.2 Hệ thống nhận dạng khuôn mặt .......................................................................................... 9
1.1.3 Hệ thống xác minh hay xác thực khuôn mặt là gì? ............................................................... 9
1.1.4 Hệ thống nhận dạng tĩnh - tĩnh, tĩnh - động, động - động.................................................. 10
1.1.4.1 Hệ thống nhận dạng tĩnh - tĩnh ................................................................................................... 10
1.1.4.2 Hệ thông nhận dạng tĩnh - động ................................................................................................. 10
1.1.4.3 Hệ thống nhận dạng động - động ................................................................................................ 10
1.1.5 Những thách thức trong bài toán nhận dạng khuôn mặt .................................................... 10
1.1.6 Sai số trong hệ nhận dạng [20]......................................................................................... 10
1.2 Các ứng dụng tương tác người máy (Human computer interactive) liên quan đến khuôn mặt ..... 11
1.3 Các hướng tiếp cận chính trong lĩnh vực nhận dạng khuôn mặt ................................................. 13
1.3.1 Các công trình nghiên cứu về phương pháp nhận dạng và kiểm chứng chất lượng cho một hệ
thống nhận dạng khuôn mặt ............................................................................................................. 13
1.3.2 Hướng tiếp cận được thử nghiệm trong luận văn............................................................... 15
3
4.1 Giới thiệu mô hình Makov ẩn ................................................................................................... 50
4.1.1 Mô hình Markov ............................................................................................................... 50
4.1.2 Mô hình Markov ẩn [19] .................................................................................................. 51
4.1.2.1 Xác suất của chuỗi quan sát ....................................................................................................... 52
4.1.2.2 Dãy trạng thái tối ưu .................................................................................................................. 54
4.1.2.3 Hiệu chỉnh các tham số của mô hình .......................................................................................... 55
4.1.2.4 Khoảng cách giữa các mô hình Markov ẩn ................................................................................. 55
4.1.3 Mô hình Markov ẩn và nhận dạng mặt người .................................................................... 58
4.1.3.1 Ý tưởng..................................................................................................................................... 58
4.1.3.2 Mô hình Markov ẩn biểu diễn ảnh mặt ....................................................................................... 59
4.1.3.3 Trích chọn đặc trưng.................................................................................................................. 60
4.1.3.4 Luyện mô hình mặt.................................................................................................................... 64
4.1.3.5 Nhận dạng khuôn mặt người trong ảnh ....................................................................................... 66
4.1.3.6 Tìm kiếm khuôn mặt người trong ảnh......................................................................................... 67
4.1.3.7 Các dạng của mô hình Markov ẩn trong mô tả khuôn mặt ........................................................... 69
4.2 Kết chương .............................................................................................................................. 70
4
DANH MỤC CÁC HÌNH
Hình 1-1. So sánh hai tác vụ nhận dạng khuôn mặt và xác nhận khuôn mặt ....................... 9
Hình 1-2. Hình biểu diễn hàm FRR và FAR ..................................................................... 11
Hình 2-1. Ảnh màu với da và kết quả của sự dò tìm da ................................................... 18
Hình 2-2. Mẫu da của mỗi người rất khác nhau............................................................... 19
Hình 2-3. Mẫu da bị ảnh hưởng bởi các loại nhiễu và biến dạng ..................................... 19
Hình 2-4. Những mạng SOM với những hệ thống khu lân cận ........................................ 21
Hình 2-5. Phân phối màu cho các màu da khác nhau ...................................................... 27
Hình 2-6. Biểu diễn mô hình màu da bằng phân phối Gauss ............................................ 27
Hình 2-7. Đường cong entropy của biểu diễn biến ngẫu nhiên......................................... 29
Hình 2-8. 4 điểm lân cận và 8 điểm lân cận ..................................................................... 30
Hình 2-9. Một ảnh mẫu từ tập phân phối thỏa mãn D, có năng lượng cực tiểu ................ 33
Hình 2-10. Hình (a): ảnh gốc, hình (b): Baseline, hình (c): HMM, .................................. 35
Hình 2-11. Khuôn mặt mẫu của Chang và Robles ............................................................ 39
Hình 2-12. Khuôn mặt mẫu tổng hợp ............................................................................... 39
Hình 2-13. Khuôn mặt mẫu được điều chỉnh kích thước................................................... 40
Hình 2-14. Khuôn mặt mẫu được xoay và điều chỉnh lại kích thước ................................. 40
Hình 4-5. Tính hội tụ của khoảng cách HMM khi độ dài chuỗi quan sát tăng .................. 58
Hình 4-6.(a) Mô hình ergodic 4 trạng thái (b) Mô hình trái - phải 4 trạng thái................ 59
Hình 4-7. Mô hình mặt 6 trạng thái ................................................................................. 60
Hình 4-8. Ảnh mặt và phương pháp trích chọn khối quan sát. .......................................... 61
Hình 4-9. Chiến lược huấn luyện mô hình Markov ẩn cho biểu diễn khuôn mặt ............... 66
Hình 4-10. Nhận dạng mặt sử dụng mô hình Marov ẩn .................................................... 67
Hình 4-11. Tìm kiếm khuôn mặt sử dụng mô hình Markov ............................................... 68
Hình 4-12. Mô hình Markov ẩn nhúng với 3 siêu trạng thái ............................................. 70
5
BẢNG CÁC TỪ VIẾT TẮT
6
0 MỞ ĐẦU
Ngày nay, cùng với những tiến bộ vượt bậc của khoa học kỹ thuật nói chung,
bộ môn khoa học xử lý ảnh đã và đang thu được những thành tựu lớn lao và chứng
tỏ vài trò không thể thiếu với những ứng dụng sâu rộng trong khoa học kỹ thuật
cũng như đời sống xã hội. Một bộ phận của khoa học xử lý ảnh là lĩnh vực thị giác
máy tính hiện đang thu hút rất nhiều sự quan tâm của các nhà nghiên cứu xử lý ảnh
với mục tiêu xây dựng nên một thế giới trong đó hệ thống thị giác kỳ diệu của con
người có thể được mô phỏng bởi các hệ thống máy tính, đem lại khả năng cảm nhận
bằng thị giác cho các hệ thống về môi trường xung quanh. Mơ ước về một hệ thống
máy tính có thể hoà nhập vào thế giới con người với đầy đủ các giác quan trong đó
thị giác đóng vai trò quan trọng đang dần dần được hiện thực hoá với những đóng
góp nghiên cứu của các nhà khoa học trên phạm vi toàn thế giới.
Đồng thời việc phát triển của các thiết bị phần cứng cả về phương diện thu
nhận, hiển thị, tốc độ xử lý đã mở ra nhiều hướng mới cho công nghệ xử lý ảnh. Nó
có thể giải quyết các bài toán như giám sát tự động phục vụ trong cơ quan, ngân
hàng, kho bạc, ... hoặc trong việc giám sát giao thông tự động, phục vụ tại bãi đỗ xe,
trạm thu phí tự động hoặc việc phát hiện và nhận dạng mặt người phục vụ trong
công tác quân sự, an ninh v.v... Đặc biệt trong lĩnh vực nhận dạng bằng sinh trắc
học, sau sự kiện 11/9/2001, việc nghiên cứu và đưa vào ứng dụng thực tế lĩnh vực
nhận dạng bằng sinh trắc đã được các nhà khoa học và chính phủ nhiều nước chú
trọng. Đơn cử có thể kể tới hệ thống kiểm soát (tự động) tại các cửa khẩu vào /ra ở
Mỹ, Úc, khối EU và ở một số nước châu Á (Singapore, Thái Lan, ...) đã xử dụng
thông tin sinh trắc vào trong quá trình kiểm soát xác định thật giả về giấy tờ và con
người. Cho đến nay, theo Tổ chức hàng không dân dụng thế giới - ICAO cho biết đã
có khoảng 34 quốc gia áp dụng việc đưa các thông tin sinh trắc vào hộ chiếu để
chống làm giả và dùng trong các của kiểm soát tự động tại biên giới. Trong đó,
thông tin ảnh mặt là một thông tin bắt buộc dùng để đối sánh và nhận dạng bởi tuy
các phương pháp nhận dạng bằng ảnh mặt thường cho chất lượng chưa cao bằng các
phương pháp sử dụng các đặc điểm sinh trắc khác như vân tay hoặc tròng mắt do
ảnh mặt thu nhận được thường bị ảnh hướng lớn của nhiễu, đặc biệt là môi trường
và chất lượng của các thiết bị thu nhận hình ảnh song ảnh mặt là một đặc điểm sinh
trắc mà ta có thể thu nhận một cách nhanh chóng và dễ dàng nhất (sử dụng các
camera quan sát tự động).
Tại Việt Nam, việc ứng dụng thông tin sinh trắc vào trong các giấy tờ (hộ
chiếu, chứng minh thư, ...) cũng đang được tích cực nghiên cứu để đưa vào ứng
dụng (hộ chiếu điện tử dự kiến sẽ được thử nghiệm trong năm 2008).
Từ những lý do trên, tôi đã chọn đề tài luận văn: “Tìm kiếm và nhận dạng
khuôn mặt người trong ảnh”.
7
Bố cục của luận văn gồm:
Chương 1: Phát biểu bài toán
Nêu lên một số khái niệm liên quan đến nhận dạng khuôn mặt; các ứng dụng
tương tác người máy liên quan đến nhận dạng khuôn mặt; điểm qua một số phương
pháp nhận dạng khuôn mặt được nghiên cứu và cải tiến trong thời gian gần đây.
Chương 2: Dò tìm khuôn mặt người trong ảnh màu
Giới thiệu một số phương pháp dò tìm khuôn mặt người dựa trên màu da.
Chương 3: Rút trích đặc trưng từ khuôn mặt người
Trình bày phương pháp phân tích các thành phần chính PCA (Principal
Component Analysis) rút trích đặc trưng từ ảnh bản đầu.
Chương 4: Mô hình Markov ẩn và ứng dụng nhận dạng khuôn mặt
Giới thiệu mô hình Markov ẩn, một số bài toán cơ bản của mô hình Markov
và ứng dụng mô hình trong nhận dạng khuôn mặt người.
Chương 5: Kết luận
8
1 Chương 1 PHÁT BIỂU BÀI TOÁN
1.1 Tổng quan và các khái niệm liên quan đến nhận dạng khuôn
mặt
1.1.1 Hệ thống sinh trắc học
Hệ thống sinh trắc học là một hệ thống được thiết kế để xác minh và nhận
dạng một người dựa vào những đặc trưng sinh học duy nhất của người đó.
1.1.3 Hệ thống xác minh hay xác thực khuôn mặt là gì?
Hệ thống xác minh/xác thực khuôn mặt là một hệ thống được thiết kế để xác
minh thông tin của một người. Kĩ thuật xác minh là kiểm tra sự phù hợp trên phép
so sánh một-một cụ thể là đối chiếu thông tin mới nhận về một người với thông tin
đã lưu trữ về người này có khớp hay không dựa trên thông tin khuôn mặt.
Hoàn toàn không biết thông tin Đã biết trước thông tin
Kết quả
Hình 1-1. So sánh hai tác vụ nhận dạng khuôn mặt và xác nhận khuôn mặt
9
1.1.4 Hệ thống nhận dạng tĩnh - tĩnh, tĩnh - động, động - động
1.1.5 Những thách thức trong bài toán nhận dạng khuôn mặt
Những biến đổi quá lớn giữa các ảnh khuôn mặt khác nhau từ một người cần
nhận dạng gồm trạng thái cảm xúc trên khuôn mặt, ánh sáng, và các thay đổi vị trí
của khuôn mặt..vv.
Giới hạn về số ảnh cần thiết cho việc nhận dạng, tập học không thể bao quát
được tất cả các biến đổi có thể có trên khuôn mặt của một người cần nhận dạng
trong thế giới thực.
10
Sai số bắt nhầm – FAR (False Acceptance Rate) có tài liệu gọi là FMR
(False Match Rate)
Sai số bỏ sót – FRR (False Reject Rate) có tài liệu gọi là FNMR (False
Non Match Rate)
Độ chính xác – TAR (True Accpetance Rate) là dẫn xuất của FRR
TAR = 1 - FRR
FAR và FRR là hàm số của t – ngưỡng xét trùng
FAR(t)
FRR(t)
ERR là điểm mà FRR = FAR
11
sản xuất kinh doanh, thương mại, tài chính, ngân hàng, ... Trong thời gian không xa,
chi phí cho các thiết bị này sẽ giảm đáng kể. Khi đó sẽ mở ra nhiều hướng nghiên
cứu về thị giác máy tính, đồng thời sẽ có nhiều ứng dụng trong giao tiếp giữa người
với máy tính mà trong đó hệ thống nhận dạng mặt người đóng một vai trò không
nhỏ. Dưới đây là một số ứng dụng.
Các ứng dụng chuyên biệt cho ngành hàng không
Đảm bảo sự truy cập và tính hợp lệ trong công việc cho từng nhân viên:
Mỗi nhân viên làm việc tại cảng hàng không cũng như nhân viên phi hành
đoàn được cung cấp quyền truy cập để đến vị trí làm việc. Làm thế nào để
xác minh nhân viên này vào đúng khu vực làm việc hay không?
Làm sao để đảm bảo trong số những hành khách không có sự trà trộn của
một số kẻ khủng bố/tội phạm quốc gia/ quốc tế?
Bảo vệ trẻ em ở nhà trẻ từ bọn bắt cóc
Quy định rằng, chỉ có những nhân viên của nhà trẻ mới được phép dẫn trẻ
em ra ngoài và trao tận tay cho bố mẹ đón về. Nhưng trong xã hôi cũng có
một số trường hợp giả danh nhân viên để bắt cóc trẻ em với mục đích xấu.
Làm thể nào để ngăn chặn hành vi xấu này?
Nhận dạng khuôn mặt được sử dụng kèm với thẻ quy cập
Trong các nước phát triển, hầu như mọi người dân đều dùng thẻ tín dụng
để mua bán, rút tiền, trao đổi hàng hóa. Điều này rất nguy hiểm khi thẻ truy
cập này bị người khác nhặt được hay biết được mật khẩu của sở hữu thẻ này?
Làm cách nào có thể bảo đảm an toàn nhất?
Có thể dùng song mật khẩu: Có nghĩa sử dụng khuôn mặt như là một
mật khẩu thứ hai để truy cập vào hệ thống cùng với thông tin từ card truy
cập. Để rút được tiền
• Đưa thẻ vào hệ thống
• Đưa khuôn mặt vào để nhận dạng
• Xác minh người này có phải là chủ sở hữu của thẻ hay không?
Nếu khớp thì hệ thống cho rút tiền
Nếu không thì hệ thống không cho rút tiền.
Kinh doanh thương mại điện tử
Với sự tiến bộ của khoa học công nghệ, nhiều hình thức kinh doanh
thương mại xuất hiện, đặc biệt là thương mại điện tử. Việc buôn bán và trao
đổi giữa hai bên đối tác không cần diễn ra trực tiếp (mặt đối mặt), mà chỉ cần
qua mạng với hình ảnh của người đại diện. Tuy nhiên bên cạnh đó sẽ có
nhiều mặt tiêu cực trên hình thức kinh doanh này, đó là các vụ lừa đảo, giả
mạo, giả danh.v..v... Làm sao để biết được đối tác của mình là thật hay giả?
12
Ngăn chặn việc xuất/nhập cảnh bất hợp pháp
Một số người không được xuất/nhập cảnh vào nước, song họ cố tình khai
gian giấy tờ để xuất/nhập cảnh bất hợp pháp. Làm sao để ngăn chặn được sự
gian lận này?
Lần dấu vết đi tìm kẻ khủng bố
Từ những bức ảnh số hay những đoạn video số đã được ghi lại tự động về
hiện trường trước khi vụ khủng bố xảy ra. Cần nhận dạng những đối tượng
khả nghi của vụ khủng bố này?
Hệ thống giám sát công nhân và chấm công tự động
Hiện nay trong các khu công nghiệp hay những công ty sản xuất lớn có
hàng ngàn công nhân vào ra mỗi ngày nên việc giám sát kẻ gian vào công ty
cũng như công việc chấm công rất phức tạp. Vậy làm thế nào để nhận ra
từng nhân viên của công ty.
Tóm lại: Nhu cầu sử dụng các hệ thống xử lý dùng trí tuệ nhân tạo ngày càng phát
triển, mà trong đó nhận dạng khuôn mặt để mã hóa mật khẩu cá nhân là một nhu
cầu thiết yếu hiện nay và trong tương lai. Đặc biệt vụ khủng bố ngày 11-9-2001 tại
Mỹ đã đánh dấu một bước ngoặc mới trong xu hướng nghiên cứu và giá trị thương
mại của các hệ thống sinh trắc học ứng dụng trong quân sự và an ninh.
1.3 Các hướng tiếp cận chính trong lĩnh vực nhận dạng khuôn mặt
1.3.1 Các công trình nghiên cứu về phương pháp nhận dạng và kiểm chứng
chất lượng cho một hệ thống nhận dạng khuôn mặt
Bài toán nhận dạng khuôn mặt cần xác định hai vấn đề chính: dùng thông tin
nào để nhận dạng: chân mày, cặp mắt, mũi, môi, tai, hay kết hợp các thông tin trên.
Và dùng phương pháp nào để huấn luyện cho máy nhận dạng dùng nguồn thông tin
đó. Nhận dạng khuôn mặt trên máy tính đã trải qua nhiều bước thăng trầm, chúng ta
có thể liệt kê một số kết quả như sau:
Wenyi Zhao, Arvindh Krishnaswamy, Rama Chellappa, Danie L.Swets, John
Weng (1998)[4] sử dụng phương pháp PCA (phân tích thành phần chính) kết hợp
LDA (phân tích độc lập tuyến tính). Bước 1, chiếu ảnh khuôn mặt từ không gian
ảnh thô sang không gian các không gian khuôn mặt (Mỗi lớp khuôn mặt được nhận
dạng sẽ được mô hình hóa bằng một không gian khuôn mặt) dùng PCA. Bước 2, sử
dụng phương pháp LDA để tạo bộ phân loại tuyến tính có khả năng phân lớp các
lớp khuôn mặt.
John Daugnman (1998), đưa ra phương pháp dùng đặc trưng về tròng của
mắt để phân biệt cặp (trai/gái) song sinh.
Emmanuel Viennet và Francoise Fogelman Soulie (1998), sử dụng phương
pháp mạng neural nhân tạo để xử lý và nhận dạng khuôn mặt.
13
Antonio J.Colmenarez và Thomas S.Huang (1998),[5] sử dụng kỹ thuật học
thị giác và phù hợp mẫu 2-D. Ông quan niệm bài toán dò tìm khuôn mặt là thao tác
phân loại khuôn mặt trong đó khuôn mặt thuộc về một lớp và các đối tượng khác
thuộc về lớp còn lại bằng cách ước lượng mô hình xác suất cho mỗi lớp, và việc dò
tìm sử dụng luật quyết định Maximum-likelihood.
Kazunori Okada, Johannes Steffens, Thomas Maurer, Hai Hong, Egor
Elagin, Hartmut Neven, and Christoph (1998),[6] nhận dạng khuôn mặt dựa vào
sóng Gabor và phương pháp phù hợp đồ thị bó. Với ý tưởng dùng đồ thị để biểu
diễn khuôn mặt, ảnh khuôn mặt được đánh dấu tại các vị trí đã được xác định trước
trên khuôn mặt, gọi các vị trí này chính là các vị trí chuẩn. Khi thực hiện thao tác so
khớp đồ thị với một ảnh, các điểm chuẩn (Jets) sẽ trích ra từ ảnh và so sánh các
điểm chuẩn này với tất cả các điểm chuẩn tương ứng trong các đồ thị khác nhau, và
đồ thị nào phù hợp nhất với ảnh sẽ được chọn.
Baback Moghaddam và Alex Pentland (1998) [7], đưa ra phương pháp phù
hợp thị giác trực tiếp từ các ảnh cần sử dụng cho mục đích nhận dạng khuôn mặt và
dùng độ đo xác suất để tính độ tương tự.
Massimo Tistaelli và Enrico Grosso (1998) [8], đưa ra kỹ thuật thị giác động.
Vì khả năng quan sát các chuyển động của khuôn mặt và xử lý các tình huống theo
dự định là thông tin rất quan trọng, từ đó nhận được mô tả đầy đủ hơn về khuôn mặt
cho mục đích thu thập mẫu và nhận dạng.
Jeffrey Huang, Chengjun Liu, và Harry Wechsler (1998)[9], đề xuất thuật
toán căn cứ trên tính tiến hóa (Evolutionary computation) và di truyền (Genetic) cho
các tác vụ nhận dạng khuôn mặt. Đối với cách tiếp cận này, hai mắt sẽ được dò tìm
trước tiên và thông tin này được xem là vết để quan sát khuôn mặt, trình xử lý dò
tiếp mắt bằng cách sử dụng một thuật toán lai để kết hợp thao tác học và tiến hóa
trong quá trình học.
Daniel Bgraham và Nigel M Allinson (1998)[10], sử dụng phương pháp
được gọi là tạo bản sao không gian đặc trưng để biểu diễn và nhận dạng hướng di
chuyển của khuôn mặt.
Oi Bin Sun, Chian Prong Lam và Jian Kang Wu (1998)[11], sử dụng phương
pháp tìm vùng hai chân mày, hai mắt, mũi, miệng và cằm. Ảnh khuôn mặt thẳng
ban đầu được chiếu theo chiều ngang để tìm các giá trị điểm ảnh thỏa ngưỡng cho
trước, đồ thị biểu diễn theo trục ngang sẽ định vị trí biên trên và biên dưới của hình
chữ nhật bao các đặc trưng cục bộ khuôn mặt. Tương tự với chiều đứng để tìm ra
đường biên bên trái và phải cho các vùng đặc trưng.
Ara V.Nefian và Monson H.Hayes III (1998) trình bày hướng tiếp cận theo
mô hình Markov ẩn (HMM) trong đó ảnh mẫu khuôn mặt được lượng hóa thành
chuỗi quan sát trên khuôn mặt theo quan niệm dựa trên thứ tự xuất hiện các đặc
trưng khuôn mặt {hai chân mày, hai lông mi, mũi, miệng, cằm}. Trong chuỗi quan
sát đó, mỗi quan sát lại là một vector nhiều chiều và mỗi vector quan sát này được
14
sử dụng để đặc trưng cho mỗi trạng thái trong chuỗi trạng trạng thái của HMM. Mỗi
người được ước lượng bằng một mô hình của HMM.
Guodong Guo, Stan Z.Li, Kap Luk Chan (2001), dùng phương pháp SVM để
nhận dạng khuôn mặt. Sử dụng chiến lược kết hợp nhiều bộ phân loại nhị phân để
xây dựng bộ phân loại SVM đa lớp.
1.3.2 Hướng tiếp cận được thử nghiệm trong luận văn
Trong đề tài đi vào tìm hiểu phương pháp nhận dạng dùng HMM; tìm hiểu
phương pháp PCA (phân tích thành phần chính) để trích chọn đặc trưng từ ảnh.
Việc cô lập khuôn mặt trong ảnh đầu vào (ảnh chứa khuôn mặt) được thực
hiện với phương pháp dò tìm dựa trên màu da kết hợp với mô hình Markov ẩn.
15
2 Chương 2 DÒ TÌM KHUÔN MẶT TRONG ẢNH MÀU
2.1 Giới thiệu
Dò tìm đối tượng là bài toán cơ bản và quan trọng trong lĩnh vực thị giác
máy tính. Các kỹ thuật đã được áp dụng có thể chia thành một trong hai tiếp cận: so
khớp các mô hình hình học hai, ba chiều vào ảnh [Seutens at al., 1992, Chin và
Dyer, 1986, Besl và Jain, 1985], hay phương pháp so khớp các mô hình khung vào
ảnh có chứa khuôn mặt cần dò tìm. Các nghiên cứu trước đây cho thấy rằng các
phương pháp dựa trên khung nhìn có thể dò tìm các khuôn mặt thẳng trong nền
phức tạp một cách hiệu quả.
Việc phát triển bộ dò tìm đối tượng dựa trên khung nhìn dùng máy học có ba
vấn đề chính. Thứ nhất, ảnh của các đối tượng (chẳng hạn khuôn mặt) biến đổi
nhiều, tuỳ thuộc vào độ sáng, tình trạng che lấp, tư thế, biểu hiện khuôn mặt và tính
giống nhau. Thuật toán dò tìm giải quyết với càng nhiều biến đổi càng tốt. Thứ hai,
một hay nhiều mạng neural được huấn luyện để giải quyết với mọi biến đổi còn lại
trong việc phân biệt đối tượng (object) với không phải đối tượng (non-object). Thứ
ba, đầu ra từ các bộ dò tìm phải được kết hợp lại thành một quyết định có biểu diễn
đối tượng hay không.
Hai bài toán dò tìm và nhận dạng đối tượng có liên quan mật thiết. Hệ thống
nhận dạng đối tượng có thể xây dựng mà không có tập bộ dò tìm đối tượng, mỗi bộ
dò tìm dò một đối tượng quan tâm. Tương tự, bộ dò tìm đối tượng có thể được xây
dựng mà không có hệ thống nhận dạng đối tượng; bộ nhận dạng đối tượng này cần
phân biệt đối tượng mong muốn với mọi đối tương khác có thể xuất hiện hay là lớp
đối tượng chưa biết. Do đó hai bài toán là như nhau, dù trong thực hành hầu hết các
hệ thống nhận dạng đối tượng ít khi giải quyết nền tuỳ ý, và các hệ thống dò tìm đối
tượng ít khi được huấn luyện trên đủ loại đối tượng để xây dựng hệ thống nhận
dạng. Điểm chú trọng khác nhau của các bài toán này dẫn đến các trình bày và thuật
toán khác nhau.
Thông thường, các hệ thống nhận dạng khuôn mặt làm việc bằng cách trước
hết áp dụng bộ dò tìm khuôn mặt để định vị khuôn mặt, sau đó áp dụng thuật toán
nhận dạng để nhận diện khuôn mặt.
Bài toán dò tìm khuôn mặt nhanh trên ảnh là bài toán quan trọng vì là quá
trình nhận dạng đối tượng sẽ thiếu chính xác nếu như thiếu bước dò tìm và định vị
được đối tượng. Bài toán dò tìm khuôn mặt nhanh có ý nghĩa rất quan trọng trong
việc nhận dạng, theo vết các đối tượng chuyển động trong các đoạn video hay
camera.
16
tập ảnh đối tượng phức tạp sẽ làm tăng độ khó của bài toán và có thể tăng số lỗi dò
tìm.
Giả sử ta muốn dò khuôn mặt nghiêng trong mặt phẳng ảnh, ngoài các khuôn
mặt thẳng. Việc thêm các khuôn mặt nghiêng vào tập các ảnh ta muốn dò tìm làm
tăng độ biến thiên của tập, và có thể làm tăng độ phức tạp của đường biên quyết
định của tập ảnh. Độ phức tạp này làm bài toán dò tìm khó hơn. Việc thêm ảnh mới
vào tập ảnh đối tượng có thể làm đường biên quyết định đơn giản hơn và dễ học
hơn. Có thể tưởng tượng điều này là đường biên quyết định được làm trơn bằng
việc thêm các ảnh vào tập.
Có nhiều nguồn biến đổi trong bài toán dò tìm đối tượng, và cụ thể trong bài
toán dò tìm khuôn mặt. Có các nguồn biến đổi sau.
Biến đổi trong mặt phẳng ảnh: loại biến đổi ảnh khuôn mặt đơn giản nhất có
thể được biểu diễn độc lập với khuôn mặt, bằng cách quay, dịch chuyển, biến
đổi tỷ lệ và soi gương ảnh.
Biến đổi độ sáng và ngữ cảnh: biến đổi do đối tượng và môi trường gây ra,
cụ thể các thuộc tính bề mặt của đối tượng và các nguồn sáng. Các thay đổi
về nguồn sáng nói riêng có thể biến đổi hoàn toàn vẻ bề ngoài của khuôn
mặt.
Biến đổi nền: Trong luận văn của mình, Sung cho rằng với kỹ thuật nhận
dạng mẫu hiện nay, tiếp cận dựa trên khung nhìn để dò tìm đối tượng chỉ
thích hợp cho các đối tượng có “đường biên ảnh có thể dự đoán được”. Khi
đối tượng có hình dáng dự đoán được, ta có thể trích ra window chỉ chứa các
pixel bên trong đối tượng, và bỏ qua nền.
Biến đổi hình dáng: với khuôn mặt, loại biến đổi này bao gồm biểu lộ tình
cảm khuôn mặt, miệng và mắt mở hay đóng, và hình dáng khuôn mặt của
từng người.
Tuy nhiên, nếu việc dò tìm được tiến hành trên các đoạn video hay camera ta
có thể áp dụng các phương pháp xử lý các khung hình liên tục cùng một lúc như
theo vết đối tượng, trừ ảnh v..v…
2.1.2 Một số hướng tiếp cận thường được dùng trong dò tìm khuôn mặt
nhanh
Hướng dò tìm khuôn mặt trên ảnh màu dựa trên sự phân tích màu sắc của
vùng da. Mặc dù việc xử lý khá nhanh nhưng hướng này có giới hạn chỉ xử
lý trên ảnh màu và thường nhạy cảm với ánh sáng, thường chỉ sử dụng làm
các bước tiền xử lý cho các hướng khác.
Hướng dò tìm khuôn mặt dựa trên đặc trưng chủ yếu dựa vào các đặc trưng
của khuôn mặt người được quy định trước. Thành công nhất trong dò tìm
17
khuôn mặt người trong thời gian thực là phương pháp ASM (Active shape
Models).
Hướng dò tìm khuôn mặt dựa trên thông tin hình ảnh gồm mạng nơron, các
hướng thông kê (SVM, AdaBoost, …). Phương pháp SVM và mạng nơ ron
cũng đạt được kết quả cao trong thời gian khá nhanh song cũng chỉ vài ảnh
trong một giây nên khó có thể áp dụng trong việc nhận dạng thời gian thực.
Riêng phương pháp AdaBoost cho kết quả khả quan vì có thể xử lý đến
khoảng 15-20 khung hình trong một giây.
2.2 Tìm kiếm khuôn mặt người trong ảnh dựa trên màu da
2.2.1 Giới thiệu [16]
Sự dò tìm da chính là phát hiện những điểm da con người từ một hình ảnh
màu. Đầu ra hệ thống là một hình ảnh dưới dạng nhị phân trên cùng lưới điểm như
hình ảnh đầu vào với 1 biểu thị cho da và 0 biểu thị cho nền. Hình 2.1 cho thấy một
hình ảnh màu đầu vào và một ảnh đầu ra kết quả của sự dò tìm da.
Sự dò tìm da đóng một vai trò quan trọng trong nhiều ứng dụng như sự dò
tìm mặt, sự tìm kiếm và lọc nội dung ảnh trên mạng, sự phân đoạn vi đi ô và giám
sát tự động, ...
Tuy nhiên sự dò tìm da không phải là một nhiệm vụ dễ. Trước hết, màu da
của mỗi người có thể rất khác nhau. Trong hình 2.2, có người da trắng, người Châu
Phi và người Chấu Á, … Hơn nữa, một khi những hình ảnh được thu nhận với
những thiết bị có đặc điểm kỹ thuật khác nhau dưới nhiều điều kiện, chúng tùy
thuộc vào tất cả các loại nhiễu và sự biến dạng. Hình 2.3 cho thấy vài ví dụ.
18
Hình 2-2. Mầu da của một số chủng tộc người khác nhau
Hình 2-3. Mẫu da bị ảnh hưởng bởi các loại nhiễu và biến dạng
Một hệ thống dò tìm da thì không bao giờ hoàn hảo và những người dùng
khác nhau sử dụng tiêu chuẩn khác nhau cho sự đánh giá.
19
2.2.2.1 Mô hình hóa da
Mục đích của việc mô hình hóa da là xây dựng cho một quy tắc quyết định
những điểm da từ những điểm không phải da. Công việc này có thể chia thành hai
vùng chính: mô hình không tham số và mô hình tham số.
Mô hình da không tham số
Kết quả của những phương pháp này đôi khi được viện dẫn như xây dựng
bản đồ xác suất da, một xác suất đánh giá từng điểm trong mô tả không gian màu.
Những mô hình Bayesian dựa vào histograms
Trong [17] [3] các tác giả mô hình những màu da và không da thông qua
histograms. Họ chia không gian mầu C thành số các bin c C và đếm số điểm ảnh
mầu trong mỗi bin Nskin(c) đại diện cho lớp da và N skin đại diện cho lớp không phải
da. Cuối cùng, họ bình thường hóa mỗi bin để có phân phối p(c|skin)/p(c|skin). Để
cho Nskin biểu thị số những điểm da và Nskin biểu thị số những điểm không da trong
tập huấn luyện, chúng ta có:
N skin (c)
p(c | skin) (2.1)
N skin
N skin (c)
p(c | skin) (2.2)
N skin
cũng như
N skin
p( skin) (2.3)
N skin N skin
N skin
p(skin) 1 p( skin) (2.4)
N skin N skin
Công thức Bayesian đánh giá xác suất da/không da theo màu của điểm đã cho:
p(c | skin) p( skin)
p( skin | c) (2.5)
p(c | skin) p( skin) p(c | skin) p(skin)
p(skin) 1 p(skin | c) (2.6)
Việc đưa ra quyết định được dựa trên một ngưỡng , 0 < < 1. Điểm được gọi
là điểm da nếu p(skin|c) > và ngược lại điểm không phải là da nếu p(skin|c) ≤ .
20
sử dụng không gian màu hai chiều nên m = 2. Mạng có thể là hình chữ nhật hoặc
lục giác. Hình 2.4 cho thấy những ví dụ của cả hai dạng cũng như khu lân cận của
những nút trung tâm.
Hình 2-4. Những mạng SOM với những hệ thống khu lân cận [2]
Trong thứ tự để huấn luyện SOM, chúng ta giới thiệu những vectơ huấn
luyện tuần tự tới tất cả các nơron trong mạng. Mỗi lúc vectơ đầu vào v được gửi vào
trong SOM, một nơron vw thắng cuộc được xác định bởi
|| vw v || || vi v ||, i I (1.7)
trong đó, I là tất cả các chỉ số của các nơron trong mạng. Những nơron trong
khu vực lân cận thì điều chỉnh các vector v của chúng theo một hàm học. Trong khi
sự huấn luyện tiến triển, nhịp độ học và kích thước khu lân cận bị tác động làm cả
hai giảm bớt. Mạng dần dần hình thành một ánh xạ có trật tự tôpô (hoặc có đặc tính
bản đồ) của dữ liệu huấn luyện. Nếu cần thiết, một pha định kích cỡ rồi đánh dấu,
nơi được gắn nhãn dữ liệu huấn luyện thì tuần tự được giới thiệu tới SOM. Nhãn dữ
liệu và chỉ số của nơron thắng cuộc được ghi mỗi thời gian. Mỗi nơron rồi được gán
một nhãn nào đó. Cho sự phân loại, mỗi nơron đầu vào chỉ cần nắm lấy nhãn của
nơron thắng cuộc. Brown chọn mạng lục giác và kích thước của mạng là khoảng 16
- 256. Họ chỉ ra rằng sự thực hiện của SOM ở lề tốt hơn sự pha trộn Gaussian,
trong khi thấp hơn những phương pháp trên histogram.
Điểm tốt là nó tiêu thụ ít tài nguyên hơn những phương pháp dựa trên
histogram và có thể được thực hiện trong phần cứng SOM nhanh và rẻ.
Những lợi thế của những phương pháp không tham số:
Chúng nói chung nhanh trong cả sự huấn luyện và kiểm tra;
21
Phương pháp không quan tâm hình dạng những phân phối nằm bên dưới
của dữ liệu huấn luyện, như vậy chúng ít ràng buộc hơn trong việc lựa chọn
không gian màu.
Tuy nhiên những mô hình này nói chung cần số lượng lớn của không gian
lưu trữ và thiếu khả năng chèn thêm hoặc khái quát hóa dữ liệu huấn luyện.
Để giảm số bin dùng để lưu trữ mỗi biểu đồ da/không da, người ta đã đề xuất
giảm bớt số của những bin bằng cách đơn giản hóa không gian màu. Ví dụ, nếu ta
chọn không gian mầu RBG (C = {0,...,255}3), chúng ta cần 224 bin để cất giữ mỗi
biểu đồ da / không da. Người tra đã chỉ ra rằng chỉ cần dùng 323 bin là đủ để thể
hiện các biểu đồ da/không da trong không gian màu RGB.
Mô hình da tham số
Những mô hình tham số thì cần ít không gian lưu trữ hơn nhiều so với các
mô hình không tham số. Chúng thể hiện tính đều đặn của những phân phối và cho
phép phân tích về sau. Chúng có khả năng chèn thêm dữ liệu huấn luyện khi nó thưa
thướt. Những hàm khác nhau có thể được áp dụng theo những vấn đề đặc biệt.
Gaussian đơn
Phân phối màu da những mô hình Gaussian đơn với một hàm mật độ xác
suất Gaussian (pdf) :
1 1
exp (c skin )T skin (c skin ) (1.8)
1
p(c | skin)
2 skin 2
1/ 2
với skin là sự chờ đợi và skin là ma trận hiệp phương sai của các vector màu
da.
Chúng có thể được đánh giá từ những mẫu huấn luyện sau:
1
skin N skin (c)c
N skin cC
(1.9)
1
skin
N skin 1
N
cC
skin (c)(c skin )(c skin )T (1.10)
P(c|skin) có thể được sử dụng như xác suất c thuộc về da. Hoặc chúng ta chỉ
cần phát sinh mô hình khác cho lớp không da và sử dụng công thức Bayesian để có
p(skin|c).
Gaussians kết hợp
Mô hình Gaussian kết hợp là một mở rộng của Gaussian đơn, nó có khả năng
đại diện nhiều phân phối phức tạp hơn. Pdf dưới sự pha trộn của Gaussians được
tính như sau:
22
k
p(c | skin) i pi (c | skin) (1.11)
i 1
trong đó, pi là những nhân của Gaussian được định nghĩa trong (1.8), từng
cái của chính nó là một phân phối Gaussian, k là số nhân của Gaussian, i trọng
lượng tương ứng là nhân mà cộng lên tới 1. Chúng ta có thể xây dựng mô hình pha
trộn cho lớp không da tương tự.
Mô hình ranh giới hình bầu dục
Mô hình ranh giới hình bầu dục là mức trên của mô hình Gaussian đơn và sự
pha trộn của Gaussians. Động lực của mô hình này là mặt nghiêng của phân phối
da. Để tính toán cho hình dạng thật của phân phối da, mà xấp xỉ là một hình ê-líp từ
sự quan sát của những mẫu huấn luyện, Lee và Yoo đề xướng để phân ra những
vùng màu da và không da bởi một ranh giới hình bầu dục. Mô hình được định nghĩa
như sau:
(c) (c )T skin (c )
1
(1.12)
trong đó, và skin sẽ được đánh giá từ tập hợp điểm da huấn luyện. Trước
ước lượng tham số, những người ngoài được loại bỏ từ tập huấn luyện trước hết, mà
là 0 - 5% của sự huấn luyện các mẫu màu da với tần số thấp và được giả thiết là
nhiễu và dữ liệu không đáng kể. Những tham số được đánh giá bởi:
1
Cskin
c
cCskin
(1.13)
1
skin
N skin
N skin (c)(c skin )(c skin )T (1.14)
trong đó, |Cskin| là số phần tử trong tập hợp màu da Cskin, Cskin C. skin là sự
chờ đợi của những vector màu da huấn luyện được định nghĩa trong (1.9). Quy tắc
quyết định đơn giản là so sánh (c) với một ngưỡng được chọn : c là da nếu C là
da nếu (c) < và không phải da nếu ngược lại. Các tác giả đã thử mô hình này
trên 6 không gian màu và qua nhiều thí nghiệm cho thấy mô hình này tốt hơn
Gaussian và Gaussian kết hợp.
Một hạn chế nhỏ của mô hình này là nó có thể chỉ đưa cho quyết định nhị
phân, có nghĩa rằng nó thiếu thông tin liên tục do xác suất cung cấp hàm mật độ.
23
tộc người khác nhau. Điều này chứng tỏ rằng cấu trúc màu sắc của da người khác
nhau rất ít giữa những người khác nhau.
RGB
Một trong những mô hình màu được sử dụng nhiều nhất để mô hình màu sắc
da người là biểu diễn RGB trong đó những màu khác nhau được xác định bằng sự
kết hợp của ba thành phần màu cơ bản là đỏ, xanh lục và xanh lơ. Khi sự thay đổi
chính của thể hiện màu da là do biến đổi độ chói gây nên, biểu diễn màu chuẩn hoá
được sử dụng do đó có thể xác định được các thay đổi về độ chói. Hệ màu được
chuẩn hoá này có thể xác định được từ các thành phần RGB ban đầu:
R
r
RG B
G
g
RG B
B
b
RG B
Từ các công thức tính trên, ta nhận ra r g b 1 . Hệ màu chuẩn hoá do đó
có thể được biểu diễn hiệu quả thông qua hai thành phần r và g trong khi thành phần
b có thể đạt được thông qua công thức b 1 r g .
Trong phân tích màu da người, biểu đồ phân bố dựa trên hai thành phần r và
g chỉ ra rằng màu khuôn mặt chỉ chiếm một vùng nhỏ trên biểu đồ. Bằng cách so
sánh các thông tin màu của một điểm ảnh lần lượt với các giá trị r và g trong vùng
đó, ta có thể tính toán được khả năng điểm ảnh đó thuộc về vùng da người.
Bên cạnh mô hình màu RGB, có một số mô hình màu khác hiện đang được
sử dụng trong nghiên cứu tìm kiếm khuôn mặt người. Biểu diễn mô hình màu HIS
đã chứng minh tính ưu điểm so với các mô hình khác khi chỉ ra sự khác biệt lớn
giữa các nhóm đặc tính màu da. Vì vậy, mô hình màu này được sử dụng để trích
chọn các đặc tính mặt như mắt, môi và lông mày. Khi sự biểu diễn hình ảnh liên
quan ngày càng chặt chẽ đến sự cảm thụ màu sắc của con người thì mô hình màu
này ngày càng được sử dụng rộng rãi trong các chiến lược phân vùng mặt.
Mô hình màu YIQ cũng được sử dụng trong tìm kiếm khuôn mặt người. Khi
chuyển các màu trong mô hình RGB sang biểu diễn YIQ, có thể nhận thấy thành
phần màu I, bao gồm dải màu từ màu vàng cam đến màu lục lam làm nổi bật vùng
da của người châu á. Sự chuyển đổi hệ màu này xoá đi hiệu quả các vùng màu nền
và cho phép xác định các vùng mặt nhỏ trong môi trường tự nhiên.
Các mô hình khác cũng được sử dụng trong tìm kiếm khuôn mặt người có
thể kể đến HSV, YES, YCbCr, YUV, CIE-xyz, L*a*b*, L*u*v*,CSN…
Terrilon gần đây đã đưa ra một phương pháp nghiên cứu so sánh cách sử
dụng một vài không gian màu được sử dụng nhiều trong tìm kiếm khuôn mặt. Họ đã
so sánh các không gian màu TSL, rg, CIE-xyz và CIE-DSH, HSV,YIQ, CIE-
24
L*u*v* và CIE L*a*b* bằng cách mô hình hoá phân phối màu da hoặc với mô hình
phân phối Gaussian đơn giản hoặc với mô hình phân phối Gaussian kết hợp trong
từng không gian màu. Phương pháp mô men của Hu được sử dụng như là đặc trưng
và một mạng perceptron đa lớp được luyện để phân lớp các vùng có thể là mặt. Nói
chung, người ta đã chỉ ra rằng màu da người trong không gian độ sáng được chuẩn
hoá có thể được mô hình với phân phối Gaussian đơn giản và hoạt động khá hiệu
quả trong khi mô hình với phân phối Gaussian kết hợp có thể được áp dụng trong
một số không gian không chuẩn hoá. Trong các kiểm nghiệm tìm kiếm khuôn mặt
người, mô hình màu TSL đem lại kết quả tốt nhất, nhưng một kết luận tổng quát có
thể được rút ra là tiêu chuẩn quan trọng nhất trong tìm kiếm khuôn mặt người là
mức độ gối nhau giữa phân phối màu da và không phải màu da trong các không
gian màu (điều này phụ thuộc nhiều vào số lượng mẫu da và không phải da màu sử
dụng trong quá trình học).
Phân vùng màu một cách cơ bản có thể được thực hiện thông qua sử dụng
một ngưỡng màu da phù hợp trong đó màu da được mô hình thông qua biểu đồ hoặc
đồ thị màu. Một số phương pháp phức tạp hơn sử dụng các tiêu chuẩn thống kê mà
mô hình mặt biến đổi bên trong một dải hình ảnh rộng. Ví dụ, Oliver, Yang và
Waibel đã sử dụng phân phối Gaussian để biểu diễn một nhóm các màu da của hàng
nghìn mẫu màu da được lấy mẫu từ rất nhiều các màu da của các chủng tộc người
khác nhau. Phân phối Gaussian được biểu trưng bởi trung bình và mà trận hiệp
biến . Màu của các điểm ảnh từ ảnh đầu vào có thể được so sánh với mô hình da
màu thông qua khoảng cách Mahalanobis. Khoảng cách này sẽ đem lại ý niệm về sự
tương đồng giữa màu sắc điểm ảnh với mô hình màu da. Một ưu điểm của phương
pháp mô hình màu thống kê là biến đổi về màu của một người khác có thể được
thich nghi bởi mô hình tổng quát thông qua phương pháp học. Sử dụng phương
pháp thích nghi này, phương pháp dò tìm qua màu có thể rất hiệu quả khi thay đổi
các nhân tố của môi trường như điều kiện chiếu sáng hoặc các đặc tính của thiết bị
thu.
25
người dựa trên điều kiện chiếu sáng xung quanh và không phải là đơn vị đo tin cậy
để có thể phân tách được các vùng da và vùng không phải là da. Độ chói do đó có
thể loại bỏ khỏi biểu diễn màu trong không gian sắc độ màu. Các màu sắc độ hay
còn gọi là màu nguyên bản do không có thành phần độ chói được định nghĩa thông
qua quá trình chuẩn hoá sau:
R R
r , b
RGB RGB
Chú ý là thành phần xanh lục (g) là thừa sau khi chuẩn hoá vì r+g+b=1.
Các màu sắc độ được sử dụng hiệu quả trong nhiều ứng dụng để phân đoạn
các ảnh màu và tất nhiên là phù hợp cho phân đoạn các vùng da, tách vùng da khỏi
các vùng khác. Phân phối màu trong các màu da của nhiều người khác nhau được
phát hiện ra là chỉ tập trung trong một vùng nhỏ trong không gian màu sắc độ.
Nguyên nhân của điều này là do mặc dù màu da của những người khác nhau biến
đổi trong một phạm vi rất rộng nhưng chúng thay đổi về độ sáng nhiều hơn rất
nhiều so với thay đổi về màu sắc. Nói cách khác, màu da của những người khác
nhau nói chung là tương đồng với nhau và chỉ khác nhau chủ yếu về cường độ. Với
nhận xét này, ta tiếp tục tìm hiểu về các bước tiếp theo xây dựng mô hình màu da
trong không gian sắc độ màu.
Như đã trình bày trong phần tổng quan, các mô hình màu biểu diễn da người
đã được nghiên cứu rất nhiều. Một kết luận rút ra từ các nghiên cứu đó đã khẳng
định rằng phân phối màu da của những người khác nhau tụ lại thành vùng trong
không gian sắc độ màu và một phân phối màu da có thể được biểu diễn bằng mô
hình Gaussian N(m,C) trong đó:
Trung bình: m = E {x} với x = (r,b)T
Phương sai: C = E {(x-m)(x-m)T }
Có thể dẫn ra đây một nghiên cứu của Henry Chang và Ulises Robles để
minh hoạ kết quả trên. Hai ông đã lấy 32500 mẫu da của rất nhiều người chụp trong
17 tấm ảnh màu để xác định phân phối màu da trong không gian sắc độ màu. Các
mẫu được lấy từ những người thuộc các chủng tộc khác nhau: người châu Á, người
da trắng, người châu Phi. Các mẫu da sau đó được lọc nhiễu thông qua bộ lọc trung
bình để giảm tác động của nhiễu. Phân phối màu da trong không gian sắc độ được
minh hoạ trong hình dưới đây.
26
Hình 2-5. Phân phối màu cho các màu da khác nhau
Hình sau minh hoạ phân phối Gauss so khớp với biểu diễn phân phối màu da
Hình 2-6. Biểu diễn mô hình màu da bằng phân phối Gauss
Với mô hình màu da này, ta có thể tính được độ tương tự với màu da của
từng điểm ảnh trong ảnh. Do đó với một điểm ảnh, sau khi chuyển từ không gian
màu RGB sang không gian sắc độ màu thì có một cặp màu sắc độ (r,b). Khi đó, độ
tương tự với màu da được tính theo công thức sau:
27
Độ tương tự = P(r,b) = exp[-0.5(x-m)TC-1(x-m)]
với x = (r,b)T và C-1 là ma trận nghịch đảo của ma trận hiệp biến C.
Đến đây, thông qua mô hình màu sắc độ, một ảnh màu có thể chuyển thành
ảnh đa mức xám tại từng điểm ảnh với giá trị của các điểm ảnh biểu diễn độ tương
tự với mô hình màu da hay các điểm ảnh nằm trên vùng da. Với một phương pháp
phân ngưỡng phù hợp, ảnh đa mức xám có thể được chuyển thành ảnh nhị phân
(ảnh đã phân đoạn) biểu diễn các vùng da và các vùng nền.
Phân đoạn vùng da
Mô hình màu da tính được trong các bước trên cho phép biến đổi ảnh màu
đầu vào thành một ảnh đa mức xám chứa độ tương tự với màu da tại từng điểm ảnh.
Đến đây ta gặp lại bài toán phân đoạn ảnh với kết quả yêu cầu là các vùng da và
không phải da được phân tách dựa trên thông tin mức xám vừa tính được.
Phương pháp phân ngưỡng thích nghi dựa trên quan sát rằng nếu giảm giá trị
ngưỡng xuống thì một cách trực quan có thể làm tăng vùng được phân đoạn. Tuy
nhiên, sự gia tăng về vùng phân đoạn sẽ giảm dần dần (khi tỉ lệ phần trăm các vùng
da tiếp cận đến 100%), nhưng sẽ gia tăng mạnh khi giá trị ngưỡng được coi là quá
nhỏ đến mức các vùng không phải là vùng da cũng được kết hợp vào. Như vậy, giá
trị ngưỡng tại đó quan sát được sự tăng nhỏ nhất về kích cỡ vùng khi giảm dần từng
bước giá trị ngưỡng sẽ là giá trị ngưỡng tối ưu. Thường giá trị ngưỡng được giảm từ
0.65 đến 0.05 theo các các bước 0.1. Nếu sự gia tăng nhỏ nhất được quan sát khi giá
trị ngưỡng chuyển từ 0,45 về 0,35 thì giá trị ngưỡng được lấy là 0.4. Thuật toán
phân ngưỡng thích nghi là một thuật toán đem lại kết quả tốt khi sử dụng để phân
ngưỡng các vùng.
Đến đây, ta thu được một ảnh nhị phân mà các vùng ảnh là các vùng da xuất
hiện trong ảnh màu ban đầu. Vấn đề tiếp theo là tìm ra vị trí vùng mặt trong các
vùng này vì thường trong một ảnh màu, bên cạnh vùng da mặt, các vùng da khác
như chân, tay,... đều có thể xuất hiện. Tuy nhiên ta tạm chưa xét đến các bước tiếp
theo để xem xét một mô hình khác có thể được sử dụng trong tìm kiếm khuôn mặt
dựa trên màu da.
trong đó X là không gian của biến ngẫu nhiên x. Chúng ta quy ước 0ln0 = 0
(limx->0 xlnx = 0). Như vậy việc thêm những xác suất zero không làm thay đổi
28
entropy. Chú ý rằng entropy là hàm phân phối của X. Nó không phụ thuộc vào
những giá trị thực tế được dữ bởi các biến ngẫu nhiên của X trên những xác suất.
Chúng ta ký hiệu kỳ vọng là E, như vậy nếu X có phân phối p, giá trị kỳ vọng của
biến ngẫu nhiên f(X) được tính bởi:
E p f ( X ) p ( x) f ( x) (2.16)
xX
Entropy của X có thể có thể được suy ra từ giá trị kỳ vọng của -lnp(X), X
được xác định theo hàm mật độ xác suất p(x), khi đó:
H ( X ) E p ln p( X ) (2.17)
Có thể dễ dàng kiểm tra rằng entropy của biến ngẫu nhiên X luôn luôn không
âm. Hình 2.7 cho thấy đường cong entropy H(x) của một biến nhị phân X đối với
hàm mật độ xác suất Pr(X) của nó. X có thể lấy hai giá trị riêng biệt 0 hoặc 1.
Chúng ta có thể thấy entropy H(X) nhận giá trị max khi Pr(X = 0) = Pr(X = 1) =
0.5 và giảm bớt dần về mỗi phía. H(X) = 0 khi X có giá trị 0 hoặc 1 với xác suất
bằng 1.
Hình 2-7. Đường cong entropy của biểu diễn biến ngẫu nhiên
29
CSDL Compaq được chia ra làm hai tập một cách ngẫu nhiên, tập thứ nhất được sử
dụng như tập huấn luyện, phần còn lại dùng làm tập kiểm tra. Xác suất được thiết
lập bởi kinh nghiệm và được ký hiệu bởi q.
Bây giờ chúng ta sẽ xây dựng mô hình p(y|x), phân phối xác suất giá trị màu
và màu da với của một ảnh màu sử dụng mô hình entropy cực đại.
Mô hình Baseline
Với mỗi ảnh x, xem sét các phân phối xác suất p(x,y) thông qua những ảnh
nhị phân tương ứng:
C0 ( x) : s S , xs C, ys 0,1, p( ys | xs ) q( ys | xs ) (2.18)
Khi đó với MaxEnt dưới C0 là mô hình độc lập
p( x, y) q( xs , ys ) (2.19)
sS
Trong đó q(ys|xs) có được bằng cách sử dụng những xác suất được đánh giá
trong tập dữ liệu học thông qua công thức Bayes:
1
q( ys | xs ) q( xs | ys )q( ys )
q( xs )
với
1
q( xs ) q( x
ys 0
s | ys ) q ( ys )
30
Giả sử rằng mô hình MaxEnt là đẳng hướng theo hai hướng ngang và dọc, có
nghĩa rằng q(ys,yt) = q(ys',yt') theo cùng một hướng. Ràng buộc HMM như sau:
D: s ~ t S x S, p(ys = 0, yt = 0) = q(0, 0)
và p(ys = 1, yt = 1) = q(1, 1). (2.21)
Mô hình MaxEnt trong không gian C0 D theo phân phối Gibbs là:
p( x, y) q( xs | ys ) exp (a0 (1 ys )(1 yt ) a1 ys yt ) (2.22)
sS s ~t
Ký hiệu có nghĩa là đẳng thức trên với một hàm tiêu chuẩn hóa, a0, a1 là
các hằng số được chọn sao cho những sự ràng buộc được thỏa mãn. Từ (2.22) ta thu
được mô hình sau
p( y | x) p( y) q( xs | ys ) (2.23)
sS
1
với p( y ) exp (a0 (1 ys )(1 yt ) a1 ys yt ) (2.24)
Z (a0 , a1 ) s ~t
trong đó, Z(a0,a1) là hàm tiêu chuẩn hóa, được tính bởi công thức:
Z (a0 , a1 ) (exp (a0 (1 ys )(1 yt ) a1 ys yt )) (2.25)
y s ~t
Mô hình First_order
Mô hình Baseline được xây dựng để bắt chước một điểm của phân phối màu
da được quan sát từ CSDL mẫu. Tiến đến trong việc xây dựng HMM chúng ta đã
thêm vào những sự ràng buộc trên phân phối da để làm nhẵn mô hình. Giờ, chúng ta
sẽ đưa ra một mô hình nữa của MaxEnt bằng cách thêm vào hai điểm lân cận,
p(xs,xt,ys,yt). Với 4 điểm lân cận, s t quan sát trong tập dữ liệu huấn luyện. Chúng
ta định nghĩa rằng buộc như sau:
C1 : s ~ t S S , xs C , xt C , ys 0,1, yt 0,1,
(2.26)
p( xs , xt , ys , yt ) q( xs , xt , ys , yt )
31
Thiết lập tham số
Giải pháp thiết lập tham số thường được lựa chọn bằng cách tính xấp xỉ mẫu
để có thể đạt được một công thức mà lúc đó hàm phân hoạch bị triệt tiêu. Chúng ta
sử dụng phương pháp lấy mẫu ảnh theo mô hình được định nghĩa trong (2.24) mà
không cần biết các tham số a0 và a1.
Thật vậy, mô hình được định nghĩa trong (2.24) được xem như là tập các ảnh
y tương ứng với các ràng buộc : py(0,0) = q(0,0) và py(1,1) = q(1,1), trong đó:
N y (0,0)
p y (0,0) N (.,.)
(2.29)
p (1,1) N y (1,1)
y N (.,.)
với N(.,.) là số các clique trong ảnh nhị phân y, Ny(0,0) và Ny(1,1) tương ứng
là các số clique có nhãn là (0,0) và (1,1). py(0,0) và py(1,1) là các xác suất hai điểm
lân cận là màu da hoặc không phải là màu da của tập mẫu. Trong một mạng lớn,
một tập hợp đặc biệt của ảnh sẽ nhận hầu hết các xác suất, trong mỗi ảnh luôn có sự
ràng buộc của chính nó. Trong một mạng vô hạn, tập ảnh sẽ dần dần nhận xác suất
1. Mỗi ảnh thuộc cùng một tập sẽ có cùng một xác suất.
Bây giờ ta đi tìm mô hình tương đương thỏa mãn ràng buộc py(0,0) = q(0,0)
và py(1,1) = q(1,1), có năng lương bé nhất tương đương với entropy của mô hình là
cực đại. Chúng ta xây dựng hàm năng lượng như sau:
2
1
H ( y)
N (.,.) s ~ t
(1 ys )(1 yt ) q(0,0)
y
2
(2.30)
1
N (.,.) s ~ t
ys yt q(1,1)
y
Trong đó:
1
N (.,.) s ~ t ( ys yt )(1 yt ) p y (0,0)
y
(2.31)
1 yy p y (1,1)
N y (.,.) s ~ t s t
H(y) sẽ luôn không âm, khi H(y) đạt Min (= 0) chúng ta có py(0,0) = q(0,0)
và py(1,1) = q(1,1) đảm bảo thỏa mãn ràng buộc D.
Áp dụng thuật toán Metropolis lấy mẫu theo phân phối Gibbs và cực tiểu hóa
hàm năng lượng.
Xét tập ảnh tuần tự y(0), y(1), …, y(n),…Tại bước thứ n, chúng ta chọn y(n) như
sau:
32
Coi y’ là ảnh có được bởi các giá trị của pixel s tại y(n-1)
. Nếu H(y’) H(y(n-1)) thì y(n) y’
. Nếu H(y’) H(y(n-1)) thì
trong đó, (x) = (1+e-x)-1 là hàm sigmod, ns(1) là số lân cận của s mà được
gán nhãn là 1(ys = 1).
Điều này có thể thực hiện bởi việc sử dụng duy nhất năm giá trị khác nhau
một khi nó là hàm của ns(1) với ns(1) = 0,1,2,3,4. Với mỗi giá trị có thể của ns(1),
p(Ys=1|y(s)) có thể được đánh giá từ hình mẫu. Điều này dẫn tới năm phương trình
độc lập tuyến tính từ đó a0 và a1 có thể được thiết lập.
Hình 2-9. Một ảnh mẫu từ tập phân phối thỏa mãn D, có năng lượng cực tiểu
Việc thiết lập các tham số từ hình ảnh này cho ta kết quả a0 3,76 và a1
3,94. Bây giờ có thể sử dụng các tham số này cho việc xác định các vùng da. Chú ý
rằng với việc chọn 4 điểm lân cận sẽ dẫn tới việc những viền nằm ngang và thẳng
đứng thì thường được chú ý. Đây là một sự thiên lệch trong các hệ thống lân cận, sử
dụng 8 điểm lân cận có thể cải thiện trong tính toán.
33
Phát hiện màu da
Với input là một ảnh màu, phát hiện màu da yêu cầu phải tính p(y s|x) là xác
suất tại pixel s là màu da, output là kết quả của nhận dạng một ảnh đen trắng.
Đối với HMM, định nghĩa trong (2.23) chúng ta sử dụng thuật toán lấy mẫu
Gibbs, lấy dãy tuần tự mẫu sau:
y1, y2,…, yn0,…,yn
với phân phối bất biến. Sau đó tính trung bình p(ys|x) bằng:
n
1
n n0
y
j n0 1
( j)
s
Thuật toán lấy mẫu Gibbs được thực hiện như thuật toán dưới đây.
Chú ý rằng các vector u, y được định nghĩa trên lưới S và khi n , s S,
us p(Ys=1|x), p(Ys = 1|y(s),x) được tính như sau:
p(Ys 1, y (s) | x)
p(Ys 1 | y (s) , x) (U ( x; y)) (2.33)
ys p ( y | x)
với
q( xs | Ys 1)
U(x; y) (q1 y t - a 0 (1 - y t ) ln (2.34)
tVs q( xs | Ys 0)
34
Chọn mẫu bằng cách: nếu p(Ys = 1|y(s),x) > thì ys = 1 và ngược lại
chọn ys = 0.
Xây dựng hai mô hình Baseline và HMM để kiểm thử khả năng phát
hiện màu da thì thấy, khả năng phát hiện da của ba phương pháp trên được
sắp xếp như sau First-order tốt hơn HMM tốt hơn Baseline.
Hình 2-10. Hình (a): ảnh gốc, hình (b): Baseline, hình (c): HMM,
hình (d): First_order
Nhận xét:
Vùng da dò ra với mô hình Baseline thường bị pha trộn với màu nền trong
các hình phức tạp - mô hình Baseline không dò hết phần da trên mặt .
Kết quả của mô hình Markov ẩn gần hơn với các vùng da thực tế - bởi khả
năng loang màu.
35
phương pháp đã được sử dụng. Hai phương pháp ra quyết định sử dụng đối
sánh mẫu và mô hình Markov ẩn được giới thiệu.
36
Sau khi vùng da được tách riêng, các thao tác xử lý sẽ thực hiện trên duy
nhất vùng này không quan tâm đến sự tồn tại các vùng da khác trong ảnh. Một số
thuộc tính của vùng được quan tâm đến.
Trọng tâm
Khi xem xét một vùng, trước hết ta phải xác định diện tích và trọng tâm của
vùng đó. Có nhiều phương pháp thực hiện điều này, một trong những phương pháp
đó là tính trọng tâm khối lượng của vùng. Trọng tâm của ảnh nhị phân tương đương
với trọng tâm khối lượng của ảnh và được tính theo công thức:
1 n m
x jBi, j
A i 1 j 1
1 n m
y iBi, j
A i 1 j 1
trong đó B[i,j] là ma trận ảnh nhị phân nxm biểu diễn vùng ảnh
A là số điểm ảnh có trong vùng
Với công thức tính trên, các vùng lỗ hổng không được tính với B[i,j]=0.
Góc nghiêng
Phần lớn các ảnh mặt đều bị nghiêng theo chiều dọc. Ta có thể tăng được khả
năng tìm kiếm nếu tính toán được độ nghiêng của vùng so với trục thẳng đứng. Để
tính góc nghiêng này, ta sử dụng các đặc trưng dựa trên mô men đối với các đối
tượng hình dạng.
Công thức tính mô men bậc (p,q) đối với một vùng ảnh R như sau
μ p,q m m n n
p q
( m,n )R
Góc nghiêng được định nghĩa là góc của trục có với mômen nhỏ nhất so với
trục thẳng đứng. Góc nghiêng này được tính theo công thức:
1 2μ 1,1
θ tan -1
2 μ 2,0 μ 0,2
Trong trường hợp cụ thể đối với vùng da được tách riêng ra, góc nghiêng
theta được tính:
1 -1 2b
θ tan
2 a c
n m
a xij' Bi, j
2
i 1 j 1
n m
b xij' yij' Bi, j
i 1 j 1
37
n m
c yij' Bi, j
2
i 1 j 1
x' x x
y' y y
38
2.2.5.3 Ra quyết định sử dụng đối sánh mẫu
Phương pháp này sử dụng mẫu khuôn mặt người để đối sánh và đưa ra quyết
định về cuối cùng xác định tồn tại hay không một khuôn mặt trong vùng da đã định.
Khuôn mặt mẫu
Khuôn mặt mẫu được tính toán bằng cách lấy trung bình các khuôn mặt mẫu
(thường là các mắt nhìn thẳng). Vùng lấy mẫu có được tuỳ thuộc vào từng phương
pháp sử dụng. Chang và Robles đã sử dụng một khuôn mặt mẫu có được từ lấy
trung bình 16 khuôn mặt nhìn thẳng của đàn ông và phụ nữ với các điều kiện như
không mang kính, không có vùng tóc trên mặt và vùng biên trái và phải của khuôn
mặt mẫu được sử dụng từ viền của tai vào trung tâm. Trọng tâm của mặt mẫu được
đặt vào đỉnh của mũi.
39
Trong các phần tính toán ở trên, các đặc trưng về vùng ảnh đã được tính
toán. Bước đầu tiên trong đối sánh mẫu là biến đổi mẫu cho khớp với vùng ảnh. Các
phép biến đổi bao gồm:
Điều chỉnh kích thước mẫu cho phù hợp với kích thước của vùng da
(a) (b)
Hình 2-13. Khuôn mặt mẫu được điều chỉnh kích thước
(a) mẫu ban đầu (b) sau khi điểu chỉnh kích thước
Quay ảnh mẫu đã điều chỉnh kích thước một góc –theta với theta là góc
nghiêng đã được tính ở trên.
(a) (b)
Hình 2-14. Khuôn mặt mẫu được xoay và điều chỉnh lại kích thước
(a) sau khi xoay (b) sau điều chỉnh lại
Tính toán hệ số tương quan chéo giữa vùng ảnh tại vùng da và vùng ảnh
trong khuôn mặt mẫu. Có thể sử dụng hệ số tương quan chéo được chuẩn hoá để
tính độ tương tự giữa hai ảnh:
Y 1 X 1
j y ix j y ix
trong đó γ xy là giá trị tương quan chéo chuẩn hoá cần tính.
40
f(x,y) biểu diễn ảnh đầu vào.
w(x,y) biểu diễn khuôn mặt mẫu.
f’ là trị trung bình của f(x,y) trong vùng gối với mẫu
w’ là trị trung bình của w(x,y)
với giả thiết vùng ảnh và vùng đầu vào nằm trong miền 0 x X - 1 và
0 y Y - 1. Với khuôn mặt mẫu thu được và bằng thực nghiệm, có thể tìm ra được
giá trị ngưỡng phân vùng mặt tối ưu thông qua các mẫu kiểm thử và giá trị tương
quan thu được qua các lần kiểm thử. Với khuôn mặt mẫu trong hình 2-11, giá trị
ngưỡng γ xy 0.6 còn với khuôn mặt mẫu trong hình 2-12, giá trị này là 0.5.
2.2.6 Kết luận về tìm kiếm khuôn mặt dựa trên màu da
Phương pháp tìm kiếm khuôn mặt người dựa trên màu da là một phương
pháp thuộc vào một trong những hướng nghiên cứu có mặt sớm nhất trong lĩnh vực
tìm kiếm và nhận dạng khuôn mặt người.
Nội dung của phương pháp nói chung dựa trên những đặc tính gần như bất biến
trong các thành phần màu của các mẫu màu da để từ đó xác định được các vùng màu
da trong ảnh và thông qua đó định vị được vị trí khuôn mặt người trong ảnh.
Ưu điểm của phương pháp có được do chính bản thân đặc tính mầu của
phương pháp tạo nên. Thông qua các đặc tính màu này mà các vị trí mặt người được
tìm ra dễ dàng và qua đó có thể tìm kiếm được vị trí khuôn mặt trong ảnh dễ dàng.
Trong điều kiện chiếu sáng với các môi trường có thể điều khiển được như nền tối
và có một khuôn mặt… thì hiệu quả của phương pháp là rất cao và khả năng ứng
dụng lớn. Một ưu điểm khác nữa là do không phụ thuộc vào đặc trưng hình học mặt
nên có thể sử dụng phương pháp trong tìm kiếm và phát hiện nhiều khuôn mặt trong
một ảnh.
Nhưng, phương pháp tìm kiếm khuôn mặt dựa trên màu da có nhiều nhược
điểm. Các nhược điểm đó xuất phát từ các khía cạnh của phương pháp. Thứ nhất, do
xử lý trên điểm ảnh nên cài đặt phương pháp thường chạy chậm, đòi hỏi yêu cầu
tính toán cao. Thứ hai, trong môi trường nhiều nhiễu, hiệu quả của phương pháp
giảm rõ rệt vì thuật toán xử lý sẽ phải giải quyết quá nhiều nhiễu và cũng do yêu
cầu của các vùng da là liên tục nên khó có thể tìm được chính xác. Thứ ba, do yêu
cầu về màu sắc nên các ảnh đa mức xám, các ảnh vẽ, các ảnh chụp chất lượng thấp
không phải là đối tượng thao tác của phương pháp. Đây là hạn chế rất lớn vì số
lượng các ảnh này cần ứng dụng trong lĩnh vực tìm kiếm khuôn mặt rất nhiều.
Với các ưu điểm cũng như nhược điểm của mình, phương pháp tìm kiếm ảnh
dựa trên màu da đã thực sự có chỗ đứng trong lĩnh vực nghiên cứu về tìm kiếm và
nhận dạng khuôn mặt người. Khi thoả mãn được một số điều kiện ràng buộc, đây
thực sự là một phương pháp mạnh để xây dựng các ứng dụng trong lĩnh vực nêu
trên.
41
3 Chương 3 RÚT TRÍCH ĐẶC TRƯNG TỪ KHUÔN MẶT
3.1 Tiếp cận theo phương pháp phân tích thành phần chính
(Principal Component Analysis hay PCA)
3.1.1 Vector riêng, Trị riêng và sự chéo hoá của ma trận
Xét một toán tử tuyến tính f trong không gian Rn với các vector cơ sở :
ei = [0...1...0]T (với giá trị 1 nằm tại vị trí thứ i) (3.1)
Toán tử tuyến tính này sẽ được biểu diễn bởi một ma trận vuông T kích
thước n×n.
Nếu tồn tại một đại lượng vô hướng λ và một vector x, x ≠ 0, sao cho thỏa
điều kiện:
f(x) = λx (3.2)
hay
T*x = λx (3.3)
Khi đó λ được gọi là trị riêng của toán tử f, và vector x được gọi là vector
riêng của f, hay của T, ứng với trị riêng λ. Ma trận T với kích thước n×n sẽ có tối
đa n trị riêng và n vector riêng tương ứng. Một ma trận T khả nghịch đảo sẽ có đủ n
trị riêng (kể cả trị riêng bội) và n vector riêng tương ứng.
Nếu tồn tại một cơ sở trong không gian Rn sao cho ma trận T biểu diễn trong
cơ sở đó có dạng chéo (các phần tử ngoài đường chéo bằng 0) thì ma trận T (biểu
diễn trong không gian Rn với các vector cơ sở ei nêu trên) sẽ chéo hóa được.
Ví dụ: Khảo sát trên không gian R5 với ma trận chéo 5×5
1 0 0 0 0
0 2 0 0 0
T 0 0 3 0 0
0 0 0 4 0
0 0 0 0 5
Giả sử C là ma trận các vector cơ sở mới {ui} được biểu diễn trong cơ sở
{ei}. Ở đây, ma trận T được chuyển từ cơ sở {ei} sang cơ sở mới {ui} nên ma trận
chuyển đổi cơ sở từ {ei} sang {ui} cũng là C. Nếu T chéo hóa được tức là tồn tại ma
trận C khả nghịch (tức là C tạo được một cơ sở trong Rn) sao cho :
Tc = C-1T C (3.4)
có dạng chéo.
Nếu ta có C là một ma trận có các cột là các vector cơ sở đã được chuẩn hóa
của không gian Rn thì CT = C-1, khi đó từ (4.4) ta có thể viết :
Tc = CTTC (3.5)
42
Ta có thể tìm được ma trận C để chéo hóa một ma trận T bằng cách tìm các
vector riêng của ma trận T. Lúc đó ma trận C chính là ma trận có các cột là các
vector riêng của T.
43
a1 b1
a b
x 2 Giảm chiều y 2
... ...
aN bK
Gọi C là ma trận hiệp phương sai của các các phần tử trong tập X.
1 M
C ( xk M )( X k M )T , C là ma trận đối xứng n×n
M 1 k 1
(3.12)
Người ta chứng minh được rằng nếu T là một ma trận mà mỗi hàng là một
vector riêng của C và m vector riêng này (m hàng của ma trận T) ứng với m trị
riêng lớn nhất thì T chính là phép biến đổi tuyến tính thỏa mãn điều kiện MSE nhỏ
nhất.
Gọi Φ là ma trận vuông n×n mà mỗi cột là một vector riêng của C đã được
chuẩn hóa với phép biến đổi :
y T * x , y ( y1, y 2 ,..., y n ) (3.13)
được gọi là phép biến đổi Hotelling.
44
Xét theo quan điểm của nhận dạng thì mỗi thành phần yi của vector y được
xem như là một đặc trưng của vector mẫu x. Các đặc trưng này là các đặc trưng độc
lập với nhau vì ma trận hiệp phương sai của y là
C y T C (3.14)
là một ma trận chéo (đã đề cập tới trong phần : Vector riêng, trị riêng và sự
chéo hóa ma trận).
Tóm lại, phương pháp phân tích thành phần chính ánh xạ một vector từ
không gian n chiếu xuống không gian k chiều sẽ đi tìm các trị riêng và vector riêng
của ma trận hiệp phương sai C của tập X và giữ lại k vector riêng ứng với k trị
riêng lớn nhất làm cơ sở cho không gian k chiều này.
Sự diễn giải bằng hình học:
PCA chiếu dữ liệu theo hướng mà ở đó dữ liệu khác nhau nhiều nhất.
Những hướng này được xác định bằng các vector riêng của ma trận hiệp
phương sai.
Số lượng các trị riêng tương ứng với sự khác biệt của dữ liệu theo các hướng
của vector riêng.
x2
u2 u1
x
u
1
x1
Điều đó cho thấy rằng cơ sở trong không gian có số chiều ít được dựa trên
nhừng thành phần chính sẽ làm tối thiểu hóa lỗi trong quá trình xây dựng lại:
e x xˆ
45
3.2.3 Kỹ thuật tính đặc trưng bằng PCA
Giả sử x1, x2, …, xN là các vector N x 1
Bước 1:
M
1
x
M
x
i 1
i
Sau đó tính
M
1
C
M
n 1
n
T
n AA T
Bước 6 (bước giảm số chiều): chỉ giữ lại những thuộc tính tương ứng
với các trị riêng lớn nhất
K
xˆ x biui , trong đó K << N
i 1
46
b1 u 1
T
b T
2 u 1 ( x x ) U T ( x x )
... ...
bK u KT
Lưu ý :
Khi số lượng mẫu M trong tập X nhỏ hơn số chiều n, thay vì tính trực tiếp
các vector riêng từ ma trận hiệp phương sai C, ta có thể tính các vector riêng theo
phương pháp sau :
Bước 1 : Tính ma trận kích thước M×M, C’ như sau :
C’ = YT.Y
với Yn×M = [x1, x2, ..., xM] mỗi cột của ma trận là một phần tử xi, i = 1..m
Bước 2 :
Tính M vector riêng EMi và các trị riêng tương ứng của ma trận C’.
Chọn m vector riêng ứng với m trị riêng lớn nhất để tiếp tục bước 3.
Bước 3 :
Chiếu các vector riêng M chiều này về lại không gian n chiều của các
mẫu xi bằng cách như sau :
M
Eni EM k xk (3.15)
k 1
Các vector Eni thu được chính là các vector riêng cần tìm của ma trận C.
Cách xác định số thành phần chính hiệu quả nhất
Có hai phương pháp hữu ích giúp cho chúng ta lấy số lượng thành phần
chính sao cho hiệu quả. Tất cả hai phương pháp này đều dựa trên mối quan
hệ giữa các giá trị đặc trưng.
Sắp xếp lại các giá trị đặc trưng tìm được theo thứ tự giảm dần về mặt giá
trị (1,eigenvalue[1]), (2,eigenvalue[2]), …,(p,eigenvalue[p]) và thứ tự này
vẫn đảm bảo được thứ tự của các vector đặc trưng tương ứng.
Theo dõi sự biến thiên của chuỗi giá trị đặc trưng vừa được xếp lại, khi
sự biến thiên này tiến đến một điểm ngưỡng (thông thường xấp xỉ bằng
không). Thông thường đó chính là lúc mà ta chọn được đủ số lượng thành
phần chính cần thiết .
Để chọn K, sử dụng tiêu chuẩn sau đây:
47
K
i
i 1
N
ngưỡng
i 1
i
Với phương châm làm sao số lượng thành phần chính là thấp nhất đủ để giải
thích khả năng phân tán tập mẫu học thành các lớp mẫu riêng cần thiết nhất.
Cách để nhận được các thành phần chính
Các thành phần chính có thể nhận được bằng cách chiếu các vector dữ
liệu có nhiều biến động vào không gian mở rộng từ các vector đặc trưng.
Các đánh giá quan trọng về rút trích đặc trưng bằng phương pháp PCA
Khi lấy số đặc trưng càng về sau thì khả năng biến động cần thấp, có
nghĩa nối quan hệ giữa các phần tử càng cao, thì sự giao nhau giữa các
lớp mẫu trong tập mẫu càng lớn
Nhưng nếu lấy không đủ số lượng thành phần chính, thì khả năng phân
tán của tập mẫu càng cao (Có thể tăng vượt ngoài số lớp mẫu cần thiết
trong tập mẫu )
3.3 Phương pháp PCA toàn cục và cục bộ
3.3.1 Phương pháp PCA toàn cục
Phương pháp PCA toàn cục chính là phương pháp trích đặc trưng truyền
thống trên toàn bộ dữ liệu đã cho. Kỹ thuật trích tham khảo trong phần 3.2.3
Với mỗi I [1,9] ta tiến hành áp dụng phương pháp PCA cho từng bộ ảnh
con Ski nk 1 . Đến đây có hai hướng chọn đặc trưng khác nhau cho tập S:
Hướng độc lập: vai trò của 9 ô trong mỗi ảnh là như nhau, do đó, mỗi ô
trong 9 ô có quyền chọn đặc trưng riêng cho mình một cách độc lập. Chẳng
hạn, mỗi ô trong 9 ô sẽ chọn 10 đặc trưng, do đó sau khi huấn luyện tập S, ta
được 9x10 đặc trưng.
Hướng lệ thuộc: hướng này đòi hỏi số đặc trưng n cho ảnh toàn cục phải
được biết trước, ta chọn từ trên xuống các đặc trưng của các vector đặc trưng
của tất cả 9 ô. Tiêu chuẩn chọn dựa trên giá trị đặc trưng của từng đặc trưng.
Nhận xét:
48
Dễ dàng nhận thấy hướng lệ thuộc cho kết quả tốt hơn do có thể một số ô
các đặc trưng không quan trọng. Chẳng hạn trên khuôn mặt người, ô ngay
đỉnh trán thường có ít đặc trưng hơn ô có chứa mũi, mắt hay miệng.
Tuy nhiên, việc chọn đặc trưng theo hướng phụ thuộc sẽ gặp phải các vấn
đề các giá trị đặc trưng của các ô ngang hàng, tiêu chí về số lượng n phải
được nới lỏng và xét đến vì nếu ta bỏ sót các đặc trưng có cùng giá trị đặc
trưng kết quả sẽ không tốt.
3.4 Đánh giá
3.4.1 Một số đánh giá quan trọng về rút trích đặc trưng bằng phương pháp
PCA
Khi lấy số đặc trưng càng về sau thì khả năng biến động càng thấp, có
nghĩa mối quan hệ giữa các phần tủ càng cao, thì sự giao nhau giữa các lớp
mẫu trong tập mẫu càng lớn.
Nhưng nếu lấy không đủ số lượng thành phần chính, thì khả năng phân
tán của tập mẫu càng cao (có thể tăng vượt ngoài số lớp mẫu cần thiết trong
tập mẫu).
49
4 Chương 4 MÔ HÌNH MAKOV ẨN VÀ ỨNG DỤNG NHẬN
DẠNG KHUÔN MẶT
4.1 Giới thiệu mô hình Makov ẩn
Andrei A Markov (1895-1922) đã đưa ra một mô hình dùng để mô hình hoá
chuỗi các sự kiện mà xác suất của sự kiện ở thời điểm hiện tại có liên quan đến sự
xuất hiện của sự kiện ở thời điểm trước đó. Mô hình đó được gọi là chuỗi Markov.
0.3
0.6
0.4
Mưa 0.2 Mây
0.3 0.1
0.1 0.2
Nắng
0.8
Hình 4-1. Mô hình Markov ba trạng thái biểu diễn thời tiết
Giả sử mỗi ngày, thời tiết được quan sát sẽ rơi vào một trong ba trạng thái
sau:
Trạng thái 1: Mưa
Trạng thái 2: Có mây
Trạng thái 3: Có nắng
Ma trận xác suất chuyển trạng thái:
50
Câu hỏi đặt ra: Xác suất để thời tiết tám ngày liên tiếp là {Nắng, Nắng,
Nắng, Mưa, Mưa, Nắng, Mây, Nắng} là bao nhiêu?
Lời giải như sau:
Ta định nghĩa dãy quan sát O là:
O = (Nắng, Nắng, Nắng, Mưa, Mưa, Nắng, Mây, Nắng)
= ( 3, 3, 3, 1, 1, 3, 2, 3 )
P(O) = P[3, 3, 3, 1, 1, 3, 2, 3]
= P[3]P[3|3]P[3|3]P[1|3]P[1|3]P[1|1]P[2|3]P[3|2]
= 3 .(a33 ) 2 .a31.a11.a13.a32 .a23
= 1*0.8*0.8*0.1*0.4*0.3*0.1*0.2
= 1.536*10-4
Với I = P[qi = i], 1 ≤ i ≤ N là xác suất ban đầu của các trạng thái.
Hình 4-2. Mô phỏng mô hình Markov ẩn rời rạc bằng mô hình bình bóng
51
N: Số trạng thái của mô hình mặc dù các trạng thái là ẩn.
M: Số đặc trưng phân biệt trên mỗi trạng thái
qt: là trạng thái tại thời điểm t.
A = {ai,j}: không gian xác suất chuyển trạng thái của 2 thời điểm kế tiếp nhau
ai,j A: là xác suất chuyển trạng thái qi tại thời điểm t sang qj tại thời
điểm t+1
πi = P[q1= i]: xác suất ban đầu của trạng thái i
π = {πi}: tập các xác suất trạng thái đầu
ot = vi: là quan sát được vi tại thời điểm t
O = {o1,…,ot}: Chuỗi quan sát theo thời gian t
B: Ma trận phân bố xác suất của các đặc trưng khi khảo sát trên từng trạng
thái
bi(k): Xác suất nhận được đặc trưng vk ở trạng thái i.
Ta dùng kí hiệu: λ = (A, B,π ) để chỉ tập tham số của mô hình.
Có NT dãy trạng thái và O(T) phép tính, nên độ phức tạp của thuật toán bằng
O(NTT). Để giảm độ phức tạp, thuật toán được cải tiến bằng 2 thủ tục: Thủ tục lùi
và thủ tục tiến.
52
Bước 1: Khởi tạo
t(i) = π ibi(o1), 1≤ i ≤ N (4.7)
Bước: Quy nạp
N
t 1 ( j ) t (i)aij b j (ot 1) , 1 t T 1, 1 j N (4.8)
i 1
Bước 3: Kết thúc
N
P(O | ) T (i ) (4.9)
i 1
Đánh giá
Độ phức tạp: O(N2T)
Trạng thái
N
aNk
a2k
2
1 a1k
t
Thời gian
Hình 4-3. Tính toán theo thủ tục tiến ở một thời điểm
53
N
P(O / ) (i)bi (o1 ) 1 (i) (4.13)
i 1
Đánh giá:
Độ phức tạp: O(N2T)
Trạng thái
N
aiN
ai2
2
ai1
1
t Thời gian
Hình 4-4. Tính toán theo thủ tục lùi ở một thời điểm
P(O, q
j 1
t j | )
Vì P(O,qt = j | λ) =αt(j) βt(j) nên công thức trên được tính lại như sau:
t (i ) t (i)
t (i) N (4.14)
( j) ( j)
j 1
t t
Trong đó αt(i) giải thích dãy riêng phần o1o2. . . ot và trạng thái i ở thời điểm
t, còn βt(i) giải thích dãy quan sát còn lại ot+1ot+2. . . oT được cho bởi trạng thái i tại
thời điểm t.
Dùng γt(i), ta có thể tìm được trạng thái qt* phù hợp nhất ở từng thời điểm t:
54
qt* arg max[t (i)], 1 t T (4.15)
1 i N
Phương trình trên cực đại hoá kỳ vọng số các trạng thái đúng, tuy nhiên khi
HMM có một số xác suất chuyển trạng thái bằng không (a ij = 0) thì dãy trạng thái
tối ưu đó không còn hợp lệ nữa. Vì phương trình trên chỉ xác định trạng thái phù
hợp nhất ở từng thời điểm mà không chú ý đến sự xuất hiện chung của dãy trạng
thái.
Thuật toán Viterbi:
Gọi δt(i) là tỉ số tốt nhất theo đường đi đơn ở thời điểm t mà nó giải thích
được t quan sát đầu tiên và kết thúc ở trạng thái i.
t (i) max P(q1q2 ...qt 1, qt i, o1o2 ...ot | ) (4.17)
q1q 2 ...qt 1
55
cách Kullback-Leibler giữa hai hàm phân phối xác suất; vì vậy trước khi giới thiệu
về phép đo khoảng cách giữa các mô hình Markov ẩn, ta giới thiệu qua về phép đo
khoảng cách Kullback-Leibler
Phép đo khoảng cách Kullback-Leibler
Gọi p1(x) và p2(x) là hai hàm mật độ phân phối xác suất (hoặc hàm xác suất
rời rạc), khi đó khoảng cách Kullback-Leibler có thể được sử dụng để đánh giá độ
tương tự hay độ gần nhau giữa hai phân phối xác suất.
Định nghĩa: phép đo khoảng cách Kullback-Leibler để xác định xem hàm
mật độ phân phối xác suất p2(x) gần với hàm mật độ phân phối p1(x) là bao nhiêu
được định nghĩa như sau:
p x
I p1 , p 2 p1 x ln 1 dx (4.24)
p 2 x
Trong trường hợp p1(x) và p2(x) là hai hàm xác suất rời rạc thì
p1 x
I p1 , p2 p x ln p x
1 (4.25)
all x 2
Chú ý rằng khoảng cách Kullback-Leibler không phải là khoảng cách đối
xứng nghĩa là I(p1,p2) I(p2,p1). Nếu mục đích của chúng ta chỉ đơn giản là so sánh
p1 và p2 thì ta có thể định nghĩa một phép đo khoảng cách đối xứng như sau:
Is( p1 , p2 )
1
I ( p1, p2 ) I ( p2 , p1 ) (4.26)
2
Một bài toán xấp xỉ điển hình: Đưa ra một hàm mật độ px , ta muốn xấp
xỉ nó với một hàm mật độ khác p̂x (với p̂x có thể là một hàm tham số hoá).
Để đạt được p̂x , ta giải quyết bài toán:
pˆ * arg min I p, pˆ (4.27)
pˆ
Sử dụng công thức I p, pˆ px ln px px ln pˆ x , bài toán cực tiểu trở
x x
thành
pˆ * arg max px ln pˆ x (4.28)
pˆ x
56
Gọi λ1 và λ 2 là hai mô hình Markov ẩn ví dụ λ1 là dạng mô hình hoá còn λ 2
là mô hình dựa trên các chuỗi quan sát. Ta sẽ xác định độ tương tự giữa hai mô
hình:
PO λ1
Iλ1 , λ 2 PO λ1 ln
PO λ 2
(4.30)
O
Trên thực tế, ta không thể tính được tổng ở trên bởi vì không thể sinh ra được
tất cả các dãy trạng thái có thể. Giả sử ta vừa sinh ra một chuỗi quan sát chiều dài T
sử dụng mô hình λ i ; ký hiệu dãy này là OiT . Bây giờ, tương ứng với dãy này ta có
thể xem xét việc tính PO1T λ 2 . Để thực hiện phép tính này, ta lựa chọn một vài dãy
trạng thái không có trong mô hình λ 2 . Ta có thể có một dãy trạng thái cho λ1 do
dãy quan sát O1T được sinh ra sử dụng mô hình λ1 . Ta xét quá trình tính toán dãy
trạng thái tối ưu sử dụng thuật toán Viterbi với λ1 và λ 2 tương ứng với O1T . Giả
thiết dãy trạng thái tối ưu là I1* O1T và I2* O1T và độ tương tự giữa λ1 và λ 2 là:
P O1T , I1* O1T λ1 ln P O1T , I1* O1T λ1 ln P O1T , I2* O1T λ 2 (4.31)
Độ tương tự trên cần được tính với một độ dài T của dãy quan sát đủ lớn.
Hàm xác suất ở bên ngoài ngoặc nhọn có thể được bỏ qua nó là phần chung
cho cả hai biểu thức ở trong ngoặc. Khoảng cách giữa hai mô hình được định nghĩa
là:
def
Dλ1 , λ 2 lim
1
ln P O1T , I1* O1T λ1 ln P O1T , I 2* O1T λ 2 (4.32)
T T
Chú ý rằng Dλ1, λ 2 không có tính đối xứng. Khoảng cách đối xứng giữa các
mô hình Markov được định nghĩa là:
Dλ1, λ 2 Dλ 2 , λ1
def
Dλ1 , λ 2
1
(4.33)
2
Độ dài dãy quan sát T
Trên thực tế, không thể có T . Để giải quyết vấn đề này, Rakesh Dugad
và U.B.Desai đã thực hiện các thí nghiệm để tìm ra độ dài chuỗi quan sát nên chọn
là bao nhiêu. Chi tiết thực hiện thí nghiệm này như sau:
Có hai mô hình λ1 và λ 2 , cần tính khoảng cách giữa chúng. Ta sinh ra dãy
đặc trưng từ mô hình λ1 .
Gọi S là ma trận hiệp biến, do đó S là đối xứng và bán xác định dương. Khi
ta sinh ra một số lớn các vectơ đặc trưng, ma trận hiệp biến trong hầu hết trường
hợp. Là không đơn và có thể giả định là xác định dương. Sử dụng phân rã Cholesky,
S có thể viết lại: S LLT , trong đó L là ma trận tam giác dưới.
Giả sử ta muốn sinh ra n vectơ trung bình quy 0 có chiều p bằng với chiều
ma trận hiệp biến S. Sinh ra ma trận nxp mà các phần tử là các biến ngẫu nhiên
Gaussian với trung bình bằng 0 và độ lệch chuẩn bằng 1 hay N(0,1). Khi đó các
57
hàng của ma trận B = AL là n vectơ trung bình quy 0 với ma trận hiệp biến S. Chú ý
rằng ma trận L là ma trận p x p. Bây giờ đơn giản là thêm các trung bình cần thiết
vào tất cả các vectơ được sinh ra.
Tiếp theo, ta tính toán xác suất của dãy quan sát sinh ra từ mô hình Markov
λ1 với chính mô hình λ1 và với mô hình λ 2 sau đó tính khoảng cách không đối
xứng Dλ1, λ 2 . Tương tự ta tính toán xác suất của dãy quan sát sinh ra từ mô hình
λ 2 với chính nó và với mô hình λ1 sau đó lại tính khoảng cách không đỗi xứng
Dλ1 , λ 2 . Trung bình của hai khoảng cách này cho ra khoảng cách cần tính.
Kết quả của thí nghiệm sử dụng hai mô hình λ1 và λ 2 được mô tả trong biểu
đồ bên dưới. Từ thí nghiệm với các mô hình Markov ẩn khác nhau, có thể chỉ ra
rằng khi độ dài T tăng lên thì khoảng cách giữa hai mô hình sẽ tiếp cận đến một giới
hạn và khoảng cách sẽ ổn định khi T=212 tức là khoảng 4000.
Hình 4-5. Tính hội tụ của khoảng cách HMM khi độ dài chuỗi quan sát tăng
58
4.1.3.2 Mô hình Markov ẩn biểu diễn ảnh mặt
Trong các ứng dụng liên quan đến mô hình Markov ẩn, cấu trúc của mô hình
sẽ quyết định hoạt động của toàn bộ hệ thống cũng như các phương pháp được sử
dụng. Nhưng cấu trúc này lại được quyết định do yêu cầu của bài toán cần giải
quyết. Cấu trúc này liên quan chủ yếu đến quá trình ngẫu nhiên cần được mô phỏng.
Như ta đã biết cấu trúc của mô hình do các tham số của mô hình đó quyết
định với chủ yếu là hai tham số π và A. Các cấu trúc của mô hình Markov ẩn có
nhiều loại, có một số cấu trúc nổi tiếng được biết đến như:
Mô hình Ergodic với thuộc tính là mỗi trạng thái đều có thể đạt đến một
trạng thái khác sau một số bước hữu hạn không tuần hoàn và được biểu diễn
bởi ma trận chuyển trạng thái có các phần tử đều dương.
Mô hình trái phải – Bakis với thuộc tính là khi thời gian tăng lên thì chỉ
số trạng thái sẽ tăng lên hoặc giữ nguyên (các trạng thái của mô hình tiến từ
trái sang phải)
Các mô hình kết hợp là các mô hình được tạo do sự kết hợp các dạng
mô hình cơ bản. Ví dụ của loại mô hình này là mô hình kết nối qua lại trái
phải song song.
Hình vẽ sau sẽ minh hoạ các mô hình
(a) (b)
(c)
Hình 4-6.(a) Mô hình ergodic 4 trạng thái (b) Mô hình trái - phải 4 trạng thái
(c) Mô hình trái phải đường đi song song 6 trạng thái
59
Dựa trên các cấu trúc mô hình trên, có thể nhận xét rằng mô hình trái- phải là
mô hình có thuộc tính thích hợp nhất để mô phỏng các quá trình ngẫu nhiên mà
trạng thái của chúng thay đổi một các tuấn tự theo thứ tự thời gian.
Khuôn mặt người như nhận xét ở trên có một đặc điểm là các thành phần chủ
yếu như tóc, trán, mắt, mũi, miệng và cằm đều được sắp xếp từ trên xuống dưới
theo một thứ tự rất tự nhiên. Ngay cả trong một số ảnh chụp khuôn mặt có nghiêng
một lượng nhỏ thì thứ tự này vẫn không hề thay đổi. Chính thứ tự xuất hiện các
phần tử chủ yếu một cách tuần tự này đem lại ý tưởng lựa chọn mô hình trái phải để
mô phỏng khuôn mặt.
Cấu trúc HMM trái phải một chiều với các trạng thái tương ứng với các
thành phần chủ yếu của khuôn mặt được lựa chọn với các tham số:
Số lượng trạng thái bằng 6, tương ứng với các thành phần tóc, trán, mắt,
mũi, miệng và cằm.
Tập các chuyển trạng thái được phép với các giá trị tương ứng của ma
trận chuyển lớn hơn hoặc bằng 0.
Tập các quan sát được sinh ra bởi mỗi trạng thái.
Mô hình này được minh hoạ trong hình sau:
60
số hàng điểm ảnh, các hàng này sau khi trích ra được sắp xếp lại tạo thành một dãy
một chiều các điểm ảnh.
Trong một số công trình đã thực hiện, toàn bộ dãy điểm ảnh được sử dụng
như một vectơ quan sát. Giá trị của mỗi thành phần là giá trị cường độ sáng của
điểm ảnh hay là giá trị mức xám của ảnh đa mức xám của điểm ảnh đó. Cách tiếp
cận này khiến cho kích thước của vectơ quan sát trở nên rất lớn, gây ra khả năng bị
ảnh hưởng bởi nhiễu trong ảnh và làm giảm hiệu năng tính toán của hệ thống vì các
giá trị điểm ảnh thực ra không biểu diễn đặc trưng mạnh và các giá trị điểm ảnh rất
nhạy cảm với nhiễu ảnh cũng như các phép quay,dịch chuyển và thay đổi về độ
chiếu sáng.
Một số cách làm khác cũng đã từng được đưa ra để xây dựng tập vectơ quan
sát từ dãy các điểm ảnh trong đó có sử dụng các đại lượng của phép biến đổi Cô-sin
hai chiều (DCT) hoặc các đại lượng của phép biến đổi Karhunen Loeve (KLT). Hai
cách làm này thực sự có hiệu quả đặc biệt bởi khả năng giảm ảnh hưởng của nhiễu,
giảm đáng kể kích thước của vectơ quan sát thông qua việc loại bỏ các thành phần
chứa ít thông tin trong ảnh.
Phương pháp được mô tả trong chương này sử dụng các đại lượng của phép
biến đổi KL để xây dựng các vectơ quan sát sử dụng trong huấn luyện mô hình
Markov ẩn để tìm kiếm và nhận dạng khuôn mặt người trong ảnh. Các bước thực
hiện sẽ được lần lượt trình bày trong các phần tiếp theo.
Trích chọn các khối điểm ảnh
Một ảnh đầu vào kích thước W x H điểm ảnh với W là chiều rộng và H là
chiều cao của ảnh chứa một khuôn mặt bên trong (điều này đúng với các ảnh mẫu),
các khối điểm ảnh L hàng được trích ra và sử dụng để tạo nên các quan sát. Hình vẽ
sau mô tả cách lấy các khối quan sát.
Hình 4-8. Ảnh mặt và phương pháp trích chọn khối quan sát.
Các khối quan sát kề cận nhau thường gối lên nhau một số P hàng. Việc gối
các hàng như vậy cho phép các đặc tính được tìm ra theo cách độc lập với ví trí theo
chiều dọc trong khi đó nếu các khối rời rạc với nhau thì tại biên của các khối sẽ có
hiện tượng các đặc trưng bị cắt hụt. Nếu độ dài L quá nhỏ thì có thể không đủ thông
tin phân tách các vectơ quan sát trong khi nếu L quá lớn có thể dẫn đến gia tăng xác
61
suất cắt hụt. Tuy nhiên, tỉ số nhận dạng thành công của các hệ thống thường không
quá nhạy cảm với các thay đổi về L miễn là độ gối P đủ lớn (P≤L-1) và L≈H/10.
Vectơ quan sát
Rất nhiều các nhóm nghiên cứu trên thế giới sử dụng cơ sở dữ liệu ảnh ORL
của Olivetty Research Laboratory tại Cambridge, nước Anh với các ảnh đa mức
xám chụp khuôn mặt người kích thước 92x112 (WxH). Cơ sở dữ liệu ảnh này cũng
được sử dụng để làm cơ sở thử nghiệm trong luận văn. Nếu vectơ quan sát sử dụng
giá trị các điểm ảnh thì kích thước của một vectơ có thể là LxW (L= 10 và W=92).
Phương pháp sử dụng biến đổi KL để xây dựng các vectơ quan sát sẽ cho thấy hiệu
quả hơn nhiều so với sử dụng các giá trị điểm ảnh bởi vì khả năng nén thông tin
cũng như thuộc tính không tương quan của phép biến đổi KL. Phép biến đổi KLT là
một phép biến đổi thích nghi nghĩa là các cơ sở của phép biến đổi dựa trên các tín
hiệu vào mà phép biên đổi áp dụng trên đó. Ma trận cơ sở của phép biến đổi KLT là
các vectơ riêng của ma trận hiệp biến của tất cả các mẫu đầu vào. Cách tính ma trận
cơ sở:
Các khối ảnh trích ra từ tất cả các ảnh mẫu trong tập ảnh mẫu được sắp
xếp dưới dạng các vectơ bằng cách xếp chồng các cột lên nhau. Gọi xi(r ) là
vectơ thu được từ khối thứ i của ảnh mẫu thứ r.
Trung bình của các vectơ được tính theo công thức:
R T r
1
R x i
r
T
r 1
r r 1 i 1
trong đó R là số ảnh mẫu trong tập mẫu và T(r) là số các khối trích ra được từ
ảnh thứ r. Một tập mới các vectơ được sinh ra bằng cách trừ các vectơ cũ với trung
bình các vectơ. Đây được gọi là bước quy 0 tập mẫu. Tập các vectơ mới là tập các
vectơ có trung bình thống kê bằng 0 và có thể sử dụng để tính các cơ sở của phép
biến đổi KLT:
xir xir
~
T
r 1
r r 1 i 1
Các vectơ riêng được chuẩn hoá uk của ma trận hiệp biến C được xác định
theo phương trình Cuk=λkuk với λk là trị riêng tương ứng với các vectơ riêng của ma
trận C.
Khi đã có trong tay các vectơ cơ sở của phép biến đổi, quá trình xác định các
vectơ quan sát từ tập hợp các khối quan sát trích ra từ cả ảnh mẫu và ảnh kiếm thử
được thực hiện như sau:
62
Các khối quan sát được sắp xếp lại theo thứ tự cột ảnh để tạo thành dạng
vectơ
Từng vectơ được trừ đi vectơ trung bình đã được tính ở trên.
Vectơ kết quả được chiếu vào không gian vectơ riêng của ma trận hiệp
biến trên tương ứng với các trị riêng lớn nhất λk. Các đại lượng sinh ra bởi
phép chiếu tạo nên các vectơ quan sát.
Chú ý rằng chỉ có một số ít các đại lượng đầu tiên có giá trị quan trọng nghĩa
là có mang thông tin, giá trị của các đại lượng giảm dần khi chỉ số vectơ tăng.
Trong thí nghiệm với cơ sở dữ liệu ORL ở trên, các đại lượng với chỉ số lớn hơn 10
bị loại bỏ do có giá trị không đáng kể. Chính đây là nguyên tắc của KLT vì đây
phương pháp này đôi khi cũng được gọi là phương pháp phân tích các thành phần
chính PCA tuy rằng PCA trong trường hợp này chỉ đóng vai trò trong xử lý dữ liệu
còn vai trò thực hiện nhận dạng thì lại do mô hình Markov ẩn đảm nhiệm.
Tính toán các trị riêng và vectơ riêng
Trong cả phương pháp nhận dạng thông qua PCA trình bày ở trên và phương
pháp phân tích dữ liệu sử dụng KLT, ta gặp phải một vấn đề liên quan rất nhiều đến
chi phí tính toán. Đó là vấn đề tìm các giá trị riêng và vectơ riêng của một ma trận
hiệp biến. Ma trận hiệp biến trong các trường hợp này là ma trận đối xứng với kích
thước rất lớn. Với cơ sở dữ liệu ảnh ORL và độ dài khối quan sát là L=10 hàng thì
kích thước ma trận này là 920 x 920. Một yêu cầu của bài toán là không cần thiết
phải liệt kê toàn bộ các vectơ riêng mà chỉ cần liệt kê một số (cụ thể là 10) vectơ
riêng tương ứng với trị riêng lớn nhất.
Để giải quyết bài toán, thường thì không thể tính toán trên cả ma trận ảnh
ban đầu vì chi phí tính toán có lớn. Một phương pháp được đưa ra để giảm chi phí
tính toán thông qua việc tính gián tiếp các vectơ riêng theo cách sau:
Giả sử có M vectơ mẫu có trung bình thống kê bằng 0 (cách xác định như
trên) ký hiệu là {xi} với xi RN. Ma trận hiệp biến của tập dữ liệu mẫu khi đó sẽ
được định nghĩa là:
63
M
μ k v ki xi
i 1
64
được lấy dưới những điều kiện chiếu sáng khác nhau và tất cả các ảnh được sử dụng
đê luyện chỉ một mô hình Markov. Trong khi đó, đối với nhận dạng khuôn mặt, mỗi
cá nhân trong cơ sở dữ liệu được biểu diễn bởi một mô hình Markov và tập hợp các
ảnh khác nhau của cùng một người được sử dụng để luyện mô hình đó.
Sau khi trích chọn các khối quan sát từ các ảnh mặt trong tập mẫu, các vectơ
quan sát được tạo ra và được sử dụng để luyện mô hình. Với các ảnh mẫu trong cơ
sở dữ liệu ORL, các thông số của các khối quan sát được lựa chọn là L=10 hàng,
W=92 cột, P=8 dòng, và sử dụng 10 đại lượng KLT tương ứng với 10 vectơ riêng
lớn nhất. Quá trình luyện mô hình được thực hiện theo các bước sau:
Đầu tiên, các tham số được khởi đầu bằng cách phân đoạn đều các dữ liệu
mẫu theo số trạng thái của mô hình Markov, sau đó các vectơ quan sát ứng
với mỗi trạng thái được sinh ra và sử dụng để tính toán các đánh giá ban đầu
của ma trận xác suất quan sát B. Các phần tử của ma trận A cũng được khởi
đầu với các giá trị thống nhất với cấu trúc tuần tự từ trên xuống dưới của mô
hình nghĩa là aij=0 với j<i và j>i+1, hay nói cách khác mô hình chỉ có thể
chuyển từ một trạng thái trở lại chính nó hoặc chuyển sang trạng thái tiếp
theo. Với ma trận phân phối xác suất trạng thái khởi đầu π, ta khởi tạo π 1=1
và πi=0 với i≠1 nghĩa là mô hình chỉ bắt đầu từ trạng thái 1.
Ở các bước lặp tiếp theo, phân đoạn đều mẫu được thay thế bằng phân
đoạn Viterbi. Phân đoạn Viterbi là một phương pháp phân đoạn đặc biệt
trong đó các dãy trạng thái tương ứng với các vectơ quan sát tạo thành các
đoạn có cùng trạng thái. Chú ý rằng phân đoạn Viterbi chỉ xuất hiện trong
các mô hình trái phải tuần tự không có bước nhảy. Kết quả của phép phân
đoạn này đối với mỗi dãy quan sát là đánh giá tối đa độ tương tự của tập các
vectơ quan sát bên trong các trạng thái tương ứng với mô hình hiện tại. Bước
lặp tiếp tục được thực hiện cho đến khi độ tương tự phân đoạn Viterbi ở các
bước lặp kết tiếp nhỏ hơn một ngưỡng xác định. Khi đó, mô hình Markov coi
như được khởi tạo.
Tiếp theo sau việc khởi tạo mô hình, các tham số mô hình được đánh giá
lại sử dụng thủ tục đánh giá lại Baum – Welch. Quá trình này điều chỉnh lại
các tham số mô hình để cực đại hoá xác suất quan sát dữ liệu mẫu.
~
Mô hình sau khi đánh giá lại λ được so sánh với mô hình trước λ thông
qua tỉ số khoảng cách phản ánh độ tương tự thống kê giữa các mô hình. Nếu
tỉ số khoảng cách vượt quá một ngưỡng, mô hình cũ λ được thay thế bởi mô
~
hình mới λ và toàn bộ quá trình luyện được thực hiện lại, nếu tỉ số khoảng
cách nhỏ hơn ngưỡng, mô hình được coi là hội tụ và các tham số đạt được
giá trị cuối cùng.
Chiến lược huấn luyện mô hình trên đây được biểu diễn trong hình 4.9.
65
Hình 4-9. Chiến lược huấn luyện mô hình Markov ẩn cho biểu diễn khuôn mặt
66
Hình 4-10. Nhận dạng mặt sử dụng mô hình Marov ẩn
67
Hình 4-11. Tìm kiếm khuôn mặt sử dụng mô hình Markov
Một phương pháp tiếp cận khác sử dụng mô hình Markov ẩn trong tìm kiếm
khuôn mặt là phương pháp trong đó việc tìm kiếm khuôn mặt thực hiện trên toàn bộ
ảnh với các vùng quét là các cửa sổ hình chữ nhật quét trong không gian các vectơ
quan sát thay vì quét trong không gian điểm ảnh. Phương pháp này có thể mô tả vắn
tắt như sau:
Các khối quan sát được trích ra trong toàn bộ ảnh bằng cách lấy ra các
khối hình chữ nhật kích thước LX x LY. Các khối quan sát được lấy liên tục
theo độ gối chiều ngang là PX và độ gối theo chiều dọc là PY. Thao tác này
biến không gian hai chiều các điểm ảnh thành không gian hai chiều các khối
quan sát với kích thước nhỏ hơn rất nhiều so với không gian ban đầu. Các
kích thước và độ gối theo chiều dọc được chọn bằng các kích thước và độ
gối trong huấn luyện mô hình và độ gối theo chiều ngang được chọn ngẫu
nhiên. Việc tăng độ gối theo chiều ngang sẽ làm tăng độ chính xác tìm kiếm
nhưng đồng thời cũng làm tăng chi phí tính toán.
Từ các khối quan sát, các vectơ quan sát được tính toán và sau đó là các
xác suất chuyển trạng thái tính theo phương pháp đã chỉ ra trong phần huấn
luyện mô hình. Chú ý thêm rằng việc tính các xác suất trạng thái có thể được
tiết kiệm khi xem xét đến độ gối lớn giữa các vùng kề nhau.
Độ tương tự mặt sau đó được tính đối với mỗi cửa sổ dạng chữ nhật các
vectơ quan sát thông qua thuật toán Viterbi. Độ tương tự mặt này có thể
được cải thiện độ chính xác thông qua một số phương pháp trong đó có
phương pháp mô hình hoá chuỗi trạng thái. Một chuỗi d i của trạng thái i
được mô hình sử dụng phân phối Poisson. Sau khi tính được độ tương tự mặt
Viterbi, một hệ số điều chỉnh sẽ được sử dụng và độ tương tự mới sẽ được
tính theo công thức sau:
68
Giai đoạn cuối cùng là ra quyết định lựa chọn các vùng chữ nhật có chứa
mặt hay không. Các chuỗi quan sát với có độ tương khuôn mặt cao hơn một
giá trị ngưỡng được cho là các vùng có khả năng mặt. Để loại bỏ các cảnh
báo sai về vị trí khuôn mặt, chỉ có những vùng gần vị trí khuôn mặt thực sự
nhất mới được lựa chọn là thực sự chứa khuôn mặt, các vùng khác sẽ bị loại
bỏ.
Như vậy với một ảnh kiểm thử đầu vào và một mô hình Markov ẩn biểu diễn
khuôn mặt, có thể xác định được vùng trong ảnh thực sự chứa khuôn mặt. Tuy
nhiên, để giảm thiểu thời gian tính toán và tăng hiệu năng của công việc thì việc kết
hợp các phương pháp khác như phương pháp dựa trên màu da với phương pháp sử
dụng mô hình Markov là một giải pháp tốt hơn cả.
Tuy nhiên, thông qua cách giải quyết hai bài toán tìm kiếm và nhận dạng sử
dụng mô hình Markov, có thể thấy bài toán tìm kiếm có độ phức tạp cao hơn bài
toán nhận dạng. Trong nhiều trường hợp với một hệ thống, các phương pháp nhận
dạng được sử dụng là phương pháp với mô hình Markov trong khi để vị tìm ra vị trí
khuôn mặt, một phương pháp khác hiệu quả hơn được áp dụng .
69
Hình 4-12. Mô hình Markov ẩn nhúng với 3 siêu trạng thái
Trên góc độ trực quan, có thể thấy rằng mô hình Markov ẩn nhúng là mô
hình rất thích hợp để biểu diễn các dữ liệu hai chiều. Với các mô hình dạng như mô
hình Markov hai chiều kết nối đầy đủ và mô hình Markov ẩn nhúng áp dụng vào
tìm kiếm và nhận dạng khuôn mặt, các đặc trưng của khuôn mặt được xử lý theo hai
chiều thay vì theo một chiều giống như trong mô hình Markov ẩn một chiều. Điều
này đồng nghĩa với các khối quan sát cũng được lấy theo hai chiều và do đó độ
phân biệt giữa các khuôn mặt hay các mô hình mặt được chính xác hơn.
Đây sẽ là các hướng phát triển của ứng dụng mô hình Markov ẩn trong
không chỉ tìm kiếm và nhận dạng khuôn mặt người mà còn trong các lĩnh vực ứng
dụng khác của mô hình Markov ẩn.
4.2 Kết chương
Trong chương này đã trình bày chi tiết phương pháp nhận dạng mặt người
dựa trên mô hình Markov ẩn từ cơ sở lý thuyết, các bài toán cơ bản đến kỹ thuật xử
lý dữ liệu, huấn luyện mô hình và phương pháp tìm kiếm và nhận dạng khuôn mặt
người cũng như chỉ ra xu thế phát triển của phương pháp trong tương lai.
70
5 KẾT LUẬN
Ngày nay, cùng với những tiến bộ vượt bậc của khoa học kỹ thuật nói chung,
bộ môn khoa học xử lý ảnh đã và đang thu được những thành tựu lớn lao và chứng
tỏ vài trò không thể thiếu với những ứng dụng sâu rộng trong khoa học kỹ thuật
cũng như đời sống xã hội. Một bộ phận của khoa học xử lý ảnh là lĩnh vực thị giác
máy tính hiện đang thu hút rất nhiều sự quan tâm của các nhà nghiên cứu xử lý ảnh
bởi vì 80% thông tin con người thu nhận được và xử lý hàng ngày là từ hình ảnh.
Một trong những ứng dụng quan trọng của thị giác máy tính đó là nhận dạng ảnh
mặt người ứng dụng trong công tác giám sát tự động, kiểm tra an ninh, ...
Để làm được những việc đó trước hết hệ thống phải hiểu được thông tin
trong ảnh. Ví dụ để nhận dạng một người, trước hết nó phải xác định được mặt của
người đó ở đâu trong ảnh? để xác định được mặt của người trong ảnh có thể sử
dụng da người (thông qua các mô hình da). Sau đó đối sánh ảnh mặt của người này
với CSDL ảnh mặt (có thể chỉ là các template của mặt) hiện có để xác thực. Xuất
phát từ thực tế đó Luận văn xây dựng nhằm tìm hiểu tổng quan về tìm kiếm và nhận
dạng khuôn mặt người trong ảnh, một số phương pháp thường được áp dụng và ứng
dụng của chúng. Cụ thể luận văn đã đạt được các kết quả chính sau:
Tổng quan về hệ thống nhận dạng mặt người
Hệ thống lại một số phương pháp sử dụng trong dò tìm khuôn mặt người
trong ảnh màu dựa trên màu da.
Trình bày phương pháp trích chọn đặc trưng ảnh bằng phương pháp phân
tích thành phần chính - PCA.
Trình bày phương pháp nhận dạng mặt người dựa trên mô hình Markov
ẩn.
Định hướng tương lai về mặt ứng dụng
Kết hợp nhiều phương pháp như SVM, HMM, Fuzzy trong nhận dạng khuôn
mặt đồng thời sử dụng AdaBoost kết hợp với một số bộ dò tìm khác (tăng tốc độ
trong việc dò tìm mặt) để xây dựng bài toán kiểm tra xác thực hộ chiếu tại sân bay
thông qua việc đối sánh giữa ảnh trong hộ chiếu, ảnh mặt chụp từ camera và ảnh có
trong CSDL.
71
6 TÀI LIỆU THAM KHẢO
Tiếng Việt
[1] Nguyễn Thanh Thuỷ, Lương Mạnh Bá, Nhập môn xử lý ảnh số, Nhà xuất
bản khoa học kỹ thuật, 1999.
Tiếng Anh
[2] D. Brown, I. Craw, and J. Lewthwaite, A som based approach to skin
detection with application in real time systems. In Proc. of the British
Machine Vision Conference, volume 2, pages 491_500, 2001.
[3] D. Chai and A. Bouzerdoum. A bayesian approach to skin color
classification in ycbcr color space. In Proc. IEEE Region Ten Conference
(TENCON'2000), volume 2, pages 421- 424, 2000.
[4] Wenyi Zhao, Arvindh Krishnaswamy, Rama Chellappa, Danie L.Swets, John
Weng, Discriminant Analysis of Principal Components for Face
Recognition, Centrer for Automation Research, University of Maryland
(page 73) of Face Recognition from Theory and Applications.
[5] John Daugnman, Phenotypic versus Genotypic Approches to Face
Recognition, University of Cambridge, the Computer laboratory
Cambridge CB3 3QG England (page 108) of Face Recognition from
Theory and Applications.
[6] Emmanuel Viennet và Francoise Fogelman Soulie, Connectionists Methods
for Human face Rrocessing, University Paris 13, 93430 Villetaneuse,
France (page 124) of Face Recognition from Theory and Applications.
[7] Antonio J.Colmenarez và Thomas S.Huang, Face Detection and Recognition,
Department of Electrical and Computer Engineering, Coordinated Science
Laborotory, and Beckman Institute for Advanced Science and Technology,
University of Illinois at Urbana-Champaign, 405 N. Mathews Ave, USA
(page 174) of Face Recognition from Theory and Applications.
[8] Kazunori Okada, Johannes Steffens, Thomas Maurer, Hai Hong, Egor
Elagin, Hartmut Neven, and Christoph, Computer Science Department and
Center for Neural Engineering, University of Southrn California Los
Angeles, USA (page 286) of Face Recognition from Theory and
Applications.
[9] Baback Moghaddam và Alex Pentland, Beyond Linear Eigenspaces:
Bayesian Matching for Face Recognition, MIT Media Laboratory, 20
72
Ames St. Cambridge, MA 02139, USA (page 230) of Face Recognition
from Theory and Applications.
[10] Massimo Tistaelli và Enrico Grosso, Active Vision-base Face Recognition:
Issues, Application and Techniques, University of Genoa, Department of
Communication, Computer and System Science (DIST), Computer Vision
Laboratory, Via Opera Pia 13-16145 Genoa, Italy (page 262) of Face
Recognition from Theory and Applications.
[11] Jeffrey Huang, Chengjun Liu, và Harry Wechsler, Eye Detection and Face
Recognition Using Evolutionary Computation, Department of Computer
Science, George Mason University, http://www.chagall.gmu.edu/ (page
348) of Face Recognition from Theory and Applications.
[12] Daniel Bgraham và Nigel M Allinson, Characterising Virtual
Eigensignatures for General Purpose Face Recognition, Image Engineering
and Neural Computing Group, Department of Electrical Engineering and
Electronics, University of Manchester Institute of Science and Technology.
Manchester M60 1QD, UK (page 446) of Face Recognition from Theory
and Applications.
[13] Jason M.Kinser, Pulse Images for Face Recognition, Institute for
Biosciences, Bioinformatics, and Biotechnology, George Masson,
University, Fairfax, VA 22030-4444 (page 503) of Face Recognition from
Theory and Applications.
[14] Oi Bin Sun, Chian Prong Lam và Jian Kang Wu, Using Differential
Constraints to Generate a 3D Face Model from Stereo, Computer Graphics
Laboratory (LIG), EPEL, CH-1015, Lausanne, SWITZER-LAND (page
556) of Face Recognition from Theory and Applications.
[15] Fabien Cardinaux, Automatic Face Recognition in Weakly Constrained
Environment, Phd Student – Vision Group, Dalle Molle Institute for
Perceptual Artificial Intelligence, 2003.
[16] Huicheng Zheng, Maximum entropy modeling for skin detection: with an
application to Internet filtering, Docteur en Informatique, 2004
[17] D. Maltoni, D. Maio, A.K. Jain, S. Prabhakar, Handbook of Fingerprint
Recognition, Chapter 1, Springer, New York, 2003.
[18] Huicheng Zheng and Mohamed Daoudi, Bruno Jedynak, Statistical Models
for Skin Detection, 2003.
[19] Richard O.Duda, Peter E.Hart, David G.Stork, Pattern Classification,
Second Edition.
[20] Dengpan Mou, Autonomous Face Recognition, Doktor-Ingenieurs (Dr.-
Ing.), Datum der Promotion: 22. August, 2005.
73
[21] M.J. Jones and J. M. Rehg, Statistical color models with application to skin
detection, International Journal of Computer Vision, 46(1):81_96, January
2002.
[22] Huicheng Zheng, Bruno Jedynak, Maximum Entropy Models for Skin
Detection, 2004
[23] Richard O. Duda, Peter E. Hard, David G. Stork, “Pattern Classification”,
Secod Edition.
[24] Linda Shapiro, George Stockman, “Computer Vision”, Mar 2000.
[25] R-L. Hsu, M. Abdel-Mottaleb, and A.K. Jain. Face detection in color
images, IEEE Transactions on Pattern Analysis and Machine Intelligence,
24(5):696_706, May 2002.
[26] Nizar Bouguila and Djemel Ziou, Dirichlet-Base Probability Skin
Detection, 2004
[27] J.Y. Lee and S.I. Yoo. An elliptical boundary model for skin color
detection. In Proc. International Conference on Imaging Science, Systems
and Technology, Las Vegas, USA, June 2002.
[28] Erik Hjelmas, “Face Detection: A Survey”, Computer Vision and Image
Understanding (83), 2001, 236-274.
[29] David J.C. MacKay , Information Theory, Inference and Learing
Algorithm, e-book, Draft 3.1415 January 12, 2003.
[30] Rakesh Dugad, U.B Desai, “A tutorial on Hidden Markov Model”,
Technical Report No SPANN -96.1, 1996.
[31] Eric Folser-Lussier, “Markov Models and Hidden Markov Model: A brief
tutorial”, International Computer Science Institute, 1998.
[32] Ara Netfian, ”A Hidden Markov Model-based approach for Face Detection
and Recognition”, Doctor Thesis of Philosophy in Engineering, Georgia
Institute of Technology, 1999.
[33] Lindsay I Smith, A tutorial on Principal Components Analysis, February
26, 2002.
[34] Principal Components Analysis, Lecture.
[34] Face Recognition Vendor Test http://www.frvt.org/
[35] Biometric Resource Center http://www.itl.nist.gov/div893/biometrics
74