Khóa Luận Tốt Nghiệp: Xây Dựng Hệ Thống Nhận Diện Khuôn Mặt Qua Camera Giám Sát

Khóa luận tốt nghiệp khoa học máy tính trình bày hệ thống nhận diện khuôn mặt qua camera giám sát, ứng dụng công nghệ hiện đại trong an ninh.

Trường đại học

Đại học Công nghệ Thông tin

Chuyên ngành

Khoa học máy tính

Người đăng

Ẩn danh

Thể loại

Khóa luận tốt nghiệp

2021

67
5
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: TỔNG QUAN

1.1. Đặt vấn đề

1.2. Thách thức

1.3. Phạm vi và mục tiêu

1.3.1. Mục tiêu

1.3.2. Phạm vi

1.4. Đóng góp của khóa luận

1.5. Cấu trúc khóa luận

2. CHƯƠNG 2: CÔNG TRÌNH LIÊN QUAN VÀ KIẾN THỨC CƠ BẢN

2.1. Mở đầu

2.2. Phát hiện khuôn mặt

2.2.1. Tổng quan về phát hiện khuôn mặt

2.2.2. Phương pháp cổ điển

2.2.2.1. Viola-Jones (Cascade)
2.2.2.2. HOG-SVM

2.2.3. Phương pháp học sâu

2.2.3.1. RetinaFace
2.2.3.2. SCRFD
2.2.3.3. YOLOSFace

2.3. Nhận diện khuôn mặt

3. CHƯƠNG 3: XÂY DỰNG TẬP DỮ LIỆU VÀ ĐÁNH GIÁ CÁC PHƯƠNG PHÁP LIÊN QUAN

4. CHƯƠNG 4: XÂY DỰNG HỆ THỐNG

4.1. Module lấy dữ liệu từ camera giám sát

4.2. Module phát hiện và truy vết khuôn mặt

4.3. Module tiền xử lý dữ liệu

4.4. Module nhận dạng khuôn mặt

4.5. Module hiển thị thông tin

4.6. Module thu thập dữ liệu mới

4.7. Module cập nhật dữ liệu mới

4.8. Giao diện hệ thống và một số kết quả

5. CHƯƠNG 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

5.1. Kết luận

5.2. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về hệ thống nhận diện khuôn mặt qua camera giám sát

Khóa luận tập trung vào việc xây dựng hệ thống nhận diện khuôn mặt sử dụng camera giám sát, áp dụng các phương pháp học sâu tiên tiến. Hệ thống này nhằm mục đích ứng dụng trong các lĩnh vực như an ninh giám sát, điểm danh, và chấm công. Công nghệ nhận diện khuôn mặt đã trở thành một công cụ quan trọng trong việc xác thực và giám sát, đặc biệt trong các môi trường có lượng người ra vào lớn. Khóa luận này đề xuất một kiến trúc hệ thống gồm ba module chính: phát hiện và truy vết khuôn mặt, nhận dạng khuôn mặt, và thu thập dữ liệu mới.

1.1. Mục tiêu và phạm vi

Mục tiêu chính của khóa luận là đánh giá và xây dựng hệ thống nhận diện khuôn mặt trên camera giám sát. Phạm vi nghiên cứu bao gồm việc tìm hiểu các phương pháp tiên tiến nhất hiện nay, xây dựng tập dữ liệu thực tế, và đánh giá hiệu quả của các phương pháp này. Hệ thống được thiết kế để cân bằng giữa thời gian xử lý và tài nguyên, đảm bảo hiệu năng cao trong thời gian thực.

1.2. Thách thức

Khóa luận đối mặt với nhiều thách thức, bao gồm thách thức kỹ thuật như việc kết hợp nhiều bài toán con trong thị giác máy tính, thách thức tài nguyên do yêu cầu tính toán lớn, và thách thức dữ liệu liên quan đến điều kiện ánh sáng và góc nhìn của camera. Các thách thức này đòi hỏi sự tối ưu hóa và lựa chọn phương pháp phù hợp để đạt được độ chính xác cao.

