Nhận Diện Khuôn Mặt Cho Hệ Thống Điểm Danh Tự Động

Khóa luận tốt nghiệp về hệ thống nhận diện và định danh khuôn mặt thông minh, khám phá công nghệ và ứng dụng trong khoa học máy tính.

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

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

2022

67
4
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN VỀ ĐỀ TÀI

1.1. Đặt vấn đề

1.2. Thách thức, phạm vi, mục tiêu

1.2.1. Thách thức

1.2.2. Phạm vi

1.2.3. Mục tiêu

1.2.4. Đóng góp

1.3. Cấu trúc

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. Kiến trúc mạng CNN (Convolutional Neural Network)

2.2. Bài toán phát hiện đối tượng

2.3. Bài toán nhận diện khuôn mặt

2.3.1. Kiến trúc truyền thống

2.3.2. Kiến trúc sử dụng mạng học sâu

2.3.3. Hàm mất mát

2.3.3.1. Triplet loss
2.3.3.2. ArcFace loss

3. CHƯƠNG 3: XÂY DỰNG PIPELINE HOÀN CHỈNH CHO BÀI TOÁN ĐIỂM DANH KHUÔN MẶT

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

3.2. Trích xuất đặc trưng khuôn mặt

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

4. CHƯƠNG 4: ĐÁNH GIÁ VÀ PHÂN TÍCH

4.1. Bộ dữ liệu

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

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

4.4. Đánh giá chi tiết cho mô-đun phát hiện khuôn mặt

4.5. Đánh giá chi tiết phương pháp trích xuất đặc trưng khuôn mặt

4.6. Phân tích

5. CHƯƠNG 5: TRIỂN KHAI HỆ THỐNG

5.1. Tổng quan kiến trúc hệ thống

5.2. Kiểm tra hệ thống

5.3. Chi tiết ứng dụng

5.4. Cơ chế bảo vệ

5.5. Luồng điểm danh

6. CHƯƠNG 6: KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN

6.1. Kết quả

6.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 Điểm Danh Tự Động Qua Nhận Diện Khuôn Mặt

Hệ thống điểm danh tự động qua nhận diện khuôn mặt đang trở thành một giải pháp hiệu quả cho việc quản lý danh sách học sinh, sinh viên trong các cơ sở giáo dục. Công nghệ này không chỉ giúp tiết kiệm thời gian mà còn nâng cao độ chính xác trong việc ghi nhận thông tin. Hệ thống sử dụng các thuật toán nhận diện khuôn mặt tiên tiến để xác định danh tính người dùng một cách nhanh chóng và chính xác.

1.1. Khái niệm về nhận diện khuôn mặt

Nhận diện khuôn mặt là công nghệ sử dụng các đặc điểm sinh trắc học của khuôn mặt để xác định danh tính. Công nghệ này đã được áp dụng rộng rãi trong nhiều lĩnh vực như an ninh, ngân hàng và giáo dục.

1.2. Lợi ích của hệ thống điểm danh tự động

Hệ thống điểm danh tự động giúp giảm thiểu thời gian và công sức cho việc ghi danh. Nó cũng đảm bảo tính chính xác cao hơn so với các phương pháp truyền thống, đồng thời giảm thiểu khả năng gian lận.

II. Thách thức trong việc triển khai hệ thống điểm danh tự động

Mặc dù hệ thống điểm danh tự động qua nhận diện khuôn mặt mang lại nhiều lợi ích, nhưng vẫn tồn tại một số thách thức cần được giải quyết. Độ chính xác của hệ thống có thể bị ảnh hưởng bởi nhiều yếu tố như ánh sáng, góc nhìn và chất lượng hình ảnh.

2.1. Độ chính xác và khả năng nhận diện

Độ chính xác của hệ thống phụ thuộc vào chất lượng hình ảnh và điều kiện môi trường. Các yếu tố như ánh sáng yếu hoặc góc nhìn không thuận lợi có thể làm giảm hiệu suất của hệ thống.

2.2. Bảo mật và quyền riêng tư

Việc thu thập và lưu trữ dữ liệu sinh trắc học như khuôn mặt đặt ra nhiều vấn đề về bảo mật và quyền riêng tư. Cần có các biện pháp bảo vệ dữ liệu để ngăn chặn việc lạm dụng thông tin cá nhân.

