SlideShare a Scribd company logo
1 of 27
Download to read offline
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
VÀ TRUYỀN THÔNG VIỆT - HÀN
KHOA KHOA HỌC MÁY TÍNH
BÁO CÁO ĐỒ ÁN CƠ SỞ 5
XÂY DỰNG NHẬN DIỆN KHUÔN MẶT
BẰNG MTCNN VÀ FACENET
Sinh viên thực hiện : Nguyễn Đình An
Lớp : 18IT4
Giảng viên hướng dẫn : TS. Nguyễn Sĩ Thìn
Đà Nẵng, tháng 5 năm 2021
Trang 1
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
MỞ ĐẦU
Trang 2
Hiện nay, cùng với sự phát triển của xã hội, vấn đề án ninh bảo mật đang
được yêu cầu khắt khe ở mọi nơi trên thế giới. Các hệ thống nhận dạng con người
được ra đời với độ tin cậy ngày càng cao. Một trong các bài toán nhận dạng con
người rất được quan tâm hiện nay là nhận dạng khuôn mặt. Vì nhận dạng khuôn
mặt là cách cơ bản và dễ dàng nhất mà con người dùng để phân biệt nhau. Bên
cạnh đó, ngày nay việc thu thập, xử lý thông tin qua ảnh để phân biệt đối tượng
đang được quan tâm và ứng dụng rộng rãi. Với phương pháp này, chúng ta có thể
thu nhận được nhiều thông từ đối tượng mà không cần tác nhiều đến đối tượng
nghiên cứu.
Một trong những bài toán được nhiều người quan tâm nhất của lĩnh vực xử
lý ảnh hiện nay đó là nhận dạng khuôn mặt (Face Recognition). Như chúng ta đã
biết, khuôn mặt đóng vai trò quan trọng trong quá trình giao tiếp giữa người với
người, nó mang một lượng thông tin giàu có, chẳng hạn như từ khuôn mặt chúng
ta có thể xác định giới tính, tuổi tác, chủng tộc, trạng thái cảm xúc, đặc biệt là xác
định mối quan hệ với đối tượng (có quen biết hay khô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 đời sống hằ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 tin một
người nổi tiếng, …đặc biệt là an ninh, bảo mật. Có rất nhiều phương pháp nhận
dạng khuôn mặt để nâng cao hiệu suấ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.
Trong khuôn khổ đồ án này, chúng em sẽ tiếp tục giải quyết bài toán nhận
dạng offline. Trong đó đối tượng được thu thập thành các file dữ liệu và được
chuyển về trung tâm. Tại đó, các số liệu sẽ được phân tích xử lý. Chúng em sẽ lấy
đó làm nền tảng để có thể xây dựng các ứng dụng lớn hơn sau này
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
LỜI CẢM ƠN
Trang 3
Để thực hiện và hoàn thành tốt đồ án này, em đã nhận được sự giúp đỡ và hướng
dẫn rất tận tình của các thầy cô thuộc Trường Đại học Công nghệ thông tin và Truyền
thông Việt Hàn – Đại học Đà Nẵng. Em xin cảm ơn các thầy cô thuộc bộ môn chuyên
ngành đã cung cấp cho chúng em các thông tin, kiến thức vô cùng quý báu và cần thiết
trong suốt thời gian quá để em có thể thực hiện và hoàn thành đồ án của mình. Đặc biệt
em xin chân thành cảm ơn thành cô Hà Thị Minh Phương người đã trực tiếp hướng dẫn
chúng em trong thời gian thực hiện đồ án này.
Cuối cùng, xin chân thành cảm ơn các bạn trong ngành công nghệ thông tin đã ủng
hộ, giúp đỡ, chia sẻ kiến thức, kinh nghiệm và tài liệu có được giúp chúng tôi trong quá
trình nghiên cứu và thực hiện đề tài.
Do giới hạn về mặt thời gian và kiến thức cũng như kinh nghiệm thực tiễn nên đề
tài không tránh khỏi những sai sót. Em rất mong nhận được sự thông cảm của quý thầy cô
và mong đón nhận những góp ý của thầy cô và các bạn.
Em xin chân thành cảm ơn!
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
NHẬN XÉT
CỦA GIÁO VIÊN HƯỚNG DẪN
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
....................................................................................................................................
........................................................
Đà Nẵng, ngày 30 tháng 05 năm 2021
Giảng viên hướng dẫn
TS. NGUYỄN SĨ THÌN
Trang 4
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
MỤC LỤC
Chương 1:.............................................................................................................7
GIỚI THIỆU VÀ NGHIÊN CỨU TỔNG QUAN..............................................7
1.1 Giới thiệu đề tài:...........................................................................................7
1.2 Phương pháp thực hiện:................................................................................7
1.3 Mục đích nghiên cứu:....................................................................................8
1.4 Giới hạn của đề tài:.......................................................................................8
1.5 Cấu trúc đồ án:............................................................................................10
Chương 2 :..........................................................................................................10
CƠ SỞ LÝ THUYẾT.........................................................................................10
2.1 Các phương pháp nhận diện khuôn mặt:.....................................................10
2.1.1 Nhận dạng khuôn mặt người dùng thuật toán PCA :.............................11
2.1.2 Nhận dạng khuôn mặt người dựa trên phương pháp LBP:....................12
2.1.3 Nhận dạng khuôn mặt dựa trên phương pháp haar like và thuật toán
Adaboost:.......................................................................................................13
2.2 Mạng nơ-ron tích chập (Convolutional Neural Network):..........................17
2.2.1 Định nghĩa:...........................................................................................17
2.2.2 Cấu trúc đơn giản của CNN:.................................................................18
2.3 Tìm hiểu về Face Detector - MTCNN:........................................................22
2.4 Tìm hiểu Pre-trained model - FaceNet:.......................................................25
2.4.1 Pre-trained model:................................................................................25
2.4.2 FaceNet:................................................................................................26
2.4.3 Thuật toán Triplet loss trong FaceNet:..................................................27
2.5 Kỹ thuật căn chỉnh khuôn mặt (Face alignment):........................................30
Trang 5
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
2.6 Ngôn ngữ Python:.......................................................................................31
2.6.1 Giới thiệu sơ lược về ngôn ngữ Python:...............................................31
2.6.2 Các đặc điểm của ngôn ngữ Python:.....................................................32
2.6.3 Ứng dụng của Python:..........................................................................35
2.7 Một số thư viện quan trọng:........................................................................35
2.7.1 OpenCV:...............................................................................................35
2.7.2 Numpy:.................................................................................................37
2.7.3 Keras:....................................................................................................37
2.7.4 TensorFlow:..........................................................................................38
2.7.2 Dlib:......................................................................................................38
Chương 3:...........................................................................................................39
PHÂN TÍCH VÀ XÂY DỰNG HỆ THỐNG....................................................39
3.1 Phân tích – thiết kế hệ thống phát hiện mặt người:.....................................39
3.1.1 Phân tích:..............................................................................................39
3.1.2 Thiết kế hệ thống:.................................................................................41
3.1.3 Xử lý đầu vào:......................................................................................41
3.1.4 Trích chọn đặc trưng và gán nhãn:........................................................41
3.1.5 Phát hiện khuôn mặt trong ảnh đầu vào::..............................................44
3.1.6 Căn chỉnh khuôn mặt trước khi nhận dạng:..........................................44
3.1.7 Trích rút đặc trưng khuôn mặt từ ảnh đầu vào:.....................................44
3.1.8 Nhận diện khuôn mặt:...........................................................................45
3.1.9 Xác định các khuôn mặt “unknown”:...................................................46
3.2 Kết quả thử nghiệm hệ thống:.....................................................................46
3.3 Phân tích – thiết kế hệ thống phát hiện mặt người:.....................................24
3.3.1 Phân tích:..............................................................................................24
Trang 6
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
3.3.2 Thiết kế hệ thống:.................................................................................25
3.3.3 Thiết kế cơ sở dữ liệu:..........................................................................26
3.4 Giao diện chương trình:..............................................................................27
KẾT LUẬN.........................................................................................................49
DANH MỤC TÀI LIỆU THAM KHẢO...........................................................50
Trang 7
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
MỤC LỤC HÌNH ẢNH
Hình 1: Mô tả tính toán với bán kính 1 điểm ảnh và lấy mẫu 8 điểm lân cận.......13
Hình 2: Đặc trưng theo cạnh.................................................................................14
Hình 3: Đặc trưng theo đường..............................................................................14
Hình 4: Đặc trưng theo xung quanh tâm...............................................................14
Hình 5: Đặc trưng theo đường chéo.....................................................................14
Hình 6: Cách tính Integral Image của ảnh............................................................15
Hình 7: Cách tính tổng giá trị pixel vùng cần tính...............................................15
Hình 8: Hệ thống phát hiện khuôn mặt.................................................................16
Hình 9: : Cấu trúc của mạng nơ-ron tích chập......................................................19
Hình 10: Minh họa chập với kernel 3x3...............................................................19
Hình 11: Phép toán sử dụng phép gộp..................................................................20
Hình 12: Một số hàm phi tuyến............................................................................21
Hình 13: Kiến trúc mạng MTCNN.......................................................................23
Hình 14: Mạng neural P-Net................................................................................23
Hình 15: Mạng neural R-Net................................................................................24
Hình 16: Mạng neural O-Net................................................................................25
Hình 17: FaceNet lấy hình ảnh khuôn mặt làm đầu vào và xuất ra vector
embedding............................................................................................................26
Hình 18: Triplet loss trên hai positive faces-mặt tích cực và một negative face-mặt
tiêu cực.................................................................................................................28
Hình 19: Triplet loss.............................................................................................29
Hình 20: Triplet loss trước và sau khi đào tạo......................................................30
Hình 21: Căn chỉnh khuôn mặt.............................................................................31
Hình 22: Biểu đồ ngữ cảnh của hệ thống..............................................................39
Hình 23: Sơ đồ thực hiện......................................................................................40
Hình 24: Sơ đồ hệ thống.......................................................................................40
Hình 25: T Phát hiện khuôn mặt với Haar cascade...............................................42
Hình 26: Phát hiện khuôn mặt với MTCNN.........................................................43
Trang 8
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Hình 27: Trước và sau khi căn chỉnh khuôn mặt..................................................44
Hình 28: Cosine similarity...................................................................................45
Hình 29: Giao diện tạo mới người dùng...............................................................47
Hình 30: File hình ảnh..........................................................................................48
Hình 31: Giao diện training..................................................................................48
Hình 32: Giao diện nhận diện...............................................................................48
Trang 9
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Chương 1:
GIỚI THIỆU
1.1 Giới thiệu đề tài
Ngày nay, trong kỷ nguyên số, máy tính là một phần không thể thiếu trong
nghiên cứu khoa học cũng như trong đời sống hàng ngày. Tuy nhiên, do hệ thống
máy tính dựa trên lý thuyết cổ điển (tập hợp, logic nhị phân), nên dù có khả năng
tính toán lớn và độ chính xác cao, thì máy tính cũng chỉ có thể làm việc theo một
chương trình gồm các thuật toán được viết sẵn do lập trình viên chứ chưa thể tự
lập luận hay sáng tạo.
Học máy (Machine learning) là một phương pháp phân tích dữ liệu có thể
tự động hóa phân tích dữ liệu và tìm ra các trích xuất đặc trưng của bộ dữ liệu.
Học máy sử dụng các thuật toán trừu tượng để tự học từ dữ liệu, cho phép máy
tính tìm thấy những thông 2 tin có giá trị ẩn ở rất sâu mà không thể lập trình được
bằng cách thông thường. Khi tiếp xúc với dữ liệu mới, học máy có thể thích ứng
rất nhanh và độc lập.
Học sâu (Deep Learning) là một ngành đặc biệt của học máy. Học sâu sử
dụng mạng nơ ron nhân tạo (Artificial Neural Networks) để giải quyết các bài
toán mà tính toán cứng chưa thể xử lý được như dữ liệu trừu tượng, dữ liệu mờ,
dữ liệu không rõ ràng,... Với tính chất như vậy, học sâu thường được ứng dụng
trong nhận diện hình ảnh, nhận diện giọng nói, xử lý ngôn ngữ tự nhiên hoặc dự
đoán, dự báo.
Mạng nơ ron nhân tạo (Artificial Neural Networks) là một mô hình xử lý
thông tin, cấu thành từ các lớp nơ ron, được ra đời trên cơ sở mô phỏng hoạt động
não bộ của sinh vật. Mạng nơ ron nhân tạo gắn kết nhiều nơ ron theo một mô hình
nhất định, được trải qua huấn luyện để rút ra được kinh nghiệm, và sử dụng các
kinh nghiệm đã có để xử lý các thông tin mới. Mạng nơ ron nhân tạo thường áp
dụng vào giải các bài toán nhận dạng mẫu, hoặc dự đoán.
Mạng nơ ron Tích chập (Convolutional Neural Network) là một trong
những mô hình học sâu hiện đại nhất hiện nay. Mạng nơ ron Tích chập hiện nay
thường được sử dụng nhiều trong các hệ thống thông minh do ưu điểm của mạng
là có độ chính xác cao, tuy nhiên tốc độ tính toán lại rất nhanh. Vì lý do đó, mạng
Trang 10
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
nơ ron tích chập rất mạnh trong xử lý hình ảnh, và được ứng dụng rất nhiều trong
ngành thị giác máy tính trong các bài toán liên quan đến nhận dạng đối tượng.
Ngày nay, với sự phát triển của công nghệ bán dẫn, máy tính ngày càng
nhỏ đi, năng lượng tiêu thụ ngày càng thấp xuống, trong khi sức mạnh lại ngày
càng tăng lên. Với những ưu điểm như vậy, chúng ta có thể thấy rất nhiều thiết bị
thông minh đã và đang hiện diện mọi nơi trong đời sống, với camera nhiều điểm
ảnh, bộ nhớ trong lớn và vi xử lý mạnh như: điện thoại thông minh, máy ảnh kỹ
thuật số, camera hành trình,… Ngoài ra, với sự bùng nổ của xu hướng mạng vạn
vật IOT, người ta có thể sẽ còn thấy rất nhiều thiết bị thông minh mới xuất hiện:
xe ô tô tự lái, thiết bị bay không người lái tự giao hàng,... Có thể thấy, việc sử
dụng trí thông minh nhân tạo để khai thác dữ liệu hình ảnh trong các thiết bị
thông minh trong tương lai đã và đang trở thành xu hướng. Từ nhận định trên và
sự gợi ý của giảng viên hướng dẫn, nhóm em quyết định chọn nội dung “Xây
dựng ứng dụng nhận diện sử dụng deep learning” để làm đề tài nghiên cứu thực
hiện đồ án cơ sở của mình.
1.2 Phương pháp thực hiện
- Trước tiên ta phải nêu bài toán, phân tích và thiết kế hệ thống nhận dạng.
- Xây dựng hệ thống deep learning sử dụng ngôn ngữ Python và mạng nơ
ron Tích chập (CNN). Hệ thống lấy mẫu khuôn mặt bằng camera, sau đó hệ thống
trích xuất, phân tích khuôn mặt từ hình ảnh hoặc các mẫu được lấy trước đó để so
sánh và hệ thống đưa ra kết luận rằng có phải đối tượng được cho phép hay
không. Sử dụng công cụ IDLE Python để lập trình
- Sau đó xây dựng cơ sở dữ liệu SQLite để thống kê, hiển thị dữ liệu, sử
dụng một số công cụ để lập trình như Sublime Text, PHPStorm, Pycharm …
1.3 Mục đích nghiên cứu
 Tìm hiểu về các thuật toán nhận diện khuôn mặt người.
 Tìm hiểu về mạng nơ-ron tích chập (CNN).
 Nâng cao kỹ năng thiết kế và lập trình bằng ngôn ngữ Python.
 Rèn luyện kỹ năng nghiên cứu và tìm hiểu tài liệu.
 Xây dựng mô hình có thể nhận diện được cảm xúc khuôn mặt người
và đếm được số người ra vào.
1.4 Giới hạn của đề tài
Trang 11
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Với thời gian có hạn nên nhóm chỉ thực hiện nghiên cứu các vấn đề cơ bản
trong phạm vi nhất định:
- Sử dụng thư viện mở có sẵn.
- Sử dụng video quay trực tiếp từ webcam và ảnh có sẵn làm đầu vào.
- Chỉ hoạt động trong điều kiện có ánh sáng và góc quay phù hợp.
1.5 Cấu trúc đồ án:
- Nghiên cứu tổng quan.
- Phân tích và thiết kế hệ thống.
- Triển khai xây dựng.
- Kết luận và hướng phát triển.
Chương 2:
CƠ SỞ LÝ THUYẾT
2.1 Các phương pháp nhận diện khuôn mặt
Trang 12
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Hiện nay các phương pháp nhận dạng mặt được chia thành nhiều hướng
theo các tiêu chí khác nhau: nhận dạng với dữ liệu đầu vào là ảnh tĩnh 2D là phổ
biến nhất, tuy nhiên tương lai có lẽ sẽ là 3D (vì việc bố trí nhiều camera 2D sẽ cho
dữ liệu 3D và đem lại kết quả tốt hơn, đáng tin cậy hơn), cũng có thể chia thành 2
hướng là: làm với dữ liệu ảnh và làm với dữ liệu video. Trên thực tế người ta hay
chia các phương pháp nhận dạng mặt ra làm 3 loại: phương pháp tiếp cận toàn cục
(Global) như Eigenfaces - PCA, Fisherfaces - LDA; phương pháp tiếp cận dựa trên
các đặc điểm cục bộ (Local Feature Based) như LBP, Gabor Wavelets và phương
pháp lai (là sự kết hợp của phương pháp toàn cục và phương pháp cục bộ). [1]
Phương pháp nhận dạng khuôn mặt dựa trên các đặc điểm cục bộ: Đây là phương
pháp nhận dạng khuôn mặt dựa trên việc xác định các đặc trưng hình học của các
chi tiết trên một khuôn mặt (như vị trí, diện tích, hình dạng của mắt, mũi, miệng,
…), và mối quan hệ giữa chúng (như khoảng cách của hai mắt, khoảng cách của
hai lông mày,…). [2]
Phương pháp nhận dạng khuôn mặt dựa trên xét toàn diện khuôn mặt:
Nhận dạng dựa trên toàn diện khuôn mặt, có nghĩa là sẽ không đi xét đến từng
thành phần đặc trưng trên khuôn mặt nữa mà sẽ xem khuôn mặt là một không
gian cụ thể và sẽ tìm những đặc trưng, những đặc điểm chính trên không gian đó.
[2]
Phương pháp dựa trên các đặc điểm cục bộ đã được chứng minh là ưu việt
hơn khi làm việc trong các điều kiện không có kiểm soát và có thể nói rằng lịch sử
phát triển của nhận dạng mặt là sự phát triển của các phương pháp trích chọn đặc
trưng (Feature Extractrion Methods) được sử dụng trong các hệ thống dựa trên
feature based. Các ứng dụng cụ thể của nhận dạng mặt dựa trên 2 mô hình nhận
dạng: identification (xác định danh tính, bài toán 1-N), và verification (xác thực
danh tính, bài toán 1-1). Trong bài toán identification, ta cần xác định danh tính
của ảnh kiểm tra, còn trong bài toán verification ta cần xác định 2 ảnh có cùng
thuộc về một người hay không. [1]
Trang 13
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
2.1.1 Nhận dạng khuôn mặt người dùng thuật toán PCA
Kohonen đã đưa ra phương pháp dùng vector riêng để nhận dạng khuôn
mặt, ông dùng một mạng neural đơn giản để chứng tỏ khả năng của phương pháp
này trên các ảnh đã được chuẩn hóa. Mạng neural tính một mô tả của khuôn mặt
bằng cách xấp xỉ các vector riêng của ma trận tương quan của ảnh. Các vector
riêng sau này được biết đến với cái tên Eigenface [3] . Kirby và Sirovich chứng tỏ
các ảnh có khuôn mặt có thể được mã hóa tuyến tính bằng một số lượng vừa phải
các ảnh cơ sở. Tính chất này dựa trên biến đổi Karhunen-Lòeve, mà còn được gọi
dưới một cái tên khác là PCA và biến đổi Hotelling. Ý tưởng này được xem là
của Pearson trình bày đầu tiên vào năm 1901 và sau đó là Hotelling vào năm
1933. Cho một tập các ảnh huấn luyện có kích thước n x m được mô tả bởi các
vector có kích thước m x m, các vector cở sở cho một không gian con tối ưu được
xác định thông qua lỗi bình phương trung bình khi chiếu các ảnh huấn luyện vào
không gian con này. Các tác giả gọi tập các vector cơ sở tối ưu này là ảnh riêng
sau đó gọi cho đơn giản là vector riêng của ma trận hiệp phương sai được tính từ
các ảnh khuôn mặt đã vector hóa trong tập huấn luyện. Nếu cho 100 ảnh, mà mỗi
khuôn mặt có kích thước 91x50 thì có thể chỉ dùng 50 ảnh riêng, trong khi vẫn
duy trì được một khả năng giống nhau hợp lý (giữ được 95% tính chất). [4]
Turk và Pentland áp dụng PCA để xác định và nhận dạng khuôn mặt.
Tương tự, dùng PCA trên tập huấn luyện ảnh các khuôn mặt để sinh các ảnh riêng
(còn gọi là Eigenface) để tìm một không gian con (không gian khuôn mặt) trong
không gian ảnh. Các ảnh khuôn mặt được chiếu vào không gian con này và được
gom nhóm lại. Tương tự các ảnh không có khuôn mặt dùng để huấn luyện cũng
được chiếu vào cùng không gian con và gom nhóm lại. Các ảnh khi chiếu vào
không gian khuôn mặt thì không bị thay đổi tính chất cơ bản, trong khi chiếu các
ảnh không có khuôn mặt thì xuất hiện sự khác nhau cũng không ít. Xác định sự
có mặt của một khuôn mặt trong ảnh thông qua tất cả khoảng cách giữa các vị trí
trong ảnh và không gian ảnh. Khoảng cách này dùng để xem xét có hay không có
khuôn mặt người, kết quả khi tính toán các khoảng cách sẽ cho ta một bản đồ về
khuôn mặt. Có nhiều nghiên cứu về xác định khuôn mặt, nhận dạng, và trích đặc
Trang 14
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
trưng từ ý tưởng vector riêng, phân rã, và gom nhóm. Sau đó Kim phát triển cho
ảnh màu, bằng cách phân đoạn ảnh để không gian tìm kiếm giảm xuống. [4]
2.1.2 Nhận dạng khuôn mặt người dựa trên phương pháp LBP [5]
Mẫu nhị phân cục bộ (Local Binary Pattern - LBP) là phương pháp trích
chọn kết cấu của ảnh thành vector đặc trưng gọi là đặc trưng LBP. Ý tưởng ban
đầu của phương pháp này được tác giả Ojala và các đồng nghiệp giới thiệu, ban
đầu xử lý trên ảnh xám. Ví dụ với một điểm ảnh xét 8 điểm lân cận và sử dụng
chính giá trị của điểm ảnh tại trung tâm để phân ngưỡng 8 giá trị lân cận. Kết quả
tìm được một chuỗi bit nhị phân có chiều dài bằng 8 tương ứng với 8 điểm lân
cận được định nghĩa theo thứ tự nhất định. Chuỗi bit sẽ được chuyển sang hệ thập
phân và giá trị thập phân này thay thế giá trị ban đầu của điểm ảnh đang xét. Số
điểm lân cận có thể được thay đổi bằng đại lượng bán kính. Hình 2.1 mô tả quá
trình tính toán LBP cho bài toán nhận dạng mặt người.
Hình 1: Mô tả tính toán với bán kính 1 điểm ảnh và lấy mẫu 8 điểm lân cận
Ưu điểm của phương pháp LBP là có chi phí tính toán thấp, ổn định khi cường độ
thay đổi đơn điệu và dễ mở rộng lên không gian nhiều chiều như ảnh màu trong
hệ RGB. Tuy nhiên, nhược điểm của đặc trưng dựa trên gradient là:
- Đầu tiên, gradient phác họa cường độ phân phối xung quanh điểm ảnh một
cách khá thô do chỉ biểu thị bởi hai giá trị 0 và 1. Hai mức gradient giống
nhau có thể thuộc hai đối tượng cục bộ khác nhau, do đó không rõ ràng.
- Thứ hai, thông tin về gradient không đủ biểu diễn cho các đối tượng trong
trường hợp gặp môi trường phức tạp gây ra nhiễu.
Trang 15
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
2.1.3 Nhận dạng khuôn mặt dựa trên phương pháp haar like và thuật
toán Adaboost.
2.1.3.1 Đặc trưng Haar-like [6]
Đặc trưng Haar-like được sử dụng trong việc nhận dạng đối tượng trong
ảnh số được phát biểu bởi Viola và Jones gồm 4 đặc trưng cơ bản để xác định một
đối tượng trong ảnh. Mỗi đặc trưng Haar-like là sự kết hợp gồm 2 hoặc 3 khối chữ
nhật mang giá trị “đen” hoặc “trắng”. Những khối chữ nhật này thể hiện sự liên hệ
tương quan giữa các bộ phận trong ảnh mà bản thân từng giá trị pixel không thể
diễn đạt được.
Hình 2: Đặc trưng theo cạnh
Hình 3: Đặc trưng theo đường
Hình 4: Đặc trưng theo xung quanh tâm
Hình 5: Đặc trưng theo đường chéo
Trang 16
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Dựa theo các đặc trưng trên, giá trị của đặc trưng Haar-like được xây dựng
bởi độ chênh lệch giữa tổng các pixel của các vùng đen so với tổng các pixel của
các vùng trắng.
Dưới đây là công thức tính giá trị đặc trưng Haar-like:
f(x)= ) (2.1)
Như vậy để tính giá trị đặc trưng Haar-like cần phải thực hiện tính toán
tổng các vùng pixel trên ảnh. Điều này làm cho chi phí bài toán lớn không thể đáp
ứng các tính năng yêu cầu thời gian thực. Do vậy Viola và Jones [3] đã đề xuất ra
khái niệm “Integral Image” để giảm thiểu chi phí cho bài toán tính giá trị của đặc
trưng Haar-like để bài toán có thể xử lý với thời gian thực. Tính “Integral Image”
bằng cách sử dụng mảng 2 chiều với kích thước bằng kích thước của ảnh cần tính
giá trị đặc trưng Haar-like. Ảnh chia nhỏ ở vị trí (x, y) được tính bằng tổng các giá
trị pixel của vùng từ vị trí (0,0) đến vị trí (x-1, y-1). Việc tính toán đơn giản là
thực hiện phép cộng số nguyên nên tốc độ thực hiện được tối ưu hóa.
Hình 6: Cách tính Integral Image của ảnh
P(x, y) = (2.2)
Kết quả có được sau khi tính Integral Image, việc tính tổng giá trị pixel
trong vùng cần tính thực hiện như sau:
Gọi vùng cần tính tổng các giá trị pixel là vùng “A4”.
P1(x1, y1) = A1 (2.3)
P2(x2, y2) = A1 + A2 (2.4)
P3(x3, y3) = A1 + A3 (2.5)
P4(x4, y4) = A1 + A2 + A3 + A4 (2.6)
Ta được: A4 = P4 + P1 – P2 – P3 (2.7)
Trang 17
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Hình 7: Cách tính tổng giá trị pixel vùng cần tính
Hình 8: Hệ thống phát hiện khuôn mặt
Từ ảnh gốc ban đầu, hệ thống sẽ chia ảnh thành nhiều tỉ lệ rất nhỏ để tính
các đặc trưng qua các hàm đặc trưng cơ bản Haar-like. Sau khi tính toán được các
hàm đặc trưng, ta nhận được một số lượng rất lớn các đặc trưng. Để lựa chọn và
xác định có thể là khuôn mặt, ta dùng giải thuật Adaboost để lựa chọn và kết hợp
các vùng trọng số yếu thành trọng số mạnh. Cuối cùng, các vùng đã được lựa
chọn sẽ được đưa vào bộ phân loại “Cascade of classifier” để loại bỏ các vùng
Trang 18
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
không phải khuôn mặt và xác định vùng nào là khuôn mặt. Và đưa ra kết quả cuối
cùng.
2.1.3.2 Thuật toán Adaboost [6]
Adaboost là một cách trong hướng tiếp cận dựa trên diện mạo, Viola và
Jones dùng AdaBoost kết hợp cascade để xác định khuôn mặt người với các đặc
trưng dạng Haar wavelet-like. Tốc độ xử lý khá nhanh và tỷ lệ chính xác hơn 80%
trên ảnh xám. Adaboost là một bộ phân loại mạnh phi tuyến phức dựa trên tiếp
cận boosting được Freund và Schapire đưa ra vào năm 1995. Adaboost cũng hoạt
động dựa trên nguyên tắc kết hợp tuyến tính các “weak classifiers” để hình thành
một “strong classifier”. Là một cải tiến của của tiếp cận boosting. Adaboost sử
dụng thêm khái niệm trọng số (weight) để đánh dấu các mẫu khó nhận dạng.
Trong quá trình huấn luyện, cứ mỗi “weak classifiers” được xây dựng, thuật toán
sẽ tiến hành cập nhật lại trọng số để chuẩn bị cho việc xây dựng “weak classifier”
kế tiếp: tăng trọng số của các mẫu bị nhận dạng sai và giảm trọng số của các mẫu
được nhận dạng đúng bởi các “weak classifier” vừa xây dựng. Bằng cách này
“weak classifier” sau có thể tập trung vào các mẫu mà các “weak classifier” trước
nó làm chưa tốt. Sau cùng, các “weak classifier” sẽ được kết hợp tùy theo mức độ
tốt của chúng để tạo nên “strong classifier”.
2.1.3.3 Khái quát Cascade of classifier [7]
Ta sẽ có một chuỗi các bộ phân lớp, trong đó mỗi bộ phân lớp được xây
dựng bằng thuật toán Adaboost. Bây giờ, ta đưa tất cả các cửa sổ con đi qua chuỗi
các bộ phân lớp này:
 Bộ phân lớp đầu tiên sẽ loại bỏ phần lớn các cửa sổ không phải khuôn mặt