II. Các phương pháp nhận diện khuôn mặt

Khóa luận đã đánh giá và so sánh các phương pháp nhận diện khuôn mặt tiên tiến nhất hiện nay, bao gồm FaceNet, CosFace, ArcFace, và MagFace. Các phương pháp này được áp dụng để tăng độ chính xác trong việc nhận dạng khuôn mặt từ dữ liệu video thu thập từ camera giám sát. MagFace được chọn làm phương pháp chính do độ chính xác cao (90%) trên tập dữ liệu đã gán nhãn.

2.1. Phương pháp cổ điển

Các phương pháp cổ điển như Viola-JonesHOG-SVM được sử dụng trong giai đoạn đầu của phát hiện khuôn mặt. Tuy nhiên, các phương pháp này có hạn chế về độ chính xác trong điều kiện ánh sáng thay đổi và góc nhìn khác nhau. Viola-Jones sử dụng đặc trưng Haar để phát hiện khuôn mặt, trong khi HOG-SVM kết hợp Histogram of Oriented GradientsSupport Vector Machine.

2.2. Phương pháp học sâu

Các phương pháp học sâu như RetinaFace, SCRFD, và YOLO5Face được đánh giá cao do khả năng xử lý thời gian thực và độ chính xác vượt trội. RetinaFace sử dụng kỹ thuật học đa tác vụ để dự đoán đồng thời các đặc điểm khuôn mặt. SCRFD đề xuất phương pháp phân phối lại mẫuphân phối lại tính toán để tối ưu hóa hiệu suất. YOLO5Face là phiên bản cải tiến của YOLOv5, được tinh chỉnh để phát hiện khuôn mặt với độ chính xác cao.

III. Xây dựng hệ thống nhận diện khuôn mặt

Hệ thống được xây dựng dựa trên sự kết hợp giữa phát hiện khuôn mặtnhận dạng khuôn mặt. YOLO5Face được chọn cho tác vụ phát hiện khuôn mặt với độ chính xác 96.8%, trong khi MagFace được sử dụng cho nhận dạng khuôn mặt. Hệ thống có khả năng xử lý thời gian thực với thời gian xử lý chỉ 0.045 giây cho mỗi khung hình và hỗ trợ tối đa 6 camera cùng lúc.

3.1. Kiến trúc hệ thống

Kiến trúc hệ thống bao gồm các module chính: module phát hiện và truy vết khuôn mặt, module nhận dạng khuôn mặt, và module thu thập dữ liệu mới. Mỗi module được thiết kế để tối ưu hóa hiệu suất và độ chính xác. Hệ thống cũng bao gồm giao diện người dùng để quản lý camera và hiển thị thông tin nhận dạng.

3.2. Đánh giá hiệu suất

Hệ thống được đánh giá trên tập dữ liệu thực tế, bao gồm các điều kiện ánh sáng và góc nhìn khác nhau. Kết quả cho thấy hệ thống đạt độ chính xác cao trong việc phát hiện và nhận dạng khuôn mặt, đồng thời duy trì hiệu suất xử lý thời gian thực. Các tập dữ liệu và phân tích đánh giá được cung cấp để hỗ trợ các nghiên cứu liên quan trong tương lai.

IV. Kết luận và hướng phát triển

Khóa luận đã thành công trong việc xây dựng hệ thống nhận diện khuôn mặt qua camera giám sát, áp dụng các phương pháp học sâu tiên tiến. Hệ thống không chỉ đạt độ chính xác cao mà còn có khả năng xử lý thời gian thực, phù hợp với các ứng dụng thực tế như an ninh giám sát và điểm danh. Hướng phát triển trong tương lai bao gồm việc tối ưu hóa hệ thống để hỗ trợ nhiều camera hơn và cải thiện độ chính xác trong các điều kiện ánh sáng phức tạp.

