ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
ĐỖ ĐÌNH LỰC
NGHIÊN CỨU PHƯƠNG PHÁP
NHẬN DẠNG MẶT NGƯỜI DỰA TRÊN
PCA-LDA VÀ MẠNG NEURAL
LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
HÀ NỘI - 2015
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
ĐỖ ĐÌNH LỰC
NGHIÊN CỨU PHƯƠNG PHÁP
NHẬN DẠNG MẶT NGƯỜI DỰA TRÊN
PCA-LDA VÀ MẠNG NEURAL
Ngành: Công nghệ thông tin
Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số: Chuyên ngành đào tạo thí điểm
LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS – TS NGÔ QUỐC TẠO
MỤC LỤC
LỜI CẢM ƠN ......................................................................................................... 1
LỜI CAM ĐOAN .................................................................................................... 2
MỤC LỤC .............................................................................................................. 3
DANH MỤC CÁC TỪ VIẾT TẮT .......................................................................... 5
DANH MỤC CÁC BẢNG ....................................................................................... 6
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ.................................................................... 7
MỞ ĐẦU ................................................................................................................ 9
CHƯƠNG ITỔNG QUAN VỀ NHẬN DẠNG MẶT NGƯỜI ................................. 11
1.1 Giới thiệu về xử lý ảnh .................................................................................... 11
1.1.1 Khái niệm xử lý ảnh số .............................................................................. 13
1.1.2 Các ứng dụng của xử lý ảnh số .................................................................. 14
1.1.3 Các bước cơ bản trong xử lý ảnh số ........................................................... 15
1.2 Giới thiệu chung về phân tích ảnh.................................................................... 16
1.2.1 Khái niệm .................................................................................................. 16
1.2.2 Các ứng dụng của phân tích ảnh................................................................. 18
1.3 Nhận dạng mặt người ...................................................................................... 20
1.3.1 Khái niệm nhận dạng mặt người qua ảnh ................................................... 20
1.3.2 Các ứng dụng của nhận dạng mặt người..................................................... 24
1.4 Các hướng tiếp cận trong nhận dạng mặt người ............................................... 25
1.4.1 Trích chọn đặc trưng sử dụng Eigenface .................................................... 25
1.4.2 Trích chọn đặc trưng sử dụng mô hình Markov ẩn ..................................... 28
1.4.3 Mẫu nhị phân cục bộ (LBP) ....................................................................... 31
1.4.4 Phương pháp phân tích thành phần chính ................................................... 36
CHƯƠNG 2NHẬN DẠNG KHUÔN MẶT DỰA TRÊN PCA-LDA VÀ MẠNG
NƠRON ................................................................................................................ 37
2.1 Phương pháp phân tích thành phần chính (PCA).............................................. 37
2.1.1 Cơ sở toán học ........................................................................................... 39
2.1.2 Kỹ thuật trích chọn đặc trưng PCA ............................................................ 48
6
DANH MỤC CÁC BẢNG
Bảng 1.3 Các ứng dụng tiêu biểu của nhận dạng mặt người.................................... 21
Bảng 2.1 Ví dụ về tính độ lệch chuẩn .................................................................... 40
Bảng 2.2 Tập dữ liệu hai chiều và tính toán hiệp phương sai .................................. 42
Bảng 4.1 Các module chính của chương trình ........................................................ 69
7
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1 Tổng quan các giai đoạn cơ bản trong xử lý ảnh .......................................... 15
Hình 1.2: Các kỹ thuật phân tích ảnh ......................................................................... 17
Hình 1.4. Mô hình hệ thống nhận dạng mặt người ..................................................... 21
Hình 1.5 Cơ sở dữ liệu ảnh mặt người AT&T (ORL)................................................. 23
Hình1.6 Một số hình ảnh cơ sở dữ liệu ảnh mặt người Yale A ................................... 24
Hình 1.7 Mô hình Markov cho định vị khuôn mặt: .................................................... 30
(a) Các vector quan sát; (b) Các trạng thái ẩn ............................................................. 30
Hình 1.8 Ví dụ sự tính toán LBP ................................................................................ 31
Hình1.9 Minh họa toán tử LBP mở rộng vớị P và R khác nhau. ................................. 33
Hình 1.10 Ví dụ LBP8,1 ............................................................................................ 33
Hình 1.11 LBP giống nhau với các độ sáng khác nhau............................................... 34
Hình 1.12 Ví dụ mẫu đồng nhất và mẫu không đồng nhất .......................................... 34
Hình 1.13 58 Mẫu đồng nhất của
( , )
........................................................ 35
MỞ ĐẦU
Nhận dạng ảnh đang ngày càng chứng tỏ được vai trò quan trọng củamình và
đang được ứng dụng ngày càng rộng rãi trong cuộc sống hiện đại. Bên cạnh đó, một
lĩnh vực của nhận dạng ảnh là nhận dạng mặt người cũng đang ngày càng được ứng
dụng nhiều, đặc biệt là trong các lĩnh vực an ninh. Như chúng ta đã biết,khuôn mặt
mỗi người có những nét đặc trưng riêng.Nhận ra được những nét đặc trưng đó, có
nghĩa là nhận ra được người đó. Mặc dù đặc trưng của khuôn mặt không đảm bảo
được tính duy nhất như vân tay hay võng mạc mắt, tuy nhiên việc xây dựng một hệ
thống nhận dạng mặt đơn giản hơn so với một hệ thống nhận dạng vân tay hay nhận
dạng mắt. Do đó, trong những trường hợp không thực sự đòi hỏi quá an toàn và chính
xác, thì việc xây dựng một hệ thống nhận dạng mặt thay thế cho một hệ thống nhận
dạng vân tay hay hệ thống nhận dạng võng mạc mắt là một giải pháp hợp lý. Bên cạnh
đó, nhận dạng vân tay và nhận dạng võng mạc đòi hỏi việc thu nhận tín hiệu phải trực
tiếp và đòi hỏi độ chính xác cao, mà điều này là không thể trong nhiều trường hợp, đặc
biệt là trong khoa học hình sự. Vì thế, trong những trường hợp này thì không tồn tại
một giải pháp thay thế nào khác cho nhận dạng mặt người.
Cóhaiphươngphápnhậndạngphổbiếnhiệnnaylànhận dạng dựa trên đặc trưng
hình học của cácphần tử trên khuôn mặt như biển đổi Sóng Wavelet (Gabor
Wavelet)vàMạng Nơron (Neural Network),…và nhận dạng dựa trên xét tổng thể toàn
khuôn mặt nhưphươngpháp Phân tích thành phần chính (PrincipalComponent Analysis
– PCA) phươngpháp Phân tíchphân lớp tuyếntính (Linear Discriminant Analysis –
LDA),...
Kết
hợp
phươngpháp
CHƯƠNG I
TỔNG QUAN VỀ NHẬN DẠNG MẶT NGƯỜI
1.1 Giới thiệu về xử lý ảnh
Xử lý ảnh là một lĩnh vực mang tính khoa học và công nghệ. Nó là một ngành
khoa học mới mẻ so với nhiều ngành khoa học khác nhưng tốc độ phát triển của nó rất
nhanh, kích thích các trung tâm nghiên cứu, ứng dụng, đặc biệt là máy tính chuyên
dụng riêng cho nó.
Cùng với ngôn ngữ tự nhiên, hình ảnh đã đóng góp một vai trò hết sức quan
trọng trong việc trao đổi thông tin. Tính trực quan của hình ảnh đã giúp cho con người
hiểu rõ và sâu sắc hơn các thông tin cần thu thập. Người ta đã chứng minh được rằng,
trong tất cả các kênh thu nhận thông tin của con người thì lượng thông tin thu nhận
qua kênh thị giác chiếm khoảng 70%. Hình ảnh là kết quả của việc thu nhận và biểu
diễn của năng lượng ánh sáng trải dài từ tia gamma (có bước sóng nhỏ) đến sóng radio
(có bước sóng lớn). Tuy nhiên, mắt người chỉ cảm nhận được một vùng giới hạn rất
nhỏ trong phổ điện từ. Ngược lại, máy tính có thể đọc được một vùng rất rộng trong
phổ điện từ, từ tia gamma đến sóng radio. Nó có thể biểu diễn và xử lý những bức ảnh
được sinh ra bởi những nguồn mà con người không thể nhận biết được, như ảnh siêu
âm, ảnh hồng ngoại, ảnh trong vùng tia X, … Do đó xử lý ảnh có một phạm vi ứng
dụng tương đối rộng.
Xử lý ảnh là một trong những cách tiếp cận phân tích, tổng hợp hình ảnh theo ý
tưởng và mục đích của người sử dụng. Tuy xử lý ảnh là một trong những khoa học còn
tương đối mới so với nhiều ngành kho học khác, song những năm gần đây, xử lý ảnh
và đồ họa đã phát triển một cách mạnh mẽ và đã gặt hái được nhiều thành công góp
phần vào sự phát triển chung của ngành công nghệ thông tin.
Các phương pháp xử lý ảnh bắt nguồn từ hai ứng dụng: nâng cao chất lượng
thông tin hình ảnh đối với mắt người và xử lý số liệu cho máy tự động. Một trong
những ứng dụng đầu tiên của xử lý ảnh là nâng cao chất lượng ảnh báo truyền qua cáp
giữa London và NewYork vào những năm 192x. Thiết bị đặc biệt mã hóa hình ảnh
(báo), truyền qua cáp và khôi phục lại ở phía thu. Vấn đề nâng cao chất lượng hình ảnh
lúc đầu có liên quan đến việc lựa chọn quá trình in và phân bố các mức sáng (tông và
nghiệp để điều khiển và kiểm tra sản phẩm, nhận dạng mục tiêu quân sự, tự động xử lý
vân tay, hiển thị lên màn hình ảnh X-Quang và các mẫu máu, xử lý bằng máy các hình
ảnh chụp từ vệ tinh để dự báo thời tiết, nén ảnh để lưu và truyền được nhiều hơn tín
hiệu ảnh trong thông tin, máy tính, truyền hình thông thường và truyền hình có độ
phân giải cao.
13
1.1.1 Khái niệm xử lý ảnh số
Xử lý ảnh số là một ngành khoa học nhằm trang bị phương pháp luận, kỹ thuật
để trang bị cho máy tính xử lý ảnh đầu vào trên máy tính với mục tiêu nhận được ảnh
kết quả ở đầu ra theo mong muốn của con người… Như vậy xử lý ảnh là một quá trình
từ ảnh thu nhận đầu vào xử lý tăng cường và nâng cao chất lượng ảnh, phân tích ảnh,
hiểu ảnh, mã hóa, nén ảnh… cho đến khi thu nhận được ảnh kết quả tốt hơn theo mong
muốn của con người. Từ đó giúp cho con người có được cách nhìn trực quan hơn và
sinh động hơn về hình ảnh. Xử lý ảnh số còn là việc sử dụng các thuật toán máy tính
để xử lý các ảnh số dưới sự trợ giúp của máy tính.
Xử lý ảnh số có thể chia làm bốn lĩnh vực, tùy thuộc vào loại công việc. Đó là
cải thiện và nâng cao chất lượng ảnh, phục hồi ảnh, mã hóa ảnh và hiểu ảnh. Trong cải
thiện và nâng cao chất lượng ảnh, ảnh được xử lý để xem, như trong truyền hình, hoặc
là được xử lý trước để trợ giúp hoạt động của máy móc, như trong nhận dạng đối
tượng. Trong phục hồi ảnh, ảnh bị xuống cấp một số trường hợp, chẳng hạn bị nhòe,
và mục đích là để giảm bớt hoặc loại bỏ hẳn ảnh hưởng sự xuống cấp. Phục hồi ảnh có
liên quan mật thiết đến cải thiện ảnh. Khi ảnh xuống cấp, việc cải thiện ảnh thường
đem lại kết quả làm giảm sự xuống cấp. Tuy nhiên có một số sự khác nhau giữa phục
hồi ảnh và cải thiện ảnh. Trong phục hồi ảnh, một số ảnh lý tưởng thường bị xuống cấp
và mục đích phục hồi là tạo ra ảnh sau xử lý giống như ảnh ban đầu. Trong việc cải
thiện ảnh, mục đích cải thiện ảnh là làm cho ảnh sau khi xử lý trong đẹp hơn ảnh chưa
xử lý. Để minh học sự khác nhau này, lưu ý rằng một ảnh gốc chưa xuống cấp không
những máy tính số. Ngày nay, hầu hết các thông tin ảnh đều được chuyển sang dạng
ảnh số. Vì vậy, trong gần như tất cả các lĩnh vực của các ngành kỹ thuật đều có ít
nhiều liên quan đến ảnh số và sử dụng kỹ thuật xử lý ảnh số.Ứng dụng của xử lý ảnh
có khả năng tác động mạnh mẽ nhất đến cuộc sống của chúng ta là lĩnh vực y tế. Soi
chụp ảnh bằng máy tính dựa trên cơ sở định lý cắt lớp (project slice) được dùng
thường xuyên trong xét nghiệm lâm sàng, ví dụ phát hiện và nhận dạng u não. Những
ứng dụng y khoa khác của xử lý ảnh gồm cải thiện ảnh X-Quang và nhận dạng đường
biênmạch máu từ những ảnh chụp bằng tia X.
Có những ứng dụng khác gần gũi hơn với cuộc sống gia đình là cải tiến ảnh
tivi. Hình ảnh trên màn hình tivi có các khuyết tật do độ phân giải hạn chế, bị rung
rinh,nhiều nền và trượt hình do đan dòng ở những mức độ khác nhau. Xử lý ảnh số có
tác động quyết định đến việc cải thiện chất lượng hình ảnh của những hệ truyền hình
hiện tại và làm phát triển những hệ truyền hình mới có độ phân giải cao. Một vấn đề
nữa của truyền thông video như hội nghị video, điện thoại video là cần có dải tần
rộng.Việc mã hóa thẳng chương trình video chất lượng yêu cầu đến 100 triệu bit/giây.
15
Nếu hy sinh một phần chất lượng và dùng các sơ đồ mã hóa ảnh số thì có thể đưa ra thị
trường những hệ truyền hình chất lượng đủ rõ với nhịp bit chỉ dưới 100 nghìn bit/giây.
Người máy càng ngày càng đóng vai trò quan trọng trong công nghiệp và gia
đình. Chúng sẽ thực hiện những công việc rất nhàm chán hoặc nguy hiểm và những
công việc mà tốc độ và chính xác vượt quá khả năng của con người. Khi người máy
trở nên tinh vi hơn, thị giác máy tính sẽ đóng vai trò ngày càng quan trọng. Người ta
sẽ đòi hỏi người máy không những phát hiện và nhận dạng các bộ phận công nghiệp,
mà còn “hiểu” được những gì chúng “thấy” và đưa ra những hành động phù hợp. Xử
lý ảnh số có tác động rất lớn đến thị giác máy tính.
Ngoài những ứng dụng trên thì còn bao gồm các ứng dụng trong các lĩnh vực
như điện tử gia đình, thiên văn học, sinh vật học, vật lý, nông nghiệp, địa lý, nhân
Phân tích ảnh: Phân tích ảnh là một quá trình gồm nhiều giai đoạn nhỏ hơn: tăng
cường ảnh để nâng cao chất lượng ảnh và khắc phục những thiếu sót trong quá trình thu
nhận ảnh và số hóa ảnh như nhiễu, méo … làm nổi bật các đặc trưng chính của ảnh đảm
bảo cho ảnh gần giống với hình ảnh thật nhất. Tiếp theo là phát hiện và trích chọn các
đặc trưng như biên, màu, kết cấu … Phân vùng ảnh là tách một ảnh đầu vào thành các
vùng thành phần để biểu diễn phân tích, nhận dạng ảnh. Đây là phần phức tạp khó khăn
nhất trong xử lý ảnh và cũng dễ gây lỗi, làm mất độ chính xác của ảnh.Kết quả nhận
dạng ảnh phụ thuộc rất nhiều vào công đoạn này.
Đối sánh, nhận dạng ảnh: Là quá trình đối sánh, phân lớp ảnh, nhận biết được
tên gọi của đối tượng. Kết quả của quá trình này phục vụ cho các mục đích và các ứng
dụng khác nhau.
1.2Giới thiệu chung về phân tích ảnh
1.2.1 Khái niệm
Mục tiêu lớn nhất của phần lớn các ứng dụng xử lý ảnh là phân táchđược những
đặc trưng quan trọng từ dữ liệu ảnh đưa vào, để từ đó có thể mô tả, thể hiện cũng như
hiểu ảnh. Ví dụ, một hệ thống ảo có khả năng phân biệt các phần khác nhau của một
dây chuyền lắp ráp và đưa ra các đặc trưng của nó, ví dụ như kích cỡ, số lượng các
17
khiếm khuyết(hole).Những hệ thống phức tạp hơn còn có khả năng diễn giải các kết
quả phân tích, mô tả các đối tượng khác nhau cũng như mối quan hệ của chúng trong
một bức ảnh.
Phân tích ảnh khác với một số chức năng xử lý ảnh khác như khôi phục ảnh
(restoration), cải thiện ảnh (enhancement), mã hoá (coding). Các chức năng này biến
đổi ảnh đầu vào thành một ảnh đầu ra kháctheo các mục đích khác nhau. Còn đầu ra
của một hệ phân tích ảnh là rút ra các đặc trưng của các đối tượng bên trong ảnh để mô
tả, thể hiện ảnh.
Lĩnh vực phân tích ảnh bao gồm các công đoạn: trích chọn đặc trưng (features
Thống kê
Biên và đường bao
Phát hiện đường bao
Cây quyết định
Đặc trưng hình dạng
Phân lớp
Đo sự giống nhau
phát hiện ra các khối u trong cơ thể, tiến hành đo đạc và tính toán kích thước, hình
dạng các cơ quan nội tạng của con người, cũng như đếm số lượng các tế bào máu trong
cơ thể người. Tất cả những công việc đó, đều trải qua một trình tự, đó là chụp ảnh phân tích ảnh - hiểu ảnh - chẩn đoán hình ảnh.Nhờ có sự ứng dụng các hệ computer
vision vào trong y học đã đem lại những thành tựu lớn trong việc chẩn đoán bệnh.
Trong công nghiệp, các ứng dụng của phân tích ảnh cũng được áp dụng một
cách rộng rãi. Đó là các ứng dụng trong việc phát hiện và kiểm tra lỗi sản phẩm, và đặc
biệt là trong lĩnh vực robot tự động. Các robot tự động được sử dụng ngày càng rộng
rãi trong công nghiệp nhằm thay thế con người. Với sự trợ giúp của các hệ thống
computer vision các robot có thể nhận biết được không gian xung quanh. Hệ thống
computer vision sẽ truyền những tín hiệu phản hồi về cho chương trình xử lý của robot
và từ đó robot sẽ được điều khiển một cách thích hợp với hoàn cảnh hiện thời.
Trong lĩnh vực quân sự, hàng hải và hàng không, các hệ thống computer vision
đóng một vai trò to lớn. Từ những bức ảnh chụp được từ vệ tinh, người ta có thể tiến
hành phân tích, rồi điều khiển cho các tên lửa hoặc máy bay quân sự đánh trúng những
19
mục tiêu đã đề ra với một sai số rất nhỏ. Cũng vớinhững bức ảnh chụp từ vệ tinh, người
ta có thể tiến hành công tác hướng dẫn tàu thuyền qua lại trên biển tránh được những
khu vực nguy hiểm, hay điều khiển máy bay hạ cánh xuống những khu vực an toàn.
Với những ứng dụng quan trọng này, các hệ computer vision đang được ứng dụng ngày
càng rộng rãi.
20
1.3 Nhận dạng mặt người
1.3.1 Khái niệm nhận dạng mặt người qua ảnh
Vấn đề nhận dạng mặt người có thể trình bày một cách tổng quan như sau: Cho
tích ảnh mặt đang ngày càng được ứng dụng rộng rãi. Các ứng dụng của nhận dạng
người dựa trên mặt được thể hiện trong bảng 1.3:
Lĩnh vực
Các ứng dụng đặc trưng
Driver’s licences, Entitlement Programs
Immigration, National ID, Passports, Voter Registration
Nhân trắc học
Welfare
Desktop Logon ( Windows 95, Windows NT)
Application Security, Database Security, File Encryption
An toàn thông tin
Intranet Security, Internet Access, Medical Records
Secure Trading Terminals
Advanced Video Surveillance, CCTV Control
Law Enforcement
and Surveillance
Portal Control, Post-Event Analysis
Shoftlifting and Suspect Tracking and Investigation
Stored Value Security, User Authentification
SmartCards
Access Control
recognition… Trong khi nhận dạng vân tay và mống mắt có thể áp dụng trên thực tế
một cách rộng rãi thì nhận dạng mặt người vẫn còn nhiều thách thức.So với nhận dạng
vân tay và mống mắt, nhận dạng mặt có nguồn dữ liệu phong phú hơn và ít đòi hỏi sự
tương tác có kiểm soát hơn. Bài toán nhận dạng mặt người còn nhiều thách thức nên
hàng năm trong & ngoài nước vẫn có nhiều nghiên cứu về các phương pháp nhận dạng
mặt người.
Nhận dạng khuôn mặt là một nhiệm vụ dễ dàng đối với con người. Thí nghiệm
trong [9] đã chỉ ra, ngay cả trẻ sơ sinh 1-3 ngày tuổi có thể phân biệt khuôn
mặt. Nhưng làm thế nào với một máy tính? Cho đến nay chúng ta biết rất ít về nhận
dạng con người. Có phảiđặc điểm bên trong (mắt, mũi, miệng) hoặc các đặc điểm bên
ngoài (hình dạng đầu, chân tóc) được sử dụng cho một nhận dạng khuôn mặt. Bộ não
con người phân tích một hình ảnh và và mã hóa như thế nào? Theo nghiên cứu được
bởi David Hubel và Torsten Wiesel , rằng não của chúng ta có tế bào thần kinh chuyên
biệt phản ứng với từng hoàn cảnh cụ thể, chẳng hạn như đường, cạnh, góc độ hoặc
chuyển động. Vì chúng ta không nhìn thấy thế giới như những mảnh phân tán, vỏ não
của chúng ta bằng cách nào đó phải kết hợp các nguồn thông tin khác nhau vào các
mẫu hữu ích. Nhận diện khuôn mặt tách ra những đặc điểm có ý nghĩa từ một hình
ảnh, đưa chúng vào một sự biểu diễn hữu ích và thực hiện một số phân loại.
Để thử nghiệm phương pháp chúng ta cần có một cơ sở dữ liệu ảnh mẫu. Có ba
cơ sở dữ liệu ảnh mẫu phổ biến là:
Cơ sở dữ liệu AT&T (còn gọi là cơ sở dữ liệu ORL): Nó gồm 400 ảnh của 40
người, mỗi người có 10 ảnh với các biểu hiện (nhắm/mở mắt, cười/không cười) và
điều kiệu về hướng, ánh sáng khác nhau, các chi tiết trên khuôn mặt (có kính/không có
kính). Cơ sở dữ liệu AT&T được sử dụng trong luận văn này.
23
Hình1.5 Cơ sở