(nagative sub window) và cho đi qua các cửa sổ được cho là khuôn mặt
(positive sub window). Ở đây, bộ phân lớp này rất đơn giản và do đó, độ
phức tạp tính toán cũng rất thấp. Tất nhiên, vì rằng nó đơn giản nên trong
số các cửa sổ được nhận dạng là khuôn mặt sẽ có một số lượng lớn cửa sổ
bị nhận dạng sai (không phải là khuôn mặt).
 Những cửa sổ được cho đi qua bởi bộ phân lớp đầu sẽ được xem xét bởi bộ
phân lớp sau đó: nếu bộ phân lớp cho rằng đó không phải là khuôn mặt thì
Trang 19
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
ta loại bỏ; nếu bộ phân lớp cho rằng đó là khuôn mặt thì ta lại cho đi qua
và chuyển đến bộ phân lớp phía sau.
 Những bộ phân lớp càng về sau thì càng phức tạp hơn, đòi hỏi sự tính toán
nhiều hơn. Người ta gọi những cửa sổ con (mẫu) mà bộ phân lớp không
loại bỏ được là những mẫu khó nhận dạng. Những mẫu này càng đi sâu
vào trong chuỗi các bộ phân lớp thì càng khó nhận dạng. Chỉ những cửa sổ
đi qua được tất cả các bộ phân lớp thì ta mới quyết định đó là khuôn mặt.
Tóm lại, chuỗi các bộ phân lớp sẽ xử lý các mẫu (cửa sổ con) đi vào theo
nguyên tắc sau: nếu một bộ phân lớp nào đó cho rằng đó không phải là mặt người
thì ta loại bỏ ngay; còn nếu bộ phân lớp cho rằng đó là khuôn mặt thì ta chuyển
đến bộ phân lớp sau. Nếu một mẫu trót lọt hết tất cả các bộ phân lớp thì ta mới
quyết định đó là khuôn mặt.
Đây là một phương pháp cơ bản phù hợp cho những ai mới tham gia nghiên
cứu lĩnh vực nhận dạng khuôn mặt, đặc trưng Haar-like kết hợp với Adaboot được
cài sẵn trong bộ thư viện Opencv giúp chúng ta dễ dàng phát hiện khuôn mặt, tốc
độ phát hiện nhanh và hoạt động ổn định trong điều kiện đầy đủ sáng.
2.2 Mạng nơ-ron tích chập (Convolutional Neural Network)
2.2.1 Định nghĩa
Mạng nơ-ron tích chập là một trong những mô hình mạng học sâu phổ biến
nhất hiện nay, có khả năng nhận dạng và phân loại hình ảnh với độ chính xác rất
cao (khoảng 98%). Mô hình này đã và đang được phát triển, ứng dụng vào các hệ
thống xử lý ảnh lớn của Facebook, Google hay Amazon… cho các mục đích khác
nhau như các thuật toán gắn thẻ tự động, tìm kiếm ảnh hoặc drone giao hàng tự
động.
Sự ra đời của mạng nơ-ron tích chập là dựa trên ý tưởng cải tiến cách thức
các mạng nơ-ron nhân tạo truyền thống học thông tin trong ảnh. Do sử dụng các
liên kết đầy đủ giữa các điểm ảnh vào nút, các mạng nơ-ron nhân tạo truyền thẳng
bị hạn chế rất nhiều bởi kích thước của ảnh, ảnh càng lớn thì số lượng liên kết
Trang 20
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
càng tăng nhanh và kéo theo sự bùng nổ khối lượng tính toán. Ngoài ra sự liên kết
đầy đủ này cũng là sự dư thừa khi với mỗi bức ảnh, các thông tin chủ yếu thể hiện
qua sự phụ thuộc giữa các điểm ảnh với những điểm xung quanh nó mà không
quan tâm nhiều đến các điểm ảnh ở cách xa nhau. Mạng nơ-ron tích chập ra đời
với kiến trúc thay đổi, có khả năng xây dựng liên kết chỉ sử dụng một phần cục bộ
trong ảnh kết nối đến nút trong lớp tiếp theo thay vì toàn bộ ảnh như trong mạng
nơ-ron truyền thẳng.
Trong luận văn này, nhóm thực hiện sẽ trình bày về tích chập cũng như ý
tưởng của mô hình CNN áp dụng trong bài toán nhận diện cảm xúc trên khuôn
mặt.
2.2.2 Cấu trúc đơn giản của CNN [8]
Các lớp cơ bản trong một mạng nơ-ron tích chập bao gồm: lớp chập, lớp
gộp và lớp kết nối đầy đủ, được thay đổi về số lượng và cách sắp xếp để tạo ra các
mô hình huấn luyện phù hợp cho từng bài toán khác nhau.
Hình 9: Cấu trúc của mạng nơ-ron tích chập
- Lớp chập
Là lớp quan trọng nhất trong cấu trúc của mạng nơ-ron tích chập. Chập dựa
trên lý thuyết xử lý tín hiệu số, việc chập sẽ giúp trích xuất được những thông tin
quan trọng từ dữ liệu. Để dễ hình dung, có thể xem tích chập như một cửa sổ trượt
áp đặt lên một ma trận. Cơ chế của tích chập được minh họa qua Hình 2.10 bên
dưới.
Trang 21
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Hình 10: Minh họa chập với kernel 3x3
Từ Hình 2.10, ma trận bên trái là một bức ảnh đen trắng. Mỗi giá trị của
ma trận tương đương với một điểm ảnh, 0 là màu đen, 1 là màu trắng (nếu là ảnh
xám thì giá trị biến thiên từ 0 đến 255).
Cửa sổ trượt còn có tên gọi là kernel hay filter. Ở đây, ta dùng một ma trận
kernel 3×3 nhân từng thành phần tương ứng với ma trận ảnh bên trái. Giá trị đầu
ra do tích của các thành phần này cộng lại. Kết quả của tích chập là một ma trận
sinh ra từ việc trượt ma trận kernel và thực hiện tích chập cùng lúc lên toàn bộ ma
trận ảnh bên trái.
- Lớp gộp
Bản đồ đặc trưng được tạo ra thông qua việc tính toán của lớp chập, tuy
nhiên kích thước của nó so với kích thước đầu vào giảm không đáng kể. Nếu kích
thước không thay đổi, sẽ tạo nên một số lượng tính toán lớn và việc học tập cũng
trở nên rất khó khăn. Lớp gộp này sẽ giải quyết vấn đề về làm giảm kích thước và
số lượng tính toán của bản đồ đặc trưng.
Có nhiều toán tử gộp như Sum-Pooling, Max-Pooling, L_2-Pooling nhưng Max-
Pooling thường được sử dụng. Về mặt ý nghĩa thì Max-Pooling xác định vị trí cho
tín hiệu mạnh nhất khi áp dụng một loại kernel. Điều này cũng tương tự như là
một bộ lọc phát hiện vị trí đối tượng bằng kernel trong bài toán phát hiện đối
tượng trong ảnh.
Về mặt lý thuyết với ma trận đầu vào có kích thước a*b*c và thực hiện toán tử
gộp trên ma trận con của ma trận đầu vào có kích thước f*f với bước nhảy pixel s
thì ta được ma trận đầu ra a’*b’*c’ trong đó:
Trang 22
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
(2.4)
Hình 11: Phép toán sử dụng phép gộp
Hình 2.11 là ví dụ về sử dụng toán tử gộp. Trong đó miêu tả cách thức lớp gộp xử
lý đối với một đầu vào, kích thước của đầu vào là [224*224*64] được thực hiện
với các thông số f = 2 và s = 2 thì đầu ra có kích thước [112*112*64] được thể
hiện ở phía trái của Hình 2.11. Phía phải mô tả chi tiết cách thức hoạt động của
max-pooling trong đó f = 2 và s = 2 kết quả đầu ra ma trận tương ứng.
- Lớp ReLU
Chập là một phép biển đổi tuyến tính. Nếu tất cả các nơ-ron được tổng hợp
bởi các phép biến đổi tuyến tính thì một mạng nơ-ron đều có thể đưa về dưới dạng
một hàm tuyến tính. Do đó tại mỗi nơ-ron cần có một hàm truyền dưới dạng phi
tuyến.
Có nhiều dạng hàm phi tuyến được sử dụng trong quá trình này như sau:
Hình 12: Một số hàm phi tuyến.
Trang 23
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Các nghiên cứu gần đây chứng minh được việc sử dụng hàm ReLU cho kết quả
tốt hơn ở các khía cạnh: tính toán đơn giản, tạo ra tính thưa ở các nơ-ron ẩn (ví dụ
như sau bước khởi tạo ngẫu nhiên các trọng số, khoảng 50% các nơ-ron ẩn được
kích hoạt) và quá trình huấn luyện nhanh hơn ngay cả khi không phải trải qua
bước tiền huấn luyện.
- Lớp kết nối đủ
Cách kết nối các nơ-ron ở hai tầng với nhau trong đó tầng sau kết nối đẩy
đủ với các nơ-ron ở tầng trước nó. Đây cũng là dạng kết nối thường thấy ở mạng
nơ-ron nhân tạo, trong mạng nơ-ron tích chập tầng này thường được sử dụng ở
phía cuối của kiến trúc mạng.
Hiện nay có một số cấu trúc CNN đạt được kết quả khả quan như:
 LeNet: Đây là mô hình CNN thành công đầu tiên, đặc biệt là trong