4.1. Đóng góp của khóa luận

Khóa luận đã đóng góp vào việc xây dựng tập dữ liệu thực tế, đánh giá các phương pháp tiên tiến, và phát triển ứng dụng minh họa cho bài toán nhận diện khuôn mặt. Các kết quả và phân tích được cung cấp sẽ là nguồn tham khảo giá trị cho các dự án liên quan trong tương lai.

4.2. Hướng phát triển

Hướng phát triển trong tương lai bao gồm việc tích hợp thêm các tính năng như nhận dạng khuôn mặt trong điều kiện ánh sáng yếu, hỗ trợ đa camera, và tối ưu hóa hiệu suất để ứng dụng trong các môi trường lớn hơn như sân bay, nhà máy, và trung tâm thương mại.

21/02/2025

Trích đoạn nội dung tài liệu

Mở đầu Nhân diện khuôn mặt (Face Recognition) là bài toán định danh một người từ hình ảnh kỹ thuật số được lay mẫu trước đó hoặc từ một khung hình trong một nguồn video khác. Đây là một phương pháp xác minh độc đáo dựa vào các đặc trưng sinh trắc học trên khuôn mặt của một người, có thể là kích thước hoặc vị trí của từng bộ phận tên khuôn mặt, màu da và hình dáng của các bộ phận. | Lebo Huy Ee Z| Nguyễn Văn Khoa Nguyễn Lê Anh Quân Hồ Chung Đức Khánh Hình 2.1: Các nhánh trong bài toán nhận diện khuôn mặt 2. CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN Nhận dạng khuôn mặt là một bài toán khá phức tạp, nó đòi hỏi một loạt các van dé cần thực hiện.

Về tổng quan bài toán được chia thành 2 bước chính (hình 2.1): phát hiện và truy vết khuôn mặt (face detection and tracking), nhận diện khuôn mặt (face recognition).2 Phát hiện khuôn mặt 2.1 Tổng quan về phát hiện khuôn mặt Phát hiện khuôn mặt là một trong những thành phần cơ bản nhất của hệ thống nhận diện khuôn mặt. Đầu vào là hình ảnh kỹ thuật số hoặc video, đầu ra là vị trí của khuôn mặt (nếu có) được thể hiện thông qua bounding box (hình 2. Bài toán gồm có 2 hướng tiếp cần chính, Các phương pháp phát hiện khuôn mặt ban đầu chủ yếu dựa trên các bộ phân loại được xây dựng dựa trên các đặc trưng thủ công Haar và HOG. Tuy nhiên, những cách tiếp cận này không đủ mạnh để đạt được độ chính xác cao đối với hình ảnh từ các môi trường không được kiểm soát.

Với công trình đột phá trong phân loại hình ảnh sử dụng mạng nơ-ron sâu vào năm 2012, đã có một sự thay đổi mô hình rất lớn trong phát hiện khuôn mặt. Lấy cảm hứng từ sự tiến bộ nhanh chóng của học sâu trong thị giác máy tính, nhiều phương pháp dựa trên học sâu đã được dé xuất dé phát hiện khuôn mặt trong vài năm qua và đạt được những cải tiến đáng kể về độ chính xác.2 Phương pháp cổ điển 2.1 Viola-Jones (Cascade) Đây là phương pháp phát hiện vat thé được dé xuất năm 2001 bởi Paul Viola và Michael Jones. Phương pháp này sử dụng các đặc trưng Haar (Hình 2.3) đã được chọn lọc trước bằng Cascade Classifiers trượt qua từng vùng của bức ảnh. Haar thường được sử dụng để phát hiện khuôn mặt trực diện của người, bởi vì 2.

CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN Face Detection — Hình 2.2: đầu vào va dau ra của bài toán pháp hiện khuôn mặt đặc tính chung của khuôn mặt là có một số vùng mắt và miệng tối hơn vùng trán và má theo chiều dọc, và vùng mũi thường sáng hơn hai má theo chiều ngang. Cách áp dụng các bộ lọc này khác một chút so với các cửa sổ bộ lọc bên CNN. Ở CNN, bộ lọc chiếm toàn bộ cửa sổ trượt, trong khi ở đặc trưng Haar, bộ lọc chỉ chiếm một phần trong cửa sổ trượt thôi. Điều đó được minh hoạ trên ảnh.

Đây là phương pháp máy học được huấn luyện trên dữ liệu positive và neg- ative bằng hàm Cascade. Nhược điểm của phương pháp này là nó nhạy cảm với điều kiện ánh sáng và thời gian huấn luyện lâu, bù lại là thời gian dự đoán rất nhanh.2 HOG-SVM Phương pháp này được giới thiệu trong thư viện Dlib, Dlib là thư viện C++ và python cho máy học được tạo bởi Davis King. Như tên phương pháp đã cho thấy, phương pháp này sử dụng Histogram of Oriented Gradients (HOG) để trích xuất đặc trưng và bộ phân lớp SVM cho phát hiện khuôn mặt. Phương pháp này còn kết hợp các phương pháp như image pyramid và sliding window ( cửa sổ 2.

CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN 1. Edge features Hees (a) (b) (c) (d) mER OPS® 2. Line features On II ) (c) (d) (e) (f) (g) (h) 3. Center-surround features [a] ® (a) (b) Hình 2.3: Hình minh họa một số đặt trưng Haar được sử dung trong phương pháp Viola Jones [3] trượt ).

