CHƯƠNG 1 : GIỚI THIỆU1.1 Giới thiệu về đề tài Đề tài : Tìm hiểu, nghiên cứu và thực hiện xây dựng hệ thống nhận diện gương mặtBối cảnh thực hiện đề tài: Ngày nay, cùng với những tiến bộ
Trang 1ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
ĐỒ ÁN CƠ SỞ 5
ĐIỂM DANH BẰNG NHẬN DIỆN GƯƠNG MẶT
Sinh viên thực hiện : CHU VĂN HOÀNG - 17IT3
: LÊ THỊ THÙY LINH - 17IT3
Giảng viên hướng dẫn : THS.PHAN TRỌNG THANH
Đà nẵng, tháng 8 năm 2020
Trang 2ĐẠI HỌC ĐÀ NẴNG KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
ĐỒ ÁN CƠ SỞ 5
ĐIỂM DANH BẰNG NHẬN DIỆN GƯƠNG MẶT
Đà Nẵng, tháng 8 năm 2020
Trang 3LỜI CẢM ƠN
Lời đầu tiên, chúng em xin cảm ơn đến toàn thể các quý thầy cô giáo khoaCông nghệ thông tin và truyền thông Những người đã luôn đồng hành cùng chúng emtrong những năm bước vào ngưỡng Đại học, giúp chúng em học cách tự lập và tự mìnhtìm tòi những thứ mới và định hướng trong học tập
Chúng em cũng xin gửi lời cảm ơn đến Thầy Phan Trọng Thanh, thầy đã giúp
đỡ chúng em trong việc giải đáp và tìm hiểu các thông tin liên quan đến học phần màchúng em gặp nhiều vướng mắc, từ đó đưa ra hướng giải quyết để chúng em có thểchọn được một đề tài phù hợp với khả năng của mình
Kiến thức là vô hạn mà sự tiếp nhận kiến thức của bản thân mỗi người luôn tồntại những hạn chế nhất định Do đó, trong quá trình hoàn thành bài báo cáo này, chắcchắn không tránh khỏi những thiếu sót Chúng em rất mong nhận được những góp ýđến từ thầy để bài viết được hoàn thiện hơn
Kính chúc thầy sức khỏe và thành công trên con đường sự nghiệp giảng dạy
Trang 4NHẬN XÉT
(Của giảng viên hướng dẫn)
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 5MỞ ĐẦU
AI – Artificial Intelligence là khoa học làm cho máy móc trở nên thông minh, với
mục tiêu cuối cùng là cho phép người máy sở hữu những khả năng tương tự như conngười Trên thực tế, AI đã có tác động đáng kể đến cuộc sống của chúng ta, bằng cáchnhư cải thiện sức khỏe, an toàn và năng suất của con người Ví dụ, ứng dụng AI vàoviệc nhận dạng giọng nói giúp chúng ta điều khiển các thiết bị thông minh dễ dànghơn, phân tích video thông minh giúp đường phố của chúng ta an toàn hơn
Việc triển khai công nghệ AI rất quan trọng để thúc đẩy chất lượng và phạm vi của cácứng dụng IoT nói chung Các công nghệ AI được tùy biến cao cho các nhiệm vụ riêng
lẻ và mỗi ứng dụng đòi hỏi nghiên cứu chuyên ngành và cấu trúc chuyên biệt Deep
Learning, một hình thức học máy dựa trên các bộ dữ liệu được đào tạo đã tạo điều
kiện cho nhận dạng mẫu nâng cao trong hình ảnh, video và nhận dạng đối tượng / hoạtđộng Các thuật toán của nó có thể được áp dụng rộng rãi cho một loạt các ứng dụngdựa trên nhận dạng mẫu
Trang 6DANH MỤC HÌNH
Hình 1: Face Recognition 11
Hình 2: Guido van Rossum - Nhà sáng lập Python 12
Hình 3: Ngôn ngữ Python 13
Hình 4 Thông tin sinh viên 14
Hình 5 Thông tin ngày giờ điểm danh 15
Hình 6 Quá trình xử lý ảnh 15
Hình 7 OpenCV 17
Hình 8 Tensorflow 18
Hình 9 Biểu đồ lượt star và repos trên github sử dụng TF 18
Hình 10 Thống kê nhu cầu tensorflow của các nhà tuyển dụng 19
Hình 11 Matplotlib 19
Hình 12 Scikit-learn 20
Hình 13 Phương pháp truyền thống 22
Hình 14 Nhận diện 3D 23
Hình 15 Tìm kiếm khuôn mặt đại diện (face clustering) 25
Hình 16 Facenet 26
Hình 17 Triple loss 27
Hình 18 Fretrain model 28
Hình 19 Mô hình MTCNN 28
Hình 20 12-calibration-net 29
Hình 21 24-calibraton-net 29
Hình 22 48-calibration-net 30
Hình 23 MTCNN 30
Hình 24 P-Net 31
Hình 25 R-Net 32
Hình 26 O-Net 33
Hình 27 Kết quả thuật toán 34
Hình 28 Sơ đồ hệ thống 35
Hình 29 Tạo môi trường cho Project 36
Hình 30 Data Collection 37
Hình 31Cắt ảnh (Data Collection) 38
Hình 32 Lưu hình ảnh vào thư mục với tên thư mục tương ứng với Name 39
Hình 33 Find face and crop 39
Hình 34 Train Facenet 39
Hình 35 Lưu file your_model.pkl vào thư mục models 41
Hình 36 Giao diện khi đã được train 42
Hình 37: Face Recognition 44
Hình 38 GUI system 45
Trang 7DANH MỤC CỤM TỪ VIẾT TẮT
STT Cụm từ Viết tắt
Networks
Trang 8Mục Lục
CHƯƠNG 1 : GIỚI THIỆU 10
1.1 Giới thiệu về đề tài 10
1.2 Vấn đề cần giải quyết 10
1.3 Đề xuất nội dung thực hiện 11
1.4 Chức năng dự kiến 11
CHƯƠNG 2 : NGHIÊN CỨU TỔNG QUAN 12
2.1 Tổng quan về Python 12
2.1.1 Giới thiệu 12
2.1.2 Đặc điểm 13
2.2 Tổng quan về SQLite 14
2.2.1 SQLite là gì 14
2.2.2 Chức năng chính của SQLite 14
2.3 Tổng quan về quá trình xử lý ảnh 15
2.3.1 Xử lý ảnh là gì ? 15
2.3.2 Các quá trình xử lý ảnh 15
2.4 Tổng quan về các thư viện cài đặt 17
2.4.1 OpenCV 17
2.4.2 Tensorflow 18
2.4.3 Matplotlib 19
2.4.4 Pillow 19
2.4.5 Scipy 20
2.4.6 Scikit-learn 20
2.5 Hệ thống nhận diện gương mặt 20
2.5.1 Các ứng dụng phổ biến 20
2.5.2 Các loại hệ thống xác thực 21
2.5.3 Các phương pháp xác thực gương mặt 22
2.5.4 Các bài toán khác nhau về Face 24
2.5.5 Thuật toán nhận dạng Facenet 25
2.5.6 Các pretrain model facenet 27
2.6 MTCNN 28
2.6.1 Tổng quan về thư viện 28
2.5.2 Cấu trúc CNNs 29
2.6.3 Cách thức hoạt dộng 30
CHƯƠNG 3: SƠ ĐỒ HỆ THỐNG 35
CHƯƠNG 4 : TRIỂN KHAI XÂY DỰNG 36
Trang 94.1 Khởi tạo enviroment dự án mới trên Anaconda 36
4.2 Cài đặt thư viện 36
4.3 Chuẩn bị ảnh khuôn mặt để train (Data Collection) 37
4.4 Training dữ liệu 39
4.5 Nhận dạng gương mặt 43
4.6 Giao diện hệ thống 45
CHƯƠNG 5 : KẾT LUẬN 46
TÀI LIỆU THAM KHẢO 47
Trang 10CHƯƠNG 1 : GIỚI THIỆU
1.1 Giới thiệu về đề tài
Đề tài : Tìm hiểu, nghiên cứu và thực hiện xây dựng hệ thống nhận diện gương mặtBối cảnh thực hiện đề tài:
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ỏvai 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âydự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ácnhà 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 thunhậ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ạmthu 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ácquân sự, an ninh
1.2 Vấn đề cần giải quyết
Hệ thống nhận dạng khuôn mặt là một ứng dụng máy tính tự động xác địnhhoặc nhận dạng một người nào đó từ một bức hình ảnh kỹ thuật số hoặc một khunghình video từ một nguồn video Một trong những cách để thực hiện điều này là so sánhcác đặc điểm khuôn mặt chọn trước từ hình ảnh và một cơ sở dữ liệu về khuôn mặt
Hệ thống này thường được sử dụng trong các hệ thống an ninh và có thể được
so sánh với các dạng sinh trắc học khác như các hệ thống nhận dạng vân tay hay tròng
mắt
Từ đó thu thập, phân tích các tài liệu về nhận dạng khuôn mặt, tìm hiểu cácphương pháp nhận dạng khuôn mặt, nghiên cứu các công cụ xây dựng hệ thống
Trang 121.3 Đề xuất nội dung thực hiện
Đối với đề tài Tìm hiểu, nghiên cứu và thực hiện xây dựng hệ thống nhận diệngương mặt Việc hệ thống có thể nhận dạng chính xác là một việc quan trọng Đối với
đề tài này, chúng em thực hiện xây dựng hệ thống nhận diện gương mặt sử dụng Deeplearning với khả năng “Nhận dạng gương mặt nhanh chóng và chính xác”
Với hệ thống này, chúng em sẽ sử dụng các thư viện được cung cấp bởi PIPtrong python và sử dụng Visual Studio Code để lập trình
Hình 1: Face Recognition
1.4 Chức năng dự kiến
Hệ thống có khả năng lấy dữ liệu gương mặt (Data collection), training dữ liệugương mặt vừa lấy được và cuối cùng là chức năng chính nhận diện gương mặt (Facerecognition)
Trang 13CHƯƠNG 2 : NGHIÊN CỨU TỔNG QUAN
2.1 Tổng quan về Python
2.1.1 Giới thiệu
Python là một ngôn ngữ lập trình bậc cao cho các mục đích lập trình đa năng, do Guido van Rossum tạo ra và lần đầu ra mắt vào năm 1991 Python được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ Python là ngôn ngữ
có hình thức rất sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình.
Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự động Python được phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận Python Software Foundation quản lý Ban đầu, Python được phát triển để chạy trên nền Unix Nhưng rồi theo thời gian, Python dần mở rộng sang mọi hệ điều hành từ MS-DOS đến Mac OS , OS/2, Windows , Linux và các hệ điều hành khác thuộc họ Unix.
Ban đầu, Python được phát triển để chạy trên nền Unix Nhưng rồi theo thờigian, Python dần mở rộng sang mọi hệ điều hành từ MS-DOS đến Mac OS,OS/2, Windows, Linux và các hệ điều hành khác thuộc họ Unix Mặc dù sự phát triểncủa Python có sự đóng góp của rất nhiều cá nhân, nhưng Guido van Rossum hiện nayvẫn là tác giả chủ yếu của Python Ông giữ vai trò chủ chốt trong việc quyết địnhhướng phát triển của Python
Trang 14Hình 2: Guido van Rossum - Nhà sáng lập Python
- Hoàn toàn mô-đun hóa, hỗ trợ các gói theo cấp bậc
- Xử lý lỗi dựa theo ngoại lệ
- Kiểu dữ liệu động ở mức rất cao
- Các thư viện chuẩn và các mô-đun ngoài bao quát hầu như mọi việc
- Phần mở rộng và mô-đun dễ dàng viết trong C, C++
- Có thể nhúng trong ứng dụng như một giao diện kịch bản (scripting interface)
- Python mạnh mẽ và thực hiện rất nhanh
Trang 15Hình 3: Ngôn ngữ Python
Python là một ngôn ngữ lập trình cấp cao có thể đáp ứng phần lớn yêu cầu của lập trình viên:
- Python thích hợp với các chương trình lớn hơn cả AWK và Perl
- Python được sử dụng để lập trình Web Nó có thể được sử dụng như một ngônngữ kịch bản
- Python được thiết kế để có thể nhúng và phục vụ như một ngôn ngữ kịch bản đểtuỳ biến và mở rộng các ứng dụng lớn hơn
- Python được tích hợp sẵn nhiều công cụ và có một thư viện chuẩn phong phú,Python cho phép người dùng dễ dàng tạo ra các dịch vụ Web, sử dụng cácthành phần COM hay CORBA, hỗ trợ các loại định dạng dữ liệu Internet nhưemail, HTML, XML và các ngôn ngữ đánh dấu khác Python cũng được cungcấp các thư viện xử lý các giao thức Internet thông dụng như HTTP, FTP,…
- Python có khả năng giao tiếp đến hầu hết các loại cơ sở dữ liệu, có khả năng xử
lý văn bản, tài liệu hiệu quả, và có thể làm việc tốt với các công nghệ Webkhác
- Python đặc biệt hiệu quả trong lập trình tính toán khoa học nhờ các công cụPython Imaging Library, pyVTK, MayaVi 3D Visualization Toolkits, NumericPython, ScientificPython,…
- Python có thể được sử dụng để phát triển các ứng dụng desktop Lập trìnhviên có thể dùng wxPython, PyQt, PyGtk để phát triển các ứng dụng giao diện
Trang 16đồ họa (GUI) chất lượng cao Python còn hỗ trợ các nền tảng phát triển phầnmềm khác như MFC, Carbon, Delphi, X11, Motif, Tk, Fox, FLTK, …
- Python cũng có sẵn một unit testing framework để tạo ra các bộ test (testsuites)
2.2 Tổng quan về SQLite
2.2.1 SQLite là gì
SQLite là một thư viện phần mềm mà triển khai một SQL Database Engine,không cần máy chủ, không cần cấu hình, khép kín và nhỏ gọn Nó là một cơ sở dữliệu, không cần cấu hình, có nghĩa là giống như các cơ sở dữ liệu khác mà bạn khôngcần phải cấu hình nó trong hệ thống của mình
2.2.2 Chức năng chính của SQLite
- Dùng để lưu trữ thông tin bao gồm Mã SV ,tên ,… thông tin của sinh viên
Hình 4 Thông tin sinh viên
Trang 17
Hình 5 Thông tin ngày giờ điểm danh
Trang 182.3.2 Các quá trình xử lý ảnh
Hình 6 Quá trình xử lý ảnh
2.3.2.1 Phần thu nhận ảnh (Image Acquisition)
Ảnh có thể nhận qua camera màu hoặc đen trắng Thường ảnh nhận qua camera
là ảnh tương tự (loại camera ống chuẩn CCIR với tần số 1/25, mỗi ảnh 25 dòng), cũng
có loại camera đã số hoá (như loại CCD – Charge Coupled Device) là loại photodiodetạo cường độ sáng tại mỗi điểm ảnh
Camera thường dùng là loại quét dòng ; ảnh tạo ra có dạng hai chiều Chấtlượng một ảnh thu nhận được phụ thuộc vào thiết bị thu, vào môi trường (ánh sáng,phong cảnh)
2.3.2.2 Tiền xử lý (Image Processing)
Sau bộ thu nhận, ảnh có thể nhiễu độ tương phản thấp nên cần đưa vào bộ tiền
xử lý để nâng cao chất lượng Chức năng chính của bộ tiền xử lý là lọc nhiễu, tăng độtương phản để làm ảnh rõ hơn, nét hơn
2.3.2.3 Phân đoạn (Segmentation) hay phân vùng ảnh
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ễnphân tích, nhận dạng ảnh Ví dụ: để nhận dạng chữ (hoặc mã vạch) trên phong bì thưcho mục đích phân loại bưu phẩm, cần chia các câu, chữ về địa chỉ hoặc tên ngườithành các từ, các chữ, các số (hoặc các vạch) riêng biệt để nhận dạng Đây là phầnphứ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
2.3.2.4 Biễu diễn ảnh (Image Representation)
Đầu ra ảnh sau phân đoạn chứa các điểm ảnh của vùng ảnh (ảnh đã phân đoạn)cộng với mã liên kết với các vùng lân cận Việc biến đổi các số liệu này thành dạngthích hợp là cần thiết cho xử lý tiếp theo bằng máy tính Việc chọn các tính chất để thể
Trang 19hiện ảnh gọi là trích chọn đặc trưng (Feature Selection) gắn với việc tách các đặc tínhcủa ảnh dưới dạng các thông tin định lượng hoặc làm cơ sở để phân biệt lớp đối tượngnày với đối tượng khác trong phạm vi ảnh nhận được
2.3.2.5 Nhận dạng và nội suy ảnh(Image Recognition and Interpretation)
Nhận dạng ảnh là quá trình xác định ảnh Quá trình này thường thu được bằngcách so sánh với mẫu chuẩn đã được học (hoặc lưu) từ trước Nội suy là phán đoántheo ý nghĩa trên cơ sở nhận dạng Có nhiều cách phân loại ảnh khác nhau về ảnh.Theo lý thuyết về nhận dạng, các mô hình toán học về ảnh được phân theo hai loạinhận dạng ảnh cơ bản:
− Nhận dạng theo tham số
− Nhận dạng theo cấu trúc
Một số đối tượng nhận dạng khá phổ biến hiện nay đang được áp dụng trong khoa học
và công nghệ là: nhận dạng ký tự (chữ in, chữ viết tay, chữ ký điện tử), nhận dạng vănbản (Text), nhận dạng vân tay, nhận dạng mã vạch, nhận dạng mặt người…
2.3.2.6 Cơ sở trí thức(Knowledge Base)
Như đã nói ở trên, ảnh là một đối tượng khá phức tạp về đường nét, độ sáng tối,dung lượng điểm ảnh, môi trường để thu ảnh phong phú kéo theo nhiễu Trong nhiềukhâu xử lý và phân tích ảnh ngoài việc đơn giản hóa các phương pháp toán học đảmbảo tiện lợi cho xử lý, người ta mong muốn bắt chước quy trình tiếp nhận và xử lý ảnhtheo cách của con người Trong các bước xử lý đó, nhiều khâu hiện nay đã xử lý theocác phương pháp trí tuệ con người Vì vậy, ở đây các cơ sở tri thức được phát huy
2.4 Tổng quan về các thư viện cài đặt
2.4.1 OpenCV
OpenCV (Open Computer Vision) là một thư viện mã nguồn mở hàng đầu cho
xử lý về thị giác máy tính, machine learning, xử lý ảnh OpenCV đươc viết bằng C/C++, vì vậy có tốc độ tính toán rất nhanh, có thể sử dụng với các ứng dụng liên quan đếnthời gian thực Opencv có các interface cho C/C++, Python Java vì vậy hỗ trợ đượccho Window, Linux, MacOs lẫn Android, iOS OpenCV có cộng đồng hơn 47 nghìnngười dùng và số lượng download vượt quá 6 triệu lần
OpenCV có rất nhiều ứng dụng như nhận dạng ảnh, xử lý ảnh, phục hồiảnh/video, thực tế ảo, các ứng dụng khác,…
Trang 20Tại sao lại là thư viện Tensorflow ?
Tích hợp sẵn rất nhiều các thư viện machine learning
Có khả năng tương thích và mở rộng tốt Được Google phát triển cho machine learning phục vụ cả nghiên cứu lẫn xây dựng các ứng dụng thực tế
Phổ biến
Trang 21Hình 9 Biểu đồ lượt star và repos trên github sử dụng TF
Hình 10 Thống kê nhu cầu tensorflow của các nhà tuyển dụng
2.4.3 Matplotlib
Nó là một thư viện vẽ đồ thị rất mạnh mẽ, hữu ích cho những người làm việcvới Python và NumPy Module được sử dụng nhiều nhất của Matplotib là Pyplot.Pyplot cung cấp giao diện như MATLAB nhưng thay vào đó, nó sử dụng Python và nó
là nguồn mở
Trang 22Hình 11 Matplotlib
2.4.4 Pillow
Pillow là một fork từ thư viện PIL của Python được sử dụng để xử lý hình ảnh
So với PIL thì Pillow được cập nhật thường xuyên và đánh giá cao hơn (PIL đã khôngđược cập nhật từ năm 2009)
Thư viện tập trung vào việc mô hình hóa dữ liệu Nó không tập trung vào việctruyền tải dữ liệu, biến đổi hay tổng hợp dữ liệu Những công việc này dành cho thưviện Numpy và Pandas
Trang 23"rác bụi"".
Vào năm 2018, Apple bắt đầu tích hợp chức năng nhận diện khuôn mặt trongcác dòng sản phẩm iphone X Sau đó, một xu hướng các smart phone ứng dụng nhậndiện khuôn mặt ra đời
Một số ngân hàng ở Autralia bắt đầu ứng dụng xác thực khuôn mặt trong cácgiao dịch ATM
Tại Trung Quốc, hệ thống nhận diện khuôn mặt được triển khai trên toàn quốcgiúp chấm điểm công dân và đồng thời xác minh nhiều tội phạm lẩn trốn
Còn tại các cơ quan, hệ thống nhận diện khuôn mặt được nghiên cứu in-house
áp dụng để chấm công cho nhân viên
Nhận diện khuôn mặt có tính ứng dụng cao Rất nhiều công ty, doanh nghiệp vàquốc gia đang cần
Trang 242.5.2 Các loại hệ thống xác thực
Hầu hết các hệ thống xác thực sẽ dựa trên thông tin sinh trắc để định danh mộtngười Các thông tin sinh trắc là những thông tin duy nhất với mỗi người Đó có thể làvân tay, ADN, vân mắt, khuôn mặt (không phẫu thuật thẩm mỹ, hãy thả lỏng khuônmặt nhất có thể, không chu môi, nháy mắt, tạo kiểu cute các thứ), hình dạng, dáng đi,
Tuy nhiên hệ thống nhận diện khuôn mặt được ưa chuộng vì quá trình xác thựcnhanh, có thể xác thực từ xa, không cần phải tiếp xúc như vân tay, vân mắt Bạn đượcphép nhìn người khác nhưng muốn động chạm thì cần phải được sự xin phép của họ
2.5.3 Các phương pháp xác thực gương mặt
2.5.3.1 Phương pháp truyền thống
Các phương pháp truyền thống: Xác thực khuôn mặt bằng cách trích xuất ramột “landmark” cho khuôn mặt Nó như là một bản đồ xác định các vị trí cố định trênkhuôn mặt của một người như mắt, mũi, miệng, lông mày,…
Trang 25Hình 13 Phương pháp truyền thống
Như vậy ta thấy landmark face đã loại bỏ những phần thông tin không cần thiết
và giữ lại những thông tin chính Khi đó mỗi khuôn mặt sẽ được nén thành một véc tơ
n chiều Thông thường là 68 chiều
Sử dụng đầu vào là landmark face, áp dụng các thuật toán cổ điển như SVM,
k-NN, Naive Bayes, Random Forest, MLP, … để phân loại khuôn mặt cho một người
2.5.3.2 Nhận diện 3D
Kĩ thuật nhận diện 3D sẽ sử dụng không gian 3 chiều để biểu diễn khuôn mặt
Từ thông tin này có thể xác định các đặc trưng khác nhau trên bề mặt khuôn mặt nhưcác đường countour của mắt, mũi, cằm
Một lợi thế của nhận diện khuôn mặt 3D là không bị ảnh hưởng bởi những thayđổi về ánh sáng như các phương pháp 2D Dữ liệu 3D đã cải thiện đáng kể độ chínhxác của nhận dạng khuôn mặt