Nội dung chính của đồ án này xoay quanh các vấn đề, giải pháp khi xây dựng công cụ hỗ trợ nhận dạng ảnh mặt người. Cụ thể đồ án sẽ trình bày những nội dung sau:Các vấn đề và hướng giải pháp: các vấn đề khi xây dựng công cụ nhận dạng mặt người. Các ứng dụng đặc trưng của bài toán nhận dạng mặt người là những nội dung sẽ được trình bày trong chương 1.Lí thuyết và cách thực hiện phương pháp nhận dạng mặt người (PCA) sẽ được trình bày chi tiết và cụ thể trong chương 2.Xây dựng tập ảnh dữ liệu và tiến hành nhận dạng khuôn mặt sẽ được minh họa chi tiết trong chương 3.Đánh giá thử nghiệm và kết luận, đưa ra những đánh giá về ưu nhược điểm của phương pháp nhận dạng và các kết luận chung của đồ án
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ- VIỄN THÔNG
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Tên đề tài:
Nhận dạng ảnh mặt người bằng phương pháp PCA
Sinh viên thực hiện:
Giáo viên hướng dẫn:
Hà Nội, tháng 1 năm 2020
Trang 2TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ- VIỄN THÔNG
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Tên đề tài:
Nhận dạng ảnh mặt người bằng phương pháp PCA
Sinh viên thực hiện:
Người hướng dẫn:
Cán bộ phản biện:
Trang 3ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP
(Dùng cho giảng viên hướng dẫn)
Tên giảng viên đánh giá:
Họ và tên sinh viên: MSSV:
Tên đồ án:
Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây:
Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5)
Có sự kết hợp giữa lý thuyết và thực hành (20)
1
Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả
thuyết (bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng dụng
của đồ án
1 2 3 4 5
2 Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5
3 Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề 1 2 3 4 5
4 Có kết quả mô phỏng/thực nghiệm và trình bày rõ ràng kết quả đạt
Có khả năng phân tích và đánh giá kết quả (15)
5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực hiện
dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5
6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều
được phân tích và đánh giá thỏa đáng 1 2 3 4 5 7
Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa kết quả đạt
được và mục tiêu ban đầu đề ra đồng thời cung cấp lập luận để đề xuất
hướng giải quyết có thể thực hiện trong tương lai
1 2 3 4 5
Kỹ năng viết quyển đồ án (10)
8
Đồ án trình bày đúng mẫu quy định với cấu trúc các chương logic và đẹp
mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được đánh số thứ tự và
được giải thích hay đề cập đến; căn lề thống nhất, có dấu cách sau dấu
chấm, dấu phảy v.v.), có mở đầu chương và kết luận chương, có liệt kê
tài liệu tham khảo và có trích dẫn đúng quy định
1 2 3 4 5
9 Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận
logic và có cơ sở, từ vựng sử dụng phù hợp v.v.) 1 2 3 4 5
Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp)
10a
Có bài báo khoa học được đăng hoặc chấp nhận đăng/Đạt giải SVNCKH
giải 3 cấp Viện trở lên/Có giải thưởng khoa học (quốc tế hoặc trong
nước) từ giải 3 trở lên/Có đăng ký bằng phát minh, sáng chế
5
10b
Được báo cáo tại hội đồng cấp Viện trong hội nghị SVNCKH nhưng
không đạt giải từ giải 3 trở lên/Đạt giải khuyến khích trong các kỳ thi
quốc gia và quốc tế khác về chuyên ngành (VD: TI contest)
2 10c Không có thành tích về nghiên cứu khoa học 0
Trang 4Điểm tổng quy đổi về thang 10
Nhận xét khác (về thái độ và tinh thần làm việc của sinh viên)
Ngày: … / … / 20…
Người nhận xét
(Ký và ghi rõ họ tên)
Trang 5ĐÁNH GIÁ QUYỂN ĐỒ ÁN TỐT NGHIỆP
(Dùng cho cán bộ phản biện)
Giảng viên đánh giá:
Họ và tên sinh viên: MSSV:
Tên đồ án:
Chọn các mức điểm phù hợp cho sinh viên trình bày theo các tiêu chí dưới đây:
Rất kém (1); Kém (2); Đạt (3); Giỏi (4); Xuất sắc (5)
Có sự kết hợp giữa lý thuyết và thực hành (20)
1
Nêu rõ tính cấp thiết và quan trọng của đề tài, các vấn đề và các giả
thuyết (bao gồm mục đích và tính phù hợp) cũng như phạm vi ứng dụng
của đồ án
1 2 3 4 5
2 Cập nhật kết quả nghiên cứu gần đây nhất (trong nước/quốc tế) 1 2 3 4 5
3 Nêu rõ và chi tiết phương pháp nghiên cứu/giải quyết vấn đề 1 2 3 4 5
4 Có kết quả mô phỏng/thực nghiệm và trình bày rõ ràng kết quả đạt
Có khả năng phân tích và đánh giá kết quả (15)
5 Kế hoạch làm việc rõ ràng bao gồm mục tiêu và phương pháp thực hiện
dựa trên kết quả nghiên cứu lý thuyết một cách có hệ thống 1 2 3 4 5
6 Kết quả được trình bày một cách logic và dễ hiểu, tất cả kết quả đều
được phân tích và đánh giá thỏa đáng 1 2 3 4 5 7
Trong phần kết luận, tác giả chỉ rõ sự khác biệt (nếu có) giữa kết quả đạt
được và mục tiêu ban đầu đề ra đồng thời cung cấp lập luận để đề xuất
hướng giải quyết có thể thực hiện trong tương lai
1 2 3 4 5
Kỹ năng viết quyển đồ án (10)
8
Đồ án trình bày đúng mẫu quy định với cấu trúc các chương logic và đẹp
mắt (bảng biểu, hình ảnh rõ ràng, có tiêu đề, được đánh số thứ tự và
được giải thích hay đề cập đến; căn lề thống nhất, có dấu cách sau dấu
chấm, dấu phảy v.v.), có mở đầu chương và kết luận chương, có liệt kê
tài liệu tham khảo và có trích dẫn đúng quy định
1 2 3 4 5
9 Kỹ năng viết xuất sắc (cấu trúc câu chuẩn, văn phong khoa học, lập luận
logic và có cơ sở, từ vựng sử dụng phù hợp v.v.) 1 2 3 4 5
Thành tựu nghiên cứu khoa học (5) (chọn 1 trong 3 trường hợp)
10a
Có bài báo khoa học được đăng hoặc chấp nhận đăng/Đạt giải SVNCKH
giải 3 cấp Viện trở lên/Có giải thưởng khoa học (quốc tế hoặc trong
nước) từ giải 3 trở lên/Có đăng ký bằng phát minh, sáng chế
5
10b
Được báo cáo tại hội đồng cấp Viện trong hội nghị SVNCKH nhưng
không đạt giải từ giải 3 trở lên/Đạt giải khuyến khích trong các kỳ thi
quốc gia và quốc tế khác về chuyên ngành (VD: TI contest)
2 10c Không có thành tích về nghiên cứu khoa học 0
Trang 6Điểm tổng quy đổi về thang 10
Nhận xét khác của cán bộ phản biện
Ngày: … / … / 20…
Người nhận xét
(Ký và ghi rõ họ tên)
Trang 7Lời cam đoan của sinh viên
Trang 8Lời cảm ơn
Trước tiên em xin được bày tỏ sự trân trọng và lòng biết ơn đối với thầy giáo TS.
- giảng viên viện Điện tử - Viễn thông Trong suốt thời gian học và làm đồ án tốt nghiệp,thầy đã dành rất nhiều thời gian để tận tình chỉ bảo, hướng dẫn, định hướng cho em thựchiện đồ án
Em xin gửi lời cảm ơn sâu sắc đến các thầy cô đang giảng dạy, nghiên cứu tạitrường đại học Bách Khoa Hà Nội, đặc biệt là các thầy cô đang công tác tại Viện Điện Tử
- Viễn Thông, những người đã truyền dạy cho em không chỉ là kiến thức mà còn cả ngọnlửa đam mê, tình yêu với khoa học trong suốt năm năm vừa qua Em xin trân thành cảm
ơn các thầy cô vì những bài giảng bổ ích, những chia sẻ kinh nghiệm quý giá trong cuộcsống, công việc để em có được những kiến thức như ngày hôm này Em chúc các thầy côluôn luôn mạnh khỏe và thành công trong công việc và trong cuộc sống
Mặc dù đã nỗ lực, cố gắng rất nhiều nhưng đồ án vấn không tránh khỏi thiếu sót
Em rất mong nhận được những ý kiến đống góp của các thầy cô để đề tài của em đượchoàn thiện hơn
Em xin chân thành cảm ơn!
Hà Nội, năm 2020 Sinh viên
Trang 9Lời mở đầu
Nhận dạng mặt người (Face recognition) là một lĩnh vực nghiên cứu của ngànhComputer Vision, và cũng được xem là một lĩnh vực nghiên cứu của ngành Biometrics(tương tự như nhận dạng vân tay – Fingerprint recognition, hay nhận dạng mống mắt –Iris recognition) Xét về nguyên tắc chung, nhận dạng mặt có sự tương đồng rất lớn vớinhận dạng vân tay và nhận dạng mống mắt, tuy nhiên sự khác biệt nằm ở bước trích chọnđặt trưng (feature extraction) của mỗi lĩnh vực
Trong khi nhận dạng vân tay và mống mắt đã đạt tới độ chín, tức là có thể áp dụngtrê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 và vẫn làmột lĩnh vực nghiên cứu thú vị với nhiều người 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 (bạn có thể nhìn thấy mặt người ở bất cứtấm ảnh, video clip nào liên quan tới con người trên mạng)
Hiện nay có rất nhiều các các phương pháp nhận dạng khác nhau được xây dựng
để nhận dạng một người cụ thể trong thế giới thực Tuy nhiên việc nhận dạng được mộtngười trong thế giới thực là vô cùng khó khăn, bởi vì để nhận dạng được ta phải xâydựng được tập cơ sở dữ liệu đủ lớn và việc xử lý dữ liệu lớn này đòi hỏi phải nhanh vàchính xác Nhiệm vụ đặt ra là nghiên cứu và xây dựng một chương trình sử dụng phươngpháp nhận dạng có độ chính xác cao mà khối lượng và thời gian tính toán lại ít
Để giải quyết vấn đề trên có một phương pháp cho phép phân tích các thành phầnchính của khuôn mặt, giảm bớt số thành phần không cần thiết tạo ra hiệu quả tính toánnhanh mà vẫn đảm bảo được độ chính xác Đó là phương pháp Principal ComponentsAnalysis (PCA) hay còn gọi là Phương pháp phân tích các thành phần chính Và đồ ántập trung nghiên cứu phương pháp PCA để nhận dạng mặt người
Trang 10Mục lục
Danh mục hình vẽ……….I Danh mục các từ viết tắt……… IV Tóm tắt đồ án………V Thesis summary………VI Chương 1: Xử lí ảnh, bài toán nhận dạng mặt người và ứng dụng
1.1 Định nghĩa ảnh và điểm ảnh ………1
1.1.1 Xử lí ảnh……….3
1.1.2 Một số ứng dụng trong xử lí ảnh……… 6
1.2 Bài toán nhận dạng mặt người ………7
1.2.1 Các ứng dụng đặc trưng của bài toán nhận diện mặt người ………9
1.3 Một số phương pháp nhận dạng……… ……….11
1.3.1 Phương pháp nhận dang mặt người bằng mạng noron………12
1.3.2 Phương pháp phân tích thành phần chính PCA……… 13
1.4 Đồ án nhận dạng khuôn mặt giải quyết vấn đề gì? ………15
1.4 Kết luận chương 1 ……… ……… 15
Chương 2: Phương pháp phân tích PCA và các bước thực hiện 2.1 Một số lý thuyết toán học…….……… ……….17
2.1.1 Độ lệch chuẩn……….……… ……… … 17
Trang 112.1.2 Phương sai ………18
2.1.3 Hiệp phương sai… ………19
2.1.4 Ma trận hiệp phương sai ……… 19
2.1.5 Trị riêng, vector riêng của ma trận ……… 21
2.2 Sơ lược về phân tích thành phần chính PCA ……… 21
2.3 Thuật toán PCA (Principal Component Analysis) ……… 22
2.4 Sơ đồ thuật toán PCA ………22
2.5 Các bước thực hiện phương pháp PCA để nhận diện khuôn mặt ………… 26
2.6 Kết luận chương 2……… 40
Chương 3: Cài đặt thư viện, xây dựng dữ liệu và thực hành 3.1 Cài đặt thư viện ……… 41
3.2 Xây dựng tập dữ liệu các khuôn mặt ……… 50
3.3 Xử lí tập dữ liệu………52
3.4 Nhận dạng khuôn mặt (ảnh test) ……… 54
3.5 Đánh giá phương pháp ………. 56
3.6 Ưu, nhược điểm của phương pháp……… 58
3.8 Kết luận chương 3 và đề xuất ………59
Kết luận………60
Tài liệu tham khảo……… 61
Trang 12Danh mục hình vẽ
Hình 1.1: Hệ màu R-G-B……….3
Hình 1.2 Quá trình xử lí ảnh……….4
Hình 1.3: Các bước xử lí ảnh……….4
Hình 1.4: Hỉnh ảnh nhận dạng mặt người………7
Hình 1.5: Hình ảnh nhận dạng khuôn mặt………11
Hình 1.6: Ví dụ về mạng noron………12
Hình 1.7: Ví dụ về phương pháp PCA……… 14
Hình 2.1: Hình ảnh mục tiêu phương pháp PCA………16
Hình 2.2: Ví dụ về kỳ vọng và phương sai……….20
Hình 2.3: Ví dụ hình ảnh cơ sở dữ liệu……… 27
Hình 2.4: Hình ảnh minh họa việc biểu diễn khuôn mặt……….34
Hình 2,5: Hình mô tả chuyển đổi khuôn mặt……… 35
Hình 2.6: Diễn giải hình học của phương pháp PCA……… 36
Hình 2.7: Ví dụ về giảm chiều trong PCA……… 37
Hình 3.1: Cài đặt python………41
Hình 3.2: Chạy thử python trên powershell……….42
Hình 3.3: Cài đặt thư viện PIL……… 42
Hình 3.4: Khai báo thư viện PIL………43
Trang 13Hình 3.5: Đọc ảnh và hiển thị………43
Hình 3.6: Chuyển đổi ảnh sang ảnh xám………44
Hình 3.7: Resize hình ảnh theo kích thước tùy chọn………45
Hình 3.8: Xoay hình ảnh theo góc 45º………46
Hình 3.9: Cắt một vùng hình ảnh………46
Hình 3.10: Tăng độ sáng hình ảnh………47
Hình 3.11: Cài đặt thư viện numy ………48
Hình 3.12: Khai báo và sử dụng thư viện numpy………48
Hình 3.13: Đưa hình ảnh thành mảng dãy số (array) ……… 49
Hình 3.14 Làm phẳng dãy số (flatten) ………49
Hình 3.15: Cài đặt và sử dụng notepad………50
Hình 3.16: Xây dựng tập ảnh dữ liệu ……… 50
Hình 3.17 Hình ảnh tập ảnh dữ liệu khuôn mặt ……… 51
Hình 3.18: Chuyển đổi tập ảnh dữ liệu sang ảnh xám………52
Hình 3.19: Chuyển tập dữ liệu thành một ma trận để xử lí ………53
Hình 3.20: Hình ảnh mặt trung bình và các eigen faces ………53
Hình 3.21: Ánh xạ từng bức ảnh thành các thành phần chính ……… 54
Hình 3.22: Hình ảnh tập ảnh test……… 55
Hình 3.23: Ánh xạ các hình ảnh test thành các thành phần chính………55
Trang 14Hình 3.24: Kết quả nhận dạng……… 56
Hình 4.1: Tập dữ liệu test……… 57
Hình 4.2: Đưa tập dữ liệu test thành ảnh xám………57
Hình 4.3: Kết quả nhận dạng………58
Trang 16Lí thuyết và cách thực hiện phương pháp nhận dạng mặt người (PCA) sẽ được trình bàychi tiết và cụ thể trong chương 2.
Xây dựng tập ảnh dữ liệu và tiến hành nhận dạng khuôn mặt sẽ được minh họa chi tiếttrong chương 3
Đánh giá thử nghiệm và kết luận, đưa ra những đánh giá về ưu nhược điểm của phươngpháp nhận dạng và các kết luận chung của đồ án
Trang 17Thesis summary
The main content of this thesis revolves around problems and solutions when buildingtools to support image recognition of human faces Specifically, the thesis will presentthe following:
Problems and solutions: problems when developing a human face recognition tool.Typical applications of the problem of face recognition are the content that will bepresented in chapter 1
The theory and implementation of human face recognition (PCA) method will bepresented in detail in chapter 2
Building a data file and proceed facial recognition will be illustrated in detail in chapter3
Assessing trials and conclusions, making assessments about advantages anddisadvantages of recognition methods and general conclusions of projects
Trang 18Chương 1
Xử lí ảnh, bài toán nhận dạng mặt người và ứng dụng
Trong chương này, ta sẽ tìm hiểu khái niệm lý thuyết ảnh số, các thông số trong một bứcảnh và những yếu tố cần thiết cần đi sâu vào nghiên cứu trong việc nhận dạng ảnh mặtngười Tiếp theo đó là tìm hiểu bài toán nhận dạng khuôn mặt và các ứng dụng của nó
1.1 Định nghĩa ảnh và điểm ảnh
Gốc của ảnh (ảnh tự nhiên) là ảnh liên tục về không gian và độ sáng Để xử lí bằng máytính, ảnh cần phải được số hóa Số hóa ảnh là sự biến đổi gần đúng một ảnh liên tục thànhmột tập điểm phù hợp với ảnh thật về vị trí (không gian) và độ sáng (mức xám) Khoảngcách giữa các điểm ảnh đó được thiết lập sao cho mắt người không phân biệt được ranhgiới giữa chúng Mỗi điểm như vậy gọi là điểm ảnh (Picture Element) hay gọi là pixel.Trong khuôn khổ ảnh hai chiều, mỗi pixel ứng với cặp tọa độ (x, y)
Điểm ảnh (Pixel) là một phần tử của ảnh số tại tọa độ (x, y) với độ xám hoặc màu nhấtđịnh Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp sao cho mắtngười cảm nhận sự liên tục về không gian và mức xám (hoặc màu) của ảnh số gần nhưảnh thật Mỗi phần tử trong ma trận được gọi là một phần tử ảnh
Trong một hình ảnh xám 8bit, giá trị của điểm ảnh từ 0 - 255 Giá trị của pixel tại bất kỳđiểm nào tương ứng với cường độ của photon tại điểm đó Mỗi giá trị điểm ảnh tỷ lệthuận với cường độ ánh sáng Mỗi ảnh điểm có một màu duy nhất, được chỉ định như một
tỉ lệ nhất định của 3 màu cơ bản Đỏ, Lục và Lam
Độ phân giải (resolution) của ảnh là mật độ điểm ảnh được ấn định trên một ảnh số đượchiển thị
Theo định nghĩa, khoảng cách giữa các điểm ảnh phải được chọn sao cho mắt người vẫnthấy được sự liên tục của ảnh Việc lựa chọn khoảng cách thích hợp tạo nên một mật độphân bổ, đó chính là độ phân giải và được phân bố theo trục x và y trong không gian haichiều
Trang 19Bằng cách phối hợp liều lượng khác nhau của 3 màu cơ bản nói trên chúng ta có thể tạo
ra gần như bất cứ màu nào Theo thời gian, phạm vi sử dụng của thuật ngữ “ảnh điểm” đãđược mở rộng và hiện nay chúng ta sử dụng thuật ngữ này trong tùy vào từng ngữ cảnh
cụ thể Một ảnh số thường được tạo bởi hàng triệu ảnh điểm cá thể
Ví dụ: Độ phân giải của ảnh trên màn hình CGA (Color Graphic Adaptor) là một lướiđiểm theo chiều ngang màn hình: 320 điểm chiều dọc x 200 điểm chiều ngang (320x200)
Rõ ràng, cùng một màn hình CGA 12’’ ta thấy mịn hơn màn hình CGA17’’
Lí do là vì cùng một mật độ (độ phân giải) nhưng diện tích màn hình rộng hơn thì độ mịn(liên tục của các điểm) kém hơn
Mức xám của ảnh
Một điểm ảnh (pixel) có hai đặc trưng cơ bản là vị trí (x,y) của điểm ảnh và độ xám của
nó Dưới đây ta xem xét một số khái niệm đặc trưng thường dùng trong xử lí ảnh
- Mức xám của điểm ảnh là cường độ sáng của nó được gán bằng giá trị số tại điểmđó
- Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256(Mức 256 là mứcphổ dụng Là vì từ kỹ thuật máy tính dùng 1 byte (8 bit) để biểu diễn mức xám:Mức xám dùng 1 byte biểu diễn 28 = 256 mức, từ 0 - 255)
- Ảnh đen trắng là ảnh có hai màu đen , trắng (không chứa màu khác) với mức xám
Trang 2024 bits trong đó R, G, B chiếm tương ứng 8 bit một Điều này cho phép nhậnđược 16 triệu màu khác nhau
Hình 1.1: Hệ màu RGB
1.1.1 Xử lí ảnh
Xử lý ảnh là một trong những mảng quan trọng nhất trong kỹ thuật thị giác máy tính, làtiền đề cho nhiều nghiên cứu thuộc lĩnh vực này Hai nhiệm vụ cơ bản của quá trình xử lýảnh là nâng cao chất lượng thông tin hình ảnh và xử lý số liệu cung cấp cho các quá trìnhkhác trong đó có việc ứng dụng thị giác vào điều khiển
Quá trình bắt đầu từ việc thu nhận ảnh nguồn (từ các thiết bị thu nhậnảnh dạng số hoặctương tự) gửi đến máy tính Dữ liệu ảnh được lưu trữ ở định dạng phù hợp với quá trình
xử lý Người lập trình sẽ tác động các thuật toán tương ứng lên dữ liệu ảnh nhằm thay đổicấu trúc ảnh phù hơp với các ứng dụng khác nhau
Quá trình xử lý nhận dạng ảnh được xem như là quá trình thao tác ảnh đầu vào nhằm cho
ra kết quả mong muốn Kết quả đầu ra của một quá trình xử lý ảnh có thể là một ảnh “đãđược xử lý” hoặc một kết luận
Photoshop là một ví dụ của xử lí ảnh : từ một hình ảnh được chụp từ máy ảnh, ta có thểchỉnh sửa, xử lý để làm ảnh đẹp hơn hoặc phù hợp nhu cầu người dung như: làm mờ, lấybiên, chỉnh độ nét, chỉnh độ phân giải, phục hồi và nhận dạng ảnh…
Trang 21Hình 1.2 Quá trình xử lí ảnh
Ảnh có thể xem là tập hợp các điểm ảnh và mỗi điểm ảnh được xem như là đặc trưngcường độ sáng hay một dấu hiệu nào đó tại một vị trí nào đó của đối tượng trong khônggian và nó có thể xem như một hàm n biến P(c,c1,c2,…).Do đó,ảnh trong xử lý ảnh cóthể xem như ảnh n chiều
Sự chọn lựa cách biểu diễn thích hợp cho một vùng ảnh chỉ mới là một phần trong việcchuyển đổi dữ liệu ảnh thô sang một dạng thích hợp hơn cho các xử lý về sau
Hình 1.3: Các bước xử lí ảnh
a Tiền xử lý:
Ở bước này, ảnh sẽ được cải thiện về độ tương phản, khử nhiễu, khử bóng, khử độlệch,v.v… với mục đích làm cho chất lượng ảnh trở lên tốt hơn nữa, chuẩn bị cho cácbước xử lý phức tạp hơn về sau trong quá trình XLA Quá trình này thường được thựchiện bởi các bộ lọc
Trích rút đặc trưng
luận
Trang 22b Trích chọn đặc điểm:
Kết quả của bước phân đoạn ảnh thường được cho dưới dạng dữ liệu điểm ảnh thô, trong
đó hàm chứa biên của một vùng ảnh, hoặc tập hợp tất cả các điểm ảnh thuộc về chínhvùng ảnh đó Trong cả hai trường hợp, sự chuyển đổi dữ liệu thô này thành một dạngthích hợp hơn cho việc xử lý trong máy tính là rất cần thiết
Để chuyển đổi chúng, câu hỏi đầu tiên cần phải trả lời là nên biểu diễn một vùng ảnhdưới dạng biên hay dưới dạng một vùng hoàn chỉnh gồm tất cả những điểm ảnh thuộc về
nó Biểu diễn dạng biên cho một vùng phù hợp với những ứng dụng chỉ quan tâm chủ yếuđến các đặc trưng hình dạng bên ngoài của đối tượng, ví dụ như các góc cạnh và điểmuốn trên biên chẳng hạn Biểu diễn dạng vùng lại thích hợp cho những ứng dụng khaithác các tính chất bên trong của đối tượng, ví dụ như vân ảnh hoặc cấu trúc xương của
nó
Sự chọn lựa cách biểu diễn thích hợp cho một vùng ảnh chỉ mới là một phần trong việcchuyển đổi dữ liệu ảnh thô sang một dạng thích hợp hơn cho các xử lý về sau Chúng tacòn phải đưa ra một phương pháp mô tả dữ liệu đã được chuyển đổi đó sao cho nhữngtính chất cần quan tâm đến sẽ được làm nổi bật lên, thuận tiện cho việc xử lý chúng
c Đối sánh, nhận dạng:
Nhận dạng tự động (automatic recognition), mô tả đối tượng, phân loại và phân nhóm cácmẫu là những vấn đề quan trọng trong thị giác máy, được ứng dụng trong nhiều ngànhkhoa học khác nhau
Ví dụ mẫu có thể là ảnh của vân tay, ảnh của một vật nào đó được chụp, một chữ viết,khuôn mặt người hoặc một ký đồ tín hiệu tiếng nói Khi biết một mẫu nào đó, để nhậndạng hoặc phân loại mẫu đó.Hệ thống nhận dạng tự động bao gồm ba khâu tương ứng với
ba giai đoạn chủ yếu sau đây:
- Thu nhận dữ liệu và tiền xử lý
- Biểu diễn dữ liệu
- Nhận dạng, ra quyết định
Bốn cách tiếp cận khác nhau trong lý thuyết nhận dạng là:
Trang 23- Đối sánh mẫu dựa trên các đặc trưng được trích chọn
- Phân loại thống kê
- Đối sánh cấu trúc
- Phân loại dựa trên mạng nơ-ron nhân tạo
Trong các ứng dụng rõ ràng là không thể chỉ dùng có một cách tiếp cận đơn lẻ để phânloại “tối ưu” do vậy cần sử dụng cùng một lúc nhiều phương pháp và cách tiếp cận khácnhau Do vậy, các phương thức phân loại tổ hợp hay được sử dụng khi nhận dạng và nay
đã có những kết quả có triển vọng dựa trên thiết kế các hệ thống lai (hybrid system) baogồm nhiều mô hình kết hợp
Chúng ta cũng có thể thấy rằng, không phải bất kỳ một ứng dụng xử lí ảnh nào cũng bắtbuộc phải tuân theo tất cả các bước xử lý đã nêu ở trên, ví dụ như các ứng dụng chỉnh sửaảnh nghệ thuật chỉ dừng lại ở bước tiền xử lý Một cách tổng quát thì những chức năng
xử lý bao gồm cả nhận dạng và giải thích thường chỉ có mặt trong hệ thống phân tích ảnh
tự động hoặc bán tự động, được dùng để rút trích ra những thông tin quan trọng từ ảnh, ví
dụ như các ứng dụng nhận dạng ký tự quang học, nhận dạng chữ viết tay v.v…
1.1.2 Một số ứng dụng trong xử lí ảnh
Như đã nói ở trên, các kỹ thuật xử lý ảnh trước đây chủ yếu được sử dụng để nâng caochất lượng hình ảnh, chính xác hơn là tạo cảm giác về sự gia tăng chất lượng ảnh quanghọc trong mắt người quan sát Thời gian gần đây, phạm vi ứng dụng xử lý ảnh mở rộngkhông ngừng, có thể nói hiện không có lĩnh vực khoa học nào không sử dụng các thànhtựu của công nghệ xử lý ảnh số
Trong y học các thuật toán xử lý ảnh cho phép biến đổi hình ảnh được tạo ra từ nguồnbức xạ X -ray hay nguồn bức xạ siêu âm thành hình ảnh quang học trên bề mặt film x-quang hoặc trực tiếp trên bề mặt màn hình hiển thị Hình ảnh các cơ quan chức năng củacon người sau đó có thể được xử lý tiếp để nâng cao độ tương phản, lọc, tách các thànhphần cần thiết (chụp cắt lớp) hoặc tạo ra hình ảnh trong không gian ba chiều (siêu âm 3chiều)
Trong lĩnh vực địa chất, hình ảnh nhận được từ vệ tinh có thể được phân tích để xác địnhcấu trúc bề mặt trái đất Kỹ thuật làm nổi đường biên (image enhancement) và khôi phụchình ảnh (image restoration) cho phép nâng cao chất lượng ảnh vệ tinh và tạo ra các bản
đồ địa hình 3-D với độ chính xác cao
Trang 24Trong ngành khí tượng học, ảnh nhận được từ hệ thống vệ tinh theo dõi thời tiết cũngđược xử lý, nâng cao chất lượng và ghép hình để tạo ra ảnh bề mặt trái đất trên một vùngrộng lớn, qua đó có thể thực hiện việc dự báo thời tiết một cách chính xác hơn Xử lý ảnhcòn được sử dụng rộng rãi trong lĩnh vực hình sự và các hệ thống bảo mật hoặc kiểm soáttruy cập: quá trình xử lý ảnh với mục đích nhận dạng vân tay hay khuôn mặt cho phépphát hiện nhanh các đối tương nghi vấn cũng như nâng cao hiệu quả hệ thống bảo mật cánhân cũng như kiểm soát ra vào
Ngoài ra, có thể kể đến các ứng dụng quan trọng khác của kỹ thuật xử lý ảnh tĩnh cũngnhư ảnh động trong đời sống như tự động nhận dạng, nhận dạng mục tiêu quân sự, máynhìn công nghiệp trong các hệ thống điều khiển tự động, nén ảnh tĩnh, ảnh động để lưu vàtruyền trong mạng viễn thông v.v
1.2 Bài toán nhận dạng mặt người
Hệ thống nhận dạng mặt người là một hệ thống nhận vào là một ảnh hoặc một đoạn video(một chuỗi các ảnh) Qua xử lý tính toán hệ thống xác định được vị trí mặt người trongảnh (nếu có) và xác định là người nào trong số những người hệ thống đã được biết (quaquá trình học) hoặc là người lạ
Hình 1.4: Hỉnh ảnh nhận dạng mặt người
Những khó khăn của nhận dạng khuôn mặt
Trang 25a Tư thế góc chụp : Ảnh chụp khuôn mặt có thể thay đổi rất nhiều bởi vì góc chụp giữacamera và khuôn mặt.Chẳng hạn như : chụp thẳng, chụp xéo bên trái 450 hay xéo bênphải 450 ,chụp từ trên xuống, chụp từ dưới lên,v.v…) Với các tư thế khác nhau, cácthành phần trên khuôn mặt như mắt, mũi, miệng có thể bị khuất một phần hoặc thậm chíkhuất hết Khuôn mặt đang nhìn thẳng nhưng góc chụp của máy ảnh lại lệch nhiều so vớihướng nhìn thẳng của khuôn mặt hoặc là lúc chụp ảnh mặt người quay nghiêng sang mộtbên nào đó nhiều đều là những khó khăn rất lớn trong bài toán nhận diện mặt người
b.Sự xuất hiện hoặc thiếu một số thành phần của khuôn mặt: Các đặc trưng như râu mép,râu hàm, mắt kính,v.v… có thể xuất hiện hoặc không Vấn đề này làm cho bài toán càngkhó khăn hơn rất nhiều
c.Sự biểu cảm của khuôn mặt: Biểu cảm của khuôn mặt người có thể làm ảnh hưởngđáng kể lên các thông số của khuôn mặt Chẳng hạn,cùng một khuôn mặt một người,nhưng có thể sẽ rất khác khi họ cười hoặc sợ hãi…
d.Sự che khuất: Khuôn mặt có thể bị che khuất bởi các đối tượng khác hoặc các khuônmặt khác
e Hướng của ảnh: Các ảnh của khuôn mặt có thể biến đổi rất nhiều với các góc quaykhác nhau của trục camera Chẳng hạn chụp với trục máy ảnh nghiêng làm cho khuônmặt bị nghiêng so với trục của ảnh
f Điều kiện của ảnh: Ảnh được chụp trong các điều kiện khác nhau về: chiếu sang, vềtính chất camera (máy kỹ thuật số, máy hồng ngoại,v.v…) ảnh hưởng rất nhiều đến chấtlượng ảnh khuôn mặt
g Nền ảnh phức tạp: nền của ảnh phức tạp là một trong những khó khăn nhất trong bàitoán nhận diện khuôn mặt người trong ảnh, khuôn mặt người sẽ dễ bị nhầm lẫn với nhiềukhung cảnh phức tạp xung quanh và ảnh hưởng rất nhiều đến quá trình phân tích và rúttrích các đặc trưng của khuôn mặt trong ảnh, có thể dẫn đến không nhận ra khuôn mặthoặc là nhận nhầm các khung cảnh xung quanh thành khuôn mặt người
h Màu sắc của da mặt: màu sắc của da mặt quá tối hoặc gần với màu sắc của khung cảnhmôi trường xung quanh cũng là một khó khăn với bài toán nhận diện mặt người Nếu màusắc của da người quá tối thì thuật toán sẽ gặp khó khăn trong việc nhận diện các đặctrưng và có thể không tìm ra được khuôn mặt người
Trang 26Tầm quan trọng của bài toán nhận diện mặt người Nếu như công nghệ nhận dạng giọngnói phù hợp với các ứng dụng callcenter và nhược điểm của nó là tiếng ồn, không phùhợp với nơi công cộng đông người thì công nghệ nhận dạng chữ ký cũng gây nhiều phiềnphức cho người sử dụng vì khó duy trì được chữ ký giống nhau ngay trong cùng một thờiđiểm Trong khi đó, công nghệ nhận dạng vân tay hiện đã được dùng khá phổ biến,nhưng cũng có nhược điểm là bị ảnh hưởng bởi độ ẩm da và đặc biệt sẽ không chính xáccao với người có tay hay tiếp xúc với hoá chất
Bên cạnh đó, nhận dạng bằng vân tay còn có những hạn chế về việc giả mạo, thậm chí kẻgian có thể sử dụng tay của người khác để xác thực Còn công nghệ nhận dạng mống mắt
là một công nghệ có nhiều ưu điểm về độ chính xác cũng như khả năng chống giả mạo.Việc xác thực, nhận dạng trong công nghệ này dựa trên sơ đồ mạch máu trong võng mạcmắt Sơ đồ này rất ít thay đổi kể từ lúc mới sinh cho tới khi già và đặc biệt là khi chết, hệthống sơ đồ mạch máu này sẽ biến mất
Vì thế, không thể dùng người chết để xác thực cho việc truy cập trái phép Tuy nhiên,công nghệ này lại bị tác động bởi nhiều yếu tố khác như độ rộng của mắt, lông mi, kínhđeo và khó triển khai phổ biến trên diện rộng do độ phức tạp của các thiết bị
Trong khi đó, mặc dù độ chính xác không là phải ưu điểm nổi bật của công nghệ nhậndạng mặt người song không giống với những phương pháp khác, nhận dạng mặt người làcông nghệ nhận dạng không cần đến sự tiếp xúc trực tiếp giữa đối tượng và thiết bị thunhận Thay vào đó, công nghệ này mang tính theo dõi, giám sát và rất thuận tiện chonhững ứng dụng bảo vệ mục tiêu, chống khủng bố tại những điểm công cộng đông người.Đây cũng là ưu điểm nổi trội của nhận dạng mặt người mà các công nghệ nhận dạng kháckhó có thể có được
1.2.1 Các ứng dụng đặc trưng của bài toán nhận diện mặt người
Bài toán nhận diện mặt người trong ảnh là một bài toán phức tạp nhưng lại hấp hẫn rấtnhiều người nghiên cứu về nó, có lẽ bởi tính ứng dụng thực tế của bài toán là rất lớn và
đa dạng trong cuộc sống hiện đại có thể kể ra một số ứng dụng thông dụng nhất của bàitoán nhận diện mặt người:
- Nhận dạng tội phạm:
hệ thống có thể nhận diện ra một khuôn mặt ngay tức thì và đối chiếu với hàngtriệu bản ghi có sẵn trong cơ sở dữ liệu để chỉ ra đó có thể là một tội phạm đang
Trang 27truy tìm hay không, hoặc đó có thể là một nhân vật nào đó đặc biệt cần quantâm vv
- Giải trí:
trong hẩu hết các máy ảnh hiện đại ngày nay đều có chức năng tự động nhận diệnmặt người để có thể lấy độ nét, điều chỉnh ánh sáng cho phù hợp với khung cảnhxung quanh Trên một số trang web cũng đã áp dụng công nghệ tự động nhận diệnmặt người và so sánh với kho dữ liệu khổng lồ của mình để đưa ra những lời chào,dịch vụ thông mình nhất cho người sử dụng
- Hệ thống quan sát, theo dõi và bảo vệ:
các hệ thống camera sẽ xác định đâu là con người và theo dõi người đó…
- Điều khiển ra vào các cơ quan, văn phòng:
cho phép nhân viên ra vào các khu vực quan trong mà không cần phải đăng nhậphay dùng thẻ Nếu kết hợp với sử dụng vân tay hay hốc mắt thì sẽ đem lại kết quảchính xác cao
- Tổ chức tìm kiếm liên quan đến con người thông qua khuôn mặt trên nhiều hệ cơ
sở dữ liệu lớn
- Phân tích cảm xúc của khuôn mặt người v v
- Hệ thống giao tiếp thông minh giữa người và máy:
Con người có thể xây dựng những hệ thống thông giao tiếp giữa người và máytính thông qua viêc nhận diện khuôn mặt, biểu cảm trên khuôn mặt người để dựđoán, nhận biết trạng thái tâm lí hiện thời của người đó
Một ngôi nhà thông minh trong tương lai có thể nhận biết được chủ nhân của nóthông qua nhận biết khuôn mặt, dáng người, giao tiếp qua giọng nói, vân tay…
Ngày nay chúng ta đang sống trong một môi trường công nghệ cao Chúng tôi sử dụngthiết bị ngày càng thông minh hơn mỗi ngày Trí tuệ nhân tạo đã trở thành một trongnhững khía cạnh công nghệ quan trọng của ngày hôm nay thế giới công nghệ cao Nhậndạng khuôn mặt là một kỹ thuật xác thực sinh trắc học, là một lĩnh vực ứng dụng quantrọng của trí tuệ nhân tạo
Ưu điểm chính của nó là, không giống như các kỹ thuật sinh trắc học khác như in dấuvân tay (Jain và Maltoni, 2003),nhận dạng mống mắt (Bowyer , 2013) và nhận dạnggiọng nói (Saquib , 2010), nó không yêu cầu người nộp đơn phải dành thời gian trong quátrình thu thập dữ liệu cá nhân, và ít đòi hỏi sự tương tác có kiểm soát hơn (để thực hiệnnhận dạng vân tay hay mống mắt, dữ liệu input lấy từ con người đòi hỏi có sự hợp tác
Trang 28trong môi trường có kiểm soát) Nhược điểm chính của nó là sự nhạy cảm với phương saichiếu sáng, tư thế và trong môi trường không bị che khuất.
Hình 1.5: Hình ảnh nhận dạng khuôn mặt
Nhận dạng khuôn mặt người là một công nghệ được ứng dụng rộng rãi trong đời sốnghằng ngày của con người như các hệ thống giám sát, quản lý vào ra, tìm kiếm thông tinmột người nổi tiếng,…Có rất nhiều phương pháp nhận dạng khuôn mặt để nâng cao hiệusuất tuy nhiên dù ít hay nhiều những phương pháp này đang vấp phải những thử thách về
độ sáng, hướng nghiêng, kích thước ảnh, hay ảnh hưởng của tham số môi trường
Do đó, bài toán nhận dạng khuôn mặt đóng vai trò quan trọng trong nhiều lĩnh vực đờisống hằng ngày của con người Các nghiên cứu đi từ bài toán đơn giản, mỗi ảnh chỉ cómột khuôn mặt người nhìn thẳng vào thiết bị thu hình và đầu ở tư thế thẳng đứng trongảnh đen trắng Cho đến ngày hôm nay bài toán mở rộng cho ảnh màu, có nhiều khuônmặt trong cùng một ảnh, có nhiều tư thế thay đổi trong ảnh
1.3 Các phương pháp nhận dạng
Có hai phương pháp nhận dạng phổ biến hiện nay là nhận dạng dựa trên đặc trưng củacác phần tử trên khuôn mặt như biến đổi Gabor Wavelet và mạng Neural, SVM,…vànhận dạng dựa trên xét tổng thể toàn khuôn mặt như phương pháp PCA, LDA, LFA [1][2] Trong đó, PCA là phương pháp trích rút đặc trưng nhằm giảm số chiều của ảnh tuyđơn giản nhưng mang lại hiệu quả tốt Nhận dạng khuôn mặt dùng PCA kết hợp với
Trang 29điểm của PCA và mạng nơron [3] Hệ thống hoạt động ổn định và có tính thích nghi caokhi dữ liệu đầu vào thay đổi nhiều.
1.3.1 Phương pháp nhận dang mặt người bằng mạng noron (Neural Network)
Mạng neural nhân tạo (Artificial Neural Networks : ANN) ra đời xuất phát từ ý tưởng
mô phỏng hoạt động của bộ não con người
Mạng noron nhân tạo là sự tái tạo bằng kỹ thuật những chức năng của hệ thần kinh conngười với vô số các neural được liên kết truyền thông với nhau qua mạng.Giống như conngười , ANN được học bởi kinh nghiệm, lưu những kinh nghiệm đó và sử dụng trongnhững tình huống phù hợp
Hình 1.6: Ví dụ về mạng noron
Mạng neural trong một vài năm trở lại đây đã được nhiều người quan tâm và đã áp dụngthành công trong nhiều lĩnh vực khác nhau, như tài chính, y tế, địa chất và vật lý Thậtvậy, bất cứ ở đâu có vấn đề về dự báo, phân loại và điều khiển, mạng neural đều có thểứng dụng được
Ví dụ như khả năng nhận dạng mặt người trong các hệ thống quản lý thông tin liên quanđến con người (quản lý nhân sự ở các công sở, doanh nghiệp; quản lý học sinh, sinh viêntrong các trường trung học, đại học và cao đẳng;… ); các ngành khoa học hình sự, tộiphạm; khoa học tướng số, tử vi,…
Kết hợp chặt chẽ với logic mờ, mạng neural nhân tạo đã tạo nên cuộc cách mạng thực sựtrong việc thông minh hóa và vạn năng hóa các bộ điều khiển kỹ thuật cao cho cả hiện
Trang 30nay và trong tương lai Ví dụ như ứng dụng tự động điều khiển hệ thống lái tàu, hệ thống
dự báo sự cố…
Mạng neural dựa trên việc mô phỏng cấp thấp hệ thống neural sinh học Trong tương laivới sự phát triển mô phỏng neural sinh học, chúng ta có thể có loại máy tính thông minhthật sự
1.3.2 Phương pháp phân tích thành phần chính PCA
Phân tích thành phần chính PCA (Principal Component Analysis) là một thuậttoán sử dụng phép biến đổi trực giao để biến đổi một tập hợp dữ liệu từ một không giannhiều chiều sang một không gian mới ít chiều hơn (2 hoặc 3 chiều) nhằm tối ưu hóa việcthể hiện sự biến thiên của dữ liệu PCA một trong những ứng dụng hữu ích trong việcnhận dạng mặt và nén ảnh, là phương pháp phân tích dữ liệu nhiều biến đơn giản nhất
Hầu hết việc làm trước đây trong hệ thống tự nhận dạng gương mặt đềucho rằng việc nhận ra các góc cạnh của gương mặt trong các trạng thái khác nhau
là rất quan trọng trong việc nhận dạng, thừa nhận rằng việc xác nhận trước cáckhoảng cách là rất quan trọng và cần thiết
Điều đó đề xuất chúng tôi đưa ra phương pháp lý thuyết thông tin cho việc mãhóa và giải mã những ảnh mặt người, đưa ra bản chất nội dung thông tin của nhữngảnh mặt người, nhấn mạnh những đặc trưng “cục bộ” và “toàn cục” Những đặctrưng có hoặc không có liên quan trực tiếp đến cách quan sát bằng trực giác củachúng ta về các đặc trưng của gương mặt như cặp mắt, mũi, môi hoặc mái tóc
Trong ngôn ngữ của lý thuyết thông tin, chúng ta muốn trích xuất các thông tinquan trọng của ảnh mặt người, mã hóa một cách hiệu quả trong phạm vi có thể, và sosánh gương mặt mã hóa với kho dữ liệu của các mẫu được mã hóa một cách tương tự.Một cách dễ dàng để trích xuất thông tin chứa đựng trong bức ảnh mặt người là bằngcách nào đó chỉ ra sự khác biệt trong tập hợp ảnh độc lập trong phân tích các nét mặt,
và sử dụng những thông tin này mã hóa và so sánh các ảnh gương mặt cá thể Sau
Trang 31cùng, theo quan điểm phổ biến hơn cả của các nhà phân tích số liệu thì PCA là một kỹthuật biểu diễn các số liệu một cách tối ưu theo một tiêu chuẩn đại số và hình học đặcbiệt khi sử dụng kỹ thuật này người ta không đòi hỏi một giả thuyết thống kê hoặc một
mô hình đặc biệt nào
Hình 1.7: Ví dụ về phương pháp PCA
Phép biến đổi tạo ra những ưu điểm như:
Giảm sổ chiều của không gian chứa dữ liệu: tạo ra một ảnh mới từ ảnh ban đầu,ảnh này có kích thước nhỏ hơn nhiều so với ảnh ban đầu nhưng vẫn giữ lại những nét đặctrưng từ ảnh ban đầu
Thay vì giữ lại các trục tọa độ của không gian cũ PCA xây dựng những trục tọa
độ mới nhưng có khả năng biểu diễn dữ liệu tương đương, và đảm bảo độ biến thiên của
dữ liệu trên mỗi chiều mới
Trang 32 Trong không gian mới, các liên kết tiềm ẩn của dữ liệu có thể được khám phá,
mà nếu đặt trong không gian cũ thì khó phát hiện hơn vì những liên kết này không thểhiện rõ
Các trục tọa độ trong không gian mới là tổ hợp tuyến tính của không gian cũ.Các trục này luôn được trực giao đôi một với nhau mặc dù trong không gian ban đầu cáctrục có thể không trực giao
Nói một cách ngắn gọn, mục tiêu của PCA là tìm một không gian mới với số chiềunhỏ hơn không gian cũ Các trục tọa độ không gian mới được xây dựng sao cho trên mỗitrục, độ biến thiên của dữ liệu trên đó là lớn nhất
Chính vì ưu điểm của PCA, em chọn phương pháp phân tích thành phần chínhPCA (principal component analysis) làm phương pháp nhận diện khuôn mặt trong đề tàinày
1.4 Đồ án nhận dạng khuôn mặt giải quyết vấn đề gì?
Trong các nhân viên của một công ty nào đó đều được khai báo danh tính và được phéplàm việc tại đây Những người lạ (người không nhận dạng là nằm trong danh sách cácnhân viên trên) thì không được phép vào và làm việc tại công ty
Mục tiêu đồ án sẽ lấy ảnh đầu vào làm ảnh test và đối sánh với tập dữ liệu xem người đó(ảnh đầu vào) có nằm trong danh sách nhân viên (tập dữ liệu) hay không?
1.5 Kết luận chương 1
Ta đã hiểu được các khái niệm thông số của một bức ảnh, các yếu tố xử lí ảnh cần thiết
để thực hiện nhận dạng mặt người Các vấn đề trong bài toán nhận dạng mặt người,những khó khăn cụ thể khi xử lí ảnh có khuôn mặt như: tư thế góc chụp, sự xuất hiệnhoặc thiếu một số thành phần của khuôn mặt, che khuất một số góc khuôn mặt, hướngcủa ảnh, điều kiện của ảnh, nền ảnh phức tạp
Ngoài ra, trong chương cũng đã liệt kê them một số ứng dụng trong nhận dạng khuôn mặt
và một số phương pháp thực hiện chúng Trong đó có phương pháp PCA là phương phápđược lựa chọn để thực hiện trong đồ án này
Trang 33Chương 2 Phương pháp phân tích thành phần chính PCA
Chương này đi sâu phân tích phương pháp phân tích thành phần chính PCA, bao gồm cơ
sở lý thuyết xác suất thống kê (kì vọng, phương sai…), tại sao lại dung phương phápPCA trong nhận dạng khuôn mặt, lý thuyết phương pháp PCA và các bước thực hiệnchúng
Hình 2.1: Hình ảnh mục tiêu phương pháp PCA
Sử dụng phương pháp PCA trong việc hạ bậc dữ liệu ảnh từ một ảnh khuôn mặt (ảnhchân dung), nếu như ta coi mỗi ảnh trong tập cơ sở dữ liệu là một vector thì phương phápPCA giảm số chiều của một tập vector sao cho vẫn đảm bảo được “tối đa thông tin quantrọng nhất”
chiều
Vector y chỉ còn K
Trang 34Hay nói cách khác, việc hạ bậc dữ liệu là giữ lại các vector có trị riêng lớn nhất (mangnhiều thông tin quan trọng nhất) và từ tập dữ liệu ban đầu ta hoàn toàn có thể biểu diễntheo tập vector mới với giá trị sai khác trong phạm vi chấp nhận được.
Mục tiêu của phương pháp PCA là “giảm số chiều” của 1 tập vector sao cho vẫn đảm bảođược “tối đa thông tin quan trọng nhất” Tức Feature extraction (giữ k thuộc tính “mới”)chứ không phải Feature selection (giữ lại k thuộc tính nguyên gốc ban đầu)
Tất nhiên, khi loại bỏ 1 số thành phần của x để thu được y thì sẽ gây ra sai số (lỗi)
Phương pháp PCA sẽ cố gắng tìm phép biến đổi tuyến tính T thỏa mãn: y = Tx sao cho
trung bình bình phương lỗi (MSE) là bé nhất
Nói tóm lại, phương pháp PCA quy về việc đi tìm trị riêng (eigenvalues) và vector riêng(eigenvectors) của ma trận hiệp phương sai C của tập mẫu X Sau đó, ta chỉ giữ lại Kvector riêng ứng với K trị riêng lớn nhất để làm cơ sở cho không gian mới này
2.1 Một số lý thuyết toán học
Các khái niệm toán học được sử dụng trong PCA bao gồm: Độ lệch chuẩn, phương sai,hiệp phương sai, vector riêng, giá trị riêng
2.1.1 Độ lệch chuẩn:
Độ lệch chuẩn được sử dụng để đo lường mức độ phân tán của dữ liệu, kí hiệu là S
Cho một tập dữ liệu: X = [1 3 6 12 25 68 67 65 98] Chúng ta dùng kí hiệu X để chỉ tập
dữ liệu Để truy xuất đến từng phần tử trong tập dữ liệu, ta sử dụng chỉ số dưới, ví dụ X1
sẽ là định danh của phân tử thứ 1, X2 sẽ là định danh cho phần tử thứ 2 Giá trị trung bìnhcho chúng ta biết giá trị trung bình của tập dữ liệu, được tính theo công thức:
X =∑
i=1
n
X i n
(Công thức 2.1)
Trong đó: X là giá trị trung bình,
X i là giá trị thứ i
Trang 35Tương tự ta tính cho tập dữ liệu Y:
Tính giá trị trung bình cho tập dữ liệu Y:
´
Y =5+12+13+18
Và tính độ lệch chuẩn:
Trang 36Ta thấy Sx > Sx, cho thấy tập X có độ phân tán dữ liệu lớn hơn tập Y mặc dù cả hai đều
có chung giá trị trung bình là 12
2.1.2 Phương sai
Phương sai của một biến ngẫu nhiên là thước đo sự phân tán thống kê của biến đó, nó cóhàm ý các giá trị của biến đó thường ở cách giá trị kì vọng bao xa
Phương sai dùng để đo lường độ phân tán dữ liệu của một tập dữ liệu
Công thức của phương sai là :
2.1.3 Hiệp phương sai
Hiệp phương sai đo độ biến thiên cùng nhau của hai biến ngẫu nhiên (phân biệt vớiphương sai – đo mức độ biến thiên của một biến)
Công thức tính hiệp phương sai:
Công thức (2.4)
Trang 37Giả sử chúng ta nghiên cứu về mối liên hệ giữa số giờ của học sinh ôn tập và điểm của
họ Vậy là dữ liệu ta cần thu thập có 2 chiều, chiều X là số giờ ôn tập và chiều Y là điểm.Nếu hiệp phương sai là một giá trị dương cho thấy số giờ ôn thi tăng thì điểm cũng tăngngược lại thì số giờ học tăng thì điểm số giảm, cuối cùng hiệp phương sai bằng không thìcho thấy chúng không liên quan gì đến nhau
2.1.4 Ma trận hiệp phương sai
Hiệp phương sai chỉ dùng để tính toán cho dữ liệu có 2 chiều Vậy đối với dữ liệu cónhiều chiều (n>2), chúng ta có rất nhiều hiệp phương sai Ma trận hiệp phương sai là matrận chứa tất cả các hiệp phương sai có thể được tạo ra
Hình 2.2: Ví dụ về kỳ vọng và phương sai.
Trang 382.2.a) Trong không gian 1 chiều.
2.2.b) Không gian 2 chiều mà hai chiều không tương quan Trong trường hợp này, matrận hiệp phương sai là ma trận đường chéo với hai phần tử trên đường chéo là σ1, σ2 đâycũng chính là hai trị riêng của ma trận hiệp phương sai và là phương sai của mỗi chiều dữliệu
2.2.c) Dữ liệu trong không gian hai chiều có tương quan Theo mỗi chiều, ta có thể tínhđược kỳ vọng và phương sai Phương sai càng lớn thì dữ liệu trong chiều đó càng phântán Trong ví dụ này, dữ liệu theo chiều thứ hai phân tán nhiều hơn so so với chiều thứnhất
Có một vài điểm lưu ý:
Ma trận hiệp phương sai là một ma trận đối xứng, hơn nữa, nó là một ma trận nửaxác định dương
Mọi phần tử trên đường chéo của ma trận hiệp phương sai là các số không âm.Chúng cũng chính là phương sai của từng chiều của dữ liệu
Các phần tử ngoài đường chéo Sij, i ≠ j thể hiện sự tương quan giữa thành phầnthứ i và thứ j của dữ liệu, còn được gọi là hiệp phương sai Giá trị này có thểdương, âm hoặc bằng 0 Khi nó bằng 0, ta nói rằng hai thành phần ij trong dữ liệu
là không tương quan (uncorrelated)
Nếu ma trận hiệp phương sai là ma trận đường chéo, ta có dữ liệu hoàn toàn khôngtương quan giữa các chiều
2.1.5 Trị riêng, vector riêng của ma trận
Cho một ma trận vuông A kích thước n×n, vector cột v có kích thước n×1 và một số vô
hướng λ Nếu Av=λv thì v là vector riêng của A và λ là trị riêng của A.
Và trị riêng là nghiệm của phương trình det|A−λI|=0λI|=0
Trong đó I là ma trận đơn vị
Trang 392.2 Sơ lược về phân tích thành phần chính PCA
Phân tích thành phần chính (Principal Component Analysis - PCA) được trình bàytheo nhiều quan điểm khác nhau Với các nhà thống kê cổ điển thì PCA là tìm các trụcchính của ellipsoid nhiều chiều bao hàm đám mây số liệu phân phối chuẩn nhiều chiều,
các trục đó được ước lượng từ một mẫu n cá thể, trên mỗi cá thể người ta đo p chỉ
tiêu Người đầu tiên đưa ra kỹ thuật này là H.Hotelling (1933), sau đó là T.W.Anderson(1958) và A.M.Kshirsagar (1972)
Với các nhà nhân tố học cổ điển thì kỹ thật này là phương pháp phân tích nhân
tố trong trường hợp đặc biệt, khi các phương sai này bằng không hoặc xấp xỉ bằngkhông Phương pháp này thường được sử dụng trong phân tích tâm lý, do Horst (1965)
và Harman (1966) đề xuất
Sau cùng, theo quan điểm phổ biến hơn cả của các nhà phân tích số liệu thì PCA
là một kỹ thuật biểu diễn các số liệu một cách tối ưu theo một tiêu chuẩn đại số và hìnhhọc đặc biệt khi sử dụng kỹ thuật này người ta không đòi hỏi một giả thuyết thống kêhoặc một mô hình đặc biệt nào Quan điểm này trở nên phổ biến từ khi có máy tínhđiện tử, và là quan điểm mới nhất Những tư tưởng của phương pháp này do K.Pearson(1901) đề xuất Trong công trình của C.R Rao (1964) nội dung lý thuyết của phươngpháp PCA được trình bày khá đơn giản và rõ ràng
Lĩnh vực ứng dụng của phương pháp PCA rất rộng trong công nghiệp, nôngnghiệp, kinh tế, khoa học cơ bản… với bảng số liệu mà các cột là các biến và các dòng
là các cá thể, trên đó đo giá trị của biến
2.3 Thuật toán PCA (Principal Component Analysis)
Khuôn mặt con người có rất nhiều nét để nhận biết, nếu như ta gặp lại mộtngười bạn sau một thời gian dài, ta có thể nhận ra ngay người đó dù những chi tiết cụ thểtrên mặt có thể thay đổi như da, mái tóc Ta nhận ra không phải vì nhớ đôi mắt, hay mũihay môi hay tóc, lông mày người đó mà ta nhận ra vì nhớ diện mạo của người đó Tức làtrên khuôn mặt tồn tại một nét tổng thể nào đó để có thể nhận diện, thuật toán của tabắt đầu từ ý tưởng này
Trang 40Phân tích thành phần chính (Principal Component Analysis ) gọi tắt là PCA làthuật toán nhận dạng ảnh dựa trên những nét tổng thể của khuôn mặt, ta sẽ áp dụngthuật toán này để thực hiện hai công việc sau :
• Thứ nhất là xác định vị trí những khuôn mặt người trong một bức ảnh
• Thứ hai là tìm một khuôn mặt giống với khuôn mặt cho trước
Ban đầu ta có một tập ảnh khuôn mặt gọi là tập ảnh huấn luyện (training set)
Giả sử mỗi ảnh có kích thước M*N, ta coi mỗi bức ảnh này là một vector trong không gian M*N chiều Bây giờ mỗi khuôn mặt là một vector, ta thấy những vector này không
phân bố ngẫu nhiên trong không gian ảnh mà phân bố theo một quy luật tương đối nào
đó, ta có thể nói những vector này nằm trong một không gian con gọi là không giankhuôn mặt Từ những vector trong tập huấn luyện, ta sẽ tìm một cơ sở trực chuẩn chokhông gian khuôn mặt Những vector thuộc cơ sở này có thể coi là những vector mangnhững nét tổng thể đặc trưng về khuôn mặt
Giả sử tập huấn luyện có P ảnh, khi đó ta sẽ có P vector: T1, T2, …, TP.
Tính vector ảnh trung bình :
1
1 p
i i
Ý tưởng của việc phân tích thành phần chính là tìm một tập những vector trực chuẩn
uk sao cho những vector này mô tả tốt nhất sự phân bố những vector khuôn mặt trong
không gian Những vector uk được chọn sao cho:
1,/ u