III. Phương pháp phát triển hệ thống điểm danh tự động hiệu quả

Để xây dựng một hệ thống điểm danh tự động hiệu quả, cần áp dụng các phương pháp và công nghệ tiên tiến trong lĩnh vực nhận diện khuôn mặt. Việc sử dụng mạng nơ-ron tích chập (CNN) là một trong những giải pháp tối ưu.

3.1. Sử dụng mạng nơ ron tích chập CNN

Mạng nơ-ron tích chập (CNN) là một trong những công nghệ tiên tiến nhất trong nhận diện khuôn mặt. Nó giúp trích xuất các đặc trưng quan trọng từ hình ảnh một cách tự động và chính xác.

3.2. Tối ưu hóa thuật toán nhận diện

Cần tối ưu hóa các thuật toán nhận diện khuôn mặt để cải thiện độ chính xác và tốc độ xử lý. Việc áp dụng các kỹ thuật học sâu có thể giúp nâng cao hiệu suất của hệ thống.

IV. Ứng dụng thực tiễn của hệ thống điểm danh tự động

Hệ thống điểm danh tự động qua nhận diện khuôn mặt đã được triển khai thành công trong nhiều trường học và tổ chức. Nó không chỉ giúp tiết kiệm thời gian mà còn nâng cao trải nghiệm của người dùng.

4.1. Ứng dụng trong giáo dục

Nhiều trường học đã áp dụng hệ thống điểm danh tự động để quản lý học sinh. Điều này giúp giảm thiểu thời gian điểm danh và nâng cao tính chính xác.

4.2. Ứng dụng trong doanh nghiệp

Các doanh nghiệp cũng đã triển khai hệ thống này để quản lý nhân viên và đảm bảo an ninh. Hệ thống giúp theo dõi sự hiện diện của nhân viên một cách hiệu quả.

V. Kết luận và hướng phát triển tương lai của hệ thống

Hệ thống điểm danh tự động qua nhận diện khuôn mặt đang ngày càng trở nên phổ biến và cần thiết trong xã hội hiện đại. Với sự phát triển của công nghệ, hệ thống này hứa hẹn sẽ tiếp tục cải thiện và mở rộng ứng dụng.

5.1. Tương lai của công nghệ nhận diện khuôn mặt

Công nghệ nhận diện khuôn mặt sẽ tiếp tục phát triển với nhiều cải tiến về độ chính xác và tốc độ xử lý. Điều này sẽ mở ra nhiều cơ hội mới cho các ứng dụng trong tương lai.

5.2. Đề xuất nghiên cứu tiếp theo

Cần tiếp tục nghiên cứu và phát triển các phương pháp mới để cải thiện hiệu suất của hệ thống. Việc tích hợp các công nghệ mới như AI và machine learning sẽ là hướng đi tiềm năng.

10/07/2025
Khóa luận tốt nghiệp khoa học máy tính hệ thống nhận diện và định danh khuôn mặt thông minh

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

Chương 1: Giới thiệu tổng quan về đề tài. Định nghĩa bài toán, trình bay các thử thách, mục tiêu và đóng góp của công trình nghiên cứu. e Chương 2: Khảo sát và tong hợp các nghiên cứu các van đề liên quan đến bài toán Nhận diện khuôn mặt và khảo sát một số hệ thống Nhận diện khuôn mặt hiện nay. e Chương 3: Mô tả chỉ tiết quá trình cài đặt phương pháp, giải thuật 18 e Chương 4: Thực hiện đánh giá và so sánh các phương pháp tiên tiễn trên các độ đo tiêu chuẩn từ đó chon ra được các phương pháp phù hợp và tối ưu nhất cho hệ thống.

e Chương 5: Chỉ tiết về luồng nghiệp vụ, luồng kỹ thuật, kiến trúc xây dựng hệ thống, minh hoa và đánh giá hiệu năng và tính tương thích thông qua các phép kiểm thử. e Chương 6: Kết luận về ưu điểm và hạn chế của hệ thống được đề xuất, nêu ra hướng phát triển của đề tài trong tương lai. CƠ SỞ LÝ THUYÉT Hiện nay, đã có các phương pháp được đề xuất để giải quyết bài toán Điểm danh người ding [1][32][41][42]. Nhìn chung, những bai báo này đều thiết kế hệ thống đi theo ba bước chính [48] là (1) phát hiện khuôn mặt trong khung hình, (2) Trích xuất đặc trưng khuôn mặt, và (3) hệ thống nhận diện khuôn mặt.

