Mọi bài viết, tài liệu cũng như các thư viện chúng em sử dụng ho c nhặ ắc đến trong đồ án thì chúng em s nêu rõ trong ph n tài li u tham kh o... M i chuyên ngành s ỗ ẽ có đặc điểm và tín
Trang 1TRƯỜNG ĐẠI HỌC GIAO THÔNG V N T I TP.H CHÍ MINH Ậ Ả Ồ
**************
XÂY D NG H Ự Ệ THỐNG ĐIỂM DANH H C SINH Ọ
Nơi thực tập : Công ty C ổ Phần TITKUL
Giảng viên hướng dẫn : Th.S Tr n Anh Tuầ ấn
Sinh viên th c tự ập : Bùi Anh Khôi - 1751120086
Lâm Cao Sáng - 1751120102
Tp.Hồ Chí Minh, tháng 11 năm 2020
Trang 2LỜI CẢM ƠN
Lời đầu tiên chúng em xin g i l i cử ờ ảm ơn đến Khoa Công Ngh Thông Tin ệ –Trường Đại Học Giao Thông Vận Tải Tp.Hồ Chí Minh đã tạo điều kiện cho chúng
em hoàn thành t t khóa th c t p t t nghiố ự ậ ố ệp này Chúng em cũng xin chân thành cảm
ơn Công ty Cổ Phần TitKul cũng như thầy Trần Anh Tuấn đã quan tâm và hướng dẫn chúng em trong su t quá trình th c hiố ự ện đề tài này
Do kinh nghi m và ki n th c chuyên môn còn h n ch cho nên không tránh ệ ế ứ ạ ếkhỏi thi u sót Chúng em r t mong nhế ấ ận đượ ực s góp ý t các thừ ầy cô hướng d n và ẫgiám khảo
Chúng em xin chân thành cảm ơn !
Trang 3LỜI CAM ĐOAN
Chúng em xin cam k t m i n i dung trong báo cáo th c t p là do chúng em t ế ọ ộ ự ậ ựnghiên c u, tìm hi u và th c hiứ ể ự ện
Mọi bài viết, tài liệu cũng như các thư viện chúng em sử dụng ho c nhặ ắc đến trong đồ án thì chúng em s nêu rõ trong ph n tài li u tham kh o Chúng em xin cam ẽ ầ ệ ảđoan những gì chúng em thực hiện trong đồ án là sự thật và nếu có xảy ra gì chúng
em xin ch u trách nghi m v lị ệ ề ời cam đoan c a mình ủ
Sinh viên th c hi n ự ệBùi Anh Khôi & Lâm Cao Sáng
Trang 4NHẬN XÉT C ỦA ĐƠN VỊ THỰ C T ẬP
Trang 5NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Ngày … tháng … năm …
GIÁO VIÊN HƯỚNG D N Ẫ
Trang 61
M ỤC LỤ C
CHƯƠNG 1.TỔNG QUAN 5
1.1 Thông tin về đơn vị thực tậ –p Công ty Cổ Phần TitKul 5
1.2 Thông tin về ị v trí th c t p 5 ự ậ 1.3 Tính cấp thiết của đề tài 6
1.3.1 Đặt vấn đề 6
1.3.2 Tầm quan trọng 7
1.3.3 Lý do chọn đề tài 8
1.4 Mục tiêu nghiên cứu 9
1.5 Đối tượng và ph m vi nghiên c u 9 ạ ứ 1.6 Phương pháp nghiên cứu 10
CHƯƠNG 2.CƠ SỞ LÝ THUYẾT 11
2.1 Một số khái ni m 11 ệ 2.1.1 Phát hi n khuôn m t 11 ệ ặ 2.1.2 Canh ch nh khuôn m t 11 ỉ ặ 2.1.3 Mã hóa khuôn mặt 12
2.1.4 So sánh và tìm ra k t qu 12 ế ả 2.2 Các thu t toán áp d ng 12 ậ ụ 2.2.1 Phát hi n khuôn m t 12 ệ ặ 2.2.2 Canh ch nh khuôn m t 18 ỉ ặ 2.2.3 Mã hóa khuôn mặt 19
2.2.4 So sánh và tìm ra k t qu 19 ế ả 2.3 Thuật toán Facenet Version 2 20
2.3.1 Tìm hiểu khái ni m 20 ệ 2.3.2 T p d u 20 ậ ữ liệ 2.3.3 Model đã được huấn luy n 23 ệ 2.3.4 Độ chính xác c a thu t toán 24 ủ ậ 2.4 Áp dụng thư viện face_recogntion 24
Trang 72
2.4.1 Phát hi n khuôn m t 24 ệ ặ 2.4.2 Huấn luy n d u 26 ệ ữ liệ 2.4.3 Nhận di n khuôn m t 26 ệ ặ 2.4.4 Độ chính xác c a thu t toán 27 ủ ậ
CHƯƠNG 3.PHÂN TÍCH, THIẾT KẾ, TRIỂN KHAI MÔ HÌNH 28
3.1 Phân tích 28
3.1.1 Phân tích lu ng dồ ữ liệu 28
3.1.2 Phần C ng 29 ứ 3.1.3 Màn hình hiển th 30 ị 3.1.4 Camera 30
3.1.5 Máy tính nội bộ 31
3.2 Thiết kế ự d a trên yêu c u 31 ầ 3.2.1 Phân tích yêu c u 31 ầ 3.3 Thiết kế cơ sở ữ liệ d u 35
3.4 Xây dựng Services v i ASP NET Core và MS SQL Server 36 ớ 3.4.1 RESTful web API apps 36
3.4.2 SignalR Core trong ASP NET Core 38
3.4.3 MS SQL Server 39
3.4.4 Entity Framework 41
3.4.5 Môi trường và công c l p trình 44 ụ ậ 3.4.6 Triển khai 45
3.5 Phần m m l y d u 47 ề ấ ữ liệ 3.5.1 Phần m m l y hình nh 48 ề ấ ả 3.5.2 Các thông số cho dữ liệu 51
3.6 C u hình và publish mã ngu n lên IIS trên hấ ồ ệ điều hành Windows 51
3.6.1 T ng quan 51 ổ 3.6.2 Môi trường và công c l p trình 52 ụ ậ 3.6.3 Triển khai 52 3.7 Quản lý mã ngu n v i Git 54 ồ ớ
Trang 83
3.7.1 T ng quan 54 ổ3.7.2 Môi trường và công cụ ậ l p trình 55 3.8 Triển khai trên website và ng dứ ụng di động 55 3.8.1 Website 55 3.8.2 Ứng dụng trên điện tho i 55 ạCHƯƠNG 4.KẾT LUẬN VÀ HƯ NG PHÁT TRIỂN 57 Ớ4.1 Kết quả đạt được 57 4.2 Kết luận 60 4.2.1 Lợi ích 60 4.2.2 H n ch 60 ạ ế4.3 Hướng phát tri n 61 ểTÀI LIỆU THAM KH O 62Ả
Ảnh 2-1 Ảnh đầu vào 13 Ảnh 2-2 Ảnh đoạ ệnh thực thi 14 n lẢnh 2-3 Kết quả thu được 14 Ảnh 2-4 Ảnh đầu vào 15 Ảnh 2-5 Đoạ ệnh thực thi kết hợp thư viện face_recognition 15 n lẢnh 2-6 Kết quả đạt được 16 Ảnh 2-7 Ảnh đầu vào 17 Ảnh 2-8 Đoạ ệnh thực thi kết hợp thư viện face_recognition 18 n lẢnh 2-9 Kết quả thu được 18
Ảnh 2-10 Sáu mươi tám điểm khác nhau ở trên mặt áp dụng thuật toán Face Landmark Estimation 19 Ảnh 2-11 Thư mục con chứa các b c ảnh về một người 21 ứẢnh 2-12 Thư mục con chứa các b c ảnh về một người 22 ứ
Ảnh 2-13 Ảnh một ngư i 23 ờẢnh 2-14 Kết quả thu được 23 Ảnh 2-15 Đoạ ệnh thực thi 25 n lẢnh 2-16 Kết quả thu được 25 Ảnh 2-17 Kết quả thu được 26 Ảnh 3-1 Luồng dữ liệu 28
Trang 94
Ảnh 3-2 Màn hình hiển th ị điểm danh sẽ được lắp đặt ở mỗi cổng trường học 30
Ảnh 4-1 Sơ đồ Use-case của hệ thống 31
Ảnh 4-2 Sơ đồ cơ sở ữ liệu 35 d Ảnh 4-3 Cách hoạt động 37
Ảnh 4-4 SignalR Core 38
Ảnh 4-5 Entity Framework 42
Ảnh 4-6 Kiến trúc hệ thống 43
Ảnh 4-7 Model bằng ngôn ngữ lập trình C# 45
Ảnh 4-8 Model đượ ạo tự ng trên SQL 46 c t độ Ảnh 4-9 Trang web Swagger 46
Ảnh 4-10 Xây dựng SignalR Hubs 47
Ảnh 4-11 Màn hình nền phần mềm 48
Ảnh 4-12 Đăng nhập phần mềm 49
Ảnh 4-13 Thêm ảnh từ ngu n có sẵn 49 ồ Ảnh 4-14 Thêm ảnh từ camera 50
Ảnh 4-15 Hiển th thông tin học sinh 50 ị Ảnh 4-16 Hiển th thông tin học sinh 53 ị Ảnh 4-17 Cấu hình IIS để publish 53
Ảnh 4-18 Publish mã nguồn 54
Ảnh 5-1 Trang chủ website 55
Ảnh 5-2 Giao diện ứng dụng trên điện thoại 56
Ảnh 6-1 Tham gia cuộc thi “D án Đự ổi m i sáng tạo ứng dụng Trí Tuệ nhân tạo ( AI ) ớ TP.HCM 2020” 57
Ảnh 6-2 Trưng bày sản phẩm t i Trung tâm thông tin và thống kê khoa học và công ạ nghệ Tp.HCM 58
Ảnh 6-3 Trưng bày, trình diễn công nghệ hội thảo gi i thiệu công nghệ cớ ần thơ 2020 58 Ảnh 6-4 Tham dự chương trình Ngày Hội Doanh Nghiệp Công Nghệ Thông Tin Và Trí Tuệ Nhân Tạo Thành Ph H Chí Minh 59 ố ồ Ảnh 6-5 Tham gia triễn lãm sản phẩm t i Ngày h i khởi nghiệp đổi m i sáng tạo ạ ộ ớ TechFest Mekong 2020 59
Ảnh 6-6 Tham gia triễn lãm tại Liên hoan tuổi trẻ sáng tạo thành Phố Hồ Chí Minh 60
DANH M C BỤ ẢNG Bảng 4-1 B ng các thả ực thể và di n giễ ải ý nghĩa 36
Trang 105
1.1 Thông tin v ề đơn vị thực tậ – p Công ty C ổ Phầ n TitKul
Công ty C ổ Phần TitKul ( TitKul ) là doanh nghi p vệ ừa đi vào hoạt động không lâu
TitKul là công ty hoạt động trong lĩnh vực công ngh thông tin chuyên t o ra ệ ạcác s n phả ẩm đáp ứng nhu c u hi n nay c a cu c sầ ệ ủ ộ ống cũng như là cung cấp các giải pháp của doanh nghiệp khi có yêu cầu Các lĩnh vực mà công ty hướng tới như :
o Văn phòng: 131c Nguyễn Khoái, Phường 1, Qu n 4, Thành ậphố H Chí Minh,Vi t Nam ồ ệ
Trang 11Lĩnh vực công nghệ thông tin hiện nay rất rộng lớn và có nhiều chuyên ngành khác nhau M i chuyên ngành s ỗ ẽ có đặc điểm và tính chất riêng bi ệt.
Ngoài các lĩnh vực thông dụng hiện nay như lập trình website, lập trình ứng dụng, … bên cạnh đó hiện nay đã và đang xuất hiện các lĩnh vực mới như:
Trí tu nhân t o là m t chuyên ngành r ng l n thu c ngành công ngh thông ệ ạ ộ ộ ớ ộ ệtin Trí tu nhân tệ ạo ngày nay đang ngày càng phổ biến t ừ đờ ối s ng hằng ngày đến nghiên c u các vứ ấn đề cấp thiết
Lĩnh vực trí tuệ nhân tạo có thể chia ra nhiều lĩnh vực như Deep Learning, Machine Learning, Computer Vision, …
Trang 127
Một trong những lĩnh vực quan tr ng cọ ủa trí tu nhân tệ ạo đang ngày càng được
ứng d ng rộng rãi trong đời sống là th giác máy tính ụ ị
Thị giác máy tính đúng như tên gọ ủi c a nó, chuyên nghành này s áp d ng x ẽ ụ ử
lý hình ảnh hay video để giải quyết các vấn đề cần yêu cầu
Thị giác máy tính gi i quyả ết đượ ấc r t nhi u bài toán hi n nay Mề ệ ột trong nh ng ữbài toán đó là nhận diện đối tượng bất kỳ Các đối tượng nhận diện có thể là con người, khuôn mặt, chó mèo, …
Trong đó nhận diện và phát hi n khuôn mệ ặt đang ngày càng phổ ến hơn biNhận di n và phát hi n khuôn m t ch m i phát triệ ệ ặ ỉ ớ ển và đề ậ c p gần đây do các
kỹ thu t còn h n ch Hiậ ạ ế ện nay độ chính xác cũng như các công nghệ hỗ trợ ngày một nhiều khi n cho vi c th c hi n d ế ệ ự ệ ễ dàng hơn
1.3.2 Tầm quan trọng
Áp d ng các công ngh ụ ệ nhận di n khuôn m t vào cu c s ng h ng ngày s giúp ệ ặ ộ ố ằ ẽcho rút ng n thắ ời gian và cũng như là công sức của con người Giúp c i thi n hiả ệ ệu năng và độ chính xác c a viủ ệc làm mong muốn
Hiện nay các ng d ng áp d ng th giác máy tính còn h n ch và ít ph ứ ụ ụ ị ạ ế ổ biến vì nhiều lý do như:
1 Hạn chế về thông tin: Rất khó để tiế p cận các bài báo cáo hay các đề tài nghiên cứu
2 Hạn chế về kỹ thu t: Hiện nay việc nghiên c u và áp d ng thị giác máy ậ ứ ụtính đòi hỏi người nghiên cứu phải có kiến thức vững vàng về chuyên ngành c a mình Sủ ự hiểu biết ngoài chuyên môn như về lĩnh vực toán học, …
3 …
Trang 138
Vì v y vi c nghiên c u và áp d ng th giác máy tính vào d án th c t là mậ ệ ứ ụ ị ự ự ế ột phần quan tr ng, giúp th giác máy tính càng ngày càng phọ ị ổ biến trong đờ ống i shằng ngày nói chung và nh n di n khuôn m t nói riêng ậ ệ ặ
1.3.3 Lý do chọn đề tài
Hiện nay việc điểm danh hay ch m công ấ ở các trường h c, công ty hay xí nghiọ ệp đang có nhiều điểm bất cập Dẫn đến s m t mát v kinh t ự ấ ề ế cũng như nguồn nhân lực c a tủ ổ chức đó
Đồng th i, tình hình d ch b nh Covid-ờ ị ệ 19 đang còn diễn bi n ph c t p Vi c tiế ứ ạ ệ ếp xúc tr c ti p hay qua máy chự ế ấm công theo cách điểm danh thông thường s d ẽ ễdàng lây lan d ch b nh Vì v y hị ệ ậ ệ thống điểm danh b ng khuôn m t sằ ặ ẽ giảm tối thiểu tiếp xúc giúp h n ch lây lan d ch b nh ạ ế ị ệ
Việc điểm danh học sinh cũng không tránh khỏi những vấn đề trên Cần tìm cách kh c ph c và c i tiắ ụ ả ến giúp cho nhà trường tối ưu hơn về ngân sách cũng như thời gian
Các điểm bất cập có thể được nhắc tới như: sai sót, nhầm lẫn, tốn kém chỗ lưu trữ, …
1 Khi s ố lượng học sinh đi học c a mủ ột trường vào m t thộ ời điểm quá đông khiến cho người điểm danh sẽ không thể nhớ hết những học sinh mình
đã điểm danh hay quên những học sinh chưa được điểm danh gây ra sai sót
2 Khi điểm danh xong nhà trường luôn phải lưu trữ lại bằng giấy và phải
có một không gian lưu trữ để có thể lưu trữ ại các thông tin đã điểm ldanh Vi c này khi n cho t n kém chi phí v m t gi y tệ ế ố ề ặ ấ ờ cũng như tốn kém không gian lưu trữ
Trang 2217
3 Kết qu mong muả ốn đạt được là t o ra m t muạ ộ ỗi tên đi từ điểm có ánh sáng sáng hơn đế ối hơn.n t C lứ ặp đi lặp lại như vậy cho đến h t khung hình hay ếbức ảnh
4 Sau đó thuật toán sẽ so sánh với các dữ liệu có sẵn đã được huấn luyện từ trước và so sánh để phát hiện ra khuôn mặt
Sau khi áp d ng thu t toán vào phát hi n khuôn mụ ậ ệ ặt chúng em thấy có độ chính xác cao hơn cũng như không bị quá ảnh hưởng bởi ánh sáng
Với ngôn ng l p trình ữ ậ Python đã hỗ trợ thư viện face_recognition, có tích hợp sẵn thu t toán HOG Khi áp d ng do thu t toán không th s d ng GPU nên có ậ ụ ậ ể ử ụtốc độ xử lý sẽ chậm hơn khi có GPU
Ví d và k t qu ụ ế ả đạt được:
• Ảnh đầu vào:
Ảnh 2-7 Ảnh đầu vào
• Đoạn l nh th c hi n b ng trình so n th o mệ ự ệ ằ ạ ả ặc định c a Python: ủ
Trang 2318
Ảnh 2-8 Đoạn l nh th c thi kệ ự ết hợp thư viện face_recognition
• Kết quả thu được:
Trang 2419
Ảnh 2- 10 Sáu mươi tám điểm khác nhau ở trên m t áp d ng thu t toán Face ặ ụ ậ
Landmark Estimation Sau đó có hình dáng của khuôn mặt, độ dài giữa các mắt, độ dài giữa muỗi và miệng, … Từ d ữ liệu này thuật toán s s d ng các công th c toán hẽ ử ụ ứ ọc để biến đổi khuôn m t v ặ ề hình dáng tương ứng
2.2.3 Mã hóa khuôn m t ặ
Ở bước đã có khuôn mặt đã phát hiện, đã loại bỏ nhiễu và canh ch nh phù h p ỉ ợ
Áp dụng thư viện face_recognition của Python để mã hóa khuôn m t Thuặ ật toán s mã hóa khuôn m t thành m t m ng mẽ ặ ộ ả ột trăm hai mươi tám giá tr Viị ệc
mã hóa này m t khá là nhi u thấ ề ời gian cũng như sức m nh cạ ủa máy tính đang dùng Việc dành nhi u th i gian cho vi c mã hóa càng nhiề ờ ệ ều thì có độ chính xác càng cao
2.2.4 So sánh và tìm ra k t qu ế ả
Tùy vào t ng thu t toán khác nhau s có các cách so sánh tính toán khác nhau ừ ậ ẽ
Ở trong đồ sán ẽ s dụng thu t toán KNN ( K nearest neighbor ) ử ậ –
Với m i khuôn mỗ ặt ở ậ t p dữ liệu ban đầu đã được hu n luy n s có m t giá tr ấ ệ ẽ ộ ị
x và y tương ứng Các khuôn mặt cùng một người sẽ có các tọa độ x và y sẽ rất
Trang 2520
gần nhau Có bao nhiêu bức ảnh được hu n luyấ ện ban đầu s có b y nhiêu tẽ ấ ọa độtương ứng Các tọa độ từ các bức ảnh của một người sẽ có các tọa độ x và y gần nhau và n m thành t ng c m hoằ ừ ụ ặc đôi khi dữ liệu có th b nhiể ị ễu
Để tính toán s s dẽ ử ụng tham s k là số ố người hàng xóm g n nhầ ất có nghĩa là k điểm g n nh t với tầ ấ ọa độ x và y của khuôn mặt Sau đó thuật toán sẽ so sánh và tìm ra k t qu phù hế ả ợp
Khi s d ng thu t toán KNN có r t nhiử ụ ậ ấ ều ưu điểm cũng như khuyết điểm ới V
ưu điểm thì thu t toán KNN s d dàng d ậ ẽ ễ ự đoán kết qu m i m t cách nhanh chóng ả ớ ộVới nhược điểm thì thuật toán KNN dễ bị sai khi giá trị k nhỏ nằm trong vùng nhiễu và do phải tính toán kho ng cách giả ữa các điểm nên thuật toán càng chạy chậm khi giá tr k càng cao ị
2.3 Thuật toán Facenet Version 2
2.3.1 Tìm hi u khái ni m ể ệ
MTCNN là t ừ viết t t c a Multi-task Cascaded Convolutional Networks M ng ắ ủ ạMTCNN bao g m 3 l p CNN x p ch ng lên nhau M i l p s có c u trúc khác ồ ớ ế ồ ỗ ớ ẽ ấnhau và đảm nhi m các nhi m v khác nhau ệ ệ ụ
Kết qu sau khi áp d ng thuả ụ ật toán MTCNN đầu ra sẽ trả v k t quề ế ả các điểm trên mặt như: mắt, mũi, miệng, …
Thuật toán Facenet s luôn luôn hu n luy n và nh n di n nh ng tẽ ấ ệ ậ ệ ữ ấm ảnh có kích thước gi ng nhau và nhố ất định
Để nh n di n khuôn mặt đó là ai thì thuật toán s áp d ng thu t toán SVM ậ ệ ẽ ụ ậ2.3.2 Tập d u ữ liệ
Để có th áp d ng thu t toán Facenet chúng ta c n có d u ể ụ ậ ầ ữ liệ huấn luy n t ệ ừ đầu vào là các b c hình ch a khuôn m t cứ ứ ặ ủa người muốn phát hiện
Trang 2621
Trước khi hu n luy n nên t o mấ ệ ạ ột thư mục chứ ấa t t cả các thư mục con Trong từng thư mục con sẽ lưu trữ các bức ảnh về đúng một người Tránh để xảy ra sai sót khi m t ộ người có cùng hai thư mục con
Các ảnh được hu n luy n nên là các bấ ệ ức ảnh th ng nh t v d ng chuố ấ ề ạ ẩn như loại ảnh png hay jpg Ảnh được hu n luy n không quá nh và không quá l n Vi c mấ ệ ỏ ớ ệ ột bức ảnh quá chi ti t hay nh raw s mang l i tế ả ẽ ạ ốc độ ử x lý ch m cho thu toán ậ ật
Số lượng bức ảnh trong một thư mục con càng nhiều thì thời gian huấn luyện càng lâu nhưng khi nhận diện có kh ả năng sẽ tăng độ chính xác cao hơn
Ảnh 2- 11 Thư mục con ch a các bứ ức ảnh về một người
Sau khi áp d ng thu t toán hu n luy n dụ ậ ấ ệ ữ liệu Ta sẽ thu được các bức ảnh ch ỉ
có khuôn m t cặ ủa người đó
Trang 2722
Ảnh 2- 12 Thư mục con ch a các bứ ức ảnh về một người
Số lượng ảnh m c trung bình s mang l i k t qu tứ ẽ ạ ế ả ốt hơn Số lượng ảnh c a mủ ột người nên có khoảng hơn ba trăm t m hình ấ ở nhi u góc cề ạnh, hướng, ánh sáng, …
Số lượng ảnh quá lớn cũng gây nên việc tăng dung lượng lưu trữ nhưng chỉ xảy
ra ở thời kỳ đầu c a hủ ệ thống Sau này khi s d ng hử ụ ệ thống chỉ c n s dầ ử ụng dữliệu đã được hu n luyấ ện
Ví d v m t b c hình có khuôn m t cụ ề ộ ứ ặ ủa người muốn hu n luy n ấ ệ
Trang 2823
Ảnh 2- 13 Ảnh một người Sau khi được huấn luy n phát hiệ ện khuôn măt Ta thu được khuôn mặt như sau:
Ảnh 2- 14 Kết qu ả thu được 2.3.3 Model đã được huấn luyện
Hiện nay có hai model đã được huấn luy n sệ ẵn mang l i k t qu t t : ạ ế ả ố
• 20180408-102900 T p d ậ ữ liệu được sử dụng là CASIA-Webface
• 20180402-114759 T p d ậ ữ liệu được sử dụng là VGGFace2
Trang 2924
2.3.4 Độ chính xác c a thu t toán ủ ậ
Thuật toán có độ chính xác khá là cao Độ chính xác của thuật toán tùy thuộc vào nhi u y u tề ế ố khác nhau như ánh sáng, màu sắc hay độ tương phản lúc nhận diện
Để tăng độ chính xác khi nhận di n cệ ần ánh sàng đầy đủ Ánh sáng không được quá chói hay quá sáng Phông nền đành sau ít đối tượng hay vật có hình giống khuôn mặt người Phông n n có th m t màu thì s mang l i k t qu tề ể ộ ẽ ạ ế ả ốt hơn Khi áp d ng thu t toán này vào th c ti n cho thụ ậ ự ễ ấy độ chính xác m c trung ở ứbình Có th áp d ng vào th c tiể ụ ự ễn nhưng chưa đạt những vấn đề ớ v i yêu c u cao ầ
Dễ b ịnhận di n sai ệ
2.4 Áp dụng thư viện face_recogntion
Thư viện face_recognition đã hỗ trợ hầu hết các bước trong công nghệ nhận diện khuôn m t ặ
Thư viện được vi t và xây d ng b i r t nhi u lế ự ở ấ ề ập trình viên khác nhau Thư viện face_recognition xây d ng tự ừ thư viện dlib Thư viện dlib là thư viện c a ngôn ủngữ ậ l p trình C++ dành cho Deep Learning hay Machine Learning, Theo báo cáo của thư viện thì thư viện này có độ chính xác khá cao Trong điều ki n thích ệhợp có th ể đạt hơn 90%
Thư viện face_recognition cũng hỗ trợ k t n i và nh n di n trên các thi t b ế ố ậ ệ ế ị như ipcamera, raspberry- pi
Thư viện được đánh hơn 30 nghìn sao trên github và được nhiều người s d ng ử ụ2.4.1 Phát hi n khuôn m t ệ ặ
Thuật toán cung c p r t nhiấ ấ ều phương pháp để phát hiện khuôn m ặt
Như đã đề cập trong các phần trước của đề tài Chúng ta có thể áp dụng các kỹ thuật như HOG, MTCNN, …
Trang 3126
2.4.2 Huấn luy n d u ệ ữ liệ
Với đề tài chúng em sử dụng dữ liệu khuôn m t c a b dặ ủ ộ ữ liệu VGGFACE2 Chúng em đã sử dụng kho ng d u khuôn m t cả ữ liệ ặ ủa 500 ngườ ớ ấi v i r t nhi u bề ức ảnh khác nhau v tề ừng người một
Thời gian hu n luy n b d ấ ệ ộ ữ liệu kéo dài khoảng hai mươi bốn tiếng Chúng em cũng đã thử huấn luyện một người m i vào b d ớ ộ ữ liệu sau đó dữ liệu mới cần thời gian nhiều hơn trước để huấn luyện Đây cũng là một khó khăn khi áp dụng thuật toán này
Sau khi hu n luy n xong chúng ta s có m file Chúng ta có th s d ng file ấ ệ ẽ ột ể ử ụnày m t cách d dàng và mang ộ ễ ở b t k ấ ỳ đâu nếu mu n Không c n ph i hu n luyố ầ ả ấ ện lại khi lắp đặt hay chuy n sang máy khác ể
2.4.3 Nhận diện khuôn mặt
Áp d ng giao di n và h ụ ệ ệ thống vào nh n di n khuôn m ậ ệ ặt
Ảnh 2- 17 Kết qu ả thu được
Trang 3227
2.4.4 Độ chính xác c a thu t toán ủ ậ
Khi áp d ng vào th c t cho th y thuụ ự ế ấ ật toán đạt yêu cầu cao v chính xác ề độ
Có th ể nhận di n chính xác v i t p d ệ ớ ậ ữ liệu có nhiều người
Để tăng độ chính xác cần tăng thời gian huấn luyện t p d ậ ữ ệu ban đầu Khi linhận di n có th ệ ể tăng độ chính xác bằng cách tăng các tham số của thuật toán Việc tăng các tham số này sẽ giúp tăng độ chính xác nhưng lại giảm hiệu năng của chương trình
Thư viện khi được áp d ng trong nghiên c u và theo báo cáo c a tác gi ụ ứ ủ ả đã kiểm định thì có độ chính xác rất cao đôi khi đạt trên 90%
Cũng như thuật toán Facenet Version 2 vi c có mệ ột không gian để nhận diện tốt s giúp cho vi c nh n diẽ ệ ậ ện đúng hơn và cũng như giúp tăng độ chính xác
Trang 33Học sinh là tác nhân chính trong d án ự
Khi học sinh đi học đến trường m i cỞ ỗ ổng trường sẽ đượ ắp đặt camera đểc lbắt khuôn m t c a h c sinh ặ ủ ọ
Khi có h c sinh xu t hi n trong camera H ọ ấ ệ ệ thống s quét và phát hiẽ ện được các khuôn m t có trong khung hình ặ