việc nhận dạng chữ số, kí tự trong văn bản. Được phát triển bởi
Yann Lecun vào cuối những năm 90.
 AlexNet: Được phát triển bởi Alex Krizhevsky, Ilya Sutskever và
Geoff Hinton. Làn đầu được giới thiệu vào năm 2012 với cấu trúc
khá tương tự như LeNet nhưng với số lượng neuron, filter và layer
lớn hơn. Được coi là mạng neural đầu tiên phổ biến rộng rãi khả
năng của CNNs.
 ZF Net: Là mạng CNNs tốt nhất năm 2013 được phát triển bởi
Matthew Zeiler và Rob Fergus (ZF là viết tắt của Zeiler và Fergus).
Mạng neural này được phát triển từ AlexNet với việc tinh chỉnh các
hyperparameter (filter size, stride, ...). Với những layer gần input
layer, filter size và stride nhỏ hơn.
 GoogLeNet: Là mạng CNNs tốt nhất năm 2014 được phát triển bởi
Szegedy từ Google. Với một số thay đổi như giảm thiểu số lượng
tham số trong AlexNet từ 60 triệu xuống 4 triệu, sử dụng Average
Pooling thay cho FC-Layer.
Trang 24
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
 VGGNet: Là mạng CNNs tốt nhất năm 2015 được phát triển bởi