Nhược điểm của phương pháp này là còn hạn chế đối với khuôn mặt bị nghiêng hoặc cách xa máy ảnh.3 Phương pháp học sâu 2.1 RetinaFace RetinaFace [10] là phương pháp được giới thiệu bởi Jiankang Deng và các cộng sự vào năm 2019. Phương pháp này sử dụng kỹ thuật học tập đa tác vụ thay vì học tuần tự như các phương pháp trước để dự đoán đồng thời face score, facebox, five facial landmarks, 3D face mask. Việc này giúp tang độ chính sat lên đáng kể. Bằng cách sử dung các mạng trong số nhỏ, RetinaFace có thể chạy thời gian thực trên một lõi CPU duy nhất cho hình ảnh có độ phân giải VGA (640x480 pixel ).

RetinaFace sử dụng phương pháp hình tháp đặc trưng(feature pyramids) Mô hình mạng lấy hình ảnh đầu vào và xuất ra năm feature map với các tỷ lệ khác nhau được ký hiệu từ PI đến P6. Bốn feature map đầu tiên được tính toán bằng 2. CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN ODAySE sso" | Hinh 2.4: Kién tric mang Retinaface cách sử dung Backbone Resnet đã được đào tao trước về tap dữ liệu imagenet- 11k. Feature map P6 được tạo bởi phép convolution 3x3 với stride là 2 trên C5.