Trong phần này, tôi sẽ tìm hiểu tổng quan về những van đề liên quan đến các bước trong bài toán lớn, đồng thời tìm hiểu về một số công nghệ hiện nay được áp dụng khi xây dựng một hệ thống có khả năng mở rộng quy mô lớn.1 Kiến trúc mạng CNN (Convolutional Neural Network) Convolutional Neural Network [52] (CNNs —Mang nơ-ron tích chập) được dé xuat bởi Fukushima năm 1980 và được cải tiễn bởi LeCun, Bottou, Bengio and Haffner năm 1998 là một trong những mô hình Deep Learning tiên tiến giúp cho chúng ta xây dựng được những hệ thống thông minh với độ chính xác cao như hiện nay. Convolutional Neural Network cũng giống như mạng Artificial Neural Network bình thường của Machine Learning. Nó cũng được xây dung trên nguyên tắc cho các node neutron học các trọng sé weights va biases. Mỗi neutron nhận input đầu vao, sau đó sử dung tích vô hướng ứng với trọng số của nó.

Cả một mạng lưới được sử dung nhiều hàm tính toán với mục đích: từ một bức ảnh đơn sơ ban đầu cho tới kết quả dự đoán của nó. CNN cũng có hàm mắt mát (Loss function) và tất cả các mẹo mà chúng ta đã áp dụng như ở Machine Learning truyền thống. Convolution Pooling Convolution Pooling Fully Fully Output Predictions Connected Connected =s««— 408 (0.1 Kiến trúc cơ ban của một mạng tích chập 20 (Convolution layers) kết hợp với các hàm kích hoạt phi tuyến (Nonlinear Activation Function) để tạo ra thông tin trừu tượng hơn cho các tầng tiếp theo. Ngoài ra, còn có thêm các lớp như: Max-pooling, Dropout, Batch Normalization,.

ứng với những kiên trúc khác nhau. Mạng nơ-ron tích chập gồm các lớp: Convolution (tích chập), Pooling (để chung), Rectified Linear Units (tỉnh chỉnh các đơn vị tuyến tính), Fully Connected Layers (các layer được kết nối đầy đủ), cuối cùng là cho qua một hàm kích hoạt Softmax dé đưa ra xác suất mà vật đó thuộc về ứng với từng output đầu ra Convolution Layer La lớp đầu tiên trích xuất các đặc trưng từ một hình ảnh Ù 6|oø|o|o|o L 9 9 ° | ° ° ° 9 ° 156 | 155 | 156 | ass | 158 |. ° Input Channel #1 (Red) Input Channel #2 (Green) Input Channel #3 (Blue) -1 et 1Ị0|0 0 s1 th [Pe | et Oa, 1 1 0 | +4 Kernel Channel #1 Kernel Channel #2 Kernel Channel #3 i [ 3 Output 308 Em —498 HE 164 +1=-25 Bias = 1 Hình 2.2 Minh họa cách tính toán tại lớp Convolution Dé tính toán sự khớp của một đặc trưng đối với một mảnh của hình ảnh, ta sử dụng một cửa số trượt (slide window) hay có tên gọi khác là Kernel chứa các trọng số được thiết lập ứng với từng đặc trưng cần trích xuất, sau đó nhân mỗi điểm ảnh trong feature với giá trị của điểm ảnh tương ứng trong cửa số trượt. Sau đó cộng tổng lại và chia cho số lượng điểm ảnh trong feature.

21 Đề hoàn tất tích chập, chúng ta lặp lại quá trình này, xếp các feature với mọi mảnh hình anh có thé. Ta có thé lấy kết quả từ mỗi tích chập và tạo một mang hai chiều mới từ đó, dựa vào vị trí của mỗi mảnh nằm trong hình ảnh. Bản đồ các phần khớp nhau này cũng là một phiên bản đã được lọc từ hình ảnh gốc. Nó là một bản đồ thê hiện nơi tìm thấy feature trong hình ảnh.

Và ma trận mới này có tên gọi khác là Feature Map. Trong kiến trúc mạng CNN một lớp Convolution sẽ có nhiều Kernel và có thé được ghép với nhau để có thê trích xuất các đặc trưng cần thiết của ảnh, khi bắt đầu CNN chỉ học các đặc trưng đơn giản dưới dạng các cạnh, góc, đường thắng, ngang,. Tuy nhiên, càng về sâu, các đặc trưng sẽ cảng trở nên phức tạp va trừu tượng mà mắt người không thể hình dung ra được. Pooling Layer Pooling là một cách lấy những hình ảnh lớn và làm co chúng lại trong khi vẫn giữ các thông tin quan trọng nhất trong đó.

Pooling chỉ dùng kiến thức toán của lớp hai. Nó bao gồm việc duyệt bước một ô vuông cửa số nhỏ dọc trên một hình ảnh và lay giá trị lớn nhất từ cửa số ở mỗi bước. Sau khi pooling, một hình anh sẽ có khoảng một phần tư số điểm ảnh so với lúc bắt đầu. Vì nó giữ các giá trị lớn nhất từ mỗi cửa số, nó sẽ bảo toàn tính khớp của mỗi feature bên trong cửa SỐ.

Ngoài ra, còn có một loại Pooling giữ lại giá trị trung bình của điểm ảnh (Average Pooling). Single depth slice % i) 2 | 4 max pool with 2x2 filters Salmon 7 | 8 and stride 2 6 | 8 3 | 2 MNN.3 Minh hoa một lớp Max Pooling 22 Một layer pooling là hoạt động thực hiện pooling trên một hình ảnh hoặc một tập các hình ảnh. Đầu ra sẽ có cùng số lượng hình ảnh, nhưng mỗi cái sẽ có điểm ảnh ít hơn. Hạ một tam anh 8 megapixel xuống còn 2 megapixel sẽ giúp mọi xử lý tải về trở nên dễ dàng.