Karen Simonyan và Andrew Ziserman. Sử dụng filter 3x3 và
pooling 2x2 từ đầu tới cuối mạng. Và vẫn còn được tiếp tục phát
triển cho đến nay.
2.3 Tìm hiểu về Face Detector - MTCNN:
MTCNN là viết tắt của Multi-task Cascaded Convolutional Networks
(Mạng đa năng xếp tầng đa tác vụ). Nó là bao gồm 3 mạng CNN xếp chồng và
đồng thời hoạt động khi detect khuôn mặt. Mỗi mạng có cấu trúc khác nhau và
đảm nhiệm vai trò khác nhau trong task. Đầu ra của MTCNN là vị trí khuôn mặt
và các điểm trên mặt: mắt, mũi, miệng…
MTCNN hoạt động theo 3 bước, mỗi bước có một mạng neural riêng lần
lượt là: P-Net, R-Net và O-net
Hình 13. Kiến trúc mạng MTCNN
Với mỗi bức ảnh đầu vào, nó sẽ tạo ra nhiều bản sao của hình ảnh đó với
các kích thước khác nhau.
Tại P-Net, thuật toán sử dụng 1 kernel 12x12 chạy qua mỗi bức hình để
tìm kiếm khuôn mặt.
Trang 25
Tải bản FULL (53 trang): https://bit.ly/3Od2tnY
Dự phòng: fb.com/TaiHo123doc.net
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Hình 14. Mạng neural P-Net
Sau lớp convolution thứ 3, mạng chia thành 2 lớp. Convolution 4-1 đưa ra
xác suất của một khuôn mặt nằm trong mỗi bounding boxes, và Convolution 4-2
cung cấp tọa độ của các bounding boxes.
R-Net có cấu trúc tương tự vói P-Net. Tuy nhiên sử dụng nhiều layer hơn.
Tại đây, network sẽ sử dụng các bounding boxes được cung cấp từ P-Net và tinh
chỉnh là tọa độ.
Trang 26
Tải bản FULL (53 trang): https://bit.ly/3Od2tnY
Dự phòng: fb.com/TaiHo123doc.net
XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN
Hình 15. Mạng neural R-Net
Tương tự R-Net chia ra làm 2 layers ở bước cuối, cung cấp 2 đầu ra đó là
tọa độ mới của các bounding boxes, cùng độ tin tưởng của nó.
O-Net lấy các bounding boxes từ R-Net làm đầu vào và đánh dấu các tọa
độ của các mốc trên khuôn mặt.
Trang 27
9752736

More Related Content

Similar to XÂY DỰNG NHẬN DIỆN KHUÔN MẶT BẰNG MTCNN VÀ FACENET.pdf

Udcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyếtUdcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyếtmrnxthanh
 
Bao cao gk
Bao cao gkBao cao gk
Bao cao gkice_eyes
 
Bao cao giua ky
Bao cao giua kyBao cao giua ky
Bao cao giua kyice_eyes
 
Bao cao gk
Bao cao gkBao cao gk
Bao cao gkice_eyes
 
Udcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyếtUdcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyếtmrnxthanh
 
Demo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdfDemo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdfOanhVThKiu1
 
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...Phan Hữu Linh
 
Báo cáo thực tập cuối kỳ Nguyễn Minh Chương
Báo cáo thực tập cuối kỳ   Nguyễn Minh ChươngBáo cáo thực tập cuối kỳ   Nguyễn Minh Chương
Báo cáo thực tập cuối kỳ Nguyễn Minh Chươngmasternokizep
 
Báo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh Chương
Báo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh ChươngBáo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh Chương
Báo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh Chươngmasternokizep
 
TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...
TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...
TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...TieuNgocLy
 
đồ áN lý thuyết nhóm 1
đồ áN lý thuyết  nhóm 1đồ áN lý thuyết  nhóm 1
đồ áN lý thuyết nhóm 1Tuyet Hoang
 
Ql ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại họcQl ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại họcVcoi Vit
 
Bao cao ck update lan 1
Bao cao ck update lan 1Bao cao ck update lan 1
Bao cao ck update lan 1Duy Nguyen
 
Nvsp k2-357 nhom2-tu-nghien-cuu
Nvsp k2-357 nhom2-tu-nghien-cuuNvsp k2-357 nhom2-tu-nghien-cuu
Nvsp k2-357 nhom2-tu-nghien-cuuHa Pc
 
nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008Khanh Dinh
 
Đề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đ
Đề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đĐề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đ
Đề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đViết thuê trọn gói ZALO 0934573149
 

Similar to XÂY DỰNG NHẬN DIỆN KHUÔN MẶT BẰNG MTCNN VÀ FACENET.pdf (20)

Udcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyếtUdcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyết
 
Bao cao gk
Bao cao gkBao cao gk
Bao cao gk
 
Bao cao giua ky
Bao cao giua kyBao cao giua ky
Bao cao giua ky
 
Bao cao gk
Bao cao gkBao cao gk
Bao cao gk
 
Udcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyếtUdcnttk2 nhóm 2 đồ án lý thuyết
Udcnttk2 nhóm 2 đồ án lý thuyết
 
Báo Cáo Cuối kỳ CNTT ATHENA
Báo Cáo Cuối kỳ CNTT ATHENABáo Cáo Cuối kỳ CNTT ATHENA
Báo Cáo Cuối kỳ CNTT ATHENA
 
Demo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdfDemo_chưa sửa hết.pdf
Demo_chưa sửa hết.pdf
 
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
[Báo cáo Thực tập Athena] Nghiên cứu cơ chế routing của Cisco, mô phỏng trên ...
 
Báo cáo thực tập cuối kỳ Nguyễn Minh Chương
Báo cáo thực tập cuối kỳ   Nguyễn Minh ChươngBáo cáo thực tập cuối kỳ   Nguyễn Minh Chương
Báo cáo thực tập cuối kỳ Nguyễn Minh Chương
 
Báo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh Chương
Báo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh ChươngBáo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh Chương
Báo Cáo Thực Tập Cuối Kỳ Athena - Nguyễn Minh Chương
 
TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...
TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...
TÌM HIỂU CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM VÀ ỨNG DỤNG CÔNG CỤ KIỂM TRA TỰ ĐỘ...
 
đồ áN lý thuyết nhóm 1
đồ áN lý thuyết  nhóm 1đồ áN lý thuyết  nhóm 1
đồ áN lý thuyết nhóm 1
 
Ql ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại họcQl ngân hàng và trắc nghiệm đề thi đại học
Ql ngân hàng và trắc nghiệm đề thi đại học
 
Bao cao ck update lan 1
Bao cao ck update lan 1Bao cao ck update lan 1
Bao cao ck update lan 1
 
Nvsp k2-357 nhom2-tu-nghien-cuu
Nvsp k2-357 nhom2-tu-nghien-cuuNvsp k2-357 nhom2-tu-nghien-cuu
Nvsp k2-357 nhom2-tu-nghien-cuu
 
Ly thuyết
Ly thuyếtLy thuyết
Ly thuyết
 
nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008nghiên cứu và triển khai các dịch vụ mạng windows server 2008
nghiên cứu và triển khai các dịch vụ mạng windows server 2008
 
Đề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đ
Đề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đĐề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đ
Đề tài: Xây dựng hệ thống thi trắc nghiệm qua mạng LAN, 9đ
 
Đề tài: Mô hình phân loại sản phẩm theo chiều cao, HAY, 9đ
Đề tài: Mô hình phân loại sản phẩm theo chiều cao, HAY, 9đĐề tài: Mô hình phân loại sản phẩm theo chiều cao, HAY, 9đ
Đề tài: Mô hình phân loại sản phẩm theo chiều cao, HAY, 9đ
 
Đề tài: Mô hình phân loại sản phẩm theo chiều cao dùng Arduino
Đề tài: Mô hình phân loại sản phẩm theo chiều cao dùng ArduinoĐề tài: Mô hình phân loại sản phẩm theo chiều cao dùng Arduino
Đề tài: Mô hình phân loại sản phẩm theo chiều cao dùng Arduino
 

More from NuioKila

Pháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdf
Pháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdfPháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdf
Pháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdfNuioKila
 
BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...
BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...
BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...NuioKila
 
A study on common mistakes committed by Vietnamese learners in pronouncing En...
A study on common mistakes committed by Vietnamese learners in pronouncing En...A study on common mistakes committed by Vietnamese learners in pronouncing En...
A study on common mistakes committed by Vietnamese learners in pronouncing En...NuioKila
 