Ngoài ra còn sử dụng mạng deformation convolutional network(DCN) trong Context Module giúp tăng khả năng học của mô hình. Ở cuối các context mod- ules là một hàm multi-task loss giúp tính toán độ lỗi cho từng anchor. Face box regression - RE Facial landmark regres ion Existing branch Extra-supervision 4kx LÝa ` 1384749 s(JMAs1p2u£a0l qvna213q Dense face regression Self-supervision Hình 2.5: Trong RetinaFace các quá trình hoc của bộ phân lớp khuôn mặt, bộ hồi quy vị trí khuôn mặt, điểm móc trên khuôn mặt và dense face diễn ra một cách song song.2 SCRED SCRED là phương pháp được giới thiệu bởi insightface vào nam 2021. DCRFD dé xuất một phương pháp hiệu quả đối với đầu vào độ phân giải cố định ở độ 10 2.

CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN phân giải VGA ( 640x480 pixel ). Sœ CRFumaltcievo ad œ o > r ° Ra T Hình 2.6: phân phối kích thước khuôn mặt trong tập dữ liệu WIDER FACE. Khi chiều dài được cô định ở đồ phân giải 640 pixel. Hầu hết các khuôn mặt (78,93%) trong tập dữ liệu WIDER EACE nhỏ hơn 32 x 32 pixel(hinh 2.6) va chúng được dự đoán ở giai đoạn shallow stages.

Để có thêm các mẫu đào tạo cho các giai này, trước tiên phương pháp đề xuất phương pháp phân phối lại mẫu ( Sample Redistribution - SR) giúp tăng cường các mẫu đào tạo cho các giai đoạn cần thiết; và phân phối lại tính toán (Computation Redistribution - SR ), phân bố lại tính toán giữa backbone, neck và head của mô hình. [Bas cline 10 |G SRFD Hình 2.7: So sánh phân phối mau giữa phương pháp baseline và SCRFD Phương pháp phân phối lại mẫu tăng cường mẫu đào tạo từ 72.3k ở khuôn mặt 16x16 pixel va tang từ 95.1k ở độ phân giải 32x32(hinh 11 2. CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN 2. Điều này có được là nhờ thay vì tăng cường dữ liệu bằng random size trong khoảng [ 0.0], phương pháp đã sử dụng khoảng [0.

Nhờ đó đã làm tăng số lượng của mẫu dif liệu ở độ phân giải thấp liên đáng kể.5GF SCRFD-2,5GF Hình 2.8: Phân phối lại tính toán trong kiến trúc mang SCRFD Ngoài ra, phương pháp SCRFD còn đề xuất phương pháp phân bố lại toán giữa backbone, neck và head của mô hình (hinh2. Chiều rộng của hình chữ nhật tương ứng với chỉ phí tính toán. Sau khi phân phối lại tính toán, nhiều tính toán hơn được phân bổ cho các giai đoạn nông (tức là C2 và C3). Điều này giúp mô hình đạt độ chính xác cao trông khi vẫn giữ được thời gian thực thi và tiêu hao tài nguyên ở mức thấp.

Phương pháp SCRFD được chia thành nhiều biến thể theo thứ tự tăng dần số lượng tính toàn được đo theo Gflops (Giga Floating Point Operations Per Sec- ond ): SCRFD_S5O0OM_KPS , SCRFD_2.5G_KPS, SCRFD_10G_KPS, _KPS có nghĩa là mô hình bao gồm 5 điểm mốc của khuôn mat.3 YOLOSFace YOLOv5 [11] là một phiên bản cải tiến từ YOLOv3 PyTorch [12] bởi Glenn Jocher. Ban đầu những cải tiến này được gọi là YOLOv4 nhưng do trách xung đột bởi việc phát hành gần đây của YOLOv4 [13] trên Darknet, nên nó đã được đổi tên thành YOLOv5. Vì được phát triển trên thư viện PyTorch chứ không phải 12 2. CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN là Darknet nên việc sửa đổi kiến trúc cũng như triển khai được trên nhiều môi trường khác nhau.

YOLOS5Face[1] là mô hình dựa trên YOLOv5 đã được tinh chỉnh để phù hợp và tăng độ chính xác với tác vụ phát hiện khuôn mặt. Tác giả đã thêm Regression Head với 5 điểm landmark trên khuôn mặt và sử dụng hàm Wing loss cho nó. Việc thêm 5 điểm landmark đã làm cho đầu ra của mô hình từ 6 lên 16 gồm 4 bounding box, 1 confidence, 1 classification và 10 landmark với mỗi điểm landmark tương ứng 2 tọa độ. Điều này đã làm tăng độ chính xác cho mô hình.

Ngoài ra, YOLOSFace còn thêm một đầu ra P6 với stride là 64 giúp tăng khả nang phát hiện khuôn mặt lớn và một loạt các tinh chỉnh khác giúp tang độ chính xác cho mô hình. Kế thừa sự linh động trong thiết kế của YOLO. YOLO5Face được thiết kế với 2 backbone nhẹ là ShuffleNetV2 và CSP nework. Các mô hình này rất nhỏ, trong khi đạt được hiệu suất SOTA cho thiết bị nhúng hoặc thiết bị di động.

Tổng cộng có 4 mô hình khác nhau: YOLOvSn, YOLOv5s, YOLOv5m, YOLOvS5I. Đầu tiên là mô hình nhỏ nhất và kém chính xác nhất , cuối cùng mà mô hình lớn nhất và chính xác nhất. Mô hình YOLOv5n sử dụng backbone ShuffleNetV2 trong khi các mô hình còn lại sử dụng CSP nework. _„ class _ box ~ TM conf ~ landmark (a) Backbone with SPP and FPN (b) FAN (c) ouput Hình 2.9: Kiến trúc mô hình YOLO5Face 13 2.

CÔNG TRÌNH LIÊN QUAN VÀ KIEN THỨC CƠ BẢN 2.3 Truy vết khuôn mặt với Deep SORT Deep SORT [14] là một phương pháp phổ biến và được sử dụng rộng rải trong tác vụ truy vết vật thể. Deep SORT là một phiên bản cải tiến từ SORT [15] nhằm giải quyết các van đề thiếu sót liên quan đến số lượng ID switches cao. ID switches là van dé mất dấu đối tượng hoặc tráo ID của các đối tượng với nhau khi đối tượng bị che khuất, khi quỹ dao trùng lặp,. Hướng giải quyết mà Deep SORT đề xuất dựa trên việc sử dụng deep learning để trích xuất các đặc trưng của đối tượng nhằm tăng độ chính xác trong quá trình liên kết dữ liệu.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Xây Dựng Hệ Thống Nhận Diện Khuôn Mặt Qua Camera Giám Sát - Khóa Luận Khoa Học Máy Tính" trình bày một phương pháp hiện đại trong việc nhận diện khuôn mặt thông qua công nghệ camera giám sát. Tác giả đã phân tích các thuật toán và công nghệ liên quan, đồng thời đưa ra các ứng dụng thực tiễn của hệ thống này trong việc tăng cường an ninh và quản lý. Bài luận không chỉ giúp người đọc hiểu rõ hơn về quy trình phát triển hệ thống nhận diện khuôn mặt mà còn nhấn mạnh tầm quan trọng của nó trong bối cảnh an ninh hiện đại.

Nếu bạn muốn mở rộng kiến thức về các ứng dụng và công nghệ liên quan, hãy tham khảo thêm các tài liệu như Luận văn thạc sĩ khoa học máy tính dự báo tỷ giá ngoại tệ bằng mạng nơron học sâu, nơi bạn có thể tìm hiểu về các mô hình dự đoán sử dụng mạng nơron. Bên cạnh đó, Luận văn thạc sĩ khoa học máy tính phân loại dữ liệu một lớp và ứng dụng trong bài toán phát hiện bất thường sẽ cung cấp cái nhìn sâu sắc về việc phát hiện bất thường trong dữ liệu, một khía cạnh quan trọng trong an ninh mạng. Cuối cùng, bạn cũng có thể tham khảo Luận văn thạc sĩ khoa học máy tính giải pháp cảnh báo kiểu tấn công an ninh mạng deface và hiện thực để hiểu rõ hơn về các biện pháp bảo vệ hệ thống trước các cuộc tấn công mạng. Những tài liệu này sẽ giúp bạn mở rộng kiến thức và hiểu rõ hơn về các công nghệ liên quan đến an ninh và nhận diện khuôn mặt.