Rectified Linear Units (ReLU) Bài toán ReLU hoạt động như sau: bất cứ nơi nao có số âm, hoán đôi nó với 0. Điều này giúp CNN giữ vững sự tin cậy toán học bằng cách giữ các giá trị đã được học khỏi bị mắc kẹt gần 0 hoặc về vô tận. Đầu ra của một layer ReLU có kích thước giống với đầu vào, nhưng tất cả các giá trị âm được loại bỏ.4 Minh họa lớp Fully Connect Mô hình mạng nơ ron tích chập nhóm đề xuất là mô hình CNN 3 lớp (Convolution, Relu, Max Pooling) được trình bày như sau: Hàm kích hoạt Softmax (Softmax Activation Function) là một hàm toán hoc với nhiệm vụ chuyên đôi các vector số học thành các vector chứa xác xuất, với mỗi giá trị xác xuất trong vector có tỉ lệ tương đối với mỗi giá trị trong vector số học. Softmax được sử dụng phổ biến trong Máy học với nhiệm vụ làm hàm kích hoạt cho mô hình mạng neural nhân tạo.

Vi du, chúng ta thiét ké mét mang neural với N đầu ra, một dau ra ứng với một lớp trong bài toán phân loại và hàm Softmax này được sử dụng dé chuẩn hóa các giá tri dau ra (tông trong sô kêt nôi) thành các giá tri xác xuat, sao cho tông xác xuât của 23 từng lớp cộng lại băng 1. Lớp nào có giá trị xác xuất cao nhất thì chúng ta sẽ dự đoán giá trị đầu vào thuộc lớp đó.2 Bài toán phát hiện đối tượng Phát hiện đối tượng, một trong những chủ đề nỗi tiếng và được nghiên cứu rộng rãi trong lĩnh vực Thị giác Máy tính và Máy học với nhiều ứng dụng trong thực tế. Bài toán phát hiện đối tượng có nhiệm vụ định vị vị trí của vật thê trong ảnh và xác định đối tượng. Việc ứng dụng các kiến trúc mạng học sâu vào bài toán phát hiện đối tượng, đã giúp tạo nên sự bùng né về nghiên cứu trong lĩnh vực Thị giác máy tính nói riêng và Trí tuệ nhân tạo nói chung.