[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...
[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...
[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...NuioKila
 
THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...
THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...
THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...NuioKila
 
Nhu cầu lập pháp của hành pháp.pdf
Nhu cầu lập pháp của hành pháp.pdfNhu cầu lập pháp của hành pháp.pdf
Nhu cầu lập pháp của hành pháp.pdfNuioKila
 
KẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdf
KẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdfKẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdf
KẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdfNuioKila
 
KIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdf
KIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdfKIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdf
KIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdfNuioKila
 
QUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdf
QUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdfQUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdf
QUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdfNuioKila
 
NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...
NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...
NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...NuioKila
 
TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...
TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...
TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...NuioKila
 
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...NuioKila
 
Inefficiency in engineering change management in kimberly clark VietNam co., ...
Inefficiency in engineering change management in kimberly clark VietNam co., ...Inefficiency in engineering change management in kimberly clark VietNam co., ...
Inefficiency in engineering change management in kimberly clark VietNam co., ...NuioKila
 
An Investigation into culrural elements via linguistic means in New Headway t...
An Investigation into culrural elements via linguistic means in New Headway t...An Investigation into culrural elements via linguistic means in New Headway t...
An Investigation into culrural elements via linguistic means in New Headway t...NuioKila
 
An evaluation of the translation of the film Rio based on Newmarks model.pdf
An evaluation of the translation of the film Rio based on Newmarks model.pdfAn evaluation of the translation of the film Rio based on Newmarks model.pdf
An evaluation of the translation of the film Rio based on Newmarks model.pdfNuioKila
 
Teachers and students views on grammar presentation in the course book Englis...
Teachers and students views on grammar presentation in the course book Englis...Teachers and students views on grammar presentation in the course book Englis...
Teachers and students views on grammar presentation in the course book Englis...NuioKila
 
11th graders attitudes towards their teachers written feedback.pdf
11th graders attitudes towards their teachers written feedback.pdf11th graders attitudes towards their teachers written feedback.pdf
11th graders attitudes towards their teachers written feedback.pdfNuioKila
 
Phân tích tài chính Công ty Cổ phần VIWACO.pdf
Phân tích tài chính Công ty Cổ phần VIWACO.pdfPhân tích tài chính Công ty Cổ phần VIWACO.pdf
Phân tích tài chính Công ty Cổ phần VIWACO.pdfNuioKila
 
Ngói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdf
Ngói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdfNgói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdf
Ngói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdfNuioKila
 
ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...
ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...
ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...NuioKila
 

More from NuioKila (20)

Pháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdf
Pháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdfPháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdf
Pháp luật về Quỹ trợ giúp pháp lý ở Việt Nam.pdf
 
BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...
BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...
BÁO CÁO Kết quả tham vấn cộng đồng về tính hợp pháp của gỗ và các sản phẩm gỗ...
 
A study on common mistakes committed by Vietnamese learners in pronouncing En...
A study on common mistakes committed by Vietnamese learners in pronouncing En...A study on common mistakes committed by Vietnamese learners in pronouncing En...
A study on common mistakes committed by Vietnamese learners in pronouncing En...
 
[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...
[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...
[123doc] - thu-nghiem-cai-tien-chi-tieu-du-bao-khong-khi-lanh-cac-thang-cuoi-...
 
THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...
THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...
THỬ NGHIỆM CẢI TIẾN CHỈ TIÊU DỰ BÁO KHÔNG KHÍ LẠNH CÁC THÁNG CUỐI MÙA ĐÔNG BẰ...
 
Nhu cầu lập pháp của hành pháp.pdf
Nhu cầu lập pháp của hành pháp.pdfNhu cầu lập pháp của hành pháp.pdf
Nhu cầu lập pháp của hành pháp.pdf
 
KẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdf
KẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdfKẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdf
KẾ HOẠCH DẠY HỌC CỦA TỔ CHUYÊN MÔN MÔN HỌC SINH HỌC - CÔNG NGHỆ.pdf
 
KIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdf
KIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdfKIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdf
KIẾN TRÚC BIỂU HIỆN TẠI VIỆT NAM.pdf
 
QUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdf
QUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdfQUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdf
QUY HOẠCH PHÁT TRIỂN HỆ THỐNG Y TẾ TỈNH NINH THUẬN.pdf
 
NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...
NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...
NGHIÊN CỨU XÂY DỰNG BỘ TIÊU CHÍ ĐÁNH GIÁ CHẤT LƯỢNG CÁC CHƯƠNG TRÌNH ĐÀO TẠO ...
 
TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...
TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...
TIỂU LUẬN Phân tích các loại nguồn của luật tư La Mã và so sánh với các nguồn...
 
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
Nuevo enfoque de aprendizajesemi-supervisado para la identificaciónde secuenci...
 
Inefficiency in engineering change management in kimberly clark VietNam co., ...
Inefficiency in engineering change management in kimberly clark VietNam co., ...Inefficiency in engineering change management in kimberly clark VietNam co., ...
Inefficiency in engineering change management in kimberly clark VietNam co., ...
 
An Investigation into culrural elements via linguistic means in New Headway t...
An Investigation into culrural elements via linguistic means in New Headway t...An Investigation into culrural elements via linguistic means in New Headway t...
An Investigation into culrural elements via linguistic means in New Headway t...
 
An evaluation of the translation of the film Rio based on Newmarks model.pdf
An evaluation of the translation of the film Rio based on Newmarks model.pdfAn evaluation of the translation of the film Rio based on Newmarks model.pdf
An evaluation of the translation of the film Rio based on Newmarks model.pdf
 
Teachers and students views on grammar presentation in the course book Englis...
Teachers and students views on grammar presentation in the course book Englis...Teachers and students views on grammar presentation in the course book Englis...
Teachers and students views on grammar presentation in the course book Englis...
 
11th graders attitudes towards their teachers written feedback.pdf
11th graders attitudes towards their teachers written feedback.pdf11th graders attitudes towards their teachers written feedback.pdf
11th graders attitudes towards their teachers written feedback.pdf
 
Phân tích tài chính Công ty Cổ phần VIWACO.pdf
Phân tích tài chính Công ty Cổ phần VIWACO.pdfPhân tích tài chính Công ty Cổ phần VIWACO.pdf
Phân tích tài chính Công ty Cổ phần VIWACO.pdf
 
Ngói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdf
Ngói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdfNgói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdf
Ngói Champa ở di tích Triền Tranh (Duy Xuyên Quảng Nam).pdf
 
ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...
ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...
ĐỀ XUẤT CÁC GIẢI PHÁP NÂNG CAO HIỆU QUẢ VẬN HÀNH LƯỚI ĐIỆN PHÂN PHỐI TÂY NAM ...
 

Recently uploaded

Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiTrắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiNgocNguyen591215
 
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...ChuThNgnFEFPLHN
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfXem Số Mệnh
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...Nguyen Thanh Tu Collection
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...Nguyen Thanh Tu Collection
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạowindcances
 
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxbài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxTrnHiYn5
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptPhamThiThuThuy1
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...Nguyen Thanh Tu Collection
 
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhkinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhdtlnnm
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...Nguyen Thanh Tu Collection
 
Bài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnBài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnpmtiendhti14a5hn
 
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...Nguyen Thanh Tu Collection
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...Nguyen Thanh Tu Collection
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfXem Số Mệnh
 
Giáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình PhươngGiáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình Phươnghazzthuan
 

Recently uploaded (20)

Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiTrắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
 
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
SD-05_Xây dựng website bán váy Lolita Alice - Phùng Thị Thúy Hiền PH 2 7 8 6 ...
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
 
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
ĐỀ CHÍNH THỨC KỲ THI TUYỂN SINH VÀO LỚP 10 THPT CÁC TỈNH THÀNH NĂM HỌC 2020 –...
 
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
SÁNG KIẾN ÁP DỤNG CLT (COMMUNICATIVE LANGUAGE TEACHING) VÀO QUÁ TRÌNH DẠY - H...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
 
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxbài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Access: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.pptAccess: Chuong III Thiet ke truy van Query.ppt
Access: Chuong III Thiet ke truy van Query.ppt
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 7 GLOBAL SUCCESS (2 CỘ...
 
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhhkinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
kinh tế chính trị mác lênin chương hai và hàng hoá và sxxhh
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI KỸ NĂNG VIẾT ĐOẠN VĂN NGHỊ LUẬN XÃ HỘI 200 C...
 
Bài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiệnBài giảng môn Truyền thông đa phương tiện
Bài giảng môn Truyền thông đa phương tiện
 
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
 
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
TÀI LIỆU BỒI DƯỠNG HỌC SINH GIỎI LÝ LUẬN VĂN HỌC NĂM HỌC 2023-2024 - MÔN NGỮ ...
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
 
Giáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình PhươngGiáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình Phương
 

XÂY DỰNG NHẬN DIỆN KHUÔN MẶT BẰNG MTCNN VÀ FACENET.pdf

  • 1. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG VIỆT - HÀN KHOA KHOA HỌC MÁY TÍNH BÁO CÁO ĐỒ ÁN CƠ SỞ 5 XÂY DỰNG NHẬN DIỆN KHUÔN MẶT BẰNG MTCNN VÀ FACENET Sinh viên thực hiện : Nguyễn Đình An Lớp : 18IT4 Giảng viên hướng dẫn : TS. Nguyễn Sĩ Thìn Đà Nẵng, tháng 5 năm 2021 Trang 1
  • 2. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN MỞ ĐẦU Trang 2 Hiện nay, cùng với sự phát triển của xã hội, vấn đề án ninh bảo mật đang được yêu cầu khắt khe ở mọi nơi trên thế giới. Các hệ thống nhận dạng con người được ra đời với độ tin cậy ngày càng cao. Một trong các bài toán nhận dạng con người rất được quan tâm hiện nay là nhận dạng khuôn mặt. Vì nhận dạng khuôn mặt là cách cơ bản và dễ dàng nhất mà con người dùng để phân biệt nhau. Bên cạnh đó, ngày nay việc thu thập, xử lý thông tin qua ảnh để phân biệt đối tượng đang được quan tâm và ứng dụng rộng rãi. Với phương pháp này, chúng ta có thể thu nhận được nhiều thông từ đối tượng mà không cần tác nhiều đến đối tượng nghiên cứu. Một trong những bài toán được nhiều người quan tâm nhất của lĩnh vực xử lý ảnh hiện nay đó là nhận dạng khuôn mặt (Face Recognition). Như chúng ta đã biết, khuôn mặt đóng vai trò quan trọng trong quá trình giao tiếp giữa người với người, nó mang một lượng thông tin giàu có, chẳng hạn như từ khuôn mặt chúng ta có thể xác định giới tính, tuổi tác, chủng tộc, trạng thái cảm xúc, đặc biệt là xác định mối quan hệ với đối tượng (có quen biết hay khô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 đời sống hằ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 tin một người nổi tiếng, …đặc biệt là an ninh, bảo mật. Có rất nhiều phương pháp nhận dạng khuôn mặt để nâng cao hiệu suấ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. Trong khuôn khổ đồ án này, chúng em sẽ tiếp tục giải quyết bài toán nhận dạng offline. Trong đó đối tượng được thu thập thành các file dữ liệu và được chuyển về trung tâm. Tại đó, các số liệu sẽ được phân tích xử lý. Chúng em sẽ lấy đó làm nền tảng để có thể xây dựng các ứng dụng lớn hơn sau này
  • 3. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN LỜI CẢM ƠN Trang 3 Để thực hiện và hoàn thành tốt đồ án này, em đã nhận được sự giúp đỡ và hướng dẫn rất tận tình của các thầy cô thuộc Trường Đại học Công nghệ thông tin và Truyền thông Việt Hàn – Đại học Đà Nẵng. Em xin cảm ơn các thầy cô thuộc bộ môn chuyên ngành đã cung cấp cho chúng em các thông tin, kiến thức vô cùng quý báu và cần thiết trong suốt thời gian quá để em có thể thực hiện và hoàn thành đồ án của mình. Đặc biệt em xin chân thành cảm ơn thành cô Hà Thị Minh Phương người đã trực tiếp hướng dẫn chúng em trong thời gian thực hiện đồ án này. Cuối cùng, xin chân thành cảm ơn các bạn trong ngành công nghệ thông tin đã ủng hộ, giúp đỡ, chia sẻ kiến thức, kinh nghiệm và tài liệu có được giúp chúng tôi trong quá trình nghiên cứu và thực hiện đề tài. Do giới hạn về mặt thời gian và kiến thức cũng như kinh nghiệm thực tiễn nên đề tài không tránh khỏi những sai sót. Em rất mong nhận được sự thông cảm của quý thầy cô và mong đón nhận những góp ý của thầy cô và các bạn. Em xin chân thành cảm ơn!
  • 4. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... .................................................................................................................................... ........................................................ Đà Nẵng, ngày 30 tháng 05 năm 2021 Giảng viên hướng dẫn TS. NGUYỄN SĨ THÌN Trang 4
  • 5. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN MỤC LỤC Chương 1:.............................................................................................................7 GIỚI THIỆU VÀ NGHIÊN CỨU TỔNG QUAN..............................................7 1.1 Giới thiệu đề tài:...........................................................................................7 1.2 Phương pháp thực hiện:................................................................................7 1.3 Mục đích nghiên cứu:....................................................................................8 1.4 Giới hạn của đề tài:.......................................................................................8 1.5 Cấu trúc đồ án:............................................................................................10 Chương 2 :..........................................................................................................10 CƠ SỞ LÝ THUYẾT.........................................................................................10 2.1 Các phương pháp nhận diện khuôn mặt:.....................................................10 2.1.1 Nhận dạng khuôn mặt người dùng thuật toán PCA :.............................11 2.1.2 Nhận dạng khuôn mặt người dựa trên phương pháp LBP:....................12 2.1.3 Nhận dạng khuôn mặt dựa trên phương pháp haar like và thuật toán Adaboost:.......................................................................................................13 2.2 Mạng nơ-ron tích chập (Convolutional Neural Network):..........................17 2.2.1 Định nghĩa:...........................................................................................17 2.2.2 Cấu trúc đơn giản của CNN:.................................................................18 2.3 Tìm hiểu về Face Detector - MTCNN:........................................................22 2.4 Tìm hiểu Pre-trained model - FaceNet:.......................................................25 2.4.1 Pre-trained model:................................................................................25 2.4.2 FaceNet:................................................................................................26 2.4.3 Thuật toán Triplet loss trong FaceNet:..................................................27 2.5 Kỹ thuật căn chỉnh khuôn mặt (Face alignment):........................................30 Trang 5
  • 6. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN 2.6 Ngôn ngữ Python:.......................................................................................31 2.6.1 Giới thiệu sơ lược về ngôn ngữ Python:...............................................31 2.6.2 Các đặc điểm của ngôn ngữ Python:.....................................................32 2.6.3 Ứng dụng của Python:..........................................................................35 2.7 Một số thư viện quan trọng:........................................................................35 2.7.1 OpenCV:...............................................................................................35 2.7.2 Numpy:.................................................................................................37 2.7.3 Keras:....................................................................................................37 2.7.4 TensorFlow:..........................................................................................38 2.7.2 Dlib:......................................................................................................38 Chương 3:...........................................................................................................39 PHÂN TÍCH VÀ XÂY DỰNG HỆ THỐNG....................................................39 3.1 Phân tích – thiết kế hệ thống phát hiện mặt người:.....................................39 3.1.1 Phân tích:..............................................................................................39 3.1.2 Thiết kế hệ thống:.................................................................................41 3.1.3 Xử lý đầu vào:......................................................................................41 3.1.4 Trích chọn đặc trưng và gán nhãn:........................................................41 3.1.5 Phát hiện khuôn mặt trong ảnh đầu vào::..............................................44 3.1.6 Căn chỉnh khuôn mặt trước khi nhận dạng:..........................................44 3.1.7 Trích rút đặc trưng khuôn mặt từ ảnh đầu vào:.....................................44 3.1.8 Nhận diện khuôn mặt:...........................................................................45 3.1.9 Xác định các khuôn mặt “unknown”:...................................................46 3.2 Kết quả thử nghiệm hệ thống:.....................................................................46 3.3 Phân tích – thiết kế hệ thống phát hiện mặt người:.....................................24 3.3.1 Phân tích:..............................................................................................24 Trang 6
  • 7. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN 3.3.2 Thiết kế hệ thống:.................................................................................25 3.3.3 Thiết kế cơ sở dữ liệu:..........................................................................26 3.4 Giao diện chương trình:..............................................................................27 KẾT LUẬN.........................................................................................................49 DANH MỤC TÀI LIỆU THAM KHẢO...........................................................50 Trang 7
  • 8. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN MỤC LỤC HÌNH ẢNH Hình 1: Mô tả tính toán với bán kính 1 điểm ảnh và lấy mẫu 8 điểm lân cận.......13 Hình 2: Đặc trưng theo cạnh.................................................................................14 Hình 3: Đặc trưng theo đường..............................................................................14 Hình 4: Đặc trưng theo xung quanh tâm...............................................................14 Hình 5: Đặc trưng theo đường chéo.....................................................................14 Hình 6: Cách tính Integral Image của ảnh............................................................15 Hình 7: Cách tính tổng giá trị pixel vùng cần tính...............................................15 Hình 8: Hệ thống phát hiện khuôn mặt.................................................................16 Hình 9: : Cấu trúc của mạng nơ-ron tích chập......................................................19 Hình 10: Minh họa chập với kernel 3x3...............................................................19 Hình 11: Phép toán sử dụng phép gộp..................................................................20 Hình 12: Một số hàm phi tuyến............................................................................21 Hình 13: Kiến trúc mạng MTCNN.......................................................................23 Hình 14: Mạng neural P-Net................................................................................23 Hình 15: Mạng neural R-Net................................................................................24 Hình 16: Mạng neural O-Net................................................................................25 Hình 17: FaceNet lấy hình ảnh khuôn mặt làm đầu vào và xuất ra vector embedding............................................................................................................26 Hình 18: Triplet loss trên hai positive faces-mặt tích cực và một negative face-mặt tiêu cực.................................................................................................................28 Hình 19: Triplet loss.............................................................................................29 Hình 20: Triplet loss trước và sau khi đào tạo......................................................30 Hình 21: Căn chỉnh khuôn mặt.............................................................................31 Hình 22: Biểu đồ ngữ cảnh của hệ thống..............................................................39 Hình 23: Sơ đồ thực hiện......................................................................................40 Hình 24: Sơ đồ hệ thống.......................................................................................40 Hình 25: T Phát hiện khuôn mặt với Haar cascade...............................................42 Hình 26: Phát hiện khuôn mặt với MTCNN.........................................................43 Trang 8
  • 9. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Hình 27: Trước và sau khi căn chỉnh khuôn mặt..................................................44 Hình 28: Cosine similarity...................................................................................45 Hình 29: Giao diện tạo mới người dùng...............................................................47 Hình 30: File hình ảnh..........................................................................................48 Hình 31: Giao diện training..................................................................................48 Hình 32: Giao diện nhận diện...............................................................................48 Trang 9
  • 10. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Chương 1: GIỚI THIỆU 1.1 Giới thiệu đề tài Ngày nay, trong kỷ nguyên số, máy tính là một phần không thể thiếu trong nghiên cứu khoa học cũng như trong đời sống hàng ngày. Tuy nhiên, do hệ thống máy tính dựa trên lý thuyết cổ điển (tập hợp, logic nhị phân), nên dù có khả năng tính toán lớn và độ chính xác cao, thì máy tính cũng chỉ có thể làm việc theo một chương trình gồm các thuật toán được viết sẵn do lập trình viên chứ chưa thể tự lập luận hay sáng tạo. Học máy (Machine learning) là một phương pháp phân tích dữ liệu có thể tự động hóa phân tích dữ liệu và tìm ra các trích xuất đặc trưng của bộ dữ liệu. Học máy sử dụng các thuật toán trừu tượng để tự học từ dữ liệu, cho phép máy tính tìm thấy những thông 2 tin có giá trị ẩn ở rất sâu mà không thể lập trình được bằng cách thông thường. Khi tiếp xúc với dữ liệu mới, học máy có thể thích ứng rất nhanh và độc lập. Học sâu (Deep Learning) là một ngành đặc biệt của học máy. Học sâu sử dụng mạng nơ ron nhân tạo (Artificial Neural Networks) để giải quyết các bài toán mà tính toán cứng chưa thể xử lý được như dữ liệu trừu tượng, dữ liệu mờ, dữ liệu không rõ ràng,... Với tính chất như vậy, học sâu thường được ứng dụng trong nhận diện hình ảnh, nhận diện giọng nói, xử lý ngôn ngữ tự nhiên hoặc dự đoán, dự báo. Mạng nơ ron nhân tạo (Artificial Neural Networks) là một mô hình xử lý thông tin, cấu thành từ các lớp nơ ron, được ra đời trên cơ sở mô phỏng hoạt động não bộ của sinh vật. Mạng nơ ron nhân tạo gắn kết nhiều nơ ron theo một mô hình nhất định, được trải qua huấn luyện để rút ra được kinh nghiệm, và sử dụng các kinh nghiệm đã có để xử lý các thông tin mới. Mạng nơ ron nhân tạo thường áp dụng vào giải các bài toán nhận dạng mẫu, hoặc dự đoán. Mạng nơ ron Tích chập (Convolutional Neural Network) là một trong những mô hình học sâu hiện đại nhất hiện nay. Mạng nơ ron Tích chập hiện nay thường được sử dụng nhiều trong các hệ thống thông minh do ưu điểm của mạng là có độ chính xác cao, tuy nhiên tốc độ tính toán lại rất nhanh. Vì lý do đó, mạng Trang 10
  • 11. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN nơ ron tích chập rất mạnh trong xử lý hình ảnh, và được ứng dụng rất nhiều trong ngành thị giác máy tính trong các bài toán liên quan đến nhận dạng đối tượng. Ngày nay, với sự phát triển của công nghệ bán dẫn, máy tính ngày càng nhỏ đi, năng lượng tiêu thụ ngày càng thấp xuống, trong khi sức mạnh lại ngày càng tăng lên. Với những ưu điểm như vậy, chúng ta có thể thấy rất nhiều thiết bị thông minh đã và đang hiện diện mọi nơi trong đời sống, với camera nhiều điểm ảnh, bộ nhớ trong lớn và vi xử lý mạnh như: điện thoại thông minh, máy ảnh kỹ thuật số, camera hành trình,… Ngoài ra, với sự bùng nổ của xu hướng mạng vạn vật IOT, người ta có thể sẽ còn thấy rất nhiều thiết bị thông minh mới xuất hiện: xe ô tô tự lái, thiết bị bay không người lái tự giao hàng,... Có thể thấy, việc sử dụng trí thông minh nhân tạo để khai thác dữ liệu hình ảnh trong các thiết bị thông minh trong tương lai đã và đang trở thành xu hướng. Từ nhận định trên và sự gợi ý của giảng viên hướng dẫn, nhóm em quyết định chọn nội dung “Xây dựng ứng dụng nhận diện sử dụng deep learning” để làm đề tài nghiên cứu thực hiện đồ án cơ sở của mình. 1.2 Phương pháp thực hiện - Trước tiên ta phải nêu bài toán, phân tích và thiết kế hệ thống nhận dạng. - Xây dựng hệ thống deep learning sử dụng ngôn ngữ Python và mạng nơ ron Tích chập (CNN). Hệ thống lấy mẫu khuôn mặt bằng camera, sau đó hệ thống trích xuất, phân tích khuôn mặt từ hình ảnh hoặc các mẫu được lấy trước đó để so sánh và hệ thống đưa ra kết luận rằng có phải đối tượng được cho phép hay không. Sử dụng công cụ IDLE Python để lập trình - Sau đó xây dựng cơ sở dữ liệu SQLite để thống kê, hiển thị dữ liệu, sử dụng một số công cụ để lập trình như Sublime Text, PHPStorm, Pycharm … 1.3 Mục đích nghiên cứu  Tìm hiểu về các thuật toán nhận diện khuôn mặt người.  Tìm hiểu về mạng nơ-ron tích chập (CNN).  Nâng cao kỹ năng thiết kế và lập trình bằng ngôn ngữ Python.  Rèn luyện kỹ năng nghiên cứu và tìm hiểu tài liệu.  Xây dựng mô hình có thể nhận diện được cảm xúc khuôn mặt người và đếm được số người ra vào. 1.4 Giới hạn của đề tài Trang 11
  • 12. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Với thời gian có hạn nên nhóm chỉ thực hiện nghiên cứu các vấn đề cơ bản trong phạm vi nhất định: - Sử dụng thư viện mở có sẵn. - Sử dụng video quay trực tiếp từ webcam và ảnh có sẵn làm đầu vào. - Chỉ hoạt động trong điều kiện có ánh sáng và góc quay phù hợp. 1.5 Cấu trúc đồ án: - Nghiên cứu tổng quan. - Phân tích và thiết kế hệ thống. - Triển khai xây dựng. - Kết luận và hướng phát triển. Chương 2: CƠ SỞ LÝ THUYẾT 2.1 Các phương pháp nhận diện khuôn mặt Trang 12
  • 13. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Hiện nay các phương pháp nhận dạng mặt được chia thành nhiều hướng theo các tiêu chí khác nhau: nhận dạng với dữ liệu đầu vào là ảnh tĩnh 2D là phổ biến nhất, tuy nhiên tương lai có lẽ sẽ là 3D (vì việc bố trí nhiều camera 2D sẽ cho dữ liệu 3D và đem lại kết quả tốt hơn, đáng tin cậy hơn), cũng có thể chia thành 2 hướng là: làm với dữ liệu ảnh và làm với dữ liệu video. Trên thực tế người ta hay chia các phương pháp nhận dạng mặt ra làm 3 loại: phương pháp tiếp cận toàn cục (Global) như Eigenfaces - PCA, Fisherfaces - LDA; phương pháp tiếp cận dựa trên các đặc điểm cục bộ (Local Feature Based) như LBP, Gabor Wavelets và phương pháp lai (là sự kết hợp của phương pháp toàn cục và phương pháp cục bộ). [1] Phương pháp nhận dạng khuôn mặt dựa trên các đặc điểm cục bộ: Đây là phương pháp nhận dạng khuôn mặt dựa trên việc xác định các đặc trưng hình học của các chi tiết trên một khuôn mặt (như vị trí, diện tích, hình dạng của mắt, mũi, miệng, …), và mối quan hệ giữa chúng (như khoảng cách của hai mắt, khoảng cách của hai lông mày,…). [2] Phương pháp nhận dạng khuôn mặt dựa trên xét toàn diện khuôn mặt: Nhận dạng dựa trên toàn diện khuôn mặt, có nghĩa là sẽ không đi xét đến từng thành phần đặc trưng trên khuôn mặt nữa mà sẽ xem khuôn mặt là một không gian cụ thể và sẽ tìm những đặc trưng, những đặc điểm chính trên không gian đó. [2] Phương pháp dựa trên các đặc điểm cục bộ đã được chứng minh là ưu việt hơn khi làm việc trong các điều kiện không có kiểm soát và có thể nói rằng lịch sử phát triển của nhận dạng mặt là sự phát triển của các phương pháp trích chọn đặc trưng (Feature Extractrion Methods) được sử dụng trong các hệ thống dựa trên feature based. Các ứng dụng cụ thể của nhận dạng mặt dựa trên 2 mô hình nhận dạng: identification (xác định danh tính, bài toán 1-N), và verification (xác thực danh tính, bài toán 1-1). Trong bài toán identification, ta cần xác định danh tính của ảnh kiểm tra, còn trong bài toán verification ta cần xác định 2 ảnh có cùng thuộc về một người hay không. [1] Trang 13
  • 14. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN 2.1.1 Nhận dạng khuôn mặt người dùng thuật toán PCA Kohonen đã đưa ra phương pháp dùng vector riêng để nhận dạng khuôn mặt, ông dùng một mạng neural đơn giản để chứng tỏ khả năng của phương pháp này trên các ảnh đã được chuẩn hóa. Mạng neural tính một mô tả của khuôn mặt bằng cách xấp xỉ các vector riêng của ma trận tương quan của ảnh. Các vector riêng sau này được biết đến với cái tên Eigenface [3] . Kirby và Sirovich chứng tỏ các ảnh có khuôn mặt có thể được mã hóa tuyến tính bằng một số lượng vừa phải các ảnh cơ sở. Tính chất này dựa trên biến đổi Karhunen-Lòeve, mà còn được gọi dưới một cái tên khác là PCA và biến đổi Hotelling. Ý tưởng này được xem là của Pearson trình bày đầu tiên vào năm 1901 và sau đó là Hotelling vào năm 1933. Cho một tập các ảnh huấn luyện có kích thước n x m được mô tả bởi các vector có kích thước m x m, các vector cở sở cho một không gian con tối ưu được xác định thông qua lỗi bình phương trung bình khi chiếu các ảnh huấn luyện vào không gian con này. Các tác giả gọi tập các vector cơ sở tối ưu này là ảnh riêng sau đó gọi cho đơn giản là vector riêng của ma trận hiệp phương sai được tính từ các ảnh khuôn mặt đã vector hóa trong tập huấn luyện. Nếu cho 100 ảnh, mà mỗi khuôn mặt có kích thước 91x50 thì có thể chỉ dùng 50 ảnh riêng, trong khi vẫn duy trì được một khả năng giống nhau hợp lý (giữ được 95% tính chất). [4] Turk và Pentland áp dụng PCA để xác định và nhận dạng khuôn mặt. Tương tự, dùng PCA trên tập huấn luyện ảnh các khuôn mặt để sinh các ảnh riêng (còn gọi là Eigenface) để tìm một không gian con (không gian khuôn mặt) trong không gian ảnh. Các ảnh khuôn mặt được chiếu vào không gian con này và được gom nhóm lại. Tương tự các ảnh không có khuôn mặt dùng để huấn luyện cũng được chiếu vào cùng không gian con và gom nhóm lại. Các ảnh khi chiếu vào không gian khuôn mặt thì không bị thay đổi tính chất cơ bản, trong khi chiếu các ảnh không có khuôn mặt thì xuất hiện sự khác nhau cũng không ít. Xác định sự có mặt của một khuôn mặt trong ảnh thông qua tất cả khoảng cách giữa các vị trí trong ảnh và không gian ảnh. Khoảng cách này dùng để xem xét có hay không có khuôn mặt người, kết quả khi tính toán các khoảng cách sẽ cho ta một bản đồ về khuôn mặt. Có nhiều nghiên cứu về xác định khuôn mặt, nhận dạng, và trích đặc Trang 14
  • 15. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN trưng từ ý tưởng vector riêng, phân rã, và gom nhóm. Sau đó Kim phát triển cho ảnh màu, bằng cách phân đoạn ảnh để không gian tìm kiếm giảm xuống. [4] 2.1.2 Nhận dạng khuôn mặt người dựa trên phương pháp LBP [5] Mẫu nhị phân cục bộ (Local Binary Pattern - LBP) là phương pháp trích chọn kết cấu của ảnh thành vector đặc trưng gọi là đặc trưng LBP. Ý tưởng ban đầu của phương pháp này được tác giả Ojala và các đồng nghiệp giới thiệu, ban đầu xử lý trên ảnh xám. Ví dụ với một điểm ảnh xét 8 điểm lân cận và sử dụng chính giá trị của điểm ảnh tại trung tâm để phân ngưỡng 8 giá trị lân cận. Kết quả tìm được một chuỗi bit nhị phân có chiều dài bằng 8 tương ứng với 8 điểm lân cận được định nghĩa theo thứ tự nhất định. Chuỗi bit sẽ được chuyển sang hệ thập phân và giá trị thập phân này thay thế giá trị ban đầu của điểm ảnh đang xét. Số điểm lân cận có thể được thay đổi bằng đại lượng bán kính. Hình 2.1 mô tả quá trình tính toán LBP cho bài toán nhận dạng mặt người. Hình 1: Mô tả tính toán với bán kính 1 điểm ảnh và lấy mẫu 8 điểm lân cận Ưu điểm của phương pháp LBP là có chi phí tính toán thấp, ổn định khi cường độ thay đổi đơn điệu và dễ mở rộng lên không gian nhiều chiều như ảnh màu trong hệ RGB. Tuy nhiên, nhược điểm của đặc trưng dựa trên gradient là: - Đầu tiên, gradient phác họa cường độ phân phối xung quanh điểm ảnh một cách khá thô do chỉ biểu thị bởi hai giá trị 0 và 1. Hai mức gradient giống nhau có thể thuộc hai đối tượng cục bộ khác nhau, do đó không rõ ràng. - Thứ hai, thông tin về gradient không đủ biểu diễn cho các đối tượng trong trường hợp gặp môi trường phức tạp gây ra nhiễu. Trang 15
  • 16. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN 2.1.3 Nhận dạng khuôn mặt dựa trên phương pháp haar like và thuật toán Adaboost. 2.1.3.1 Đặc trưng Haar-like [6] Đặc trưng Haar-like được sử dụng trong việc nhận dạng đối tượng trong ảnh số được phát biểu bởi Viola và Jones gồm 4 đặc trưng cơ bản để xác định một đối tượng trong ảnh. Mỗi đặc trưng Haar-like là sự kết hợp gồm 2 hoặc 3 khối chữ nhật mang giá trị “đen” hoặc “trắng”. Những khối chữ nhật này thể hiện sự liên hệ tương quan giữa các bộ phận trong ảnh mà bản thân từng giá trị pixel không thể diễn đạt được. Hình 2: Đặc trưng theo cạnh Hình 3: Đặc trưng theo đường Hình 4: Đặc trưng theo xung quanh tâm Hình 5: Đặc trưng theo đường chéo Trang 16
  • 17. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Dựa theo các đặc trưng trên, giá trị của đặc trưng Haar-like được xây dựng bởi độ chênh lệch giữa tổng các pixel của các vùng đen so với tổng các pixel của các vùng trắng. Dưới đây là công thức tính giá trị đặc trưng Haar-like: f(x)= ) (2.1) Như vậy để tính giá trị đặc trưng Haar-like cần phải thực hiện tính toán tổng các vùng pixel trên ảnh. Điều này làm cho chi phí bài toán lớn không thể đáp ứng các tính năng yêu cầu thời gian thực. Do vậy Viola và Jones [3] đã đề xuất ra khái niệm “Integral Image” để giảm thiểu chi phí cho bài toán tính giá trị của đặc trưng Haar-like để bài toán có thể xử lý với thời gian thực. Tính “Integral Image” bằng cách sử dụng mảng 2 chiều với kích thước bằng kích thước của ảnh cần tính giá trị đặc trưng Haar-like. Ảnh chia nhỏ ở vị trí (x, y) được tính bằng tổng các giá trị pixel của vùng từ vị trí (0,0) đến vị trí (x-1, y-1). Việc tính toán đơn giản là thực hiện phép cộng số nguyên nên tốc độ thực hiện được tối ưu hóa. Hình 6: Cách tính Integral Image của ảnh P(x, y) = (2.2) Kết quả có được sau khi tính Integral Image, việc tính tổng giá trị pixel trong vùng cần tính thực hiện như sau: Gọi vùng cần tính tổng các giá trị pixel là vùng “A4”. P1(x1, y1) = A1 (2.3) P2(x2, y2) = A1 + A2 (2.4) P3(x3, y3) = A1 + A3 (2.5) P4(x4, y4) = A1 + A2 + A3 + A4 (2.6) Ta được: A4 = P4 + P1 – P2 – P3 (2.7) Trang 17
  • 18. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Hình 7: Cách tính tổng giá trị pixel vùng cần tính Hình 8: Hệ thống phát hiện khuôn mặt Từ ảnh gốc ban đầu, hệ thống sẽ chia ảnh thành nhiều tỉ lệ rất nhỏ để tính các đặc trưng qua các hàm đặc trưng cơ bản Haar-like. Sau khi tính toán được các hàm đặc trưng, ta nhận được một số lượng rất lớn các đặc trưng. Để lựa chọn và xác định có thể là khuôn mặt, ta dùng giải thuật Adaboost để lựa chọn và kết hợp các vùng trọng số yếu thành trọng số mạnh. Cuối cùng, các vùng đã được lựa chọn sẽ được đưa vào bộ phân loại “Cascade of classifier” để loại bỏ các vùng Trang 18
  • 19. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN không phải khuôn mặt và xác định vùng nào là khuôn mặt. Và đưa ra kết quả cuối cùng. 2.1.3.2 Thuật toán Adaboost [6] Adaboost là một cách trong hướng tiếp cận dựa trên diện mạo, Viola và Jones dùng AdaBoost kết hợp cascade để xác định khuôn mặt người với các đặc trưng dạng Haar wavelet-like. Tốc độ xử lý khá nhanh và tỷ lệ chính xác hơn 80% trên ảnh xám. Adaboost là một bộ phân loại mạnh phi tuyến phức dựa trên tiếp cận boosting được Freund và Schapire đưa ra vào năm 1995. Adaboost cũng hoạt động dựa trên nguyên tắc kết hợp tuyến tính các “weak classifiers” để hình thành một “strong classifier”. Là một cải tiến của của tiếp cận boosting. Adaboost sử dụng thêm khái niệm trọng số (weight) để đánh dấu các mẫu khó nhận dạng. Trong quá trình huấn luyện, cứ mỗi “weak classifiers” được xây dựng, thuật toán sẽ tiến hành cập nhật lại trọng số để chuẩn bị cho việc xây dựng “weak classifier” kế tiếp: tăng trọng số của các mẫu bị nhận dạng sai và giảm trọng số của các mẫu được nhận dạng đúng bởi các “weak classifier” vừa xây dựng. Bằng cách này “weak classifier” sau có thể tập trung vào các mẫu mà các “weak classifier” trước nó làm chưa tốt. Sau cùng, các “weak classifier” sẽ được kết hợp tùy theo mức độ tốt của chúng để tạo nên “strong classifier”. 2.1.3.3 Khái quát Cascade of classifier [7] Ta sẽ có một chuỗi các bộ phân lớp, trong đó mỗi bộ phân lớp được xây dựng bằng thuật toán Adaboost. Bây giờ, ta đưa tất cả các cửa sổ con đi qua chuỗi các bộ phân lớp này:  Bộ phân lớp đầu tiên sẽ loại bỏ phần lớn các cửa sổ không phải khuôn mặt (nagative sub window) và cho đi qua các cửa sổ được cho là khuôn mặt (positive sub window). Ở đây, bộ phân lớp này rất đơn giản và do đó, độ phức tạp tính toán cũng rất thấp. Tất nhiên, vì rằng nó đơn giản nên trong số các cửa sổ được nhận dạng là khuôn mặt sẽ có một số lượng lớn cửa sổ bị nhận dạng sai (không phải là khuôn mặt).  Những cửa sổ được cho đi qua bởi bộ phân lớp đầu sẽ được xem xét bởi bộ phân lớp sau đó: nếu bộ phân lớp cho rằng đó không phải là khuôn mặt thì Trang 19
  • 20. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN ta loại bỏ; nếu bộ phân lớp cho rằng đó là khuôn mặt thì ta lại cho đi qua và chuyển đến bộ phân lớp phía sau.  Những bộ phân lớp càng về sau thì càng phức tạp hơn, đòi hỏi sự tính toán nhiều hơn. Người ta gọi những cửa sổ con (mẫu) mà bộ phân lớp không loại bỏ được là những mẫu khó nhận dạng. Những mẫu này càng đi sâu vào trong chuỗi các bộ phân lớp thì càng khó nhận dạng. Chỉ những cửa sổ đi qua được tất cả các bộ phân lớp thì ta mới quyết định đó là khuôn mặt. Tóm lại, chuỗi các bộ phân lớp sẽ xử lý các mẫu (cửa sổ con) đi vào theo nguyên tắc sau: nếu một bộ phân lớp nào đó cho rằng đó không phải là mặt người thì ta loại bỏ ngay; còn nếu bộ phân lớp cho rằng đó là khuôn mặt thì ta chuyển đến bộ phân lớp sau. Nếu một mẫu trót lọt hết tất cả các bộ phân lớp thì ta mới quyết định đó là khuôn mặt. Đây là một phương pháp cơ bản phù hợp cho những ai mới tham gia nghiên cứu lĩnh vực nhận dạng khuôn mặt, đặc trưng Haar-like kết hợp với Adaboot được cài sẵn trong bộ thư viện Opencv giúp chúng ta dễ dàng phát hiện khuôn mặt, tốc độ phát hiện nhanh và hoạt động ổn định trong điều kiện đầy đủ sáng. 2.2 Mạng nơ-ron tích chập (Convolutional Neural Network) 2.2.1 Định nghĩa Mạng nơ-ron tích chập là một trong những mô hình mạng học sâu phổ biến nhất hiện nay, có khả năng nhận dạng và phân loại hình ảnh với độ chính xác rất cao (khoảng 98%). Mô hình này đã và đang được phát triển, ứng dụng vào các hệ thống xử lý ảnh lớn của Facebook, Google hay Amazon… cho các mục đích khác nhau như các thuật toán gắn thẻ tự động, tìm kiếm ảnh hoặc drone giao hàng tự động. Sự ra đời của mạng nơ-ron tích chập là dựa trên ý tưởng cải tiến cách thức các mạng nơ-ron nhân tạo truyền thống học thông tin trong ảnh. Do sử dụng các liên kết đầy đủ giữa các điểm ảnh vào nút, các mạng nơ-ron nhân tạo truyền thẳng bị hạn chế rất nhiều bởi kích thước của ảnh, ảnh càng lớn thì số lượng liên kết Trang 20
  • 21. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN càng tăng nhanh và kéo theo sự bùng nổ khối lượng tính toán. Ngoài ra sự liên kết đầy đủ này cũng là sự dư thừa khi với mỗi bức ảnh, các thông tin chủ yếu thể hiện qua sự phụ thuộc giữa các điểm ảnh với những điểm xung quanh nó mà không quan tâm nhiều đến các điểm ảnh ở cách xa nhau. Mạng nơ-ron tích chập ra đời với kiến trúc thay đổi, có khả năng xây dựng liên kết chỉ sử dụng một phần cục bộ trong ảnh kết nối đến nút trong lớp tiếp theo thay vì toàn bộ ảnh như trong mạng nơ-ron truyền thẳng. Trong luận văn này, nhóm thực hiện sẽ trình bày về tích chập cũng như ý tưởng của mô hình CNN áp dụng trong bài toán nhận diện cảm xúc trên khuôn mặt. 2.2.2 Cấu trúc đơn giản của CNN [8] Các lớp cơ bản trong một mạng nơ-ron tích chập bao gồm: lớp chập, lớp gộp và lớp kết nối đầy đủ, được thay đổi về số lượng và cách sắp xếp để tạo ra các mô hình huấn luyện phù hợp cho từng bài toán khác nhau. Hình 9: Cấu trúc của mạng nơ-ron tích chập - Lớp chập Là lớp quan trọng nhất trong cấu trúc của mạng nơ-ron tích chập. Chập dựa trên lý thuyết xử lý tín hiệu số, việc chập sẽ giúp trích xuất được những thông tin quan trọng từ dữ liệu. Để dễ hình dung, có thể xem tích chập như một cửa sổ trượt áp đặt lên một ma trận. Cơ chế của tích chập được minh họa qua Hình 2.10 bên dưới. Trang 21
  • 22. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Hình 10: Minh họa chập với kernel 3x3 Từ Hình 2.10, ma trận bên trái là một bức ảnh đen trắng. Mỗi giá trị của ma trận tương đương với một điểm ảnh, 0 là màu đen, 1 là màu trắng (nếu là ảnh xám thì giá trị biến thiên từ 0 đến 255). Cửa sổ trượt còn có tên gọi là kernel hay filter. Ở đây, ta dùng một ma trận kernel 3×3 nhân từng thành phần tương ứng với ma trận ảnh bên trái. Giá trị đầu ra do tích của các thành phần này cộng lại. Kết quả của tích chập là một ma trận sinh ra từ việc trượt ma trận kernel và thực hiện tích chập cùng lúc lên toàn bộ ma trận ảnh bên trái. - Lớp gộp Bản đồ đặc trưng được tạo ra thông qua việc tính toán của lớp chập, tuy nhiên kích thước của nó so với kích thước đầu vào giảm không đáng kể. Nếu kích thước không thay đổi, sẽ tạo nên một số lượng tính toán lớn và việc học tập cũng trở nên rất khó khăn. Lớp gộp này sẽ giải quyết vấn đề về làm giảm kích thước và số lượng tính toán của bản đồ đặc trưng. Có nhiều toán tử gộp như Sum-Pooling, Max-Pooling, L_2-Pooling nhưng Max- Pooling thường được sử dụng. Về mặt ý nghĩa thì Max-Pooling xác định vị trí cho tín hiệu mạnh nhất khi áp dụng một loại kernel. Điều này cũng tương tự như là một bộ lọc phát hiện vị trí đối tượng bằng kernel trong bài toán phát hiện đối tượng trong ảnh. Về mặt lý thuyết với ma trận đầu vào có kích thước a*b*c và thực hiện toán tử gộp trên ma trận con của ma trận đầu vào có kích thước f*f với bước nhảy pixel s thì ta được ma trận đầu ra a’*b’*c’ trong đó: Trang 22
  • 23. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN (2.4) Hình 11: Phép toán sử dụng phép gộp Hình 2.11 là ví dụ về sử dụng toán tử gộp. Trong đó miêu tả cách thức lớp gộp xử lý đối với một đầu vào, kích thước của đầu vào là [224*224*64] được thực hiện với các thông số f = 2 và s = 2 thì đầu ra có kích thước [112*112*64] được thể hiện ở phía trái của Hình 2.11. Phía phải mô tả chi tiết cách thức hoạt động của max-pooling trong đó f = 2 và s = 2 kết quả đầu ra ma trận tương ứng. - Lớp ReLU Chập là một phép biển đổi tuyến tính. Nếu tất cả các nơ-ron được tổng hợp bởi các phép biến đổi tuyến tính thì một mạng nơ-ron đều có thể đưa về dưới dạng một hàm tuyến tính. Do đó tại mỗi nơ-ron cần có một hàm truyền dưới dạng phi tuyến. Có nhiều dạng hàm phi tuyến được sử dụng trong quá trình này như sau: Hình 12: Một số hàm phi tuyến. Trang 23
  • 24. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Các nghiên cứu gần đây chứng minh được việc sử dụng hàm ReLU cho kết quả tốt hơn ở các khía cạnh: tính toán đơn giản, tạo ra tính thưa ở các nơ-ron ẩn (ví dụ như sau bước khởi tạo ngẫu nhiên các trọng số, khoảng 50% các nơ-ron ẩn được kích hoạt) và quá trình huấn luyện nhanh hơn ngay cả khi không phải trải qua bước tiền huấn luyện. - Lớp kết nối đủ Cách kết nối các nơ-ron ở hai tầng với nhau trong đó tầng sau kết nối đẩy đủ với các nơ-ron ở tầng trước nó. Đây cũng là dạng kết nối thường thấy ở mạng nơ-ron nhân tạo, trong mạng nơ-ron tích chập tầng này thường được sử dụng ở phía cuối của kiến trúc mạng. Hiện nay có một số cấu trúc CNN đạt được kết quả khả quan như:  LeNet: Đây là mô hình CNN thành công đầu tiên, đặc biệt là trong việc nhận dạng chữ số, kí tự trong văn bản. Được phát triển bởi Yann Lecun vào cuối những năm 90.  AlexNet: Được phát triển bởi Alex Krizhevsky, Ilya Sutskever và Geoff Hinton. Làn đầu được giới thiệu vào năm 2012 với cấu trúc khá tương tự như LeNet nhưng với số lượng neuron, filter và layer lớn hơn. Được coi là mạng neural đầu tiên phổ biến rộng rãi khả năng của CNNs.  ZF Net: Là mạng CNNs tốt nhất năm 2013 được phát triển bởi Matthew Zeiler và Rob Fergus (ZF là viết tắt của Zeiler và Fergus). Mạng neural này được phát triển từ AlexNet với việc tinh chỉnh các hyperparameter (filter size, stride, ...). Với những layer gần input layer, filter size và stride nhỏ hơn.  GoogLeNet: Là mạng CNNs tốt nhất năm 2014 được phát triển bởi Szegedy từ Google. Với một số thay đổi như giảm thiểu số lượng tham số trong AlexNet từ 60 triệu xuống 4 triệu, sử dụng Average Pooling thay cho FC-Layer. Trang 24
  • 25. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN  VGGNet: Là mạng CNNs tốt nhất năm 2015 được phát triển bởi Karen Simonyan và Andrew Ziserman. Sử dụng filter 3x3 và pooling 2x2 từ đầu tới cuối mạng. Và vẫn còn được tiếp tục phát triển cho đến nay. 2.3 Tìm hiểu về Face Detector - MTCNN: MTCNN là viết tắt của Multi-task Cascaded Convolutional Networks (Mạng đa năng xếp tầng đa tác vụ). Nó là bao gồm 3 mạng CNN xếp chồng và đồng thời hoạt động khi detect khuôn mặt. Mỗi mạng có cấu trúc khác nhau và đảm nhiệm vai trò khác nhau trong task. Đầu ra của MTCNN là vị trí khuôn mặt và các điểm trên mặt: mắt, mũi, miệng… MTCNN hoạt động theo 3 bước, mỗi bước có một mạng neural riêng lần lượt là: P-Net, R-Net và O-net Hình 13. Kiến trúc mạng MTCNN Với mỗi bức ảnh đầu vào, nó sẽ tạo ra nhiều bản sao của hình ảnh đó với các kích thước khác nhau. Tại P-Net, thuật toán sử dụng 1 kernel 12x12 chạy qua mỗi bức hình để tìm kiếm khuôn mặt. Trang 25 Tải bản FULL (53 trang): https://bit.ly/3Od2tnY Dự phòng: fb.com/TaiHo123doc.net
  • 26. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Hình 14. Mạng neural P-Net Sau lớp convolution thứ 3, mạng chia thành 2 lớp. Convolution 4-1 đưa ra xác suất của một khuôn mặt nằm trong mỗi bounding boxes, và Convolution 4-2 cung cấp tọa độ của các bounding boxes. R-Net có cấu trúc tương tự vói P-Net. Tuy nhiên sử dụng nhiều layer hơn. Tại đây, network sẽ sử dụng các bounding boxes được cung cấp từ P-Net và tinh chỉnh là tọa độ. Trang 26 Tải bản FULL (53 trang): https://bit.ly/3Od2tnY Dự phòng: fb.com/TaiHo123doc.net
  • 27. XÂY DỰNG ỨNG DỤNG NHẬN DIỆN KHUÔN MẶT GVHD: TS. NGUYỄN SĨ THÌN Hình 15. Mạng neural R-Net Tương tự R-Net chia ra làm 2 layers ở bước cuối, cung cấp 2 đầu ra đó là tọa độ mới của các bounding boxes, cùng độ tin tưởng của nó. O-Net lấy các bounding boxes từ R-Net làm đầu vào và đánh dấu các tọa độ của các mốc trên khuôn mặt. Trang 27 9752736