Hiện nay bài toán có 2 phương pháp tiếp cận chính: Một giai đoạn (One-stage) và Hai giai đoạn (Two-stage). Phương pháp two-stage được hiểu như sau: ở giai đoạn thứ nhất ảnh đầu vào được đưa qua Mạng đề xuất vùng (Region Proposal Network) dé định vị các vật thé cần xác định, sau đó ở giai đoạn thứ hai các vùng đề xuất sẽ được phân lớp xác định đối tượng của từng vùng. Các phương pháp two-stage nồi tiếng và được ứng dụng rộng rãi phải kế đến R-CNN [19], Fast-RCNN [20], Faster-RCNN [35]. : Proposal generator : Objectness 3 Classification: | [omen | Regression 3 Input Image Feature extractor Hình 2.5 Kiến trúc co bản của Two-stage Detector 24 Thay vi chia thành 2 giai đoạn dé phát hiện đối tượng, ở one-stage chi cần dùng 1 giai đoạn thay vì sử dụng Mạng đề xuất vùng, với một ảnh đầu vào bằng cách tận dụng các grid box va anchors dé định vị được đối tượng và hình dang của đối tượ ng rồi tiến hành phân lớp.

Bởi vì chỉ cần dùng 1 giai đoạn nên các bài toán sử dụng phương pháp one-stage thường tốt hơn two-stage về mặt thời gian xử lý, nhưng so về độ chính xác thì các phương pháp two-stage thường cho kết quả tốt hơn. Các phương pháp one-stage nỗi tiếng: YOLO [34], SSD [27]. fot : || Renn : Input Image Feature extractor Hình 2.6 Kiến trúc co ban của One-stage Detector Tuy nhiên, có một số phương pháp chỉ xây dựng nhằm tập trung cải thiện va nâng cao cho một số trường hợp cụ thé. Cụ thé, chúng ta có một kiến trúc mô hình vô cùng nổi tiếng và đang là một trong các phương pháp SOTA ở bài toán nhận diện khuôn mặt nảy, đó là phương pháp RetinaFace [6].

Retinaface là một phương pháp one- stages object detector, được phát triển lên từ kiến trúc Retinanet với mục tiêu là tập trung vào phát hiện chỉ khuôn mặt thay vì nhiều đối tượng khác nhau. 25 AS07E1 Điểm khác biệt giữa mô hình Retinaface và RetinaNet co bản đến từ một số thay đổi như sau: - Khi đem so sánh, Retinaface tối ưu mô hình theo hướng lightweight, thay vì sử dụng ResNet như ở RetinaNet thì ở đây tác giả sử dụng MobileNet - Str dụng module SSH (Single Shot Headless) Face Detection dé cải thiện multi-task learning (thay vì chi dự đoán bbox, thì còn phải dự đoán 5 toa độ landmark).

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

Tài liệu có tiêu đề Hệ Thống Điểm Danh Tự Động Qua Nhận Diện Khuôn Mặt trình bày một giải pháp công nghệ tiên tiến nhằm tự động hóa quy trình điểm danh thông qua việc sử dụng công nghệ nhận diện khuôn mặt. Hệ thống này không chỉ giúp tiết kiệm thời gian và công sức cho giáo viên và học sinh mà còn nâng cao tính chính xác trong việc ghi nhận thông tin. Bên cạnh đó, việc áp dụng công nghệ này còn giảm thiểu khả năng gian lận trong điểm danh, tạo ra một môi trường học tập minh bạch hơn.

Để mở rộng thêm kiến thức về lĩnh vực này, bạn có thể tham khảo tài liệu Hệ thống nhận diện khuôn mặt điểm danh chấm công bằng python, nơi cung cấp cái nhìn sâu sắc về cách thức triển khai hệ thống điểm danh bằng ngôn ngữ lập trình Python. Ngoài ra, tài liệu Khóa luận tốt nghiệp kỹ thuật máy tính nhận diện khuôn mặt real time với mô hình facenet và ứng dụng iot sẽ giúp bạn hiểu rõ hơn về công nghệ nhận diện khuôn mặt trong thời gian thực và ứng dụng của nó trong Internet of Things (IoT). Cuối cùng, tài liệu Khóa luận tốt nghiệp hệ thống nhúng và robotic phát hiện và loại bỏ mắt kính trên ảnh khuôn mặt người sẽ mang đến những thông tin bổ ích về việc xử lý hình ảnh trong nhận diện khuôn mặt, đặc biệt là trong các tình huống có vật cản như kính mắt.

Những tài liệu này không chỉ giúp bạn nắm bắt kiến thức cơ bản mà còn mở rộng hiểu biết về các ứng dụng và công nghệ liên quan đến nhận diện khuôn mặt.